github.com/rancher/elemental/tests@v0.0.0-20240517125144-ae048c615b3f/scripts/start-cypress-tests (about) 1 #!/bin/bash 2 3 set -evx 4 5 ELEMENTAL_MEDIA_PATH="/home/gh-runner/actions-runner/_work/elemental/elemental/elemental-from-cypress.$BOOT_TYPE" 6 7 # Start a simple HTTP server for sharing some config files 8 HTTP_SRV_CMD="python3 -m http.server" 9 pushd .. 10 setsid --fork ${HTTP_SRV_CMD} >/dev/null 2>&1 11 popd 12 13 pushd cypress/latest 14 15 # Needed to install Cypress plugins 16 npm install 17 18 # Start Cypress tests with docker 19 docker run -v $PWD:/workdir -w /workdir \ 20 -e BOOT_TYPE=$BOOT_TYPE \ 21 -e CYPRESS_TAGS=$CYPRESS_TAGS \ 22 -e ELEMENTAL_DEV_VERSION=$ELEMENTAL_DEV_VERSION \ 23 -e ELEMENTAL_UI_VERSION=$ELEMENTAL_UI_VERSION \ 24 -e CHARTMUSEUM_REPO=$CHARTMUSEUM_REPO \ 25 -e K8S_UPSTREAM_VERSION=$K8S_UPSTREAM_VERSION \ 26 -e K8S_DOWNSTREAM_VERSION=$K8S_DOWNSTREAM_VERSION \ 27 -e OPERATOR_REPO=$OPERATOR_REPO \ 28 -e OS_VERSION_INSTALL=$OS_VERSION_INSTALL \ 29 -e OS_VERSION_TARGET=$OS_VERSION_TARGET \ 30 -e PROXY=$PROXY \ 31 -e QASE_API_TOKEN=$QASE_API_TOKEN \ 32 -e QASE_REPORT=$QASE_REPORT \ 33 -e QASE_RUN_ID=$QASE_RUN_ID \ 34 -e RANCHER_VERSION=$RANCHER_VERSION \ 35 -e RANCHER_PASSWORD=$RANCHER_PASSWORD \ 36 -e RANCHER_URL=$RANCHER_URL \ 37 -e RANCHER_USER=$RANCHER_USER \ 38 -e UI_ACCOUNT=$UI_ACCOUNT \ 39 -e UPGRADE_FROM_VERSION=$UPGRADE_FROM_VERSION \ 40 -e UPGRADE_IMAGE=$UPGRADE_IMAGE \ 41 -e UPGRADE_OS_CHANNEL=$UPGRADE_OS_CHANNEL \ 42 --add-host host.docker.internal:host-gateway \ 43 --ipc=host \ 44 $CYPRESS_DOCKER \ 45 -s $SPEC 46 47 [[ -d downloads ]] && sudo chown -R gh-runner:users downloads videos 48 49 if [[ ! -f ${ELEMENTAL_MEDIA_PATH} ]]; then 50 # Move elemental.iso into the expected folder 51 mv downloads/*.${BOOT_TYPE} ${ELEMENTAL_MEDIA_PATH} 2>/dev/null; true 52 fi 53 popd 54 55 # Kill the HTTP server 56 pkill -f "${HTTP_SRV_CMD}"