SlideShare a Scribd company logo
CI / CD
Roles, Processes and Supporting Tools
Contents
• Roles
• Artifact Repositories
• General
• Instances
• Development
• QA
• Production
• CI / CD Overviews
• Development
• QA
• Production
Roles
Development Environment
• Committer-Development: Group members can branch and check in code
• Deployer-Development: Group members can deploy specified artifacts to specified targets in Acceptance
Generally, everyone with Development access has both roles in Development and only developers should have
the Committer-Development: role
QA Environment
• Committer-QA: Group members can check in configurations only
• Deployer-QA: Group members can deploy specified artifacts to specified targets in QA
Committer-Development members should never have either role in QA
Production Environment
• Deployer-Production: Group members can deploy specified artifacts to specified targets in Production
Committer-Development or Committer-QA members should never have the Deployer-Production role.
Artifact Repositories - General
Purpose
An artifact repository serves these essential purposes:
• Securely store binary and related metadata for deployable code
• Provide auditability on Release Management and Change Control
code used for deployments
Artifact Repositories - Instances
• Often there are three distinct logical, and very often physical,
instances of artifact repositories: “Development”, “QA”, and
“Production”
• Separated logical or physical repositories ensure segregation of
duties, auditability, traceability, and reduced opportunities for errors.
• The artifacts stored in the repositories are either different builds
(Development vs QA) or have different levels of QA certification (QA
vs Production)
• Security often requires separate instances due to network
segmentation and NACLs for non-Production and Production.
Artifact Repositories - Development
Development
• This artifact repository holds “Snapshot” builds that are kicked off
from Developers’ check-ins to Source Control
• All automated tests are run on these builds
• These builds happen frequently (often many times a day per active
developer) and only need to be kept for a short period (days/weeks)
• Snapshot builds are never deployed to QA nor Production
Artifact Repositories - QA
QA
• This artifact repository holds “Release Candidate” builds.
• These builds are usually kicked off manually upon request when a build is
promoted out of Development to be tested for Production readiness.
• All automated tests are run on these builds.
• Additional manual and other tests are run on these builds (e.g. end-to-end,
additional security, Performance Engineering, etc.).
• “Release Candidate” builds happen less frequently than development
builds and, after the initial build, often to resolve issues found during QA.
• Builds are kept for a “medium” length of time, generally until a Release
Candidate build gets a “QA Pass”; failed builds are removed frequently.
Artifact Repositories - Production
Production
• This artifact repository holds QA Passed “Release” builds.
• Only Release Candidate builds can be promoted to Release Builds. Never
should new builds be made for production that have not been QA tested
and passed.
• Environment specific configuration values must be parameterized and
externalized to the build artifact (as per “12 Factor App” guidelines).
• Production deployments and rollbacks are only allowed from artifacts in
the Production Repository.
• There should be a relatively small number of Release builds. These builds
are kept indefinitely or as per corporate policy.
CI / CD: Development
1. Developer checks
in code
2. CI process
started
automatically
3. Snapshot builds put
into repository
3. Code deployed
to target
1. Build version and
target selected in UI
2. Artifact retrieved from repository
CI Process
CD Process
Deployer-Development
Committer-Development
Development
instance
Development
instance
CI / CD: QA
1. QA or other checks
in configurations only
2. CI process
started
3. Release builds put
into repository
3. Code deployed
to target
1. Build version and
target selected
2. Artifact retrieved from repository
CI Process
CD Process
Deployer-QA
Committer-QA
QA/Prod
instance
QA/Prod
instance
CI / CD: Production
3. Code deployed
to target
1. Build version and
target selected
2. Artifact retrieved from repository
CD Process
Deployer-Production
QA/Prod
instance

More Related Content

What's hot

Differences between Testing in Waterfall and Agile
Differences between Testing in Waterfall and AgileDifferences between Testing in Waterfall and Agile
Differences between Testing in Waterfall and Agile
Return on Intelligence
 
AGILE METHODOLOGY
AGILE METHODOLOGYAGILE METHODOLOGY
AGILE METHODOLOGY
Deepak Agrawal
 
Scrum Training
Scrum TrainingScrum Training
Scrum Training
Qasim Mehmood MBA-PM
 
Scrum - Agile Methodology
Scrum - Agile MethodologyScrum - Agile Methodology
Scrum - Agile Methodology
Niel Deckx
 
Scrum In Ten Slides
Scrum In Ten SlidesScrum In Ten Slides
Scrum In Ten Slides
pmengal
 
Scrum Primer
Scrum PrimerScrum Primer
Scrum Primer
davelucey
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.ppt
Mohan Late
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overview
sunilkumar_
 
Agile Overview
Agile OverviewAgile Overview
Agile Overview
Stephen Albright
 
Agile Development
Agile DevelopmentAgile Development
Agile Development
Dennis Degryse
 
Agile Overview Session
Agile Overview SessionAgile Overview Session
Agile Overview Session
Bahaa Farouk
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
Tathagat Varma
 
Agile Scrum Overview
Agile  Scrum  OverviewAgile  Scrum  Overview
Agile Scrum Overview
Jason Dean
 
Scrum
ScrumScrum
Scrum
sunng87
 
PMBoK and Scrum: can we be friends?
PMBoK and Scrum: can we be friends?PMBoK and Scrum: can we be friends?
PMBoK and Scrum: can we be friends?
Silvana Wasitova, Scrum & Agile Coach
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process Introduction
Nguyen Hai
 
The Business value of agile development
The Business value of agile developmentThe Business value of agile development
The Business value of agile development
Phavadol Srisarnsakul
 
Agile KPIs
Agile KPIsAgile KPIs
Agile KPIs
Gaetano Mazzanti
 
Case Study on agile scrum methodology on shopping cart
Case Study on agile scrum methodology on shopping cartCase Study on agile scrum methodology on shopping cart
Case Study on agile scrum methodology on shopping cart
Abdullah Raza
 
Agifall - Combining Waterfall and Agile Development Process for Digital and S...
Agifall - Combining Waterfall and Agile Development Process for Digital and S...Agifall - Combining Waterfall and Agile Development Process for Digital and S...
Agifall - Combining Waterfall and Agile Development Process for Digital and S...
Mark Fromson
 

What's hot (20)

Differences between Testing in Waterfall and Agile
Differences between Testing in Waterfall and AgileDifferences between Testing in Waterfall and Agile
Differences between Testing in Waterfall and Agile
 
AGILE METHODOLOGY
AGILE METHODOLOGYAGILE METHODOLOGY
AGILE METHODOLOGY
 
Scrum Training
Scrum TrainingScrum Training
Scrum Training
 
Scrum - Agile Methodology
Scrum - Agile MethodologyScrum - Agile Methodology
Scrum - Agile Methodology
 
Scrum In Ten Slides
Scrum In Ten SlidesScrum In Ten Slides
Scrum In Ten Slides
 
Scrum Primer
Scrum PrimerScrum Primer
Scrum Primer
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.ppt
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overview
 
Agile Overview
Agile OverviewAgile Overview
Agile Overview
 
Agile Development
Agile DevelopmentAgile Development
Agile Development
 
Agile Overview Session
Agile Overview SessionAgile Overview Session
Agile Overview Session
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Agile Scrum Overview
Agile  Scrum  OverviewAgile  Scrum  Overview
Agile Scrum Overview
 
Scrum
ScrumScrum
Scrum
 
PMBoK and Scrum: can we be friends?
PMBoK and Scrum: can we be friends?PMBoK and Scrum: can we be friends?
PMBoK and Scrum: can we be friends?
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process Introduction
 
The Business value of agile development
The Business value of agile developmentThe Business value of agile development
The Business value of agile development
 
Agile KPIs
Agile KPIsAgile KPIs
Agile KPIs
 
Case Study on agile scrum methodology on shopping cart
Case Study on agile scrum methodology on shopping cartCase Study on agile scrum methodology on shopping cart
Case Study on agile scrum methodology on shopping cart
 
Agifall - Combining Waterfall and Agile Development Process for Digital and S...
Agifall - Combining Waterfall and Agile Development Process for Digital and S...Agifall - Combining Waterfall and Agile Development Process for Digital and S...
Agifall - Combining Waterfall and Agile Development Process for Digital and S...
 

Similar to CI / CD Roles, Processes and Supporting Tools

Building a Professional SDLC
Building a Professional SDLCBuilding a Professional SDLC
Building a Professional SDLC
Michael Werneburg
 
Understand release engineering
Understand release engineeringUnderstand release engineering
Understand release engineering
gaoliang641
 
jenkins.pdf
jenkins.pdfjenkins.pdf
jenkins.pdf
shahidafrith
 
Jenkins_1679702972.pdf
Jenkins_1679702972.pdfJenkins_1679702972.pdf
Jenkins_1679702972.pdf
MahmoudAlnmr1
 
Azure Integration DTAP Series, How to go from Development to Production – Par...
Azure Integration DTAP Series, How to go from Development to Production – Par...Azure Integration DTAP Series, How to go from Development to Production – Par...
Azure Integration DTAP Series, How to go from Development to Production – Par...
BizTalk360
 
BMO - Intelligent Projects with Maven
BMO - Intelligent Projects with MavenBMO - Intelligent Projects with Maven
BMO - Intelligent Projects with Maven
Mert Çalışkan
 
Definition of Done and Product Backlog refinement
Definition of Done and Product Backlog refinementDefinition of Done and Product Backlog refinement
Definition of Done and Product Backlog refinement
Christian Vos
 
Salesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABITSalesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABIT
Vishnu Raju Datla
 
DevOps intro
DevOps introDevOps intro
DevOps intro
Abdelrhman Shawky
 
MyHeritage - QA Automations in a Continuous Deployment environment
MyHeritage -  QA Automations in a Continuous Deployment environmentMyHeritage -  QA Automations in a Continuous Deployment environment
MyHeritage - QA Automations in a Continuous Deployment environment
MatanGoren
 
Continuous delivery @ iyzico
Continuous delivery @ iyzicoContinuous delivery @ iyzico
Continuous delivery @ iyzico
Ümit Ünal
 
Intelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest IstanbulIntelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest Istanbul
Mert Çalışkan
 
Ci jenkins maven svn
Ci jenkins maven svnCi jenkins maven svn
Ci jenkins maven svn
Ankur Goyal
 
Super chargeyourcontiniousintegrationdeployments
Super chargeyourcontiniousintegrationdeploymentsSuper chargeyourcontiniousintegrationdeployments
Super chargeyourcontiniousintegrationdeployments
Nikola Gotsev
 
Supercharge Your Continuous Integration Deployments
Supercharge Your Continuous Integration DeploymentsSupercharge Your Continuous Integration Deployments
Supercharge Your Continuous Integration Deployments
Nikola Gotsev
 
Why your company loves to welcome change but sucks at accommodating it
Why your company loves to welcome change but sucks at accommodating itWhy your company loves to welcome change but sucks at accommodating it
Why your company loves to welcome change but sucks at accommodating it
Farooq Ali
 
Getting to Walk with DevOps
Getting to Walk with DevOpsGetting to Walk with DevOps
Getting to Walk with DevOps
Eklove Mohan
 
Enter the Team City
Enter the Team CityEnter the Team City
Enter the Team City
Kashif Ali Siddiqui
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
XPDays
 
Streamlining Testing with Visual Studio 2012
Streamlining Testing with Visual Studio 2012Streamlining Testing with Visual Studio 2012
Streamlining Testing with Visual Studio 2012
Imaginet
 

Similar to CI / CD Roles, Processes and Supporting Tools (20)

Building a Professional SDLC
Building a Professional SDLCBuilding a Professional SDLC
Building a Professional SDLC
 
Understand release engineering
Understand release engineeringUnderstand release engineering
Understand release engineering
 
jenkins.pdf
jenkins.pdfjenkins.pdf
jenkins.pdf
 
Jenkins_1679702972.pdf
Jenkins_1679702972.pdfJenkins_1679702972.pdf
Jenkins_1679702972.pdf
 
Azure Integration DTAP Series, How to go from Development to Production – Par...
Azure Integration DTAP Series, How to go from Development to Production – Par...Azure Integration DTAP Series, How to go from Development to Production – Par...
Azure Integration DTAP Series, How to go from Development to Production – Par...
 
BMO - Intelligent Projects with Maven
BMO - Intelligent Projects with MavenBMO - Intelligent Projects with Maven
BMO - Intelligent Projects with Maven
 
Definition of Done and Product Backlog refinement
Definition of Done and Product Backlog refinementDefinition of Done and Product Backlog refinement
Definition of Done and Product Backlog refinement
 
Salesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABITSalesforce Continuous Integration with AutoRABIT
Salesforce Continuous Integration with AutoRABIT
 
DevOps intro
DevOps introDevOps intro
DevOps intro
 
MyHeritage - QA Automations in a Continuous Deployment environment
MyHeritage -  QA Automations in a Continuous Deployment environmentMyHeritage -  QA Automations in a Continuous Deployment environment
MyHeritage - QA Automations in a Continuous Deployment environment
 
Continuous delivery @ iyzico
Continuous delivery @ iyzicoContinuous delivery @ iyzico
Continuous delivery @ iyzico
 
Intelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest IstanbulIntelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest Istanbul
 
Ci jenkins maven svn
Ci jenkins maven svnCi jenkins maven svn
Ci jenkins maven svn
 
Super chargeyourcontiniousintegrationdeployments
Super chargeyourcontiniousintegrationdeploymentsSuper chargeyourcontiniousintegrationdeployments
Super chargeyourcontiniousintegrationdeployments
 
Supercharge Your Continuous Integration Deployments
Supercharge Your Continuous Integration DeploymentsSupercharge Your Continuous Integration Deployments
Supercharge Your Continuous Integration Deployments
 
Why your company loves to welcome change but sucks at accommodating it
Why your company loves to welcome change but sucks at accommodating itWhy your company loves to welcome change but sucks at accommodating it
Why your company loves to welcome change but sucks at accommodating it
 
Getting to Walk with DevOps
Getting to Walk with DevOpsGetting to Walk with DevOps
Getting to Walk with DevOps
 
Enter the Team City
Enter the Team CityEnter the Team City
Enter the Team City
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Streamlining Testing with Visual Studio 2012
Streamlining Testing with Visual Studio 2012Streamlining Testing with Visual Studio 2012
Streamlining Testing with Visual Studio 2012
 

More from Michael J Geiser

AWS Cost Reduction and Management Plan
AWS Cost Reduction and Management PlanAWS Cost Reduction and Management Plan
AWS Cost Reduction and Management Plan
Michael J Geiser
 
2018 staffing strategy
2018 staffing strategy 2018 staffing strategy
2018 staffing strategy
Michael J Geiser
 
Response on Proposal for Converting to a Gated Community
Response on Proposal for Converting to a Gated CommunityResponse on Proposal for Converting to a Gated Community
Response on Proposal for Converting to a Gated Community
Michael J Geiser
 
Skeptical Inquirer Content Problems
Skeptical Inquirer Content ProblemsSkeptical Inquirer Content Problems
Skeptical Inquirer Content Problems
Michael J Geiser
 
Problems with Password Change Lockout Periods in Password Policies
Problems with Password Change Lockout Periods in Password PoliciesProblems with Password Change Lockout Periods in Password Policies
Problems with Password Change Lockout Periods in Password Policies
Michael J Geiser
 
1967 lincoln continental convertible restoration v4
1967 lincoln continental convertible restoration v41967 lincoln continental convertible restoration v4
1967 lincoln continental convertible restoration v4
Michael J Geiser
 
Minimum Viable Product (MVP) – “Like This / Not Like This” Redux (MVP) – “Lik...
Minimum Viable Product (MVP) – “Like This / Not Like This” Redux (MVP) – “Lik...Minimum Viable Product (MVP) – “Like This / Not Like This” Redux (MVP) – “Lik...
Minimum Viable Product (MVP) – “Like This / Not Like This” Redux (MVP) – “Lik...
Michael J Geiser
 
Agile humor for slides
Agile humor for slides Agile humor for slides
Agile humor for slides
Michael J Geiser
 
Agile Progress Tracking and Code Complete Date Estimation
Agile Progress Tracking and Code Complete Date EstimationAgile Progress Tracking and Code Complete Date Estimation
Agile Progress Tracking and Code Complete Date Estimation
Michael J Geiser
 
Choosing an IdM User Store technology
Choosing an IdM User Store technologyChoosing an IdM User Store technology
Choosing an IdM User Store technology
Michael J Geiser
 
Maturing Agile SDLC & workflow improvements
Maturing Agile SDLC & workflow improvementsMaturing Agile SDLC & workflow improvements
Maturing Agile SDLC & workflow improvements
Michael J Geiser
 
Really useful linux commands
Really useful linux commandsReally useful linux commands
Really useful linux commands
Michael J Geiser
 
Introduction to the WSO2 Identity Server &Contributing to an OS Project
Introduction to the WSO2 Identity Server &Contributing to an OS ProjectIntroduction to the WSO2 Identity Server &Contributing to an OS Project
Introduction to the WSO2 Identity Server &Contributing to an OS Project
Michael J Geiser
 
Jira workflow for documentation issue types agile edition
Jira workflow for documentation issue types   agile editionJira workflow for documentation issue types   agile edition
Jira workflow for documentation issue types agile edition
Michael J Geiser
 
Apigee dc failover
Apigee dc failoverApigee dc failover
Apigee dc failover
Michael J Geiser
 
Using JIRA to Manage Project Management Risks and Issues
Using JIRA to Manage Project Management Risks and Issues Using JIRA to Manage Project Management Risks and Issues
Using JIRA to Manage Project Management Risks and Issues
Michael J Geiser
 
Approvals in jira
Approvals in jiraApprovals in jira
Approvals in jira
Michael J Geiser
 
Girl Scout Cookie Sale Posters
Girl Scout Cookie Sale PostersGirl Scout Cookie Sale Posters
Girl Scout Cookie Sale Posters
Michael J Geiser
 

More from Michael J Geiser (18)

AWS Cost Reduction and Management Plan
AWS Cost Reduction and Management PlanAWS Cost Reduction and Management Plan
AWS Cost Reduction and Management Plan
 
2018 staffing strategy
2018 staffing strategy 2018 staffing strategy
2018 staffing strategy
 
Response on Proposal for Converting to a Gated Community
Response on Proposal for Converting to a Gated CommunityResponse on Proposal for Converting to a Gated Community
Response on Proposal for Converting to a Gated Community
 
Skeptical Inquirer Content Problems
Skeptical Inquirer Content ProblemsSkeptical Inquirer Content Problems
Skeptical Inquirer Content Problems
 
Problems with Password Change Lockout Periods in Password Policies
Problems with Password Change Lockout Periods in Password PoliciesProblems with Password Change Lockout Periods in Password Policies
Problems with Password Change Lockout Periods in Password Policies
 
1967 lincoln continental convertible restoration v4
1967 lincoln continental convertible restoration v41967 lincoln continental convertible restoration v4
1967 lincoln continental convertible restoration v4
 
Minimum Viable Product (MVP) – “Like This / Not Like This” Redux (MVP) – “Lik...
Minimum Viable Product (MVP) – “Like This / Not Like This” Redux (MVP) – “Lik...Minimum Viable Product (MVP) – “Like This / Not Like This” Redux (MVP) – “Lik...
Minimum Viable Product (MVP) – “Like This / Not Like This” Redux (MVP) – “Lik...
 
Agile humor for slides
Agile humor for slides Agile humor for slides
Agile humor for slides
 
Agile Progress Tracking and Code Complete Date Estimation
Agile Progress Tracking and Code Complete Date EstimationAgile Progress Tracking and Code Complete Date Estimation
Agile Progress Tracking and Code Complete Date Estimation
 
Choosing an IdM User Store technology
Choosing an IdM User Store technologyChoosing an IdM User Store technology
Choosing an IdM User Store technology
 
Maturing Agile SDLC & workflow improvements
Maturing Agile SDLC & workflow improvementsMaturing Agile SDLC & workflow improvements
Maturing Agile SDLC & workflow improvements
 
Really useful linux commands
Really useful linux commandsReally useful linux commands
Really useful linux commands
 
Introduction to the WSO2 Identity Server &Contributing to an OS Project
Introduction to the WSO2 Identity Server &Contributing to an OS ProjectIntroduction to the WSO2 Identity Server &Contributing to an OS Project
Introduction to the WSO2 Identity Server &Contributing to an OS Project
 
Jira workflow for documentation issue types agile edition
Jira workflow for documentation issue types   agile editionJira workflow for documentation issue types   agile edition
Jira workflow for documentation issue types agile edition
 
Apigee dc failover
Apigee dc failoverApigee dc failover
Apigee dc failover
 
Using JIRA to Manage Project Management Risks and Issues
Using JIRA to Manage Project Management Risks and Issues Using JIRA to Manage Project Management Risks and Issues
Using JIRA to Manage Project Management Risks and Issues
 
Approvals in jira
Approvals in jiraApprovals in jira
Approvals in jira
 
Girl Scout Cookie Sale Posters
Girl Scout Cookie Sale PostersGirl Scout Cookie Sale Posters
Girl Scout Cookie Sale Posters
 

Recently uploaded

Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!
Toptal Tech
 
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
xjq03c34
 
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
fovkoyb
 
快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样
快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样
快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样
3a0sd7z3
 
一比一原版(USYD毕业证)悉尼大学毕业证如何办理
一比一原版(USYD毕业证)悉尼大学毕业证如何办理一比一原版(USYD毕业证)悉尼大学毕业证如何办理
一比一原版(USYD毕业证)悉尼大学毕业证如何办理
k4ncd0z
 
Discover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to IndiaDiscover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to India
davidjhones387
 
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
uehowe
 
Bengaluru Dreamin' 24 - Personal Branding
Bengaluru Dreamin' 24 - Personal BrandingBengaluru Dreamin' 24 - Personal Branding
Bengaluru Dreamin' 24 - Personal Branding
Tarandeep Singh
 
HijackLoader Evolution: Interactive Process Hollowing
HijackLoader Evolution: Interactive Process HollowingHijackLoader Evolution: Interactive Process Hollowing
HijackLoader Evolution: Interactive Process Hollowing
Donato Onofri
 
Should Repositories Participate in the Fediverse?
Should Repositories Participate in the Fediverse?Should Repositories Participate in the Fediverse?
Should Repositories Participate in the Fediverse?
Paul Walk
 
办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理
办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理
办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理
uehowe
 
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
ysasp1
 
快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样
快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样
快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样
3a0sd7z3
 
怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样
怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样
怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样
rtunex8r
 
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalmanuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
wolfsoftcompanyco
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
uehowe
 

Recently uploaded (16)

Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!
 
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
 
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
 
快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样
快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样
快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样
 
一比一原版(USYD毕业证)悉尼大学毕业证如何办理
一比一原版(USYD毕业证)悉尼大学毕业证如何办理一比一原版(USYD毕业证)悉尼大学毕业证如何办理
一比一原版(USYD毕业证)悉尼大学毕业证如何办理
 
Discover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to IndiaDiscover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to India
 
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
 
Bengaluru Dreamin' 24 - Personal Branding
Bengaluru Dreamin' 24 - Personal BrandingBengaluru Dreamin' 24 - Personal Branding
Bengaluru Dreamin' 24 - Personal Branding
 
HijackLoader Evolution: Interactive Process Hollowing
HijackLoader Evolution: Interactive Process HollowingHijackLoader Evolution: Interactive Process Hollowing
HijackLoader Evolution: Interactive Process Hollowing
 
Should Repositories Participate in the Fediverse?
Should Repositories Participate in the Fediverse?Should Repositories Participate in the Fediverse?
Should Repositories Participate in the Fediverse?
 
办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理
办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理
办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理
 
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
 
快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样
快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样
快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样
 
怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样
怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样
怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样
 
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalmanuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
 

CI / CD Roles, Processes and Supporting Tools

  • 1. CI / CD Roles, Processes and Supporting Tools
  • 2. Contents • Roles • Artifact Repositories • General • Instances • Development • QA • Production • CI / CD Overviews • Development • QA • Production
  • 3. Roles Development Environment • Committer-Development: Group members can branch and check in code • Deployer-Development: Group members can deploy specified artifacts to specified targets in Acceptance Generally, everyone with Development access has both roles in Development and only developers should have the Committer-Development: role QA Environment • Committer-QA: Group members can check in configurations only • Deployer-QA: Group members can deploy specified artifacts to specified targets in QA Committer-Development members should never have either role in QA Production Environment • Deployer-Production: Group members can deploy specified artifacts to specified targets in Production Committer-Development or Committer-QA members should never have the Deployer-Production role.
  • 4. Artifact Repositories - General Purpose An artifact repository serves these essential purposes: • Securely store binary and related metadata for deployable code • Provide auditability on Release Management and Change Control code used for deployments
  • 5. Artifact Repositories - Instances • Often there are three distinct logical, and very often physical, instances of artifact repositories: “Development”, “QA”, and “Production” • Separated logical or physical repositories ensure segregation of duties, auditability, traceability, and reduced opportunities for errors. • The artifacts stored in the repositories are either different builds (Development vs QA) or have different levels of QA certification (QA vs Production) • Security often requires separate instances due to network segmentation and NACLs for non-Production and Production.
  • 6. Artifact Repositories - Development Development • This artifact repository holds “Snapshot” builds that are kicked off from Developers’ check-ins to Source Control • All automated tests are run on these builds • These builds happen frequently (often many times a day per active developer) and only need to be kept for a short period (days/weeks) • Snapshot builds are never deployed to QA nor Production
  • 7. Artifact Repositories - QA QA • This artifact repository holds “Release Candidate” builds. • These builds are usually kicked off manually upon request when a build is promoted out of Development to be tested for Production readiness. • All automated tests are run on these builds. • Additional manual and other tests are run on these builds (e.g. end-to-end, additional security, Performance Engineering, etc.). • “Release Candidate” builds happen less frequently than development builds and, after the initial build, often to resolve issues found during QA. • Builds are kept for a “medium” length of time, generally until a Release Candidate build gets a “QA Pass”; failed builds are removed frequently.
  • 8. Artifact Repositories - Production Production • This artifact repository holds QA Passed “Release” builds. • Only Release Candidate builds can be promoted to Release Builds. Never should new builds be made for production that have not been QA tested and passed. • Environment specific configuration values must be parameterized and externalized to the build artifact (as per “12 Factor App” guidelines). • Production deployments and rollbacks are only allowed from artifacts in the Production Repository. • There should be a relatively small number of Release builds. These builds are kept indefinitely or as per corporate policy.
  • 9. CI / CD: Development 1. Developer checks in code 2. CI process started automatically 3. Snapshot builds put into repository 3. Code deployed to target 1. Build version and target selected in UI 2. Artifact retrieved from repository CI Process CD Process Deployer-Development Committer-Development Development instance Development instance
  • 10. CI / CD: QA 1. QA or other checks in configurations only 2. CI process started 3. Release builds put into repository 3. Code deployed to target 1. Build version and target selected 2. Artifact retrieved from repository CI Process CD Process Deployer-QA Committer-QA QA/Prod instance QA/Prod instance
  • 11. CI / CD: Production 3. Code deployed to target 1. Build version and target selected 2. Artifact retrieved from repository CD Process Deployer-Production QA/Prod instance