exp build:ios fails after changing slug in app.json

I can no longer build with expo for the same project that worked a few weeks ago. I believe (I might be wrong), that this happened right after I changed the slug in app.json.

When I do EXPO_DEBUG=true exp build:ios -c --revoke-apple-dist-certs --revoke-apple-push-certs I get the following error:


[15:55:13] Making sure project is set up correctly...
[15:55:17] Your project looks good!
[15:55:17] Checking if current build exists...

[15:55:18] No currently active or previous builds for this project.
[15:55:19] Removed existing credentials from expo servers
[15:55:19] If you get errors about

'Maximum number of certificates generated' or 'duplicate profiles'

then consider using the flags --revoke-apple-dist-certs, --revoke-apple-push-certs,
and --revoke-apple-provisioning-profile or go to developer.apple.com
and revoke those credentials manually

? How would you like to upload your credentials?
 Expo handles all credentials, you can still provide overrides

We need your Apple ID/password to manage certificates and
provisioning profiles from your Apple Developer account.

Note: Expo does not keep your Apple ID or your Apple password.
    
? What's your Apple ID? *****@gmail.com
? Password? [hidden]
[15:55:34] Validating Credentials...
[15:55:56] Only 1 team associated with your account, using Team ID: LZPP3MTSX6
[15:55:56] ATTENTION: Revoking your Apple Distribution Certificates is permanent
[15:56:01] No certs on developer.apple.com available to revoke
[15:56:01] ATTENTION: Revoking your Apple Push Certificates is permanent
? Which Certs to revoke? <Spaceship::Portal::Certificate::ProductionPush id="BSQSQXYKPK" name="Apple Push Services" status="Issued" created=2018-08-20 13:41:5
8 UTC expires=2019-09-19 13:31:58 UTC owner_type="bundle" owner_name="de.sunshinesmile.mobile" owner_id="JLCC3S86GU" type_display_id="UPV3DW712I" can_download
=true>
[15:56:13] Revoked 1 existing certs on developer.apple.com
? Will you provide your own Distribution Certificate? Let Expo handle the process
? Will you provide your own Push Certificate? Let Expo handle the process
? Would you like to reuse Distribution Certificate from another app? Used in apps: @aemal/sunshine-smile (Serial number: 4F37DF9F8C7C16F7, Certificate ID: LM4
FA4K88Z)
[16:06:01] Error while gathering & validating credentials
[16:06:01] Error: Reason:No cert available to make provision profile against, raw:"Make sure you were able to make a certificate prior to this step"
[16:06:01] Reason:No cert available to make provision profile against, raw:"Make sure you were able to make a certificate prior to this step"
[16:06:01] Error: Reason:No cert available to make provision profile against, raw:"Make sure you were able to make a certificate prior to this step"
    at IOSBuilder._throwIfFailureWithReasonDump (/exp@56.0.0/src/commands/build/IOSBuilder.js:622:13)
    at IOSBuilder._callee6$ (/exp@56.0.0/src/commands/build/IOSBuilder.js:326:10)
    at tryCatch (/usr/local/lib/node_modules/exp/node_modules/regenerator-runtime/runtime.js:62:40)
    at Generator.invoke [as _invoke] (/usr/local/lib/node_modules/exp/node_modules/regenerator-runtime/runtime.js:296:22)
    at Generator.prototype.(anonymous function) [as next] (/usr/local/lib/node_modules/exp/node_modules/regenerator-runtime/runtime.js:114:21)
    at step (/usr/local/lib/node_modules/exp/node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
    at /usr/local/lib/node_modules/exp/node_modules/babel-runtime/helpers/asyncToGenerator.js:28:13
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:188:7)

It is now over 10 hours of googling, I read almost everything around the certificate problem, nothing seems to work. If I change the bundleIdentifier in app.json, it works, but that way I can’t publish the new changes in the same app to apple and play stores.

I found the solution myself!!!

The problem was actually the slug, I changed it from ‘abc-xyz’ to ‘ddd-eee’ (those are just examples, I had more sensible names) and the versions on the stores were with slug ‘abc-xyz’ while the new versions with slug ‘ddd-eee’ was not some how able to pull new updates. When I change dit back to ‘abc-xyz’, it worked.

But I have to change it to ‘ddd-eee’. I assume the only solution would be to build a new .ipa and .apk and submit them again to the stores for review. Am I right? can someone please help me with this?

1 Like

Hey @aemal,

Glad you figured it out! Yes, in order to have the change take place you’ll have to build and submit to the stores again.

Cheers,

Adam

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.