From b1d5488e308d73fdffcd60a38aef78a266dc4c5f Mon Sep 17 00:00:00 2001 From: Oleksandr Andriienko Date: Fri, 20 Nov 2020 13:57:06 +0200 Subject: [PATCH] Use operator sdk 0.17.2 (#545) * Pin to precise defined operator-sdk 0.17.2 Signed-off-by: Oleksandr Andriienko --- .github/action_scripts/operator_code_check.sh | 3 ++- .github/action_scripts/provideNewNightlyBundle.sh | 3 ++- .github/workflows/release.yml | 3 ++- REQUIREMENTS | 1 + make-release.sh | 5 +++-- olm/docker-run.sh | 2 +- olm/update-crd-files.sh | 3 ++- olm/update-nightly-bundle.sh | 5 +++-- 8 files changed, 16 insertions(+), 9 deletions(-) create mode 100644 REQUIREMENTS diff --git a/.github/action_scripts/operator_code_check.sh b/.github/action_scripts/operator_code_check.sh index de57fcae3..8412cf086 100755 --- a/.github/action_scripts/operator_code_check.sh +++ b/.github/action_scripts/operator_code_check.sh @@ -61,7 +61,8 @@ installOperatorSDK() { OPERATOR_SDK_TEMP_DIR="$(mktemp -q -d -t "OPERATOR_SDK_XXXXXX" 2>/dev/null || mktemp -q -d)" pushd "${OPERATOR_SDK_TEMP_DIR}" || exit echo "[INFO] Downloading 'operator-sdk' cli tool..." - curl -sLo operator-sdk "$(curl -sL https://api.github.com/repos/operator-framework/operator-sdk/releases/tags/v0.17.1 | jq -r '[.assets[] | select(.name == "operator-sdk-v0.17.1-x86_64-linux-gnu")] | first | .browser_download_url')" + OPERATOR_SDK=$(yq -r ".\"operator-sdk\"" "${ROOT_PROJECT_DIR}/REQUIREMENTS") + curl -sLo operator-sdk $(curl -sL https://api.github.com/repos/operator-framework/operator-sdk/releases/tags/${OPERATOR_SDK} | jq -r "[.assets[] | select(.name == \"operator-sdk-${OPERATOR_SDK}-x86_64-linux-gnu\")] | first | .browser_download_url") export OPERATOR_SDK_BINARY="${OPERATOR_SDK_TEMP_DIR}/operator-sdk" chmod +x "${OPERATOR_SDK_BINARY}" echo "[INFO] Downloading completed!" diff --git a/.github/action_scripts/provideNewNightlyBundle.sh b/.github/action_scripts/provideNewNightlyBundle.sh index 31265f8e8..ef77d2575 100755 --- a/.github/action_scripts/provideNewNightlyBundle.sh +++ b/.github/action_scripts/provideNewNightlyBundle.sh @@ -24,7 +24,8 @@ installOperatorSDK() { OPERATOR_SDK_TEMP_DIR="$(mktemp -q -d -t "OPERATOR_SDK_XXXXXX" 2>/dev/null || mktemp -q -d)" pushd "${OPERATOR_SDK_TEMP_DIR}" || exit echo "[INFO] Downloading 'operator-sdk' cli tool..." - curl -sLo operator-sdk "$(curl -sL https://api.github.com/repos/operator-framework/operator-sdk/releases/tags/v0.17.1| jq -r '[.assets[] | select(.name == "operator-sdk-v0.17.1-x86_64-linux-gnu")] | first | .browser_download_url')" + OPERATOR_SDK=$(yq -r ".\"operator-sdk\"" "${ROOT_PROJECT_DIR}/REQUIREMENTS") + curl -sLo operator-sdk $(curl -sL https://api.github.com/repos/operator-framework/operator-sdk/releases/tags/${OPERATOR_SDK} | jq -r "[.assets[] | select(.name == \"operator-sdk-${OPERATOR_SDK}-x86_64-linux-gnu\")] | first | .browser_download_url") export OPERATOR_SDK_BINARY="${OPERATOR_SDK_TEMP_DIR}/operator-sdk" chmod +x "${OPERATOR_SDK_BINARY}" echo "[INFO] Downloading completed!" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 183dee470..4331697f4 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -54,7 +54,8 @@ jobs: if [[ ${CHE_VERSION%.*} == 7.21 ]];then wget https://github.com/operator-framework/operator-sdk/releases/download/v0.10.0/operator-sdk-v0.10.0-x86_64-linux-gnu -O $OP_SDK_DIR/operator-sdk else - wget https://github.com/operator-framework/operator-sdk/releases/download/v0.17.2/operator-sdk-v0.17.2-x86_64-linux-gnu -O $OP_SDK_DIR/operator-sdk + OPERATOR_SDK=$(sed -r 's|operator-sdk:\s*(.*)|\1|' REQUIREMENTS) + wget https://github.com/operator-framework/operator-sdk/releases/download/${OPERATOR_SDK}/operator-sdk-${OPERATOR_SDK}-x86_64-linux-gnu -O $OP_SDK_DIR/operator-sdk fi chmod +x $OP_SDK_DIR/operator-sdk diff --git a/REQUIREMENTS b/REQUIREMENTS new file mode 100644 index 000000000..69db60f4a --- /dev/null +++ b/REQUIREMENTS @@ -0,0 +1 @@ +operator-sdk: v0.17.2 diff --git a/make-release.sh b/make-release.sh index 0df3c41df..b7ffea14c 100755 --- a/make-release.sh +++ b/make-release.sh @@ -45,8 +45,9 @@ init() { command -v operator-courier >/dev/null 2>&1 || { echo "[ERROR] operator-courier is not installed. Aborting."; exit 1; } command -v operator-sdk >/dev/null 2>&1 || { echo "[ERROR] operator-sdk is not installed. Aborting."; exit 1; } command -v skopeo >/dev/null 2>&1 || { echo "[ERROR] skopeo is not installed. Aborting."; exit 1; } - [[ $(operator-sdk version) =~ .*v0.17.1.* ]] || { echo "[ERROR] operator-sdk v0.17.1 is required. Aborting."; exit 1; } - + REQUIRED_OPERATOR_SDK=$(yq -r ".\"operator-sdk\"" "${RELEASE_DIR}/REQUIREMENTS") + [[ $(operator-sdk version) =~ .*${REQUIRED_OPERATOR_SDK}.* ]] || { echo "[ERROR] operator-sdk ${REQUIRED_OPERATOR_SDK} is required. Aborting."; exit 1; } +exit 0 emptyDirs=$(find $RELEASE_DIR/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/* -maxdepth 0 -empty | wc -l) [[ $emptyDirs -ne 0 ]] && echo "[ERROR] Found empty directories into eclipse-che-preview-openshift" && exit 1 || true emptyDirs=$(find $RELEASE_DIR/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/* -maxdepth 0 -empty | wc -l) diff --git a/olm/docker-run.sh b/olm/docker-run.sh index d81f853cc..b0b0946a9 100755 --- a/olm/docker-run.sh +++ b/olm/docker-run.sh @@ -17,7 +17,7 @@ GIT_ROOT_DIRECTORY=$(git rev-parse --show-toplevel) IMAGE_NAME="eclipse/che-operator-olm-build" # Operator SDK -OPERATOR_SDK_VERSION=v0.17.1 +OPERATOR_SDK_VERSION=$(yq -r ".\"operator-sdk\"" "${GIT_ROOT_DIRECTORY}/REQUIREMENTS") init() { BLUE='\033[1;34m' diff --git a/olm/update-crd-files.sh b/olm/update-crd-files.sh index a89be2096..573271b8a 100755 --- a/olm/update-crd-files.sh +++ b/olm/update-crd-files.sh @@ -31,7 +31,8 @@ check() { fi local operatorVersion=$("${OPERATOR_SDK_BINARY}" version) - [[ $operatorVersion =~ .*v0.17.1.* ]] || { echo "operator-sdk v0.17.1 is required"; exit 1; } + REQUIRED_OPERATOR_SDK=$(yq -r ".\"operator-sdk\"" "REQUIREMENTS") + [[ $operatorVersion =~ .*${REQUIRED_OPERATOR_SDK}.* ]] || { echo "operator-sdk ${REQUIRED_OPERATOR_SDK} is required"; exit 1; } } updateFiles() { diff --git a/olm/update-nightly-bundle.sh b/olm/update-nightly-bundle.sh index 64f308008..36970116b 100755 --- a/olm/update-nightly-bundle.sh +++ b/olm/update-nightly-bundle.sh @@ -26,12 +26,13 @@ fi # Check for compatible version of operator-sdk: OPERATOR_SDK_VERSION=$(${OPERATOR_SDK_BINARY} version | cut -d, -f1 | cut -d: -f2 | sed 's/[ \"]//g') +REQUIRED_OPERATOR_SDK=$(yq -r ".\"operator-sdk\"" "${BASE_DIR}/../REQUIREMENTS") case $OPERATOR_SDK_VERSION in - v0.17.*) + "${REQUIRED_OPERATOR_SDK}") echo "Operator SDK ${OPERATOR_SDK_VERSION} installed" ;; *) - echo "This script requires Operator SDK v0.17.x. Please install the correct version to continue" + echo "This script requires Operator SDK ${REQUIRED_OPERATOR_SDK}. Please install the correct version to continue" exit 1 ;; esac