Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

doc: align dev checklist to applied practices in ORAS 1.1.0-rc.1 release #222

Closed
wants to merge 8 commits into from
Closed
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 11 additions & 6 deletions docs/community/developer_guide.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -83,14 +83,19 @@ To update or add new dependencies, run `go get <package name>`.
This section needs a lot of love and automation 🙂

:::

### Preparation
qweeah marked this conversation as resolved.
Show resolved Hide resolved
1. Make sure your GPG is available on GitHub at `https://github.com/<username>.gpg`. This can be added at https://github.com/settings/keys
1. If you haven't already, open PR to add your GPG key to the [`KEYS`](https://github.com/oras-project/oras/blob/main/KEYS) file (see file for instructions)
1. Open a release PR to
- Build with latest golang: replace go version of [binary](https://github.com/oras-project/oras/blob/main/.github/workflows/release-github.yml#L32) and [image](https://github.com/oras-project/oras/blob/main/Dockerfile#L14) to latest stable one
- Update oras version: replace [current stable version](https://github.com/oras-project/oras/blob/main/internal/version/version.go#L20) with upcoming release version
1. After the release PR got merged, [create an issue](https://github.com/oras-project/oras/issues/new) to call for vote on cutting off a release branch named `release-<major>.<minor>` based on the version update commit.
1. Make fresh clone of the repo after all above steps are completed. Create a new tag for the version prefixed with "v" and push the tag directly to the repo.
1. Open a PR to update Github Actions with latest version of golang: replace go version of [binary](https://github.com/oras-project/oras/blob/main/.github/workflows/release-github.yml#L32) and [image](https://github.com/oras-project/oras/blob/main/Dockerfile#L14) to latest stable one

### Call for vote
qweeah marked this conversation as resolved.
Show resolved Hide resolved
1. Open a release PR to update oras version: replace [current stable version](https://github.com/oras-project/oras/blob/main/internal/version/version.go#L20) with upcoming release version
qweeah marked this conversation as resolved.
Show resolved Hide resolved
qweeah marked this conversation as resolved.
Show resolved Hide resolved
qweeah marked this conversation as resolved.
Show resolved Hide resolved
1. Send a message to slack channel to call for vote on releasing. If the vote passes, merge the PR.
- The target commit should be the SHA digest of the last commit in the release PR
- Make sure that the PR is merged with `Create a merge commit` option
- (optional) cut off a release branch named `release-<major>.<minor>` if there is not one already
qweeah marked this conversation as resolved.
Show resolved Hide resolved
### Release
qweeah marked this conversation as resolved.
Show resolved Hide resolved
1. Make fresh clone of the repo after all above steps are completed. Create a new tag for the version prefixed with "v" and push the tag directly to the repo. The tag should be created on the last commit of release PR, **NOT** the merge commit.
qweeah marked this conversation as resolved.
Show resolved Hide resolved
```sh
version=1.0.0
git tag v${version}
Expand Down