问题
I'm trying to config automatically build iOS apps using Expo through Gitlab-CI. This are the commands that I am using:
expo login -u expo_user -p expo_pass
expo build:ios --non-interactive --apple-id my_id@domain.com --clear-dist-cert --clear-provisioning-profile --dist-p12-path "path_to_file.p12" --provisioning-profile-path "path_to_file.mobileprovision"
I am already passing the respective values of this env vars:
EXPO_APPLE_PASSWORD
EXPO_IOS_DIST_P12_PASSWORD
During the 2nd command execution it launch this logs:
[14:24:23] Trying to authenticate with Apple Developer Portal...
[14:24:25] Authentication with Apple Developer Portal failed!
[14:24:25] Error: Reason: Unknown reason, raw: "<html>\r\n<head><title>502 Bad Gateway</title></head>\r\n<body>\r\n<center><h1>502 Bad Gateway</h1></center>\r\n<hr><center>Apple</center>\r\n</body>\r\n</html>\r\n\n"
at runAction (/expo-cli@3.13.1/src/appleApi/fastlane.ts:28:17)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
at Object.authenticate (/expo-cli@3.13.1/src/appleApi/authenticate.ts:46:40)
at IOSBuilder.getAppleCtx (/expo-cli@3.13.1/src/commands/build/ios/IOSBuilder.js:47:23)
at IOSBuilder.produceMissingCredentials (/expo-cli@3.13.1/src/commands/build/ios/IOSBuilder.js:123:22)
at IOSBuilder.prepareCredentials (/expo-cli@3.13.1/src/commands/build/ios/IOSBuilder.js:65:7)
at IOSBuilder.run (/expo-cli@3.13.1/src/commands/build/ios/IOSBuilder.js:19:7)
at IOSBuilder.command (/expo-cli@3.13.1/src/commands/build/BaseBuilder.js:55:7)
at Command.<anonymous> (/expo-cli@3.13.1/src/exp.ts:81:7)
The Apple Developer account that I am using have configured the Two Factor Authentication (2FA).
Is this the reason why the expo build:ios
command is failing the auth against Apple Portal?
What am I missing in this commands?
PS: These commands on my laptop works fine!
回答1:
Not a very satisfying answer, but it worked for me: Delete your node_modules
and then reinstall all your dependencies.
We had no problem last week, but today we kept hitting this error.
This possible fix has zero risk as long as you have a yarn.lock
or NPM's equivalent so that you can be sure the versions you download match the originals.
回答2:
You Need To Use expo build:ios --clear-credentials
it worked fine for me.
As Specified bellow in link.
-c, --clear-credentials Clear all credentials stored on Expo servers.
https://forums.expo.io/t/solved-ios-standalone-build-failed/10007/3?u=alihussnain
来源:https://stackoverflow.com/questions/60403093/failed-authentication-in-apple-developer-portal-when-execute-expo-buildios