diff --git a/.github/workflows/check-docs.yml b/.github/workflows/check-docs.yml index de182b3eeb0..4afd97a131f 100644 --- a/.github/workflows/check-docs.yml +++ b/.github/workflows/check-docs.yml @@ -22,26 +22,34 @@ jobs: runs-on: ubuntu-latest steps: - - name: Checkout Repo - uses: actions/checkout@v4 - with: - # get all history for the diff - fetch-depth: 0 - - name: Set up Node (20) - uses: actions/setup-node@v4 - with: - node-version: 22.10.0 - - name: Yarn install - run: yarn - - name: Run doc generation - run: yarn docgen:all - - name: Check for changes in docs-devsite dir (fail if so) - run: | - if [[ -n "$(git status docs-devsite --porcelain)" ]]; then - echo "Unstaged changes detected:" - git status -s - exit 1 - fi - - name: Reference documentation needs to be updated. See message below. - if: ${{ failure() }} - run: echo "Changes in this PR affect the reference docs. Run \`yarn docgen:all\` locally to regenerate docs and add them to this PR." \ No newline at end of file + - name: Checkout Repo + uses: actions/checkout@v4 + with: + # get all history for the diff + fetch-depth: 0 + - name: Set up Node (20) + uses: actions/setup-node@v4 + with: + node-version: 22.10.0 + - name: Yarn install + run: yarn + - name: Run doc generation + run: yarn docgen:all + # Fail first if there are docs-devsite changes since running yarn docgen:all + # will also regenerate any API report changes. + - name: Check for changes in docs-devsite dir (fail if so) + run: | + if [[ -n "$(git status docs-devsite --porcelain)" ]]; then + echo "Unstaged changes detected in docs-devsite/:" + git status -s + echo "Changes in this PR affect the reference docs or API reports. Run \`yarn docgen:all\` locally to regenerate the changed files and add them to this PR." + exit 1 + fi + - name: Check for changes in common/api-review dir (fail if so) + run: | + if [[ -n "$(git status common/api-review --porcelain)" ]]; then + echo "Unstaged changes detected in api-report(s):" + git status -s + echo "Changes in this PR affect the API reports. Run \`yarn build\` locally to regenerate the API reports and add them to this PR." + exit 1 + fi diff --git a/.github/workflows/update-api-reports.yml b/.github/workflows/update-api-reports.yml deleted file mode 100644 index c961889de98..00000000000 --- a/.github/workflows/update-api-reports.yml +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright 2023 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -name: Update API reports - -on: pull_request - -jobs: - update_api_reports: - name: Update API reports - runs-on: ubuntu-latest - - permissions: - contents: write - steps: - - name: Checkout Repo - uses: actions/checkout@v4 - with: - # checkout HEAD commit instead of merge commit - ref: ${{ github.event.pull_request.head.ref }} - token: ${{ github.token }} - - name: Set up node (20) - uses: actions/setup-node@v4 - with: - node-version: 22.10.0 - - name: Yarn install - run: yarn - - name: Update API reports - # API reports are generated as part of the build - run: yarn build - id: update-api-reports - - name: Commit & Push changes - uses: EndBug/add-and-commit@v9 - with: - add: 'common/api-review/*' - message: 'Update API reports' - default_author: github_actor \ No newline at end of file