From be7e50875e206503a9afed2e1e4ed11fb3270e2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Franz=20P=C3=B6schel?= Date: Mon, 26 Jun 2023 16:33:45 +0200 Subject: [PATCH] Add GitHub workflow Verify all JSON-openPMD files written by testing against the schema --- .github/workflows/linux.yml | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 26eed48da1..ab1ebe4c0c 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -245,7 +245,7 @@ jobs: - name: Install run: | sudo apt-get update - sudo apt-get install g++ libopenmpi-dev libhdf5-openmpi-dev python3 python3-numpy python3-mpi4py python3-pandas + sudo apt-get install g++ libopenmpi-dev libhdf5-openmpi-dev python3 python3-numpy python3-mpi4py python3-pandas python3-pip # TODO ADIOS2 - name: Build env: {CXXFLAGS: -Werror, PKG_CONFIG_PATH: /usr/lib/x86_64-linux-gnu/pkgconfig} @@ -260,6 +260,22 @@ jobs: cd build ctest --output-on-failure + python3 -m pip install jsonschema + cd share/openPMD/json_schema + PATH="../../../build/bin:$PATH" make -j 2 + # We need to exclude the thetaMode example since that has a different + # meshesPath and the JSON schema needs to hardcode that. + find ../../../build/samples/ \ + ! -path '*thetaMode*' \ + ! -path '/*many_iterations/*' \ + ! -name 'profiling.json' \ + ! -name '*config.json' \ + -iname '*.json' \ + | while read i; do + echo "Checking $i" + ./check.py "$i" + done + musllinux_py10: runs-on: ubuntu-20.04 if: github.event.pull_request.draft == false