release-check.yml 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. name: Release Check
  2. on:
  3. push:
  4. branches:
  5. - 'release/**'
  6. - 'hotfix/**'
  7. env:
  8. JAVA_VERSION: 20
  9. defaults:
  10. run:
  11. shell: bash
  12. jobs:
  13. release-check-precondition:
  14. name: Validate commits pushed to release/hotfix branch to fulfill release requirements
  15. runs-on: ubuntu-latest
  16. steps:
  17. - uses: actions/checkout@v2
  18. - id: validate-pom-version
  19. name: Validate POM version
  20. run: |
  21. if [[ $GITHUB_REF =~ refs/heads/(hotfix|release)/[0-9]+\.[0-9]+\.[0-9]+.* ]]; then
  22. SEM_VER_STR=${GITHUB_REF##*/}
  23. else
  24. echo "Failed to parse version"
  25. exit 1
  26. fi
  27. if [[ ${SEM_VER_STR} == `mvn help:evaluate -Dexpression=project.version -q -DforceStdout` ]]; then
  28. echo "semVerStr=${SEM_VER_STR}" >> $GITHUB_OUTPUT
  29. else
  30. echo "Version not set in POM"
  31. exit 1
  32. fi
  33. - name: Validate release in org.cryptomator.Cryptomator.metainfo.xml file
  34. run: |
  35. if ! grep -q "<release date=\".*\" version=\"${{ steps.validate-pom-version.outputs.semVerStr }}\"/>" dist/linux/common/org.cryptomator.Cryptomator.metainfo.xml; then
  36. echo "Release not set in dist/linux/common/org.cryptomator.Cryptomator.metainfo.xml"
  37. exit 1
  38. fi