From ae6a15b391be2e3cdbc4c60ee2fe302598852dd5 Mon Sep 17 00:00:00 2001 From: Julian Raufelder Date: Mon, 10 Oct 2022 14:49:36 +0200 Subject: [PATCH] Check POM version and linux metainfo.xml file during release steps --- .../workflows/release-check-precondition.yml | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 .github/workflows/release-check-precondition.yml diff --git a/.github/workflows/release-check-precondition.yml b/.github/workflows/release-check-precondition.yml new file mode 100644 index 000000000..ae598a3f4 --- /dev/null +++ b/.github/workflows/release-check-precondition.yml @@ -0,0 +1,39 @@ +name: Release check precondition + +on: + push: + branches: + - 'hotfix/**' + - 'release/**' + tags: + - '*' + +jobs: + test: + name: Validate pushed commit to release/hotfix or pushed tag + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: 0 + - name: Validate POM version + run: | + if [[ $GITHUB_REF =~ refs/heads/(hotfix|release)/[0-9]+\.[0-9]+\.[0-9]+.* ]]; then + SEM_VER_STR=${GITHUB_REF##*/} + elif [[ $GITHUB_REF =~ refs/tags/[0-9]+\.[0-9]+\.[0-9]+.* ]]; then + SEM_VER_STR=${GITHUB_REF##*/} + else + echo "Failed to parse version" + exit 1 + fi + + if ![[ SEM_VER_STR = `mvn help:evaluate -Dexpression=project.version -q -DforceStdout` ]]; then + echo "Version not set in POM" + exit 1 + fi + - name: Validate release in org.cryptomator.Cryptomator.metainfo.xml file + run: | + if ![[ grep "" dist/linux/common/org.cryptomator.Cryptomator.metainfo.xml ]]; then + echo "Release not set in dist/linux/common/org.cryptomator.Cryptomator.metainfo.xml" + exit 1 + fi