- Use `sonar.token` instead of `sonar.login` since the latter is
deprecated.
- Explicitly install Java 17 since v11 (bundled by default) is
deprecated by Sonarcloud.
Caching was not implemented this time around because it's not possible
to cache analysis results yet, only the installed binaries. See this
thread for information:
https://community.sonarsource.com/t/proper-caching-for-ci-builds/98320/2
In addition:
- URL processing is now data driven. It pulls URLs from the latest
Github Release and uses those. This makes the notification more
extensible. If we add new artifacts later to the release, they
"automatically" get published in the discord notification as well. New
platforms must still be explicitly added, though.
- Added contributing guidance for testing the notification script.
Due to [an issue][1] with the `actions/upload-artifact` action, when
binaries are uploaded they lose permission bits and `xattr` properties.
Composite actions `upload-tar` and `download-tar` have been added that
tarball the artifacts before uploading them to retain those properties.
[1]: https://github.com/actions/upload-artifact/issues/38
Changelog:
- Sign & notarize Recyclarr on macOS platforms (arm64, x64)
- Use `tar.xz` instead of `zip` on mac & linux platforms
- Compile linux binaries on the ubuntu-latest Github runner
- Compile macOS binaries on the macos-latest Github runner
- Executable size reduced by disabling ReadyToRun
Fixes#39
Because `SHOULD_PUBLISH` is an environment variable, it isn't a true
boolean: it's a string. Update the `if:` condition logic to handle it as
a string instead.
Edge builds previously would either download from the latest release on
github or directly compile the code. However, dotnet apparently has some
compatibility issues when run inside of a container built with qemu +
buildx.
The approach chosen going forward is to simply copy the builds from the
github workflow artifacts directly into the container during the build
process. This ended up causing a lot of change, mainly cleanup and
simplifying things.