mirror of
https://github.com/misskey-dev/misskey.git
synced 2026-07-27 11:34:40 +02:00
fix(gh): check-misskey-js-autogenが失敗する問題を修正 (#17809)
* fix(gh): check-misskey-js-autogenが失敗する問題を修正 * fix comment * fix
This commit is contained in:
73
.github/workflows/check-misskey-js-autogen.comment.yml
vendored
Normal file
73
.github/workflows/check-misskey-js-autogen.comment.yml
vendored
Normal file
@@ -0,0 +1,73 @@
|
||||
name: Check Misskey JS autogen (comment)
|
||||
|
||||
on:
|
||||
workflow_run:
|
||||
types: [completed]
|
||||
workflows:
|
||||
- Check Misskey JS autogen # check-misskey-js-autogen.yml
|
||||
|
||||
jobs:
|
||||
comment-misskey-js-autogen:
|
||||
runs-on: ubuntu-latest
|
||||
# No code is cloned or executed here, so it is safe to hold pull-requests: write
|
||||
if: ${{ github.event.workflow_run.event == 'pull_request' }}
|
||||
permissions:
|
||||
actions: read
|
||||
pull-requests: write
|
||||
|
||||
steps:
|
||||
# The result is missing when the run failed before the check job (e.g. the PR does not build), so do not fail here
|
||||
- name: Download result
|
||||
id: download-result
|
||||
continue-on-error: true
|
||||
uses: actions/download-artifact@v8
|
||||
with:
|
||||
name: misskey-js-autogen-result
|
||||
path: result
|
||||
github-token: ${{ github.token }}
|
||||
repository: ${{ github.repository }}
|
||||
run-id: ${{ github.event.workflow_run.id }}
|
||||
|
||||
# The artifact comes from a run that built fork code, so validate it before using
|
||||
- name: Load result
|
||||
id: load-result
|
||||
if: steps.download-result.outcome == 'success'
|
||||
run: |
|
||||
pr_number="$(cat result/pr-number)"
|
||||
changes="$(cat result/changes)"
|
||||
|
||||
case "$pr_number" in
|
||||
''|*[!0-9]*) echo "invalid pr number"; exit 1;;
|
||||
esac
|
||||
case "$changes" in
|
||||
true|false) ;;
|
||||
*) echo "invalid result"; exit 1;;
|
||||
esac
|
||||
|
||||
echo "pr-number=$pr_number" >> "$GITHUB_OUTPUT"
|
||||
echo "changes=$changes" >> "$GITHUB_OUTPUT"
|
||||
|
||||
- name: send message
|
||||
if: steps.load-result.outputs.changes == 'true'
|
||||
uses: thollander/actions-comment-pull-request@v3
|
||||
with:
|
||||
pr-number: ${{ steps.load-result.outputs.pr-number }}
|
||||
comment-tag: check-misskey-js-autogen
|
||||
message: |-
|
||||
Thank you for sending us a great Pull Request! 👍
|
||||
Please regenerate misskey-js type definitions! 🙏
|
||||
|
||||
example:
|
||||
```sh
|
||||
pnpm run build-misskey-js-with-types
|
||||
```
|
||||
|
||||
- name: send message
|
||||
if: steps.load-result.outputs.changes == 'false'
|
||||
uses: thollander/actions-comment-pull-request@v3
|
||||
with:
|
||||
pr-number: ${{ steps.load-result.outputs.pr-number }}
|
||||
comment-tag: check-misskey-js-autogen
|
||||
mode: delete
|
||||
message: "Thank you!"
|
||||
create_if_not_exists: false
|
||||
43
.github/workflows/check-misskey-js-autogen.yml
vendored
43
.github/workflows/check-misskey-js-autogen.yml
vendored
@@ -1,7 +1,8 @@
|
||||
# this name is used in check-misskey-js-autogen.comment.yml so be careful when change name
|
||||
name: Check Misskey JS autogen
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
- develop
|
||||
@@ -10,7 +11,6 @@ on:
|
||||
- packages/backend/**
|
||||
|
||||
jobs:
|
||||
# pull_request_target safety: permissions: read-all, and there are no secrets used in this job
|
||||
generate-misskey-js:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
@@ -58,7 +58,6 @@ jobs:
|
||||
name: generated-misskey-js
|
||||
path: packages/misskey-js/generator/built/autogen
|
||||
|
||||
# pull_request_target safety: permissions: read-all, and no user codes are executed
|
||||
get-actual-misskey-js:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
@@ -78,12 +77,11 @@ jobs:
|
||||
name: actual-misskey-js
|
||||
path: packages/misskey-js/src/autogen
|
||||
|
||||
# pull_request_target safety: nothing is cloned from repository
|
||||
comment-misskey-js-autogen:
|
||||
check-misskey-js-autogen:
|
||||
runs-on: ubuntu-latest
|
||||
needs: [generate-misskey-js, get-actual-misskey-js]
|
||||
permissions:
|
||||
pull-requests: write
|
||||
contents: read
|
||||
steps:
|
||||
- name: download generated-misskey-js
|
||||
uses: actions/download-artifact@v8
|
||||
@@ -111,28 +109,21 @@ jobs:
|
||||
- name: Print full diff
|
||||
run: cat ./misskey-js.diff
|
||||
|
||||
- name: send message
|
||||
if: steps.check-changes.outputs.changes == 'true'
|
||||
uses: thollander/actions-comment-pull-request@v3
|
||||
with:
|
||||
comment-tag: check-misskey-js-autogen
|
||||
message: |-
|
||||
Thank you for sending us a great Pull Request! 👍
|
||||
Please regenerate misskey-js type definitions! 🙏
|
||||
# A fork's pull_request token cannot comment, so hand the result to check-misskey-js-autogen.comment.yml
|
||||
- name: Save result
|
||||
env:
|
||||
PR_NUMBER: ${{ github.event.pull_request.number }}
|
||||
CHANGES: ${{ steps.check-changes.outputs.changes }}
|
||||
run: |
|
||||
mkdir -p result
|
||||
echo "$PR_NUMBER" > result/pr-number
|
||||
echo "$CHANGES" > result/changes
|
||||
|
||||
example:
|
||||
```sh
|
||||
pnpm run build-misskey-js-with-types
|
||||
```
|
||||
|
||||
- name: send message
|
||||
if: steps.check-changes.outputs.changes == 'false'
|
||||
uses: thollander/actions-comment-pull-request@v3
|
||||
- name: Upload result
|
||||
uses: actions/upload-artifact@v7
|
||||
with:
|
||||
comment-tag: check-misskey-js-autogen
|
||||
mode: delete
|
||||
message: "Thank you!"
|
||||
create_if_not_exists: false
|
||||
name: misskey-js-autogen-result
|
||||
path: result
|
||||
|
||||
- name: Make failure if changes are detected
|
||||
if: steps.check-changes.outputs.changes == 'true'
|
||||
|
||||
Reference in New Issue
Block a user