Commit graph

28 commits

Author SHA1 Message Date
Marc Durdin
7b13f0fcbc fix(windows): adjust symbol paths for publishing to symbol server
There were two issues arising from #15493 - first,
`$KEYMAN_SYMSTOREPATH` was set too late, after the build, and second,
symsrv renames `000admin` to `000Admin` but we need to keep it lowercase
for our deployment server, so rename it back just in time before
uploading.

As tidy-up, given that the folder name `000admin` is static and never
changes, removed the parameter and hard-coded it instead.

* export `$KEYMAN_SYMSTOREPATH` before build
* define `000admin` folder explicitly and deprecate --symbols-subdir parameter
* rename `000Admin` to `000admin` before upload

Fixes: #14837
Follows: #15493
Test-bot: skip
2026-01-29 10:18:37 +11:00
Marc Durdin
7dc7de78f4 fix(windows): export sym store path so symbols are published
Fixes: #14837
Test-bot: skip
2026-01-26 11:16:41 +11:00
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
ba411774f6 maint(resources): move NPM package publishing to GitHub Actions
Due to recent changes in NPM package publishing security requirements,
we have to move from TeamCity build to a GitHub Action to publish our
NPM packages, so we can take advantage of trusted publishing. This
change also consolidates and centralizes the npm publishing into
resources/build/ci/npm-publish.sh, which removes a lot of boilerplate
from each of the build.sh scripts, and ensures consistency.

Packages will be `npm pack`ed on PR and test builds, and published in
release builds.

Ref: https://docs.npmjs.com/trusted-publishers
Ref: https://github.blog/changelog/2025-09-29-strengthening-npm-security-important-changes-to-authentication-and-token-management/
Fixes: #14963
Test-bot: skip
Build-bot: release:developer
2025-10-27 16:31:55 +01: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
51ca604b47
chore(common): Merge remote-tracking branch 'origin/master' into maint/common/14109_isOsFuncs 2025-07-21 09:20:12 +02:00
Eberhard Beilharz
3ec8ebc8f2
Merge pull request #14309 from keymanapp/maint/developer/14263_kmc-zip 2025-07-14 19:49:55 +02:00
Eberhard Beilharz
6f737f6070
Merge pull request #14323 from keymanapp/maint/windows/14202_symbols
Fixes: #14202
2025-07-09 18:35:36 +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
98159ae746
maint(windows): replace hardcoded symbols paths with parameters
Only touches release build files, so skipping PR test builds.

Fixes: #14202
Build-bot: skip
Test-bot: skip
2025-07-09 16:30:18 +02:00
Eberhard Beilharz
428b611eff
maint(developer): add missing include file 🩹
`keyman-developer-release.sh` calls the `write_download_info` function
but neglected to source the `shellHelperFunctions.sh` file which
defines that function. Thus this change fixes the release build.

Build-bot: skip
Test-bot: skip
2025-07-09 12:06:17 +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
bc7499a3e1
maint(developer): consolidate creating KMC_ZIP file
Previously we created the KMC_ZIP file twice, and one of them was
outdated. This change moves creating the zip file to
`developer/src/inst/build.sh` so that the TC build script only does the
upload.

Fixes: #14263
Test-bot: skip
2025-07-07 19:14:40 +02:00
Eberhard Beilharz
4d373c6cfe
maint(resources): address code review comments
Co-authored-by: Marc Durdin <marc@durdin.net>
2025-07-07 18:41:16 +02: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
436b4f3543
chore(windows): Merge branch 'master' into maint/windows/13399_tconfig 2025-07-03 13:04:09 +02:00
Eberhard Beilharz
f38eaa1295
maint(developer): replace Powershell scripts
Refactors the Powershell scripts that download and upload files and
create .download_info files.

This change is based on #14236/#14254 which bypasses the path rewriting
that msys does when calling Windows rsync.

Fixes: #14226
Related: #14236
Build-bot: skip
Test-bot: skip
2025-07-02 19:14:08 +02:00
Eberhard Beilharz
bc5e05fd84
refactor(developer): use shared upload_help function
Build-bot: build developer
Test-bot: skip
2025-06-24 18:48:33 +02:00
Eberhard Beilharz
bc485856c9
maint(windows): move TC configuration for Keyman Windows to scripts
Part-of: #13399
Test-bot: skip
2025-06-13 19:15:46 +02:00
Eberhard Beilharz
fd314eb2f7
maint(developer): export environment variables
Export the newly introduced variables so that they are available in the
powershell script.

Fixes: #14150
Follow-up-of: #14052
Test-bot: skip
2025-06-10 19:43:47 +02:00
Eberhard Beilharz
8679b6db1d
maint(developer): change to correct directory for powershell scripts 2025-06-05 09:42:39 +02:00
Eberhard Beilharz
3e3c56f9e7
maint(developer): add arguments to keyman-developer-release.sh script
Instead of relying on set environment variables this now allows to pass
the required values as arguments.
2025-06-04 20:47:00 +02:00
Eberhard Beilharz
06cb2520e9
maint(developer): run publish action only on Windows
This addresses a code review comment. Instead of checking on each
sub action this now checks on the main publish action.
2025-06-04 20:39:26 +02:00
Eberhard Beilharz
86f3f77623
maint(web): update or add file header 2025-06-04 18:05:47 +02:00
Eberhard Beilharz
254544364b
maint(web): fix typo 2025-05-27 20:10:43 +02:00
Eberhard Beilharz
797af43b0a
maint(web): move TC configuration for Keyman Developer to scripts
This matches the existing TC configuration as closely as possible.

Part-of: #13399
Test-bot: skip
2025-05-26 19:24:16 +02:00