datadog-ci
datadog-ci copied to clipboard
dSYM upload does not work on linux and misleading error message is displayed
Describe what happened Dsyms upload does not work on linux.
Steps to reproduce the issue:
Run datadog-ci dsyms upload
on a linux machine.
Expected behaviour: dsym files are uploaded or informative error message is printed
Actual behaviour: The only output is: Invalid dSYM file, will be skipped: dsyms/test.dSYM
It works ok on Mac OS.
Additional context
Datadog-ci dsyms feature is dependent on dwarfdump
which is a Mac OS application. The linux equivalent is called llvm-dwarfdump
. Quick fix is to alias/link dwarfdump
to llvm-dwarfdump
but there exists another linux tool with the same name which is not compatible (https://www.prevanders.net/dwarf.html). Therefore datadog-ci should use llvm-dwarfdump
on linux machines.
When the dependency is not available, datadog-ci should not warn about an invalid dSYM file. The dependency should be mentioned in the documentation.
Hello @narvik01 👋. Thank you for feedback! Your observations are correct - we don't support Linux yet. And I agree - the error message in such circumstance should be vastly fixed. I'm adding necessary tasks to our backlog and we will look into llvm-dwarfdump
soon 👍.
To understand your use case better:
- do you work on a Swift project on Linux?
- or do you only use Linux to upload dSYMs exported earlier from Xcode on macOS?
The second case, we use Mac OS just for building the app and the rest of the CICD pipeline runs on (Alpine) linux, working with exported files.
The second case, we use Mac OS just for building the app and the rest of the CICD pipeline runs on (Alpine) linux, working with exported files.
Got it 👍. So, as we only support dSYMs upload from macOS, you would need to move part of the pipeline to macOS machine. We will work on enhancements on our side, but I can't give any ETA for now.