diff --git a/kernel/build-kernel.sh b/kernel/build-kernel.sh index c0105f4204..72d3e8d861 100755 --- a/kernel/build-kernel.sh +++ b/kernel/build-kernel.sh @@ -145,7 +145,16 @@ get_default_kernel_config() { echo "${config}" } +get_config_and_patches() { + if [ -z "${patches_path}" ]; then + info "Clone config and patches" + patches_path="${default_patches_dir}" + [ -d "${patches_path}" ] || git clone "https://${patches_repo}.git" "${patches_repo_dir}" + fi +} + get_config_version() { + get_config_and_patches config_version_file="${default_patches_dir}/../kata_config_version" if [ -f "${config_version_file}" ]; then cat "${config_version_file}" @@ -172,10 +181,7 @@ setup_kernel() { [ -n "$kernel_path" ] || die "failed to find kernel source path" - if [ -z "${patches_path}" ]; then - patches_path="${default_patches_dir}" - [ -d "${patches_path}" ] || git clone "https://${patches_repo}.git" "${patches_repo_dir}" - fi + get_config_and_patches [ -d "${patches_path}" ] || die " patches path '${patches_path}' does not exist" @@ -292,6 +298,9 @@ main() { kernel_path="${PWD}/kata-linux-${kernel_version}-${config_version}" fi + info "Kernel version: ${kernel_version}" + info "Config version: ${config_version}" + case "${subcmd}" in build) build_kernel "${kernel_path}" diff --git a/scripts/lib.sh b/scripts/lib.sh index 732bb1f58b..d86a2246f1 100644 --- a/scripts/lib.sh +++ b/scripts/lib.sh @@ -35,12 +35,16 @@ get_from_kata_deps() { local branch="${2:-master}" local runtime_repo="github.com/kata-containers/runtime" GOPATH=${GOPATH:-${HOME}/go} - # This is needed in order to retrieve the version for qemu-lite - install_yq >&2 - yaml_url="https://raw.githubusercontent.com/kata-containers/runtime/${branch}/versions.yaml" - versions_file="versions_${branch}.yaml" - [ ! -e "${versions_file}" ] || download_on_new_flag="-z ${versions_file}" - curl --silent -o "${versions_file}" ${download_on_new_flag:-} "$yaml_url" + versions_file="${GOPATH}/src/github.com/kata-containers/runtime/versions.yaml" + if [ ! -e "${versions_file}" ]; then + yaml_url="https://raw.githubusercontent.com/kata-containers/runtime/${branch}/versions.yaml" + echo "versions file (${versions_file}) does not exist" >&2 + echo "Download from ${yaml_url}" >&2 + #make sure yq is installed + install_yq >&2 + versions_file="versions_${branch}.yaml" + curl --silent -o "${versions_file}" "$yaml_url" + fi result=$("${GOPATH}/bin/yq" read "$versions_file" "$dependency") [ "$result" = "null" ] && result="" echo "$result"