Skip to content

Commit 8b8b25c

Browse files
authored
fix(docs): docs published with incorrect version number + api docs missing after release (#1066)
1 parent bafed02 commit 8b8b25c

File tree

3 files changed

+57
-7
lines changed

3 files changed

+57
-7
lines changed

Diff for: .github/workflows/on-merge-to-main.yml

+2
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ jobs:
1818
secrets:
1919
token: ${{ secrets.GITHUB_TOKEN }}
2020
run-unit-tests:
21+
needs: get_pr_details
22+
if: ${{ needs.get_pr_details.outputs.prIsMerged == 'true' }}
2123
uses: ./.github/workflows/reusable-run-unit-tests.yml
2224
publish:
2325
needs:

Diff for: .github/workflows/publish-docs-on-release.yml

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: Publish docs on release
2+
3+
on:
4+
# Triggered manually
5+
workflow_dispatch:
6+
inputs:
7+
versionNumber:
8+
required: true
9+
type: string
10+
description: "If running this manually please insert a version number that corresponds to the latest published in the GitHub releases (i.e. v1.1.1)"
11+
# Or triggered as result of a release
12+
release:
13+
types: [released]
14+
15+
jobs:
16+
publish-docs:
17+
uses: ./.github/workflows/reusable-publish-docs.yml
18+
with:
19+
workflow_origin: ${{ github.event.repository.full_name }}
20+
isRelease: "true"
21+
versionNumber: ${{ inputs.versionNumber }}
22+
secrets:
23+
token: ${{ secrets.GITHUB_TOKEN }}

Diff for: .github/workflows/reusable-publish-docs.yml

+32-7
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Publish docs
1+
name: Reusable Publish docs
22

33
on:
44
workflow_call:
@@ -14,14 +14,18 @@ on:
1414
required: false
1515
default: "false"
1616
type: string
17+
versionNumber:
18+
required: false
19+
default: ""
20+
type: string
1721
secrets:
1822
token:
1923
required: true
2024

2125
jobs:
2226
publish-docs:
2327
# see https://github.com/awslabs/aws-lambda-powertools-python/issues/1349
24-
if: inputs.workflow_origin == 'awslabs/aws-lambda-powertools-typescript'
28+
if: ${{ inputs.workflow_origin == 'awslabs/aws-lambda-powertools-typescript' }}
2529
runs-on: ubuntu-latest
2630
steps:
2731
- name: Checkout code
@@ -56,17 +60,30 @@ jobs:
5660
python-version: "3.8"
5761
# We run this step only when the workflow has been triggered by a release
5862
# in this case we publish the docs to `/latest`
59-
- name: Set RELEASE_VERSION env var to `latest`
63+
- name: (Conditional) Set RELEASE_VERSION env var to `latest`
6064
if: ${{ inputs.isRelease == 'true' }}
6165
run: |
62-
RELEASE_VERSION=$(cat packages/commons/package.json | jq '.version' -r)
63-
echo "RELEASE_VERSION=${RELEASE_VERSION}" >> $GITHUB_ENV
66+
RELEASE_VERSION=$(echo ${{ github.ref_name }} | sed 's/v//')
67+
EXPLICIT_RELEASE_VERSION=$(echo ${{ inputs.versionNumber }} | sed 's/v//')
68+
if [ $EXPLICIT_RELEASE_VERSION != "" ]; then
69+
echo "RELEASE_VERSION=${EXPLICIT_RELEASE_VERSION}"
70+
echo "RELEASE_VERSION=${EXPLICIT_RELEASE_VERSION}" >> $GITHUB_ENV
71+
else
72+
echo "RELEASE_VERSION=${RELEASE_VERSION}"
73+
echo "RELEASE_VERSION=${RELEASE_VERSION}" >> $GITHUB_ENV
74+
fi
6475
# We run this step only when the workflow has been triggered by a PR merge
6576
# in this case we publish the docs to `/dev`
66-
- name: Set RELEASE_VERSION env var to `dev`
77+
- name: (Conditional) Set RELEASE_VERSION env var to `dev`
6778
if: ${{ inputs.prIsMerged == 'true' }}
6879
run: |
6980
echo "RELEASE_VERSION=dev" >> $GITHUB_ENV
81+
- name: Check RELEASE_VERSION env var
82+
if: ${{ env.RELEASE_VERSION == '' }}
83+
uses: actions/github-script@v3
84+
with:
85+
script: |
86+
core.setFailed('RELEASE_VERSION env var is empty.')
7087
- name: Install doc generation dependencies
7188
run: |
7289
pip install --upgrade pip
@@ -75,7 +92,7 @@ jobs:
7592
run: |
7693
git config --global user.name Docs deploy
7794
git config --global user.email [email protected]
78-
- name: Publish docs to latest
95+
- name: Publish docs to latest if isRelease
7996
if: ${{ env.RELEASE_VERSION != 'dev' }}
8097
run: |
8198
rm -rf site
@@ -100,3 +117,11 @@ jobs:
100117
publish_dir: ./api
101118
keep_files: true
102119
destination_dir: ${{ env.RELEASE_VERSION }}/api
120+
- name: Release API docs to latest if isRelease
121+
if: ${{ env.RELEASE_VERSION != 'dev' }}
122+
uses: peaceiris/actions-gh-pages@v3
123+
with:
124+
github_token: ${{ secrets.GITHUB_TOKEN }}
125+
publish_dir: ./api
126+
keep_files: true
127+
destination_dir: latest/api

0 commit comments

Comments
 (0)