Skip to content

MOBILE-0000: Treat trunk 409 Conflict as success in pod push wrapper#709

Merged
justSmK merged 1 commit into
developfrom
feature/pod-trunk-409-idempotent
May 25, 2026
Merged

MOBILE-0000: Treat trunk 409 Conflict as success in pod push wrapper#709
justSmK merged 1 commit into
developfrom
feature/pod-trunk-409-idempotent

Conversation

@justSmK
Copy link
Copy Markdown
Collaborator

@justSmK justSmK commented May 22, 2026

CocoaPods trunk sometimes returns 504 Gateway Timeout while the spec still lands in CocoaPods/Specs. Re-running the failed publish job then fails again with 409 "Unable to accept duplicate entry", keeping the release red even though it is actually done.

Wrap pod trunk push in .github/pod-trunk-push.sh and treat 409 as a successful no-op so a single re-run closes the release cleanly.

CocoaPods trunk sometimes returns 504 Gateway Timeout while the spec still lands in CocoaPods/Specs. Re-running the failed publish job
then fails again with 409 "Unable to accept duplicate entry",
keeping the release red even though it is actually done.

Wrap pod trunk push in .github/pod-trunk-push.sh and treat 409 as a successful no-op so a single re-run closes the release cleanly.
Copilot AI review requested due to automatic review settings May 22, 2026 19:02
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a small wrapper around pod trunk push to make CocoaPods publishing idempotent in CI by treating trunk’s “409 Conflict / duplicate entry” response as a successful no-op. This addresses the case where trunk times out (e.g., 504) but the spec is actually published, and a rerun would otherwise fail and keep the workflow red.

Changes:

  • Introduce .github/pod-trunk-push.sh to wrap pod trunk push, capture output, and exit 0 on trunk 409/duplicate-entry responses.
  • Update the reusable publish workflow to use the wrapper for all three podspec publishes (MindboxLogger, MindboxNotifications, Mindbox).

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
.github/workflows/publish-reusable.yml Routes CocoaPods trunk publishes through the new wrapper to make reruns succeed after a transient trunk failure.
.github/pod-trunk-push.sh Implements the 409-as-success behavior for pod trunk push while preserving normal failure behavior otherwise.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@justSmK justSmK merged commit da1160e into develop May 25, 2026
8 checks passed
@justSmK justSmK deleted the feature/pod-trunk-409-idempotent branch May 25, 2026 09:07
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.

3 participants