ci/lava: Use CI_JOB_TIMEOUT instead of separate variable

The CI_JOB_TIMEOUT variable is the GitLab-defined job timeout in
seconds.
Use this variable in LAVA instead of the separate JOB_TIMEOUT,
which was intended to represent the test phase timeout (job timeout
minus 5 minutes), but was often overlooked.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32609>
This commit is contained in:
Valentine Burley
2024-12-11 16:17:50 +01:00
committed by Marge Bot
parent d5b96309e7
commit 61d9c47944
7 changed files with 7 additions and 20 deletions

View File

@@ -69,7 +69,7 @@ PYTHONPATH=artifacts/ artifacts/lava/lava_job_submitter.py \
--farm "${FARM}" \
--device-type "${DEVICE_TYPE}" \
--boot-method "${BOOT_METHOD}" \
--job-timeout-min ${JOB_TIMEOUT:-30} \
--job-timeout-min $((CI_JOB_TIMEOUT/60 - 5)) \
--dump-yaml \
--pipeline-info "$CI_JOB_NAME: $CI_PIPELINE_URL on $CI_COMMIT_REF_NAME ${CI_NODE_INDEX}/${CI_NODE_TOTAL}" \
--rootfs-url "${ROOTFS_URL}" \

View File

@@ -35,9 +35,13 @@ LAVA_QUEUE_TIMEOUT = int(getenv("LAVA_QUEUE_TIMEOUT", 60))
# the enqueue delay.
LAVA_BOOT_TIMEOUT = int(getenv("LAVA_BOOT_TIMEOUT", 9))
# Estimated overhead in minutes for a job from GitLab to reach the test phase,
# including LAVA scheduling and boot duration
LAVA_TEST_OVERHEAD_MIN = 5
# Test DUT suite phase is where the initialization happens in DUT, not on docker.
# The device will be listening to SSH session until the end of the job.
LAVA_TEST_DUT_SUITE_TIMEOUT = int(getenv("JOB_TIMEOUT", 60))
LAVA_TEST_DUT_SUITE_TIMEOUT = int(getenv("CI_JOB_TIMEOUT")) // 60 - LAVA_TEST_OVERHEAD_MIN
# Test suite phase is where the initialization happens on docker.
LAVA_TEST_SUITE_TIMEOUT = int(getenv("LAVA_TEST_SUITE_TIMEOUT", 5))
@@ -45,7 +49,7 @@ LAVA_TEST_SUITE_TIMEOUT = int(getenv("LAVA_TEST_SUITE_TIMEOUT", 5))
# Test cases may take a long time, this script has no right to interrupt
# them. But if the test case takes almost 1h, it will never succeed due to
# Gitlab job timeout.
LAVA_TEST_CASE_TIMEOUT = int(getenv("JOB_TIMEOUT", 60))
LAVA_TEST_CASE_TIMEOUT = int(getenv("CI_JOB_TIMEOUT")) // 60 - LAVA_TEST_OVERHEAD_MIN
# LAVA post processing may refer to a test suite teardown, or the
# adjustments to start the next test_case

View File

@@ -29,7 +29,6 @@ radv-stoney-angle-full:
parallel: 2
variables:
DEQP_SUITE: radv-stoney-angle-full
JOB_TIMEOUT: 60
radeonsi-stoney-gl:
extends:
@@ -149,7 +148,6 @@ radeonsi-raven-va-full:
- radeonsi-raven-va
- .radeonsi-vaapi-manual-rules
variables:
JOB_TIMEOUT: 60
GTEST_FRACTION: null
############### VKCTS tests ###############

View File

@@ -103,7 +103,6 @@ a618-vk-full:
# ran into OOM with VK-GL-CTS 1.2.8.0 at 6
FDO_CI_CONCURRENT: 4
DEQP_SUITE: freedreno-a618-vk-full
JOB_TIMEOUT: 115
DEQP_FRACTION: 1
a618-gl:
@@ -123,7 +122,6 @@ a618-gl-full:
timeout: 65m
variables:
DEQP_FRACTION: 1
JOB_TIMEOUT: 60
# Run dEQP EGL window system tests separately with the window systems available.
# X11 takes over the screen, wayland is run headless.
@@ -173,7 +171,6 @@ a618-piglit-full:
DEQP_SUITE: freedreno-a618-piglit-full
FLAKES_CHANNEL: "#freedreno-ci"
HWCI_START_WESTON: 1
JOB_TIMEOUT: 60
a618-piglit-cl:
extends:
@@ -261,7 +258,6 @@ a660-vk-full:
timeout: 1h
variables:
DEQP_SUITE: freedreno-a660-vk-full
JOB_TIMEOUT: 55
# X11 takes over the screen, wayland is run headless.
a630-gl:

View File

@@ -57,7 +57,6 @@ zink-anv-adl-full:
- .zink-anv-manual-rules
variables:
DEQP_SUITE: zink-anv-adl-full
JOB_TIMEOUT: 105
HWCI_START_WESTON: 1
timeout: 2h
parallel: 2
@@ -82,7 +81,6 @@ zink-anv-tgl-full:
- .zink-anv-manual-rules
variables:
DEQP_SUITE: zink-anv-tgl-full
JOB_TIMEOUT: 105
HWCI_START_WESTON: 1
timeout: 1h 45m
parallel: 3

View File

@@ -16,7 +16,6 @@ anv-jsl-full:
- .anv-manual-rules
variables:
DEQP_SUITE: anv-jsl-full
JOB_TIMEOUT: 115
parallel: 4
timeout: 2h
@@ -36,7 +35,6 @@ anv-adl-full:
- .anv-manual-rules
variables:
DEQP_SUITE: anv-adl-full
JOB_TIMEOUT: 90
timeout: 1h 40m
parallel: 5
@@ -55,7 +53,6 @@ anv-tgl-full:
- .anv-manual-rules
variables:
DEQP_SUITE: anv-tgl-full
JOB_TIMEOUT: 90
timeout: 100m
parallel: 4
@@ -94,7 +91,6 @@ anv-jsl-angle-full:
- .intel-manual-rules
variables:
DEQP_SUITE: anv-jsl-angle-full
JOB_TIMEOUT: 60
parallel: 2
anv-adl-angle:
@@ -113,7 +109,6 @@ anv-adl-angle-full:
- .intel-manual-rules
variables:
DEQP_SUITE: anv-adl-angle-full
JOB_TIMEOUT: 60
timeout: 30m
anv-tgl-angle:
@@ -131,7 +126,6 @@ anv-tgl-angle-full:
- .intel-manual-rules
variables:
DEQP_SUITE: anv-tgl-angle-full
JOB_TIMEOUT: 60
iris-apl-deqp:
extends:

View File

@@ -262,7 +262,6 @@ panfrost-t760-gles:arm32:
- .panfrost-test
- .lava-rk3288-veyron-jaq:arm32
variables:
JOB_TIMEOUT: 60
panfrost-t760-traces:arm32:
extends:
@@ -354,7 +353,6 @@ panfrost-g52-vk-full:arm64:
timeout: 3h
variables:
DEQP_SUITE: panfrost-g52-vk-full
JOB_TIMEOUT: 185
panfrost-g52-piglit-gles2:arm64:
extends:
@@ -430,4 +428,3 @@ panfrost-g610-vk-full:arm64:
timeout: 1h 35m
variables:
DEQP_SUITE: panfrost-g610-vk-full
JOB_TIMEOUT: 90