# Akri Release Process
This note delineates the step-by-step process of creating a new release of Akri on GitHub
1. Test latest supported versions, and update workflow to test the newly supported versions: https://github.com/deislabs/akri/pull/317/commits
a. Then update tests to use latest K8s versions
2. Test latest rust version and update workflow: https://github.com/deislabs/akri/pull/318
```sh
rustup toolchain install stable
# switch to using installed latest toolchain (for example 1.51.0)
rustup default 1.51.0
# confirm version
cargo --version
# test build
cargo build
```
3. Bug Bash - [example](https://hackmd.io/x-ZVhp_HT6maQGeqdCMrTg)
4. Test and update Tarpaulin: https://github.com/xd009642/tarpaulin
5. Update dependencies that were not auto-updated and create issue for ones that cannot be updated simply
6. Update CHANGELOG.md: https://github.com/deislabs/akri/pull/189
a. Add to release notes what versions we support
b. Use fix or feat prefix
7. Create release: https://github.com/deislabs/akri/releases/new
8. Rebase http-extensibility
9. Once workflows (https://github.com/deislabs/akri/actions) have completed, tweet and post to slack, and blog
10. Confirm that container builds will be triggered by release
11. Create release of [docs site](https://github.com/project-akri/akri-docs)
12. Review CII best practice and update if possible: https://bestpractices.coreinfrastructure.org/en/projects/5339