On , I learnt ...
How to easily disable a CircleCI workflow
Sometimes it’s useful to only run a subset of CircleCI jobs after each commit to a pull request branch.
For instance, if you’re working on the packaging step of your test-package-deploy pipeline, speed up your feedback loop by only running the packaging jobs after each push.
This can be done by adding a temporary commit that disables the main workflow and adds a custom one running only the jobs you care about.
You can disable a CircleCI workflow using the when
attribute:
# .circleci/config.yml
version: 2.1
workflows:
# Define a custom workflow that only runs the jobs you're interested in.
temp_workflow:
jobs:
- build_job_1
- build_job_2
# The standard (but slow) workflow that normally runs on each push.
test_build_deploy;
# Temporarily disable this workflow
when: false
...
Make sure you rebase out this commit before requesting review or merging the pull request; it’s just a crutch to speed up development.
See CircleCI’s docs on
using when
in workflows.