How to create an Expo EAS iOS internal distribution build NOT an iOS App Store build with bare workflow?

I’ve added native code to my Expo 48 project. I’m able to build a production/release version of my app to upload to the app store manually from XCode/Android Studio. However, I need to build an internal/preview version with ad hoc provisioning using EAS so I can distribute it to internal QA for testing.

“When you’re ready to ship your app, you can build it with EAS Build the same as you were building it before adding custom native code. Alternatively, you can archive and sign it locally. Unsurprisingly, we recommend EAS Build!”

This is the command I used to create an internal build before switching to bare workflow, it looks at eas.json for the configuration for the preview/internal build, eas build --platform ios --profile internal --non-interactive --json.

How can I do the same thing now, creating an internal/preview build with native code/bare workflow.

My CI/CD suite and EAS build keep failing with the following error.

Failed to set up credentials.
You're in non-interactive mode. EAS CLI couldn't find any credentials suitable for internal distribution. Run this command again in interactive mode.
    Error: build command failed.
Error: Process completed with exit code 1.

eas-cli: 3.10.2:
expo-github-action: expo/expo-github-action@v8

Run without --non-interactive --json option locally first to make sure all credentials are generated and all the device you want to run on it are provisioned.
After it’s configured you should be able to run with --non-intereactive option on CI.

Technically old credentials should work after switch to bare, so I suspect you changed sth in your project that made them invalid e.g maybe you added new target/extension.

1 Like