Skip to content

Commit f6af280

Browse files
authored
Prevent an empty automatic release (#1115)
1 parent 98b6d84 commit f6af280

File tree

2 files changed

+28
-12
lines changed

2 files changed

+28
-12
lines changed

.github/files/calculate_change.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
if [ -z "$(ls changelogs/fragments/*.yml changelogs/fragments/*.yaml)" ]; then
2+
echo "change_present=false" >> "$GITHUB_OUTPUT"
3+
else
4+
echo "change_present=true" >> "$GITHUB_OUTPUT"
5+
fi
6+
17
grep -RE '(major_changes|breaking_changes)' changelogs/fragments;
28
MAJOR=$?;
39
grep -R minor_changes changelogs/fragments;

.github/workflows/release_auto.yml

Lines changed: 22 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,40 +10,50 @@ on:
1010

1111
jobs:
1212
calculate_version:
13+
name: Calculate Collection Version
1314
runs-on: ubuntu-latest
1415
steps:
1516
- uses: actions/checkout@v2
1617

17-
- uses: actions-ecosystem/action-get-latest-tag@v1
18+
- name: Get the most recent tag
19+
uses: actions-ecosystem/action-get-latest-tag@v1
1820
id: get-latest-tag
1921
with:
2022
semver_only: true
2123

22-
- name: calculate bump level
24+
- name: Calculate bump level
2325
id: bump_level
2426
shell: bash
2527
run: .github/files/calculate_change.sh
2628

27-
- uses: actions-ecosystem/action-bump-semver@v1
29+
- name: Bump version
30+
uses: actions-ecosystem/action-bump-semver@v1
2831
id: bump-semver
2932
with:
3033
current_version: ${{ steps.get-latest-tag.outputs.tag }}
3134
level: ${{ steps.bump_level.outputs.level }}
35+
outputs:
36+
collection_version: ${{ steps.bump-semver.outputs.new_version }}
37+
change_level: ${{ steps.bump_level.outputs.level }}
38+
change_present: ${{ steps.bump_level.outputs.change_present }}
3239

33-
- name: Release
34-
if: steps.bump_level.outputs.level != 'major' || github.event_name == 'workflow_dispatch'
40+
create_github_release:
41+
name: Create GitHub Release
42+
needs: calculate_version
43+
runs-on: ubuntu-latest
44+
if: (needs.calculate_version.outputs.change_level != 'major' && needs.calculate_version.outputs.change_present != 'false') || github.event_name == 'workflow_dispatch'
45+
steps:
46+
- name: Create Github Release
3547
uses: softprops/action-gh-release@v2
3648
with:
37-
token: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
38-
tag_name: ${{ steps.bump-semver.outputs.new_version }}
49+
token: ${{ secrets.GITHUB_TOKEN }}
50+
tag_name: ${{ needs.calculate_version.outputs.collection_version }}
3951
generate_release_notes: true
40-
outputs:
41-
collection_version: ${{ steps.bump-semver.outputs.new_version }}
42-
change_level: ${{ steps.bump_level.outputs.level }}
4352

4453
release:
45-
needs: calculate_version
46-
if: needs.calculate_version.outputs.change_level != 'major' || github.event_name == 'workflow_dispatch'
54+
name: Release Collection to galaxy/AH
55+
needs: create_github_release
56+
if: (needs.calculate_version.outputs.change_level != 'major' && needs.calculate_version.outputs.change_present != 'false') || github.event_name == 'workflow_dispatch'
4757
uses: "redhat-cop/ansible_collections_tooling/.github/workflows/release_pipeline_dual.yml@main"
4858
with:
4959
# Galaxy Publish

0 commit comments

Comments
 (0)