public static void StartChildProcess(KPLNETConfiguration config, ILogger logger) { Ec2Metadata ec2_md = null; try { SetDirectLogging(config.logLevel, logger); var executor = get_executor(); var socket_factory = get_socket_factory(); var region = get_region(config, ec2_md); var creds_providers = get_creds_providers(executor, ec2_md, config); var ipc_manager = DirectMessageService.Instance.GetChildProcessMessageManager(); var kp = get_kp(ipc_manager, socket_factory, region, config, creds_providers.Key, creds_providers.Value, executor); } catch (Exception e) { StdErrorOut.Instance.StdError(e.ToString()); throw new Exception("Service Creation failed.", e); } }
public DefaultAwsCredentialsProviderChain(Executor executor, Ec2Metadata ec2_metadata) : base(new List <AwsCredentialsProvider> { new EnvVarAwsCredentialsProvider(), new InstanceProfileAwsCredentialsProvider(executor, ec2_metadata) }) { }
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)); }
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, string cred, string metricCred) { List <SetCredentials> set_creds = get_creds(cred, metricCred); return(get_creds_providers(executor, ec2_md, set_creds)); }