Bitbucket Pipelines provides a seamless integration for continuous integration and deployment (CI/CD) processes.
In this article, we'll go through the process of setting up a basic custom pipeline, using variables, and configuring default values for a smoother and more personalized workflow.
USE CASE
Sometimes we want to automate some amount of steps. Those steps will execute steps with different values.
One example I faced was to build automation for upgrading Postgres version.
The process consists of some regular steps. And the bitbucket pipeline may look like this:
pipelines: custom: - upgrade_postgres: - step: name: "some saving of old version" script: - ./dump_10.sh - step: name: "Some steps for raising up new version" script: - ./load_11.sh
The process consists of some regular steps that only differ on the version I want to upgrade from (10) and the version I want to upgrade to (11).
Instead of changing the bitbucket-pipeline file, for every iteration of upgrading version, we can use variables.
pipelines: custom: - variables: #list variable names under here - name: UP_PG_FROM default: '11' allowed-values: - '11' - '12' - '13' - '14' - name: UP_PG_TO default: '12' allowed-values: - '12' - '13' - '14' - '15' - upgrade_postgres: - step: name: "some saving of old version" script: - ./build_${UP_PG_FROM}.sh - step: name: "Some steps for raising up new version" script: - ./build_${UP_PG_TO}.sh
Notice that in this snipped we set up variables with a set of possible values using keyword allowed-values and default values with keyword default
And we use those values with the syntax ${variable name}
This example could lead you to this once you click on Run Pipeline:
Top comments (0)