Il webinar illustra le Best Practice volte a:
- sviluppare e rilasciare in Cloud soluzioni di maggiore qualità;
- migliorare l’efficienza delle operazioni e ridurre i tempi di rilascio;
- ridurre il costo complessivo delle operazioni di delivery.
La soluzione proposta? Jenkins Enterprise di CloudBees.
Guarda il webinar on-demand: https://www.youtube.com/watch?v=T6mJ6TVH-Xs
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
Webinar: “Continuous Delivery: il tuo primo passo verso il DevOps”
1. • Emerasoft srl
• Mission
• Vision
• Market & Solutions
Maria Chiara Ambrosio
Gian Giacomo Ermacora
2. Agenda
Webinar: “Continuous Delivery: il tuo primo passo verso
il DevOps”
OTTOBRE 2015
Image courtesy of digitalart at FreeDigitalPhotos.net
• Quali sono i driver del DevOps e della Continuous Delivery
• Cos’è la Continuous Delivery
• Le strategie di Continuous Delivery
• Continuous Delivery con CloudBees Jenkins Enterprise
• Q&A
3. Chi siamo
Data di nascita: 2005
Dove siamo:
via Po, 1 – Torino
via del Poggio Laurentino, 118 - Roma
Creare valore per i nostri clienti
implementando soluzioni
che aumentano la produttività,
facilitando la collaborazione.
La nostra mission:
5. DevOps
IoT
System & Software Engineering
Testing
ALM
SOA
Process Intelligence
Business Intelligence
Security
Digital Publishing
Training
ALM+PLM
traceability
standard compliance
collaboration
Big Data
BYOD
User Experience
Quality
Enterprise Mobility
agile
IoD
IoH
Usability
API
BPM
Continuous DeliveryContinuous Integration
6. DevOps
IoT
System & Software Engineering
Testing
ALM
SOA
Process Intelligence
Business Intelligence
Security
Digital Publishing
Training
ALM+PLM
traceability
standard compliance
collaboration
Big Data
BYOD
User Experience
Quality
Enterprise Mobility
agile
IoD
IoH
Usability
API
BPM
Continuous DeliveryContinuous Integration
14. How does software help
you achieve your goals?
Revenue?
Mission?
Customer Satisfaction?
Market Share?
Shareholder Value?
Compliance?
Productivity?
Efficiency?
15. How Do You Deliver Better Software Faster?
ProdDev
16. How Do You Deliver Better Software Faster?
“DevOps” Has Great Promise
Dev Ops
“DevOps is a software development
method that stresses communication,
collaboration and integration between
software developers and information
technology (IT) professionals.”[1]
[1] http://en.wikipedia.org/wiki/DevOps
17. How Do You Deliver Better Software Faster?
“DevOps” Has Great Promise
But You Can’t “Do” DevOps. DevOps a cultural outcome.
Dev Ops
“DevOps is a software development
method that stresses communication,
collaboration and integration between
software developers and information
technology (IT) professionals.”[1]
[1] http://en.wikipedia.org/wiki/DevOps
18. You Can “Do” Continuous Delivery
Continuous Delivery = The application
of automation and orchestration
technologies and principles of Lean
Manufacturing to the software delivery
lifecycle.
Continuous Delivery (CD)
becomes the foundation for
a DevOps transformation.
21. Continuous Delivery (CD) Applies Automation to the
Application Lifecycle
ProdDev
Feedback Loop
Build
Comm
it
Test Stage
Deplo
y
22. CD Starts with Continuous Integration (CI):
Automating Application Build and Test
Continuous Integration
Automation
Engine
Developer
Source
Code
Control
System
Compile
/Build
Code
Scan TestsCode
Commit
Results
Report
Build
Comm
it
Test
ProdDev
23. CD Then Extends Automation Across the Lifecycle
Automation
Engine
Developer
Source
Code
Control
System
Compile
/Build
Code
Scan TestsCode
Commit
Results
Report
Build
Comm
it
Test Stage
Deplo
y
Deploy
Prod
Deploy
Stage
Complex Delivery Pipelines
Delivery of App and Config
Enterprise-grade
CD Automation
Platform
Continuous Delivery
ProdDev
24. Both CI and CD extend the Agile software development
methodology to allow small, incremental software
changes to be made available for delivery continuously.
Faster Feature Delivery
Lower Risk from Failure
Lower Error Rate in Production
Happier Customers
25. CD Involves Creating Pipelines for Application Code
Build
Comm
it
Test Stage
Deplo
y
Continuous Delivery
ProdDev
Build
Comm
it
Test Stage
Deplo
y
Build
Comm
it
Test Stage
Deplo
y
Build
Comm
it
Test Stage
Deplo
y
Developer
Source
Code
Control
System
Code
Commit
26. Executing, Monitoring, and Providing Feedback
Build
Comm
it
Test Stage
Deplo
y
Continuous Delivery
ProdDev
Build
Comm
it
Test Stage
Deplo
y
Build
Comm
it
Test Stage
Deplo
y
Build
Comm
it
Test Stage
Deplo
y
Developer
Source
Code
Control
System
Code
Commit
27. An Example Pipeline Workflow View
Continuous Delivery
ProdDev
Developer
Source
Code
Control
System
Code
Commit
29. The Continuum of Strategies for Continuous Delivery
Continuous Delivery - Enabling
organizations to roll-out frequent updates
of applications to address business needs
while minimizing risk of disruptions.
Application delivery is a spectrum…
Where are you on it?
Manual Delivery
Basic Automated
Delivery
Blue-Green
Delivery
Dynamic
Delivery
30. Delivery Strategies: Manual Delivery
Approach
• Build an app package with latest
updates
– Perhaps via a CI process
• Deployments are rollups of small
and large changes
• Use a maintenance window to
turn app off during upgrade
• Staff pushes app updates onto
live servers from their own
machines
Risks
• Time to delivery
– Are you getting enhancements
deployed regularly?
• Integrity
– How do you know what got
pushed and where it came from?
• Reproducibility
– How if you need to reproduce this
version later, how can you do it?
• Reliability
– Humans are involved, so
mistakes will (eventually) happen
My developers are pushing things live from their boxes – I’m terrified all the time
31. Delivery Strategies: Basic Automated Delivery
Approach
• Use a CI system for building and
testing packages
– Jenkins
• Use a maintenance window to
turn app off during upgrade
• Use automation scripts to
update primary application
environment
– Chef, Puppet or custom
scripts
Advantages
• Deploy faster and with better
reliability and repeatability
Considerations
• History - How do you track what got
pushed and where it came from?
• Verification - How do you know the
application is working properly?
• Disruption - How long are apps down
for maintenance?
• Rollbacks - How do you revert back
to a known working version?
We’ve automated our deployments, but we struggle with downtime and rollbacks
32. Delivery Strategies: Blue-Green Delivery
Approach
• Avoid maintenance windows by
maintaining separate primary and
secondary app environments
• Use automation to upgrade
secondary environment
• After verification, secondary is
promoted to primary
• Old primary is demoted to secondary
– stays around as last-known-good
environment
Advantages
• Seamless updates with
verifications
• Rollbacks are simple
– just switch the primary back to
the secondary
Considerations
• History - How do you track what got
pushed and where it came from?
• Maintenance – How do keep two
long-running app environments up
and stable?
Our delivery is automated and supports pushing + verifying deployments to long-
running environments with easy rollbacks
33. Delivery Strategies: Dynamic Delivery
Approach
• Use CI to produce app packages
• Provision new application
environment as part of delivery
• Run verification tests against the
new environment
• Promote the new environment
to become the primary
environment
Advantages
• Seamless updates with verifications
• Rollbacks are simple – just switch
the primary back to the secondary
• Reliably reproducible app
environment
Considerations
• History - How do you track what got
pushed and where it came from?
• Requires cloud-like provisioning
layer
Our delivery is automated end-to-end, including setting up new Cloud environments or
using Configuration-in-Code and full verification before changes go live
35. Jenkins is the #1 Automation Platform Used for CI
Continuous Integration
Developer
Source
Code
Control
System
Compile
/Build
Code
Scan TestsCode
Commit
Results
Report
Build
Comm
it
Test
36. Now, Jenkins Workflow and Workflow Stage View
Enable Full Continuous Delivery
Continuous Delivery
ProdDev
Developer
Source
Code
Control
System
Code
Commit
37. Jenkins is Your Key to Continuous Delivery
Developer
Source
Code
Control
System
Compile
/Build
Code
Scan TestsCode
Commit
Results
Report
Build
Comm
it
Test Stage
Deplo
y
Deploy
Prod
Deploy
Stage
Continuous Delivery
ProdDev
Complex Delivery Pipelines
Delivery of App and Config
39. Over 1000 Jenkins Plugins for Tool Integration
Integrated Development
Environments (IDEs),
editors/compilers/debuggers,
code review and collaboration
tools.
Source code control
systems and related asset
management tools.
Continuous
integration tools
(included)
Automated API-based
testing frameworks.
Release management and release automation software
Automated API-based
testing frameworks,
static code analysis
tools.
Load Testing Tools
and Security
Scanning technology
Automated and manual
UAT tools
Release management,
release automation, and
change control software.
Environment and Configuration
Management Software
Develop
Deliver
Build & Integrate
Unit Tests
Release
(to Test)
Automated
Acceptance &
Regression
Tests
Release
(to Prod)
User
Acceptance
Tests
Load &
Security
Tests
40. Jenkins is the Most Connected CD Platform
On-premise or
in the cloud
Plug-ins for all
your tools
Run
Deplo
y
StageTestBuild
Commi
t
41. How Can CloudBees Jenkins Enterprise Help with
Your CD Strategy?
Jenkins Workflow
Created by CloudBees to provide
Jenkins with a way to define
flexible delivery pipelines that
allow for a rich set of new delivery
scenarios
Deployment History Tracking
• Track the history of your deployments – including
who kicked off a deployment and what code
changes were included in it
Deployment Verification
• Create pipelines that leverage verification tests to
determine the quality of a new deployment
Automated Rollbacks
• Define rollback strategies to handle cases where
deployment verification fails
Blue-Green Deployments
• Leverage the power of workflow to coordinate
zero-downtime deployments
Dynamic Environment Creation
• Spin up new deployment environments
automatically as part of your delivery pipeline.
43. How can the CloudBees Jenkins Enterprise help?
Workflow Stage View
• Provides deep insight into the
execution of your workflow stages so
you can detect problems and
performance issues
Restart deployments where they break
• Leverage workflow checkpoints to
restart delivery pipelines without a full
(expensive) rebuild
Cluster Operations
• Separate building from delivery, and
coordinate job execution across
multiple Jenkins masters
Jenkins Analytics
• Monitor and analyze performance
across all your Jenkins instances
44. 44
Summary
› Delivering better software faster is driving the agenda for
nearly every organization
› Continuous delivery allows you to deliver better software
faster
› Continuous delivery can be the first step towards a
DevOps transformation
› Jenkins is the hub of Continuous Delivery
› CloudBees Jenkins Enterprise delivers CD at enterprise
scale
46. Contenuti disponibili su:
Canale slideshare di Emerasoft
Canale Youtube Emerasoft
What’s next
Contattaci: sales@emerasoft.com @
WWWVisita il nostro sito emerasoft.com
Segui i nostri canali social
47. Segui i nostri
canali …
www.emerasoft.com
sales@emerasoft.com
Emerasoft Srl
via Po, 1 – 10124 Torino
via del Poggio Laurentino, 118 – 00144 Roma
T +39 011 0120370
T +39 06 87811323
F +39 011 3710371
Grazie…
Contatti