Files
PX4-Autopilot/Tools/setup/gz-tap-pin.txt
Ramon Roche 045f249929 ci(macos): move gz tap pin refresh into a script that checks bottles
The weekly refresh workflow carried its logic inline, compared only the
tap SHA against the pin, and duplicated the --sim-tools package list.
`brew install --dry-run` never prints "from source", so its bottle check
could not fire.

Tools/ci/refresh_gz_tap_pin.sh now owns the job and the workflow calls
it. It reads the osrf/simulation formulae from macos.sh, walks the tap
from HEAD back to the pin, asks Homebrew at each commit whether every
formula in the runtime closure has a bottle for the host, HEAD-requests
each tarball, and rewrites the pin to the first commit that passes.
Formulae with no bottle at the current pin (the gz-harmonic
meta-formula, which OSRF never bottles) are not required.
peter-evans/create-pull-request opens or updates the bot PR from the
script's outputs, so an unmerged bump is refreshed instead of duplicated.

The job runs on macos-15, the oldest macOS in compile_macos.yml, because
Homebrew pours an older macOS bottle onto a newer one, not the reverse.

Assisted-by: Claude:claude-fable-5-1
Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-09-04 13:26:30 -07:00

10 lines
549 B
Plaintext

# osrf/simulation revision used by macos.sh --sim-tools.
#
# OSRF strips the gz bottle blocks within minutes of a breaking homebrew-core
# dependency bump and rebuilds them days later. The tarballs stay on S3, so
# pinning keeps the install binary instead of compiling Gazebo from source.
# Move it to the newest commit where every gz formula macos.sh installs still
# carries a bottle block. Tools/ci/refresh_gz_tap_pin.sh does that, weekly
# from .github/workflows/macos_gz_tap_pin_refresh.yml or by hand.
c90f81ac7ea8046e195c5e303cc4e1175642e587