a8c-ci-toolkit-buildkite-plugin
a8c-ci-toolkit-buildkite-plugin copied to clipboard
Add command to reconfigure Git to fetch private repos
Currently Pocket Casts iOS and WordPress/Jetpack iOS access private Swift Packages.
The logic in WordPress is a tidied up version of what is in Pocket Casts.
Assuming the approach is sound, we might want to move the implementation here in the CI plugin.
Notice that
- Pocket Casts no longer fetches private Swift packages: https://github.com/Automattic/pocket-casts-ios/pull/1919
- WordPress iOS only needs access to a private package for limited time. WordPress-rs will soon(ish) become public: https://github.com/wordpress-mobile/WordPress-iOS/pull/23427
As such, the value of this suggestion decreases dramatically.
Since posting, the implementation has evolved. See https://github.com/bloom/DayOne-Apple/pull/25138.
Update
I have since updated again the implementation used by DayOne-Apple (Still Draft PR at time of writing), to make it more generic to support more than one private repo, be more flexible and scan be more easily reused for other repos.
I have documented all the current options and approaches in this P2: https://appsinfrap2.wordpress.com/2025/02/18/swiftpm-support-multiple-private-dependencies/
This roadmap item / issue would thus now just consist of copy/pasting the script I shared in this P2 as a bin/* command in a8c-ci-toolkit, and tweaking it to allow to pass the list of repo-to-deploy-key mappings as parameter to that script.
https://linear.app/a8c/issue/AINFRA-270