SlideShare une entreprise Scribd logo
1  sur  26
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Gabe Hollombe
Technical Evangelist, AWS
2018-07-10
How to build a Secure & Scalable
CI/CD pipeline with AWS CodeStar
@gabehollombe
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Agenda
What is DevOps & AWS enabled DevOps
Introducing AWS CodeStar
AWS CodeStar and AWS Code Services details
Project Setup and CI/CD demos
Summary
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
What is DevOps?
Union of software development and operations
Migration of Agile continuous development into continuous integration
and continuous delivery
DevOps Model
• No Silos – Puts emphasis on communication, collaboration, and cohesion
between disciplines
• Best practices for change, configuration, and deployment automation
• Deliver apps/services at faster pace
• High speed product updates
Delivery Pipeline
Feedback LoopCO M P A N Y CUSTOMERS
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
• Integration
tests with
other systems
• Load testing
• UI tests
• Penetration
testing
DevOps Release Processes: Four major phases
Source Build Test Production
• Check-in
source code
such as .java
files.
• Peer review
new code
• Compile code
• Unit tests
• Style checkers
• Code metrics
• Create
container
images
• Deployment
to production
environments
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Continuous Integration (CI) is…
DevOps software development practice
Refers to Build or Integration stage of the software release process
Key Activities
ü Code changes merged into a central repository
ü Automated builds and tests are run
Goals
ü Find and address bugs quickly
ü Improve software quality
ü Reduce time to release new software updates
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Continuous Delivery (CD) is…
DevOps software development practice that refers to Deployment
stage of the software release process
Key Ac'vi'es
ü Deployment of all code changes to a testing and/or a production
environment
ü Approval of updates to production from test stages
Goals
ü Verify application updates across multiple dimensions before
deployment
ü Automate entire software release process
ü Pre-emptively discover deployment issues
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
DevOps Release processes: Levels
Source Build Test Production
Continuous integration
Continuous delivery
Continuous deployment
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodeStar – Implement AWS DevOps
Source Build Test Production
Third Party
Tooling
Software Development and Continuous Integration & Delivery Workflow
AWS CodeCommit AWS CodeBuild AWS CodeDeploy
AWS CodePipeline
AWS CodeStar
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodeStar
Develop on AWS in minutes: Easily set up your entire development
environment and programming tools for coding, building, testing, and
deploying on AWS
Collaborate securely with your entire: Manage team access, add
team members to projects by role i.e. owners, contributors
Integrated issue tracking and project management: Integrates
Atlassian JIRA Software to easily manage issues directly from
CodeStar dashboard and monitor application progress and activity
Supported for popular programming languages: Develop variety of
applications using language of choice including Java, JavaScript,
PHP, Ruby, and Python.
Release code faster: Set up your entire continuous delivery
toolchain in minutes
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Easy set-up & deployment
Preconfigured AWS CloudFormation templates for quick development
project creation
• Automatic provisioning of underlying AWS services for quick app
coding and deployment
Over twenty different AWS CodeStar project templates
Support for websites, web services, microservices, Alexa Skills dev
projects (and more)
3 Hosting environments
§ Self-Managed: Amazon EC2 with AWS CodeDeploy
§ Managed: Elastic Beanstalk
§ Serverless: AWS Lambda
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Project Templates
Programming Languages
C#
Go
Java
JavaScript
Python
Ruby
PHP
CodeStar project templates support popular
programming languages and IDEs
IDE/Code Editors
Cloud9
Visual Studio
Eclipse
AWS CLI
AWS CLI
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Demo: Project Creation & Templates
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Project Dashboard
Coordinate your day-to-day development activities
Dashboard provides tools to view real time application activity,
monitor builds, and flow of code through deployment pipeline
Customize project dashboard by adding, removing, moving tiles
Add customizable team wiki tile for team resources sharing or
other purposes ex. show code snippets
Use CodeStar project extensions to add tiles and functionality
dashboard
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Working with Teams
Project Roles
ü Owner: Ability to add & remove team members,
contribute code to project repo, grant or deny team
members remote access
ü Contributor: Ability to add & remove dashboard
resources, contribute code to the project repository
ü Viewer: Ability to view the project dashboard, code,
tiles, and project state
Project team members (users)
ü Can have different CodeStar roles and permissions
ü Can belong to multiple CodeStar projects
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodeStar – AWS Code Services
Source Build Test Production
Software Release Steps:
AWS CodeCommit
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodeStar – AWS Code Services
Source Build Test Production
Software Release Steps:
AWS CodeBuild
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodeStar – AWS Code Services
Source Build Test Production
Software Release Steps:
Third Party
Tooling
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodeStar – AWS Code Services
Source Build Test Production
Software Release Steps:
AWS CodeDeploy
Or
AWS Elastic BeanStalk
Or
AWS Lambda
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodeStar – AWS Code Services
Source Build Test Production
Software Release Steps:
EC2 On-Prem
AWS CodeDeploy
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodeStar – AWS Code Services
Source Build Test Production
Software Release Steps:
EC2
AWS Elastic Beanstalk
Route 53
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Demo: Con)nuous Delivery Pipeline
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Integrated Issue Tracking
Integrates with Atlassian JIRA So.ware – issue tracking and
project management tool
Easy JIRA and AWS CodeStar setup
ü Log into JIRA and Copy URL from any project
ü Enter JIRA URL field in the CodeStar Extensions
Monitor application activity and manage all JIRA issues in
CodeStar dashboard
Create new JIRA tickets for work items directly dashboard
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
AWS CodeStar - Code integrated partners
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Reliability
AWS CodeStar – Easily Gain Benefits of DevOps
SpeedScale
Rapid DeliveryImproved Collaboration
Security
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Summary:
Learn more:
https://aws.amazon.com/codestar
Check out Blog Post: Introducing AWS CodeStar:
https://aws.amazon.com/blogs/aws/new-aws-codestar/
Get started with AWS CodeStar:
https://console.aws.amazon.com/codestar
©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved.
Thank you!
❤
Gabe Hollombe
Technical Evangelist, AWS
@gabehollombe
Let’s keep in touch.

Contenu connexe

Tendances

How to Manage Inventory, Patching, and System Images for Your Hybrid Cloud wi...
How to Manage Inventory, Patching, and System Images for Your Hybrid Cloud wi...How to Manage Inventory, Patching, and System Images for Your Hybrid Cloud wi...
How to Manage Inventory, Patching, and System Images for Your Hybrid Cloud wi...
Amazon Web Services
 
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
Simplilearn
 

Tendances (20)

Detailed Analysis of AWS Lambda vs EC2
 Detailed Analysis of AWS Lambda vs EC2 Detailed Analysis of AWS Lambda vs EC2
Detailed Analysis of AWS Lambda vs EC2
 
Deep Dive on Amazon S3
Deep Dive on Amazon S3Deep Dive on Amazon S3
Deep Dive on Amazon S3
 
CI/CD best practices for building modern applications - MAD304 - Chicago AWS ...
CI/CD best practices for building modern applications - MAD304 - Chicago AWS ...CI/CD best practices for building modern applications - MAD304 - Chicago AWS ...
CI/CD best practices for building modern applications - MAD304 - Chicago AWS ...
 
Introduction to Nexus Repository Manager.pdf
Introduction to Nexus Repository Manager.pdfIntroduction to Nexus Repository Manager.pdf
Introduction to Nexus Repository Manager.pdf
 
Jenkins를 활용한 Openshift CI/CD 구성
Jenkins를 활용한 Openshift CI/CD 구성 Jenkins를 활용한 Openshift CI/CD 구성
Jenkins를 활용한 Openshift CI/CD 구성
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
 
(SEC318) AWS CloudTrail Deep Dive
(SEC318) AWS CloudTrail Deep Dive(SEC318) AWS CloudTrail Deep Dive
(SEC318) AWS CloudTrail Deep Dive
 
Getting Started with Azure Artifacts
Getting Started with Azure ArtifactsGetting Started with Azure Artifacts
Getting Started with Azure Artifacts
 
AWS Batch를 통한 손쉬운 일괄 처리 작업 관리하기 - 윤석찬 (AWS 테크에반젤리스트)
AWS Batch를 통한 손쉬운 일괄 처리 작업 관리하기 - 윤석찬 (AWS 테크에반젤리스트)AWS Batch를 통한 손쉬운 일괄 처리 작업 관리하기 - 윤석찬 (AWS 테크에반젤리스트)
AWS Batch를 통한 손쉬운 일괄 처리 작업 관리하기 - 윤석찬 (AWS 테크에반젤리스트)
 
(DVO305) Turbocharge YContinuous Deployment Pipeline with Containers
(DVO305) Turbocharge YContinuous Deployment Pipeline with Containers(DVO305) Turbocharge YContinuous Deployment Pipeline with Containers
(DVO305) Turbocharge YContinuous Deployment Pipeline with Containers
 
How to Manage Inventory, Patching, and System Images for Your Hybrid Cloud wi...
How to Manage Inventory, Patching, and System Images for Your Hybrid Cloud wi...How to Manage Inventory, Patching, and System Images for Your Hybrid Cloud wi...
How to Manage Inventory, Patching, and System Images for Your Hybrid Cloud wi...
 
CI/CD for Modern Applications
CI/CD for Modern ApplicationsCI/CD for Modern Applications
CI/CD for Modern Applications
 
Amazon API Gateway
Amazon API GatewayAmazon API Gateway
Amazon API Gateway
 
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
 
Crossplane @ Mastering GitOps.pdf
Crossplane @ Mastering GitOps.pdfCrossplane @ Mastering GitOps.pdf
Crossplane @ Mastering GitOps.pdf
 
(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
(DVO202) DevOps at Amazon: A Look At Our Tools & Processes(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
 
Identity and Access Management: The First Step in AWS Security
Identity and Access Management: The First Step in AWS SecurityIdentity and Access Management: The First Step in AWS Security
Identity and Access Management: The First Step in AWS Security
 
CI/CD pipelines on AWS - Builders Day Israel
CI/CD pipelines on AWS - Builders Day IsraelCI/CD pipelines on AWS - Builders Day Israel
CI/CD pipelines on AWS - Builders Day Israel
 
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
 
Introduction to Amazon Elastic File System (EFS)
Introduction to Amazon Elastic File System (EFS)Introduction to Amazon Elastic File System (EFS)
Introduction to Amazon Elastic File System (EFS)
 

Similaire à How to Build a CICD Pipeline with AWS CodeStar

Similaire à How to Build a CICD Pipeline with AWS CodeStar (20)

Collision 2018: CodeStar for CICD Pipelines
Collision 2018: CodeStar for CICD PipelinesCollision 2018: CodeStar for CICD Pipelines
Collision 2018: CodeStar for CICD Pipelines
 
Improve Productivity with Continuous Integration & Delivery
Improve Productivity with Continuous Integration & DeliveryImprove Productivity with Continuous Integration & Delivery
Improve Productivity with Continuous Integration & Delivery
 
AWS DevOps Essentials: An Introductory Workshop on CI/CD Best Practices (DEV3...
AWS DevOps Essentials: An Introductory Workshop on CI/CD Best Practices (DEV3...AWS DevOps Essentials: An Introductory Workshop on CI/CD Best Practices (DEV3...
AWS DevOps Essentials: An Introductory Workshop on CI/CD Best Practices (DEV3...
 
DevSecOps 的規模化實踐 (Level: 300-400)
DevSecOps 的規模化實踐 (Level: 300-400)DevSecOps 的規模化實踐 (Level: 300-400)
DevSecOps 的規模化實踐 (Level: 300-400)
 
Improve productivity with Continuous Integration & Delivery
Improve productivity with Continuous Integration & DeliveryImprove productivity with Continuous Integration & Delivery
Improve productivity with Continuous Integration & Delivery
 
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
 
Intro to AWS Developer Tools, featuring AWS CodeStar
Intro to AWS Developer Tools, featuring AWS CodeStarIntro to AWS Developer Tools, featuring AWS CodeStar
Intro to AWS Developer Tools, featuring AWS CodeStar
 
Scaling and Automating DevOps with CloudBees and Spot Instances (GPSTEC310) -...
Scaling and Automating DevOps with CloudBees and Spot Instances (GPSTEC310) -...Scaling and Automating DevOps with CloudBees and Spot Instances (GPSTEC310) -...
Scaling and Automating DevOps with CloudBees and Spot Instances (GPSTEC310) -...
 
Workshop: AWS DevOps Essentials: An Introductory Workshop on CI/CD Best Pract...
Workshop: AWS DevOps Essentials: An Introductory Workshop on CI/CD Best Pract...Workshop: AWS DevOps Essentials: An Introductory Workshop on CI/CD Best Pract...
Workshop: AWS DevOps Essentials: An Introductory Workshop on CI/CD Best Pract...
 
CI/CD with AWS Developer Tools and Fargate
CI/CD with AWS Developer Tools and FargateCI/CD with AWS Developer Tools and Fargate
CI/CD with AWS Developer Tools and Fargate
 
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
 
CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...
CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...
CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...
 
Improve Productivity with Continuous Integration & Delivery
Improve Productivity with Continuous Integration & DeliveryImprove Productivity with Continuous Integration & Delivery
Improve Productivity with Continuous Integration & Delivery
 
Improve Productivity with Continuous Integration & Delivery
Improve Productivity with Continuous Integration & DeliveryImprove Productivity with Continuous Integration & Delivery
Improve Productivity with Continuous Integration & Delivery
 
CI/CD using AWS developer tools
CI/CD using AWS developer toolsCI/CD using AWS developer tools
CI/CD using AWS developer tools
 
Build CICD Pipeline for Container Presentation Slides
Build CICD Pipeline for Container Presentation SlidesBuild CICD Pipeline for Container Presentation Slides
Build CICD Pipeline for Container Presentation Slides
 
CI/CD@Scale
CI/CD@ScaleCI/CD@Scale
CI/CD@Scale
 
PaaS – From Code to Running Application using AWS Elastic Beanstalk (DEV323) ...
PaaS – From Code to Running Application using AWS Elastic Beanstalk (DEV323) ...PaaS – From Code to Running Application using AWS Elastic Beanstalk (DEV323) ...
PaaS – From Code to Running Application using AWS Elastic Beanstalk (DEV323) ...
 
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...
 
A Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer Tools
A Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer ToolsA Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer Tools
A Tale of Two Pizzas: Accelerating Software Delivery with AWS Developer Tools
 

Plus de Amazon Web Services

Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
Amazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
Amazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
Amazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
Amazon Web Services
 

Plus de Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

How to Build a CICD Pipeline with AWS CodeStar

  • 1. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Gabe Hollombe Technical Evangelist, AWS 2018-07-10 How to build a Secure & Scalable CI/CD pipeline with AWS CodeStar @gabehollombe
  • 2. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Agenda What is DevOps & AWS enabled DevOps Introducing AWS CodeStar AWS CodeStar and AWS Code Services details Project Setup and CI/CD demos Summary
  • 3. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. What is DevOps? Union of software development and operations Migration of Agile continuous development into continuous integration and continuous delivery DevOps Model • No Silos – Puts emphasis on communication, collaboration, and cohesion between disciplines • Best practices for change, configuration, and deployment automation • Deliver apps/services at faster pace • High speed product updates Delivery Pipeline Feedback LoopCO M P A N Y CUSTOMERS
  • 4. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. • Integration tests with other systems • Load testing • UI tests • Penetration testing DevOps Release Processes: Four major phases Source Build Test Production • Check-in source code such as .java files. • Peer review new code • Compile code • Unit tests • Style checkers • Code metrics • Create container images • Deployment to production environments
  • 5. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Continuous Integration (CI) is… DevOps software development practice Refers to Build or Integration stage of the software release process Key Activities ü Code changes merged into a central repository ü Automated builds and tests are run Goals ü Find and address bugs quickly ü Improve software quality ü Reduce time to release new software updates
  • 6. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Continuous Delivery (CD) is… DevOps software development practice that refers to Deployment stage of the software release process Key Ac'vi'es ü Deployment of all code changes to a testing and/or a production environment ü Approval of updates to production from test stages Goals ü Verify application updates across multiple dimensions before deployment ü Automate entire software release process ü Pre-emptively discover deployment issues
  • 7. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. DevOps Release processes: Levels Source Build Test Production Continuous integration Continuous delivery Continuous deployment
  • 8. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeStar – Implement AWS DevOps Source Build Test Production Third Party Tooling Software Development and Continuous Integration & Delivery Workflow AWS CodeCommit AWS CodeBuild AWS CodeDeploy AWS CodePipeline AWS CodeStar
  • 9. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeStar Develop on AWS in minutes: Easily set up your entire development environment and programming tools for coding, building, testing, and deploying on AWS Collaborate securely with your entire: Manage team access, add team members to projects by role i.e. owners, contributors Integrated issue tracking and project management: Integrates Atlassian JIRA Software to easily manage issues directly from CodeStar dashboard and monitor application progress and activity Supported for popular programming languages: Develop variety of applications using language of choice including Java, JavaScript, PHP, Ruby, and Python. Release code faster: Set up your entire continuous delivery toolchain in minutes
  • 10. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Easy set-up & deployment Preconfigured AWS CloudFormation templates for quick development project creation • Automatic provisioning of underlying AWS services for quick app coding and deployment Over twenty different AWS CodeStar project templates Support for websites, web services, microservices, Alexa Skills dev projects (and more) 3 Hosting environments § Self-Managed: Amazon EC2 with AWS CodeDeploy § Managed: Elastic Beanstalk § Serverless: AWS Lambda
  • 11. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Project Templates Programming Languages C# Go Java JavaScript Python Ruby PHP CodeStar project templates support popular programming languages and IDEs IDE/Code Editors Cloud9 Visual Studio Eclipse AWS CLI AWS CLI
  • 12. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Demo: Project Creation & Templates
  • 13. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Project Dashboard Coordinate your day-to-day development activities Dashboard provides tools to view real time application activity, monitor builds, and flow of code through deployment pipeline Customize project dashboard by adding, removing, moving tiles Add customizable team wiki tile for team resources sharing or other purposes ex. show code snippets Use CodeStar project extensions to add tiles and functionality dashboard
  • 14. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Working with Teams Project Roles ü Owner: Ability to add & remove team members, contribute code to project repo, grant or deny team members remote access ü Contributor: Ability to add & remove dashboard resources, contribute code to the project repository ü Viewer: Ability to view the project dashboard, code, tiles, and project state Project team members (users) ü Can have different CodeStar roles and permissions ü Can belong to multiple CodeStar projects
  • 15. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeStar – AWS Code Services Source Build Test Production Software Release Steps: AWS CodeCommit
  • 16. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeStar – AWS Code Services Source Build Test Production Software Release Steps: AWS CodeBuild
  • 17. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeStar – AWS Code Services Source Build Test Production Software Release Steps: Third Party Tooling
  • 18. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeStar – AWS Code Services Source Build Test Production Software Release Steps: AWS CodeDeploy Or AWS Elastic BeanStalk Or AWS Lambda
  • 19. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeStar – AWS Code Services Source Build Test Production Software Release Steps: EC2 On-Prem AWS CodeDeploy
  • 20. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeStar – AWS Code Services Source Build Test Production Software Release Steps: EC2 AWS Elastic Beanstalk Route 53
  • 21. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Demo: Con)nuous Delivery Pipeline
  • 22. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Integrated Issue Tracking Integrates with Atlassian JIRA So.ware – issue tracking and project management tool Easy JIRA and AWS CodeStar setup ü Log into JIRA and Copy URL from any project ü Enter JIRA URL field in the CodeStar Extensions Monitor application activity and manage all JIRA issues in CodeStar dashboard Create new JIRA tickets for work items directly dashboard
  • 23. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. AWS CodeStar - Code integrated partners
  • 24. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Reliability AWS CodeStar – Easily Gain Benefits of DevOps SpeedScale Rapid DeliveryImproved Collaboration Security
  • 25. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Summary: Learn more: https://aws.amazon.com/codestar Check out Blog Post: Introducing AWS CodeStar: https://aws.amazon.com/blogs/aws/new-aws-codestar/ Get started with AWS CodeStar: https://console.aws.amazon.com/codestar
  • 26. ©2018, AmazonWebServices, Inc. or its Affiliates. All rights reserved. Thank you! ❤ Gabe Hollombe Technical Evangelist, AWS @gabehollombe Let’s keep in touch.