Skip to content

refactor(autoware_pointcloud_preprocessor): make the concatenation core ROS-runtime-free #33641

refactor(autoware_pointcloud_preprocessor): make the concatenation core ROS-runtime-free

refactor(autoware_pointcloud_preprocessor): make the concatenation core ROS-runtime-free #33641

name: json-schema-check
on:
pull_request:
workflow_dispatch:
jobs:
check-if-relevant-files-changed:
runs-on: ubuntu-22.04
outputs:
run-check: ${{ steps.paths_filter.outputs.json_or_yaml }}
steps:
- uses: actions/checkout@v4
- uses: dorny/paths-filter@v3
id: paths_filter
with:
filters: |
json_or_yaml:
- '**/schema/*.schema.json'
- '**/config/*.param.yaml'
json-schema-check:
needs: check-if-relevant-files-changed
if: needs.check-if-relevant-files-changed.outputs.run-check == 'true'
runs-on: ubuntu-22.04
steps:
- name: Check out repository
uses: actions/checkout@v4
# check-jsonschema uses click.ParamType[...] generics, which need click>=8.4,
# but only declares "click<9,>=8". The ubuntu-22.04 runner's preinstalled
# click==8.0.3 satisfies that loose bound, so pip never upgrades it, and
# check-jsonschema crashes at import time. Install the version it actually
# needs before it gets pulled in as a dependency.
- name: Ensure click satisfies check-jsonschema's actual requirement
run: pip install --user "click>=8.4,<9"
shell: bash
- name: Run json-schema-check
uses: autowarefoundation/autoware-github-actions/json-schema-check@v1
no-relevant-changes:
needs: check-if-relevant-files-changed
if: needs.check-if-relevant-files-changed.outputs.run-check == 'false'
runs-on: ubuntu-22.04
steps:
- name: Dummy step
run: echo "No relevant changes, passing check"