-
Notifications
You must be signed in to change notification settings - Fork 39
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
77 additions
and
7 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
#!/bin/bash | ||
# Validate the XML file structure and lint XSD and XML files, e.g. indentation | ||
# | ||
# You need the binary `xmllint` | ||
# apt-get install libxml2-utils | ||
|
||
# The -e flag causes the script to exit as soon as one command returns a non-zero exit code | ||
set -e | ||
|
||
echo "Validating XML file structure and linting XSD and XML files ..." | ||
|
||
PARSING_ERROR=0 | ||
# Iterate all XML and XSD files | ||
while IFS= read -r -d $'\0' filename; do | ||
# Prettify the file using xmllint and save the result to ${filename}.pretty | ||
if XMLLINT_INDENT=$'\t' xmllint --encode UTF-8 --pretty 1 "${filename}" >"${filename}.pretty"; then | ||
# Remove lines containing the term "xmlspy" to get rid of advertising this and save the result as ${filename} | ||
grep -i -v "xmlspy" "${filename}.pretty" >"${filename}" | ||
else | ||
PARSING_ERROR=$? | ||
echo -e "\033[0;Validating XML structure of file '${filename}' failed\033[0m" | ||
fi | ||
# Remove temp file | ||
rm "${filename}.pretty" | ||
done < <(/usr/bin/find . -type f \( -name "*.xsd" -or -name "*.xml" \) -print0) | ||
|
||
if [ ${PARSING_ERROR} -ne 0 ]; then | ||
exit ${PARSING_ERROR} | ||
fi | ||
echo -e '\033[0;32mFinished validating XML file structure and linting XSD and XML files\033[0m' |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
#!/bin/bash | ||
# Validate all OJP XML examples from the examples/ directory against the OJP XSD schema | ||
# | ||
# You need the binary `xmllint` | ||
# apt-get install libxml2-utils | ||
|
||
# The -e flag causes the script to exit as soon as one command returns a non-zero exit code | ||
set -e | ||
|
||
echo "Validating NeTEx XML examples ..." | ||
|
||
if xmllint --noout --schema xsd/NeTEx_publication.xsd examples/functions/calendar/*xml examples/functions/fares/*xml examples/functions/grouping/*xml examples/functions/newModes/*xml examples/functions/patterns/*xml examples/functions/pointOfInterest/*xml examples/functions/simpleNetwork/*xml examples/functions/site/*xml examples/functions/stopPlace/*xml examples/functions/timetable/*xml examples/functions/validityCondition/*xml examples/functions/variant/*xml examples/functions/vehicleSchedule/*xml examples/functions/versioning/*xml examples/standards/epip/*xml examples/standards/era_uic/*xml examples/standards/fxc/*xml examples/standards/gbfs/*xml examples/standards/gtfs/*xml examples/standards/neptune/*xml examples/standards/noptis/*xml examples/standards/tap_tsi/*xml examples/standards/txc/*xml examples/standards/vdv452/*/*xml examples/standards/vdv452/*/*/*xml; then | ||
echo -e '\033[0;32mValidating NeTEx XML examples succeeded\033[0m' | ||
else | ||
echo -e '\033[0;31mValidating NeTEx XML examples failed\033[0m' | ||
exit 1 | ||
fi |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
name: CI | ||
|
||
on: push | ||
|
||
jobs: | ||
run: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- run: echo "Job was automatically triggered by a ${{ github.event_name }} event for branch ${{ github.ref }}" | ||
|
||
- name: Check out repository code | ||
uses: actions/checkout@v3 | ||
|
||
- name: Install xmllint and xsltproc | ||
run: | | ||
sudo apt-get update | ||
sudo apt-get install libxml2-utils xsltproc | ||
- name: Validate structure and lint XSD and XML files | ||
run: ./.github/scripts/validate-and-lint.sh | ||
|
||
- name: Validate NeTEx XML examples | ||
run: ./.github/scripts/validate-examples.sh | ||
|
||
- name: Commit changes | ||
uses: EndBug/add-and-commit@v9 # https://github.com/marketplace/actions/add-commit | ||
with: | ||
default_author: github_actions | ||
message: 'Lint and update documentation tables' |
This file was deleted.
Oops, something went wrong.