{"id":22816529,"url":"https://github.com/msysh/aws-cdk-sample-codepipeline-deploy-cfn","last_synced_at":"2025-09-12T13:42:08.620Z","repository":{"id":146439276,"uuid":"607773413","full_name":"msysh/aws-cdk-sample-codepipeline-deploy-cfn","owner":"msysh","description":"This project is a sample that deploying CloudFormation template using CodePipeline.","archived":false,"fork":false,"pushed_at":"2023-02-28T23:29:38.000Z","size":7,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-30T22:42:10.637Z","etag":null,"topics":["cdk-examples","cicd","cloudformation","codepipeline"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/msysh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-02-28T16:42:31.000Z","updated_at":"2023-03-01T20:31:48.000Z","dependencies_parsed_at":null,"dependency_job_id":"fa21a018-63a7-49d0-b29b-6d6d61ba0ae9","html_url":"https://github.com/msysh/aws-cdk-sample-codepipeline-deploy-cfn","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/msysh/aws-cdk-sample-codepipeline-deploy-cfn","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msysh%2Faws-cdk-sample-codepipeline-deploy-cfn","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msysh%2Faws-cdk-sample-codepipeline-deploy-cfn/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msysh%2Faws-cdk-sample-codepipeline-deploy-cfn/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msysh%2Faws-cdk-sample-codepipeline-deploy-cfn/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/msysh","download_url":"https://codeload.github.com/msysh/aws-cdk-sample-codepipeline-deploy-cfn/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msysh%2Faws-cdk-sample-codepipeline-deploy-cfn/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274822987,"owners_count":25356630,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-12T02:00:09.324Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cdk-examples","cicd","cloudformation","codepipeline"],"created_at":"2024-12-12T14:07:48.690Z","updated_at":"2025-09-12T13:42:08.606Z","avatar_url":"https://github.com/msysh.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CloudFormation deployment pipeline sample\n\nThis project is a sample that deploying CloudFormation template using CodePipeline. Summary of pipeline is following:\n\n1. Push a CloudFormation template to CodeCommit repository.\n2. The pipeline create a CloudFormation Change Set.\n3. The pipeline require Manual Approval.\n4. Finally, the pipeline execute the CloudFormation Change Set.\n\n## How to setup\n\n### 1. Clone this repository\n\n```sh\ngit clone https://github.com/msysh/aws-cdk-sample-codepipeline-deploy-cfn\n```\n\n### 2. Change directory\n\n```sh\ncd aws-cdk-sample-codepipeline-deploy-cfn\n```\n\n### 3. Deploy pipeline using CDK\n\n```sh\ncdk deploy\n```\n\nAt complete deployment, you can get CodeCommit repository URL from Output.\n\n### 4. Clone CodeCommit repository for CFn template\n\n```sh\ncd (any directory)\ngit clone (CodeCommmit Repository URL you got at Step.3)\n```\n\n### 5. Create CFn template\n\nYou must specify CloudFormation template file name is `template.yml`. The name is hardcoded in cdk at [here](./lib/codepipeline-deploy-cfn-stack.ts#L89)\n\nFor example, if you want to deploy simple S3 bucket, a template is following:\n\n```yaml\nAWSTemplateFormatVersion: 2010-09-09\nResources:\n  S3Bucket:\n    Type: 'AWS::S3::Bucket'\n    Properties:\n      PublicAccessBlockConfiguration:\n        BlockPublicAcls: True\n        BlockPublicPolicy: True\n        IgnorePublicAcls: True\n        RestrictPublicBuckets: True\nOutputs:\n  S3BucketName:\n    Value: !Ref S3Bucket\n```\n\n### 6. Push to CodeCommit repository\n\n```sh\ncd (cloned CodeCommit repository)\ngit add template.yaml\ngit commit -m \"first commit\"\ngit push origin main\n```\n\nYou must specify CloudFormation template file name is `template.yml`. The name is hardcoded in cdk at [here](./lib/codepipeline-deploy-cfn-stack.ts#L89)\n\n### 7. Approve Change Set\n\nAfter Change Set is created, then the pipeline wait for approval. If you approve the Change Set, AWS resoureces in the template will be deployed!\n\n### 8. Update template\n\nIf you want, you can update the CFn template and push it to the repository.\n\n## Clean up\n\nFirst, you must remove artifacts files in artifacts S3 bucket. The S3 bucket name is you have got at [Step.3](#3-deploy-aws-resources-by-cdk).\n\nAnd then execute following command at this project directory:\n\n```\ncdk destroy\n```\n\nFinally, if you want, delete the directory for CloudFormation template repository which you have cloned at [Step.4](#4-clone-codecommit-repository-for-cfn-template).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmsysh%2Faws-cdk-sample-codepipeline-deploy-cfn","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmsysh%2Faws-cdk-sample-codepipeline-deploy-cfn","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmsysh%2Faws-cdk-sample-codepipeline-deploy-cfn/lists"}