Config sync failed during EAS android build

Hi guys, I’m getting a config sync error (seemingly related to jimp) when trying to build for android on EAS. My latest deploy only includes basic JS changes, and even after reverting them, I’m seeing this config sync error continue to crop up. This first happened on June 20 at 11:36 AM GMT.

Seems like something may have recently changed with eas build/configuration - anyone else faced this/know how to fix it? Thanks :slightly_smiling_face:

  • Managed workflow
  • eas-cli version: 5.4.12
  • What we’ve tried: re-running the build, reverting any changes so that the codebase is identical to the last successful build, and looking up causes of the error. We have nothing yet.
✖ Config sync failed
[stderr] 
[10:51:25] [android.dangerous]: withAndroidDangerousBaseMod: Could not find MIME for Buffer <null>
[stderr] 
[10:51:25] Error: [android.dangerous]: withAndroidDangerousBaseMod: Could not find MIME for Buffer <null>
[stderr] 
    at Jimp.parseBitmap (/home/expo/eas-build-worker/node_modules/jimp-compact/dist/jimp.js:1:125456)
[stderr] 
    at Jimp.parseBitmap (/home/expo/eas-build-worker/node_modules/jimp-compact/dist/jimp.js:1:8452)
[stderr] 
    at /home/expo/eas-build-worker/node_modules/jimp-compact/dist/jimp.js:1:7551
[stderr] 
    at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read_file_context:68:3)
bash exited with non-zero code: 1

it looks like your splash screen or icon may be invalid. can you share the assets that you use?

Hey @notbrent, thanks so much for the reply!

We found that we can create a build locally without any problems, which leads us to believe that the issue may be to do with the configuration used for the runner that EAS uses. Do you have an image that we can use to replicate it locally and try and debug the problem?

Here is a link to all the assets that we use (app icons + splash icons for staging/production. The last added asset was the notification icon): https://drive.google.com/drive/folders/1BqdSR2rx61HXG97bCBQBJxfPOPC6S2_R?usp=sharing

so you are able to run eas build --local and that works? this page explains the build server infra but we don’t have publicly available images Build server infrastructure - Expo Documentation

Hi @notbrent, yep that’s true. We think it might be because of an issue with the step we have in our CI just before the eas build command. Specifically:

npm install -g sharp-cli && npx expo-optimize

We think there may be an issue with one of the images we have and one of these packages, which then causes the config sync to fail when it’s running on the eas runner. We think eas build --local works because we ran that without running the image optimising step.

Maybe try:

npm install -g sharp-cli && npx expo-optimize || true

We solved this simply by removing npx expo-optimize. We have very few images and the ‘optimization’ only reduces their file size by 20% anyway.

1 Like

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