-if (( $(grep -c . <<<"$release_files") > 1 )); then
- echo "multiple release files in the same commit do not make sense"
- exit 1
-else
- release_file="$release_files"
- echo "RELEASE FILE IS AS FOLLOWS: $release_file"
-fi
+set_variables_container(){
+ VERSION="${VERSION:-None}"
+ if [[ $VERSION == "None" ]]; then
+ VERSION="$(niet ".container_release_tag" "$release_file")"
+ fi
+ if grep -q "container_pull_registry" "$release_file" ; then
+ CONTAINER_PULL_REGISTRY="$(niet ".container_pull_registry" "$release_file")"
+ fi
+ if grep -q "container_push_registry" "$release_file" ; then
+ CONTAINER_PUSH_REGISTRY="$(niet ".container_push_registry" "$release_file")"
+ fi
+ # Make sure both pull and push registries are defined
+ if [ -z ${CONTAINER_PULL_REGISTRY+x} ] || [ -z ${CONTAINER_PUSH_REGISTRY+x} ]; then
+ echo "ERROR: CONTAINER_PULL_REGISTRY and CONTAINER_PUSH_REGISTRY need to be defined"
+ exit 1
+ fi
+ ref="$(niet ".ref" "$release_file")"
+
+ # Continuing displaying Release Information (Container)
+ printf "\t%-30s\n" RELEASE_CONTAINER_INFO:
+ printf "\t%-30s %s\n" CONTAINER_RELEASE_TAG: $VERSION
+ printf "\t%-30s %s\n" CONTAINER_PULL_REGISTRY: $CONTAINER_PULL_REGISTRY
+ printf "\t%-30s %s\n" CONTAINER_PUSH_REGISTRY: $CONTAINER_PUSH_REGISTRY
+ printf "\t%-30s %s\n" GERRIT_REF_TO_TAG: $ref
+}
+
+verify_schema(){
+ echo "INFO: Verifying $release_file schema."
+ lftools schema verify "$release_file" "$RELEASE_SCHEMA"
+}
+
+verify_version(){
+ # Verify allowed versions
+ # Allowed versions are "v#.#.#" or "#.#.#" aka SemVer
+ allowed_version_regex="^((v?)([0-9]+)\.([0-9]+)\.([0-9]+))$"
+ if [[ ! $VERSION =~ $allowed_version_regex ]]; then
+ echo "INFO: The version $VERSION is not a semantic valid version"
+ echo "INFO: Allowed versions are \"v#.#.#\" or \"#.#.#\" aka SemVer"
+ echo "INFO: See https://semver.org/ for more details on SemVer"
+ exit 1
+ fi
+}