Skip to content

Merge pull request #717 from commercetools/gen-sdk-updates #201

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

Merge pull request #717 from commercetools/gen-sdk-updates #201

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@a5ac7e51b41094c92402da3b24376905380afc29 # v4
- uses: gradle/wrapper-validation-action@216d1ad2b3710bf005dc39237337b9673fd8fcd5 # v3.3.2
- name: Setup Java
uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9 # v4
with:
distribution: 'temurin'
java-version: '17'
- name: Setup Graphviz
uses: ts-graphviz/setup-graphviz@b1de5da23ed0a6d14e0aeee8ed52fdd87af2363c # v2.0.2
- 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
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@a0de6af83968303c8c955486bf9739a57d23c7f1 # 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@a5ac7e51b41094c92402da3b24376905380afc29 # v4
with:
ref: main
token: ${{ steps.generate_github_token.outputs.token }}
- uses: gradle/wrapper-validation-action@216d1ad2b3710bf005dc39237337b9673fd8fcd5 # v3.3.2
- run: ./gradlew -Pversion=${{ github.ref_name }} writeVersionToExamples writeVersionToReadme setVersion nextMinorVersion snapshotVersion
- name: "Switch SDK to after release branch"
run: |
git fetch --depth=1 origin after-release || true
git checkout -B after-release origin/after-release || true
git checkout -B after-release
git log -1
- 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@8621497c8c39c72f3e2a999a26b4ca1b5058a842 # v5.0.1
with:
branch: after-release
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
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@a0de6af83968303c8c955486bf9739a57d23c7f1 # 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@a5ac7e51b41094c92402da3b24376905380afc29 # v4
with:
path: sdk
token: ${{ steps.generate_github_token.outputs.token }}
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4
with:
path: doc
ref: gh-pages
token: ${{ steps.generate_github_token.outputs.token }}
- name: Setup Java
uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9 # v4
with:
distribution: 'temurin'
java-version: '17'
- name: Setup Graphviz
uses: ts-graphviz/setup-graphviz@b1de5da23ed0a6d14e0aeee8ed52fdd87af2363c # v2.0.2
- 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@8621497c8c39c72f3e2a999a26b4ca1b5058a842 # v5.0.1
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 }}