Merge pull request #14784 from keymanapp/fix/common/tests-running-in-container

fix(common): some more tests running successfully in a container

- setting KEYMAN_ROOT
- ignoring test:linux until #13887 is fixed
- tagging default containers, instead of running a second build on the same Dockerfile
This commit is contained in:
Markus Greiner 2025-09-23 13:56:15 +02:00 committed by GitHub
commit ceea0eea46
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 12 additions and 7 deletions

View file

@ -54,6 +54,7 @@ function _builder_basic_find_keyman_root() {
KEYMAN_ROOT="${BASH_SOURCE[0]%/*/*/*}"
KEYMAN_ROOT="$( cd "$KEYMAN_ROOT" && echo "$PWD" )"
readonly KEYMAN_ROOT
export KEYMAN_ROOT
fi
}

View file

@ -57,7 +57,8 @@ build_action() {
# with the tag 'default'.
if is_default_values; then
builder_echo debug "Setting default tag for ${platform}"
docker_wrapper build -t "${registry_slash}keymanapp/keyman-${platform}-ci:default" "${build_args[@]}" .
docker_wrapper tag "${registry_slash}keymanapp/keyman-${platform}-ci:${build_version}" \
"${registry_slash}keymanapp/keyman-${platform}-ci:default"
fi
# shellcheck disable=SC2164,SC2103
cd -
@ -104,7 +105,7 @@ if builder_has_action build; then
fi
builder_run_action test:core test_action core
builder_run_action test:linux test_action linux
# builder_run_action test:linux test_action linux
builder_run_action test:web test_action web
# Android uses artifacts from web, so it has to come after web
builder_run_action test:android test_action android

View file

@ -87,6 +87,9 @@ setup_docker() {
if [[ "${MSYSTEM:-}" == "MINGW64" ]]; then
DOCKER_RUN_ARGS+=(--env DOCKER_RUN_AS_ROOT=1)
fi
if [[ -z ${DOCKER_RUNNING:-} ]] ; then
DOCKER_RUN_ARGS+=(-t)
fi
}
setup_container_registry() {

View file

@ -44,21 +44,21 @@ else
fi
run_android() {
docker_wrapper run "${DOCKER_RUN_ARGS[@]}" -it --rm -v "${KEYMAN_ROOT}":/home/build/build \
docker_wrapper run "${DOCKER_RUN_ARGS[@]}" -i --rm -v "${KEYMAN_ROOT}":/home/build/build \
-v "${KEYMAN_ROOT}/core/build/docker-core/${build_dir}":/home/build/build/core/build \
"${registry_slash}keymanapp/keyman-android-ci:${image_version}" \
"${builder_extra_params[@]}"
}
run_core() {
docker_wrapper run "${DOCKER_RUN_ARGS[@]}" -it --rm -v "${KEYMAN_ROOT}":/home/build/build \
docker_wrapper run "${DOCKER_RUN_ARGS[@]}" -i --rm -v "${KEYMAN_ROOT}":/home/build/build \
-v "${KEYMAN_ROOT}/core/build/docker-core/${build_dir}":/home/build/build/core/build \
"${registry_slash}keymanapp/keyman-core-ci:${image_version}" \
"${builder_extra_params[@]}"
}
run_developer() {
docker_wrapper run "${DOCKER_RUN_ARGS[@]}" -it --rm -v "${KEYMAN_ROOT}":/home/build/build \
docker_wrapper run "${DOCKER_RUN_ARGS[@]}" -i --rm -v "${KEYMAN_ROOT}":/home/build/build \
-v "${KEYMAN_ROOT}/core/build/docker-core/${build_dir}":/home/build/build/core/build \
"${registry_slash}keymanapp/keyman-developer-ci:${image_version}" \
"${builder_extra_params[@]}"
@ -67,7 +67,7 @@ run_developer() {
run_linux() {
mkdir -p "${KEYMAN_ROOT}/linux/build/docker-linux/${build_dir}"
mkdir -p "${KEYMAN_ROOT}/linux/keyman-system-service/build/docker-linux/${build_dir}"
docker_wrapper run "${DOCKER_RUN_ARGS[@]}" -it --privileged --rm -v "${KEYMAN_ROOT}":/home/build/build \
docker_wrapper run "${DOCKER_RUN_ARGS[@]}" -i --privileged --rm -v "${KEYMAN_ROOT}":/home/build/build \
-v "${KEYMAN_ROOT}/core/build/docker-core/${build_dir}":/home/build/build/core/build \
-v "${KEYMAN_ROOT}/linux/build/docker-linux/${build_dir}":/home/build/build/linux/build \
-v "${KEYMAN_ROOT}/linux/keyman-system-service/build/docker-linux/${build_dir}":/home/build/build/linux/keyman-system-service/build \
@ -77,7 +77,7 @@ run_linux() {
}
run_web() {
docker_wrapper run "${DOCKER_RUN_ARGS[@]}" -it --privileged --rm -v "${KEYMAN_ROOT}":/home/build/build \
docker_wrapper run "${DOCKER_RUN_ARGS[@]}" -i --privileged --rm -v "${KEYMAN_ROOT}":/home/build/build \
-v "${KEYMAN_ROOT}/core/build/docker-core/${build_dir}":/home/build/build/core/build \
"${registry_slash}keymanapp/keyman-web-ci:${image_version}" \
"${builder_extra_params[@]}"