From 1459f50adef3258b45e853ea5851b81359b1fba0 Mon Sep 17 00:00:00 2001 From: teodanciu Date: Tue, 17 Jan 2023 17:11:48 +0000 Subject: [PATCH] Update CONTRIBUTING.md with instructions on releasing specs --- CONTRIBUTING.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f86a0734819..145ed3e32a7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -91,6 +91,22 @@ cabal configure --ghc-options="-Wwarn" cabal build ``` +## Publishing specifications +PDF specs are stored as attachments to [github releases](https://github.com/input-output-hk/cardano-ledger/releases) +We can create a release that builds and attaches the latest specs, by triggering the [push-docs github action](https://github.com/input-output-hk/cardano-ledger/blob/master/.github/workflows/push-specs.yml). +This github action can be triggered by pushing a tag of the pattern: `cardano-ledger-spec-YYYY-MM-DD`, for example: `cardano-ledger-spec-2023-01-17` + +For example, if we decide it's time to publish new versions of docs, +we can do the following to publish the PDFs under release `cardano-ledger-spec-2023-03-21`: +``` +git tag cardano-ledger-spec-2023-03-21 +git push origin cardano-ledger-spec-2023-03-21 +``` + +This will create a new release that will be available as [latest](https://github.com/input-output-hk/cardano-ledger/releases/latest). +Make sure that the `YYYY-MM-DD` part in the tag name is alphabetically greater than the rest, otherwise the release won't be tagged as `latest`. +Using the current date should ensure that this is the case. + ## Testing the Haskell programs The tests can be run with cabal.