Commit graph

29 commits

Author SHA1 Message Date
Marc Durdin
c524db41b9 maint(common): use builder_launch for child builds
Fixes: #15130
Test-bot: skip
2025-12-02 06:17:31 +01:00
Marc Durdin
2b0db1eb51
Merge pull request #14490 from keymanapp/maint/android/14284-publish-sentry-symbols-on-release-buildlevel
maint(android): publish symbols to Sentry on release buildLevel 🦌
2025-08-20 20:20:25 +07:00
Marc Durdin
1bb111edea maint(android): publish symbols to Sentry on release buildLevel
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
2025-08-11 05:10:28 +02:00
Marc Durdin
f394245636 maint(common): consolidate builder scripts
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
2025-08-02 08:11:24 +10:00
Marc Durdin
65158a0526 maint(common): rename shellHelperFunctions.sh to utils.inc.sh
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
2025-08-02 06:58:40 +10:00
Eberhard Beilharz
5b8753e806
chore(resources): Merge branch 'master' into maint/resources/14201_prefixtc 2025-07-24 14:54:08 +02:00
Eberhard Beilharz
c228635ef4
chore(android): Merge branch 'master' into maint/android/14350_consolidatezip 2025-07-23 16:19:37 +02:00
Eberhard Beilharz
edf9b4765f
maint(android): rely on RELEASE_OEM* to be set on TC
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.
2025-07-22 17:06:00 +02:00
Darcy Wong
c6ecb256ba
Merge pull request #14377 from keymanapp/fix/android/tc-missing-zip.inc
fix(android): use correct path to zip.inc.sh for CI
2025-07-21 19:30:24 +07:00
Eberhard Beilharz
51ca604b47
chore(common): Merge remote-tracking branch 'origin/master' into maint/common/14109_isOsFuncs 2025-07-21 09:20:12 +02:00
Darcy Wong
912d7e951c fix(android): use correct path to zip.inc.sh for CI 2025-07-21 09:42:37 +07:00
Eberhard Beilharz
ef6adec0ed
chore(developer): Merge branch 'master' into maint/developer/usezipfunc 2025-07-15 09:43:04 +02:00
Eberhard Beilharz
bb78c30c55
maint(android): consolidate creating zip file
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
2025-07-14 15:55:18 +02:00
Eberhard Beilharz
a22de0a647
maint(developer): use add_zip_files function
This makes use of `add_zip_files` where possible.

Fixes: #14332
Follow-up-of: #14093
Test-bot: skip
2025-07-10 17:53:16 +02:00
Eberhard Beilharz
11288f9868
maint(android): fix Android release build
Uses absolute paths for zipping files.

Follow-up-of: #14308
Build-bot: skip
Test-bot: skip
2025-07-10 10:57:00 +02:00
Eberhard Beilharz
3b136fcec9
maint(common): consolidate functions to determine OS
- 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
2025-07-09 18:33:09 +02:00
Eberhard Beilharz
94242982fc
Merge pull request #14308 from keymanapp/maint/android/improvepaths
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.
2025-07-09 16:34:03 +02:00
Eberhard Beilharz
3c7304e8bd
maint(android): remove --ci parameter from Android release builds
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
2025-07-09 11:52:13 +02:00
Eberhard Beilharz
d1124504af
maint(common): remove include of deleted tc-download-info.inc.sh
This fixes the release builds.

Follow-up-of: #14270
Build-bot: skip
Test-bot: skip
2025-07-07 21:03:33 +02:00
Eberhard Beilharz
19ff2fd0a6
chore(resources): Merge branch 'master' into maint/resources/14201_prefixtc 2025-07-07 18:41:22 +02:00
Eberhard Beilharz
24246b80ff
maint(android): use absolute paths
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
2025-07-07 17:44:59 +02:00
Eberhard Beilharz
0a5342150d
maint(android): use --release for release builds
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
2025-07-07 17:34:08 +02:00
Marc Durdin
410fcb36e7
Merge pull request #14265 from keymanapp/refactor/resources/shebang
refactor(resources): replace shebang for TC include files
2025-07-04 04:27:21 +07:00
Eberhard Beilharz
69eede0a28
maint(resources): use tc_ prefix for all tc-*.inc.sh functions
- 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
2025-07-03 18:48:47 +02:00
Eberhard Beilharz
5a1bf52727
refactor(resources): replace shebang for include files
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
2025-07-03 17:57:02 +02:00
Eberhard Beilharz
ecd3f9a1fa
maint(android): remove --ci parameter from android builds
`--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
2025-07-03 17:43:22 +02:00
Eberhard Beilharz
841fd3efa1
maint(android): fix previous commit 2025-07-03 17:13:17 +02:00
Eberhard Beilharz
e3ad0975a9
maint(android): address code review comments
Co-authored-by: Marc Durdin <marc@durdin.net>
2025-07-03 13:26:29 +02:00
Eberhard Beilharz
fe2024a13f
maint(android): add TC build scripts for Keyman for Android
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
2025-07-02 18:45:51 +02:00