Skip to content

Commit 3b580e5

Browse files
committed
Make javadoc branch name predictable; Automatically merge on perform-release
1 parent 9ea19cf commit 3b580e5

2 files changed

Lines changed: 30 additions & 7 deletions

File tree

.github/workflows/javadoc.yaml

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,11 @@ jobs:
3939
distribution: 'temurin'
4040
cache: 'maven'
4141

42-
- name: "Determine Major Version"
43-
id: determine-major-version
44-
run: echo "MAJOR_VERSION=$(jq -r '.version' latest.json | cut -d '.' -f 1)" >> $GITHUB_OUTPUT
42+
- name: "Determine Versions"
43+
id: determine-version
44+
run: |
45+
echo "MAJOR_VERSION=$(jq -r '.version' latest.json | cut -d '.' -f 1)" >> $GITHUB_OUTPUT
46+
echo "CURRENT_VERSION=$(jq -r '.version' latest.json" >> $GITHUB_OUTPUT
4547
4648
- name: "Install project (skip tests)"
4749
run: mvn install -DskipTests --quiet
@@ -65,7 +67,7 @@ jobs:
6567
- name: "Replace JavaDoc"
6668
id: replace-javadoc
6769
run: |
68-
TARGET_DIR=./.cloud-sdk-docs/static/java-api/v${{ steps.determine-major-version.outputs.MAJOR_VERSION }}
70+
TARGET_DIR=./.cloud-sdk-docs/static/java-api/v${{ steps.determine-version.outputs.MAJOR_VERSION }}
6971
7072
ls -lA target
7173
rm -rf $TARGET_DIR
@@ -83,11 +85,11 @@ jobs:
8385
fi
8486
8587
echo "CREATE_PR=true" >> $GITHUB_OUTPUT
86-
BRANCH_NAME=java/release-docs-${{ steps.determine-major-version.outputs.MAJOR_VERSION }}
88+
BRANCH_NAME=java/release-docs-${{ steps.determine-version.outputs.CURRENT_VERSION }}
8789
echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_OUTPUT
8890
8991
git switch --create $BRANCH_NAME
90-
git commit -m "chore: Update JavaDocs for release ${{ needs.bump-version.outputs.release-version }}"
92+
git commit -m "chore: Update JavaDocs for release ${{ steps.determine-version.outputs.CURRENT_VERSION }}"
9193
COMMIT_SHA=$(git log -1 --pretty=format:"%H")
9294
echo "COMMIT_SHA=$COMMIT_SHA" >> $GITHUB_OUTPUT
9395
@@ -99,7 +101,7 @@ jobs:
99101
working-directory: ./.cloud-sdk-docs
100102
run: |
101103
PR_TITLE="Java: Update JavaDocs for release ${{ needs.bump-version.outputs.release-version }}"
102-
PR_BODY="Replace the contents of v${{ steps.determine-major-version.outputs.MAJOR_VERSION }} API docs with the latest release of the SDK."
104+
PR_BODY="Replace the contents of v${{ steps.determine-version.outputs.MAJOR_VERSION }} API docs with the latest release of the SDK."
103105
104106
PR_URL=$(gh pr create --title "$PR_TITLE" --body "$PR_BODY" --repo "${{ env.DOCS_REPO }}")
105107
echo "PR_URL=$PR_URL" >> $GITHUB_OUTPUT

.github/workflows/perform-release.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ jobs:
2424
code-branch: ${{ steps.determine-branch-names.outputs.CODE_BRANCH_NAME }}
2525
docs-branch: ${{ steps.determine-branch-names.outputs.DOCS_BRANCH_NAME }}
2626
release-notes-branch: ${{ steps.determine-branch-names.outputs.RELEASE_NOTES_BRANCH_NAME }}
27+
release-javadoc-branch: ${{ steps.determine-branch-names.outputs.RELEASE_JAVADOC_BRANCH_NAME }}
2728
release-tag: ${{ steps.determine-branch-names.outputs.RELEASE_TAG }}
2829
release-commit: ${{ steps.determine-branch-names.outputs.RELEASE_COMMIT }}
2930
permissions: write-all # contents and push are needed to see the draft release
@@ -37,12 +38,14 @@ jobs:
3738
RELEASE_TAG=rel/$RELEASE_VERSION
3839
RELEASE_COMMIT=$(gh release view $RELEASE_TAG --repo ${{github.repository}} --json targetCommitish --jq '.targetCommitish')
3940
RELEASE_NOTES_BRANCH_NAME=java/release-notes-$RELEASE_VERSION
41+
RELEASE_JAVADOC_BRANCH_NAME=java/release-docs-$RELEASE_VERSION
4042
4143
echo "CODE_BRANCH_NAME=$CODE_BRANCH_NAME" >> $GITHUB_OUTPUT
4244
echo "RELEASE_VERSION=$RELEASE_VERSION" >> $GITHUB_OUTPUT
4345
echo "RELEASE_TAG=$RELEASE_TAG" >> $GITHUB_OUTPUT
4446
echo "RELEASE_COMMIT=$RELEASE_COMMIT" >> $GITHUB_OUTPUT
4547
echo "RELEASE_NOTES_BRANCH_NAME=$RELEASE_NOTES_BRANCH_NAME" >> $GITHUB_OUTPUT
48+
echo "RELEASE_JAVADOC_BRANCH_NAME=$RELEASE_JAVADOC_BRANCH_NAME" >> $GITHUB_OUTPUT
4649
4750
echo -e "[DEBUG] Current GITHUB_OUTPUT:\n$(cat $GITHUB_OUTPUT)"
4851
env:
@@ -82,6 +85,18 @@ jobs:
8285
\"Build Cloud SDK Documentation\": [\"dependabot\"]
8386
}
8487
88+
- name: "Check Whether JavaDoc PR Can Be Merged"
89+
if: ${{ inputs.skip-pr-merge != 'true' }}
90+
uses: ./.github/actions/pr-is-mergeable
91+
with:
92+
pr-ref: ${{ steps.determine-branch-names.outputs.RELEASE_JAVADOC_BRANCH_NAME }}
93+
repo: ${{ env.DOCS_REPO }}
94+
token: ${{ secrets.BOT_SDK_JS_FOR_DOCS_REPO_PR }}
95+
excluded-check-runs: |
96+
{
97+
\"Build Cloud SDK Documentation\": [\"dependabot\"]
98+
}
99+
85100
release:
86101
name: "Release"
87102
needs: [ prerequisites ]
@@ -136,5 +151,11 @@ jobs:
136151
- name: "Merge Release Notes PR"
137152
if: ${{ inputs.skip-pr-merge != 'true' }}
138153
run: gh pr merge --squash "${{ needs.prerequisites.outputs.release-notes-branch }}" --delete-branch --repo "${{ env.DOCS_REPO }}"
154+
env:
155+
GH_TOKEN: ${{ secrets.BOT_SDK_JS_FOR_DOCS_REPO_PR }}
156+
157+
- name: "Merge JavaDoc PR"
158+
if: ${{ inputs.skip-pr-merge != 'true' }}
159+
run: gh pr merge --squash "${{ needs.prerequisites.outputs.release-javadoc-branch }}" --delete-branch --repo "${{ env.DOCS_REPO }}"
139160
env:
140161
GH_TOKEN: ${{ secrets.BOT_SDK_JS_FOR_DOCS_REPO_PR }}

0 commit comments

Comments
 (0)