mirror of
https://github.com/Unleash/unleash.git
synced 2025-09-01 13:47:27 +02:00
chore: improve openapi diff output (#10570)
This will output the comment of openapi diffs in proper markdown format.
This commit is contained in:
parent
8364498c22
commit
091aa2e8e9
14
.github/workflows/openapi-diff.yaml
vendored
14
.github/workflows/openapi-diff.yaml
vendored
@ -1,5 +1,9 @@
|
||||
name: OpenAPI Diff
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
@ -121,16 +125,20 @@ jobs:
|
||||
id: diff
|
||||
run: |
|
||||
docker run --rm -t -v $(pwd):/specs:ro tufin/oasdiff changelog --format markdown /specs/openapi-stable.json /specs/openapi-current.json > openapi-diff.txt || true
|
||||
# then output in a format that can be used in GitHub Actions
|
||||
# then output in a format that is useful when you go inside the job output
|
||||
docker run --rm -t -v $(pwd):/specs:ro tufin/oasdiff changelog --format githubactions /specs/openapi-stable.json /specs/openapi-current.json
|
||||
- name: Show OpenAPI diff
|
||||
if: github.event_name != 'pull_request'
|
||||
run: cat openapi-diff.txt
|
||||
- name: Comment on PR with OpenAPI diff
|
||||
if: github.event_name == 'pull_request'
|
||||
uses: actions/github-script@v7
|
||||
with:
|
||||
script: |
|
||||
const fs = require('fs');
|
||||
const diff = fs.readFileSync('openapi-diff.txt', 'utf8');
|
||||
const diffLines = diff.split('\n').filter(line => line.trim() !== '' && !line.startsWith('#')).length;
|
||||
const marker = '### OpenAPI Diff';
|
||||
const marker = '[//]: # (OpenAPI diff - used to identify the comment)';
|
||||
// Get all comments on the PR
|
||||
const { data: comments } = await github.rest.issues.listComments({
|
||||
issue_number: context.issue.number,
|
||||
@ -144,7 +152,7 @@ jobs:
|
||||
body = `${marker} too long, check the this task output for details.`;
|
||||
console.log(diff);
|
||||
} else if (diffLines > 0) {
|
||||
body = `${marker}\n\n\`\`\`diff\n${diff}\n\`\`\``;
|
||||
body = `${marker}\n${diff}`;
|
||||
} else {
|
||||
body = null;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user