Draft
Conversation
Co-authored-by: Shambez <204799760+Shambez@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Update Simba Daily Healthcheck workflow for non-interactive EAS CLI
Fix EAS CI workflow to run non-interactively
Dec 2, 2025
Shambez
requested changes
Dec 2, 2025
Shambez
left a comment
Owner
There was a problem hiding this comment.
Fix: Non-interactive EAS CI + Add full eas.json profilesThis PR fixes the CI failure in the scheduled workflow "Simba Daily Healthcheck".
Root cause: npx eas-cli config triggered an interactive "Select build profile" prompt in CI.
Fix includes:
- Adding eas.json with full CI-safe build profiles (development, preview, testflight, production)
- Updating the workflow to use: npx eas-cli whoami --non-interactive
- Making the CI fully non-interactive and build-safe
After merge:
- CI workflow will stop failing at the profile prompt
- EAS builds can be triggered in CI using --profile --non-interactive
Co-authored-by: Shambez <204799760+Shambez@users.noreply.github.com>
Shambez
approved these changes
Dec 2, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The scheduled "Simba Daily Healthcheck" workflow fails when EAS CLI prompts for "Select build profile" in CI. CI cannot provide stdin, causing exit code 1.
Workflow Changes (
.github/workflows/daily_healthcheck_simba.yml)npx eas-cli config --non-interactivewithnpx eas-cli whoami --non-interactive— the former still prompts when profiles are missingEAS Configuration (
eas.json)>= 16.19.0→>= 3.19.0EXPO_PUBLIC_APP_ENV: development/preview/staging/productionEXPO_PUBLIC_IS_PREVIEW: testflightEXPO_PUBLIC_IS_PRODUCTION: productiondistribution: "internal"→"store"gradleCommand: "assembleDebug"→"assembleRelease"<apple_id_from_secrets>,<asc_app_id_from_secrets>,<apple_team_id_from_secrets>) — actual values belong in GitHub Secretstrack: "production",releaseStatus: "completed"Profile definitions now enable non-interactive builds with
--profile <name> --non-interactive.Original prompt
Problem:
The scheduled workflow "Simba Daily Healthcheck" (ref: 5ffac83) failed because the job runs an interactive EAS CLI command that prompts for "Select build profile". CI cannot provide stdin, causing the job to exit with code 1. We need a non-interactive workflow and a committed eas.json that contains the required build profiles so EAS commands do not prompt.
Changes to make (apply in a new branch
fix/eas-ciand open a pull request):npx eas-cli config --non-interactive(which still triggers interactive prompts when eas.json or profiles are missing) with a non-interactive authentication verification:npx eas-cli whoami --non-interactive.--profile <name>and--non-interactive.New file contents for .github/workflows/daily_healthcheck_simba.yml (exact):
name: Simba Daily Healthcheck
on:
schedule:
- cron: "0 19 * * *"
workflow_dispatch:
jobs:
healthcheck:
runs-on: ubuntu-latest
timeout-minutes: 30
New file contents for eas.json (exact):
{
"cli": {
"version": ">= 3.19.0",
"appVersionSource": "local"
},
"build": {
"development": {
"developmentClient": true,
"distribution": "internal",
"channel": "development",
"env": {
"EXPO_PUBLIC_APP_ENV": "development"
},
"android": {
"gradleCommand": ":app:assembleDebug",
"credentialsSource": "remote"
},
"ios": {
"buildConfiguration": "Debug",
"scheme": "SimbaGlobalAI",
"cocoapods": "1.16.2",
"credentialsSource": "remote"
}
},
"preview": {
"distribution": "internal",
"channel": "preview",
"env": {
"EXPO_PUBLIC_APP_ENV": "preview"
},
"android": {
"gradleCommand": ":app:assembleRelease",
"credentialsSource": "remote"
},
"ios": {
"buildConfiguration": "Release",
"scheme": "SimbaGlobalAI",
"cocoapods": "1.16.2",
"credentialsSource": "remote"
}
},
"testflight": {
"distribution": "store",
"channel": "staging",
"env": {
"EXPO_PUBLIC_APP_ENV": "staging",
"EXPO_PUBLIC_IS_PREVIEW": "true"
},
"ios": {
"buildConfiguration": "Release",
"scheme": "SimbaGlobalAI",
"cocoapods": "1.16.2",
"credentialsSource": "remote"
}
},
"production": {
"distribution": "store",
"channel": "production",
"env": {
"EXPO_PUBLIC_APP_ENV": "production",
"EXPO_PUBLIC_IS_PRODUCTION": "true"
},
"android": {
"buildType": "app-bundle",
"credentialsSource": "remote"
},
"ios": {
"buildConfiguration": "Release",
"scheme": "SimbaGlobalAI",
"cocoapods": "1.16.2",
"credentialsSource": "remote"
}
}
},
"submit": {
"production": {
"ios": {
"appleId": "<APPLE_ID_FROM_SECRETS>",
"ascAppId": "<ASC_APP_ID_FROM_SECRETS>",
"appleTeamId": "<APPLE_TEAM_ID_FROM_SECRETS>"
},
"android": {
"serviceAccountKeyPath": "./google-service-account.json",
"track": "production",
"releaseStatus": "completed"
}
},
"testflight": {
"ios": {
"appleId": "<APPLE_ID_FROM_SECRETS>",
"ascAppId": "<ASC_APP_ID_FROM_SECRETS>",
"appleTeamId": "<APPLE_TEAM_ID_FROM_SECRETS>"
}
...
This pull request was created as a result of the following prompt from Copilot chat.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.