How to automatically validate URDF files in CI/CD using GitHub Actions and RoboInfra.
Every robotics developer eventually hits this problem:
A broken URDF gets merged into main.
Then:
- Gazebo fails
- MoveIt breaks
- Isaac Sim import explodes
- someone loses hours debugging XML
Traditional ROS workflows rely heavily on manual checking.
Modern software engineering solved this years ago with CI/CD.
So I built a GitHub Action that validates URDF and xacro files automatically on every PR.
The workflow
name: Validate URDF
on: [push, pull_request]
jobs:
validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: roboinfra/validate-urdf-action@v1
with:
api-key: ${{ secrets.ROBOINFRA_API_KEY }}
file: urdf/robot.urdf
If the URDF is invalid, the PR fails automatically.
What gets checked?
- duplicate links
- duplicate joints
- invalid parent/child refs
- missing limits
- invalid joint types
- missing root links
- xacro processing issues
Why this matters
Robotics tooling is still missing a DevOps layer.
Software engineering has:
- CI pipelines
- static analysis
- automated validation
- deployment checks
Robot models deserve the same workflows.
Free validator:
https://roboinfra-dashboard.azurewebsites.net/validator
Thatβs the idea behind RoboInfra.
Top comments (0)