CocoaPods could not reach the CDN that serves its spec index. The request timed out or returned a 5xx - a transient network failure on the CocoaPods CDN, not a problem with your Podfile.
What this error means
pod install prints "CDN: trunk Repo update failed" with a timeout or HTTP 5xx, often mid-fetch of the spec index. Re-running the job usually succeeds with no change - the hallmark of a transient network issue.
pod output
[!] CDN: trunk Repo update failed - 10 error(s):
CDN: trunk URL couldn't be downloaded:
https://cdn.cocoapods.org/all_pods_versions_a_b_c.txt
Response: Timeout was reached
Diagnose it: SDK, signing, or simulator?
Mobile CI failures cluster into three: a missing or mismatched SDK component, a code-signing identity that does not exist on the runner, or a simulator or emulator that never became ready.
Terminal
# Android
sdkmanager --list_installed 2>/dev/null | head
echo "ANDROID_HOME=$ANDROID_HOME"
adb devices
# iOS
xcodebuild -version && xcrun simctl list devices available | head
security find-identity -v -p codesigning
Common causes
Transient CDN outage or slowness
The CocoaPods CDN briefly timed out or returned a 5xx. These blips clear on their own and are unrelated to your dependencies.
Restrictive network or low timeout on the runner
A proxy, DNS hiccup, or a short default timeout can make a slow-but-working CDN look failed on a congested runner.
How to fix it
Retry the install
Because this is transient, a simple retry usually clears it.
Terminal
for i in 1 2 3; do pod install && break || sleep 15; done
Pre-fetch / cache the spec repo
Cache CocoaPods state between runs so a flaky CDN matters less, and refresh once up front.
Wrap pod install in a small retry loop for CDN flake.
Commit Podfile.lock so resolution is deterministic and cacheable.
Frequently asked questions
What causes CocoaPods "CDN: trunk repo update failed" in CI?
There are 2 common causes: transient cdn outage or slowness and restrictive network or low timeout on the runner. The CocoaPods CDN briefly timed out or returned a 5xx.
How do I fix CocoaPods "CDN: trunk repo update failed" in CI?
There are 2 fixes depending on which cause you have: retry the install and pre-fetch / cache the spec repo. Work through them in order, since the first is the most common.
What does CocoaPods "CDN: trunk repo update failed" in CI actually mean?
pod install prints "CDN: trunk Repo update failed" with a timeout or HTTP 5xx, often mid-fetch of the spec index.
How do I stop CocoaPods "CDN: trunk repo update failed" in CI happening again?
Cache ~/.cocoapods keyed on Podfile.lock. The prevention section lists 3 changes that keep it from recurring.
Can Latchkey fix this automatically?
Yes. Latchkey runs your GitHub Actions on managed runners that detect this failure, apply the fix, and retry the job automatically - self-healing is on by default.
This is a transient network failure, not a bug in your code. Latchkey detects, repairs, and retries it for you.Start free →30-day trial · No credit card
Cookie Preferences
Choose which categories of cookies you want to allow. Essential cookies are always active as they are required for the site to function.
Essential
Required for the site to function.
Functional
Remembers your preferences like selected organization and dashboard settings.
Analytics
Helps us understand how the site is used (Google Analytics).