Skip to content

Git and CI

The CLI’s exit codes, --json and byte-identical output make it a good fit for repositories and CI.

You want Use case
Every model checked on each pull request Validate a library of models
Generated DXF and STEP files committed reproducibly Keep generated files in version control
Pictures for the README Thumbnails

A GitHub Actions step, with a Linux binary from the releases:

- name: Validate models
run: shapemason validate -r models/

Tips

  • Exit codes: 0 clean, 2 warnings, 1 failure; a batch exits with its worst. Decide whether 2 fails the build.
  • Pin the ShapeMason version. Output is identical on every platform for a given version, but a new version may change it.
  • Telemetry is off whenever CI is set.