mirror of
https://github.com/keymanapp/keyman.git
synced 2026-08-13 12:19:25 +00:00
Note: there is a bit of potential confusion about the difference between /resources/builder.inc.sh (the full implementation for builder scripts), and /resources/build/builder.inc.sh (the source script that builder scripts should always use). This allows us to make assumptions that will always be true for builder scripts that may not be true for other scripts, such as setting base folder.
58 lines
2 KiB
Bash
Executable file
58 lines
2 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
## START STANDARD BUILD SCRIPT INCLUDE
|
|
# adjust relative paths as necessary
|
|
THIS_SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")"
|
|
. "${THIS_SCRIPT%/*}/../../../resources/build/builder.inc.sh"
|
|
## END STANDARD BUILD SCRIPT INCLUDE
|
|
|
|
. "$KEYMAN_ROOT/resources/shellHelperFunctions.sh"
|
|
. "$KEYMAN_ROOT/resources/build/build-utils-ci.inc.sh"
|
|
|
|
################################ Main script ################################
|
|
|
|
builder_describe "Build the include script for current Keyman version" \
|
|
configure \
|
|
clean \
|
|
build \
|
|
"pack build a local .tgz pack for testing" \
|
|
"publish publish to npm" \
|
|
test
|
|
|
|
builder_describe_outputs \
|
|
configure "/node_modules" \
|
|
build "/common/web/keyman-version/build/version.inc.js"
|
|
|
|
builder_parse "$@"
|
|
|
|
function do_build() {
|
|
# Generate version.inc.ts
|
|
echo "
|
|
// Generated by common/web/keyman-version/build.sh
|
|
//
|
|
// Note: does not use the 'default' keyword so that the export name is
|
|
// correct when converted to a CommonJS module with \`esbuild\`.
|
|
export class KEYMAN_VERSION {
|
|
static readonly VERSION = \"$VERSION\";
|
|
static readonly VERSION_RELEASE =\"$VERSION_RELEASE\";
|
|
static readonly VERSION_MAJOR = \"$VERSION_MAJOR\";
|
|
static readonly VERSION_MINOR = \"$VERSION_MINOR\";
|
|
static readonly VERSION_PATCH = \"$VERSION_PATCH\";
|
|
static readonly TIER =\"$TIER\";
|
|
static readonly VERSION_TAG = \"$VERSION_TAG\";
|
|
static readonly VERSION_WITH_TAG = \"$VERSION_WITH_TAG\";
|
|
static readonly VERSION_ENVIRONMENT = \"$VERSION_ENVIRONMENT\";
|
|
static readonly VERSION_GIT_TAG = \"$VERSION_GIT_TAG\";
|
|
}
|
|
|
|
// Also provides it as a 'default' export.
|
|
export default KEYMAN_VERSION;
|
|
" > ./version.inc.ts
|
|
|
|
tsc --build $builder_verbose
|
|
}
|
|
|
|
builder_run_action clean rm -rf version.inc.ts keyman-version.mts build/
|
|
builder_run_action configure verify_npm_setup
|
|
builder_run_action build do_build
|
|
builder_run_action publish builder_publish_to_npm
|
|
builder_run_action pack builder_publish_to_pack
|