Repo sync #152
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Content Changes Table Comment | |
# **What it does**: When a PR is opened in docs-internal or docs, it adds the staging review and live article links in a Content Directory Changes table in a comment | |
# **Why we have it**: To help Docs Content team members and contributors automatically have their staging/live article links added to the table | |
# **Who does it impact**: docs-internal/docs maintainers and contributors | |
on: | |
workflow_dispatch: | |
inputs: | |
PR_NUMBER: | |
description: 'PR Number' | |
type: string | |
required: true | |
BASE_SHA: | |
description: 'Base SHA' | |
type: string | |
required: true | |
default: 'main' | |
HEAD_SHA: | |
description: 'Head SHA (latest sha of the PR)' | |
type: string | |
required: true | |
# Required in lieu of `pull_request` so that the content changes tables can be posts to PRs opened from a fork. | |
pull_request_target: | |
types: | |
- opened | |
- synchronize | |
paths: | |
- 'content/**' | |
- 'data/**' | |
- 'assets/images/**' | |
permissions: | |
contents: read | |
pull-requests: write | |
# This allows a subsequently queued workflow run to interrupt previous runs | |
concurrency: | |
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}' | |
cancel-in-progress: true | |
jobs: | |
filterContentDir: | |
if: ${{ github.event.pull_request.user.login != 'docs-bot' && (github.repository == 'github/docs-internal' || github.repository == 'github/docs') }} | |
runs-on: ubuntu-latest | |
env: | |
PR_NUMBER: ${{ github.event.pull_request.number || inputs.PR_NUMBER }} | |
steps: | |
- name: check out repo content | |
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- uses: ./.github/actions/node-npm-setup | |
# We're setting the URLs manually until we merge in-progress work. We can utilize review server and its helper functions in a later iteration. | |
- name: Set APP_URL | |
run: | | |
if [[ "${{ github.repository }}" == "github/docs-internal" ]]; then | |
echo "APP_URL=https://docs-review.github.com" >> $GITHUB_ENV | |
elif [[ "${{ github.repository }}" == "github/docs" ]]; then | |
echo "APP_URL=https://os-docs-review.github.com" >> $GITHUB_ENV | |
fi | |
- name: Get changes table | |
id: changes | |
timeout-minutes: 30 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
REVIEW_SERVER_ACCESS_TOKEN: ${{ secrets.REVIEW_SERVER_ACCESS_TOKEN }} | |
APP_URL: ${{ env.APP_URL }} | |
BASE_SHA: ${{ github.event.pull_request.base.sha || inputs.BASE_SHA }} | |
HEAD_SHA: ${{ github.event.pull_request.head.sha || inputs.HEAD_SHA }} | |
# HEAD_BRANCH isn't necessary for the table comment, but lets us list the branch in the review server menu bar | |
HEAD_BRANCH: ${{ github.event.pull_request.head.ref }} | |
run: npm run content-changes-table-comment | |
- name: Find content directory changes comment | |
uses: peter-evans/find-comment@3eae4d37986fb5a8592848f6a574fdf654e61f9e | |
id: findComment | |
with: | |
issue-number: ${{ github.event.pull_request.number || inputs.PR_NUMBER }} | |
comment-author: 'github-actions[bot]' | |
body-includes: '<!-- MODIFIED_CONTENT_LINKING_COMMENT -->' | |
- name: Update comment on docs-internal | |
if: ${{github.repository == 'github/docs-internal' && steps.changes.outputs.changesTable != '' }} | |
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 | |
with: | |
comment-id: ${{ steps.findComment.outputs.comment-id }} | |
issue-number: ${{ github.event.pull_request.number || inputs.PR_NUMBER }} | |
body: | | |
<!-- MODIFIED_CONTENT_LINKING_COMMENT --> | |
### 👓 How to review these changes | |
Thank you for your contribution. To review these changes, you can: | |
1. [Spin up a codespace](https://github.com/github/docs-team/blob/main/contributing-to-docs/use-a-codespace-to-review.md). | |
1. [Set up a local development environment](https://docs.github.com/en/contributing/setting-up-your-environment-to-work-on-github-docs/creating-a-local-environment#setting-up-your-local-environment). | |
1. Message \`#docs-engineering\` on Slack for a staging server. | |
<details><summary>Table of review links</summary> | |
⚠️ **Warning**: Our review server is experiencing latency issues. | |
The table shows the files in the `content` directory that were changed in this pull request. This helps you review your changes on the review server. Changes to the `data` directory are not included in this table. If you have issues with the review server, please [let us know](https://github.com/github/docs-team/discussions/4889) and use one of the other options to review your changes. | |
${{ steps.changes.outputs.changesTable }} | |
--- | |
Key: **fpt**: Free, Pro, Team; **ghec**: GitHub Enterprise Cloud; **ghes**: GitHub Enterprise Server | |
_This table is posted from the [${{ github.workflow }}](https://github.com/${{ github.repository }}/blob/${{ github.sha }}/.github/workflows/comment-content-changes-table.yml) workflow._ | |
</details> | |
🤖 This comment is automatically generated. | |
edit-mode: replace | |
- name: Update comment on docs public | |
if: ${{github.repository == 'github/docs' && steps.changes.outputs.changesTable != '' }} | |
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 | |
with: | |
comment-id: ${{ steps.findComment.outputs.comment-id }} | |
issue-number: ${{ github.event.pull_request.number || inputs.PR_NUMBER }} | |
body: | | |
<!-- MODIFIED_CONTENT_LINKING_COMMENT --> | |
### 👓 How to review these changes | |
Thank you for your contribution. To review these changes, you can: | |
1. [Spin up a codespace](https://docs.github.com/en/contributing/setting-up-your-environment-to-work-on-github-docs/working-on-github-docs-in-a-codespace) | |
1. [Set up a local development environment](https://docs.github.com/en/contributing/setting-up-your-environment-to-work-on-github-docs/creating-a-local-environment#setting-up-your-local-environment) | |
A Hubber will need to deploy your changes internally to review. | |
<details><summary>Table of review links</summary> | |
⚠️ **Warning**: Our review server is experiencing latency issues. | |
The table shows the files in the `content` directory that were changed in this pull request. This helps you review your changes on the review server. Changes to the `data` directory are not included in this table. | |
${{ steps.changes.outputs.changesTable }} | |
--- | |
Key: **fpt**: Free, Pro, Team; **ghec**: GitHub Enterprise Cloud; **ghes**: GitHub Enterprise Server | |
_This table is posted from the [${{ github.workflow }}](https://github.com/${{ github.repository }}/blob/${{ github.sha }}/.github/workflows/comment-content-changes-table.yml) workflow._ | |
</details> | |
🤖 This comment is automatically generated. | |
edit-mode: replace |