public static void Main(string[] args)
        {
            var sourceEnv = new Environment()
            {
                Account = "{source-account-id}",
                Region  = "us-west-2"
            };

            var pipelineEnv = new Environment()
            {
                Account = "{pipeline-account-id}",
                Region  = "us-west-2"
            };

            var app = new App();

            var sourceStack = new SourceStack(app, "SourceStack", new StackProps
            {
                Env = sourceEnv,
            });

            new CdkPipelineStack(app, "CdkPipelineStack", new CdkPipelineStackProps
            {
                Env          = pipelineEnv,
                MyRepository = sourceStack.MyRepository
            });

            app.Synth();
        }
Example #2
0
        public static void Main(string[] args)
        {
            string domainName  = "mydomain.aws";
            string keyPairName = "inst-key-pair";
            var    env         = new Amazon.CDK.Environment {
                Region = "eu-west-1"
            };

            var app      = new App();
            var vpcStack = new VpcStack(app, "VpcStack", new StackProps {
                Env = env
            });

            var secretStack = new SecretStack(app, "MAD-Secret", passwordObject: new { Domain = domainName, UserID = "Admin" }, secretName: "ManagedAD-Admin-Password", new StackProps
            {
                Description = "Managed AD Aut-Generated Password",
                Env         = env
            });

            var madStack = new MadStack(app, "Managed-AD", vpc: vpcStack.Vpc, domainName: domainName, edition: "Standard", secret: secretStack, new StackProps
            {
                Env = env
            });

            var dhcpOption = new DHCPOption(app, "VPC-DHCP-Options-with-MAD", directory: madStack.AD, vpc: vpcStack.Vpc, new StackProps
            {
                Env = env
            });

            var setDhcpOptionToVpc = new SetDHCPOption(app, "Apply-DHCP-Options", vpc: vpcStack.Vpc, dhcpOption: dhcpOption, new StackProps
            {
                Env = env
            });

            var bastionStack = new BastionStack(app, "Bastion-Host", vpc: vpcStack.Vpc, keyPairName, new StackProps
            {
                Env = env
            });

            var targetInstanceStack = new TargetInstanceStack(app, "Target-Instance", vpc: vpcStack.Vpc, keyPairName, new StackProps
            {
                Env = env
            });


            // Defining the order of the CDK Deployment
            secretStack.AddDependency(vpcStack);
            madStack.AddDependency(secretStack);
            dhcpOption.AddDependency(madStack);
            setDhcpOptionToVpc.AddDependency(dhcpOption);

            targetInstanceStack.AddDependency(setDhcpOptionToVpc);
            bastionStack.AddDependency(targetInstanceStack);

            app.Synth();
        }
Example #3
0
        public static void Main(string[] args)
        {
            var environment = new Amazon.CDK.Environment {
                Account = "YOUR_ACCOUNT_ID", Region = "YOUR_REGION"
            };
            var app = new App();

            new RustlambStack(app, "RustlambStack", new RustlambProps
            {
                Env = environment
            });
            app.Synth();
        }
Example #4
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();
        }
Example #5
0
        public PingPongStack(Construct scope, string id) : base(scope, id)
        {
            var environment = new Amazon.CDK.Environment()
            {
                Account = System.Environment.GetEnvironmentVariable("CDK_DEFAULT_ACCOUNT"),
                Region  = System.Environment.GetEnvironmentVariable("CDK_DEFAULT_REGION"),
            };

            Console.Out.WriteLine($"Using AWS_REGION={environment.Region}");
            Console.Out.WriteLine($"Using AWS_ACCOUNT={environment.Account}");


            var existingVpcName = System.Environment.GetEnvironmentVariable("VPC_NAME");
            var stackBranchName = System.Environment.GetEnvironmentVariable("STACK_BRANCH_NAME");

            Console.Out.WriteLine($"Using STACK_BRANCH_NAME={stackBranchName}");

            var networkStack = new PingPongNetwork(this, $"ping-pong-network-{stackBranchName}", new PingPongNetworkProps()
            {
                UseExistingVpc  = existingVpcName != null,
                ExistingVpcName = existingVpcName,
                Env             = environment
            });
            var pingPongEcsBase = new PingPongECSBase(this, $"ping-pong-ecs-base-{stackBranchName}", new PingPongECSBaseProps()
            {
                Vpc = networkStack.PingPongVpc,
                Env = environment
            });
            var pingPongServices = new PingPongServices(this, $"ping-pong-services-{stackBranchName}", new PingPongServicesProps
            {
                Mesh = networkStack.AppMesh,
                CloudmapNamespace = networkStack.CloudmapNamespace,
                Cluster           = pingPongEcsBase.EcsCluster,
                Vpc = networkStack.PingPongVpc,
                PingVirtualRouter  = networkStack.PingRouter,
                PongVirtualRouter  = networkStack.PongRouter,
                PingVirtualService = networkStack.PingService,
                PongVirtualService = networkStack.PongService,
                Env = environment
            });
        }
Example #6
0
        public static void Main(string[] args)
        {
            var app = new App();

            var theEnvironment = new Amazon.CDK.Environment()
            {
                Region = "ap-south-1"
            };

            var theFunctionsStack = new AuthlambdaFunctionsStack(app, "AuthlambdaFunctionsStack", new StackProps()
            {
                Env = theEnvironment
            });

            new AuthlambdaStack(app, "AuthlambdaStack", new AuthlambdaStackProps()
            {
                functionsStack = theFunctionsStack,
                Env            = theEnvironment
            });

            app.Synth();
        }
Example #7
0
        public static void Main(string[] args)
        {
            var stackName = "CdkVpcStack";
            var account   = "014168299099";
            var region    = "us-east-2";

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

            new CdkVpcStack(app, stackName, new StackProps
            {
                Env = env,
            })
            {
                Cidr = "10.0.0.0/16"
            };
            app.Synth();
        }