Skip to content

Commit a9e53b6

Browse files
committed
Updating goreleaser github repo config and release documentation
1 parent b6f0cc2 commit a9e53b6

File tree

2 files changed

+26
-37
lines changed

2 files changed

+26
-37
lines changed

.goreleaser.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ release:
5555
# Repo in which the release will be created.
5656
# Default is extracted from the origin remote URL.
5757
github:
58+
owner: exercism
5859
name: cli
5960

6061
# If set to true, will not auto-publish the release.

RELEASE.md

Lines changed: 25 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -10,75 +10,63 @@ release process.
1010
1. [Setup GitHub token](https://goreleaser.com/environment/#github-token)
1111
1. Have a gpg key installed on your machine - it is [used for signing the artifacts](https://goreleaser.com/sign/)
1212

13+
## Confirm / Update the Changelog
14+
15+
Make sure all the recent changes are reflected in the "next release" section of the CHANGELOG.md file. All the changes in the "next release" section should be moved to a new section that describes the version number, and gives it a date.
16+
17+
You can view changes using the /compare/ view:
18+
https://github.com/exercism/cli/compare/$PREVIOUS_RELEASE...master
19+
20+
GoReleaser supports the [auto generation of a changelog](https://goreleaser.com/customization/#customize-the-changelog) we will want to customize to meet our standards (not including refactors, test updates, etc). We should also consider using [the release notes feature](https://goreleaser.com/customization/#custom-release-notes).
21+
22+
## Bump the version
23+
24+
Edit the `Version` constant in `cmd/version.go`
25+
26+
_Note: It's useful to add the version to the commit message when you bump it: e.g. `Bump version to v2.3.4`._
27+
28+
In the future we will probably want to replace the hardcoded `Version` constant with [main.version](https://goreleaser.com/environment/#using-the-main-version). Here is a [stack overflow post on injecting to cmd/version.go](https://stackoverflow.com/a/47510909).
29+
30+
Commit this change on a branch along with the CHANGELOG updates in a single commit, and create a PR for merge to master.
31+
1332
## Cut a release
1433

1534
```bash
16-
1735
# Test run
1836
goreleaser --skip-publish --snapshot --rm-dist
1937

20-
# Commit any changes, then create a new tag and push it
38+
# Create a new tag on the master branch and push it
2139
git tag -a v3.0.16 -m "Trying out GoReleaser"
2240
git push origin v3.0.16
2341

2442
# Build and release
2543
goreleaser --rm-dist
2644

27-
# Remember to update cmd/version.go in the code
28-
# (until we use: https://goreleaser.com/environment/#using-the-main-version)
29-
3045
# You must be logged into snapcraft to publish a new snap
3146
snapcraft login
3247

3348
# Push to snapcraft
3449
for f in `ls dist/*.snap`; do snapcraft push --release=stable $f; done
3550

3651
# [TODO] Push to homebrew
37-
38-
# Run [exercism-cp-archive-hack.sh](https://gist.github.com/ekingery/961650fca4e2233098c8320f32736836) which takes the new archive files and renames them to match the old naming scheme for backward compatibility.
3952
```
4053

41-
Lastly, head to [the release page](https://github.com/exercism/cli/releases) to test and publish the draft. Until mid to late 2020, we will need to manually upload the backward-compatible archive files generated in `/tmp/exercism_tmp_upload` by the shell script referenced above.
42-
43-
44-
## Confirm / Update the Changelog
45-
46-
GoReleaser supports [auto generation of changelog](https://goreleaser.com/customization/#customize-the-changelog) that we will want to customize to meet our standards (not including refactors, test updates, etc). We should also consider [the release notes](https://goreleaser.com/customization/#custom-release-notes).
47-
48-
Make sure all the recent changes are reflected in the "next release" section
49-
of the Changelog. Make this a separate commit from bumping the version.
50-
51-
You can view changes using the /compare/ view:
52-
https://github.com/exercism/cli/compare/$PREVIOUS_RELEASE...master
53-
54-
55-
## Bump the version
56-
57-
Edit the `Version` constant in `cmd/version.go`, and edit the Changelog.
58-
59-
All the changes in the "next release" section should be moved to a new section
60-
that describes the version number, and gives it a date.
61-
62-
The "next release" section should contain only "Your contribution here".
63-
64-
_Note: It's useful to add the version to the commit message when you bump it: e.g. `Bump version to v2.3.4`._
65-
66-
In the future we will probably want to replace the hardcoded `Version` constant with [main.version](https://goreleaser.com/environment/#using-the-main-version). Here is a [stack overflow post on injecting to cmd/version.go](https://stackoverflow.com/a/47510909).
67-
6854
## Cut Release on GitHub
6955

70-
Go to [the exercism/cli "new release" page](https://github.com/exercism/cli/releases/new).
56+
Run [exercism-cp-archive-hack.sh](https://gist.github.com/ekingery/961650fca4e2233098c8320f32736836) which takes the new archive files and renames them to match the old naming scheme for backward compatibility. Until mid to late 2020, we will need to manually upload the backward-compatible archive files generated in `/tmp/exercism_tmp_upload`.
7157

72-
A draft will have been auto-generated by GoReleaser. Describe the release, select a specific commit to target, paste the release text and describe the new changes.
58+
The generated archive files should be uploaded to the [draft release page created by GoReleaser](https://github.com/exercism/cli/releases). Describe the release, select a specific commit to target, paste the following release text, and describe the new changes.
7359

7460
```
7561
To install, follow the interactive installation instructions at https://exercism.io/cli-walkthrough
7662
---
7763
7864
[describe changes in this release]
79-
8065
```
8166

67+
Lastly, test and publish the draft
68+
69+
8270
## Update Homebrew
8371

8472
This is helpful for the (many) Mac OS X users.

0 commit comments

Comments
 (0)