continuous delivery in the cloud with bitbucket pipelines

75
JEROEN DE RAEDT SENIOR DEVELOPER ATLASSIAN @JEROENDRA Bitbucket Pipelines

Upload: atlassian

Post on 19-Mar-2017

6.136 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Continuous Delivery in the Cloud with Bitbucket Pipelines

JEROEN DE RAEDT • SENIOR DEVELOPER • ATLASSIAN • @JEROENDRA

Bitbucket Pipelines

Page 2: Continuous Delivery in the Cloud with Bitbucket Pipelines

What is Continuous Integration?

Page 3: Continuous Delivery in the Cloud with Bitbucket Pipelines

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

Page 4: Continuous Delivery in the Cloud with Bitbucket Pipelines

Continuous Integration

Page 5: Continuous Delivery in the Cloud with Bitbucket Pipelines

Context switching Slow feedback loop

Setup is sophisticated

It’s not easy

Infrastructure needed

Page 6: Continuous Delivery in the Cloud with Bitbucket Pipelines

Pipelines

Page 7: Continuous Delivery in the Cloud with Bitbucket Pipelines

77

OUR MISSION

Simplify Continuous Integration. Allow teams to build and ship projects faster.

Page 8: Continuous Delivery in the Cloud with Bitbucket Pipelines

One tool, one platform

Defining the pipeline

Fast feedback loop Ecosystem Integrations

Pipelines

Page 9: Continuous Delivery in the Cloud with Bitbucket Pipelines

Demo time!

Page 10: Continuous Delivery in the Cloud with Bitbucket Pipelines

Demo time!

Page 11: Continuous Delivery in the Cloud with Bitbucket Pipelines

Demo time!

Page 12: Continuous Delivery in the Cloud with Bitbucket Pipelines

Demo time!

Page 13: Continuous Delivery in the Cloud with Bitbucket Pipelines

Demo time!

Page 14: Continuous Delivery in the Cloud with Bitbucket Pipelines

Demo time!

Page 15: Continuous Delivery in the Cloud with Bitbucket Pipelines

Demo time!

Page 16: Continuous Delivery in the Cloud with Bitbucket Pipelines

Demo time!

Page 17: Continuous Delivery in the Cloud with Bitbucket Pipelines

One tool, one platform

Defining the pipeline

Fast feedback loop Ecosystem Integrations

Pipelines

Page 18: Continuous Delivery in the Cloud with Bitbucket Pipelines

1 tool, 1 platform

Page 19: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 20: Continuous Delivery in the Cloud with Bitbucket Pipelines

Pipelines

Page 21: Continuous Delivery in the Cloud with Bitbucket Pipelines

Pushed codeBitbucket Webhook

Start build container

Pipelines

Page 22: Continuous Delivery in the Cloud with Bitbucket 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

Page 23: Continuous Delivery in the Cloud with Bitbucket Pipelines

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

Page 24: Continuous Delivery in the Cloud with Bitbucket Pipelines

User management and security

Page 25: Continuous Delivery in the Cloud with Bitbucket Pipelines

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.

Page 26: Continuous Delivery in the Cloud with Bitbucket Pipelines

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.

Page 27: Continuous Delivery in the Cloud with Bitbucket Pipelines

Enabling Bitbucket Pipelines

Page 28: Continuous Delivery in the Cloud with Bitbucket Pipelines

Defining the pipeline

Page 29: Continuous Delivery in the Cloud with Bitbucket Pipelines

• Big cool statistic

• 2,569

• Add-Ons in Marketplace

The Pipeline environment

Page 30: Continuous Delivery in the Cloud with Bitbucket Pipelines

Configuration as Code

Docker Docker Docker

Variables

Defining the pipeline

Page 31: Continuous Delivery in the Cloud with Bitbucket Pipelines

Configuration as code

Page 32: Continuous Delivery in the Cloud with Bitbucket Pipelines

Configuration as Code

Page 33: Continuous Delivery in the Cloud with Bitbucket Pipelines

Easy to understandFull overview of the pipeline in the glimpse of an eye.

Page 34: Continuous Delivery in the Cloud with Bitbucket Pipelines

Stored in repositoryEasy to import/export and you can use pull requests to review pipeline changes.

Page 35: Continuous Delivery in the Cloud with Bitbucket Pipelines

VersionedYou can go back in the commit history and run tests as they were configured at the time.

Page 36: Continuous Delivery in the Cloud with Bitbucket Pipelines

Versioned pipeline configuration

version-1.0 version-2.0

Tests configured using QUnit

Tests configured using Karma

hotfix-branch

Page 37: Continuous Delivery in the Cloud with Bitbucket Pipelines

Configuration as Code

Docker Docker Docker

Variables

Defining the pipeline

Page 38: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 39: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 40: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 41: Continuous Delivery in the Cloud with Bitbucket Pipelines

Why Pipelines uses Docker

Technology agnostic

Supports a very wide range of technologies

and tools.

Docker registries

Over 100,000 Docker images available.

Page 42: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 43: Continuous Delivery in the Cloud with Bitbucket Pipelines

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.

Page 44: Continuous Delivery in the Cloud with Bitbucket Pipelines

Configuration as Code

Docker Docker Docker

Variables

Defining the pipeline

Page 45: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 46: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 47: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 48: Continuous Delivery in the Cloud with Bitbucket Pipelines

Advanced workflows

Page 49: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 50: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 51: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 52: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 53: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 54: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 55: Continuous Delivery in the Cloud with Bitbucket Pipelines

masterproduction

Page 56: Continuous Delivery in the Cloud with Bitbucket Pipelines

masterproduction

feature/my-branch

Page 57: Continuous Delivery in the Cloud with Bitbucket Pipelines

masterproduction

feature/my-branch

Page 58: Continuous Delivery in the Cloud with Bitbucket Pipelines

masterproduction

feature/my-branch

Page 59: Continuous Delivery in the Cloud with Bitbucket Pipelines

Branch pipelines opportunities

Deployment branchesBranches can represent what has been released.

Review deployments

Use pull requests to review and kick off deployments.

Page 60: Continuous Delivery in the Cloud with Bitbucket Pipelines

Page title

Page 61: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 62: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 63: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 64: Continuous Delivery in the Cloud with Bitbucket Pipelines
Page 65: Continuous Delivery in the Cloud with Bitbucket Pipelines

Fast feedback loop

Page 66: Continuous Delivery in the Cloud with Bitbucket Pipelines

Demo time!

Page 67: Continuous Delivery in the Cloud with Bitbucket Pipelines

Developer magic happens

Page 68: Continuous Delivery in the Cloud with Bitbucket Pipelines

Demo time!

Page 69: Continuous Delivery in the Cloud with Bitbucket Pipelines

Demo time!

Page 70: Continuous Delivery in the Cloud with Bitbucket Pipelines

Integrations

Page 71: Continuous Delivery in the Cloud with Bitbucket Pipelines

Partner Integrations

Page 72: Continuous Delivery in the Cloud with Bitbucket Pipelines

Bitbucket PipelinesREST API

Page 73: Continuous Delivery in the Cloud with Bitbucket Pipelines

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.

Page 74: Continuous Delivery in the Cloud with Bitbucket Pipelines

http://tinyurl.com/bitbucket-pipelines

Pipelines

Page 75: Continuous Delivery in the Cloud with Bitbucket Pipelines

Thank you!

JEROEN DE RAEDT • ATLASSIAN • @JEROENDRA