Mathieu Tortuyaux 334f056657
ci-automation: remove Equinix Metal testing
After years of good services and sponsoring from Equinix Metal, we need
to retire those tests for AMD64 / ARM64 bare metal instances.

As Equinix Metal offering is still around until June 2026, let's
continue to produce and release Flatcar images for any users still using
those images but we won't test them as the Flatcar account won't be
covered by sponsoring.

Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
2025-11-24 15:24:19 +01:00

161 lines
5.9 KiB
Bash

# Copyright (c) 2021 The Flatcar Maintainers.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# Flatcar CI static configuration
# Build cache server for build artifacts.
# Required services:
# - http and https (WITHOUT auto-redirect)
# - ssh for BUILDCACHE_USER
BUILDCACHE_SERVER="${BUILDCACHE_SERVER:-bincache.flatcar-linux.net}"
BUILDCACHE_PATH_PREFIX="/mnt/buckets/linode-bincache"
BUILDCACHE_USER="bincache"
CONTAINER_REGISTRY="ghcr.io/flatcar"
RELEASES_JSON_FEED="https://www.flatcar.org/releases-json/releases.json"
GC_BUCKET="flatcar-linux"
DEFAULT_HTTP_IMAGE_URL_TEMPLATE="@PROTO@://${BUILDCACHE_SERVER}/images/@ARCH@/@VERNUM@"
if ! command -v zstd > /dev/null; then
# we require zstd and it is included by default on flatcar
echo >&2 "zstd could not be found. unpacking container image may fail."
fi
CI_GIT_AUTHOR="flatcar-ci"
CI_GIT_EMAIL="infra+ci@flatcar-linux.org"
# build artifacts go here (in container)
CONTAINER_IMAGE_ROOT="/home/sdk/trunk/src/build/images"
# Set it to "1" or "true" or "t" or "y" or "yes" to always run a full
# nightly build. Any other value will allow build shortcuts.
: ${AVOID_NIGHTLY_BUILD_SHORTCUTS:=0}
#
# Image / vendor tests settings
#
# NOTE that these settings are evaluated by the vendor-tests script inside the
# SDK container. To override, new values must be passed into the container.
# Use something like
# echo "export [VAR]=\"${[VALUE]}\\"" > sdk_container/.env
# in your CI to override, e.g.
# echo "export PARALLEL_TESTS=\"5\"" > sdk_container/.env
# to override the number of test cases to be run in parallel.
# -- General --
# "tap" for TAP reports, "md" for markdown are currently supported
TEST_REPORT_FORMATS=("tap" "md")
# -- QEMU --
QEMU_IMAGE_NAME=${QEMU_IMAGE_NAME:-flatcar_production_image.bin}
QEMU_PARALLEL="${PARALLEL_TESTS:-20}"
# Whether kola can use loop devices to capture serial console output and check for error patterns
QEMU_KOLA_SKIP_MANGLE="${QEMU_KOLA_SKIP_MANGLE:-}"
# Firmware path within the SDK
QEMU_FIRMWARE="/usr/share/qemu/bios-256k.bin"
# UEFI firmware filename on build cache.
# Published by vms.sh as part of the qemu vendor build.
QEMU_UEFI_FIRMWARE="${QEMU_UEFI_FIRMWARE:-flatcar_production_qemu_uefi_efi_code.qcow2}"
QEMU_UEFI_SECURE_FIRMWARE="${QEMU_UEFI_SECURE_FIRMWARE:-flatcar_production_qemu_uefi_secure_efi_code.qcow2}"
QEMU_UEFI_OVMF_VARS="${QEMU_UEFI_OVMF_VARS:-flatcar_production_qemu_uefi_efi_vars.qcow2}"
QEMU_UEFI_SECURE_OVMF_VARS="${QEMU_UEFI_SECURE_OVMF_VARS:-flatcar_production_qemu_uefi_secure_efi_vars.qcow2}"
# Update payload for the qemu_update.sh test.
# The default path set below is relative to TEST_WORK_DIR
QEMU_UPDATE_PAYLOAD="${QEMU_UPDATE_PAYLOAD:-tmp/flatcar_test_update.gz}"
# Devcontainer settings for isolated / local testing w/o a remote
# devcontainer server and/or binhost.
# Can optionally be set to http / https URLs to pull the dev container
# and the binpackages from.
QEMU_DEVCONTAINER_URL="${QEMU_DEVCONTAINER_URL:-}"
QEMU_DEVCONTAINER_BINHOST_URL="${QEMU_DEVCONTAINER_BINHOST_URL:-}"
QEMU_DEVCONTAINER_FILE="${QEMU_DEVCONTAINER_FILE:-}"
# -- PXE --
PXE_KERNEL_NAME="flatcar_production_pxe.vmlinuz"
PXE_IMAGE_NAME="flatcar_production_pxe_image.cpio.gz"
GCE_IMAGE_NAME="flatcar_production_gce.tar.gz"
GCE_GCS_IMAGE_UPLOAD="gs://flatcar-jenkins/developer/gce-ci"
GCE_MACHINE_TYPE="${GCE_MACHINE_TYPE:-n1-standard-2}"
GCE_PARALLEL="${PARALLEL_TESTS:-4}"
# -- Digital Ocean --
# Use the "@PROTO@" "@ARCH@", "@CHANNEL@" and "@VERNUM@" placeholders. They will
# be replaced.
: ${DIGITALOCEAN_IMAGE_URL_TEMPLATE:="${DEFAULT_HTTP_IMAGE_URL_TEMPLATE}/flatcar_production_digitalocean_image.bin.bz2"}
: ${DIGITALOCEAN_REGION:='sfo3'}
: ${DIGITALOCEAN_MACHINE_SIZE:='s-2vcpu-2gb'}
DIGITALOCEAN_PARALLEL="${PARALLEL_TESTS:-8}"
# DIGITALOCEAN_TOKEN_JSON env var is used for credentials, and should
# come from sdk_container/.env. It must be base64-encoded.
# -- VMware ESX --
: ${VMWARE_ESX_IMAGE_NAME:='flatcar_production_vmware_ova.ova'}
VMWARE_ESX_PARALLEL="${PARALLEL_TESTS:-4}"
# VMWARE_ESX_CREDS should come from sdk_container/.env and must be
# base64-encoded.
# -- AWS --
: ${AWS_amd64_INSTANCE_TYPE:="t3.small"}
# Space separated list of instance types. On those instances the
# cl.internet kola test will be run if this test is selected to run.
: ${AWS_amd64_MORE_INSTANCE_TYPES:="m4.2xlarge"}
: ${AWS_arm64_INSTANCE_TYPE:="a1.large"}
# Space separated list of instance types. On those instances the
# cl.internet kola test will be run if this test is selected to run.
: ${AWS_arm64_MORE_INSTANCE_TYPES:=""}
: ${AWS_IAM_PROFILE:="ciauto-test"}
: ${AWS_REGION:="us-east-1"}
: ${AWS_AMI_ID:=""}
AWS_PARALLEL="${PARALLEL_TESTS:-8}"
# AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY should come from
# sdk_container/.env
# -- Azure --
: ${AZURE_IMAGE_NAME:="flatcar_production_azure_image.vhd"}
: ${AZURE_amd64_MACHINE_SIZE:="Standard_D2s_v6"}
: ${AZURE_arm64_MACHINE_SIZE:="Standard_D2pls_v6"}
: ${AZURE_USE_GALLERY:=""}
: ${AZURE_KOLA_VNET:=""}
: ${AZURE_USE_PRIVATE_IPS:=true}
: ${AZURE_VNET_SUBNET_NAME:="jenkins-vnet-westeurope"}
AZURE_PARALLEL="${PARALLEL_TESTS:-20}"
AZURE_LOCATION="${AZURE_LOCATION:-westeurope}"
# -- Openstack --
: ${OPENSTACK_IMAGE_NAME:='flatcar_production_openstack_image.img'}
OPENSTACK_PARALLEL="${PARALLEL_TESTS:-3}"
# -- Brightbox --
: ${BRIGHTBOX_IMAGE_NAME:='flatcar_production_openstack_image.img'}
BRIGHTBOX_PARALLEL="${PARALLEL_TESTS:-1}"
: ${BRIGHTBOX_SERVER_TYPE:="2gb.ssd"}
# -- Hetzner --
: ${HETZNER_IMAGE_NAME:='flatcar_production_hetzner_image.bin.bz2'}
: ${HETZNER_amd64_INSTANCE_TYPE:="cpx11"}
: ${HETZNER_arm64_INSTANCE_TYPE:="cax11"}
: ${HETZNER_arm64_LOCATION:="fsn1"}
: ${HETZNER_amd64_LOCATION:="hel1"}
HETZNER_PARALLEL="${PARALLEL_TESTS:-1}"
# -- Akamai --
: ${AKAMAI_IMAGE_NAME:='flatcar_production_akamai_image.bin.gz'}
AKAMAI_PARALLEL="${PARALLEL_TESTS:-1}"
AKAMAI_REGION="us-ord"
AKAMAI_INSTANCE_TYPE="g6-standard-2"