Skip to content

Vendor first-party utility roles into the repository#1369

Merged
michael-balint merged 1 commit into
masterfrom
dholt/vendor-deepops-roles
Jul 15, 2026
Merged

Vendor first-party utility roles into the repository#1369
michael-balint merged 1 commit into
masterfrom
dholt/vendor-deepops-roles

Conversation

@dholt

@dholt dholt commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Vendor the three first-party utility roles (users, hosts, chrony from the DeepOps GitHub organization, frozen since 2021) into roles/ at their exact pinned commits, renamed deepops_users / deepops_hosts / deepops_chrony, with provenance recorded in each README. The four consuming playbooks are updated and the Galaxy entries removed.
  • Why: fetch-time Galaxy installation leaves long-lived checkouts vulnerable to installed-copy drift — an on-disk role predating the requirements pin — which recently manifested as an unrunnable stale role copy. Vendoring removes that failure mode and three network fetches for content this project already owns. Role content is byte-identical to the pinned commits.

Validation

  • git diff --check; full role lint including the newly vendored roles (0 failures); syntax checks for all four consuming playbooks pass with the Galaxy roles uninstalled.
  • Content unchanged from the previously pinned commits; no behavior change.

Notes

  • Recommended for release notes: users with long-lived checkouts should run ./scripts/setup.sh after upgrading (Galaxy roles refresh with --force), since stale on-disk copies of previously pinned roles can predate the current pins.

The users, hosts, and chrony roles live in the DeepOps GitHub
organization but have been frozen since 2021 and were consumed as
SHA-pinned Galaxy fetches. Fetch-time installation leaves long-lived
checkouts vulnerable to installed-copy drift (an on-disk role predating
the requirements pin), the failure mode recently root-caused with the
third-party MAAS role, and adds a network dependency for content this
project already owns.

Copy the three roles into roles/ at their exact pinned commits
(provenance recorded in each README), rename to deepops_users /
deepops_hosts / deepops_chrony, update the four consuming playbooks,
and drop the Galaxy entries. Role content is unchanged.
@dholt
dholt marked this pull request as ready for review July 15, 2026 22:05
@dholt
dholt requested a review from michael-balint July 15, 2026 22:05
@michael-balint
michael-balint merged commit 971787d into master Jul 15, 2026
31 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants