kanidm/project_docs/RELEASE_CHECKLIST.md
2022-11-01 14:02:52 +10:00

1.6 KiB

Pre-Reqs

cargo install cargo-audit
cargo install cargo-outdated

Check List

Start a release

  • git checkout -b YYYYMMDD-release

Cargo Tasks

  • cargo outdated -R
  • cargo audit
  • cargo test

Code Changes

  • upgrade crypto policy values if requires
  • bump index version in constants
  • check for breaking db entry changes.

Administration

  • update version in ./kanidmd_web_ui/Cargo.toml
  • update version in ./Cargo.toml
  • cargo test
  • build wasm components with release profile
  • Update RELEASE_NOTES.md
  • git commit
  • git rebase -i HEAD~X
  • git push origin YYYYMMDD-release
  • Merge PR

Git Management

  • git checkout master

  • git branch 1.1.0-alpha.x (Note no v to prevent ref conflict)

  • git checkout v1.1.0-alpha.x

  • git tag v1.1.0-alpha.x

  • Final inspect of the branch

  • git push origin 1.1.0-alpha.x

  • git push origin 1.1.0-alpha.x --tags

Cargo publish

  • publish kanidm_proto
  • publish kanidmd/kanidm
  • publish kanidm_client
  • publish kanidm_tools

Docker

Distro

  • vendor and release to build.opensuse.org

Follow up

  • git checkout master
  • git pull
  • git branch YYYYMMDD-dev-version
  • update version in ./kanidmd_web_ui/Cargo.toml
  • update version in ./Cargo.toml
  • build wasm components with debug profile