Skip to content

Commit 8c29d25

Browse files
committed
close #202 document release procedure
1 parent b51358c commit 8c29d25

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

CONTRIBUTING.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,37 @@ if you have exported GOBIN you can run the binary directly from the terminal
114114
`git phlow --help`
115115

116116

117+
### Release
118+
git phlow runs on concourse.ci and is fully automated, in terms of testing and releasing. Creating a new release will do so on `GitHub`, `homebrew` and `scoop`.
119+
120+
#### Semver versioning
121+
By default git-phlow bumps patches when builds are run. To bump a minor or major release you must change a configuration in the `pipeline.yml` file in the `checkin` job.
122+
```yaml
123+
- get: gp-version
124+
params: {bump: patch}
125+
```
126+
bump supports:
127+
- `major`
128+
- `minor`
129+
- `patch`
130+
131+
Next upload the pipeline with the fly cli and the next build will then bump the specified version.
132+
NOTE: In order to upload the pipeline, you must have valid credentials for GitHub and the other dependencies of the pipeline.
133+
```
134+
fly -t <target> sp -c ci/pipeline.yml -p git-phlow -l <path/to/credentiasl.yml>
135+
```
136+
137+
#### Trigger the release
138+
The release job is [takeoff](http://concourse.bosh.praqma.cloud/teams/main/pipelines/git-phlow/jobs/takeoff/builds/1) which creates the GitHub release. When that is done supersonic and afterburner will release to `scoop` and `homebrew`. Be aware that you release software to customers, so only trigger the job when you **want** to release.
139+
140+
#### Releasing is easy - just run
141+
```
142+
fly -t <target> trigger-job --job git-phlow/takeoff
143+
```
144+
145+
146+
147+
117148
### Tools
118149
IntelliJ has a [plugin](http://go-ide.com) for go development - I personally use this (groenborg)
119150

0 commit comments

Comments
 (0)