Skip to content

Automatic release and versioning #2

Automatic release and versioning

Automatic release and versioning #2

name: Check For Release Label
on:
pull_request:
branches: [ master ]
jobs:
check_for_release_tag:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
# checkout the master branch to compare changelog.txt
- uses: actions/checkout@v2
with:
ref: master
path: ./masterbranch
- name: Get release label
uses: actions-ecosystem/action-release-label@v1
id: release-label
- run: echo "Release label is ${{ steps.release-label.outputs.level }}"
- name: Fail if label does not exist
#if: ${{ ! ( contains(github.event.pull_request.labels.*.name, 'release/patch') || contains(github.event.pull_request.labels.*.name, 'release/minor') || contains(github.event.pull_request.labels.*.name, 'release/major') || contains(github.event.pull_request.labels.*.name, 'release/skip') ) }}
if: ${{ ( steps.release-label.outputs.level == null ) }}
run: echo "Please label your PR with a release label" && exit 1
# ensure changelog.txt has been updated in this PR by comparing it to the one in the master branch
#- name: Verify that changelog.txt has been updated
# if: ${{ contains(github.event.pull_request.labels.*.name, 'release/patch') || contains(github.event.pull_request.labels.*.name, 'release/minor') || contains(github.event.pull_request.labels.*.name, 'release/major') }}
# run: |
# ! cmp --silent <(tail -n+2 changelog.txt) <(tail -n+2 ./masterbranch/changelog.txt) || { echo 'Changelog.txt must be updated for release PRs. Please update changelog.txt' && exit 1 ; }