1 Hudson/Jenkins and uDeploy Continuous integration meets awesome deployment automation Eric Minick Tech Evangelist
May 11, 2015
1
Hudson/Jenkins and uDeploy
Continuous integration meets awesome deployment automation
Eric Minick Tech Evangelist
2
Agenda
• Why the integration?• Demo: Configuring the Plugin• Demo: A CI build moves into uDeploy• Demo: Deployment coordination• Q & A
3
About Hudson / Jenkins
• Open source (MIT) Continuous Integration server
• The tool forked in early 2011
4
Jenkins use in a nutshell
• CI tool for developers– Perform builds and early testing automatically to
provide rapid feedback about build quality
• Some teams treat these builds as “the build” passed to operations teams.
5
From CI to CD
• Expanding the CI emphasis on quality and automation downstream
6
Changing deployment needs
• Production style deployments– Load balancers, can’t drop tables, downtime
windows, etc, etc, etc• Environment aware• Additional security nearer to production• Approvals
• Thinking outside the scope of one dev team
7
Simple multi-project release pipeline
Proj_A
Proj_B
Proj_C
8
But… we release inter-related projects
Proj_A
Proj_B
Proj_C
UATSign-off
Staging Prod
Release Sets at “Application” or “System” level.
9
With team level build, build solution changes
Proj_A
Proj_B
Proj_C
UATSign-off
Staging Prod
Release Sets at “Application” or “System” level.
10
uDeploy handles these scenarios
• Integrates with multiple build systems
• Provides an Application Model handling multiple projects or “components”
• Great integrations with stuff to deploy to
11
Our Demo – A simple 3 tier web app
App
DB
Web
Sign-off
Staging Prod
12
Pet Store Application Model
• Components– Projects– Infrastructure
• Environments– Target servers– Servers have roles– Env. Specific Config
• Processes– Coordinates Component
processes
13
Demo Time
14
uDeploy Platform Technology
• Distributed Automation Engine• Automation Integrations (Plugin System)• Deployment Artifact Repository• Inventory• Calendars & Scheduling• Approvals & Work Lists• Package Management System• Configuration Engine
15
Other supported build tools include
• Hudson• JetBrains TeamCity• Microsoft Team Build• Cruise Control• Urbancode AnthillPro
• Missing your favorite? Let us know.
16
UrbanCode’s DevOps Tools
• AnthillPro / uBuild: Continuous Integration, Build Pipelines and Build Management
• uDeploy: Model driven deployment automation
• uCloud: Environment provisioning integrated with existing virtualization (coming soon)