Total Pageviews

Search This Blog

Copyright to Cloud TechNet organization . Powered by Blogger.

Pages

Blogger templates

Monday, 15 March 2021

AWS Code Commit , Code Deploy and Code Pipeline creation step by step


Step:1 Prerequisites

 

  1. Download and install Git on you local system(Linux and Windows)
  1. Configure GIT on your system
    1. git config --global user.email <your email id>
    2. git config --global user.name "your name"

 

  1. Create New AWS IAM user (Or use existing admin user)

    a.   Attach IAM policy "AWScodecommitFullAccess"

    b.   Attach IAM policy "AWScodePipelineFullAccess"

    c.   Security Credentials  -->> HTTPS Git Credentials -->>Generate and Save the credentials

 

  1. Create Service Role for CodeDeploy

  a. Create IAM role for CodeDeploy service

  b. Attach existing IAM policy "AWSCodeDeployRole"

  1. Create IAM Role for Ec2 to download logs from S3

  a. Create IAM role for EC2 service to attach "AttachS3readonlyAccess"policy

 

 

 

Step:2 Configure CodeCommit Respository

 

  1. Go to CodeCommit Service (Use North Virginia Region )
    1. Create new code repository with name "Demo-project"
    1. Copy the Clone URL >>Clone HTTPS

 

  1. Clone Git Repository locally
    1. Git clone <URL>
    2. Provide username/Password (This should create empty repository)
  1. Download Sample Application
    1. Download application locally
    2. Unzip and move all files and folders inside your local repository "Demo-project" directory
    3. Change your CMD to Demo-Project
    4. git status
    5. Git add -A
    6. Git commit -m "Added sample application files"
    7. Git push

 

 

 

Step:3 Launch EC2 instance to Host Application

 

  1. Launch EC2 instance with below requirements
    1. AMI: Amazon Linux 2
    2. Instance Type: T2 Micro
    3. VPC: Default
    1. IAM Role: Role that we created in Step #1
    1. In Advance option , Paste the below user data to install CodeDeploy Agent

 

#!/bin/bash

yum -y update

yum install -y ruby

yum install -y aws-cli

cd /home/ec2-user

aws s3 cp s3://aws-codedeploy-ap-south-1/latest/install . --region ap-south-1

chmod +X ./install

./install auto

  1. Tags: Key: Name, Value: Demo
  2. Security Group: Open Port no # 22 and 80 for my IP or Internet
  1. SSH keypair: use existing keypair
  2. Launch

 

 

Step:4 Create Application in Code Deploy

 

  1. Go to CodeDeploy service
  2. Create New Application
    1. Name:Demo
    1. Compute Platform: Ec2/On-premises
    1. Create Application
  1. Deployment Groups
    1. Name: Demo-Group
    2. Deployment Type:In-place Deployment
    3. Environment configuration :
      1. Amazon EC2 Instances
      1. Enter the Key=Name and Value=Demo (That you created while launching EC2 instance)
  1. Deployment Configurtion
    1. Select CodeDeployDefault.OneAtaTime

 

 

Step:5 Create CodePipeLine

 

  1. Go to AWS CodePipeline service
  2. Create Pipeline
    1. Name:Demo-Pipeline
    2. Service Role: New Service Role
    1. Artifact Store:  Default
  1. Add Source Stage
    1. Source Provider : AWS CodeCommit
    1. Repository: Select your Repository "Demo-project"
    1. Branch: Select Master branch
    2. Detection Option: Select CloudWatch Events
  1. Add Build stage -->SKIP
  2. Add Deploy Stage
    1. Deploy Provider: AWS CodeDeploy
    2. Application Name: Demo (This you had created in previous Step #4)
    1. Deployment Group: Demo-Group (This you had created in previous Step #4)

 
 
 

Thursday, 4 March 2021