| #!/bin/bash |
| # SPDX-License-Identifier: MIT |
| |
| set -e |
| set -x |
| |
| # Try to use the kernel and rootfs built in mainline first, so we're more |
| # likely to hit cache |
| if curl -L --retry 4 -f --retry-all-errors --retry-delay 60 -s "https://${BASE_SYSTEM_MAINLINE_HOST_PATH}/done"; then |
| BASE_SYSTEM_HOST_PATH="${BASE_SYSTEM_MAINLINE_HOST_PATH}" |
| else |
| BASE_SYSTEM_HOST_PATH="${BASE_SYSTEM_FORK_HOST_PATH}" |
| fi |
| |
| rm -rf results |
| mkdir -p results/job-rootfs-overlay/ |
| |
| cp artifacts/ci-common/capture-devcoredump.sh results/job-rootfs-overlay/ |
| cp artifacts/ci-common/init-*.sh results/job-rootfs-overlay/ |
| cp artifacts/ci-common/intel-gpu-freq.sh results/job-rootfs-overlay/ |
| cp "$SCRIPTS_DIR"/setup-test-env.sh results/job-rootfs-overlay/ |
| |
| # Prepare env vars for upload. |
| section_start variables "Variables passed through:" |
| KERNEL_IMAGE_BASE="https://${BASE_SYSTEM_HOST_PATH}" \ |
| artifacts/ci-common/generate-env.sh | tee results/job-rootfs-overlay/set-job-env-vars.sh |
| section_end variables |
| |
| tar zcf job-rootfs-overlay.tar.gz -C results/job-rootfs-overlay/ . |
| ci-fairy s3cp --token-file "${S3_JWT_FILE}" job-rootfs-overlay.tar.gz "https://${JOB_ROOTFS_OVERLAY_PATH}" |
| |
| touch results/lava.log |
| tail -f results/lava.log & |
| |
| PYTHONPATH=artifacts/ artifacts/lava/lava_job_submitter.py \ |
| submit \ |
| --dump-yaml \ |
| --pipeline-info "$CI_JOB_NAME: $CI_PIPELINE_URL on $CI_COMMIT_REF_NAME ${CI_NODE_INDEX}/${CI_NODE_TOTAL}" \ |
| --rootfs-url-prefix "https://${BASE_SYSTEM_HOST_PATH}" \ |
| --kernel-url-prefix "https://${PIPELINE_ARTIFACTS_BASE}/${DEBIAN_ARCH}" \ |
| --build-url "${FDO_HTTP_CACHE_URI:-}https://${PIPELINE_ARTIFACTS_BASE}/${DEBIAN_ARCH}/kernel-files.tar.zst" \ |
| --job-rootfs-overlay-url "${FDO_HTTP_CACHE_URI:-}https://${JOB_ROOTFS_OVERLAY_PATH}" \ |
| --job-timeout-min ${JOB_TIMEOUT:-80} \ |
| --first-stage-init artifacts/ci-common/init-stage1.sh \ |
| --ci-project-dir "${CI_PROJECT_DIR}" \ |
| --device-type "${DEVICE_TYPE}" \ |
| --farm "${FARM}" \ |
| --dtb-filename "${DTB}" \ |
| --jwt-file "${S3_JWT_FILE}" \ |
| --kernel-image-name "${KERNEL_IMAGE_NAME}" \ |
| --kernel-image-type "${KERNEL_IMAGE_TYPE}" \ |
| --boot-method "${BOOT_METHOD}" \ |
| --visibility-group "${VISIBILITY_GROUP}" \ |
| --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 |