diff options
Diffstat (limited to 'build')
-rwxr-xr-x | build/openapi-checker.sh | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/build/openapi-checker.sh b/build/openapi-checker.sh new file mode 100755 index 00000000000..afe55c4a269 --- /dev/null +++ b/build/openapi-checker.sh @@ -0,0 +1,26 @@ +#!/usr/bin/env bash + +for path in core/openapi.json apps/*/openapi.json; do + composer exec generate-spec "$(dirname "$path")" "$path" || exit 1 +done + +files="$(git diff --name-only)" +changed=false +for file in $files; do + if [[ $file == *"openapi.json" ]]; then + changed=true + break + fi +done + +if [ $changed = true ] +then + git diff + echo "The OpenAPI specifications are not up to date" + echo "Please run: bash build/openapi-checker.sh" + echo "And commit the result" + exit 1 +else + echo "OpenAPI specifications up to date. Carry on" + exit 0 +fi |