Liking cljdoc? Tell your friends :D

Maintainer Guide

Audience

You are involved in maintaining/releasing test-doc-blocks.

Releasing

A release is triggered manually via a GitHub Action "Release" workflow.

Automated Workflow

Our Release GitHub Action handles the release workflow.

Our GitHub Actions "Release" workflow will:

  1. Create a thin jar using our version scheme

  2. Apply jar version to the following files:

    1. deps.edn (we use babashka neil for version tracking/management)

    2. user guide docs deps.edn usage example

    3. change log "unreleased" heading

  3. Deploy the jar to clojars

  4. Commit and push updates made to deps.edn, CHANGELOG.adoc and 01-user-guide.adoc back to the project

  5. Create and push a release tag back to the project repo

  6. Create a GitHub release

  7. Inform cljdoc of the new release

At this time, the release workflow does not run tests. The assumption is that you’ve waited for the last CI test run to complete and are happy with the results.

The release workflow will fail if the change log is not ready for release.

Updating the Version

Edit deps.edn:aliases:neil:version in the project root. The release workflow automatically bumps the :version patch component by 1 before releasing. Update the :version major and minor components in deps.edn manually as needed.

Special Setup

GitHub has been configured with necessary secrets for GitHub Actions to deploy test-doc-blocks to clojars.

Local Verification

To run the change log validation locally:

bb ci-release validate

If you so wish, you can also locally run all steps up to, but not including, deploy via:

bb ci-release prep

Locally verify, but do NOT check in changes prep makes to deps.edn, CHANGELOG.adoc, and doc/01-user-guide.adoc.

Invoking a Release

As a maintainer, you should have sufficient privileges to see a "Run Workflow" dropdown button on the Release action page. The dropdown will prompt for a branch. I did not see a way to disable this prompt, leave it at "main" and run the workflow.

Remember to pull after a release to get the changes made by the release workflow.

Can you improve this documentation? These fine people already did:
lread & Lee Read
Edit on GitHub

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close