aws codecommit, codedeploy & codepipeline
TRANSCRIPT
![Page 1: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/1.jpg)
© 2015, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Julien Simon, Principal Technical Evangelist [email protected]
@julsimon
13/04/2016 AWS User Group Turkey
AWS Code{Commit,Deploy,Pipeline} Based on DVO202 from AWS re:Invent 2015
![Page 2: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/2.jpg)
What to expect from the session
The Amazon DevOps story Developer tools for everyone
• AWS CodeDeploy • AWS CodePipeline • AWS CodeCommit
End-to-end demo with a simple web application
![Page 3: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/3.jpg)
What is DevOps?
DevOps = anything that automates, accelerates, strengthens this lifecycle
developers customers
release test build
plan monitor
delivery pipeline
feedback loop
Software development lifecycle
![Page 4: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/4.jpg)
©2015, Amazon Web Services, Inc. or its affiliates. All rights reserved
The Amazon DevOps story
![Page 5: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/5.jpg)
![Page 6: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/6.jpg)
Monolith development lifecycle
developers
release test build
delivery pipeline app
![Page 7: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/7.jpg)
Service-Oriented Architecture (SOA) Single-purpose Connected through APIs Highly decoupled “Microservices”
![Page 8: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/8.jpg)
Two-pizza teams Full ownership Full accountability Aligned incentives “DevOps”
![Page 9: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/9.jpg)
Missing tools
developers delivery pipeline services
???
![Page 10: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/10.jpg)
Self-service Technology-agnostic Encourage best practices Single-purpose services
![Page 11: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/11.jpg)
Deployment service No downtime deployments Health tracking Versioned artifacts and rollbacks
![Page 12: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/12.jpg)
Pipelines Continuous delivery Automated release process Faster and more reliable releases >90% of teams
![Page 13: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/13.jpg)
Microservice development lifecycle
developers delivery pipelines services
release test build
release test build
release test build
release test build
release test build
release test build
![Page 14: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/14.jpg)
= 50 million deployments a year (1.5 deployment every second)
Thousands of teams × Microservice architecture
× Continuous delivery × Multiple environments
![Page 15: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/15.jpg)
How can others do this?
![Page 16: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/16.jpg)
Setting up a delivery pipeline
Testing Staging Production
deploy
deploy
deploy Source Build
release
AWS CodeDeploy
AWS CodePipeline
AWS CodeCommit
![Page 17: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/17.jpg)
©2015, Amazon Web Services, Inc. or its affiliates. All rights reserved
AWS Code Services
![Page 18: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/18.jpg)
AWS CodeCommit
Use standard Git tools Scalability, availability, and durability of Amazon S3 Encryption at rest with customer-specific keys
git pull/push CodeCommit
Git objects in Amazon S3
Git index in Amazon DynamoDB
Encryption key in AWS KMS
SSH or HTTPS
![Page 19: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/19.jpg)
AWS CodeDeploy
Easy and reliable deployments (zero downtime) Scale with ease Deploy to any server
Test CodeDeploy v1, v2, v3
Production
Dev
![Page 20: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/20.jpg)
AWS CodeDeploy and EC2 Instances
• CodeDeploy requires an agent, available for Linux and Windows
• CodeDeploy can deploy to: • On-premise instances (configuration required) • Existing EC2 instances (configuration required) • New EC2 instances pre-configured for CodeDeploy thanks to a
CloudFormation templates (no configuration required)
![Page 21: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/21.jpg)
AWS CodeDeploy Key Components
Revision: versioned code + application specification file (AppSpec) Deployment group: a set of individual instances with a specific tag Deployment configuration: a set of rules and conditions used during a deployment Application: a name pointing to a revision, a deployment group and a deployment configuration
![Page 22: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/22.jpg)
AWS CodeDeploy Key Components
![Page 23: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/23.jpg)
AWS CodePipeline
Connect to best-of-breed tools Accelerate your release process Consistently verify each release
Build 1) Build 2) Unit test
1) Deploy 2) UI test
Source Beta Production 1) Deploy 2) Perf test
Gamma 1) Deploy canary 2) Deploy region 1 3) Deploy region 2
1) Pull
![Page 24: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/24.jpg)
AWS CodePipeline Key Components
Stage: a specific part of the pipeline (source, build, etc.), containing a sequence of actions Action: a task performed on an artifact in a stage. Actions occur in a specified order, in sequence or in parallel Revision: a change made to a source that is configured in a source action Transition: moving a revision to the next stage in the pipeline
![Page 25: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/25.jpg)
AWS CodePipeline Key Components
![Page 26: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/26.jpg)
AWS Code partners
![Page 27: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/27.jpg)
Hands on with the AWS Code services
CodeCommit source control
CodePipeline continuous delivery
CodeDeploy automated deployment
https://blogs.aws.amazon.com/application-management/post/Tx2CIB02ZO05ZII/Explore-Continuous-Delivery-in-AWS-with-the-Pipeline-Starter-Kit
![Page 28: AWS CodeCommit, CodeDeploy & CodePipeline](https://reader031.vdocuments.net/reader031/viewer/2022021506/586e72b61a28ab99598b51d7/html5/thumbnails/28.jpg)
Next steps
DEEP DIVE ON CODE DEPLOY @ AWS re:Invent 2015 AWS CodeDeploy: Automating Your Software Deployments (DVO306) LEARN MORE
aws.amazon.com/awscode AWS CodeDeploy & CodePipeline User Guides GET STARTED
console.aws.amazon.com J