ci(lesavka): run GTK tests under headless display
This commit is contained in:
parent
a5d7b1feda
commit
e55243f42b
11
Jenkinsfile
vendored
11
Jenkinsfile
vendored
@ -90,6 +90,9 @@ spec:
|
|||||||
DOCKER_BUILDKIT = '1'
|
DOCKER_BUILDKIT = '1'
|
||||||
LESAVKA_CI_PROFILE = "${params.LESAVKA_CI_PROFILE}"
|
LESAVKA_CI_PROFILE = "${params.LESAVKA_CI_PROFILE}"
|
||||||
LESAVKA_COVERAGE_ENFORCE = "${params.ENFORCE_COVERAGE_GATE}"
|
LESAVKA_COVERAGE_ENFORCE = "${params.ENFORCE_COVERAGE_GATE}"
|
||||||
|
LESAVKA_CI_HEADLESS_GTK = '1'
|
||||||
|
GDK_BACKEND = 'x11'
|
||||||
|
NO_AT_BRIDGE = '1'
|
||||||
QUALITY_GATE_PUSHGATEWAY_URL = "${params.QUALITY_GATE_PUSHGATEWAY_URL}"
|
QUALITY_GATE_PUSHGATEWAY_URL = "${params.QUALITY_GATE_PUSHGATEWAY_URL}"
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -101,14 +104,16 @@ spec:
|
|||||||
}
|
}
|
||||||
|
|
||||||
stage('Bootstrap CI Toolchain') {
|
stage('Bootstrap CI Toolchain') {
|
||||||
when {
|
|
||||||
expression { return params.LESAVKA_CI_PROFILE != 'safe' }
|
|
||||||
}
|
|
||||||
steps {
|
steps {
|
||||||
container('rust-ci') {
|
container('rust-ci') {
|
||||||
sh '''
|
sh '''
|
||||||
set -eu
|
set -eu
|
||||||
git config --global --add safe.directory "$WORKSPACE"
|
git config --global --add safe.directory "$WORKSPACE"
|
||||||
|
if [ -z "${DISPLAY:-}" ] && ! command -v xvfb-run >/dev/null 2>&1; then
|
||||||
|
apt-get update
|
||||||
|
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends xvfb xauth dbus-x11
|
||||||
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
fi
|
||||||
'''
|
'''
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -27,7 +27,14 @@ build_url=${BUILD_URL:-}
|
|||||||
start_seconds=$(date +%s)
|
start_seconds=$(date +%s)
|
||||||
status=0
|
status=0
|
||||||
set +e
|
set +e
|
||||||
RUST_TEST_THREADS="${RUST_TEST_THREADS:-1}" cargo test --workspace --all-targets --no-fail-fast --color never 2>&1 | tee "${TEST_LOG}"
|
cargo_test_cmd=(cargo test --workspace --all-targets --no-fail-fast --color never)
|
||||||
|
if [[ -z "${DISPLAY:-}" && "${LESAVKA_CI_HEADLESS_GTK:-1}" != "0" ]] && command -v xvfb-run >/dev/null 2>&1; then
|
||||||
|
cargo_test_cmd=(xvfb-run -a -s "-screen 0 1920x1080x24" "${cargo_test_cmd[@]}")
|
||||||
|
fi
|
||||||
|
if command -v dbus-run-session >/dev/null 2>&1; then
|
||||||
|
cargo_test_cmd=(dbus-run-session -- "${cargo_test_cmd[@]}")
|
||||||
|
fi
|
||||||
|
RUST_TEST_THREADS="${RUST_TEST_THREADS:-1}" "${cargo_test_cmd[@]}" 2>&1 | tee "${TEST_LOG}"
|
||||||
status=${PIPESTATUS[0]}
|
status=${PIPESTATUS[0]}
|
||||||
set -e
|
set -e
|
||||||
end_seconds=$(date +%s)
|
end_seconds=$(date +%s)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user