continuous delivery in the cloud with bitbucket pipelines
TRANSCRIPT
JEROEN DE RAEDT • SENIOR DEVELOPER • ATLASSIAN • @JEROENDRA
Bitbucket Pipelines
What is Continuous Integration?
Continuous Integration (CI) is a development practice that requires developers to integrate code into a shared repository several times a day. Each check-in is then verified by an automated build, allowing teams to detect problems early.
“
”T H O U G H T W O R K S
Continuous Integration
Context switching Slow feedback loop
Setup is sophisticated
It’s not easy
Infrastructure needed
Pipelines
77
OUR MISSION
Simplify Continuous Integration. Allow teams to build and ship projects faster.
One tool, one platform
Defining the pipeline
Fast feedback loop Ecosystem Integrations
Pipelines
Demo time!
Demo time!
Demo time!
Demo time!
Demo time!
Demo time!
Demo time!
Demo time!
One tool, one platform
Defining the pipeline
Fast feedback loop Ecosystem Integrations
Pipelines
1 tool, 1 platform
Pipelines
Pushed codeBitbucket Webhook
Start build container
Pipelines
Infrastructure-less Configuration-less
No need to manage a fleet of build servers.
No need to set up servers with specific requirements
for builds.
Pipeline build agents
Build fastBuild simultaneousReady to buildNo waiting in line.
On every code push your build starts instantly.
No limit on the amount of simultaneous builds.
Starting the build takes just a couple of moments.
Pipeline build agents
User management and security
This screenshot is just an example of piece of content that could be placed here. If there is text to accompany the image in this area, it should be as concise as possible. Please delete this box and text.
Access groups
Access management
The existing Bitbucket users and groups are available in Pipelines as well.
This screenshot is just an example of piece of content that could be placed here. If there is text to accompany the image in this area, it should be as concise as possible. Please delete this box and text.
Access groups
Access management
The existing Bitbucket repository permissions are applied to Pipelines as well.
Enabling Bitbucket Pipelines
Defining the pipeline
• Big cool statistic
• 2,569
• Add-Ons in Marketplace
The Pipeline environment
Configuration as Code
Docker Docker Docker
Variables
Defining the pipeline
Configuration as code
Configuration as Code
Easy to understandFull overview of the pipeline in the glimpse of an eye.
Stored in repositoryEasy to import/export and you can use pull requests to review pipeline changes.
VersionedYou can go back in the commit history and run tests as they were configured at the time.
Versioned pipeline configuration
version-1.0 version-2.0
Tests configured using QUnit
Tests configured using Karma
hotfix-branch
Configuration as Code
Docker Docker Docker
Variables
Defining the pipeline
Why Pipelines uses Docker
Technology agnostic
Supports a very wide range of technologies
and tools.
Docker registries
Over 100,000 Docker images available.
Why Pipelines uses Docker
Technology agnostic
Supports a very wide range of technologies
and tools.
Docker Hub
Over 100,000 Docker images available.
Customizable
Easy to create your own or extend existing
Docker images.
Reproducible
Easy to replicate your production
environment or run the build locally.
Configuration as Code
Docker Docker Docker
Variables
Defining the pipeline
Advanced workflows
masterproduction
masterproduction
feature/my-branch
masterproduction
feature/my-branch
masterproduction
feature/my-branch
Branch pipelines opportunities
Deployment branchesBranches can represent what has been released.
Review deployments
Use pull requests to review and kick off deployments.
Page title
Fast feedback loop
Demo time!
Developer magic happens
Demo time!
Demo time!
Integrations
Partner Integrations
Bitbucket PipelinesREST API
REST API
Pipelines endpoints Available endpoints include: query pipelines, stop and start pipelines, manage variables, …
Bitbucket authenticated Use any of the existing authentication options that Bitbucket supports.
Integrate your Connect add-on Connect scopes have been added so Connect add-ons can integrate with Pipelines.
Thank you!
JEROEN DE RAEDT • ATLASSIAN • @JEROENDRA