Create CI-CD Pipeline using codepipeline, github, codebuild, codedeploy,s3

0

 Create CI-CD Pipeline using codepipeline, github, codebuild, codedeploy,s3:

This article provide simple pipeline to deploy static website from github to s3 bucket using codepipeline services of aws.

Step1st:

Create github repository and upload normal web site  (index.html,style.css)

Step2nd:

create iam role  name as codepipelinerole add (codebuildaccess, codepipelineaccess,s3fullaccess)

Add Inline Cloudwatch Policy

{

"Version": "2012-10-17",

"Statement": [

{

"Effect": "Allow",

"Action": [

"logs:CreateLogGroup",

"logs:CreateLogStream",

"logs:PutLogEvents"

],

"Resource": "arn:aws:logs:us-east-1:060795909285:log-group:/aws/codebuild/*"

}

]

}

Step3rd:

create s3 bucket and unblock public access and enable static website option and add policy to GETBucket & putobject.


{

    "Version": "2012-10-17",

    "Statement": [

        {

            "Effect": "Allow",

            "Principal": "*",

            "Action": [

                "s3:GetObject",

                "s3:PutObject"

            ],

            "Resource": "arn:aws:s3:::my-ci-cd-indore/*"

        }

    ]

}

Step4th:

Create AWS CodePipeLine and link to github account


Step5th:

Create CodeBuild Project with following deploy instruction

version: 0.2


phases:

  build:

    commands:

      - echo "Building the static website"

      # Copy the index.html and style.css to the S3 bucket

      - aws s3 cp ./index.html s3://my-cicd-deployment-bucket/

      - aws s3 cp ./style.css s3://my-cicd-deployment-bucket/

artifacts:

  files:

    - index.html

    - style.css


Step6th:

Attach codebuild and switch to codedeploy it will deploy application

Step7th:

Click on S3 Static Website URL , Site will be opened.


Learn CI/CD Pipeline, Click here



Code of CodeBuild Project 


version: 0.2


phases:

  build:

    commands:

      - echo "Building the static website"

      # Copy the index.html, css files, fonts, icons, images, and js files to the S3 bucket

      - aws s3 cp ./index.html s3://codepipelinebucketindore/

      - aws s3 cp ./css/ s3://codepipelinebucketindore/css/ --recursive

      - aws s3 cp ./fonts/ s3://codepipelinebucketindore/fonts/ --recursive

      - aws s3 cp ./images/ s3://codepipelinebucketindore/images/ --recursive

      - aws s3 cp ./js/ s3://codepipelinebucketindore/js/ --recursive


artifacts:

  files:

    - index.html

    - css/*

    - fonts/*

    - images/*

    - js/*





Tags

Post a Comment

0Comments

POST Answer of Questions and ASK to Doubt

Post a Comment (0)