Skip to content

Release 5.8.0

Release 5.8.0 #595

Workflow file for this run

name: Create Release
on:
pull_request:
types:
- closed
branches:
- master
- 7**
- 6**
- 5**
- 4**
jobs:
build-release:
if: github.event.pull_request.merged && startsWith(github.event.pull_request.title, 'Release ')
runs-on: ubuntu-latest
steps:
- name: Get version
id: get_version
run: echo '${{ github.head_ref }}' | sed 's/v/::set-output name=VERSION::/'
- name: Set up Java
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- uses: actions/checkout@v3
with:
ref: ${{ github.ref }}
- id: compile-membrane
name: Compile Membrane
run: |
mvn install \
--no-transfer-progress \
--batch-mode \
-DskipTests
- name: Setup next Snapshot version
run: |
cd distribution
mvn test-compile exec:java \
--no-transfer-progress \
--batch-mode \
-DmainClass="com.predic8.membrane.examples.env.ConsistentVersionNumbers" \
-Dexec.classpathScope="test" \
-DmainArgs="-snapshot"
cd ..
- name: Create Pull Request for next Snapshot
id: cpr
uses: peter-evans/create-pull-request@v7
with:
commit-message: "Snapshot version"
title: "Snapshot version"
author: "github-actions <github-actions@github.com>"
body: "Update all project `pom.xml` and related files to post-${{ steps.get_version.outputs.VERSION }} snapshot version"
- uses: actions/checkout@v3
with:
ref: ${{ github.ref }}
- id: install-secret-key
name: Install gpg secret key
run: |
# Install gpg secret key
cat <(echo -e "${{ secrets.OSSRH_GPG_SECRET_KEY }}") | gpg --batch --import
# Verify gpg secret key
gpg --list-secret-keys --keyid-format LONG
- id: build-artifact
name: Build release artefacts
run: |
mvn \
--no-transfer-progress \
--batch-mode \
-DskipTests \
-Possrh \
-Dgpg.passphrase=${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }} \
clean verify
- name: Ensure release files exist
run: |
touch distribution/release-notes/${{ steps.get_version.outputs.VERSION }}.md
touch distribution/target/membrane-api-gateway-${{ steps.get_version.outputs.VERSION }}.zip.asc
- name: Create Release v${{ steps.get_version.outputs.VERSION }}
uses: ncipollo/release-action@v1
with:
name: v${{ steps.get_version.outputs.VERSION }}
tag: ${{ github.head_ref }}
commit: ${{ github.event.pull_request.merge_commit_sha }}
prerelease: true
# makeLatest: true
bodyFile: "distribution/release-notes/${{ steps.get_version.outputs.VERSION }}.md"
artifacts: "distribution/target/membrane-api-gateway-${{ steps.get_version.outputs.VERSION }}.zip,distribution/target/membrane-api-gateway-${{ steps.get_version.outputs.VERSION }}.zip.asc"
token: ${{ secrets.PAT }}