Skip to content

[Due for payment 2025-05-13] Race conditions can cause E/App and Mobile-Expensify versions to get out-of-sync #59856

Description

@roryabraham

Problem

In https://github.com/Expensify/App/actions/runs/14338004161/job/40189972196 changes were merged to E/App in the time between when the workflow started and when we tried to push. This caused the push to fail. This has been possible for a while, but generally hasn't been a big deal because it's rare and you can just retry the CP.

However, now with two repos being updated, this presents a bigger problem because the versions get out-of-sync, and then future CP's will fail.

Solution

Let's do something like this to make pushes more reliable:

git push origin main || (
  echo "Push failed. Rebasing..."
  git fetch origin
  git rebase origin/main
  git push origin main
)

Also, let's try to figure out how to make the workflow idempotent, such that either both repos are updated or neither is.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionWeeklyKSv2

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions