[Snyk] Fix for 1 vulnerabilities #21
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: OpenAPI dev mode check | |
# **What it does**: Checks that the files in lib/rest/static/decorated match | |
# the files in lib/rest/static/dereferenced. Checks that the decorated | |
# schemas in lib/rest/static/decorated are not in development mode. | |
# Development mode schemas have a branch name and development mode tag in the | |
# info.version property. | |
# **Why we have it**: To ensure that we aren't every shipping decorated schemas | |
# that are out of sync with the source derefereced schema. To ensure that | |
# decorated schemas generated locally are not published. Locally generated | |
# decorated schemas are pushing up to the remote for staging purposes only. | |
# **Who does it impact**: Docs content writers updating REST API docs and | |
# the docs engineering team as maintainers of the scripts and workflows. | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
pull_request: | |
paths: | |
- 'lib/rest/static/**' | |
- 'script/rest/**/*.js' | |
- 'script/rest/**/*.json' | |
- 'package*.json' | |
- 'lib/redirects/static/**/*.json' | |
- '.github/workflows/openapi-schema-check.yml' | |
permissions: | |
contents: read | |
# 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: | |
check-schema-versions: | |
if: ${{ github.repository == 'github/docs-internal' }} | |
runs-on: ubuntu-20.04-xl | |
steps: | |
- name: Checkout repository code | |
uses: actions/checkout@dcd71f646680f2efd8db4afa5ad64fdcba30e748 | |
- name: Setup node | |
uses: actions/setup-node@17f8bd926464a1afa4c6a11669539e9c1ba77048 | |
with: | |
node-version: '16.15.0' | |
cache: npm | |
- name: Install dependencies | |
run: npm ci | |
# Differences between decorated and dereferenced files indicates a problem | |
- name: Generate decorated files to check that there are no differences | |
run: script/rest/update-files.js --decorate-only | |
- name: Check if deref/decorated schemas are dev mode and that they match | |
run: .github/actions-scripts/openapi-schema-branch.js |