Skip to content

Commit fb545b8

Browse files
Merge pull request #97 from salesforce/document-release-process
docs: document release process and add GitHub release notes config
2 parents 2e9b79f + 6e71ebc commit fb545b8

4 files changed

Lines changed: 101 additions & 1 deletion

File tree

.github/labeler.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
documentation:
2+
- any:
3+
- changed-files:
4+
- any-glob-to-any-file:
5+
- '*.md'
6+
- 'docs/**'
7+
8+
chore:
9+
- any:
10+
- changed-files:
11+
- any-glob-to-any-file:
12+
- '.github/**'
13+
- 'Makefile'
14+
- 'go.mod'
15+
- 'go.sum'
16+
- '*.yml'
17+
- '*.yaml'

.github/release.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
changelog:
2+
exclude:
3+
labels:
4+
- duplicate
5+
- invalid
6+
- question
7+
- wontfix
8+
categories:
9+
- title: "⚠️ Breaking Changes"
10+
labels:
11+
- breaking-change
12+
- title: "🎉 New Features"
13+
labels:
14+
- enhancement
15+
- title: "🐛 Bug Fixes"
16+
labels:
17+
- bug
18+
- title: "📖 Documentation"
19+
labels:
20+
- documentation
21+
- title: "📦 Dependency Updates"
22+
labels:
23+
- dependabot
24+
- title: "🔧 Other Changes"
25+
labels:
26+
- "*"

.github/workflows/autolabel.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
name: Auto Label
2+
3+
on:
4+
pull_request:
5+
types: [opened, reopened, synchronize]
6+
7+
permissions:
8+
contents: read
9+
pull-requests: write
10+
11+
jobs:
12+
autolabel:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- uses: actions/labeler@v6
16+
with:
17+
repo-token: ${{ secrets.GITHUB_TOKEN }}

README.md

Lines changed: 41 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,5 +61,45 @@ If you right-click on the channel / messages, you can hit `Copy Link` and also s
6161
(e.g. `https://${YOUR_WORKSPACE}.slack.com/messages/${DEST_CHANNEL_ID}`)
6262

6363
## Slack Incoming Webhooks
64-
To get the `HOOK_URL` for Incoming Webhooks, you'll follow
64+
To get the `HOOK_URL` for Incoming Webhooks, you'll follow
6565
[Slack's Incoming Webhooks instructions](https://api.slack.com/incoming-webhooks).
66+
67+
# Releasing
68+
69+
Releases are triggered by pushing a tag. The [release workflow](.github/workflows/release.yml) runs
70+
[GoReleaser](https://goreleaser.com/) on any tag push, which builds binaries, publishes packages
71+
(deb/rpm/apk), and pushes the Docker image to `ghcr.io/salesforce/ci-result-to-slack`.
72+
Release notes are automatically generated from merged PRs using [`.github/release.yml`](.github/release.yml).
73+
74+
## Cutting a release
75+
76+
```sh
77+
git tag v1.2.3
78+
git push origin v1.2.3
79+
```
80+
81+
## Choosing a version
82+
83+
This project uses [semantic versioning](https://semver.org). Choose the next version based on
84+
what has changed since the last release:
85+
86+
- `PATCH` (e.g. `v1.2.3`) — bug fixes, dependency bumps, documentation
87+
- `MINOR` (e.g. `v1.3.0`) — new backwards-compatible functionality
88+
- `MAJOR` (e.g. `v2.0.0`) — breaking changes
89+
90+
To see the latest tag: `git describe --tags --abbrev=0`
91+
92+
Optionally, [`svu`](https://github.com/caarlos0/svu) can calculate the next version automatically
93+
from [conventional commits](https://www.conventionalcommits.org/):
94+
95+
```sh
96+
# Install
97+
brew install caarlos0/tap/svu
98+
99+
# Show what the next version would be
100+
svu next
101+
102+
# Tag and push
103+
git tag "$(svu next)"
104+
git push origin "$(svu next)"
105+
```

0 commit comments

Comments
 (0)