| name: Release |
| on: |
| release: |
| types: [published] |
| jobs: |
| release: |
| runs-on: ubuntu-latest |
| strategy: |
| matrix: |
| java: ['8'] |
| 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: 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_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 }} |
| with: |
| arguments: -Psigning.secretKeyRingFile=${{ github.workspace }}/secring.gpg publishToSonatype closeAndReleaseSonatypeStagingRepository |
| - name: Run Assemble |
| id: assemble |
| if: steps.publish.outcome == 'success' |
| uses: gradle/gradle-build-action@v2 |
| with: |
| arguments: assemble |
| - name: Export Gradle Properties |
| uses: micronaut-projects/github-actions/export-gradle-properties@master |
| - name: Publish to Github Pages |
| id: docs |
| if: steps.assemble.outcome == 'success' |
| uses: micronaut-projects/github-pages-deploy-action@master |
| env: |
| BETA: ${{ contains(steps.release_version.outputs.release_version, 'M') || contains(steps.release_version.outputs.release_version, 'RC') }} |
| TARGET_REPOSITORY: ${{ github.repository }} |
| GH_TOKEN: ${{ secrets.GH_TOKEN }} |
| BRANCH: gh-pages |
| FOLDER: build/docs |
| DOC_FOLDER: gh-pages |
| COMMIT_EMAIL: behlp@objectcomputing.com |
| COMMIT_NAME: Puneet Behl |
| VERSION: ${{ steps.release_version.outputs.release_version }} |
| - name: Run post-release |
| if: steps.publish.outcome == 'success' && steps.docs.outcome == 'success' |
| uses: micronaut-projects/github-actions/post-release@master |
| with: |
| token: ${{ secrets.GITHUB_TOKEN }} |
| env: |
| SNAPSHOT_SUFFIX: -SNAPSHOT |