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

Use GitHub's Changelog Generation #735

Merged
merged 1 commit into from
Apr 13, 2023
Merged
Show file tree
Hide file tree
Changes from all 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
37 changes: 37 additions & 0 deletions .github/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# Copyright 2023 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

changelog:
exclude:
labels:
- duplicate
- question
- invalid
- priority/wontfix
categories:
- title: Breaking changes
labels:
- kind/breaking
- title: Implemented enhancements
labels:
- kind/feature
- title: Fixed bugs
labels:
- kind/bug
- title: Security fixes
labels:
- area/security
- title: Other
labels:
- "*"
4 changes: 2 additions & 2 deletions build/release/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
Run `make` to submit the `cloudbuild.yaml` to [Google Cloud Build](https://cloud.google.com/build) and build the
release:

* arm64 Linux, Windows and macOS executables.
* arm64 Linux Docker image.
* amd64 Linux, Windows and macOS executables.
* amd64 Linux Docker image.

If you need to pass extra arguments to the `make` target, the target comes with an `$(ARGS)` parameter than can be
used.
Expand Down
15 changes: 0 additions & 15 deletions build/release/cloudbuild.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -41,23 +41,12 @@ steps:
- 'make version > ../version'
id: output-version
waitFor: ['-']
- name: ferrarimarco/github-changelog-generator:1.15.2
id: changelog
entrypoint: sh
args:
- '-c'
- 'github_changelog_generator --user=googleforgames --project=quilkin --bug-labels=kind/bug --enhancement-labels=kind/feature --breaking-labels=kind/breaking --security-labels=area/security --exclude-labels=duplicate,question,invalid,wontfix,priority/wontfix --future-release "v$(cat ./version)" --release-branch=main --token $$GH_TOKEN'
secretEnv:
- GH_TOKEN
waitFor:
- output-version
artifacts:
objects:
location: '$_STORAGE'
paths:
- '*.zip'
- 'license.html'
- 'CHANGELOG.md'
images:
- ${_REPOSITORY}quilkin
options:
Expand All @@ -71,8 +60,4 @@ substitutions:
_BUILD_IMAGE_TAG: us-docker.pkg.dev/${PROJECT_ID}/ci/build-image
_REPOSITORY: us-docker.pkg.dev/${PROJECT_ID}/release/
_STORAGE: gs://${PROJECT_ID}-quilkin-releases
availableSecrets:
secretManager:
- versionName: projects/${PROJECT_ID}/secrets/release-github-token/versions/latest
env: GH_TOKEN
timeout: 1800s
13 changes: 8 additions & 5 deletions build/templates/release-issue.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@
- [ ] Edit the `version` field in `./macros/Cargo.toml` and remove the `-dev` suffix.
- [ ] cd to `./build/release` and run `make` to submit the cloud build
- [ ] Download all the artifacts from the cloud build.
- [ ] Move the CHANGELOG.md to the root of this repository, replacing any previous versions.
- [ ] Review `license.html` to ensure that there aren't any new MPL, or CDDL dependencies from the last
release. If there are:
- [ ] Add the dependencies to [archive_dependencies.sh](https://github.com/googleforgames/quilkin/blob/main/build/release/archive_dependencies.sh)
Expand All @@ -29,11 +28,15 @@
- [ ] Add a release item to README.md "Documentation" > "Releases" list with related links in reverse chronological
order.
- [ ] Remove any `data-proofer-ignore` attributes from links in the documentation in `./docs`.
- [ ] Create a draft [Github release](https://github.com/googleforgames/quilkin/releases/new)
- [ ] Populate the tag with `v{version}`
- [ ] Click `Generate release notes` to generate the change log for this release.
- [ ] Copy the release notes from the draft release and paste it at the top of CHANGELOG.md.
- [ ] Using the
[Github release template](https://github.com/googleforgames/quilkin/blob/main/build/templates/github-release.md)
update the generated release notes with a description, and relevant changelog sections.
- [ ] Attach all the cloud build artifacts to the draft GitHub release.
- [ ] Submit these changes as a PR, and merge with approval.
- [ ] Create a [Github release](https://github.com/googleforgames/quilkin/releases/new) using the
[Github release template](https://github.com/googleforgames/quilkin/blob/main/build/templates/github-release.md).
- [ ] Populate the tag with `v{version}`, description, and relevant changelog sections.
- [ ] Attach all the remaining cloud build artifacts to the release.
- [ ] Run `git remote update && git checkout main && git reset --hard upstream/main` to ensure your code is in line
with upstream.
- [ ] Run `git checkout -b release-{version} && git push upstream release-{version}` to create a release branch.
Expand Down