From 17805e32c28bf9ec5600f4efa36bb1dad943aca0 Mon Sep 17 00:00:00 2001 From: Christian Schwarz Date: Fri, 6 Feb 2026 00:56:40 +0100 Subject: [PATCH] circleci: DRY docs jobs + update image (#915) Consolidate `quickcheck-docs` and `publish-zrepl-github-io` jobs into a single parameterized `run-docs-publish-sh` job with a `push` boolean. Don't run `make docs` anymore, it's run by `publish.sh` internally anyway. The cimg includes `make`, and we don't need Go to build the docs. Drive-by update to `cimg/base:current` - we pinned all important build inputs for docs using `uv`, and the inputs we use from the `cimg` (git, make) are stable. --- .circleci/config.yml | 43 +++++++++++++------------------------------ 1 file changed, 13 insertions(+), 30 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 14c158d..644c63e 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -16,20 +16,9 @@ commands: echo "$line" >> $BASH_ENV fi - apt-update-and-install-common-deps: - steps: - - run: sudo apt-get update - - run: sudo apt-get install -y gawk make - # CircleCI doesn't update its cimg/go images. - # So, need to update manually to get up-to-date trust chains. - # The need for this was required for cimg/go:1.12, but let's future proof this here and now. - - run: sudo apt-get install -y git ca-certificates - - # NOTE: when updating uv version, update both the install URL and cache keys below install-docdep: steps: - - apt-update-and-install-common-deps # Python is managed by uv - it will automatically download the version # specified in docs/.python-version when needed - run: @@ -111,7 +100,9 @@ workflows: ci: when: << pipeline.parameters.do_ci >> jobs: - - quickcheck-docs + - run-docs-publish-sh: + name: quickcheck-docs + push: false - quickcheck-go: name: quickcheck-go-amd64-linux-1.25.6 goversion: &latest-go-release "1.25.6" @@ -161,7 +152,9 @@ workflows: publish-zrepl.github.io: jobs: - - publish-zrepl-github-io: + - run-docs-publish-sh: + name: publish-zrepl.github.io + push: true context: - zrepl-github-io-deploy filters: @@ -170,18 +163,18 @@ workflows: - master jobs: - quickcheck-docs: + run-docs-publish-sh: + parameters: + push: + type: boolean docker: - - image: cimg/base:2024.09 + - image: cimg/base:current steps: - checkout - install-docdep - # do the current docs build - - run: make docs - - save-uv-cache - # does the publish.sh script still work? - docs-publish-sh: - push: false + push: << parameters.push >> + - save-uv-cache quickcheck-go: parameters: @@ -313,13 +306,3 @@ jobs: - run: make wrapup-and-checksum - store_artifacts: path: artifacts/release - - publish-zrepl-github-io: - docker: - - image: cimg/base:2024.09 - steps: - - checkout - - install-docdep - - docs-publish-sh: - push: true - - save-uv-cache