Skip to content

add github action to publish releases #4

add github action to publish releases

add github action to publish releases #4

name: Publish Release
on:
push:
branches:
- 'wip-[0-9]+.[0-9]+'
- '[0-9]+.[0-9]+'
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Set Build Number Environment Variable
env:
BUILD_NUMBER_OFFSET: 26
run: |
echo "BUILD_NUMBER=$((${{ github.run_number }} + $BUILD_NUMBER_OFFSET))" >> "$GITHUB_ENV"
- name: Install gpg secret key
run: |
cat <(echo -e "${{ secrets.GPG_SECRET_KEY }}") | gpg2 --batch --import
gpg2 --list-secret-keys --keyid-format LONG
- uses: actions/checkout@v2
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
java-version: 8
distribution: 'zulu'
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build and Test
run: ./gradlew clean check
- name: Publish WIP to Github Packages
if: ${{ contains( github.ref, 'wip-' ) }}
env:
GRADLE_OPTS: -Dbuild.number=${{ env.BUILD_NUMBER}} -Dbuild.vcs.number=${{ github.sha }} -Dbuild.vcs.branch=${{ github.ref }}
GPR_USERNAME: ${{ github.actor }}
GPR_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./gradlew publishAllPublicationsToGitHubPackagesRepository -Psigning.gnupg.keyName=${{ secrets.GPG_SECRET_KEY_ID }} -Psigning.gnupg.passphrase=${{ secrets.GPG_SECRET_KEY_PASSWORD }}
- name: Publish Release to Maven Central
if: ${{ !contains( github.ref, 'wip-' ) }}
env:
GRADLE_OPTS: -Dbuild.number=${{ env.BUILD_NUMBER}} -Dbuild.vcs.number=${{ github.sha }} -Dbuild.vcs.branch=${{ github.ref }}
MCR_USERNAME: ${{ secrets.MCR_USERNAME }}
MCR_PASSWORD: ${{ secrets.MCR_PASSWORD }}
run: ./gradlew publishToSonatype closeAndReleaseSonatypeStagingRepository -Psigning.gnupg.keyName=${{ secrets.GPG_SECRET_KEY_ID }} -Psigning.gnupg.passphrase=${{ secrets.GPG_SECRET_KEY_PASSWORD }}