Skip to content

Commit

Permalink
docs: update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
anton-yurchenko committed Dec 28, 2019
1 parent d6b78ad commit 78b6be4
Show file tree
Hide file tree
Showing 6 changed files with 46 additions and 20 deletions.
1 change: 1 addition & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
.github/
.vscode/
.idea/
.gitignore
Expand Down
22 changes: 21 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,29 @@
## [2.0.0] - 2019-12-28
This is a major release as most of the code was refactored and some behavior was changed, for example "Tag version is set as a release title".

### Fixed
- Artifact files not found caused panic - all files now being validated before release creation
- Custom changelog file now being validated before release creation
- Arguments parsing fixed

### Added
- Unit testing
- Docker image now built from scratch, resulting in decreased size 139.73MB -> 2.43MB, improving action overall speed.
- **app** package
- `ALLOW_EMPTY_CHANGELOG` env.var to allow publishing a release without changelog (default **false**)
- Artifacts (provided as arguments) can now be separated by one of: `new line '\n', pipe '|', space ' ', comma ','`

### Changed
- **local** package renamed to **repository**
- **remote** package splitted into 2 packages: **asset**, **release**
- Tag version is set as a release title

## [1.1.0] - 2019-12-21
### Added
- [PR #3](https://github.com/anton-yurchenko/git-release/pull/3) Allow any prefix to semver tag. (*Thanks to [Taylor Becker](https://github.com/tajobe) for the PR*)

### Fixed
- PreRelease overwriting Draft configuration. (*Thanks to [Taylor Becker](https://github.com/tajobe) for the reporting an issue*)
- PreRelease overwriting Draft configuration. (*Thanks to [Taylor Becker](https://github.com/tajobe) for reporting an issue*)

## [1.0.0] - 2019-10-01
- First stable release.
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -39,4 +39,4 @@ release: test

.PHONY: codecov
codecov: test
@go tool cover -html=codecoverage.out
@go tool cover -html=coverage.txt
41 changes: 23 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# git-release
[![License](https://img.shields.io/github/license/anton-yurchenko/git-release?style=flat-square)](LICENSE.md) [![Release](https://img.shields.io/github/v/release/anton-yurchenko/git-release?style=flat-square)](https://github.com/anton-yurchenko/git-release/releases/latest) [![Docker Build](https://img.shields.io/docker/cloud/build/antonyurchenko/git-release?style=flat-square)](https://hub.docker.com/r/antonyurchenko/git-release) [![Docker Pulls](https://img.shields.io/docker/pulls/antonyurchenko/git-release?style=flat-square)](https://hub.docker.com/r/antonyurchenko/git-release)
[![Release](https://img.shields.io/github/v/release/anton-yurchenko/git-release)](https://github.com/anton-yurchenko/git-release/releases/latest) [![codecov](https://codecov.io/gh/anton-yurchenko/git-release/branch/master/graph/badge.svg)](https://codecov.io/gh/anton-yurchenko/git-release) [![Go Report Card](https://goreportcard.com/badge/github.com/anton-yurchenko/git-release)](https://goreportcard.com/report/github.com/anton-yurchenko/git-release) [![Docker Build](https://img.shields.io/docker/cloud/build/antonyurchenko/git-release)](https://hub.docker.com/r/antonyurchenko/git-release) [![Docker Pulls](https://img.shields.io/docker/pulls/antonyurchenko/git-release)](https://hub.docker.com/r/antonyurchenko/git-release) [![License](https://img.shields.io/github/license/anton-yurchenko/git-release)](LICENSE.md)

A GitHub Action for creating a GitHub Release with Assets and Changelog whenever a Version Tag is pushed to the project.

Expand All @@ -13,37 +13,42 @@ A GitHub Action for creating a GitHub Release with Assets and Changelog whenever
## Manual:
1. Add your changes to **CHANGELOG.md** in the following format (according to [keepachangelog.com](https://keepachangelog.com/en/1.0.0/ "Keep a ChangeLog")):
```
## [2.1.5] - 2019-10-01
## [2.0.0] - 2019-12-21
### Added
- Feature 1.
- Feature 2.
- Feature A
- Feature B
- GitHub Actions as a CI system
- GitHub Release as an Artifactory system
### Changed
- Logger timestamp.
- User API
### Removed
- Old library.
- Configuration file.
- Previous CI build
- Previous Artifactory
```
2. Tag a commit with Version (according to [semver.org](https://semver.org/ "Semantic Versioning")).
- Extensions like **alpha/beta/rc/...** are not supported.
- Prefixes like **release-/v/...** are supported.
- **Postfixes are not supported**.
3. Push and watch **Git-Release** publishing a Release on GitHub ;-)
![PIC](docs/images/log.png)

## Configuration:
1. Change the workflow to be triggered on Tag Push:
- Use either `'*'` or `'v*`
- Use either `'*'` or a more specific like `'v*'` or `'release-*'`
```
on:
push:
tags:
- 'v*'
```
2. Add Release stage to your workflow:
- **Optional**: Provide a list of assets as **args**
- **Optional**: `DRAFT_RELEASE: "true"/"false"` - Save release as draft instead of publishing it (default `false`).
- **Optional**: `PRE_RELEASE: "true"/"false"` - GitHub will point out that this release is identified as non-production ready (default `false`).
- **Optional**: `CHANGELOG_FILE: "changes.md"` - Changelog filename (default `CHANGELOG.md`).
2. Add Release stage to your workflow:
- Customize configuration with env.vars:
- Provide a list of assets as **args**
- `DRAFT_RELEASE: "true"` - Save release as draft instead of publishing it (default `false`).
- `PRE_RELEASE: "true"` - GitHub will point out that this release is identified as non-production ready (default `false`).
- `CHANGELOG_FILE: "changes.md"` - Changelog filename (default `CHANGELOG.md`).
- `ALLOW_EMPTY_CHANGELOG: "true"` - Allow publishing a release without changelog (default `false`).
```
- name: Release
uses: docker://antonyurchenko/git-release:latest
Expand All @@ -54,13 +59,13 @@ on:
CHANGELOG_FILE: "CHANGELOG.md"
with:
args: |
build/release/artifact-darwin-amd64.zip
build/release/artifact-linux-amd64.zip
build/release/artifact-windows-amd64.zip
build/release/darwin-amd64.zip
build/release/linux-amd64.zip
build/release/windows-amd64.zip
```

## Remarks:
- This action is automatically built at Docker Hub, and tagged with `latest / v1 / v1.0 / v1.0.0`. You may lock to a certain version instead of using **latest**. (*Recommended to lock against a major version, for example* `v1`).
- This action is automatically built at Docker Hub, and tagged with `latest / v2 / v2.0 / v2.0.0`. You may lock to a certain version instead of using **latest**. (*Recommended to lock against a major version, for example* `v2`).
- Instead of using pre-built image, you may build it during the execution of your flow by changing `docker://antonyurchenko/git-release:latest` to `anton-yurchenko/git-release@master`

## License
Expand Down
Binary file modified docs/images/log.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/images/release.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 78b6be4

Please sign in to comment.