ci/bare-metal: Stop fetching the git tree.
Like for LAVA, make the tradeoff of moving the test scripts and data (55k) into the artifacts in order to make the per-build jobs not have to pull down the git tree (hundreds of MB when you don't hit a cached container for your specific user, which I see happen multiple times a day in my CI runs). To do this, we have to be a bit more careful in some places about our working directory potentially being dirty. Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5393>
This commit is contained in:
parent
109816b518
commit
72fe7b98ea
|
@ -885,13 +885,14 @@ arm64_a630_gles2:
|
||||||
BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init"
|
BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init"
|
||||||
DEQP_EXPECTED_FAILS: deqp-freedreno-a630-fails.txt
|
DEQP_EXPECTED_FAILS: deqp-freedreno-a630-fails.txt
|
||||||
DEQP_SKIPS: deqp-freedreno-a630-skips.txt
|
DEQP_SKIPS: deqp-freedreno-a630-skips.txt
|
||||||
|
GIT_STRATEGY: none
|
||||||
NIR_VALIDATE: 0
|
NIR_VALIDATE: 0
|
||||||
DEQP_EXPECTED_RENDERER: FD630
|
DEQP_EXPECTED_RENDERER: FD630
|
||||||
DEQP_NO_SAVE_RESULTS: ""
|
DEQP_NO_SAVE_RESULTS: ""
|
||||||
tags:
|
tags:
|
||||||
- google-freedreno-cheza
|
- google-freedreno-cheza
|
||||||
script:
|
script:
|
||||||
- .gitlab-ci/bare-metal/cros-servo.sh
|
- ./install/bare-metal/cros-servo.sh
|
||||||
|
|
||||||
arm64_a630_gles31:
|
arm64_a630_gles31:
|
||||||
extends: arm64_a630_gles2
|
extends: arm64_a630_gles2
|
||||||
|
@ -993,7 +994,7 @@ arm64_a306_gles2:
|
||||||
DEQP_NO_SAVE_RESULTS: 1
|
DEQP_NO_SAVE_RESULTS: 1
|
||||||
# NIR_VALIDATE=0 left intentionally unset as a3xx is fast enough at its small testsuite.
|
# NIR_VALIDATE=0 left intentionally unset as a3xx is fast enough at its small testsuite.
|
||||||
script:
|
script:
|
||||||
- .gitlab-ci/bare-metal/fastboot.sh
|
- ./install/bare-metal/fastboot.sh
|
||||||
needs:
|
needs:
|
||||||
- arm_test-base
|
- arm_test-base
|
||||||
- arm64_test
|
- arm64_test
|
||||||
|
@ -1021,7 +1022,7 @@ arm64_a306_gles3_options:
|
||||||
DEQP_VER: gles3
|
DEQP_VER: gles3
|
||||||
script:
|
script:
|
||||||
# Check that the non-constbuf UBO case works.
|
# Check that the non-constbuf UBO case works.
|
||||||
- DEQP_RUN_SUFFIX=-nouboopt IR3_SHADER_DEBUG=nouboopt DEQP_CASELIST_FILTER="functional.*ubo" .gitlab-ci/bare-metal/fastboot.sh
|
- DEQP_RUN_SUFFIX=-nouboopt IR3_SHADER_DEBUG=nouboopt DEQP_CASELIST_FILTER="functional.*ubo" ./install/bare-metal/fastboot.sh
|
||||||
|
|
||||||
arm64_a530_gles2:
|
arm64_a530_gles2:
|
||||||
extends:
|
extends:
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
# NFS and TFTP to boot.
|
# NFS and TFTP to boot.
|
||||||
|
|
||||||
# We're run from the root of the repo, make a helper var for our paths
|
# We're run from the root of the repo, make a helper var for our paths
|
||||||
BM=$CI_PROJECT_DIR/.gitlab-ci/bare-metal
|
BM=$CI_PROJECT_DIR/install/bare-metal
|
||||||
|
|
||||||
# Runner config checks
|
# Runner config checks
|
||||||
if [ -z "$BM_SERIAL" ]; then
|
if [ -z "$BM_SERIAL" ]; then
|
||||||
|
@ -47,6 +47,11 @@ fi
|
||||||
|
|
||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
|
# Clear out any previous run's artifacts.
|
||||||
|
rm -rf results/
|
||||||
|
mkdir -p results
|
||||||
|
find artifacts/ -name serial\*.txt | xargs rm -f
|
||||||
|
|
||||||
# Create the rootfs in the NFS directory. rm to make sure it's in a pristine
|
# Create the rootfs in the NFS directory. rm to make sure it's in a pristine
|
||||||
# state, since it's volume-mounted on the host.
|
# state, since it's volume-mounted on the host.
|
||||||
rsync -a --delete $BM_ROOTFS/ /nfs/
|
rsync -a --delete $BM_ROOTFS/ /nfs/
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
BM=$CI_PROJECT_DIR/.gitlab-ci/bare-metal
|
BM=$CI_PROJECT_DIR/install/bare-metal
|
||||||
|
|
||||||
if [ -z "$BM_SERIAL" -a -z "$BM_SERIAL_SCRIPT" ]; then
|
if [ -z "$BM_SERIAL" -a -z "$BM_SERIAL_SCRIPT" ]; then
|
||||||
echo "Must set BM_SERIAL OR BM_SERIAL_SCRIPT in your gitlab-runner config.toml [[runners]] environment"
|
echo "Must set BM_SERIAL OR BM_SERIAL_SCRIPT in your gitlab-runner config.toml [[runners]] environment"
|
||||||
|
@ -47,11 +47,14 @@ fi
|
||||||
|
|
||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
# Copy the rootfs to a temporary for our setup, as I believe changes to the
|
# Clear out any previous run's artifacts.
|
||||||
# container can end up impacting future runs.
|
rm -rf results/
|
||||||
cp -Rp $BM_ROOTFS/ rootfs
|
mkdir -p results
|
||||||
|
find artifacts/ -name serial\*.txt | xargs rm -f
|
||||||
|
|
||||||
. .gitlab-ci/bare-metal/rootfs-setup.sh rootfs
|
# Create the rootfs in a temp dir
|
||||||
|
rsync -a --delete $BM_ROOTFS/ rootfs/
|
||||||
|
. $BM/rootfs-setup.sh rootfs
|
||||||
|
|
||||||
# Finally, pack it up into a cpio rootfs. Skip the vulkan CTS since none of
|
# Finally, pack it up into a cpio rootfs. Skip the vulkan CTS since none of
|
||||||
# these devices use it and it would take up space in the initrd.
|
# these devices use it and it would take up space in the initrd.
|
||||||
|
|
|
@ -7,4 +7,4 @@ if [ -z "$relay" ]; then
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$CI_PROJECT_DIR/.gitlab-ci/bare-metal/google-power-relay.py off $relay
|
$CI_PROJECT_DIR/install/bare-metal/google-power-relay.py off $relay
|
||||||
|
|
|
@ -7,6 +7,6 @@ if [ -z "$relay" ]; then
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$CI_PROJECT_DIR/.gitlab-ci/bare-metal/google-power-relay.py off $relay
|
$CI_PROJECT_DIR/install/bare-metal/google-power-relay.py off $relay
|
||||||
sleep 5
|
sleep 5
|
||||||
$CI_PROJECT_DIR/.gitlab-ci/bare-metal/google-power-relay.py on $relay
|
$CI_PROJECT_DIR/install/bare-metal/google-power-relay.py on $relay
|
||||||
|
|
|
@ -23,6 +23,7 @@ find install -name \*.so -exec $STRIP {} \;
|
||||||
# Test runs don't pull down the git tree, so put the dEQP helper
|
# Test runs don't pull down the git tree, so put the dEQP helper
|
||||||
# script and associated bits there.
|
# script and associated bits there.
|
||||||
cp VERSION install/
|
cp VERSION install/
|
||||||
|
cp -Rp .gitlab-ci/bare-metal install/
|
||||||
cp -Rp .gitlab-ci/deqp* install/
|
cp -Rp .gitlab-ci/deqp* install/
|
||||||
cp -Rp .gitlab-ci/piglit install/
|
cp -Rp .gitlab-ci/piglit install/
|
||||||
cp -Rp .gitlab-ci/traces.yml install/
|
cp -Rp .gitlab-ci/traces.yml install/
|
||||||
|
|
Loading…
Reference in New Issue