I’m having an issue where eas build --platform android is producing a tar.gz bundle instead of the usual aab file. The bundle includes both the aab and apk but I’d rather just have the aab when building for the app store.
The only changes I’ve made today were related to implementing firebase analytics. I didn’t change anything related to eas.
It was working fine this past week but today seems to be different.
Thanks!
Whether you are bare or managed workflow: Bare
Your eas-cli version: 3.1.0
What you have tried so far: I’ve tried looking for other people with this issue but no luck
can you share some information about your project and eas.json config?
notice the applicationArtifactPath property under the android key in eas.json:
(string) - Path (or pattern) where EAS Build is going to look for the application archive. EAS Build uses the fast-glob npm package for pattern matching (see their README to learn more about the syntax you can use). The default value is android/app/build/outputs/**/*.{apk,aab} .
if your the gradleCommand that you specify produces both apk and aab at the default path then it will be put into a tarball. you can extract that tarball to access both the apk and aab.
As you can see, I didn’t have applicationArtifactPath set so you’re 100% correct that it was pulling the default settings of apk and aab. I probably could have set it to just pull the aab but instead I deleted the apk, tried the build again, and it built the aab alone (what I was hoping for).
You’re also correct that the tarball included the aab and apk but it just added more time to the workflow extracting it.
Thanks for the help!
Edit: I wanted to come back and confirm that changing my production profile from "production": {} to
Ah yes. If you build or download a .apk into your app’s directory and it’s not in .gitignore, then eas build will upload it when you run eas build. This does indeed upload unnecessary stuff to the build workers and as in your case, could potentially interfere with the artifact that’s produced.