mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-04-27 11:31:05 +00:00
Since yq frequently updates, let's upgrade to a version from February to bypass potential issues with versions 4.41-4.43 for now. We can always upgrade to the newest version if necessary. Fixes #9354 Depends-on:github.com/kata-containers/tests#5818 Signed-off-by: Beraldo Leal <bleal@redhat.com>
78 lines
2.1 KiB
Bash
Executable File
78 lines
2.1 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Copyright (c) 2023 Intel Corporation
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
|
|
set -o errexit
|
|
set -o nounset
|
|
set -o pipefail
|
|
|
|
kata_tarball_dir="${2:-kata-artifacts}"
|
|
cri_containerd_dir="$(dirname "$(readlink -f "$0")")"
|
|
source "${cri_containerd_dir}/../../common.bash"
|
|
|
|
function install_dependencies() {
|
|
info "Installing the dependencies needed for running the cri-containerd tests"
|
|
|
|
# Dependency list of projects that we can rely on the system packages
|
|
# - build-essential
|
|
# - Theoretically we only need `make`, but doesn't hurt to install
|
|
# the whole build-essential group
|
|
# - jq
|
|
# - podman-docker
|
|
# - one of the tests rely on docker to pull an image.
|
|
# we've decided to go for podman, instead, as it does *not* bring
|
|
# containerd as a dependency
|
|
declare -a system_deps=(
|
|
build-essential
|
|
jq
|
|
podman-docker
|
|
)
|
|
|
|
sudo apt-get update
|
|
sudo apt-get -y install "${system_deps[@]}"
|
|
|
|
ensure_yq
|
|
. "${repo_root_dir}/tests/install_go.sh" -p -f
|
|
|
|
# Dependency list of projects that we can install them
|
|
# directly from their releases on GitHub:
|
|
# - containerd
|
|
# - cri-container-cni release tarball already includes CNI plugins
|
|
# - cri-tools
|
|
declare -a github_deps
|
|
github_deps[0]="cri_containerd:$(get_from_kata_deps ".externals.containerd.${CONTAINERD_VERSION}")"
|
|
github_deps[1]="cri_tools:$(get_from_kata_deps ".externals.critools.latest")"
|
|
|
|
for github_dep in "${github_deps[@]}"; do
|
|
IFS=":" read -r -a dep <<< "${github_dep}"
|
|
"install_${dep[0]}" "${dep[1]}"
|
|
done
|
|
|
|
# Clone containerd as we'll need to build it in order to run the tests
|
|
# base_version: The version to be intalled in the ${major}.${minor} format
|
|
clone_cri_containerd $(get_from_kata_deps ".externals.containerd.${CONTAINERD_VERSION}")
|
|
}
|
|
|
|
function run() {
|
|
info "Running cri-containerd tests using ${KATA_HYPERVISOR} hypervisor"
|
|
|
|
enabling_hypervisor
|
|
|
|
bash -c "${cri_containerd_dir}/integration-tests.sh"
|
|
}
|
|
|
|
function main() {
|
|
action="${1:-}"
|
|
case "${action}" in
|
|
install-dependencies) install_dependencies ;;
|
|
install-kata) install_kata ;;
|
|
run) run ;;
|
|
*) >&2 die "Invalid argument" ;;
|
|
esac
|
|
}
|
|
|
|
main "$@"
|