| name: Release |
| on: |
| release: |
| types: [published] |
| jobs: |
| release: |
| runs-on: ubuntu-latest |
| strategy: |
| matrix: |
| java: ['11'] |
| env: |
| GIT_USER_NAME: puneetbehl |
| GIT_USER_EMAIL: behlp@objectcomputing.com |
| steps: |
| - name: Checkout repository |
| uses: actions/checkout@v3 |
| with: |
| token: ${{ secrets.GH_TOKEN }} |
| - uses: gradle/wrapper-validation-action@v1 |
| - name: Set up JDK |
| uses: actions/setup-java@v3 |
| with: |
| distribution: 'adopt' |
| 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: Generate secring file |
| env: |
| SECRING_FILE: ${{ secrets.SECRING_FILE }} |
| run: echo $SECRING_FILE | base64 -d > ${{ github.workspace }}/secring.gpg |
| - name: Publish to Sonatype OSSRH |
| id: publish |
| uses: gradle/gradle-build-action@v2 |
| env: |
| SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }} |
| SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }} |
| SONATYPE_STAGING_PROFILE_ID: ${{ secrets.SONATYPE_STAGING_PROFILE_ID }} |
| SIGNING_KEY: ${{ secrets.SIGNING_KEY }} |
| SIGNING_PASSPHRASE: ${{ secrets.SIGNING_PASSPHRASE }} |
| SECRING_FILE: ${{ secrets.SECRING_FILE }} |
| with: |
| arguments: -Psigning.secretKeyRingFile=${{ github.workspace }}/secring.gpg publishToSonatype closeAndReleaseSonatypeStagingRepository |
| - name: Run Assemble |
| if: steps.publish.outcome == 'success' |
| id: assemble |
| uses: gradle/gradle-build-action@v2 |
| with: |
| arguments: assemble |
| - name: Export Gradle Properties |
| uses: micronaut-projects/github-actions/export-gradle-properties@master |
| - name: Run post-release |
| if: steps.publish.outcome == 'success' |
| uses: micronaut-projects/github-actions/post-release@master |
| with: |
| token: ${{ secrets.GITHUB_TOKEN }} |
| env: |
| SNAPSHOT_SUFFIX: -SNAPSHOT |
| - name: Create Message for the GORM Documentation Release |
| if: steps.assemble.outcome == 'success' |
| id: gorm_docs_release_message |
| run: | |
| echo ::set-output name=value::{\"gorm_version\":\"$RELEASE_VERSION\"} |
| env: |
| RELEASE_VERSION: ${{ steps.release_version.outputs.release_version }} |
| - name: Invoke gorm-docs release workflow |
| if: success() |
| id: gorm_docs |
| uses: benc-uk/workflow-dispatch@v1.1 |
| with: |
| workflow: Release |
| repo: grails/gorm-docs |
| ref: ${{ steps.extract_branch.outputs.value }} |
| token: ${{ secrets.GH_TOKEN }} |
| inputs: ${{ steps.gorm_docs_release_message.outputs.value }} |