2
0
mirror of https://gitlab.isc.org/isc-projects/kea synced 2025-08-31 14:05:33 +00:00

[#2822] add check-for-json-errors-in-doc.sh to CI

This commit is contained in:
Andrei Pavel
2023-05-13 18:02:05 +03:00
parent b554368e0c
commit 14bcae7fac
2 changed files with 28 additions and 8 deletions

View File

@@ -112,6 +112,16 @@ shellcheck:
- SCRIPTS+="tools/tests_in_valgrind.sh "
- shellcheck ${SCRIPTS} ${SHELLCHECK_OPTS}
are-database-scripts-in-sync:
stage: test
script:
- ./src/share/database/scripts/utils/are-scripts-in-sync.py
check-for-json-errors-in-doc:
stage: test
script:
- ./tools/check-for-json-errors-in-doc.sh
danger:
stage: test
before_script:
@@ -122,12 +132,6 @@ danger:
script:
- danger --fail-on-errors=true --new-comment
dhcpdb_create-upgrade-consistency:
allow_failure: false
stage: test
script:
- ./src/share/database/scripts/utils/are-scripts-in-sync.py
duplicate-includes:
stage: test
script:

View File

@@ -1,14 +1,26 @@
#!/bin/bash
# Usage:
# check-for-json-errors-in-doc.sh [--all] [<file1>, <file2>, ...]
# Change directory to the root of the repository.
script_path=$(cd "$(dirname "${0}")" && pwd)
cd "${script_path}/.."
# Parse parameters.
if test ${#} -gt 0; then
files="${*}"
if test "${1}" = '--all'; then
files='doc src'
else
files="${*}"
fi
else
files='doc src'
# By default, check only modified files.
files=$(git diff --name-only $(git merge-base origin/master HEAD))
fi
exit_code=0
# Get the files.
files=$(find ${files} -type f \( -name '*.rst' -or -name '*.json' \) -and -not -path '*/_build/*' -and -not -path '*/man/*' | sort)
work_file=$(mktemp)
@@ -48,6 +60,7 @@ for file in $files; do
echo "===start of JSON block==="
cat $work_file
echo "====end of JSON block===="
exit_code=1
fi
fi
if [ $comment -eq 0 -a $json -eq 1 ]; then
@@ -86,7 +99,10 @@ for file in $files; do
echo "===start of JSON block==="
cat $work_file
echo "====end of JSON block===="
exit_code=1
fi
fi
done
rm $work_file
exit ${exit_code}