kanidm/project_docs/RELEASE_CHECKLIST.md

86 lines
2 KiB
Markdown
Raw Normal View History

# Release checklist
2022-05-01 07:18:17 +02:00
## Pre-Reqs
```bash
cargo install cargo-audit
cargo install cargo-outdated
cargo install cargo-udeps
```
2022-05-01 07:18:17 +02:00
## Check List
2021-07-07 03:50:13 +02:00
### Start a release
- [ ] git checkout -b YYYYMMDD-release
2022-05-01 07:18:17 +02:00
### Cargo Tasks
2022-05-01 05:34:19 +02:00
2023-08-01 07:23:07 +02:00
- [ ] RUSTC\_BOOTSTRAP=1 cargo udeps
- [ ] cargo outdated -R
- [ ] cargo audit
- [ ] cargo test
2022-11-01 05:02:52 +01:00
### Code Changes
- [ ] upgrade crypto policy values if requires
- [ ] bump index version in constants
- [ ] check for breaking db entry changes.
2022-05-01 05:34:19 +02:00
2022-05-01 07:18:17 +02:00
### Administration
2020-07-01 01:12:07 +02:00
- [ ] update version to remove dev tag in ./Cargo.toml
- [ ] update version to remove dev tag in ./Makefile
- [ ] cargo test
- [ ] build wasm components with release profile
- [ ] Update `RELEASE_NOTES.md`
- [ ] git commit
- [ ] git push origin YYYYMMDD-release
- [ ] Merge PR
2022-05-01 07:18:17 +02:00
### Git Management
- [ ] git checkout master
2023-08-01 07:23:07 +02:00
- [ ] git pull
- [ ] git checkout -b 1.1.x (Note no v to prevent ref conflict)
- [ ] git tag v1.1.x
- [ ] Final inspect of the branch
2022-05-01 07:18:17 +02:00
- [ ] git push origin 1.1.x
- [ ] git push origin 1.1.x --tags
2022-05-01 07:18:17 +02:00
2023-08-01 07:23:07 +02:00
- [ ] github -> Ensure release branch is protected
2023-02-17 08:02:01 +01:00
- [ ] github -> create new release based on tag (not branch) - use tag because then tools will get
the tag + patches we apply.
2022-05-01 07:18:17 +02:00
### Cargo publish
- [ ] publish `kanidm_proto`
- [ ] publish `sketching`
- [ ] publish `kanidm_utils_users`
- [ ] publish `kanidm_lib_file_permissions`
- [ ] publish `kanidm_client`
- [ ] publish `kanidm_lib_crypto`
- [ ] publish `kanidm_build_profiles`
- [ ] publish `kanidm_tools`
2022-05-01 07:18:17 +02:00
### Docker
- [ ] docker buildx use cluster
2023-02-01 07:21:00 +01:00
- [ ] `make buildx/kanidmd/x86_64_v3 buildx/kanidmd buildx/kanidm_tools buildx/radiusd`
- [ ] `IMAGE_VERSION=latest make buildx/kanidmd/x86_64_v3 buildx/kanidmd buildx/kanidm_tools buildx/radiusd`
- [ ] Update the readme on docker <https://hub.docker.com/repository/docker/kanidm/server>
2022-05-01 07:18:17 +02:00
### Distro
- [ ] vendor and release to build.opensuse.org
2022-11-01 05:02:52 +01:00
### Follow up
- [ ] git checkout master
- [ ] git pull
2023-08-01 07:23:07 +02:00
- [ ] git checkout -b YYYYMMDD-dev-version
- [ ] update version to +1 and add dev tag in ./Cargo.toml
- [ ] update version to +1 and add dev tag in ./Makefile