Skip to content

Commit 3e507d2

Browse files
jakubiglamoss2k13dgniewekgithub-actions[bot]
authored
ci: Feature/it 49 release with changelog (#7)
* create new release with changelogs Signed-off-by: Piotr Mossakowski <[email protected]> * Use PR labels for release * terraform-docs: automated action * terraform-docs: automated action Co-authored-by: Piotr Mossakowski <[email protected]> Co-authored-by: Dominik Gniewek-Węgrzyn <[email protected]> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Dominik Gniewek-Węgrzyn <[email protected]>
1 parent 34eb9c2 commit 3e507d2

File tree

1 file changed

+67
-0
lines changed

1 file changed

+67
-0
lines changed

.github/workflows/release.yml

+67
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
name: Create new release with changelog
2+
3+
on:
4+
pull_request:
5+
types: [closed]
6+
7+
jobs:
8+
release:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: actions/checkout@v2
12+
with:
13+
fetch-depth: 100
14+
15+
- name: Check release label
16+
id: release-label
17+
uses: actions-ecosystem/action-release-label@v1
18+
if: ${{ github.event.pull_request.merged == true }}
19+
20+
- name: Get latest tag
21+
id: get-latest-tag
22+
uses: actions-ecosystem/action-get-latest-tag@v1
23+
if: ${{ steps.release-label.outputs.level != null }}
24+
25+
- name: Bump semantic version
26+
id: bump-semver
27+
uses: actions-ecosystem/action-bump-semver@v1
28+
if: ${{ steps.release-label.outputs.level != null }}
29+
with:
30+
current_version: ${{ steps.get-latest-tag.outputs.tag }}
31+
level: ${{ steps.release-label.outputs.level }}
32+
33+
- name: Tag release
34+
id: tag-relese
35+
uses: actions-ecosystem/action-push-tag@v1
36+
if: ${{ steps.release-label.outputs.level != null }}
37+
with:
38+
tag: ${{ steps.bump-semver.outputs.new_version }}
39+
message: "${{ steps.bump-semver.outputs.new_version }}: PR #${{ github.event.pull_request.number }} ${{ github.event.pull_request.title }}"
40+
41+
- name: Generate new release with changelog
42+
id: release-with-changelog
43+
uses: fregante/release-with-changelog@v3
44+
if: ${{ steps.bump-semver.outputs.new_version != null }}
45+
with:
46+
token: "${{ secrets.GITHUB_TOKEN }}"
47+
exclude: '^meta|^docs|^document|^lint|^ci|^refactor|readme|workflow|bump|dependencies|yml|^v?\d+\.\d+\.\d+'
48+
tag: "${{ steps.bump-semver.outputs.new_version }}"
49+
title: "Version ${{ steps.bump-semver.outputs.new_version }}"
50+
commit-template: "- {title} ← {hash}"
51+
skip-on-empty: true
52+
template: |
53+
### Changelog
54+
55+
{commits}
56+
57+
{range}
58+
59+
- name: Comment PR
60+
id: add-comment
61+
uses: actions-ecosystem/action-create-comment@v1
62+
if: ${{ steps.bump-semver.outputs.new_version != null }}
63+
with:
64+
github_token: ${{ secrets.GITHUB_TOKEN }}
65+
number: ${{ steps.get-merged-pull-request.outputs.number }}
66+
body: |
67+
The new version [${{ steps.bump-semver.outputs.new_version }}](https://github.com/${{ github.repository }}/releases/tag/${{ steps.bump-semver.outputs.new_version }}) has been released :tada:

0 commit comments

Comments
 (0)