SlideShare a Scribd company logo
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Continuous Integration And Deployment
(CI/CD)
with AWS Code Services
Presented By
Pulkit Gupta
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Agenda
• What is CI/CD ? Why to use ?
• What is CI/CD Pipeline ?
• How to automate software build and release process using AWS
code services
• What is AWS CodeCommit & its setup for source control
• How to Build and test code with AWS CodeBuild
• How to Automate CI/CD process with AWS CodePipeline
• Demo, Discussion, Q&A session
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
It is a process where developers frequently merge their
code changes into a central repository, after which
automated build and tests are run.
Developer Code CI server
Automated
Builds
Automated Tests
Continuous Integration
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Developer Code on
Central Repo
CI server
Automated
Tests
Automated
Builds
Release Destination
After CI process , a release is produced which is ready to be deployed on a
destination such as beta or a testing server. Which is called Continuous Delivery.
So the Continuous delivery is regularly releasing your software to a destination.
If continuous delivery process releases a software in production then it is called
Continuous Deployment , because the changes made by developers has now
deployed to customer and are in production.
Continuous Delivery and Deployment
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
What is CI/CD Pipeline
• Sequence of steps a code change goes through.
• Depending on the steps a pipeline can either be CI or CD
Developer Code on
Central Repo
CI server
Automated
Tests
Automated
Builds
Release Destination
CI Pipeline
CD Pipeline
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Why Use CI/CD ?
• Faster Release Cycles
• Lower Costs
• Rapid Troubleshooting
• Reliability
• Higher Quality Products
• Better Business Advantage
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Code Commit
• What is CodeCommit
• Benefits
• How to create & connect new repo in CodeCommit
• CodeCommit access management
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
What is code Commit
• AWS CodeCommit is a version control service, that you can use to
privately store and manage assets in the cloud and integrate with AWS
services.
• AWS CodeCommit eliminates the need for you to manage your own
version control system or worry about scaling its infrastructure
• All you need to do is to create a CodeCommit repo and assign
permissions, and your users can begin committing their code.
• You can use AWS CodeCommit to store anything from code to binaries.
• It supports the standard functionality of Git, so it works seamlessly with
your existing Git-based tools.
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Benefits
• Managed Service: CodeCommit is fully managed, distributed, and fault-
tolerant.
• High Availability: Data is replicated across availability zones.
• Store Anything: Not just source code, but documents and binary files,
too. There is no limit to the size of a repo.
• AWS Security: CodeCommit is integrated with AWS IAM. Data is
encrypted at rest.
• Git Compatible: Users can migrate their existing Git repositories.
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Code commit access management
• HTTPS git credentials or SSH
• Create users on IAM
• Attach Policies
• Customized Policy for repository
• Generate Git credentials
• Use credentials for HTTPS connections.
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Customized Policy for repository
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codecommit:GitPull"
],
"Resource": "arn:aws:codecommit:<REGION>:<ACCOUNTNUMBER>:<REPO-NAME>"
},
{
"Effect": "Allow",
"Action": [
"codecommit:Get*",
"codecommit:BatchGetRepositories",
"codecommit:List*"
],
"Resource": "*"
}
]
}
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
CodeCommit Commands
• Create repo:
aws codecommit create-repository --repository-name myapp --repository- description "description“
• Clone repo:
git clone https://git-codecommit.us-east-1.amazonaws.com/v1/myapop
• Create branch
aws codecommit create-branch --repository-name myapp --branch-name newfeature --commit-id
• List all branches
aws codecommit list-branches --repository-name myapp
• Rename repo:
aws codecommit update-repository-name --old-name myapp --new-name MyNewApp
• Getting repository Details
aws codecommit batch-get-repositories --repository-names myapp
• Delete repo
aws codecommit delete-repository --repository-name MyNewApp
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
CodeCommit Pricing
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Demo
• Create a Repo on code Commit
• Create IAM users and connect to repo
• Code commit access management
• CodeCommit CLI commands
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
AWS CodeBuild
• Why Builds ?
• What is CodeBuild ?
• How CodeBuild Works ?
• Planning a build
• Specification file format
• CodeBuild Environment
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Why Builds?
• Every software delivery pipeline has to take source code from a
developer’s laptop and safely ship it to production systems in the
cloud.
• This is best accomplished by “building an artifact” — a snapshot of
the code and everything it needs to run like its dependencies and
compiled binaries.
• Artifacts could be a .zip file, .deb package, AMI or a Docker
image.
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Why a Build Service?
If we use build software like Jenkins or Bamboo, someone on our team is
responsible for:
• Setting up a Jenkins cluster
• Maintaining the cluster security
• Upgrading the Jenkins software over time
• Monitoring and recovering from Jenkins downtime
• Capacity planning so the cluster can handle all our build volume
• With a managed build service like Heroku, Docker Hub, and now
CodeBuild, operations are eliminated and costs are greatly reduced to on-
demand usage.
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
AWS CodeBuild
• AWS CodeBuild is a fully managed build service that compiles
source code, runs tests, and produces software packages that are
ready to deploy.
• With CodeBuild, you don’t need to provision, manage, and scale
your own build servers.
• For each build, it launches a fresh, Isolated container-based
environment and terminates it after the build process ends.
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
• AWS CodeBuild uses Docker containers to build your code
depending on your environment.
• You can use build environments provided by AWS or existing
Docker images from Docker hub or Elastic Container Registry.
• Currently AWS provides build environments for Java, Android,
Ruby, Go, Node.js, Python, and Docker (to build Docker images).
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
• CodeBuild fetches code from the Source repository. It could be S3 Bucket,
GitHub Repository, or AWS CodeCommit Repository
• Runs the commands in the build spec. You can have a buildspec.yml file in
the source code root directory or you can explicitly write your build
commands.
• The buildspec contains four phases. Install, pre-build, build and post-build.
-> Install – Install packages in the build environment if any.
-> Pre-build – Commands that should run before build if any.
-> Build – Commands to build the artifact.
-> Post-build – Commands to run after the build if any.
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
How CodeBuild Works
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Terminologies of CodeBuild
• Source Repository – Location of your source code.
• Build Environment – Your runtime environment.
• IAM Role – Grants CodeBuild permission to access to specific AWS
services and resources.
• Build Spec – Build commands.
• Compute Type – Amount of memory and compute power required.
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Planning a Build
• Where is the source code?
• Build commands and their order
• Runtimes , APIs & tools
• Can you use OOTB build environment or you need to plan
for the custom environment ?
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Steps to build code
• Create codecommit repo
• Add project to codecommit
• Update buildspec.yml
• Build project
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Build Specifications
• buildspec.yml defines build commands
• Can be in the application or in codebuild
• Main sections: Version , variables, Phases, Artifacts
• Phases include : pre_build, build , post_build
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Build Specifications
• Version is required
• Environment variable are optional
• phases are required
• artifact is optional to define output
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
version: 0.1
environment_variables:
plaintext:
JAVA_HOME: "/opt/java-8-openjdk-amd64"
phases:
install:
commands:
- apt-get update -y
- apt-get install -y maven
pre_build:
commands:
- echo This is pre_build
build:
commands
- echo Starting build `date`
- mvn clean package
post_build:
commands:
- echo Build completed on `date`
artifacts:
files:
- target/messageUtil-1.0.jar
discard-paths: yes
Sample buildspec.yml file
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Build Environments
• Preconfigured docker images
• Go,Java, NodeJS, Python,Ruby, Andriod
• Can be extended using buildspec
• Base docker image is available for extension with AWS CLI and git
• you can choose compute power
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
CodeBuild Pricing
• It uses simple pay-as-you-go pricing. There are no upfront costs or
minimum fees.
• You pay only for the resources you use.
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
AWS CodeDeploy
It is an AWS service that enables developers to automate the
deployment of applications.
• Automates build deployment
• Can deploy on EC2 & on premises instances
• Scales with environment size
• Stop and rollback features
• Integrate with AWS services
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
AWS CodePipeline
• AWS codePipeline is a continuous delivery services from AWS
• AWS codePipeline builds, test and deploys our source code
consistently and automatically, based on release process models
we define.
• AWS codePipeline helps us to easily build out an end-to-end
solution by using pre-built plugin for popular third party services
like Github etc
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Benefits
AWS CodePipeline has several benefits that align with the DevOps principle of
continuous deployment:
• Rapid delivery
• Improved quality
• Configurable workflow
• Easy to integrate
• Fully Managed
• Scalable
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
How Pipeline works
• AWS CodePipeline manages the release
process via pipelines or workflows.
• Workflows are broken up into stages.
• Each stage is broken up into one or more
actions.
• Transition is the act of continuing from
one stage to another stage in workflow.
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Pipeline Structure
• Pipeline is a set of stages
• Each Stage includes set of actions
• Actions categories are source, build ,
deploy , test , Approve etc
• Stages have inputs and output
• Actions could be sequential or parallel
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
CodePipeline Pricing
• There are no upfront fees or commitments. You pay only for what you use.
• $1 per active pipeline per month. Pipelines are free for the first 30 days
after creation.
• An active pipeline is a pipeline that has existed for more than 30 days and
has at least one code change that runs through it during the month.
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Demo
• How to create CI/CD Pipeline using
CodeCommit
CodeBuild
CodeDeploy &
CodePipeline.
Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
Thank You

Presented By
Pulkit Gupta
Ad

More Related Content

What's hot (20)

Ansible
AnsibleAnsible
Ansible
Raul Leite
 
Terraform
TerraformTerraform
Terraform
Phil Wilkins
 
Terraform on Azure
Terraform on AzureTerraform on Azure
Terraform on Azure
Mithun Shanbhag
 
Containerd Internals: Building a Core Container Runtime
Containerd Internals: Building a Core Container RuntimeContainerd Internals: Building a Core Container Runtime
Containerd Internals: Building a Core Container Runtime
Phil Estes
 
Ansible
AnsibleAnsible
Ansible
Knoldus Inc.
 
Terraform on Azure
Terraform on AzureTerraform on Azure
Terraform on Azure
Julien Corioland
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
Albert Suwandhi
 
Storing 16 Bytes at Scale
Storing 16 Bytes at ScaleStoring 16 Bytes at Scale
Storing 16 Bytes at Scale
Fabian Reinartz
 
Kubernates vs Openshift: What is the difference and comparison between Opensh...
Kubernates vs Openshift: What is the difference and comparison between Opensh...Kubernates vs Openshift: What is the difference and comparison between Opensh...
Kubernates vs Openshift: What is the difference and comparison between Opensh...
jeetendra mandal
 
Introduction to Docker - 2017
Introduction to Docker - 2017Introduction to Docker - 2017
Introduction to Docker - 2017
Docker, Inc.
 
Firebase on Android: The Big Picture
Firebase on Android: The Big PictureFirebase on Android: The Big Picture
Firebase on Android: The Big Picture
Sriyank Siddhartha
 
Azure vnet
Azure vnetAzure vnet
Azure vnet
zekeLabs Technologies
 
Infrastructure as Code for Network
Infrastructure as Code for NetworkInfrastructure as Code for Network
Infrastructure as Code for Network
Damien Garros
 
Infrastructure-as-Code (IaC) using Terraform
Infrastructure-as-Code (IaC) using TerraformInfrastructure-as-Code (IaC) using Terraform
Infrastructure-as-Code (IaC) using Terraform
Adin Ermie
 
DevOps with Kubernetes
DevOps with KubernetesDevOps with Kubernetes
DevOps with Kubernetes
EastBanc Tachnologies
 
Comparing Next-Generation Container Image Building Tools
 Comparing Next-Generation Container Image Building Tools Comparing Next-Generation Container Image Building Tools
Comparing Next-Generation Container Image Building Tools
Akihiro Suda
 
Windows server
Windows serverWindows server
Windows server
Hideo Amezawa
 
Chapter 6
Chapter 6Chapter 6
Chapter 6
Vipin Pachauri
 
Apache web server
Apache web serverApache web server
Apache web server
Sabiha M
 
Virtualization.ppt
Virtualization.pptVirtualization.ppt
Virtualization.ppt
vishal choudhary
 
Containerd Internals: Building a Core Container Runtime
Containerd Internals: Building a Core Container RuntimeContainerd Internals: Building a Core Container Runtime
Containerd Internals: Building a Core Container Runtime
Phil Estes
 
Storing 16 Bytes at Scale
Storing 16 Bytes at ScaleStoring 16 Bytes at Scale
Storing 16 Bytes at Scale
Fabian Reinartz
 
Kubernates vs Openshift: What is the difference and comparison between Opensh...
Kubernates vs Openshift: What is the difference and comparison between Opensh...Kubernates vs Openshift: What is the difference and comparison between Opensh...
Kubernates vs Openshift: What is the difference and comparison between Opensh...
jeetendra mandal
 
Introduction to Docker - 2017
Introduction to Docker - 2017Introduction to Docker - 2017
Introduction to Docker - 2017
Docker, Inc.
 
Firebase on Android: The Big Picture
Firebase on Android: The Big PictureFirebase on Android: The Big Picture
Firebase on Android: The Big Picture
Sriyank Siddhartha
 
Infrastructure as Code for Network
Infrastructure as Code for NetworkInfrastructure as Code for Network
Infrastructure as Code for Network
Damien Garros
 
Infrastructure-as-Code (IaC) using Terraform
Infrastructure-as-Code (IaC) using TerraformInfrastructure-as-Code (IaC) using Terraform
Infrastructure-as-Code (IaC) using Terraform
Adin Ermie
 
Comparing Next-Generation Container Image Building Tools
 Comparing Next-Generation Container Image Building Tools Comparing Next-Generation Container Image Building Tools
Comparing Next-Generation Container Image Building Tools
Akihiro Suda
 
Apache web server
Apache web serverApache web server
Apache web server
Sabiha M
 

Similar to CI/CD with AWS Code Services (13)

DevOps Spain 2019. Pedro Mendoza-AWS
DevOps Spain 2019. Pedro Mendoza-AWSDevOps Spain 2019. Pedro Mendoza-AWS
DevOps Spain 2019. Pedro Mendoza-AWS
atSistemas
 
Community day _aws_ci_cd_v0.2
Community day _aws_ci_cd_v0.2Community day _aws_ci_cd_v0.2
Community day _aws_ci_cd_v0.2
VijayaNirmalaGopal
 
DevOps Unleashed: Strategies that Speed Deployments
DevOps Unleashed: Strategies that Speed DeploymentsDevOps Unleashed: Strategies that Speed Deployments
DevOps Unleashed: Strategies that Speed Deployments
ForgeRock
 
CI CD using AWS Developer Tools @ AWS Community Day Bengaluru 2018
CI CD using AWS Developer Tools @ AWS Community Day Bengaluru 2018CI CD using AWS Developer Tools @ AWS Community Day Bengaluru 2018
CI CD using AWS Developer Tools @ AWS Community Day Bengaluru 2018
Bhuvaneswari Subramani
 
CI CD using AWS Developer Tools @ AWS Community Day Chennai 2019
CI CD using AWS Developer Tools @ AWS Community Day Chennai 2019CI CD using AWS Developer Tools @ AWS Community Day Chennai 2019
CI CD using AWS Developer Tools @ AWS Community Day Chennai 2019
Bhuvaneswari Subramani
 
Meetup callback
Meetup callbackMeetup callback
Meetup callback
Wayne Scarano
 
Emulators as an Emerging Best Practice for API Providers
Emulators as an Emerging Best Practice for API ProvidersEmulators as an Emerging Best Practice for API Providers
Emulators as an Emerging Best Practice for API Providers
Cisco DevNet
 
20201012 - Serverless Architecture Conference - Deploying serverless applicat...
20201012 - Serverless Architecture Conference - Deploying serverless applicat...20201012 - Serverless Architecture Conference - Deploying serverless applicat...
20201012 - Serverless Architecture Conference - Deploying serverless applicat...
Marcia Villalba
 
Get the Exact Identity Solution You Need - In the Cloud - Overview
Get the Exact Identity Solution You Need - In the Cloud - OverviewGet the Exact Identity Solution You Need - In the Cloud - Overview
Get the Exact Identity Solution You Need - In the Cloud - Overview
ForgeRock
 
Pipelining DevOps with Jenkins and AWS
Pipelining DevOps with Jenkins and AWSPipelining DevOps with Jenkins and AWS
Pipelining DevOps with Jenkins and AWS
Jimmy Ray
 
Meetup devops
Meetup devopsMeetup devops
Meetup devops
Leonard Moustacchis
 
Continuous Delivery of Containers with Drone & Kontena
Continuous Delivery of Containers with Drone & KontenaContinuous Delivery of Containers with Drone & Kontena
Continuous Delivery of Containers with Drone & Kontena
Jussi Nummelin
 
CI/CD using AWS developer tools
CI/CD using AWS developer toolsCI/CD using AWS developer tools
CI/CD using AWS developer tools
AWS User Group Bengaluru
 
DevOps Spain 2019. Pedro Mendoza-AWS
DevOps Spain 2019. Pedro Mendoza-AWSDevOps Spain 2019. Pedro Mendoza-AWS
DevOps Spain 2019. Pedro Mendoza-AWS
atSistemas
 
DevOps Unleashed: Strategies that Speed Deployments
DevOps Unleashed: Strategies that Speed DeploymentsDevOps Unleashed: Strategies that Speed Deployments
DevOps Unleashed: Strategies that Speed Deployments
ForgeRock
 
CI CD using AWS Developer Tools @ AWS Community Day Bengaluru 2018
CI CD using AWS Developer Tools @ AWS Community Day Bengaluru 2018CI CD using AWS Developer Tools @ AWS Community Day Bengaluru 2018
CI CD using AWS Developer Tools @ AWS Community Day Bengaluru 2018
Bhuvaneswari Subramani
 
CI CD using AWS Developer Tools @ AWS Community Day Chennai 2019
CI CD using AWS Developer Tools @ AWS Community Day Chennai 2019CI CD using AWS Developer Tools @ AWS Community Day Chennai 2019
CI CD using AWS Developer Tools @ AWS Community Day Chennai 2019
Bhuvaneswari Subramani
 
Emulators as an Emerging Best Practice for API Providers
Emulators as an Emerging Best Practice for API ProvidersEmulators as an Emerging Best Practice for API Providers
Emulators as an Emerging Best Practice for API Providers
Cisco DevNet
 
20201012 - Serverless Architecture Conference - Deploying serverless applicat...
20201012 - Serverless Architecture Conference - Deploying serverless applicat...20201012 - Serverless Architecture Conference - Deploying serverless applicat...
20201012 - Serverless Architecture Conference - Deploying serverless applicat...
Marcia Villalba
 
Get the Exact Identity Solution You Need - In the Cloud - Overview
Get the Exact Identity Solution You Need - In the Cloud - OverviewGet the Exact Identity Solution You Need - In the Cloud - Overview
Get the Exact Identity Solution You Need - In the Cloud - Overview
ForgeRock
 
Pipelining DevOps with Jenkins and AWS
Pipelining DevOps with Jenkins and AWSPipelining DevOps with Jenkins and AWS
Pipelining DevOps with Jenkins and AWS
Jimmy Ray
 
Continuous Delivery of Containers with Drone & Kontena
Continuous Delivery of Containers with Drone & KontenaContinuous Delivery of Containers with Drone & Kontena
Continuous Delivery of Containers with Drone & Kontena
Jussi Nummelin
 
Ad

Recently uploaded (20)

DT REPORT by Tech titan GROUP to introduce the subject design Thinking
DT REPORT by Tech titan GROUP to introduce the subject design ThinkingDT REPORT by Tech titan GROUP to introduce the subject design Thinking
DT REPORT by Tech titan GROUP to introduce the subject design Thinking
DhruvChotaliya2
 
DATA-DRIVEN SHOULDER INVERSE KINEMATICS YoungBeom Kim1 , Byung-Ha Park1 , Kwa...
DATA-DRIVEN SHOULDER INVERSE KINEMATICS YoungBeom Kim1 , Byung-Ha Park1 , Kwa...DATA-DRIVEN SHOULDER INVERSE KINEMATICS YoungBeom Kim1 , Byung-Ha Park1 , Kwa...
DATA-DRIVEN SHOULDER INVERSE KINEMATICS YoungBeom Kim1 , Byung-Ha Park1 , Kwa...
charlesdick1345
 
Introduction to Zoomlion Earthmoving.pptx
Introduction to Zoomlion Earthmoving.pptxIntroduction to Zoomlion Earthmoving.pptx
Introduction to Zoomlion Earthmoving.pptx
AS1920
 
15th International Conference on Computer Science, Engineering and Applicatio...
15th International Conference on Computer Science, Engineering and Applicatio...15th International Conference on Computer Science, Engineering and Applicatio...
15th International Conference on Computer Science, Engineering and Applicatio...
IJCSES Journal
 
Metal alkyne complexes.pptx in chemistry
Metal alkyne complexes.pptx in chemistryMetal alkyne complexes.pptx in chemistry
Metal alkyne complexes.pptx in chemistry
mee23nu
 
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptxLidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
RishavKumar530754
 
Level 1-Safety.pptx Presentation of Electrical Safety
Level 1-Safety.pptx Presentation of Electrical SafetyLevel 1-Safety.pptx Presentation of Electrical Safety
Level 1-Safety.pptx Presentation of Electrical Safety
JoseAlbertoCariasDel
 
The Gaussian Process Modeling Module in UQLab
The Gaussian Process Modeling Module in UQLabThe Gaussian Process Modeling Module in UQLab
The Gaussian Process Modeling Module in UQLab
Journal of Soft Computing in Civil Engineering
 
new ppt artificial intelligence historyyy
new ppt artificial intelligence historyyynew ppt artificial intelligence historyyy
new ppt artificial intelligence historyyy
PianoPianist
 
Smart_Storage_Systems_Production_Engineering.pptx
Smart_Storage_Systems_Production_Engineering.pptxSmart_Storage_Systems_Production_Engineering.pptx
Smart_Storage_Systems_Production_Engineering.pptx
rushikeshnavghare94
 
Degree_of_Automation.pdf for Instrumentation and industrial specialist
Degree_of_Automation.pdf for  Instrumentation  and industrial specialistDegree_of_Automation.pdf for  Instrumentation  and industrial specialist
Degree_of_Automation.pdf for Instrumentation and industrial specialist
shreyabhosale19
 
Smart Storage Solutions.pptx for production engineering
Smart Storage Solutions.pptx for production engineeringSmart Storage Solutions.pptx for production engineering
Smart Storage Solutions.pptx for production engineering
rushikeshnavghare94
 
ADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITY
ADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITYADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITY
ADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITY
ijscai
 
Mathematical foundation machine learning.pdf
Mathematical foundation machine learning.pdfMathematical foundation machine learning.pdf
Mathematical foundation machine learning.pdf
TalhaShahid49
 
π0.5: a Vision-Language-Action Model with Open-World Generalization
π0.5: a Vision-Language-Action Model with Open-World Generalizationπ0.5: a Vision-Language-Action Model with Open-World Generalization
π0.5: a Vision-Language-Action Model with Open-World Generalization
NABLAS株式会社
 
RICS Membership-(The Royal Institution of Chartered Surveyors).pdf
RICS Membership-(The Royal Institution of Chartered Surveyors).pdfRICS Membership-(The Royal Institution of Chartered Surveyors).pdf
RICS Membership-(The Royal Institution of Chartered Surveyors).pdf
MohamedAbdelkader115
 
Oil-gas_Unconventional oil and gass_reseviours.pdf
Oil-gas_Unconventional oil and gass_reseviours.pdfOil-gas_Unconventional oil and gass_reseviours.pdf
Oil-gas_Unconventional oil and gass_reseviours.pdf
M7md3li2
 
International Journal of Distributed and Parallel systems (IJDPS)
International Journal of Distributed and Parallel systems (IJDPS)International Journal of Distributed and Parallel systems (IJDPS)
International Journal of Distributed and Parallel systems (IJDPS)
samueljackson3773
 
QA/QC Manager (Quality management Expert)
QA/QC Manager (Quality management Expert)QA/QC Manager (Quality management Expert)
QA/QC Manager (Quality management Expert)
rccbatchplant
 
Machine learning project on employee attrition detection using (2).pptx
Machine learning project on employee attrition detection using (2).pptxMachine learning project on employee attrition detection using (2).pptx
Machine learning project on employee attrition detection using (2).pptx
rajeswari89780
 
DT REPORT by Tech titan GROUP to introduce the subject design Thinking
DT REPORT by Tech titan GROUP to introduce the subject design ThinkingDT REPORT by Tech titan GROUP to introduce the subject design Thinking
DT REPORT by Tech titan GROUP to introduce the subject design Thinking
DhruvChotaliya2
 
DATA-DRIVEN SHOULDER INVERSE KINEMATICS YoungBeom Kim1 , Byung-Ha Park1 , Kwa...
DATA-DRIVEN SHOULDER INVERSE KINEMATICS YoungBeom Kim1 , Byung-Ha Park1 , Kwa...DATA-DRIVEN SHOULDER INVERSE KINEMATICS YoungBeom Kim1 , Byung-Ha Park1 , Kwa...
DATA-DRIVEN SHOULDER INVERSE KINEMATICS YoungBeom Kim1 , Byung-Ha Park1 , Kwa...
charlesdick1345
 
Introduction to Zoomlion Earthmoving.pptx
Introduction to Zoomlion Earthmoving.pptxIntroduction to Zoomlion Earthmoving.pptx
Introduction to Zoomlion Earthmoving.pptx
AS1920
 
15th International Conference on Computer Science, Engineering and Applicatio...
15th International Conference on Computer Science, Engineering and Applicatio...15th International Conference on Computer Science, Engineering and Applicatio...
15th International Conference on Computer Science, Engineering and Applicatio...
IJCSES Journal
 
Metal alkyne complexes.pptx in chemistry
Metal alkyne complexes.pptx in chemistryMetal alkyne complexes.pptx in chemistry
Metal alkyne complexes.pptx in chemistry
mee23nu
 
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptxLidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
RishavKumar530754
 
Level 1-Safety.pptx Presentation of Electrical Safety
Level 1-Safety.pptx Presentation of Electrical SafetyLevel 1-Safety.pptx Presentation of Electrical Safety
Level 1-Safety.pptx Presentation of Electrical Safety
JoseAlbertoCariasDel
 
new ppt artificial intelligence historyyy
new ppt artificial intelligence historyyynew ppt artificial intelligence historyyy
new ppt artificial intelligence historyyy
PianoPianist
 
Smart_Storage_Systems_Production_Engineering.pptx
Smart_Storage_Systems_Production_Engineering.pptxSmart_Storage_Systems_Production_Engineering.pptx
Smart_Storage_Systems_Production_Engineering.pptx
rushikeshnavghare94
 
Degree_of_Automation.pdf for Instrumentation and industrial specialist
Degree_of_Automation.pdf for  Instrumentation  and industrial specialistDegree_of_Automation.pdf for  Instrumentation  and industrial specialist
Degree_of_Automation.pdf for Instrumentation and industrial specialist
shreyabhosale19
 
Smart Storage Solutions.pptx for production engineering
Smart Storage Solutions.pptx for production engineeringSmart Storage Solutions.pptx for production engineering
Smart Storage Solutions.pptx for production engineering
rushikeshnavghare94
 
ADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITY
ADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITYADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITY
ADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITY
ijscai
 
Mathematical foundation machine learning.pdf
Mathematical foundation machine learning.pdfMathematical foundation machine learning.pdf
Mathematical foundation machine learning.pdf
TalhaShahid49
 
π0.5: a Vision-Language-Action Model with Open-World Generalization
π0.5: a Vision-Language-Action Model with Open-World Generalizationπ0.5: a Vision-Language-Action Model with Open-World Generalization
π0.5: a Vision-Language-Action Model with Open-World Generalization
NABLAS株式会社
 
RICS Membership-(The Royal Institution of Chartered Surveyors).pdf
RICS Membership-(The Royal Institution of Chartered Surveyors).pdfRICS Membership-(The Royal Institution of Chartered Surveyors).pdf
RICS Membership-(The Royal Institution of Chartered Surveyors).pdf
MohamedAbdelkader115
 
Oil-gas_Unconventional oil and gass_reseviours.pdf
Oil-gas_Unconventional oil and gass_reseviours.pdfOil-gas_Unconventional oil and gass_reseviours.pdf
Oil-gas_Unconventional oil and gass_reseviours.pdf
M7md3li2
 
International Journal of Distributed and Parallel systems (IJDPS)
International Journal of Distributed and Parallel systems (IJDPS)International Journal of Distributed and Parallel systems (IJDPS)
International Journal of Distributed and Parallel systems (IJDPS)
samueljackson3773
 
QA/QC Manager (Quality management Expert)
QA/QC Manager (Quality management Expert)QA/QC Manager (Quality management Expert)
QA/QC Manager (Quality management Expert)
rccbatchplant
 
Machine learning project on employee attrition detection using (2).pptx
Machine learning project on employee attrition detection using (2).pptxMachine learning project on employee attrition detection using (2).pptx
Machine learning project on employee attrition detection using (2).pptx
rajeswari89780
 
Ad

CI/CD with AWS Code Services

  • 1. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Continuous Integration And Deployment (CI/CD) with AWS Code Services Presented By Pulkit Gupta
  • 2. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Agenda • What is CI/CD ? Why to use ? • What is CI/CD Pipeline ? • How to automate software build and release process using AWS code services • What is AWS CodeCommit & its setup for source control • How to Build and test code with AWS CodeBuild • How to Automate CI/CD process with AWS CodePipeline • Demo, Discussion, Q&A session
  • 3. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights It is a process where developers frequently merge their code changes into a central repository, after which automated build and tests are run. Developer Code CI server Automated Builds Automated Tests Continuous Integration
  • 4. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Developer Code on Central Repo CI server Automated Tests Automated Builds Release Destination After CI process , a release is produced which is ready to be deployed on a destination such as beta or a testing server. Which is called Continuous Delivery. So the Continuous delivery is regularly releasing your software to a destination. If continuous delivery process releases a software in production then it is called Continuous Deployment , because the changes made by developers has now deployed to customer and are in production. Continuous Delivery and Deployment
  • 5. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights What is CI/CD Pipeline • Sequence of steps a code change goes through. • Depending on the steps a pipeline can either be CI or CD Developer Code on Central Repo CI server Automated Tests Automated Builds Release Destination CI Pipeline CD Pipeline
  • 6. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
  • 7. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
  • 8. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Why Use CI/CD ? • Faster Release Cycles • Lower Costs • Rapid Troubleshooting • Reliability • Higher Quality Products • Better Business Advantage
  • 9. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Code Commit • What is CodeCommit • Benefits • How to create & connect new repo in CodeCommit • CodeCommit access management
  • 10. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights What is code Commit • AWS CodeCommit is a version control service, that you can use to privately store and manage assets in the cloud and integrate with AWS services. • AWS CodeCommit eliminates the need for you to manage your own version control system or worry about scaling its infrastructure • All you need to do is to create a CodeCommit repo and assign permissions, and your users can begin committing their code. • You can use AWS CodeCommit to store anything from code to binaries. • It supports the standard functionality of Git, so it works seamlessly with your existing Git-based tools.
  • 11. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Benefits • Managed Service: CodeCommit is fully managed, distributed, and fault- tolerant. • High Availability: Data is replicated across availability zones. • Store Anything: Not just source code, but documents and binary files, too. There is no limit to the size of a repo. • AWS Security: CodeCommit is integrated with AWS IAM. Data is encrypted at rest. • Git Compatible: Users can migrate their existing Git repositories.
  • 12. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Code commit access management • HTTPS git credentials or SSH • Create users on IAM • Attach Policies • Customized Policy for repository • Generate Git credentials • Use credentials for HTTPS connections.
  • 13. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Customized Policy for repository { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codecommit:GitPull" ], "Resource": "arn:aws:codecommit:<REGION>:<ACCOUNTNUMBER>:<REPO-NAME>" }, { "Effect": "Allow", "Action": [ "codecommit:Get*", "codecommit:BatchGetRepositories", "codecommit:List*" ], "Resource": "*" } ] }
  • 14. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights CodeCommit Commands • Create repo: aws codecommit create-repository --repository-name myapp --repository- description "description“ • Clone repo: git clone https://git-codecommit.us-east-1.amazonaws.com/v1/myapop • Create branch aws codecommit create-branch --repository-name myapp --branch-name newfeature --commit-id • List all branches aws codecommit list-branches --repository-name myapp • Rename repo: aws codecommit update-repository-name --old-name myapp --new-name MyNewApp • Getting repository Details aws codecommit batch-get-repositories --repository-names myapp • Delete repo aws codecommit delete-repository --repository-name MyNewApp
  • 15. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights CodeCommit Pricing
  • 16. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Demo • Create a Repo on code Commit • Create IAM users and connect to repo • Code commit access management • CodeCommit CLI commands
  • 17. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights AWS CodeBuild • Why Builds ? • What is CodeBuild ? • How CodeBuild Works ? • Planning a build • Specification file format • CodeBuild Environment
  • 18. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Why Builds? • Every software delivery pipeline has to take source code from a developer’s laptop and safely ship it to production systems in the cloud. • This is best accomplished by “building an artifact” — a snapshot of the code and everything it needs to run like its dependencies and compiled binaries. • Artifacts could be a .zip file, .deb package, AMI or a Docker image.
  • 19. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Why a Build Service? If we use build software like Jenkins or Bamboo, someone on our team is responsible for: • Setting up a Jenkins cluster • Maintaining the cluster security • Upgrading the Jenkins software over time • Monitoring and recovering from Jenkins downtime • Capacity planning so the cluster can handle all our build volume • With a managed build service like Heroku, Docker Hub, and now CodeBuild, operations are eliminated and costs are greatly reduced to on- demand usage.
  • 20. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights AWS CodeBuild • AWS CodeBuild is a fully managed build service that compiles source code, runs tests, and produces software packages that are ready to deploy. • With CodeBuild, you don’t need to provision, manage, and scale your own build servers. • For each build, it launches a fresh, Isolated container-based environment and terminates it after the build process ends.
  • 21. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights • AWS CodeBuild uses Docker containers to build your code depending on your environment. • You can use build environments provided by AWS or existing Docker images from Docker hub or Elastic Container Registry. • Currently AWS provides build environments for Java, Android, Ruby, Go, Node.js, Python, and Docker (to build Docker images).
  • 22. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights • CodeBuild fetches code from the Source repository. It could be S3 Bucket, GitHub Repository, or AWS CodeCommit Repository • Runs the commands in the build spec. You can have a buildspec.yml file in the source code root directory or you can explicitly write your build commands. • The buildspec contains four phases. Install, pre-build, build and post-build. -> Install – Install packages in the build environment if any. -> Pre-build – Commands that should run before build if any. -> Build – Commands to build the artifact. -> Post-build – Commands to run after the build if any.
  • 23. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights How CodeBuild Works
  • 24. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Terminologies of CodeBuild • Source Repository – Location of your source code. • Build Environment – Your runtime environment. • IAM Role – Grants CodeBuild permission to access to specific AWS services and resources. • Build Spec – Build commands. • Compute Type – Amount of memory and compute power required.
  • 25. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Planning a Build • Where is the source code? • Build commands and their order • Runtimes , APIs & tools • Can you use OOTB build environment or you need to plan for the custom environment ?
  • 26. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Steps to build code • Create codecommit repo • Add project to codecommit • Update buildspec.yml • Build project
  • 27. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Build Specifications • buildspec.yml defines build commands • Can be in the application or in codebuild • Main sections: Version , variables, Phases, Artifacts • Phases include : pre_build, build , post_build
  • 28. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Build Specifications • Version is required • Environment variable are optional • phases are required • artifact is optional to define output
  • 29. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 version: 0.1 environment_variables: plaintext: JAVA_HOME: "/opt/java-8-openjdk-amd64" phases: install: commands: - apt-get update -y - apt-get install -y maven pre_build: commands: - echo This is pre_build build: commands - echo Starting build `date` - mvn clean package post_build: commands: - echo Build completed on `date` artifacts: files: - target/messageUtil-1.0.jar discard-paths: yes Sample buildspec.yml file
  • 30. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Build Environments • Preconfigured docker images • Go,Java, NodeJS, Python,Ruby, Andriod • Can be extended using buildspec • Base docker image is available for extension with AWS CLI and git • you can choose compute power
  • 31. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights CodeBuild Pricing • It uses simple pay-as-you-go pricing. There are no upfront costs or minimum fees. • You pay only for the resources you use.
  • 32. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights AWS CodeDeploy It is an AWS service that enables developers to automate the deployment of applications. • Automates build deployment • Can deploy on EC2 & on premises instances • Scales with environment size • Stop and rollback features • Integrate with AWS services
  • 33. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights AWS CodePipeline • AWS codePipeline is a continuous delivery services from AWS • AWS codePipeline builds, test and deploys our source code consistently and automatically, based on release process models we define. • AWS codePipeline helps us to easily build out an end-to-end solution by using pre-built plugin for popular third party services like Github etc
  • 34. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
  • 35. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights
  • 36. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Benefits AWS CodePipeline has several benefits that align with the DevOps principle of continuous deployment: • Rapid delivery • Improved quality • Configurable workflow • Easy to integrate • Fully Managed • Scalable
  • 37. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights How Pipeline works • AWS CodePipeline manages the release process via pipelines or workflows. • Workflows are broken up into stages. • Each stage is broken up into one or more actions. • Transition is the act of continuing from one stage to another stage in workflow.
  • 38. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Pipeline Structure • Pipeline is a set of stages • Each Stage includes set of actions • Actions categories are source, build , deploy , test , Approve etc • Stages have inputs and output • Actions could be sequential or parallel
  • 39. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights CodePipeline Pricing • There are no upfront fees or commitments. You pay only for what you use. • $1 per active pipeline per month. Pipelines are free for the first 30 days after creation. • An active pipeline is a pipeline that has existed for more than 30 days and has at least one code change that runs through it during the month.
  • 40. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Demo • How to create CI/CD Pipeline using CodeCommit CodeBuild CodeDeploy & CodePipeline.
  • 41. Copyright © 2016 Talentica Software (I) Pvt Ltd. All rightsCopyright © 2016 Talentica Software (I) Pvt Ltd. All rights Thank You  Presented By Pulkit Gupta

Editor's Notes

  • #4: Here is a nice way to visualise it.