From 6cf57c93e95f317dca14a2533fe2b5a0bbe038eb Mon Sep 17 00:00:00 2001 From: Muvaffak Onus Date: Mon, 26 Sep 2022 13:16:18 +0300 Subject: [PATCH] images: switch to fat single image that contains both xpkg and controller binary Signed-off-by: Muvaffak Onus (cherry picked from commit f6642fc9d63e7583a49acd537963d7d2fb529e78) --- Makefile | 1 - .../provider-helm-controller/Dockerfile | 11 ------- .../images/provider-helm-controller/Makefile | 25 --------------- cluster/images/provider-helm/Dockerfile | 10 ++++-- cluster/images/provider-helm/Makefile | 31 ++++++++++++------- cluster/integration/integration_tests.sh | 13 +++----- package/crossplane.yaml | 31 ------------------- 7 files changed, 31 insertions(+), 91 deletions(-) delete mode 100644 cluster/images/provider-helm-controller/Dockerfile delete mode 100644 cluster/images/provider-helm-controller/Makefile diff --git a/Makefile b/Makefile index 9e88261..c1b43a2 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,6 @@ PROJECT_NAME := provider-helm PROJECT_REPO := github.com/crossplane-contrib/$(PROJECT_NAME) -PLATFORMS ?= linux_amd64 linux_arm64 include build/makelib/common.mk # ==================================================================================== diff --git a/cluster/images/provider-helm-controller/Dockerfile b/cluster/images/provider-helm-controller/Dockerfile deleted file mode 100644 index 49cc6b7..0000000 --- a/cluster/images/provider-helm-controller/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM BASEIMAGE -RUN apk --no-cache add ca-certificates bash - -ADD provider /usr/local/bin/crossplane-helm-provider - -ENV XDG_CACHE_HOME /tmp -ENV XDG_CONFIG_HOME /tmp - -EXPOSE 8080 -USER 1001 -ENTRYPOINT ["crossplane-helm-provider"] \ No newline at end of file diff --git a/cluster/images/provider-helm-controller/Makefile b/cluster/images/provider-helm-controller/Makefile deleted file mode 100644 index 7a4f17b..0000000 --- a/cluster/images/provider-helm-controller/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -# ==================================================================================== -# Setup Project - -PLATFORMS := linux_amd64 linux_arm64 -include ../../../build/makelib/common.mk - -# ==================================================================================== -# Options -IMAGE = $(BUILD_REGISTRY)/provider-helm-controller-$(ARCH) -include ../../../build/makelib/image.mk - -# ==================================================================================== -# Targets - -img.build: - @$(INFO) docker build $(IMAGE) - @cp Dockerfile $(IMAGE_TEMP_DIR) || $(FAIL) - @cp $(OUTPUT_DIR)/bin/$(OS)_$(ARCH)/provider $(IMAGE_TEMP_DIR) || $(FAIL) - @cd $(IMAGE_TEMP_DIR) && $(SED_CMD) 's|BASEIMAGE|$(OSBASEIMAGE)|g' Dockerfile || $(FAIL) - @docker build $(BUILD_ARGS) \ - --build-arg ARCH=$(ARCH) \ - --build-arg TINI_VERSION=$(TINI_VERSION) \ - -t $(IMAGE) \ - $(IMAGE_TEMP_DIR) || $(FAIL) - @$(OK) docker build $(IMAGE) diff --git a/cluster/images/provider-helm/Dockerfile b/cluster/images/provider-helm/Dockerfile index 332e751..c362f87 100644 --- a/cluster/images/provider-helm/Dockerfile +++ b/cluster/images/provider-helm/Dockerfile @@ -1,3 +1,9 @@ -FROM BASEIMAGE +FROM gcr.io/distroless/static@sha256:1f580b0a1922c3e54ae15b0758b5747b260bd99d39d40c2edb3e7f6e2452298b -COPY package.yaml . +ARG TARGETOS +ARG TARGETARCH + +ADD bin/$TARGETOS\_$TARGETARCH/provider /usr/local/bin/provider-helm + +USER 65532 +ENTRYPOINT ["provider-helm"] diff --git a/cluster/images/provider-helm/Makefile b/cluster/images/provider-helm/Makefile index b349e09..26b0626 100644 --- a/cluster/images/provider-helm/Makefile +++ b/cluster/images/provider-helm/Makefile @@ -1,28 +1,35 @@ # ==================================================================================== # Setup Project -PLATFORMS := linux_amd64 linux_arm64 include ../../../build/makelib/common.mk # ==================================================================================== # Options -IMAGE = $(BUILD_REGISTRY)/provider-helm-$(ARCH) -OSBASEIMAGE = scratch -include ../../../build/makelib/image.mk + +include ../../../build/makelib/imagelight.mk # ==================================================================================== # Targets img.build: @$(INFO) docker build $(IMAGE) + @$(MAKE) BUILD_ARGS="--load" img.build.shared + @$(OK) docker build $(IMAGE) + +img.publish: + @$(INFO) Skipping image publish for $(IMAGE) + @echo Publish is deferred to xpkg machinery + @$(OK) Image publish skipped for $(IMAGE) + +img.build.shared: @cp Dockerfile $(IMAGE_TEMP_DIR) || $(FAIL) - @cp -R ../../../package $(IMAGE_TEMP_DIR) || $(FAIL) - @cd $(IMAGE_TEMP_DIR) && $(SED_CMD) 's|BASEIMAGE|$(OSBASEIMAGE)|g' Dockerfile || $(FAIL) - @cd $(IMAGE_TEMP_DIR) && $(SED_CMD) 's|VERSION|$(VERSION)|g' package/crossplane.yaml || $(FAIL) - @cd $(IMAGE_TEMP_DIR) && find package -type f -name '*.yaml' -exec cat {} >> 'package.yaml' \; -exec printf '\n---\n' \; || $(FAIL) - @docker build $(BUILD_ARGS) \ - --build-arg ARCH=$(ARCH) \ - --build-arg TINI_VERSION=$(TINI_VERSION) \ + @cp -r $(OUTPUT_DIR)/bin/ $(IMAGE_TEMP_DIR)/bin || $(FAIL) + @docker buildx build $(BUILD_ARGS) \ + --platform $(IMAGE_PLATFORMS) \ -t $(IMAGE) \ $(IMAGE_TEMP_DIR) || $(FAIL) - @$(OK) docker build $(IMAGE) + +img.promote: + @$(INFO) Skipping image promotion from $(FROM_IMAGE) to $(TO_IMAGE) + @echo Promote is deferred to xpkg machinery + @$(OK) Image promotion skipped for $(FROM_IMAGE) to $(TO_IMAGE) \ No newline at end of file diff --git a/cluster/integration/integration_tests.sh b/cluster/integration/integration_tests.sh index bb98eba..c8e37d5 100755 --- a/cluster/integration/integration_tests.sh +++ b/cluster/integration/integration_tests.sh @@ -41,13 +41,9 @@ eval $(make --no-print-directory -C ${projectdir} build.vars) # ------------------------------ SAFEHOSTARCH="${SAFEHOSTARCH:-amd64}" -BUILD_IMAGE="${BUILD_REGISTRY}/${PROJECT_NAME}-${SAFEHOSTARCH}" -PACKAGE_IMAGE="crossplane.io/inttests/${PROJECT_NAME}:${VERSION}" -CONTROLLER_IMAGE="${BUILD_REGISTRY}/${PROJECT_NAME}-controller-${SAFEHOSTARCH}" +CONTROLLER_IMAGE="${BUILD_REGISTRY}/${PROJECT_NAME}-${SAFEHOSTARCH}" version_tag="$(cat ${projectdir}/_output/version)" -# tag as latest version to load into kind cluster -PACKAGE_CONTROLLER_IMAGE="${DOCKER_REGISTRY}/${PROJECT_NAME}-controller:${VERSION}" K8S_CLUSTER="${K8S_CLUSTER:-${BUILD_REGISTRY}-inttests}" CROSSPLANE_NAMESPACE="crossplane-system" @@ -69,8 +65,7 @@ echo_step "setting up local package cache" CACHE_PATH="${projectdir}/.work/inttest-package-cache" mkdir -p "${CACHE_PATH}" echo "created cache dir at ${CACHE_PATH}" -docker tag "${BUILD_IMAGE}" "${PACKAGE_IMAGE}" -"${UP}" xpkg xp-extract --from-daemon "${PACKAGE_IMAGE}" -o "${CACHE_PATH}/${PACKAGE_NAME}.gz" && chmod 644 "${CACHE_PATH}/${PACKAGE_NAME}.gz" +"${UP}" alpha xpkg xp-extract --from-xpkg "${OUTPUT_DIR}"/xpkg/"${HOSTOS}"_"${SAFEHOSTARCH}"/"${PACKAGE_NAME}"-"${VERSION}".xpkg -o "${CACHE_PATH}/${PACKAGE_NAME}.gz" && chmod 644 "${CACHE_PATH}/${PACKAGE_NAME}.gz" # create kind cluster with extra mounts KIND_NODE_IMAGE="kindest/node:${KIND_NODE_IMAGE_TAG}" @@ -88,8 +83,8 @@ EOF echo "${KIND_CONFIG}" | "${KIND}" create cluster --name="${K8S_CLUSTER}" --wait=5m --image="${KIND_NODE_IMAGE}" --config=- # tag controller image and load it into kind cluster -docker tag "${CONTROLLER_IMAGE}" "${PACKAGE_CONTROLLER_IMAGE}" -"${KIND}" load docker-image "${PACKAGE_CONTROLLER_IMAGE}" --name="${K8S_CLUSTER}" +docker tag "${CONTROLLER_IMAGE}" "${PACKAGE_NAME}" +"${KIND}" load docker-image "${PACKAGE_NAME}" --name="${K8S_CLUSTER}" echo_step "create crossplane-system namespace" "${KUBECTL}" create ns crossplane-system diff --git a/package/crossplane.yaml b/package/crossplane.yaml index 653b075..22d1772 100644 --- a/package/crossplane.yaml +++ b/package/crossplane.yaml @@ -23,34 +23,3 @@ metadata: the [crossplane-contrib/provider-helm](https://github.com/crossplane-contrib/provider-helm) repo. - meta.crossplane.io/iconURI: data:image/svg+xml;base64,CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNjUiIGhlaWdodD0iNjUiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0ibm9uemVybyI+PHJlY3Qgd2lkdGg9IjY1IiBoZWlnaHQ9IjY1IiBmaWxsPSIjMDgxQjdFIiByeD0iMTYiLz48ZyBmaWxsPSIjRkZGRkZGIj48cGF0aCBkPSJNMjEuOTk1NDcgMjAuNzAyNzMzOWMtLjA1MTE4MzEzLS4wNDg1NDUyLS4xMDY4OTU4LS4xMDA3ODc4LS4xNjE5NjA2Mi0uMTUzNjkzNS0xLjEyODk2MTI2LTEuMDg0NjEyNjYtMi4wMDI2NjcyMi0yLjMzODcwODY0LTIuNTMwNDMzMzUtMy44MjEwMTc4Ny0uMTQ3NzA4OTgtLjQxNDg2NzA1LS4yNTkyMTkzMi0uODM4MDAzMDQtLjIzOTQzOTU0LTEuMjg0ODMxODEuMDAxODc5MS0uMDQyNDA1MDUuMDAxNzUyOTMtLjA4NDkzMDg5LjAwNDY3NjI4LS4xMjcyNTQ1Mi4wMzk4MTkwNC0uNTc2Nzg5MTkuNDI1ODUwODQtLjg2ODI1Mzg4Ljk4OTUxNTg1LS43MzE2NTg0NGEyLjQ0NTA2ODYyIDIuNDQ1MDY4NjIgMCAwMS41MTI4NTk0OS4xOTY1NDc3MWMuNjE2NTQzODEuMzA5MTkwODggMS4xMTkwNjczNS43NjYyNzg2NSAxLjU4MTE3NSAxLjI2NzU2MTk4LjgyMDc3ODYxLjg3MzQ3MDg5IDEuNDc5MDA5MTkgMS44ODY0NzIzNiAxLjk0MzcwNjM5IDIuOTkxMzE4NjlhLjc0MjM1NTE4Ljc0MjM1NTE4IDAgMDAuMDM0ODQ5My4wNzcwNDMxNWMuMDA2MzY3NS4wMTE1MDI3OC4wMTk4OTM0LjAxOTA0MzM1LjA1MDA0NC4wNDY0MjU0MyAyLjE5OTg0NTgtMS4zMTk3NzU2MSA0LjY4ODI3OTctMi4wODMzNDIwMSA3LjI0OTc2MDktMi4yMjQ1NjEzMy0uMDE1Nzk0My0uMDc4Mzk0MzEtLjAyNTIyOTEtLjEzODMxMTY4LS4wNDAwNjI0LS4xOTY4NTgyMS0uMjYxMzYwNS0xLjA4MTYwMDQ2LS4zNDE1NzY5LTIuMTk5MDUxNTEtLjIzNzM4Ni0zLjMwNjg5MzE1LjA0NTg0OTUtLjY2Mzg4MDM3LjE3OTU4MDctMS4zMTg3NDI4LjM5NzY5My0xLjk0NzQ0NDkxLjEwNTUxMi0uMzMxMTM4MjcuMjcxNjg0OS0uNjM5NzY3MTguNDkwMDQzNi0uOTEwMTQ2MmExLjQwMzY4OTIgMS40MDM2ODkyIDAgMDEuMjgzMDYwNy0uMjUyNDY5NzdjLjIxNDkxNS0uMTUxOTY3OTcuNTAxNzQ3Ni0uMTUzOTY3NjYuNzE4NzYwNi0uMDA1MDEwOTQuMjIzODcyNy4xNTE2MzkyMi40MDQwNjIyLjM1OTMzOTE3LjUyMjU4Ny42MDIzNzI3MS4yMjA3NzE3LjQxMjE4MDExLjM3OTQzODguODU0NzE0NzYuNDcwODYyNSAxLjMxMzI3MTU2LjIwODQ0MjEuOTY5NjY2MjMuMjcyNDQ1MSAxLjk2NDgxMjg1LjE4OTkzNSAyLjk1MzE5MTczYTguNTU0MjA5NTYgOC41NTQyMDk1NiAwIDAxLS4zMTIzMzUyIDEuNzgxNjM5M2MuNjM3MjU3OC4xMTczOTI4MSAxLjI3MTQ4NDguMjA4MzczNTIgMS44OTIyODE2LjM1NTg3NzU5YTE2LjY3NzM4MzE2IDE2LjY3NzM4MzE2IDAgMDExLjgyOTA1MzUuNTM3MTgxMzIgMTYuODUwNzYzMyAxNi44NTA3NjMzIDAgMDExLjc2OTA2MDEuNzY2Nzg5NThjLjU2Nzc5MS4yODMxNDc0MyAxLjEwODI2OTcuNjIxMDU3MjMgMS42NzQ4NjcuOTQyOTc2NzguMDE4NDA3MS0uMDM4NzQ1MjcuMDQ1MTMzMy0uMDg0OTkwODQuMDYzMTczNi0uMTM0NDExMi41OTAxODkxLTEuNjMyNTg2MDcgMS42MDY3MTU0LTMuMDc3Mzg1NTkgMi45NDM5OTc1LTQuMTg0MzM0OTQuMzEyMTczMi0uMjY3OTk2MDguNjcwNjcwNi0uNDc2NzIwMjggMS4wNTc4NDQ1LS42MTU4OTc3NmExLjU0MzE1MDQ0IDEuNTQzMTUwNDQgMCAwMS4zMjkxMzUzLS4wNzU2MjIxOWMuNTYwNTA5LS4wNjQxODM4My43OTU4MDAyLjI4ODUyMjU2LjgzNzIzMTcuNzA5NzQ4MTIuMDMxMDUzNy4zMTA1MjQwNy4wMDc2MjExLjYyNDA4NTk2LS4wNjkyNDEzLjkyNjU0NTM5LS4yMDQ3MzI4Ljc4MTI4Mzk0LS41Mjg1NzI5IDEuNTI2Mzc1ODMtLjk2MDEzMjEgMi4yMDkwNzM5Ni0uNjA3NTkwMy45ODE3NjU5LTEuMzI4ODA2MyAxLjg2NjEyMTA0LTIuMjQ1MzUzMSAyLjU3OTc3NDk0LS4wMjcwNTM3LjAyMTA2MzktLjA1MDgxMDkuMDQ2MzYzNy0uMDk2NjI4OC4wODg2MTIyLjg5NjQ5NC44MjY4Njk1IDEuNjk0OTI2MiAxLjc1NDA5MDkgMi4zNzk1NjIxIDIuNzYzMzkxOGEuOTgwOTIzMjguOTgwOTIzMjggMCAwMS0uMTUxMTMzNC4wMjY2MzEzYy0uOTQ4MDkyNC4wMDEzNDIyLTEuODk2MjAwOS0uMDAxNjM2Ni0yLjg0NDI2MjkuMDA0MTIyNC0uMTEzMjA1Ny0uMDAyNzE0Ni0uMjE4NDY0Ni0uMDU4Nzg3MS0uMjgzODc0OS0uMTUxMjIyOS0yLjA2ODU2MTYtMi4yNTk5ODI1LTQuODU3MjY0Ni0zLjczMjEyMDQ2LTcuODkwMjM0Ni00LjE2NTIwMzAyYTEyLjgyNzg3NDA1IDEyLjgyNzg3NDA1IDAgMDAtMi43MDk0NDQ2LS4xMDQ2MjM4OGMtMi42OTY0MzQ5LjE2NDY0NDU5LTUuMjc2MDQwOCAxLjE1ODg0NTctNy4zODU1MTg4IDIuODQ2NDM5MWExMi41MzMzMDIzIDEyLjUzMzMwMjMgMCAwMC0xLjUxOTA0Mzg4IDEuNDE3NTQ1NmMtLjA4MzkwOTkyLjEwNDA5NDEtLjIxMjA4NDU5LjE2MjQwMTUtLjM0NTY4ODM5LjE1NzI1NTctLjkwNTU5Nzg5LS4wMDYyODg3LTEuODExMjYzNzgtLjAwMzEzMTktMi43MTY5MDU1MS0uMDAzMTI3NGgtLjE5MjU3Mzg2Yy4wNTUyOTkyNi0uMjE1NDcwMi42MTIwNzMzNC0uOTc4NzMwNyAxLjI0MjMxMTMzLTEuNjYwMTI0MS40Njk5OTYzLS41MDgxNDU2Ljk2Nzg4NTYxLS45OTA0OTMgMS40NzM2MDU0MS0xLjUwNDkzek00NS4wODE1NjU4IDQwLjk5NTAxNDRjLS42Mjk4NTc2Ljg4MTU4NTMtMS4zNDg2OTMxIDEuNjk2MDcwNS0yLjE0NTE2NjYgMi40MzA2MDY2LjA2MzQ3ODcuMDUyODU0Ni4xMTUwNjcyLjA5NTc4MTMuMTY2NjI0NC4xMzg3NDY1IDEuMzgyNDMzNyAxLjEzMDg5ODUgMi40MjU0ODggMi42MjE4MDUyIDMuMDE0MDEzNyA0LjMwODEzMDEuMTU2NTgyNC40MTEyMzYxLjIyMzc1MjUuODUxMTEzNS4xOTcwMzcyIDEuMjkwMzM5NGExLjMzMTk2MzA0IDEuMzMxOTYzMDQgMCAwMS0uMDY2OTE5Mi4zMzAzNjkyYy0uMDk0MTQwNi4zMTMyNTg2LS40MDc4ODAzLjUwNjQzNzQtLjcyOTk3OTguNDQ5NDcwMy0uMjA5OTgxMi0uMDI3MjU3MS0uNDE0MjY0Ny0uMDg3ODYxMy0uNjA1MTM4Ni0uMTc5NTI0OWE0LjU4NDMyMjc1IDQuNTg0MzIyNzUgMCAwMS0uODIxNTcwNy0uNTIwMzQwOWMtMS4zNDExOTU2LTEuMTAxOTcyNy0yLjM1OTUwNTctMi41NDYwNTg3LTIuOTQ3MTQ2NC00LjE3OTQwNzMtLjAxNjc3NDEtLjA0NTkzNDEtLjAzNTA5MjctLjA5MTMwNjQtLjA2NDY0MzgtLjE2Nzk0NzhhMTcuNDE3NDkyMDIgMTcuNDE3NDkyMDIgMCAwMS0yLjIzODExOTUgMS4yNTM0MjY3IDE2LjI1NTk0NDU1IDE2LjI1NTk0NDU1IDAgMDEtMi4zODc5NzA2Ljg3MDE1MDkgMTYuNzgyNzQ2IDE2Ljc4Mjc0NiAwIDAxLTIuNTMyNzE1MS40ODIxMjgxYy4wMTUwMzkuMDc1MTc3NS4wMjM2NjQxLjEzNTA5ODQuMDM5MTQzNC4xOTMxOTU4LjI3MTMwMiAxLjA2NDMxNTEuMzYxMTcyMyAyLjE2Njc2MjYuMjY1ODMwMiAzLjI2MDk2NjEtLjAzNTczMzkuNjg1ODIzMy0uMTY4OTkzNCAxLjM2MzA1OC0uMzk1NzYyIDIuMDExMjkxNGE3LjAwMTg0MjgyIDcuMDAxODQyODIgMCAwMS0uMzcyNjY2Ljc4MjQ4NzJjLS4wNTY4MzA0LjA5ODA2MjgtLjEyNzI4NzYuMTg3NTY1Ny0uMjA5MjY0Ny4yNjU4MzI5LS4zNTYxNDI1LjM2NzY3NzQtLjc4MTM3MDYuMzcwODA5My0xLjEyODQ5Ni0uMDA2NTkxMmEyLjQ0MTA1NjI1IDIuNDQxMDU2MjUgMCAwMS0uMzQ5NjAyMy0uNTAyNjgyOGMtLjI3NTMxOTYtLjUxNjgxNDYtLjQxNzAxNzMtMS4wNzg3ODMtLjUxODE4NDUtMS42NTE4MzgyLS4xMzAxOS0uNzgyMjA3OC0uMTcwOTg1LTEuNTc2Njg2LS4xMjE1OTg0LTIuMzY4MTE0OGE4LjQ1NDExNjc4IDguNDU0MTE2NzggMCAwMS4yNTgxMjIzLTEuNzE2NzA0N2MuMDEyNTM1My0uMDQ3NjY1Ni4wMjM5ODA5LS4wOTU3MDg5LjAzMzIyNzgtLjE0NDA5NDguMDAyMzUyNS0uMDEyMzA3Mi0uMDA1Njc0OS0uMDI2NjAyNy0uMDE1MjcxNy0uMDY2MDU5NC0yLjU2MTA3MjgtLjE0NDczODYtNS4wNDgxMDM3LS45MTI0NTAzLTcuMjQ1MTQ3My0yLjIzNjQ3NTctLjAzNjY4LjA4MTM1Ny0uMDY4MTg5OS4xNDk4NTY1LS4wOTg1Nzk0LjIxODg1MTctLjYxNTcxNTMgMS40MzY2NzAzLTEuNTYzMzI1MzkgMi43MDY4NjM3LTIuNzY1MDYzMjggMy43MDYzNC0uMzE4MTM0NjUuMjcxODcwMy0uNjgzNTMzNzcuNDgyOTQ2My0xLjA3Nzk4MzA0LjYyMjcwNjMtLjE4NDg1NDUyLjA3NDE1NDMtLjM4NjU5MjY3LjA5NTgzNjUtLjU4Mjk4MzA3LjA2MjY1NzMtLjIyMDYwOTg4LS4wMzk1MTY1LS40MDQyMTk3NS0uMTkyMDY0Ni0uNDgzNDkxODItLjQwMTY5ODEtLjEyNjcxNzYzLS4zMDYzODMtLjEwNDI2ODY0LS42MjUwMjQ4LS4wNjEyMzkwMS0uOTQxMDYzNy4wNzA1ODYzNy0uNDQwNDM5MS4yMDAyMzk2Ni0uODY5MzQ5Mi4zODU0NTU1NC0xLjI3NTEzNzQuNTQ4Nzk3MzYtMS4yNzgxNTY3IDEuMzU2NTMxMTctMi40Mjg3MDc0IDIuMzcyMjQ1MjUtMy4zNzkwNjk0LjA0MTA3MTc4LS4wMzg4ODk0LjA4MzIwMDMzLS4wNzY2ODUzLjEyMzU2MTY0LS4xMTYyODQyYS4zMzY0NzE2OC4zMzY0NzE2OCAwIDAwLjAzMjY5MDk5LS4wNTg2MzZjLS45NTcwMjk0NS0uODMwMDAwMy0xLjgxMjE1NjQ0LTEuNzcwNjY0Ni0yLjU0NzQzNDc1LTIuODAyMjUxNi4wODgxMDEyMS0uMDA3MTc0Ni4xNDcwNDE0NS0uMDE2MTA2Ni4yMDU5ODk3NS0uMDE2MTYwMy45NDA4MzU1MS0uMDAwODczMyAxLjg4MTY5NjA3LjAwMjQ0ODIgMi44MjI0ODUwNC0uMDAzODk5NS4xMjY3MzcwNi0uMDAzODY3Ny4yNDg0Njg5MS4wNDk1ODM4LjMzMTM4NzUzLjE0NTUwOTUgMS4wMjI4MDYzMyAxLjA1MjI1OCAyLjIxNDU0MDEzIDEuOTI1ODgxMSAzLjUyNTc5ODYzIDIuNTg0NjUzNSAxLjM4NzIyNzcuNzEzODU2OSAyLjg5NTYzNDcgMS4xNjIyMDU3IDQuNDQ3NTU5NCAxLjMyMTk2MjggNC4yMTYzNzM2LjQwOTg2MyA3Ljg0MzMyODQtLjg2ODM1ODkgMTAuODgwODY0My0zLjgzNDY2NTUuMTM3NTYzNi0uMTQ4NjY0Ni4zMzM5MzAxLS4yMjg3MzI2LjUzNjIyNDgtLjIxODY0NDIuODc3MDM4Mi4wMTA4NDYgMS43NTQyODU4LjAwNDQ2MTYgMi42MzE0NTc0LjAwNDQ2MTZoLjIyNjcwMjhsLjAxNTcxNTUuMDUzMDA4NXpNNDEuMTYyODcyMyAyNy41NTkzODUxYy4yNDkzOTM0IDAgLjQ4OTQ5NDIuMDE2OTI4OS43MjYxMjY3LS4wMDQ0ODMuMjY4MDA0NS0uMDI0MjQ5NC40NTk4NDI5LjA3MTU5MzcuNjU1MzE3Ny4yNTE3MTcyIDEuMTI4NjAxNiAxLjAzOTk2MDggMi4yNjg5OTg1IDIuMDY3MTI2NiAzLjQwNTUyNDUgMy4wOTg0ODQ3LjA1NzEzODEuMDUxODUyNS4xMTU0NjU0LjEwMjM5NDkuMTg4ODEzOS4xNjczMzg0LjA2ODQwMzctLjA1ODgwNTEuMTMyNTM4My0uMTExMjQxLjE5MzcxMTEtLjE2NjkyNjhBMjkzNi4yMDA4Njc5NyAyOTM2LjIwMDg2Nzk3IDAgMDA0OS44NDQzNDA5IDI3LjcwMzNjLjA5ODE4NTYtLjEwMTE3MDkuMjM1MzY0MS0uMTU0ODc4Mi4zNzYxNDA2LS4xNDcyNjQyLjI4ODAyODYuMDExNjY2NS41NzY4NTk4LjAwMzM1MTkuODgwNjAwNC4wMDMzNTE5djkuNDI4NDkzN2MtLjE1NDE4MzguMDQ1MDY5OC0yLjIyNTg5MzcuMDU0MDE2MS0yLjQ3MzE3NTMuMDA1NDY3M3YtNC43NzQ4ODU0bC0uMDQ4MDEyLS4wMjI3NTI0Yy0uODA2Mjk0NS43MzUzNDA2LTEuNjEyNTkwOCAxLjQ3MDY3NzYtMi40MzcyNzExIDIuMjIyNzc5OC0uODI1NTM3NC0uNzQzNjkzNy0xLjY0MTI1NTItMS40Nzg1MzY3LTIuNDU2OTY5NC0yLjIxMzM4MTZsLS4wNDY5MzE5LjAxNzE3MzJjLS4wMDIwNTgxLjM5ODUxMTctLjAwMDY5MjYuNzk3MTIxOS0uMDAwOTM2IDEuMTk1Njc0N2ExMDQwLjcwODIwNDkgMTA0MC43MDgyMDQ5IDAgMDAtLjAwMDA1MTkgMS4xODgyMDIydjIuNDA0NTQzNGgtMi40NTQyODVjLS4wNDYwMDMxLS4xNTg2NDcxLS4wNjczNjQtOC45MTc4NTQyLS4wMjA1NzctOS40NTEzMTc1ek0xOC41MTUxMDQ1IDI3LjU3MDE3ODNoMi40Mzk1NDMwM2MuMDQ5MjYyODcuMTU2ODE2My4wNTg4OTcyOSA5LjIxMzk4MzUuMDA4NDcyOTUgOS40NDI0ODMxaC0yLjQ0MTcyMzY3Yy0uMDEzNDQwOTQtLjU5OTgzMDYtLjAwNDIzNzgyLTEuMTk3NjA4NC0uMDA1OTI1NDMtMS43OTUxMDYyLS4wMDE2NzQxOS0uNTkyNTk3OC0uMDAwMzY2ODgtMS4xODUyMDM3LS4wMDAzNjY4OC0xLjc5MzE2MThoLTMuMDIzMzQ1NzN2My41NTYwMjg4Yy0uMTg0MjgyNTUuMDU1MDQ3LTIuMjY2ODg4NTMuMDYwMzI1NS0yLjQ3MzkzMzI2LjAxMTAwNjJ2LTkuNDIwMTcwMWgyLjQ2NDE0NjcydjMuMzI3Njg3NmMuMTc2MDkyMzYuMDUwODY0NiAyLjc2NzAzODEzLjA2MDI1NTYgMy4wMzA5MDA2Mi4wMTE1ODA3LjAwMDczMTk1LS4yNjYzOTY2LjAwMTc4OTYyLS41MzkyNTM3LjAwMjE0NzU0LS44MTIxMTE3YTM0NS4zMTk0NjM4IDM0NS4zMTk0NjM4IDAgMDAuMDAwMDg0MTEtLjg0ODg3MDZ2LS44Mjc2OTkzYzllLTctLjI3NTQ1MzggMC0uNTUwOTA1OSAwLS44NTE2NjY3ek0yMy44Nzg3MTU5IDM3LjAwOTE3MjV2LTkuNDExMDQ4NGMuMTQ0NjkwOC0uMDQ3MzQ3MSA1LjUwNzEwODUtLjA2NTg0NTUgNS44NTc2MjI2LS4wMTgzMDUydjIuMDA1NjU1OWMtLjA3ODYyNjEuMDA1NjM3My0uMTU5Nzg2My4wMTY0MTE3LS4yNDA5NTM2LjAxNjUxMjlhMTQ3Ni4xNzk5NzQ3OCAxNDc2LjE3OTk3NDc4IDAgMDEtMi44NjQ5MzU3LjAwMDc4ODNoLS4yNjU1NTAxdjEuNTU5OTY5OGgyLjk4Mzg4MDF2Mi4wNzUyMTM5aC0yLjk1NzE5NjljLS4wNDk1MTc5LjE3NzYyNzktLjA2MzExMTggMS40MTUzMDQxLS4wMjI5MjY4IDEuNzU3OTI4Ni4wNzU2MDA3LjAwNTA4MTcuMTU2NTkxOC4wMTUxNjg5LjIzNzU5ODkuMDE1MjY0NmExNTc5LjI4NjQwNjMgMTU3OS4yODY0MDYzIDAgMDAyLjg2NDkzNzUuMDAwNzM1NWguMjY1NzA5NHYxLjk5NzI4NDFoLTUuODU4MTg1NHpNMzIuNTMyMTc0MyAzNy4wMTI3NzY4Yy0uMDQ0ODA2OC0uMjUyNTQ2Ny0uMDM1NzQ1OS05LjI3MDM5NjguMDA4NzIxNy05LjQ0MTgwMTNoMi40MzA0OTAydjYuOTU4NDQ4NGMuMTA0ODQ3Ni4wMDU0NDQuMTg3MTI0NS4wMTMzNTE0LjI2OTQwNjcuMDEzNDI2NmEyMDQzLjUwODE3NjQgMjA0My41MDgxNzY0IDAgMDAyLjg4NjMwODMuMDAwNTg4OGguMjYwMTUwOHYyLjQ2OTMzNzVoLTUuODU1MDc3N3oiLz48L2c+PC9nPjwvc3ZnPg== - friendly-name.meta.crossplane.io: Provider Helm - friendly-group-name.meta.crossplane.io/helm.crossplane.io: Helm - friendly-kind-name.meta.crossplane.io/release.helm.crossplane.io: Helm Release - # TODO(negz): Remove the below metadata once we're two releases past v0.7, - # which should be enough time for consumers to update. - descriptionShort: | - The Helm Crossplane provider enables resource management of Helm Releases - on Kubernetes Clusters. - - description: | - The Helm Crossplane provider enables resource management of Helm Releases - on Kubernetes Clusters, typically provisioned by Crossplane. - - readme: | - `provider-helm` is a Crossplane Provider that enables deployment and - management of [Helm](https://helm.sh) Releases on Kubernetes clusters - typically provisioned by Crossplane. - - Available resources and their fields can be found in the [CRD - Docs](https://doc.crds.dev/github.com/crossplane-contrib/provider-helm). - - If you encounter an issue please reach out on - [slack.crossplane.io](https://slack.crossplane.io) and create an issue in - the - [crossplane-contrib/provider-helm](https://github.com/crossplane-contrib/provider-helm) - repo. - iconData: CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNjUiIGhlaWdodD0iNjUiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0ibm9uemVybyI+PHJlY3Qgd2lkdGg9IjY1IiBoZWlnaHQ9IjY1IiBmaWxsPSIjMDgxQjdFIiByeD0iMTYiLz48ZyBmaWxsPSIjRkZGRkZGIj48cGF0aCBkPSJNMjEuOTk1NDcgMjAuNzAyNzMzOWMtLjA1MTE4MzEzLS4wNDg1NDUyLS4xMDY4OTU4LS4xMDA3ODc4LS4xNjE5NjA2Mi0uMTUzNjkzNS0xLjEyODk2MTI2LTEuMDg0NjEyNjYtMi4wMDI2NjcyMi0yLjMzODcwODY0LTIuNTMwNDMzMzUtMy44MjEwMTc4Ny0uMTQ3NzA4OTgtLjQxNDg2NzA1LS4yNTkyMTkzMi0uODM4MDAzMDQtLjIzOTQzOTU0LTEuMjg0ODMxODEuMDAxODc5MS0uMDQyNDA1MDUuMDAxNzUyOTMtLjA4NDkzMDg5LjAwNDY3NjI4LS4xMjcyNTQ1Mi4wMzk4MTkwNC0uNTc2Nzg5MTkuNDI1ODUwODQtLjg2ODI1Mzg4Ljk4OTUxNTg1LS43MzE2NTg0NGEyLjQ0NTA2ODYyIDIuNDQ1MDY4NjIgMCAwMS41MTI4NTk0OS4xOTY1NDc3MWMuNjE2NTQzODEuMzA5MTkwODggMS4xMTkwNjczNS43NjYyNzg2NSAxLjU4MTE3NSAxLjI2NzU2MTk4LjgyMDc3ODYxLjg3MzQ3MDg5IDEuNDc5MDA5MTkgMS44ODY0NzIzNiAxLjk0MzcwNjM5IDIuOTkxMzE4NjlhLjc0MjM1NTE4Ljc0MjM1NTE4IDAgMDAuMDM0ODQ5My4wNzcwNDMxNWMuMDA2MzY3NS4wMTE1MDI3OC4wMTk4OTM0LjAxOTA0MzM1LjA1MDA0NC4wNDY0MjU0MyAyLjE5OTg0NTgtMS4zMTk3NzU2MSA0LjY4ODI3OTctMi4wODMzNDIwMSA3LjI0OTc2MDktMi4yMjQ1NjEzMy0uMDE1Nzk0My0uMDc4Mzk0MzEtLjAyNTIyOTEtLjEzODMxMTY4LS4wNDAwNjI0LS4xOTY4NTgyMS0uMjYxMzYwNS0xLjA4MTYwMDQ2LS4zNDE1NzY5LTIuMTk5MDUxNTEtLjIzNzM4Ni0zLjMwNjg5MzE1LjA0NTg0OTUtLjY2Mzg4MDM3LjE3OTU4MDctMS4zMTg3NDI4LjM5NzY5My0xLjk0NzQ0NDkxLjEwNTUxMi0uMzMxMTM4MjcuMjcxNjg0OS0uNjM5NzY3MTguNDkwMDQzNi0uOTEwMTQ2MmExLjQwMzY4OTIgMS40MDM2ODkyIDAgMDEuMjgzMDYwNy0uMjUyNDY5NzdjLjIxNDkxNS0uMTUxOTY3OTcuNTAxNzQ3Ni0uMTUzOTY3NjYuNzE4NzYwNi0uMDA1MDEwOTQuMjIzODcyNy4xNTE2MzkyMi40MDQwNjIyLjM1OTMzOTE3LjUyMjU4Ny42MDIzNzI3MS4yMjA3NzE3LjQxMjE4MDExLjM3OTQzODguODU0NzE0NzYuNDcwODYyNSAxLjMxMzI3MTU2LjIwODQ0MjEuOTY5NjY2MjMuMjcyNDQ1MSAxLjk2NDgxMjg1LjE4OTkzNSAyLjk1MzE5MTczYTguNTU0MjA5NTYgOC41NTQyMDk1NiAwIDAxLS4zMTIzMzUyIDEuNzgxNjM5M2MuNjM3MjU3OC4xMTczOTI4MSAxLjI3MTQ4NDguMjA4MzczNTIgMS44OTIyODE2LjM1NTg3NzU5YTE2LjY3NzM4MzE2IDE2LjY3NzM4MzE2IDAgMDExLjgyOTA1MzUuNTM3MTgxMzIgMTYuODUwNzYzMyAxNi44NTA3NjMzIDAgMDExLjc2OTA2MDEuNzY2Nzg5NThjLjU2Nzc5MS4yODMxNDc0MyAxLjEwODI2OTcuNjIxMDU3MjMgMS42NzQ4NjcuOTQyOTc2NzguMDE4NDA3MS0uMDM4NzQ1MjcuMDQ1MTMzMy0uMDg0OTkwODQuMDYzMTczNi0uMTM0NDExMi41OTAxODkxLTEuNjMyNTg2MDcgMS42MDY3MTU0LTMuMDc3Mzg1NTkgMi45NDM5OTc1LTQuMTg0MzM0OTQuMzEyMTczMi0uMjY3OTk2MDguNjcwNjcwNi0uNDc2NzIwMjggMS4wNTc4NDQ1LS42MTU4OTc3NmExLjU0MzE1MDQ0IDEuNTQzMTUwNDQgMCAwMS4zMjkxMzUzLS4wNzU2MjIxOWMuNTYwNTA5LS4wNjQxODM4My43OTU4MDAyLjI4ODUyMjU2LjgzNzIzMTcuNzA5NzQ4MTIuMDMxMDUzNy4zMTA1MjQwNy4wMDc2MjExLjYyNDA4NTk2LS4wNjkyNDEzLjkyNjU0NTM5LS4yMDQ3MzI4Ljc4MTI4Mzk0LS41Mjg1NzI5IDEuNTI2Mzc1ODMtLjk2MDEzMjEgMi4yMDkwNzM5Ni0uNjA3NTkwMy45ODE3NjU5LTEuMzI4ODA2MyAxLjg2NjEyMTA0LTIuMjQ1MzUzMSAyLjU3OTc3NDk0LS4wMjcwNTM3LjAyMTA2MzktLjA1MDgxMDkuMDQ2MzYzNy0uMDk2NjI4OC4wODg2MTIyLjg5NjQ5NC44MjY4Njk1IDEuNjk0OTI2MiAxLjc1NDA5MDkgMi4zNzk1NjIxIDIuNzYzMzkxOGEuOTgwOTIzMjguOTgwOTIzMjggMCAwMS0uMTUxMTMzNC4wMjY2MzEzYy0uOTQ4MDkyNC4wMDEzNDIyLTEuODk2MjAwOS0uMDAxNjM2Ni0yLjg0NDI2MjkuMDA0MTIyNC0uMTEzMjA1Ny0uMDAyNzE0Ni0uMjE4NDY0Ni0uMDU4Nzg3MS0uMjgzODc0OS0uMTUxMjIyOS0yLjA2ODU2MTYtMi4yNTk5ODI1LTQuODU3MjY0Ni0zLjczMjEyMDQ2LTcuODkwMjM0Ni00LjE2NTIwMzAyYTEyLjgyNzg3NDA1IDEyLjgyNzg3NDA1IDAgMDAtMi43MDk0NDQ2LS4xMDQ2MjM4OGMtMi42OTY0MzQ5LjE2NDY0NDU5LTUuMjc2MDQwOCAxLjE1ODg0NTctNy4zODU1MTg4IDIuODQ2NDM5MWExMi41MzMzMDIzIDEyLjUzMzMwMjMgMCAwMC0xLjUxOTA0Mzg4IDEuNDE3NTQ1NmMtLjA4MzkwOTkyLjEwNDA5NDEtLjIxMjA4NDU5LjE2MjQwMTUtLjM0NTY4ODM5LjE1NzI1NTctLjkwNTU5Nzg5LS4wMDYyODg3LTEuODExMjYzNzgtLjAwMzEzMTktMi43MTY5MDU1MS0uMDAzMTI3NGgtLjE5MjU3Mzg2Yy4wNTUyOTkyNi0uMjE1NDcwMi42MTIwNzMzNC0uOTc4NzMwNyAxLjI0MjMxMTMzLTEuNjYwMTI0MS40Njk5OTYzLS41MDgxNDU2Ljk2Nzg4NTYxLS45OTA0OTMgMS40NzM2MDU0MS0xLjUwNDkzek00NS4wODE1NjU4IDQwLjk5NTAxNDRjLS42Mjk4NTc2Ljg4MTU4NTMtMS4zNDg2OTMxIDEuNjk2MDcwNS0yLjE0NTE2NjYgMi40MzA2MDY2LjA2MzQ3ODcuMDUyODU0Ni4xMTUwNjcyLjA5NTc4MTMuMTY2NjI0NC4xMzg3NDY1IDEuMzgyNDMzNyAxLjEzMDg5ODUgMi40MjU0ODggMi42MjE4MDUyIDMuMDE0MDEzNyA0LjMwODEzMDEuMTU2NTgyNC40MTEyMzYxLjIyMzc1MjUuODUxMTEzNS4xOTcwMzcyIDEuMjkwMzM5NGExLjMzMTk2MzA0IDEuMzMxOTYzMDQgMCAwMS0uMDY2OTE5Mi4zMzAzNjkyYy0uMDk0MTQwNi4zMTMyNTg2LS40MDc4ODAzLjUwNjQzNzQtLjcyOTk3OTguNDQ5NDcwMy0uMjA5OTgxMi0uMDI3MjU3MS0uNDE0MjY0Ny0uMDg3ODYxMy0uNjA1MTM4Ni0uMTc5NTI0OWE0LjU4NDMyMjc1IDQuNTg0MzIyNzUgMCAwMS0uODIxNTcwNy0uNTIwMzQwOWMtMS4zNDExOTU2LTEuMTAxOTcyNy0yLjM1OTUwNTctMi41NDYwNTg3LTIuOTQ3MTQ2NC00LjE3OTQwNzMtLjAxNjc3NDEtLjA0NTkzNDEtLjAzNTA5MjctLjA5MTMwNjQtLjA2NDY0MzgtLjE2Nzk0NzhhMTcuNDE3NDkyMDIgMTcuNDE3NDkyMDIgMCAwMS0yLjIzODExOTUgMS4yNTM0MjY3IDE2LjI1NTk0NDU1IDE2LjI1NTk0NDU1IDAgMDEtMi4zODc5NzA2Ljg3MDE1MDkgMTYuNzgyNzQ2IDE2Ljc4Mjc0NiAwIDAxLTIuNTMyNzE1MS40ODIxMjgxYy4wMTUwMzkuMDc1MTc3NS4wMjM2NjQxLjEzNTA5ODQuMDM5MTQzNC4xOTMxOTU4LjI3MTMwMiAxLjA2NDMxNTEuMzYxMTcyMyAyLjE2Njc2MjYuMjY1ODMwMiAzLjI2MDk2NjEtLjAzNTczMzkuNjg1ODIzMy0uMTY4OTkzNCAxLjM2MzA1OC0uMzk1NzYyIDIuMDExMjkxNGE3LjAwMTg0MjgyIDcuMDAxODQyODIgMCAwMS0uMzcyNjY2Ljc4MjQ4NzJjLS4wNTY4MzA0LjA5ODA2MjgtLjEyNzI4NzYuMTg3NTY1Ny0uMjA5MjY0Ny4yNjU4MzI5LS4zNTYxNDI1LjM2NzY3NzQtLjc4MTM3MDYuMzcwODA5My0xLjEyODQ5Ni0uMDA2NTkxMmEyLjQ0MTA1NjI1IDIuNDQxMDU2MjUgMCAwMS0uMzQ5NjAyMy0uNTAyNjgyOGMtLjI3NTMxOTYtLjUxNjgxNDYtLjQxNzAxNzMtMS4wNzg3ODMtLjUxODE4NDUtMS42NTE4MzgyLS4xMzAxOS0uNzgyMjA3OC0uMTcwOTg1LTEuNTc2Njg2LS4xMjE1OTg0LTIuMzY4MTE0OGE4LjQ1NDExNjc4IDguNDU0MTE2NzggMCAwMS4yNTgxMjIzLTEuNzE2NzA0N2MuMDEyNTM1My0uMDQ3NjY1Ni4wMjM5ODA5LS4wOTU3MDg5LjAzMzIyNzgtLjE0NDA5NDguMDAyMzUyNS0uMDEyMzA3Mi0uMDA1Njc0OS0uMDI2NjAyNy0uMDE1MjcxNy0uMDY2MDU5NC0yLjU2MTA3MjgtLjE0NDczODYtNS4wNDgxMDM3LS45MTI0NTAzLTcuMjQ1MTQ3My0yLjIzNjQ3NTctLjAzNjY4LjA4MTM1Ny0uMDY4MTg5OS4xNDk4NTY1LS4wOTg1Nzk0LjIxODg1MTctLjYxNTcxNTMgMS40MzY2NzAzLTEuNTYzMzI1MzkgMi43MDY4NjM3LTIuNzY1MDYzMjggMy43MDYzNC0uMzE4MTM0NjUuMjcxODcwMy0uNjgzNTMzNzcuNDgyOTQ2My0xLjA3Nzk4MzA0LjYyMjcwNjMtLjE4NDg1NDUyLjA3NDE1NDMtLjM4NjU5MjY3LjA5NTgzNjUtLjU4Mjk4MzA3LjA2MjY1NzMtLjIyMDYwOTg4LS4wMzk1MTY1LS40MDQyMTk3NS0uMTkyMDY0Ni0uNDgzNDkxODItLjQwMTY5ODEtLjEyNjcxNzYzLS4zMDYzODMtLjEwNDI2ODY0LS42MjUwMjQ4LS4wNjEyMzkwMS0uOTQxMDYzNy4wNzA1ODYzNy0uNDQwNDM5MS4yMDAyMzk2Ni0uODY5MzQ5Mi4zODU0NTU1NC0xLjI3NTEzNzQuNTQ4Nzk3MzYtMS4yNzgxNTY3IDEuMzU2NTMxMTctMi40Mjg3MDc0IDIuMzcyMjQ1MjUtMy4zNzkwNjk0LjA0MTA3MTc4LS4wMzg4ODk0LjA4MzIwMDMzLS4wNzY2ODUzLjEyMzU2MTY0LS4xMTYyODQyYS4zMzY0NzE2OC4zMzY0NzE2OCAwIDAwLjAzMjY5MDk5LS4wNTg2MzZjLS45NTcwMjk0NS0uODMwMDAwMy0xLjgxMjE1NjQ0LTEuNzcwNjY0Ni0yLjU0NzQzNDc1LTIuODAyMjUxNi4wODgxMDEyMS0uMDA3MTc0Ni4xNDcwNDE0NS0uMDE2MTA2Ni4yMDU5ODk3NS0uMDE2MTYwMy45NDA4MzU1MS0uMDAwODczMyAxLjg4MTY5NjA3LjAwMjQ0ODIgMi44MjI0ODUwNC0uMDAzODk5NS4xMjY3MzcwNi0uMDAzODY3Ny4yNDg0Njg5MS4wNDk1ODM4LjMzMTM4NzUzLjE0NTUwOTUgMS4wMjI4MDYzMyAxLjA1MjI1OCAyLjIxNDU0MDEzIDEuOTI1ODgxMSAzLjUyNTc5ODYzIDIuNTg0NjUzNSAxLjM4NzIyNzcuNzEzODU2OSAyLjg5NTYzNDcgMS4xNjIyMDU3IDQuNDQ3NTU5NCAxLjMyMTk2MjggNC4yMTYzNzM2LjQwOTg2MyA3Ljg0MzMyODQtLjg2ODM1ODkgMTAuODgwODY0My0zLjgzNDY2NTUuMTM3NTYzNi0uMTQ4NjY0Ni4zMzM5MzAxLS4yMjg3MzI2LjUzNjIyNDgtLjIxODY0NDIuODc3MDM4Mi4wMTA4NDYgMS43NTQyODU4LjAwNDQ2MTYgMi42MzE0NTc0LjAwNDQ2MTZoLjIyNjcwMjhsLjAxNTcxNTUuMDUzMDA4NXpNNDEuMTYyODcyMyAyNy41NTkzODUxYy4yNDkzOTM0IDAgLjQ4OTQ5NDIuMDE2OTI4OS43MjYxMjY3LS4wMDQ0ODMuMjY4MDA0NS0uMDI0MjQ5NC40NTk4NDI5LjA3MTU5MzcuNjU1MzE3Ny4yNTE3MTcyIDEuMTI4NjAxNiAxLjAzOTk2MDggMi4yNjg5OTg1IDIuMDY3MTI2NiAzLjQwNTUyNDUgMy4wOTg0ODQ3LjA1NzEzODEuMDUxODUyNS4xMTU0NjU0LjEwMjM5NDkuMTg4ODEzOS4xNjczMzg0LjA2ODQwMzctLjA1ODgwNTEuMTMyNTM4My0uMTExMjQxLjE5MzcxMTEtLjE2NjkyNjhBMjkzNi4yMDA4Njc5NyAyOTM2LjIwMDg2Nzk3IDAgMDA0OS44NDQzNDA5IDI3LjcwMzNjLjA5ODE4NTYtLjEwMTE3MDkuMjM1MzY0MS0uMTU0ODc4Mi4zNzYxNDA2LS4xNDcyNjQyLjI4ODAyODYuMDExNjY2NS41NzY4NTk4LjAwMzM1MTkuODgwNjAwNC4wMDMzNTE5djkuNDI4NDkzN2MtLjE1NDE4MzguMDQ1MDY5OC0yLjIyNTg5MzcuMDU0MDE2MS0yLjQ3MzE3NTMuMDA1NDY3M3YtNC43NzQ4ODU0bC0uMDQ4MDEyLS4wMjI3NTI0Yy0uODA2Mjk0NS43MzUzNDA2LTEuNjEyNTkwOCAxLjQ3MDY3NzYtMi40MzcyNzExIDIuMjIyNzc5OC0uODI1NTM3NC0uNzQzNjkzNy0xLjY0MTI1NTItMS40Nzg1MzY3LTIuNDU2OTY5NC0yLjIxMzM4MTZsLS4wNDY5MzE5LjAxNzE3MzJjLS4wMDIwNTgxLjM5ODUxMTctLjAwMDY5MjYuNzk3MTIxOS0uMDAwOTM2IDEuMTk1Njc0N2ExMDQwLjcwODIwNDkgMTA0MC43MDgyMDQ5IDAgMDAtLjAwMDA1MTkgMS4xODgyMDIydjIuNDA0NTQzNGgtMi40NTQyODVjLS4wNDYwMDMxLS4xNTg2NDcxLS4wNjczNjQtOC45MTc4NTQyLS4wMjA1NzctOS40NTEzMTc1ek0xOC41MTUxMDQ1IDI3LjU3MDE3ODNoMi40Mzk1NDMwM2MuMDQ5MjYyODcuMTU2ODE2My4wNTg4OTcyOSA5LjIxMzk4MzUuMDA4NDcyOTUgOS40NDI0ODMxaC0yLjQ0MTcyMzY3Yy0uMDEzNDQwOTQtLjU5OTgzMDYtLjAwNDIzNzgyLTEuMTk3NjA4NC0uMDA1OTI1NDMtMS43OTUxMDYyLS4wMDE2NzQxOS0uNTkyNTk3OC0uMDAwMzY2ODgtMS4xODUyMDM3LS4wMDAzNjY4OC0xLjc5MzE2MThoLTMuMDIzMzQ1NzN2My41NTYwMjg4Yy0uMTg0MjgyNTUuMDU1MDQ3LTIuMjY2ODg4NTMuMDYwMzI1NS0yLjQ3MzkzMzI2LjAxMTAwNjJ2LTkuNDIwMTcwMWgyLjQ2NDE0NjcydjMuMzI3Njg3NmMuMTc2MDkyMzYuMDUwODY0NiAyLjc2NzAzODEzLjA2MDI1NTYgMy4wMzA5MDA2Mi4wMTE1ODA3LjAwMDczMTk1LS4yNjYzOTY2LjAwMTc4OTYyLS41MzkyNTM3LjAwMjE0NzU0LS44MTIxMTE3YTM0NS4zMTk0NjM4IDM0NS4zMTk0NjM4IDAgMDAuMDAwMDg0MTEtLjg0ODg3MDZ2LS44Mjc2OTkzYzllLTctLjI3NTQ1MzggMC0uNTUwOTA1OSAwLS44NTE2NjY3ek0yMy44Nzg3MTU5IDM3LjAwOTE3MjV2LTkuNDExMDQ4NGMuMTQ0NjkwOC0uMDQ3MzQ3MSA1LjUwNzEwODUtLjA2NTg0NTUgNS44NTc2MjI2LS4wMTgzMDUydjIuMDA1NjU1OWMtLjA3ODYyNjEuMDA1NjM3My0uMTU5Nzg2My4wMTY0MTE3LS4yNDA5NTM2LjAxNjUxMjlhMTQ3Ni4xNzk5NzQ3OCAxNDc2LjE3OTk3NDc4IDAgMDEtMi44NjQ5MzU3LjAwMDc4ODNoLS4yNjU1NTAxdjEuNTU5OTY5OGgyLjk4Mzg4MDF2Mi4wNzUyMTM5aC0yLjk1NzE5NjljLS4wNDk1MTc5LjE3NzYyNzktLjA2MzExMTggMS40MTUzMDQxLS4wMjI5MjY4IDEuNzU3OTI4Ni4wNzU2MDA3LjAwNTA4MTcuMTU2NTkxOC4wMTUxNjg5LjIzNzU5ODkuMDE1MjY0NmExNTc5LjI4NjQwNjMgMTU3OS4yODY0MDYzIDAgMDAyLjg2NDkzNzUuMDAwNzM1NWguMjY1NzA5NHYxLjk5NzI4NDFoLTUuODU4MTg1NHpNMzIuNTMyMTc0MyAzNy4wMTI3NzY4Yy0uMDQ0ODA2OC0uMjUyNTQ2Ny0uMDM1NzQ1OS05LjI3MDM5NjguMDA4NzIxNy05LjQ0MTgwMTNoMi40MzA0OTAydjYuOTU4NDQ4NGMuMTA0ODQ3Ni4wMDU0NDQuMTg3MTI0NS4wMTMzNTE0LjI2OTQwNjcuMDEzNDI2NmEyMDQzLjUwODE3NjQgMjA0My41MDgxNzY0IDAgMDAyLjg4NjMwODMuMDAwNTg4OGguMjYwMTUwOHYyLjQ2OTMzNzVoLTUuODU1MDc3N3oiLz48L2c+PC9nPjwvc3ZnPg== -spec: - controller: - image: crossplane/provider-helm-controller:VERSION