mirror of
https://github.com/openziti/ziti.git
synced 2026-10-08 05:41:20 +00:00
68 lines
2.1 KiB
Markdown
68 lines
2.1 KiB
Markdown
# Releasing Ziti
|
|
|
|
## Release-next Pre-requisites
|
|
|
|
Perform these steps in PR branches based on release-next (trunk).
|
|
|
|
1. Tidy dependencies.
|
|
1. Ensure you have downloaded the `@latest` artifact from the dependency(ies) you are updating in the main Ziti project, e.g.,
|
|
|
|
```bash
|
|
go get -u github.com/openziti/edge@latest
|
|
```
|
|
|
|
2. Run `go mod tidy` in the main Ziti project and in the `./zititest` sub-tree.
|
|
|
|
```bash
|
|
go mod tidy
|
|
cd ./zititest
|
|
go mod tidy
|
|
cd ..
|
|
```
|
|
|
|
2. Ensure the `go test` command succeeds. This will also ensure the project builds.
|
|
|
|
```bash
|
|
go test ./...
|
|
```
|
|
|
|
3. Ensure PR checks succeed.
|
|
1. Make sure you have a clean build in GitHub Actions.
|
|
2. Make sure you have a clean build in fablab smoketest.
|
|
4. Ensure CHANGELOG.md is up to date.
|
|
1. Run `ziti-ci build-release-notes` in your PR branch to generate library version updates and summarize issues. Note that you will need a working copy of each module that has changed in an adjacent directory with the default repo name in order for this to work.
|
|
fixed, as long as the git commit has `fixed #<issue number>` (or fixes, closes, closed, etc.).
|
|
1. Sanity-check and paste the output into CHANGELOG.md under a heading like `## Component Updates and Bug Fixes`.
|
|
|
|
### Shell Script to Tidy Dependencies
|
|
|
|
```bash
|
|
(
|
|
set -euxo pipefail
|
|
go list -m -f '{{ .Path }} {{ .Main }}' all \
|
|
| grep ziti | grep -v "$(go list -m)" | grep -v dilithium | cut -f 1 -d ' ' \
|
|
| xargs -n1 /bin/bash -c 'echo "Checking for updates to $@";go get -u -v $@;' ''
|
|
go mod tidy
|
|
if git diff --quiet go.mod go.sum; then
|
|
echo "no changes"
|
|
else
|
|
echo "dependency updates found"
|
|
fi
|
|
|
|
if [ -f "zititest/go.mod" ]; then
|
|
echo "./zititest$ go mod tidy"
|
|
cd zititest
|
|
go mod tidy
|
|
cd ..
|
|
fi
|
|
ziti-ci build-release-notes
|
|
)
|
|
```
|
|
|
|
## Release Pre-requisites
|
|
|
|
Perform these steps in the release-next (trunk) branch which is based on main to release Ziti.
|
|
|
|
1. Create a PR to merge release-next to main. Release happens by merging from the release-next branch to main.
|
|
2. Ensure PR checks succeed.
|