mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-06 20:47:00 +02:00
69 lines
2.2 KiB
Bash
Executable File
69 lines
2.2 KiB
Bash
Executable File
#!/bin/bash
|
|
# Copyright (c) 2022 The Flatcar Maintainers.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
set -euo pipefail
|
|
|
|
# Test execution script for the Openstack vendor image.
|
|
# This script is supposed to run in the mantle container.
|
|
|
|
source ci-automation/vendor_test.sh
|
|
|
|
# ARM64 does not seem to be supported yet with devstack, so for now fail it as an
|
|
# unsupported option.
|
|
if [[ "${CIA_ARCH}" == "arm64" ]]; then
|
|
echo "1..1" > "${CIA_TAPFILE}"
|
|
echo "not ok - all qemu tests" >> "${CIA_TAPFILE}"
|
|
echo " ---" >> "${CIA_TAPFILE}"
|
|
echo " ERROR: ARM64 tests not supported on Openstack (devstack)." | tee -a "${CIA_TAPFILE}"
|
|
echo " ..." >> "${CIA_TAPFILE}"
|
|
break_retest_cycle
|
|
exit 1
|
|
fi
|
|
|
|
# OPENSTACK_CREDS, OPENSTACK_USER, OPENSTACK_HOST, OPENSTACK_KEYFILE should be provided by sdk_container/.env
|
|
config_file=''
|
|
secret_to_file config_file "${OPENSTACK_CREDS}"
|
|
|
|
openstack_keyfile=''
|
|
secret_to_file openstack_keyfile "${OPENSTACK_KEYFILE}"
|
|
|
|
# Make sure that everything is cleaned up before starting.
|
|
ore --config-file "${config_file}" openstack gc --duration 1s
|
|
|
|
# Upload the image on OpenStack dev instance.
|
|
IMAGE_ID=$(ore openstack create-image \
|
|
--name=flatcar-"${CIA_VERNUM}" \
|
|
--file="https://${BUILDCACHE_SERVER}/images/${CIA_ARCH}/${CIA_VERNUM}/${OPENSTACK_IMAGE_NAME}" \
|
|
--config-file="${config_file}"
|
|
)
|
|
|
|
# Delete the image once we exit.
|
|
trap 'ore --config-file "${config_file}" openstack delete-image --id "${IMAGE_ID}" || true' EXIT
|
|
|
|
kola_test_basename="ci-${CIA_VERNUM//+/-}"
|
|
kola_test_basename="${kola_test_basename//[+.]/-}"
|
|
|
|
set -x
|
|
|
|
timeout --signal=SIGQUIT 2h kola run \
|
|
--board="${CIA_ARCH}-usr" \
|
|
--parallel="${OPENSTACK_PARALLEL}" \
|
|
--tapfile="${CIA_TAPFILE}" \
|
|
--channel="${CIA_CHANNEL}" \
|
|
--basename="${kola_test_basename}" \
|
|
--platform=openstack \
|
|
--openstack-network=public \
|
|
--openstack-domain=default \
|
|
--openstack-flavor=flatcar-flavor \
|
|
--openstack-user="${OPENSTACK_USER}" \
|
|
--openstack-host="${OPENSTACK_HOST}" \
|
|
--openstack-keyfile="${openstack_keyfile}" \
|
|
--openstack-image="${IMAGE_ID}" \
|
|
--openstack-config-file="${config_file}" \
|
|
--image-version "${CIA_VERNUM}" \
|
|
"${@}"
|
|
|
|
set +x
|