RobotLocomotion / models

Shareable model files (urdf/sdf + meshes, etc) for our robotics projects
27 stars 23 forks source link

[ci] Xacro cross-checking #32

Closed jwnimmer-tri closed 6 months ago

jwnimmer-tri commented 7 months ago

We (will) have some `.xacro` files in this repository.

We :heart: our users, so we won't make them figure out how to download and run Xacro. Instead, we'll commit the generated output files into our git repository, so that all of our models can be easily and immediately used downstream.

However, this presents a maintenance burden for our developers: anytime we change the *.xacro source files, we need to remember to refresh the generated outputs to keep them in sync. This can be easy to forget.

To prevent mistakes, we should have a GitHub Actions CI rule that cross-checks that all of the generated files are correctly up-to-date. If the check fails, it should refuse to allow the pull request to merge.

To help developers correct such mistakes, ideally we should also make it an easy process (single command) to refresh everything locally, so they can commit that and re-push.

jwnimmer-tri commented 6 months ago

To help developers correct such mistakes, ideally we should also make it an easy process (single command) to refresh everything locally, so they can commit that and re-push.

For now, each fix is its own command (printed to the console on failures). We'll call that good enough for now.