Skip to content

Merge pull request #544 from commercetools/gen-sdk-updates #189

Merge pull request #544 from commercetools/gen-sdk-updates

Merge pull request #544 from commercetools/gen-sdk-updates #189

Workflow file for this run

on:
push:
tags:
- '[0-9]+.[0-9]+.[0-9]+*'
name: AutoRelease
# Declare default permissions as read only.
permissions: read-all
jobs:
release_tag:
name: Build and release tag
runs-on: ubuntu-latest
if: startsWith( github.ref, 'refs/tags/')
steps:
- name: Checkout
uses: actions/checkout@v4
- uses: gradle/wrapper-validation-action@342dbebe7272035434f9baccc29a816ec6dd2c7b
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
- run: scripts/setup-signing-key.sh
env:
DECRYPTER: ${{ secrets.DECRYPTER }}
SIGNING_KEY: ${{ secrets.SIGNING_KEY }}
PASSPHRASE: ${{ secrets.PASSPHRASE }}
- run: ./gradlew -Pversion=${{ github.ref_name }} clean test javadoc publishToSonatype closeAndReleaseSonatypeStagingRepository
env:
CTP_OSS_USER: ${{ secrets.OSS_USER }}
CTP_OSS_SECRET: ${{ secrets.OSS_SECRET }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_ACTOR: ${{ secrets.GITHUB_ACTOR }}
- run: rm -rf ~/.gradle/gradle.properties
update_readme:
runs-on: ubuntu-latest
permissions:
contents: write # for stefanzweifel/git-auto-commit-action to push code in repo
needs: [release_tag]
if: startsWith( github.ref, 'refs/tags/')
steps:
# Get GitHub token via the CT SDKs App
- name: Generate GitHub token (via CT SDKs App)
id: generate_github_token
uses: actions/create-github-app-token@v1
with:
app-id: ${{ secrets.CT_SDKS_APP_ID }}
private-key: ${{ secrets.CT_SDKS_APP_PEM }}
- name: Get App user
id: get_app_user
env:
GITHUB_TOKEN: ${{ steps.generate_github_token.outputs.token }}
run: |
export GH_APP_USER=`gh api /users/ct-sdks%5Bbot%5D | jq .id`
echo "email=${GH_APP_USER}+ct-sdks[bot]@users.noreply.github.com" >> "$GITHUB_OUTPUT"
- name: Checkout
uses: actions/checkout@v4
with:
ref: main
token: ${{ steps.generate_github_token.outputs.token }}
- uses: gradle/wrapper-validation-action@342dbebe7272035434f9baccc29a816ec6dd2c7b
- run: ./gradlew -Pversion=${{ github.ref_name }} writeVersionToExamples writeVersionToReadme setVersion nextMinorVersion snapshotVersion
- name: "update changelog"
run: |
gh api /repos/commercetools/commercetools-sdk-java-v2/releases --paginate > releases.json
node scripts/changelog.js > CHANGELOG.md
rm -rf releases.json
env:
GH_TOKEN: ${{ steps.generate_github_token.outputs.token }}
- name: "remove API reference commit SHA"
run: rm -rf reference.txt
continue-on-error: true
- uses: stefanzweifel/git-auto-commit-action@e8f94e4dd298db5a6a2aa2d42fe0bcef6f2c9660
with:
commit_message: "TASK: Updating version in README"
commit_author: ct-sdks[bot] <${{ steps.get_app_user.outputs.email }}>
commit_user_name: ct-sdks[bot]
commit_user_email: ${{ steps.get_app_user.outputs.email }}
docs:
name: Build and release docs
permissions:
contents: write # for stefanzweifel/git-auto-commit-action to push code in repo
runs-on: ubuntu-latest
needs: [release_tag]
if: startsWith( github.ref, 'refs/tags/')
steps:
# Get GitHub token via the CT SDKs App
- name: Generate GitHub token (via CT SDKs App)
id: generate_github_token
uses: actions/create-github-app-token@v1
with:
app-id: ${{ secrets.CT_SDKS_APP_ID }}
private-key: ${{ secrets.CT_SDKS_APP_PEM }}
- name: Get App user
id: get_app_user
env:
GITHUB_TOKEN: ${{ steps.generate_github_token.outputs.token }}
run: |
export GH_APP_USER=`gh api /users/ct-sdks%5Bbot%5D | jq .id`
echo "email=${GH_APP_USER}+ct-sdks[bot]@users.noreply.github.com" >> "$GITHUB_OUTPUT"
- name: Checkout
uses: actions/checkout@v4
with:
path: sdk
token: ${{ steps.generate_github_token.outputs.token }}
- name: Checkout
uses: actions/checkout@v4
with:
path: doc
ref: gh-pages
token: ${{ steps.generate_github_token.outputs.token }}
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
- name: Setup Graphviz
uses: ts-graphviz/setup-graphviz@c001ccfb5aff62e28bda6a6c39b59a7e061be5b9
- run: ./gradlew -Pversion=${{ github.ref_name }} alljavadoc
working-directory: sdk
- run: rsync -r sdk/build/docs/javadoc/ doc/javadoc
- uses: stefanzweifel/git-auto-commit-action@e8f94e4dd298db5a6a2aa2d42fe0bcef6f2c9660
with:
repository: doc
commit_message: "Update javadoc"
commit_author: ct-sdks[bot] <${{ steps.get_app_user.outputs.email }}>
commit_user_name: ct-sdks[bot]
commit_user_email: ${{ steps.get_app_user.outputs.email }}