Merge pull request #614 from GabyCT/topic/updatecheckversion

ci: Enable check VERSION among the components without the runtime
This commit is contained in:
Jose Carlos Venegas Munoz
2019-07-05 11:52:26 -05:00
committed by GitHub
2 changed files with 64 additions and 35 deletions

View File

@@ -40,6 +40,7 @@ EOT
Args:
status : Get Current ${PROJECT} tags status
pre-release : Takes a version to check all the components match with it (but not the runtime)
tag : Create tags for ${PROJECT}
Options:
@@ -90,12 +91,26 @@ not_stable_branch=(
"ksm-throttler"
)
# The pre-release option at the check_versions function receives
# the runtime VERSION in order to check all the components match with it,
# this has the purpose that all the components have the same version before
# merging the runtime version
check_versions() {
version_to_check=${1:-}
if [ -z "${version_to_check}" ];then
info "Query the version from latest runtime in branch ${branch}"
else
kata_version="${version_to_check}"
fi
info "Tagging ${PROJECT} with version ${kata_version}"
info "Check all repos has version ${kata_version} in VERSION file"
for repo in "${repos[@]}"; do
if [ ! -z "${version_to_check}" ] && [ "${repo}" == "runtime" ]; then
info "Not checking runtime because we want the rest of repos are in ${version_to_check}"
continue
fi
repo_version=$(curl -Ls "${URL_RAW_FILE}/${repo}/${branch}/VERSION" | grep -v -P "^#")
info "${repo} is in $repo_version"
[ "${repo_version}" == "${kata_version}" ] || die "${repo} is not in version ${kata_version}"
@@ -174,27 +189,32 @@ create_github_release() {
fi
}
while getopts "b:hp" opt; do
main () {
while getopts "b:hp" opt; do
case $opt in
b) branch="${OPTARG}" ;;
h) usage && exit 0 ;;
p) PUSH="true" ;;
esac
done
shift $((OPTIND - 1))
done
shift $((OPTIND - 1))
subcmd=${1:-""}
kata_version=$(curl -Ls "${URL_RAW_FILE}/runtime/${branch}/VERSION" | grep -v -P "^#")
subcmd=${1:-""}
shift || true
kata_version=$(curl -Ls "${URL_RAW_FILE}/runtime/${branch}/VERSION" | grep -v -P "^#")
[ -z "${subcmd}" ] && usage && exit 0
[ -z "${subcmd}" ] && usage && exit 0
pushd "${tmp_dir}" >>/dev/null
pushd "${tmp_dir}" >>/dev/null
case "${subcmd}" in
status)
case "${subcmd}" in
status)
check_versions
;;
tag)
pre-release)
check_versions ${1}
;;
tag)
check_versions
repos+=("${repos_not_versions[@]}")
tag_repos
@@ -204,10 +224,12 @@ tag)
info "tags not pushed, use -p option to push the tags"
fi
;;
*)
*)
usage && die "Invalid argument ${subcmd}"
;;
esac
esac
popd >>/dev/null
popd >>/dev/null
}
main "$@"

View File

@@ -20,3 +20,10 @@ echo "Check tag_repos.sh status"
echo "Check tag_repos.sh create tags but not push"
./release/tag_repos.sh tag | grep "tags not pushed"
echo "Check tag_repos.sh pre-release"
./release/tag_repos.sh pre-release $(curl -sL https://raw.githubusercontent.com/kata-containers/runtime/master/VERSION) | grep "Not checking runtime"
echo "Check tag_repos.sh pre-release with invalid information"
./release/tag_repos.sh pre-release 1000000 | grep "ERROR" || true