本文整理匯總了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);
});
});
}