static void Main(string[] args) { var options = new Options(); if (!Parser.Default.ParseArguments(args, options)) Environment.Exit(1); var deployer = new Deployer(new AwsConfiguration { AssumeRoleTrustDocument = options.AssumeRolePolicyPath, IamRolePolicyDocument = options.S3AccessPolicyDocumentPath, Bucket = options.BucketName, RoleName = options.RoleName, CodeDeployRoleName = options.CodeDeployRoleName, AwsEndpoint = RegionEndpoint.GetBySystemName(options.RegionEndpoint), Proxy = new AwsProxy{ Host = options.ProxyHost, Port = options.ProxyPort } }); var revision = deployer.PushRevision(new ApplicationSetRevision { ApplicationSetName = options.ApplicationSetName, StackName = options.StackName, Version = options.Version, LocalDirectory = options.BuildDirectoryPath }); try { deployer.DeployRelease(revision, options.CodeDeployRoleName); } catch (Exception e) { Console.WriteLine("AWS Push And Deploy Error:"); Console.WriteLine(e.Message); Console.WriteLine(e.StackTrace); Environment.Exit(666); } }