From 40513a117f83077bfaffb9bf969b2000d85ba7cc Mon Sep 17 00:00:00 2001 From: ᴜɴᴋɴᴡᴏɴ Date: Sat, 22 Aug 2020 22:35:09 +0800 Subject: docs: add instructions for release (#6268) --- docs/dev/release/issue_template_minor_version.md | 38 ++++++++++++++++++++++++ docs/dev/release/release_new_version.md | 9 ++++++ 2 files changed, 47 insertions(+) create mode 100644 docs/dev/release/issue_template_minor_version.md create mode 100644 docs/dev/release/release_new_version.md (limited to 'docs/dev/release') diff --git a/docs/dev/release/issue_template_minor_version.md b/docs/dev/release/issue_template_minor_version.md new file mode 100644 index 00000000..b7770d31 --- /dev/null +++ b/docs/dev/release/issue_template_minor_version.md @@ -0,0 +1,38 @@ +## Before release + +On develop branch: + +- [ ] Close stale issues with the label [status: needs feedback](https://github.com/gogs/gogs/issues?q=is%3Aissue+is%3Aopen+label%3A%22status%3A+needs+feedback%22). +- [ ] [Sync locales from Crowdin](https://github.com/gogs/gogs/blob/master/docs/dev/import_locale.md). +- [ ] Update [CHANGELOG](https://github.com/gogs/gogs/blob/master/CHANGELOG.md) to include entries for the current release. +- [ ] Cut a new release branch `release/.`, e.g. `release/0.12`. + +## During release + +On release branch: + +- [ ] Update the [hard-coded version](https://github.com/gogs/gogs/blob/master/gogs.go#L21) to the current release, e.g. `0.12.0+dev` -> `0.12.0`. +- [ ] Publish a new [GitHub release](https://github.com/gogs/gogs/releases) with entries from [CHANGELOG](https://github.com/gogs/gogs/blob/master/CHANGELOG.md) for the current release. +- [ ] Wait for a new [Docker Hub tag](https://hub.docker.com/r/gogs/gogs/tags) for the current release to be created automatically. +- [ ] Compile and pack binaries (all prefixed with `gogs_.._`, e.g. `gogs_0.12.0_`): + - [ ] macOS: `darwin_amd64.zip` + - [ ] Linux: `linux_386.tar.gz`, `linux_386.zip`, `linux_amd64.tar.gz`, `linux_amd64.zip` + - [ ] ARM: `linux_armv7.zip` + - [ ] Windows: `windows_amd64.zip`, `windows_amd64_mws.zip` +- [ ] Generate SHA256 checksum for all binaries to the file `checksum_sha256.txt`. +- [ ] Upload all binaries to: + - [ ] GitHub release + - [ ] KeyCDN + - [ ] https://dl.gogs.io (also upload `checksum_sha256.txt`) +- [ ] Build, push and tag a new Docker image for ARM to [Docker Hub](https://hub.docker.com/r/gogs/gogs-rpi). + +## After release + +On develop branch: + +- [ ] Update the repository mirror on [Gitee](https://gitee.com/unknwon/gogs). +- [ ] Create a new release topic on [Gogs Discussion](https://discuss.gogs.io/c/announcements/5). +- [ ] Send out release announcement emails via [Mailchimp](https://mailchimp.com/). +- [ ] Publish a new release article on [OSChina](http://my.oschina.net/Obahua/admin/releases). +- [ ] Update the [hard-coded version](https://github.com/gogs/gogs/blob/master/gogs.go#L21) to the new develop version, e.g. `0.12.0+dev` -> `0.13.0+dev`. +- [ ] Run `make legacy` to identify deprecated code that is aimed to be removed in current develop version. diff --git a/docs/dev/release/release_new_version.md b/docs/dev/release/release_new_version.md new file mode 100644 index 00000000..4b3fbf51 --- /dev/null +++ b/docs/dev/release/release_new_version.md @@ -0,0 +1,9 @@ +# Release a new version + +## Release a minor version + +To release a new minor version, create a new GitHub issue with following attributes: + +1. Title: `Release ..0` +1. Label: [📸 release](https://github.com/gogs/gogs/labels/%F0%9F%93%B8%20release) +1. Content: [minor version issue template](issue_template_minor_version.md) -- cgit v1.2.3