Skip to content

Commit

Permalink
doc: update RELEASE.md and create release issue template (#78)
Browse files Browse the repository at this point in the history
Closes #68
  • Loading branch information
austinletson authored Jul 17, 2024
1 parent bdc86e7 commit a7937f1
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 3 deletions.
20 changes: 20 additions & 0 deletions .github/issue_templates/release_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
Before creating an issue with this template,
- replace `{{MAJOR_RELEASE}}` with the current major release, e.g., `v1`.
- replace `{{SPECIFIC_RELEASE}}` with the specific release tag, e.g., `v1.0.0` or `v1.1.3`.
- remove any todos that start with {{REMOVE IF NOT MAJOR RELEASE}} if this isn't a major release.

# {{SPECIFIC_RELEASE}}
- [ ] Create a `release/{{SPECIFIC_RELEASE}}` branch off of `main` for the release candidate.
- Testing
- [ ] Run `functional_tests.yml` workflow on `release/{{SPECIFIC_RELEASE}}`.
- [ ] Create a GitHub release of `release/{{SPECIFIC_RELEASE}}` with a `{{SPECIFIC_RELEASE}}` tag.
- [ ] Copy the release notes from the ## Unreleased section of CHANGELOG.md.
- Git tag manipulation.
- [ ] Create a git tag named `{{SPECIFIC_RELEASE}}` pointing to the `release/{{SPECIFIC_RELEASE}}` branch
- [ ] {{REMOVE IF NOT MAJOR RELEASE}} Create a new git tag named `{{MAJOR_RELEASE}}`.
- [ ] Move the `{{MAJOR_RELEASE}}` tag to point to `release/{{SPECIFIC_RELEASE}}`.
- [ ] Verify action with `uses: leanprover/lean-action@{{SPECIFIC_RELEASE}}` in test repo as a sanity check.
- Create a PR to:
- [ ] Create a PR to update CHANGELOG.md with the latest release.
- [ ] {{REMOVE IF NOT MAJOR RELEASE}} Update instances of `leanprover/lean-action@{{MAJOR_SPECIFIC_RELEASE}}` in README.md.
- [ ] Post release announcement in `general/lean-action` Zulip topic.
11 changes: 8 additions & 3 deletions RELEASING.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,15 @@ A major version tag is maintained for each version which points to the latest ve

For more information about releasing GitHub actions see the [Using tags for release management](https://docs.github.com/en/actions/creating-actions/about-custom-actions#using-tags-for-release-management) section of the GitHub custom actions documentation.

## Steps to create a release
- Create an issue to track creating the release.
## Creating a release
To create a release create an issue title `{RELEASE_VERSION} release`
with the `.github/issue_templates/release_template.md` template
and the `release` GitHug issue label.
Follow the steps in the issue template.

Here is an outline of the release process. There are more details in the release issue template.
- Create a `release/v{RELEASE_VERSION}` branch (e.g. `release/v2.7.1`).
- Test `lean-action` by pointing an existing test repository to the new version with `uses: leanprover/lean-action@v{RELEASE_VERSION}`.
- Run the `functional_test.yml` workflow on `release/lean-action@v{RELEASE_VERSION}`.
- Make any minor commits related to the release on the release branch.
- Once the release has been validated, create a new release with release notes copied from the `## Unreleased` section of `CHANGELOG.md` and a git tag `v{RELEASE_VERSION}` (e.g `v2.7.1`).
- In the case of a minor or patch version, move the major version tag to the latest version
Expand Down

0 comments on commit a7937f1

Please sign in to comment.