I would like to build and test my projects on several OS platforms using different docker images. What is the best way to achieve this with pipelines?
Hi Anton,
Bitbucket Pipelines allows you to define a Docker image to use on the step (as well as globally). The current limitation is that you will need to define a different Docker image on each branch (but in the future when there are multiple steps in a Pipeline you can have each step have a different Docker image).
For example:
image: my-global-image:version-1 pipelines: branches: branch-1: - step: image: ubuntu:16.04 # This will be used instead of my-global-image. script: - ./runTests branch-2: - step: image: ubuntu:14.04 # This will be used instead of my-global-image. script: - ./runTests
More information on configuring bitbucket-pipelines.yml and branches can be found here:
https://confluence.atlassian.com/bitbucket/branch-workflows-in-bitbucket-pipelines-856697482.html
In regards to your specific use-case of testing on several OS environments, keep in mind that Bitbucket Pipelines only supports Linux at the moment (this might limit what you were hoping to do).
Hope that helps.
Phil
I have a follow up on this - I have a single repo but I want to configure it so that the single repo has multiple pipelines. One pipeline runs against dev, another qa and another one against production.
What is the best practice for this?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.