v0.26.0 moving eas submit options to the app.json file is incompatible with gitlab ci
See original GitHub issueSummary
Changes in v0.26.0 to move the params out of the cli command and into the eas.json submit profile are incompatible with referencing the google service account path as an environment variable in Gitlab CI.
Pre v26
eas submit --platform android --latest --key=$GOOGLE_SERVICE_ACCOUNT
Post v26
eas submit --platform android --latest --profile ci
eas.json:
...
"ci": {
"android": {
"track": "alpha",
"serviceAccountKeyPath": "$GOOGLE_SERVICE_ACCOUNT"
},
...
The changes in release v0.26.0 moved things like the --key param into the submit profile, so I added $GOOGLE_SERVICE_ACCOUNT
as the value in there, however, this doesn’t seem to successfully reference the gitlab CI environment variable, it instead treats it as just a string.
Has anyone else come across this yet since the v0.26.0 update? For obvious reasons I can’t simply commit the google service account to the repo and hardcode the path in the eas.json. Am I doing something wrong or is this change simply incompatible?
Environment
EAS CLI 0.26.0 environment info:
System:
OS: Linux 5.4 Debian GNU/Linux 9 (stretch) 9 (stretch)
Shell: 4.4.12 - /bin/bash
Binaries:
Node: 12.22.6 - /usr/local/bin/node
Yarn: 1.22.5 - /usr/local/bin/yarn
npm: 6.14.15 - /usr/local/bin/npm
Utilities:
Git: 2.11.0 - /usr/bin/git
npmPackages:
expo: ^42.0.0 => 42.0.3
react: 16.13.1 => 16.13.1
react-dom: 16.13.1 => 16.13.1
react-native: https://github.com/expo/react-native/archive/sdk-42.0.0.tar.gz => 0.63.2
react-native-web: ~0.13.12 => 0.13.18
Error output
File $GOOGLE_SERVICE_ACCOUNT doesn't exist.
A Google Service Account JSON key is required to upload your app to Google Play Store.
If you're not sure what this is or how to create one, Learn more: https://expo.fyi/creating-google-service-account
Error: Input is required, but stdin is not readable.
error Command failed with exit code 1.
Reproducible demo or steps to reproduce from a blank project
Use gitlab ci referencing the google service account key path in the eas.json submit profile as a gitlab ci variable
Issue Analytics
- State:
- Created 2 years ago
- Reactions:2
- Comments:6 (3 by maintainers)
Same issue here
Ok, fair enough. I didn’t know Gitlab lets you mark an env variable as a file. I’ll implement the support for this soon 😃