summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
authorjld3103 <jld3103yt@gmail.com>2023-08-11 14:36:14 +0200
committerJoas Schilling <coding@schilljs.com>2023-10-06 12:39:21 +0200
commit64cb988a418e420f49fac1edadfd25a0bc80e8ee (patch)
tree4e36e60cbd0cc5eab2655fdbe1298128d6f17f1b /.github
parent7c2346219ae829749602579b285acea9b7b1fbf2 (diff)
Add OpenAPI CI
Signed-off-by: jld3103 <jld3103yt@gmail.com>
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/openapi.yml52
1 files changed, 52 insertions, 0 deletions
diff --git a/.github/workflows/openapi.yml b/.github/workflows/openapi.yml
new file mode 100644
index 000000000..c186a100c
--- /dev/null
+++ b/.github/workflows/openapi.yml
@@ -0,0 +1,52 @@
+name: OpenAPI
+
+on:
+ pull_request:
+ push:
+ branches:
+ - master
+ - stable*
+
+permissions:
+ contents: read
+
+concurrency:
+ group: openapi-${{ github.head_ref || github.run_id }}
+ cancel-in-progress: true
+
+jobs:
+ openapi:
+ runs-on: ubuntu-latest
+
+ if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
+
+ - name: Set up php
+ uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d # v2
+ with:
+ php-version: '8.2'
+ extensions: xml
+ coverage: none
+ ini-file: development
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+
+ - name: Set up dependencies
+ run: composer i
+
+ - name: Regenerate OpenAPI
+ run: composer run openapi
+
+ - name: Check openapi.json changes
+ run: |
+ bash -c "[[ ! \"`git status --porcelain `\" ]] || (echo 'Please run \"composer run openapi\" and commit the openapi.json, see the section \"Show changes on failure\" for details' && exit 1)"
+
+ - name: Show changes on failure
+ if: failure()
+ run: |
+ git status
+ git --no-pager diff
+ exit 1 # make it red to grab attention