SlideShare a Scribd company logo
Using Docker to improve your workflow
An overview of Bitbucket Pipelines
Twitter: @dkcwd
Reminder about this session
The slides will be made available after the session and you are more
than welcome to share them if you find them useful.
We have people attending from all manner of different backgrounds
with different levels of experience and you’re welcome to ask
questions and share knowledge after the session.
Let’s get started….
An overview of Bitbucket Pipelines
Build, test and deploy from Bitbucket
Bitbucket Pipelines uses Docker
containers to run build plans
Benefits:
- Potential for faster feedback
- Sensible default containers
- Can use your private containers
- Easy to set environment vars
Enabling Pipelines for your repository
In the Settings area, you need to enable Pipelines…
Next, you need to configure your bitbucket-pipelines.yml
Configuring bitbucket-pipelines.yml
Choose a template to use with your build plan…
Previewing the template
Move on to the next step when you’re ready…
Previewing the template
Make a change if you want to then commit to create the file…
Previewing the template
An opportunity to update the message…
Previewing the template
The first build begins…
And fails…
An email notification is sent about the failure…
The reason for failure is clear…
Ok, so let’s add some tests….
Building on a basic example
Let’s build on that basic example by adding some tests to run using Pipelines
For an example I’ll reuse a simple API test collection which I previously created
with Postman when experimenting with serverless-graphql
I’ll export from Postman and commit:
- the request collection file, including pre-request scripts and tests
- an environment file which “should” mean the tests pass when they are run
Building on that basic example
Additionally I’ll need to do a few more things so the tests can run
I’ll create a package.json file defining newman (The CLI test runner for Postman)
as a dependency so it will be installed during the build process
I’ll update:
- the package.json file so tests can be run using npm to call newman
- the bitbucket-pipelines.yml file to run the relevant commands
An introduction to Atlassian Bitbucket Pipelines
An introduction to Atlassian Bitbucket Pipelines
Let’s deliberately break it
Yay it’s broken!
o/
And fix it again
Need to create your own image?
Check out this link:
https://answers.atlassian.com/questions/39140980/how-do-i-
create-a-docker-image-for-bitbucket-
pipelines?_ga=1.125432457.263526773.1473156356
Need to test with a database?
Check out this link:
https://confluence.atlassian.com/bitbucket/test-with-databases-
856697462.html
Need to use environment variables?
Check out this link:
https://confluence.atlassian.com/bitbucket/environment-variables-
in-bitbucket-pipelines-794502608.html
All of those questions are in the docs! o/
Check out this link:
https://confluence.atlassian.com/bitbucket/bitbucket-pipelines-
792496469.html
Off Topic: Using Docker to make tools available
Example: SugarCRM XHProf viewer
The project is very useful for SugarCRM developers however some setup is
required to be able to make use of it.
Link: https://developer.sugarcrm.com/2016/09/05/sugar-xhprof-viewer-released-as-open-source-project/
Making it easy for a team to use
The project can be set up and “containerized” with a
volume made available for the files to be analyzed.
Benefits:
- Minimizes friction prior to using the tool
- Allows a simplified workflow for sharing
What tools will your team containerize?
What will the benefits be?
A useful YouTube channel! o/
Check out this link:
https://www.youtube.com/channel/UCnxrdFPXJMeHru_b4Q_vTPQ
Off Topic: Have you heard about BuzzConf?
An awesome technology festival! o/
Check out this link:
https://buzzconf.io/go/dkcwd
Enjoy and share what you do….
I’m on Twitter: @dkcwd
LinkedIn: https://au.linkedin.com/in/daveclarkprofile

More Related Content

What's hot (20)

PDF
CI is dead, long live CI
Frédéric Lepied
 
PDF
.Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013
Tikal Knowledge
 
PDF
Teaching a Designer to Use GitHub
Liam Dempsey
 
PDF
Docker Best Practices Workshop
Ahmed AbouZaid
 
PDF
2015 05-06-elias weingaertner-docker-intro
Haufe-Lexware GmbH & Co KG
 
PPTX
Continuous Delivery with Jenkins and Wildfly (2014)
Tracy Kennedy
 
PDF
Using Docker for Testing
Mukta Aphale
 
PPTX
Provisioning environments. A simplistic approach
Eder Roger Souza
 
PDF
Using Docker for Testing
Carlos Sanchez
 
PDF
Intro to Git, GitHub, and Devpost
Andrew Kerr
 
PPTX
Introduction to git & GitHub
Poornachandrakashi
 
PPTX
Introduction to jenkins
Abe Diaz
 
PDF
Learning git
Sid Anand
 
PPTX
Git extension-training
Eric Guo
 
PPT
Introduction to Git and Github
Somkiat Puisungnoen
 
PPT
Jenkins Scriptler in 90mins
Larry Cai
 
PPTX
Github
piyush khadse
 
PDF
Git best practices 2016
Otto Kekäläinen
 
PDF
Intro to Git and GitHub
Panagiotis Papadopoulos
 
PPT
Git 101 - Crash Course in Version Control using Git
Geoff Hoffman
 
CI is dead, long live CI
Frédéric Lepied
 
.Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013
Tikal Knowledge
 
Teaching a Designer to Use GitHub
Liam Dempsey
 
Docker Best Practices Workshop
Ahmed AbouZaid
 
2015 05-06-elias weingaertner-docker-intro
Haufe-Lexware GmbH & Co KG
 
Continuous Delivery with Jenkins and Wildfly (2014)
Tracy Kennedy
 
Using Docker for Testing
Mukta Aphale
 
Provisioning environments. A simplistic approach
Eder Roger Souza
 
Using Docker for Testing
Carlos Sanchez
 
Intro to Git, GitHub, and Devpost
Andrew Kerr
 
Introduction to git & GitHub
Poornachandrakashi
 
Introduction to jenkins
Abe Diaz
 
Learning git
Sid Anand
 
Git extension-training
Eric Guo
 
Introduction to Git and Github
Somkiat Puisungnoen
 
Jenkins Scriptler in 90mins
Larry Cai
 
Git best practices 2016
Otto Kekäläinen
 
Intro to Git and GitHub
Panagiotis Papadopoulos
 
Git 101 - Crash Course in Version Control using Git
Geoff Hoffman
 

Viewers also liked (20)

PPTX
Implementing blue-green deployment with Atlassian Bamboo
Dave Clark
 
PPTX
Continuous integration using atlassian bamboo
Alexander Masalov
 
PPTX
Bitbucket
Okba Mahdjoub
 
PPTX
Azure - The Good Parts
Mark Allan
 
PDF
世界で人気のプロジェクト管理/開発ツールベンダー アトラシアン社紹介
Shunsuke (Sean) Osawa
 
PPTX
Azure Functions
Dino Wang
 
PPTX
Azure functions
Eduard Tomàs
 
PPTX
Implementation of the Continuous Integration based on Atlassian Bamboo
Анете Аннемария
 
PPTX
Serverles com Azure Functions & DocumentDB
José Roberto Araújo
 
PDF
Confluence as DMS for Moscow Atlassian User Group EN
CaseAgile LLC
 
PDF
Practical Continuous Deployment - Atlassian - London AUG 18 Feb 2014
Matthew Cobby
 
PDF
Continuous Deployment with Bamboo and Deployit
XebiaLabs
 
PPTX
Using Git and BitBucket
Medhat Dawoud
 
PDF
チケット管理システム Atlassian JIRA のご紹介
Shunsuke (Sean) Osawa
 
PDF
Change and Release Management with JIRA and Bamboo - Atlassian Summit 2010
Atlassian
 
PPTX
Introduction to Azure Functions
Marco Parenzan
 
PPTX
Azure Functions Real World Examples
Yochay Kiriaty
 
PDF
Chris Anderson and Yochay Kiriaty - Serverless Patterns with Azure Functions
ServerlessConf
 
PPTX
Serverless Architecture - Azure Logic apps
Puneet Ghanshani
 
PDF
Combining Operations and Support: Incident Management with Atlassian
Atlassian
 
Implementing blue-green deployment with Atlassian Bamboo
Dave Clark
 
Continuous integration using atlassian bamboo
Alexander Masalov
 
Bitbucket
Okba Mahdjoub
 
Azure - The Good Parts
Mark Allan
 
世界で人気のプロジェクト管理/開発ツールベンダー アトラシアン社紹介
Shunsuke (Sean) Osawa
 
Azure Functions
Dino Wang
 
Azure functions
Eduard Tomàs
 
Implementation of the Continuous Integration based on Atlassian Bamboo
Анете Аннемария
 
Serverles com Azure Functions & DocumentDB
José Roberto Araújo
 
Confluence as DMS for Moscow Atlassian User Group EN
CaseAgile LLC
 
Practical Continuous Deployment - Atlassian - London AUG 18 Feb 2014
Matthew Cobby
 
Continuous Deployment with Bamboo and Deployit
XebiaLabs
 
Using Git and BitBucket
Medhat Dawoud
 
チケット管理システム Atlassian JIRA のご紹介
Shunsuke (Sean) Osawa
 
Change and Release Management with JIRA and Bamboo - Atlassian Summit 2010
Atlassian
 
Introduction to Azure Functions
Marco Parenzan
 
Azure Functions Real World Examples
Yochay Kiriaty
 
Chris Anderson and Yochay Kiriaty - Serverless Patterns with Azure Functions
ServerlessConf
 
Serverless Architecture - Azure Logic apps
Puneet Ghanshani
 
Combining Operations and Support: Incident Management with Atlassian
Atlassian
 
Ad

Similar to An introduction to Atlassian Bitbucket Pipelines (20)

PDF
Cloud-Native Builds & Deployments in Bitbucket Pipelines
Atlassian
 
PPTX
Novices guide to docker
Alec Clews
 
PDF
Implementing CI CD UiPath Using Jenkins Plugin
Satish Prasad
 
PDF
Mihai Criveti - PyCon Ireland - Automate Everything
Mihai Criveti
 
PPT
ASP.net web api Power Point Presentation
BefastMeetingMinutes
 
PDF
Ember addons, served three ways
Mike North
 
PDF
Docker containers & the Future of Drupal testing
Ricardo Amaro
 
PPTX
Java Developer Intro to Environment Management with Vagrant, Puppet, and Dock...
Lucas Jellema
 
PPTX
Java developer intro to environment management with vagrant puppet and docker
Getting value from IoT, Integration and Data Analytics
 
PPT
Maven: Managing Software Projects for Repeatable Results
Steve Keener
 
PDF
IBM Index 2018 Conference Workshop: Modernizing Traditional Java App's with D...
Eric Smalling
 
PDF
Puppet Primer, Robbie Jerrom, Solution Architect VMware
subtitle
 
PDF
V mware
dvmug1
 
DOC
Cyb 225 cyb225 cyb 225 education for service uopstudy.com
UOPCourseHelp
 
DOC
Cyb 225 cyb225 cyb 225 best tutorials guide uopstudy.com
UOPCourseHelp
 
PPT
Migraine Drupal - syncing your staging and live sites
drupalindia
 
PPTX
Docker Indy Meetup - An Opinionated View of Building Docker Images and Pipelines
Matt Bentley
 
PDF
Divide and stress: the journey to component load test
Juan Pedro Escalona Rueda
 
PDF
OpenShift Build Pipelines @ Lightweight Java User Group Meetup
Tobias Schneck
 
PPTX
ABCs of docker
Sabyrzhan Tynybayev
 
Cloud-Native Builds & Deployments in Bitbucket Pipelines
Atlassian
 
Novices guide to docker
Alec Clews
 
Implementing CI CD UiPath Using Jenkins Plugin
Satish Prasad
 
Mihai Criveti - PyCon Ireland - Automate Everything
Mihai Criveti
 
ASP.net web api Power Point Presentation
BefastMeetingMinutes
 
Ember addons, served three ways
Mike North
 
Docker containers & the Future of Drupal testing
Ricardo Amaro
 
Java Developer Intro to Environment Management with Vagrant, Puppet, and Dock...
Lucas Jellema
 
Java developer intro to environment management with vagrant puppet and docker
Getting value from IoT, Integration and Data Analytics
 
Maven: Managing Software Projects for Repeatable Results
Steve Keener
 
IBM Index 2018 Conference Workshop: Modernizing Traditional Java App's with D...
Eric Smalling
 
Puppet Primer, Robbie Jerrom, Solution Architect VMware
subtitle
 
V mware
dvmug1
 
Cyb 225 cyb225 cyb 225 education for service uopstudy.com
UOPCourseHelp
 
Cyb 225 cyb225 cyb 225 best tutorials guide uopstudy.com
UOPCourseHelp
 
Migraine Drupal - syncing your staging and live sites
drupalindia
 
Docker Indy Meetup - An Opinionated View of Building Docker Images and Pipelines
Matt Bentley
 
Divide and stress: the journey to component load test
Juan Pedro Escalona Rueda
 
OpenShift Build Pipelines @ Lightweight Java User Group Meetup
Tobias Schneck
 
ABCs of docker
Sabyrzhan Tynybayev
 
Ad

Recently uploaded (20)

PPTX
Hardware(Central Processing Unit ) CU and ALU
RizwanaKalsoom2
 
PDF
Generic or Specific? Making sensible software design decisions
Bert Jan Schrijver
 
PDF
MiniTool Partition Wizard Free Crack + Full Free Download 2025
bashirkhan333g
 
PDF
SAP Firmaya İade ABAB Kodları - ABAB ile yazılmıl hazır kod örneği
Salih Küçük
 
PPTX
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PPTX
Tally_Basic_Operations_Presentation.pptx
AditiBansal54083
 
PDF
The 5 Reasons for IT Maintenance - Arna Softech
Arna Softech
 
PPTX
Comprehensive Risk Assessment Module for Smarter Risk Management
EHA Soft Solutions
 
PDF
MiniTool Power Data Recovery 8.8 With Crack New Latest 2025
bashirkhan333g
 
PPTX
Foundations of Marketo Engage - Powering Campaigns with Marketo Personalization
bbedford2
 
PPTX
Homogeneity of Variance Test Options IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
PDF
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
PDF
Technical-Careers-Roadmap-in-Software-Market.pdf
Hussein Ali
 
PPTX
Home Care Tools: Benefits, features and more
Third Rock Techkno
 
PDF
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
PDF
MiniTool Partition Wizard 12.8 Crack License Key LATEST
hashhshs786
 
PDF
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
PPTX
Agentic Automation: Build & Deploy Your First UiPath Agent
klpathrudu
 
PDF
Wondershare PDFelement Pro Crack for MacOS New Version Latest 2025
bashirkhan333g
 
Hardware(Central Processing Unit ) CU and ALU
RizwanaKalsoom2
 
Generic or Specific? Making sensible software design decisions
Bert Jan Schrijver
 
MiniTool Partition Wizard Free Crack + Full Free Download 2025
bashirkhan333g
 
SAP Firmaya İade ABAB Kodları - ABAB ile yazılmıl hazır kod örneği
Salih Küçük
 
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Tally_Basic_Operations_Presentation.pptx
AditiBansal54083
 
The 5 Reasons for IT Maintenance - Arna Softech
Arna Softech
 
Comprehensive Risk Assessment Module for Smarter Risk Management
EHA Soft Solutions
 
MiniTool Power Data Recovery 8.8 With Crack New Latest 2025
bashirkhan333g
 
Foundations of Marketo Engage - Powering Campaigns with Marketo Personalization
bbedford2
 
Homogeneity of Variance Test Options IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
Technical-Careers-Roadmap-in-Software-Market.pdf
Hussein Ali
 
Home Care Tools: Benefits, features and more
Third Rock Techkno
 
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
MiniTool Partition Wizard 12.8 Crack License Key LATEST
hashhshs786
 
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
Agentic Automation: Build & Deploy Your First UiPath Agent
klpathrudu
 
Wondershare PDFelement Pro Crack for MacOS New Version Latest 2025
bashirkhan333g
 

An introduction to Atlassian Bitbucket Pipelines

  • 1. Using Docker to improve your workflow An overview of Bitbucket Pipelines Twitter: @dkcwd
  • 2. Reminder about this session The slides will be made available after the session and you are more than welcome to share them if you find them useful. We have people attending from all manner of different backgrounds with different levels of experience and you’re welcome to ask questions and share knowledge after the session. Let’s get started….
  • 3. An overview of Bitbucket Pipelines
  • 4. Build, test and deploy from Bitbucket Bitbucket Pipelines uses Docker containers to run build plans Benefits: - Potential for faster feedback - Sensible default containers - Can use your private containers - Easy to set environment vars
  • 5. Enabling Pipelines for your repository In the Settings area, you need to enable Pipelines… Next, you need to configure your bitbucket-pipelines.yml
  • 6. Configuring bitbucket-pipelines.yml Choose a template to use with your build plan…
  • 7. Previewing the template Move on to the next step when you’re ready…
  • 8. Previewing the template Make a change if you want to then commit to create the file…
  • 9. Previewing the template An opportunity to update the message…
  • 10. Previewing the template The first build begins… And fails…
  • 11. An email notification is sent about the failure…
  • 12. The reason for failure is clear…
  • 13. Ok, so let’s add some tests….
  • 14. Building on a basic example Let’s build on that basic example by adding some tests to run using Pipelines For an example I’ll reuse a simple API test collection which I previously created with Postman when experimenting with serverless-graphql I’ll export from Postman and commit: - the request collection file, including pre-request scripts and tests - an environment file which “should” mean the tests pass when they are run
  • 15. Building on that basic example Additionally I’ll need to do a few more things so the tests can run I’ll create a package.json file defining newman (The CLI test runner for Postman) as a dependency so it will be installed during the build process I’ll update: - the package.json file so tests can be run using npm to call newman - the bitbucket-pipelines.yml file to run the relevant commands
  • 18. Let’s deliberately break it Yay it’s broken! o/
  • 19. And fix it again
  • 20. Need to create your own image? Check out this link: https://answers.atlassian.com/questions/39140980/how-do-i- create-a-docker-image-for-bitbucket- pipelines?_ga=1.125432457.263526773.1473156356
  • 21. Need to test with a database? Check out this link: https://confluence.atlassian.com/bitbucket/test-with-databases- 856697462.html
  • 22. Need to use environment variables? Check out this link: https://confluence.atlassian.com/bitbucket/environment-variables- in-bitbucket-pipelines-794502608.html
  • 23. All of those questions are in the docs! o/ Check out this link: https://confluence.atlassian.com/bitbucket/bitbucket-pipelines- 792496469.html
  • 24. Off Topic: Using Docker to make tools available
  • 25. Example: SugarCRM XHProf viewer The project is very useful for SugarCRM developers however some setup is required to be able to make use of it. Link: https://developer.sugarcrm.com/2016/09/05/sugar-xhprof-viewer-released-as-open-source-project/
  • 26. Making it easy for a team to use The project can be set up and “containerized” with a volume made available for the files to be analyzed. Benefits: - Minimizes friction prior to using the tool - Allows a simplified workflow for sharing What tools will your team containerize? What will the benefits be?
  • 27. A useful YouTube channel! o/ Check out this link: https://www.youtube.com/channel/UCnxrdFPXJMeHru_b4Q_vTPQ
  • 28. Off Topic: Have you heard about BuzzConf?
  • 29. An awesome technology festival! o/ Check out this link: https://buzzconf.io/go/dkcwd
  • 30. Enjoy and share what you do…. I’m on Twitter: @dkcwd LinkedIn: https://au.linkedin.com/in/daveclarkprofile