static KeyValuePair <AwsCredentialsProvider, AwsCredentialsProvider> get_creds_providers(Executor executor, Ec2Metadata ec2_md, KPLNETConfiguration config) { AwsCredentialsProvider creds_provider = null; AwsCredentialsProvider metrics_creds_provider = null; if (null != config.AWSCredentials) { creds_provider = new BasicAwsCredentialsProvider(config.AWSCredentials.Akid, config.AWSCredentials.SecretKey, config.AWSCredentials.SessionToken); if (null != config.AWSMetricsCredentials) { metrics_creds_provider = new BasicAwsCredentialsProvider(config.AWSMetricsCredentials.Akid, config.AWSMetricsCredentials.SecretKey, config.AWSMetricsCredentials.SessionToken); } else { metrics_creds_provider = creds_provider; } } else { creds_provider = new DefaultAwsCredentialsProviderChain(executor, ec2_md); Thread.Sleep(250); } if (null == creds_provider.get_credentials()) { StdErrorOut.Instance.StdError("Could not retrieve credentials from anywhere."); throw new Exception("Could not retrieve credentials from anywhere."); } return(new KeyValuePair <AwsCredentialsProvider, AwsCredentialsProvider>(creds_provider, metrics_creds_provider)); }
static KeyValuePair <AwsCredentialsProvider, AwsCredentialsProvider> get_creds_providers(Executor executor, Ec2Metadata ec2_md, List <SetCredentials> set_creds) { AwsCredentialsProvider creds_provider = null; AwsCredentialsProvider metrics_creds_provider = null; foreach (var sc in set_creds) { var cp = new BasicAwsCredentialsProvider(sc.Credentials.Akid, sc.Credentials.SecretKey, sc.Credentials.Token); if (sc.ForMetrics) { metrics_creds_provider = cp; } else { creds_provider = cp; } } if (null == creds_provider) { creds_provider = new DefaultAwsCredentialsProviderChain(executor, ec2_md); Thread.Sleep(250); } if (null == creds_provider.get_credentials()) { StdErrorOut.Instance.StdError("Could not retrieve credentials from anywhere."); throw new Exception("Could not retrieve credentials from anywhere."); } if (null == metrics_creds_provider) { metrics_creds_provider = creds_provider; } return(new KeyValuePair <AwsCredentialsProvider, AwsCredentialsProvider>(creds_provider, metrics_creds_provider)); }