generate api pages #20
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: generate api pages | |
on: | |
workflow_dispatch: | |
inputs: | |
tag: | |
description: 'Netbird release tag version' | |
required: true | |
default: "refs/tags/vX.Y.Z" | |
type: string | |
jobs: | |
generate_api_pages: | |
runs-on: macos-latest | |
steps: | |
- name: Parse tag input | |
id: semver_parser | |
uses: booxmedialtd/ws-action-parse-semver@v1 | |
with: | |
input_string: ${{ github.event.inputs.tag }} | |
version_extractor_regex: '\/v(.*)$' | |
- uses: actions/checkout@v2 | |
- name: Install swagger-codegen | |
run: brew install swagger-codegen | |
- name: Npm install | |
run: npm install | |
- name: Generate api pages for netbird main openapi definition | |
run: | | |
swagger-codegen generate -i https://raw.githubusercontent.com/netbirdio/netbird/v${{ steps.semver_parser.outputs.fullversion }}/management/server/http/api/openapi.yml -l openapi -o generator/openapi | |
npx ts-node generator/index.ts gen --input generator/openapi/openapi.json --output src/pages/ipa/resources | |
- name: Check git diff and send to output | |
id: git_diff | |
run: | | |
if git --no-pager diff --exit-code; then | |
echo "changed=false" >> "$GITHUB_OUTPUT" | |
else | |
echo "changed=true" >> "$GITHUB_OUTPUT" | |
fi | |
- name: Commit and push changes | |
if: steps.git_diff.outputs.changed == 'true' | |
run: | | |
git config --global user.email "[email protected]" | |
git config --global user.name "netbirddev" | |
git add -A | |
git commit -m "Update API pages with v${{ steps.semver_parser.outputs.fullversion }}" | |
git remote set-url origin https://netbirddev:${{ secrets.DEV_GITHUB_TOKEN }}@github.com/${{ github.repository }} | |
git push --force |