Refactor the publish action for Android to ensure that symbols are
published to Sentry for any 'release' buildLevel -- test releases and
alpha/beta/stable releases.
Splits the publish action into `publish-symbols` and
`publish-play-store` so that they can be run separately as needed, as
symbols can be published for test builds, but play store is only touched
for actual releases.
Note: examining the build logs and Sentry server state, it looks like
the publish to Sentry has not been happening for quite a while, so this
commit refactors the Sentry publishing code and establishes the
fv-keyboards publish target also.
Fixes: #14284
Build-bot: release
Test-bot: skip
Clarifies the confusing builder.inc.sh / build-utils.sh distinction by
giving the scripts more appropriate names. Most build scripts should use
builder-full.inc.sh; some helper scripts can use builder-basic.inc.sh.
Documented in resources/build/README.md.
Renames:
* resources/build/builder.inc.sh to resources/build/builder-full.inc.sh
* resources/build/build-utils.sh to resources/build/builder-basic.inc.sh
Other changes:
* Moves Android-specific functions out of builder-basic.inc.sh and into
android/build.sh.
* Renames functions in builder-basic.inc.sh
More functions may be moved from builder-basic.inc.sh into utils.inc.sh
or other scripts in the future.
Fixes: #14065
Build-bot: build all
Test-bot: skip
Adds documentation for various functions, removes unused functions (a
couple of simple, very lightly used functions were unDRYed; these could
go back the other way across all shell scripts if necessary). TODO items
noted for follow-up refactoring.
Fixes: #14275
Relates-to: #14269
Build-bot: build all
Test-bot: skip
This partially reverts the previous commit in that it doesn't set the
`RELEASE_OEM` and `RELEASE_OEM_FIRSTVOICES` env variables if called with
`--fv`. Instead we rely on these variables being set in the TC config.
See also #14388 for a better solution.
Also set `RELEASE_OEM` and `RELEASE_OEM_FIRSTVOICES` at build time (if
`--fv` is passed) instead of relying it to be set in TC.
Fixes: #14350
Test-bot: skip
- add `builder_is_windows`, `builder_is_macos` and `builder_is_linux`
functions
- add/move `BUILDER_OS` env variable to `resources/builder.inc.sh`
- use the new functions and env variable
Fixes: #14109
Test-bot: skip
This is a small refactoring to use full, absolute paths when copying files and changing directories. This makes it clearer to see where those directories/files are located.
PR #14264 removed the `--ci` parameter from Android builds, but forgot to
remove it for release builds. This PR fixes this.
Follow-up-of: #14264
Build-bot: skip
Test-bot: skip
This is a small refactoring to use full, absolute paths when copying files
and changing directories. This makes it clearer to see where those
directories/files are located.
Build-bot: skip
Build-bot: build android
Test-bot: skip
This will fix the Android release builds. Previously we did a debug
build but then tried to copy files from the release build folder.
The original build config passed `--release` when doing a release build,
which lost when moving to build scripts.
Fixes: #14302
Build-bot: skip
Build-bot: release android
Test-bot: skip
- added `tc_` prefix to functions in `includes/tc-*.inc.sh`
- moved `includes/tc-actions.inc.sh` → `linux/linux-actions.inc.sh`
- didn't change `write_download_info`. That will be done as part of #14259.
- didn't change `is_*`. That will be done as part of #14109.
- removed unnecessary functions that only call another function.
- moved functions from `tc-windows.inc.sh` → `tc-helpers.inc.sh` because
they are no longer Windows-specific (although currently only used for
Windows).
Fixes: #14201
Test-bot: skip
Include files are not directly executable, so it doesn't make sense to
have the shebang line. However, shellcheck needs to know what shell we
use. Turns out there is a shellcheck line that we can add instead of
the shebang line.
Follow-up-of: #14253
Build-bot: skip
Test-bot: skip
`--ci` is deprecated since the current code discovers automatically
when we're building on CI, so we don't have to pass that option when
calling the `android/build.sh` script.
Also remove the option itself since we're no longer using it.
Build-bot: build android
Test-bot: skip
There is one difference compared to the old build configurations on TC:
previously we had a separate build step to build and test FV that would
run only if environment variables were set.
This change combines building and testing FV with building the engine
and the app. If the environment variables are set we pass an additional
parameter to the TC build script.
Fixes: #14188
Part-of: #13399
Build-bot: release android
Test-bot: skip