ci/lava: Use an alpine image for SSH client container

Use a lightweight container for ping, ssh, curl and bash support.
Also use an image located at fd.o infrastructure, since we are having
some issues with Collabora's gitlab one lately.

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23534>
This commit is contained in:
Guilherme Gallo 2023-06-08 22:03:15 -03:00 committed by Marge Bot
parent db3b5370ec
commit a5ccb4dafb
6 changed files with 20 additions and 4 deletions

View file

@ -36,6 +36,8 @@ variables:
- $RUNNER_TAG
after_script:
- curl -L --retry 4 -f --retry-all-errors --retry-delay 60 -s "https://${JOB_RESULTS_PATH}" | tar --zstd -x
needs:
- alpine/x86_64_lava_ssh_client
.lava-test:arm32:
variables:
@ -50,6 +52,7 @@ variables:
- .lava-test
- .use-kernel+rootfs-arm
needs:
- !reference [.lava-test, needs]
- kernel+rootfs_arm32
- debian/x86_64_build
- debian-arm32
@ -75,6 +78,7 @@ variables:
dependencies:
- debian-arm64
needs:
- !reference [.lava-test, needs]
- kernel+rootfs_arm64
- debian/x86_64_build
- debian-arm64
@ -98,6 +102,7 @@ variables:
- .lava-test
- .use-kernel+rootfs-x86_64
needs:
- !reference [.lava-test, needs]
- kernel+rootfs_x86_64
- debian-testing

View file

@ -57,4 +57,5 @@ PYTHONPATH=artifacts/ artifacts/lava/lava_job_submitter.py \
--lava-tags "${LAVA_TAGS}" \
--mesa-job-name "$CI_JOB_NAME" \
--structured-log-file "results/lava_job_detail.json" \
--ssh-client-image "${LAVA_SSH_CLIENT_IMAGE}" \
>> results/lava.log

View file

@ -378,6 +378,7 @@ class LAVAJobSubmitter(PathResolver):
visibility_group: str = None # Only affects LAVA farm maintainers
job_rootfs_overlay_url: str = None
structured_log_file: pathlib.Path = None # Log file path with structured LAVA log
ssh_client_image: str = None # x86_64 SSH client image to follow the job's output
__structured_log_context = contextlib.nullcontext() # Structured Logger context
def __post_init__(self) -> None:

View file

@ -30,11 +30,12 @@ script after sourcing "dut-env-vars.sh" again for the second SSH test case.
from pathlib import Path
from typing import Any
from .lava_job_definition import (
artifact_download_steps,
to_yaml_block,
generate_metadata,
NUMBER_OF_ATTEMPTS_LAVA_BOOT,
artifact_download_steps,
generate_metadata,
to_yaml_block,
)
# Very early SSH server setup. Uses /dut_ready file to flag it is done.
@ -134,7 +135,7 @@ def generate_docker_test(args):
}
],
"docker": {
"image": "registry.gitlab.collabora.com/lava/health-check-docker:wip-laura-ping-ssh-support",
"image": args.ssh_client_image,
},
}

View file

@ -135,6 +135,8 @@ a530-traces:
PIGLIT_RESULTS: "freedreno-a530-replay"
.a618-test:
extends:
.lava-test:arm64
variables:
FLAKES_CHANNEL: "#freedreno-ci"
BOOT_METHOD: depthcharge
@ -259,6 +261,9 @@ a618-traces-performance:
# Always use the same device
# a618 tag starts with cbg-1 (not cbg-0) for some reason
LAVA_TAGS: "cbg-1"
needs:
- !reference [a618-traces, needs]
- !reference [.piglit-performance:arm64, needs]
.lava-sm8350-hdk:
variables:

View file

@ -136,6 +136,9 @@ zink-tu-a618-traces-performance:
# Always use the same device
# a618 tag starts with cbg-1 (not cbg-0) for some reason
LAVA_TAGS: "cbg-1"
needs:
- !reference [zink-tu-a618-traces, needs]
- !reference [.piglit-performance:arm64, needs]
.zink-freedreno-a630-traces:
extends: