示例#1
0
        public static void Main(string[] args)
        {
            var app = new App();

            new InfrastructureStack(app, "SampleStack");
            app.Synth();
        }
示例#2
0
        private static void Main()
        {
            var app          = new App(new AppProps());
            var networkStack = new NetworkStack(app, "ExampleNetwork", new StackProps());

            var pipelineStack = new PipelineStack(app, "ExamplePipeline", new PipelineStackProps
            {
                GitHubSecretName = "github.com/roberthodgen",
                ApiImageTag      = apiImageTag,
                ApiStackName     = apiStackName,
                GitHubOwner      = gitHubOwner,
                GitHubRepo       = gitHubRepo,
            });

            new IntegrationTestStack(app, "ExampleIntegrationTests", new IntegrationTestStackProps
            {
                GitHubOwner = gitHubOwner,
                GitHubRepo  = gitHubRepo,
            });

            new ApiStack(app, apiStackName, new ApiStackProps
            {
                Vpc         = networkStack.Vpc,
                Repository  = pipelineStack.EcrRepository,
                ApiImageTag = apiImageTag,
            });

            app.Synth();
        }
示例#3
0
        public static void Main(string[] args)
        {
            var app = new App();

            new VotingStack(app, "VotingStack");
            app.Synth();
        }
        public static void Main(string[] args)
        {
            var configuration = new Configuration();
            var app           = new App();

            new PipelineStack(app, Configuration.ProjectName, configuration);
            app.Synth();
        }
示例#5
0
        public static void Main(string[] args)
        {
            var configuration = new Configuration();
            var app           = new App();

            new PipelineStack(app, Configuration.ProjectName, configuration, new StackProps
            {
                TerminationProtection = true
            });
            app.Synth();
        }
示例#6
0
        public static void Main(string[] args)
        {
            var accountId             = System.Environment.GetEnvironmentVariable("CDK_DEFAULT_ACCOUNT");
            var region                = System.Environment.GetEnvironmentVariable("CDK_DEFAULT_REGION");
            var auroraSecurityGroupId = "aurora-security-group";
            var assetBucket           = "aussie-stats-assets";
            var censusEtlQueue        = "census-etl-queue";

            var env = new Amazon.CDK.Environment()
            {
                Account = accountId,
                Region  = region
            };

            var app = new App();

            new AssetStack(app, "AssetStack", new AssetStackProps
            {
                StackName   = "InfrastructureStack",
                Env         = env,
                AssetBucket = assetBucket,
            });

            new AuroraDatabaseStack(app, "DatabaseStack", new AuroraDatabaseStackProps
            {
                StackName = "DatabaseStack",
                Env       = env,
            });

            new CensusEtlStack(app, "CensusEtlStack", new CensusEtlStackProps
            {
                StackName             = "CensusEtlStack",
                Env                   = env,
                AuroraSeucrityGroupId = auroraSecurityGroupId,
                CensusArtifactBucket  = assetBucket,
                CensusEtlQueue        = censusEtlQueue
            });

            new ApiStack(app, "ApiStack", new ApiStackProps
            {
                Env = env
            });

            app.Synth();
        }
示例#7
0
        public static void Main(string[] args)
        {
            var configuration = new Configuration();
            var app           = new App();

            if (configuration.EcrRepositoryNames.Length != configuration.Frameworks.Length &&
                configuration.EcrRepositoryNames.Length != configuration.Channels.Length)
            {
                throw new ArgumentException(
                          "There is a mismatch between the number of ECR Repositories, .NET Versions and .NET Channels.");
            }
            for (var i = 0; i < configuration.Frameworks.Length; i++)
            {
                new PipelineStack(app, Configuration.ProjectName, configuration.EcrRepositoryNames[i], configuration.Frameworks[i], configuration.Channels[i], configuration.DockerBuildImages[configuration.Frameworks[i]], configuration, new StackProps
                {
                    TerminationProtection = true
                });
            }
            app.Synth();
        }
示例#8
0
        public static void Main(string[] args)
        {
            var app = new App();

            new Stack(app, $"{Config.AppName}InfraStack", new StackProps
            {
                Env = new Environment
                {
                    Account = Config.AccountId,
                    Region  = Config.Region
                },
                Tags = new Dictionary <string, string>
                {
                    { "Cost Center", "303200" },
                    { "Team", "storefront" },
                    { "Domain", "knowledge-sharing" },
                    { "Purpose", "Chapter Day" },
                    { "Environment", "test" },
                    { "Name", $"{Config.AppName}" }
                }
            });
            app.Synth();
        }