| name: Release |
| on: |
| release: |
| types: [published] |
| jobs: |
| release: |
| runs-on: ubuntu-latest |
| strategy: |
| matrix: |
| java: ['11'] |
| env: |
| GIT_USER_NAME: 'grails-build' |
| GIT_USER_EMAIL: 'grails-build@users.noreply.github.com' |
| steps: |
| - name: Checkout repository |
| uses: actions/checkout@v2 |
| with: |
| token: ${{ secrets.GH_TOKEN }} |
| - uses: gradle/wrapper-validation-action@v1 |
| - name: Set up JDK |
| uses: actions/setup-java@v1 |
| with: |
| java-version: ${{ matrix.java }} |
| - name: Extract Target Branch |
| id: extract_branch |
| run: | |
| echo "Determining Target Branch" |
| TARGET_BRANCH=`cat $GITHUB_EVENT_PATH | jq '.release.target_commitish' | sed -e 's/^"\(.*\)"$/\1/g'` |
| echo $TARGET_BRANCH |
| echo ::set-output name=value::${TARGET_BRANCH} |
| - name: Set the current release version |
| id: release_version |
| run: echo ::set-output name=release_version::${GITHUB_REF:11} |
| - name: Run pre-release |
| uses: micronaut-projects/github-actions/pre-release@master |
| with: |
| token: ${{ secrets.GITHUB_TOKEN }} |
| - name: Publish to Sonatype OSSRH |
| id: publish |
| if: success() |
| env: |
| GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }} |
| GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER }} |
| GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY }} |
| SONATYPE_USERNAME: ${{ secrets.SONATYPE_USER_TOKEN_NAME }} |
| SONATYPE_PASSWORD: ${{ secrets.SONATYPE_USER_TOKEN_PASSWORD }} |
| SONATYPE_NEXUS_URL: ${{ secrets.SONATYPE_NEXUS_URL }} |
| SONATYPE_STAGING_PROFILE_ID: ${{ secrets.SONATYPE_STAGING_PROFILE_ID }} |
| SIGNING_KEY: ${{ secrets.SIGNING_KEY }} |
| SIGNING_PASSPHRASE: ${{ secrets.SIGNING_PASSPHRASE }} |
| SECRING_FILE: ${{ secrets.SECRING_FILE }} |
| run: | |
| echo $SECRING_FILE | base64 -d > secring.gpg |
| echo "Publishing Artifacts" |
| (set -x; ./gradlew -Psigning.secretKeyRingFile="${GITHUB_WORKSPACE}/secring.gpg" publishToSonatype closeAndReleaseSonatypeStagingRepository --no-daemon) |
| (set -x; ./gradlew assemble --no-daemon) |
| - name: Export Gradle Properties |
| uses: micronaut-projects/github-actions/export-gradle-properties@master |
| - name: Run post-release |
| if: success() |
| uses: micronaut-projects/github-actions/post-release@master |
| with: |
| token: ${{ secrets.GITHUB_TOKEN }} |
| env: |
| SNAPSHOT_SUFFIX: -SNAPSHOT |