Describe the solution you'd like
I'd like this to be part of the build process. iOS has DSYMs and Android has Proguard Mappings, currently App Center requires us to manually upload these files, and that requires another build somewhere else, possibly a local machine.
Describe alternatives you've considered
Possible post-build-script step
Referencing #130 as part of improving this overall experience.
@kuyazee for iOS we do forward the symbols already.
@derpixeldan Important to note thought that symbols are only automatically forwarded today if the build is also auto-distributed as part of the build.
We are aware that currently the symbols are only uploaded automatically if you select to distribute the build artifact in App Center as the symbol upload during the build pipeline is performed through the AppCenterDistribute task.
For our June iteration, we are working on adding functionality to automatically upload Android ProGuard mappings when found as well, see https://github.com/microsoft/azure-pipelines-tasks/pull/10586 for more details.
We understand that this can be simplified, please bear with us while we work out and prioritize more detailed plans. One thing to keep in mind is that while iOS symbols are fairly self-sufficient (they have a unique ID so we can just upload it to the apps symbol store), Android mapping files don't contain any information which binary/release to apply them to when deobfuscating stack traces.
This is typically solved by associating the version name and version code with the mapping – which is determined in our distribution pipeline from the uploaded APK, so this is currently a conceptual limitation.
@ranterle If I understand correctly, this will upload the mapping files to the App Center Diagnostics.
Are there any plans to upload the mapping file to Google Play Console as well?
We use the crash reporting from Google Play Console, and uploading mapping files for about 10 apps is time consuming.
@cs-marcoblagoiev that is understandable. We are looking into options here, but at this point have no concrete plans. Is using a post-build script an option for you in the meantime? As far as I see, Google Play Console has an API to upload those.
@ranterle I don't think that post-build scripts are an option for us. We usually generate the builds but only upload them to Google Play a few hours/days later, not directly after.
There is no script that can be run after the upload process has been completed, is that correct?
@cs-marcoblagoiev Correct, we don't have a build script after the build has been forwarded to App Center Distribution, only directly after the build finished.
You can download both the build and the artifacts from a build, such as the mapping and could use this in a script outside of App Center to automate this procedure, which you could also call on a timer.
Is there a way to get the dsym files from post_build? I would like to upload them to rollbar when a build is complete.
@nschild Yes, you should be able to find them at $APPCENTER_OUTPUT_DIRECTORY/../symbols
RE: @nrajpurkar's comment on #634
we added this in last month, you're correct this is done. Android builds now generate the Proguard mappings. Please reach out to support if you're having issues with this feature so we can better understand what is going on. Thanks!
Is the case same for iOS? Because the DSYM files still aren't being uploaded to AppCenter Crashes from my experience.
@kuyazee We do provide the symbols and mapping files of a build in the output directory of the build. Automatic forwarding to App Center Diagnostics is currently only happening when you enable distribution for your build.
Most helpful comment
@nschild Yes, you should be able to find them at
$APPCENTER_OUTPUT_DIRECTORY/../symbols