本文整理汇总了TypeScript中@spinnaker/core.AccountService.getCredentialsKeyedByAccount方法的典型用法代码示例。如果您正苦于以下问题:TypeScript AccountService.getCredentialsKeyedByAccount方法的具体用法?TypeScript AccountService.getCredentialsKeyedByAccount怎么用?TypeScript AccountService.getCredentialsKeyedByAccount使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@spinnaker/core.AccountService
的用法示例。
在下文中一共展示了AccountService.getCredentialsKeyedByAccount方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: configureCommand
// TODO (Bruno Carrier): Why do we need to inject an Application into this constructor so that the app works? This is strange, and needs investigating
public configureCommand(command: IEcsServerGroupCommand): IPromise<void> {
this.applyOverrides('beforeConfiguration', command);
command.toggleSuspendedProcess = (process: string): void => {
command.suspendedProcesses = command.suspendedProcesses || [];
const processIndex = command.suspendedProcesses.indexOf(process);
if (processIndex === -1) {
command.suspendedProcesses.push(process);
} else {
command.suspendedProcesses.splice(processIndex, 1);
}
};
command.processIsSuspended = (process: string): boolean => command.suspendedProcesses.includes(process);
command.onStrategyChange = (strategy: IDeploymentStrategy): void => {
// Any strategy other than None or Custom should force traffic to be enabled
if (strategy.key !== '' && strategy.key !== 'custom') {
command.suspendedProcesses = (command.suspendedProcesses || []).filter(p => p !== 'AddToLoadBalancer');
}
};
command.regionIsDeprecated = (): boolean => {
return has(command, 'backingData.filtered.regions') &&
command.backingData.filtered.regions.some((region) => region.name === command.region && region.deprecated);
};
return this.$q.all({
credentialsKeyedByAccount: this.accountService.getCredentialsKeyedByAccount('ecs'),
loadBalancers: this.loadBalancerReader.listLoadBalancers('ecs'),
subnets: this.subnetReader.listSubnets(),
iamRoles: this.iamRoleReader.listRoles('ecs'),
ecsClusters: this.ecsClusterReader.listClusters(),
metricAlarms: this.metricAlarmReader.listMetricAlarms(),
}).then((backingData: Partial<IEcsServerGroupCommandBackingData>) => {
let loadBalancerReloader = this.$q.when(null);
backingData.accounts = keys(backingData.credentialsKeyedByAccount);
backingData.filtered = {} as IEcsServerGroupCommandBackingDataFiltered;
command.backingData = backingData as IEcsServerGroupCommandBackingData;
this.configureVpcId(command);
this.configureAvailableIamRoles(command);
this.configureAvailableMetricAlarms(command);
this.configureAvailableEcsClusters(command);
if (command.loadBalancers && command.loadBalancers.length) {
// verify all load balancers are accounted for; otherwise, try refreshing load balancers cache
const loadBalancerNames = this.getLoadBalancerNames(command);
if (intersection(loadBalancerNames, command.loadBalancers).length < command.loadBalancers.length) {
loadBalancerReloader = this.refreshLoadBalancers(command, true);
}
}
return this.$q.all([loadBalancerReloader]).then(() => {
this.applyOverrides('afterConfiguration', command);
this.attachEventHandlers(command);
});
});
}