diff --git a/.editorconfig b/.editorconfig index c4993887c..7c9f19491 100644 --- a/.editorconfig +++ b/.editorconfig @@ -25,6 +25,14 @@ insert_final_newline = false [Makefile] indent_style = tab -# Don't check for trailing newlines in golden tests output -[**/tests/golden/**] +; Ignore golden test outputs +[/component/tests/golden/**] +indent_size = unset +indent_style = unset insert_final_newline = unset +trim_trailing_whitespace = unset +[/package/tests/golden/**] +indent_size = unset +indent_style = unset +insert_final_newline = unset +trim_trailing_whitespace = unset diff --git a/.github/workflows/component-test.yaml b/.github/workflows/component-test.yaml new file mode 100644 index 000000000..fcad912b8 --- /dev/null +++ b/.github/workflows/component-test.yaml @@ -0,0 +1,65 @@ +name: Pull Request (component) +on: + pull_request: + branches: + - master + +env: + COMPONENT_NAME: appcat + +jobs: + linting: + runs-on: ubuntu-latest + strategy: + matrix: + command: + - lint_jsonnet + - lint_yaml + steps: + - uses: actions/checkout@v4 + - name: Run ${{ matrix.command }} + run: make -C component ${{ matrix.command }} + test: + runs-on: ubuntu-latest + strategy: + matrix: + instance: + - defaults + - exoscale + - cloudscale + - openshift + - vshn + - apiserver + - controllers + - minio + defaults: + run: + working-directory: ${{ env.COMPONENT_NAME }} + steps: + - uses: actions/checkout@v4 + with: + path: ${{ env.COMPONENT_NAME }} + - name: Compile component + run: make -C component test -e instance=${{ matrix.instance }} + golden: + runs-on: ubuntu-latest + strategy: + matrix: + instance: + - defaults + - exoscale + - cloudscale + - openshift + - vshn + - apiserver + - controllers + - minio + defaults: + run: + working-directory: ${{ env.COMPONENT_NAME }} + steps: + - uses: actions/checkout@v4 + with: + path: ${{ env.COMPONENT_NAME }} + - name: Golden diff + run: make -C component golden-diff -e instance=${{ matrix.instance }} diff --git a/.github/workflows/package-test.yaml b/.github/workflows/package-test.yaml new file mode 100644 index 000000000..b9f58c0ef --- /dev/null +++ b/.github/workflows/package-test.yaml @@ -0,0 +1,21 @@ +name: Pull Request (package) +on: + pull_request: + branches: + - master + +env: + PACKAGE_NAME: appcat + +jobs: + linting: + runs-on: ubuntu-latest + strategy: + matrix: + command: + - lint_yaml + - lint_commodore + steps: + - uses: actions/checkout@v4 + - name: Run ${{ matrix.command }} + run: make -C package ${{ matrix.command }} diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 36c0ef8bd..1a6e52025 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -30,3 +30,19 @@ jobs: # Ensure target branch for release is "master" commit: master token: ${{ secrets.GITHUB_TOKEN }} + update-version: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + ref: 'master' + - name: set tag env + run: echo "TAG_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV + - name: Change version in package + run: | + yq -i '.parameters."pkg.appcat".componentVersion = "${{ env.TAG_VERSION }} "' package/main.yaml + - uses: actions-js/push@v1.4 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + message: "Update component version in package to ${{ env.TAG_VERSION }}}" + branch: 'master' diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index a1bb35cc3..c9df0aa1d 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -1,73 +1,21 @@ -name: Pull Request +name: Pull Request (global lints) + on: pull_request: branches: - master - -env: - COMPONENT_NAME: appcat - jobs: linting: runs-on: ubuntu-latest - strategy: - matrix: - command: - - lint_jsonnet - - lint_yaml - - lint_adoc steps: - uses: actions/checkout@v4 - - name: Run ${{ matrix.command }} - run: make ${{ matrix.command }} + - name: Run Asciidoc linter + run: make lint_adoc + editorconfig: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: snow-actions/eclint@v1.0.1 with: - args: 'check' - test: - runs-on: ubuntu-latest - strategy: - matrix: - instance: - - defaults - - exoscale - - cloudscale - - openshift - - vshn - - apiserver - - controllers - - minio - defaults: - run: - working-directory: ${{ env.COMPONENT_NAME }} - steps: - - uses: actions/checkout@v4 - with: - path: ${{ env.COMPONENT_NAME }} - - name: Compile component - run: make test -e instance=${{ matrix.instance }} - golden: - runs-on: ubuntu-latest - strategy: - matrix: - instance: - - defaults - - exoscale - - cloudscale - - openshift - - vshn - - apiserver - - controllers - - minio - defaults: - run: - working-directory: ${{ env.COMPONENT_NAME }} - steps: - - uses: actions/checkout@v4 - with: - path: ${{ env.COMPONENT_NAME }} - - name: Golden diff - run: make golden-diff -e instance=${{ matrix.instance }} + args: "check" diff --git a/.gitignore b/.gitignore index 07ed01d7d..37688dc1b 100644 --- a/.gitignore +++ b/.gitignore @@ -8,15 +8,28 @@ .kind .idea -# jsonnet builder -component/jsonnetfile.json - -compiled/ -vendor/ -dependencies/ -hack/ - # sloth artifacts sloth-*-*-* sloth-input/ sloth-output/ + +# Commodore +/component/.cache +/component/dependencies +/component/helmcharts +/component/manifests +/component/vendor +/component/jsonnetfile.lock.json +/component/crds +/component/compiled + +/package/.cache +/package/dependencies +/package/helmcharts +/package/manifests +/package/vendor +/package/jsonnetfile.lock.json +/package/crds +/package/compiled + +# Additional entries diff --git a/Makefile b/Makefile index 88fe25175..ff5fc04b8 100644 --- a/Makefile +++ b/Makefile @@ -7,84 +7,17 @@ SHELL := bash include Makefile.vars.mk +.PHONY: all +all: help + .PHONY: help help: ## Show this help @grep -E -h '\s##\s' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = "(: ).*?## "}; {gsub(/\\:/,":", $$1)}; {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}' -.PHONY: all -all: lint - -.PHONY: lint -lint: lint_jsonnet lint_yaml lint_adoc lint_kubent ## All-in-one linting - -.PHONY: lint_jsonnet -lint_jsonnet: $(JSONNET_FILES) ## Lint jsonnet files - $(JSONNET_DOCKER) $(JSONNETFMT_ARGS) --test -- $? - -.PHONY: lint_yaml -lint_yaml: ## Lint yaml files - $(YAMLLINT_DOCKER) -f parsable -c $(YAMLLINT_CONFIG) $(YAMLLINT_ARGS) -- . - .PHONY: lint_adoc lint_adoc: ## Lint documentation $(VALE_CMD) $(VALE_ARGS) -.PHONY: lint_kubent -lint_kubent: ## Lint deprecated Kubernetes API versions - $(KUBENT_DOCKER) $(KUBENT_ARGS) -f $(KUBENT_FILES) - -.PHONY: format -format: format_jsonnet ## All-in-one formatting - -.PHONY: format_jsonnet -format_jsonnet: $(JSONNET_FILES) ## Format jsonnet files - $(JSONNET_DOCKER) $(JSONNETFMT_ARGS) -- $? - .PHONY: docs-serve docs-serve: ## Preview the documentation $(ANTORA_PREVIEW_CMD) - -.PHONY: compile -.compile: - mkdir -p dependencies - $(COMPILE_CMD) - -.PHONY: test -test: commodore_args += -f tests/$(instance).yml -test: .compile ## Compile the component -.PHONY: gen-golden -gen-golden: commodore_args += -f tests/$(instance).yml -gen-golden: clean .compile ## Update the reference version for target `golden-diff`. - @rm -rf tests/golden/$(instance) - @mkdir -p tests/golden/$(instance) - @cp -R compiled/. tests/golden/$(instance)/. - -.PHONY: golden-diff -golden-diff: commodore_args += -f tests/$(instance).yml -golden-diff: clean .compile ## Diff compile output against the reference version. Review output and run `make gen-golden golden-diff` if this target fails. - @git diff --exit-code --minimal --no-index -- tests/golden/$(instance) compiled/ - -.PHONY: golden-diff-all -golden-diff-all: recursive_target=golden-diff -golden-diff-all: $(test_instances) ## Run golden-diff for all instances. Note: this doesn't work when running make with multiple parallel jobs (-j != 1). - -.PHONY: gen-golden-all -gen-golden-all: recursive_target=gen-golden -gen-golden-all: $(test_instances) ## Run gen-golden for all instances. Note: this doesn't work when running make with multiple parallel jobs (-j != 1). - -.PHONY: lint_kubent_all -lint_kubent_all: recursive_target=lint_kubent -lint_kubent_all: $(test_instances) ## Lint deprecated Kubernetes API versions for all golden test instances. Will exit on first error. Note: this doesn't work when running make with multiple parallel jobs (-j != 1). - -.PHONY: $(test_instances) -$(test_instances): - $(MAKE) $(recursive_target) -e instance=$(basename $(@F)) - -.PHONY: generate-exoscale-plans -generate-exoscale-plans: ## Generate current plans for Exoscale - cd dev/scripts/exoscale-plans/ && \ - go run main.go - -.PHONY: clean -clean: ## Clean the project - rm -rf .cache compiled dependencies vendor helmcharts jsonnetfile*.json || true diff --git a/Makefile.vars.mk b/Makefile.vars.mk index 1cea253c1..6e3f5e8b0 100644 --- a/Makefile.vars.mk +++ b/Makefile.vars.mk @@ -1,17 +1,11 @@ -# Commodore takes the root dir name as the component name COMPONENT_NAME ?= appcat -git_dir ?= $(shell git rev-parse --git-common-dir) -compiled_path ?= compiled/$(COMPONENT_NAME)/$(COMPONENT_NAME) -root_volume ?= -v "$${PWD}/:/$(COMPONENT_NAME)" -compiled_volume ?= -v "$${PWD}/$(compiled_path):/$(COMPONENT_NAME)" -commodore_args ?= --search-paths ./dependencies --search-paths . -n $(COMPONENT_NAME) +git_dir ?= $(shell git rev-parse --git-common-dir) +root_volume ?= -v "$${PWD}:/$(COMPONENT_NAME)" ifneq "$(git_dir)" ".git" - git_volume ?= -v "$(git_dir):$(git_dir):ro" antora_git_volume ?= -v "$(git_dir):/preview/antora/.git:ro" else - git_volume ?= antora_git_volume ?= -v "${PWD}/.git:/preview/antora/.git:ro" endif @@ -24,26 +18,7 @@ else endif DOCKER_ARGS ?= run --rm -u "$$(id -u):$$(id -g)" --userns=$(DOCKER_USERNS) -w /$(COMPONENT_NAME) -e HOME="/$(COMPONENT_NAME)" -JSONNET_FILES ?= $(shell find . -type f -not -path './vendor/*' \( -name '*.*jsonnet' -or -name '*.libsonnet' \)) -JSONNETFMT_ARGS ?= --in-place --pad-arrays -JSONNET_IMAGE ?= docker.io/bitnami/jsonnet:latest -JSONNET_DOCKER ?= $(DOCKER_CMD) $(DOCKER_ARGS) $(root_volume) --entrypoint=jsonnetfmt $(JSONNET_IMAGE) - VALE_CMD ?= $(DOCKER_CMD) $(DOCKER_ARGS) $(root_volume) --volume "$${PWD}"/docs/modules:/pages ghcr.io/vshn/vale:2.15.5 VALE_ARGS ?= --minAlertLevel=error --config=/pages/ROOT/pages/.vale.ini /pages -ANTORA_PREVIEW_CMD ?= $(DOCKER_CMD) run --rm --publish 35729:35729 --publish 2020:2020 $(antora_git_volume) --volume "${PWD}/docs":/preview/antora/docs ghcr.io/vshn/antora-preview:3.1.4 --style=syn --antora=docs - -COMMODORE_CMD ?= $(DOCKER_CMD) $(DOCKER_ARGS) $(root_volume) docker.io/projectsyn/commodore:latest -COMPILE_CMD ?= $(COMMODORE_CMD) component compile . $(commodore_args) -JB_CMD ?= $(DOCKER_CMD) $(DOCKER_ARGS) --entrypoint /usr/local/bin/jb docker.io/projectsyn/commodore:latest install - -GOLDEN_FILES ?= $(shell find tests/golden/$(instance) -type f) - -KUBENT_FILES ?= $(shell echo "$(GOLDEN_FILES)" | sed 's/ /,/g') -KUBENT_ARGS ?= -c=false --helm3=false -e -KUBENT_IMAGE ?= ghcr.io/doitintl/kube-no-trouble:latest -KUBENT_DOCKER ?= $(DOCKER_CMD) $(DOCKER_ARGS) $(root_volume) --entrypoint=/app/kubent $(KUBENT_IMAGE) - -instance ?= defaults -test_instances = tests/defaults.yml tests/exoscale.yml tests/cloudscale.yml tests/openshift.yml tests/vshn.yml tests/apiserver.yml tests/controllers.yml tests/minio.yml +ANTORA_PREVIEW_CMD ?= $(DOCKER_CMD) run --rm --publish 35729:35729 --publish 2020:2020 $(antora_git_volume) --volume "${PWD}/docs":/preview/antora/docs ghcr.io/vshn/antora-preview:3.1.2.3 --style=syn --antora=docs diff --git a/.cruft.json b/component/.cruft.json similarity index 100% rename from .cruft.json rename to component/.cruft.json diff --git a/component/.github/workflows/test.yaml b/component/.github/workflows/test.yaml new file mode 100644 index 000000000..a1bb35cc3 --- /dev/null +++ b/component/.github/workflows/test.yaml @@ -0,0 +1,73 @@ +name: Pull Request +on: + pull_request: + branches: + - master + +env: + COMPONENT_NAME: appcat + +jobs: + linting: + runs-on: ubuntu-latest + strategy: + matrix: + command: + - lint_jsonnet + - lint_yaml + - lint_adoc + steps: + - uses: actions/checkout@v4 + - name: Run ${{ matrix.command }} + run: make ${{ matrix.command }} + editorconfig: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: snow-actions/eclint@v1.0.1 + with: + args: 'check' + test: + runs-on: ubuntu-latest + strategy: + matrix: + instance: + - defaults + - exoscale + - cloudscale + - openshift + - vshn + - apiserver + - controllers + - minio + defaults: + run: + working-directory: ${{ env.COMPONENT_NAME }} + steps: + - uses: actions/checkout@v4 + with: + path: ${{ env.COMPONENT_NAME }} + - name: Compile component + run: make test -e instance=${{ matrix.instance }} + golden: + runs-on: ubuntu-latest + strategy: + matrix: + instance: + - defaults + - exoscale + - cloudscale + - openshift + - vshn + - apiserver + - controllers + - minio + defaults: + run: + working-directory: ${{ env.COMPONENT_NAME }} + steps: + - uses: actions/checkout@v4 + with: + path: ${{ env.COMPONENT_NAME }} + - name: Golden diff + run: make golden-diff -e instance=${{ matrix.instance }} diff --git a/.yamllint.yml b/component/.yamllint.yml similarity index 100% rename from .yamllint.yml rename to component/.yamllint.yml diff --git a/component/Makefile b/component/Makefile new file mode 100644 index 000000000..23c14c4a6 --- /dev/null +++ b/component/Makefile @@ -0,0 +1,86 @@ +MAKEFLAGS += --warn-undefined-variables +SHELL := bash +.SHELLFLAGS := -eu -o pipefail -c +.DEFAULT_GOAL := all +.DELETE_ON_ERROR: +.SUFFIXES: + +include Makefile.vars.mk + +.PHONY: help +help: ## Show this help + @grep -E -h '\s##\s' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = "(: ).*?## "}; {gsub(/\\:/,":", $$1)}; {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}' + +.PHONY: all +all: lint + +.PHONY: lint +lint: lint_jsonnet lint_yaml lint_adoc lint_kubent ## All-in-one linting + +.PHONY: lint_jsonnet +lint_jsonnet: $(JSONNET_FILES) ## Lint jsonnet files + $(JSONNET_DOCKER) $(JSONNETFMT_ARGS) --test -- $? + +.PHONY: lint_yaml +lint_yaml: ## Lint yaml files + $(YAMLLINT_DOCKER) -f parsable -c $(YAMLLINT_CONFIG) $(YAMLLINT_ARGS) -- . + +.PHONY: lint_adoc +lint_adoc: ## Lint documentation + $(VALE_CMD) $(VALE_ARGS) + +.PHONY: lint_kubent +lint_kubent: ## Lint deprecated Kubernetes API versions + $(KUBENT_DOCKER) $(KUBENT_ARGS) -f $(KUBENT_FILES) + +.PHONY: format +format: format_jsonnet ## All-in-one formatting + +.PHONY: format_jsonnet +format_jsonnet: $(JSONNET_FILES) ## Format jsonnet files + $(JSONNET_DOCKER) $(JSONNETFMT_ARGS) -- $? + +.PHONY: docs-serve +docs-serve: ## Preview the documentation + $(ANTORA_PREVIEW_CMD) + +.PHONY: compile +.compile: + mkdir -p dependencies + $(COMPILE_CMD) + +.PHONY: test +test: commodore_args += -f tests/$(instance).yml +test: .compile ## Compile the component +.PHONY: gen-golden +gen-golden: commodore_args += -f tests/$(instance).yml +gen-golden: clean .compile ## Update the reference version for target `golden-diff`. + @rm -rf tests/golden/$(instance) + @mkdir -p tests/golden/$(instance) + @cp -R compiled/. tests/golden/$(instance)/. + +.PHONY: golden-diff +golden-diff: commodore_args += -f tests/$(instance).yml +golden-diff: clean .compile ## Diff compile output against the reference version. Review output and run `make gen-golden golden-diff` if this target fails. + @git diff --exit-code --minimal --no-index -- tests/golden/$(instance) compiled/ + +.PHONY: golden-diff-all +golden-diff-all: recursive_target=golden-diff +golden-diff-all: $(test_instances) ## Run golden-diff for all instances. Note: this doesn't work when running make with multiple parallel jobs (-j != 1). + +.PHONY: gen-golden-all +gen-golden-all: recursive_target=gen-golden +gen-golden-all: $(test_instances) ## Run gen-golden for all instances. Note: this doesn't work when running make with multiple parallel jobs (-j != 1). + +.PHONY: lint_kubent_all +lint_kubent_all: recursive_target=lint_kubent +lint_kubent_all: $(test_instances) ## Lint deprecated Kubernetes API versions for all golden test instances. Will exit on first error. Note: this doesn't work when running make with multiple parallel jobs (-j != 1). + +.PHONY: $(test_instances) +$(test_instances): + $(MAKE) $(recursive_target) -e instance=$(basename $(@F)) + + +.PHONY: clean +clean: ## Clean the project + rm -rf .cache compiled dependencies vendor helmcharts jsonnetfile*.json || true diff --git a/component/Makefile.vars.mk b/component/Makefile.vars.mk new file mode 100644 index 000000000..1cea253c1 --- /dev/null +++ b/component/Makefile.vars.mk @@ -0,0 +1,49 @@ +# Commodore takes the root dir name as the component name +COMPONENT_NAME ?= appcat + +git_dir ?= $(shell git rev-parse --git-common-dir) +compiled_path ?= compiled/$(COMPONENT_NAME)/$(COMPONENT_NAME) +root_volume ?= -v "$${PWD}/:/$(COMPONENT_NAME)" +compiled_volume ?= -v "$${PWD}/$(compiled_path):/$(COMPONENT_NAME)" +commodore_args ?= --search-paths ./dependencies --search-paths . -n $(COMPONENT_NAME) + +ifneq "$(git_dir)" ".git" + git_volume ?= -v "$(git_dir):$(git_dir):ro" + antora_git_volume ?= -v "$(git_dir):/preview/antora/.git:ro" +else + git_volume ?= + antora_git_volume ?= -v "${PWD}/.git:/preview/antora/.git:ro" +endif + +ifneq "$(shell which docker 2>/dev/null)" "" + DOCKER_CMD ?= $(shell which docker) + DOCKER_USERNS ?= "" +else + DOCKER_CMD ?= podman + DOCKER_USERNS ?= keep-id +endif +DOCKER_ARGS ?= run --rm -u "$$(id -u):$$(id -g)" --userns=$(DOCKER_USERNS) -w /$(COMPONENT_NAME) -e HOME="/$(COMPONENT_NAME)" + +JSONNET_FILES ?= $(shell find . -type f -not -path './vendor/*' \( -name '*.*jsonnet' -or -name '*.libsonnet' \)) +JSONNETFMT_ARGS ?= --in-place --pad-arrays +JSONNET_IMAGE ?= docker.io/bitnami/jsonnet:latest +JSONNET_DOCKER ?= $(DOCKER_CMD) $(DOCKER_ARGS) $(root_volume) --entrypoint=jsonnetfmt $(JSONNET_IMAGE) + +VALE_CMD ?= $(DOCKER_CMD) $(DOCKER_ARGS) $(root_volume) --volume "$${PWD}"/docs/modules:/pages ghcr.io/vshn/vale:2.15.5 +VALE_ARGS ?= --minAlertLevel=error --config=/pages/ROOT/pages/.vale.ini /pages + +ANTORA_PREVIEW_CMD ?= $(DOCKER_CMD) run --rm --publish 35729:35729 --publish 2020:2020 $(antora_git_volume) --volume "${PWD}/docs":/preview/antora/docs ghcr.io/vshn/antora-preview:3.1.4 --style=syn --antora=docs + +COMMODORE_CMD ?= $(DOCKER_CMD) $(DOCKER_ARGS) $(root_volume) docker.io/projectsyn/commodore:latest +COMPILE_CMD ?= $(COMMODORE_CMD) component compile . $(commodore_args) +JB_CMD ?= $(DOCKER_CMD) $(DOCKER_ARGS) --entrypoint /usr/local/bin/jb docker.io/projectsyn/commodore:latest install + +GOLDEN_FILES ?= $(shell find tests/golden/$(instance) -type f) + +KUBENT_FILES ?= $(shell echo "$(GOLDEN_FILES)" | sed 's/ /,/g') +KUBENT_ARGS ?= -c=false --helm3=false -e +KUBENT_IMAGE ?= ghcr.io/doitintl/kube-no-trouble:latest +KUBENT_DOCKER ?= $(DOCKER_CMD) $(DOCKER_ARGS) $(root_volume) --entrypoint=/app/kubent $(KUBENT_IMAGE) + +instance ?= defaults +test_instances = tests/defaults.yml tests/exoscale.yml tests/cloudscale.yml tests/openshift.yml tests/vshn.yml tests/apiserver.yml tests/controllers.yml tests/minio.yml diff --git a/class/appcat.yml b/component/class/appcat.yml similarity index 98% rename from class/appcat.yml rename to component/class/appcat.yml index 73389b4d9..6ba8903af 100644 --- a/class/appcat.yml +++ b/component/class/appcat.yml @@ -33,7 +33,7 @@ parameters: output_path: . - input_type: external input_paths: - - appcat/run-sloth + - ${_base_directory}/run-sloth output_path: . env_vars: SLOTH_VERSION: ${appcat:images:sloth:tag} @@ -44,7 +44,6 @@ parameters: - -o - ${_base_directory}/sloth-output - - input_paths: - ${_base_directory}/component/main.jsonnet input_type: jsonnet @@ -86,7 +85,6 @@ parameters: input_type: jsonnet output_path: appcat/sla_reporter - - input_paths: - ${_base_directory}/sloth-input - ${_base_directory}/sloth-output diff --git a/class/defaults.yml b/component/class/defaults.yml similarity index 100% rename from class/defaults.yml rename to component/class/defaults.yml diff --git a/component/app.jsonnet b/component/component/app.jsonnet similarity index 100% rename from component/app.jsonnet rename to component/component/app.jsonnet diff --git a/component/appcat_apiserver.jsonnet b/component/component/appcat_apiserver.jsonnet similarity index 100% rename from component/appcat_apiserver.jsonnet rename to component/component/appcat_apiserver.jsonnet diff --git a/component/appcat_controller.jsonnet b/component/component/appcat_controller.jsonnet similarity index 100% rename from component/appcat_controller.jsonnet rename to component/component/appcat_controller.jsonnet diff --git a/component/appcat_sla_reporter.jsonnet b/component/component/appcat_sla_reporter.jsonnet similarity index 100% rename from component/appcat_sla_reporter.jsonnet rename to component/component/appcat_sla_reporter.jsonnet diff --git a/component/appcat_sli_exporter.jsonnet b/component/component/appcat_sli_exporter.jsonnet similarity index 100% rename from component/appcat_sli_exporter.jsonnet rename to component/component/appcat_sli_exporter.jsonnet diff --git a/component/common.libsonnet b/component/component/common.libsonnet similarity index 100% rename from component/common.libsonnet rename to component/component/common.libsonnet diff --git a/component/exoscale-plans/grafana.json b/component/component/exoscale-plans/grafana.json similarity index 100% rename from component/exoscale-plans/grafana.json rename to component/component/exoscale-plans/grafana.json diff --git a/component/exoscale-plans/kafka.json b/component/component/exoscale-plans/kafka.json similarity index 100% rename from component/exoscale-plans/kafka.json rename to component/component/exoscale-plans/kafka.json diff --git a/component/exoscale-plans/mysql.json b/component/component/exoscale-plans/mysql.json similarity index 100% rename from component/exoscale-plans/mysql.json rename to component/component/exoscale-plans/mysql.json diff --git a/component/exoscale-plans/opensearch.json b/component/component/exoscale-plans/opensearch.json similarity index 100% rename from component/exoscale-plans/opensearch.json rename to component/component/exoscale-plans/opensearch.json diff --git a/component/exoscale-plans/pg.json b/component/component/exoscale-plans/pg.json similarity index 100% rename from component/exoscale-plans/pg.json rename to component/component/exoscale-plans/pg.json diff --git a/component/exoscale-plans/redis.json b/component/component/exoscale-plans/redis.json similarity index 100% rename from component/exoscale-plans/redis.json rename to component/component/exoscale-plans/redis.json diff --git a/component/exoscale_kafka.jsonnet b/component/component/exoscale_kafka.jsonnet similarity index 100% rename from component/exoscale_kafka.jsonnet rename to component/component/exoscale_kafka.jsonnet diff --git a/component/exoscale_mysql.jsonnet b/component/component/exoscale_mysql.jsonnet similarity index 100% rename from component/exoscale_mysql.jsonnet rename to component/component/exoscale_mysql.jsonnet diff --git a/component/exoscale_opensearch.jsonnet b/component/component/exoscale_opensearch.jsonnet similarity index 100% rename from component/exoscale_opensearch.jsonnet rename to component/component/exoscale_opensearch.jsonnet diff --git a/component/exoscale_postgres.jsonnet b/component/component/exoscale_postgres.jsonnet similarity index 100% rename from component/exoscale_postgres.jsonnet rename to component/component/exoscale_postgres.jsonnet diff --git a/component/exoscale_redis.jsonnet b/component/component/exoscale_redis.jsonnet similarity index 100% rename from component/exoscale_redis.jsonnet rename to component/component/exoscale_redis.jsonnet diff --git a/component/main.jsonnet b/component/component/main.jsonnet similarity index 100% rename from component/main.jsonnet rename to component/component/main.jsonnet diff --git a/component/objectstorage.jsonnet b/component/component/objectstorage.jsonnet similarity index 100% rename from component/objectstorage.jsonnet rename to component/component/objectstorage.jsonnet diff --git a/component/promql/appcat.promql b/component/component/promql/appcat.promql similarity index 100% rename from component/promql/appcat.promql rename to component/component/promql/appcat.promql diff --git a/component/provider.jsonnet b/component/component/provider.jsonnet similarity index 100% rename from component/provider.jsonnet rename to component/component/provider.jsonnet diff --git a/component/scripts/copy-pg-backup.sh b/component/component/scripts/copy-pg-backup.sh similarity index 100% rename from component/scripts/copy-pg-backup.sh rename to component/component/scripts/copy-pg-backup.sh diff --git a/component/scripts/pg-maintenance.sh b/component/component/scripts/pg-maintenance.sh similarity index 100% rename from component/scripts/pg-maintenance.sh rename to component/component/scripts/pg-maintenance.sh diff --git a/component/slos.libsonnet b/component/component/slos.libsonnet similarity index 100% rename from component/slos.libsonnet rename to component/component/slos.libsonnet diff --git a/component/sloth-input.jsonnet b/component/component/sloth-input.jsonnet similarity index 100% rename from component/sloth-input.jsonnet rename to component/component/sloth-input.jsonnet diff --git a/component/statefuleset-resize-controller.jsonnet b/component/component/statefuleset-resize-controller.jsonnet similarity index 100% rename from component/statefuleset-resize-controller.jsonnet rename to component/component/statefuleset-resize-controller.jsonnet diff --git a/component/vshn_minio.jsonnet b/component/component/vshn_minio.jsonnet similarity index 100% rename from component/vshn_minio.jsonnet rename to component/component/vshn_minio.jsonnet diff --git a/component/vshn_postgres.jsonnet b/component/component/vshn_postgres.jsonnet similarity index 100% rename from component/vshn_postgres.jsonnet rename to component/component/vshn_postgres.jsonnet diff --git a/component/vshn_redis.jsonnet b/component/component/vshn_redis.jsonnet similarity index 100% rename from component/vshn_redis.jsonnet rename to component/component/vshn_redis.jsonnet diff --git a/component/vshn_services.jsonnet b/component/component/vshn_services.jsonnet similarity index 100% rename from component/vshn_services.jsonnet rename to component/component/vshn_services.jsonnet diff --git a/component/xrds.libsonnet b/component/component/xrds.libsonnet similarity index 100% rename from component/xrds.libsonnet rename to component/component/xrds.libsonnet diff --git a/lib/appcat-compositions.libsonnet b/component/lib/appcat-compositions.libsonnet similarity index 100% rename from lib/appcat-compositions.libsonnet rename to component/lib/appcat-compositions.libsonnet diff --git a/run-sloth b/component/run-sloth similarity index 100% rename from run-sloth rename to component/run-sloth diff --git a/tests/apiserver.yml b/component/tests/apiserver.yml similarity index 100% rename from tests/apiserver.yml rename to component/tests/apiserver.yml diff --git a/tests/cloudscale.yml b/component/tests/cloudscale.yml similarity index 100% rename from tests/cloudscale.yml rename to component/tests/cloudscale.yml diff --git a/tests/controllers.yml b/component/tests/controllers.yml similarity index 100% rename from tests/controllers.yml rename to component/tests/controllers.yml diff --git a/tests/defaults.yml b/component/tests/defaults.yml similarity index 100% rename from tests/defaults.yml rename to component/tests/defaults.yml diff --git a/tests/exoscale.yml b/component/tests/exoscale.yml similarity index 100% rename from tests/exoscale.yml rename to component/tests/exoscale.yml diff --git a/tests/golden/apiserver/appcat/appcat/10_appcat_billing_recording_rule.yaml b/component/tests/golden/apiserver/appcat/appcat/10_appcat_billing_recording_rule.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/10_appcat_billing_recording_rule.yaml rename to component/tests/golden/apiserver/appcat/appcat/10_appcat_billing_recording_rule.yaml diff --git a/tests/golden/apiserver/appcat/appcat/10_appcat_maintenance_recording_rule.yaml b/component/tests/golden/apiserver/appcat/appcat/10_appcat_maintenance_recording_rule.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/10_appcat_maintenance_recording_rule.yaml rename to component/tests/golden/apiserver/appcat/appcat/10_appcat_maintenance_recording_rule.yaml diff --git a/tests/golden/apiserver/appcat/appcat/10_appcat_namespace.yaml b/component/tests/golden/apiserver/appcat/appcat/10_appcat_namespace.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/10_appcat_namespace.yaml rename to component/tests/golden/apiserver/appcat/appcat/10_appcat_namespace.yaml diff --git a/tests/golden/apiserver/appcat/appcat/10_clusterrole_finalizer.yaml b/component/tests/golden/apiserver/appcat/appcat/10_clusterrole_finalizer.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/10_clusterrole_finalizer.yaml rename to component/tests/golden/apiserver/appcat/appcat/10_clusterrole_finalizer.yaml diff --git a/tests/golden/apiserver/appcat/appcat/10_clusterrole_services_read.yaml b/component/tests/golden/apiserver/appcat/appcat/10_clusterrole_services_read.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/10_clusterrole_services_read.yaml rename to component/tests/golden/apiserver/appcat/appcat/10_clusterrole_services_read.yaml diff --git a/tests/golden/apiserver/appcat/appcat/10_clusterrole_view.yaml b/component/tests/golden/apiserver/appcat/appcat/10_clusterrole_view.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/10_clusterrole_view.yaml rename to component/tests/golden/apiserver/appcat/appcat/10_clusterrole_view.yaml diff --git a/tests/golden/apiserver/appcat/appcat/apiserver/10_apiserver_envs.yaml b/component/tests/golden/apiserver/appcat/appcat/apiserver/10_apiserver_envs.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/apiserver/10_apiserver_envs.yaml rename to component/tests/golden/apiserver/appcat/appcat/apiserver/10_apiserver_envs.yaml diff --git a/tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_api_server.yaml b/component/tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_api_server.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_api_server.yaml rename to component/tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_api_server.yaml diff --git a/tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_basic_users.yaml b/component/tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_basic_users.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_basic_users.yaml rename to component/tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_basic_users.yaml diff --git a/tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_binding.yaml b/component/tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_binding.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_binding.yaml rename to component/tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_binding.yaml diff --git a/tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_view.yaml b/component/tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_view.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_view.yaml rename to component/tests/golden/apiserver/appcat/appcat/apiserver/10_cluster_role_view.yaml diff --git a/tests/golden/apiserver/appcat/appcat/apiserver/20_service_account.yaml b/component/tests/golden/apiserver/appcat/appcat/apiserver/20_service_account.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/apiserver/20_service_account.yaml rename to component/tests/golden/apiserver/appcat/appcat/apiserver/20_service_account.yaml diff --git a/tests/golden/apiserver/appcat/appcat/apiserver/30_api_service.yaml b/component/tests/golden/apiserver/appcat/appcat/apiserver/30_api_service.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/apiserver/30_api_service.yaml rename to component/tests/golden/apiserver/appcat/appcat/apiserver/30_api_service.yaml diff --git a/tests/golden/apiserver/appcat/appcat/apiserver/30_deployment.yaml b/component/tests/golden/apiserver/appcat/appcat/apiserver/30_deployment.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/apiserver/30_deployment.yaml rename to component/tests/golden/apiserver/appcat/appcat/apiserver/30_deployment.yaml diff --git a/tests/golden/apiserver/appcat/appcat/apiserver/30_service.yaml b/component/tests/golden/apiserver/appcat/appcat/apiserver/30_service.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/apiserver/30_service.yaml rename to component/tests/golden/apiserver/appcat/appcat/apiserver/30_service.yaml diff --git a/tests/golden/apiserver/appcat/appcat/apiserver/31_api_certificate.yaml b/component/tests/golden/apiserver/appcat/appcat/apiserver/31_api_certificate.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/apiserver/31_api_certificate.yaml rename to component/tests/golden/apiserver/appcat/appcat/apiserver/31_api_certificate.yaml diff --git a/tests/golden/apiserver/appcat/appcat/apiserver/31_api_issuer.yaml b/component/tests/golden/apiserver/appcat/appcat/apiserver/31_api_issuer.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/apiserver/31_api_issuer.yaml rename to component/tests/golden/apiserver/appcat/appcat/apiserver/31_api_issuer.yaml diff --git a/tests/golden/apiserver/appcat/appcat/statefuleset-resize-controller.yaml b/component/tests/golden/apiserver/appcat/appcat/statefuleset-resize-controller.yaml similarity index 100% rename from tests/golden/apiserver/appcat/appcat/statefuleset-resize-controller.yaml rename to component/tests/golden/apiserver/appcat/appcat/statefuleset-resize-controller.yaml diff --git a/tests/golden/apiserver/appcat/apps/appcat.yaml b/component/tests/golden/apiserver/appcat/apps/appcat.yaml similarity index 100% rename from tests/golden/apiserver/appcat/apps/appcat.yaml rename to component/tests/golden/apiserver/appcat/apps/appcat.yaml diff --git a/tests/golden/cloudscale/appcat/appcat/10_appcat_billing_recording_rule.yaml b/component/tests/golden/cloudscale/appcat/appcat/10_appcat_billing_recording_rule.yaml similarity index 100% rename from tests/golden/cloudscale/appcat/appcat/10_appcat_billing_recording_rule.yaml rename to component/tests/golden/cloudscale/appcat/appcat/10_appcat_billing_recording_rule.yaml diff --git a/tests/golden/cloudscale/appcat/appcat/10_appcat_maintenance_recording_rule.yaml b/component/tests/golden/cloudscale/appcat/appcat/10_appcat_maintenance_recording_rule.yaml similarity index 100% rename from tests/golden/cloudscale/appcat/appcat/10_appcat_maintenance_recording_rule.yaml rename to component/tests/golden/cloudscale/appcat/appcat/10_appcat_maintenance_recording_rule.yaml diff --git a/tests/golden/cloudscale/appcat/appcat/10_appcat_namespace.yaml b/component/tests/golden/cloudscale/appcat/appcat/10_appcat_namespace.yaml similarity index 100% rename from tests/golden/cloudscale/appcat/appcat/10_appcat_namespace.yaml rename to component/tests/golden/cloudscale/appcat/appcat/10_appcat_namespace.yaml diff --git a/tests/golden/cloudscale/appcat/appcat/10_clusterrole_services_read.yaml b/component/tests/golden/cloudscale/appcat/appcat/10_clusterrole_services_read.yaml similarity index 100% rename from tests/golden/cloudscale/appcat/appcat/10_clusterrole_services_read.yaml rename to component/tests/golden/cloudscale/appcat/appcat/10_clusterrole_services_read.yaml diff --git a/tests/golden/cloudscale/appcat/appcat/10_clusterrole_view.yaml b/component/tests/golden/cloudscale/appcat/appcat/10_clusterrole_view.yaml similarity index 100% rename from tests/golden/cloudscale/appcat/appcat/10_clusterrole_view.yaml rename to component/tests/golden/cloudscale/appcat/appcat/10_clusterrole_view.yaml diff --git a/tests/golden/cloudscale/appcat/appcat/10_provider_cloudscale.yaml b/component/tests/golden/cloudscale/appcat/appcat/10_provider_cloudscale.yaml similarity index 100% rename from tests/golden/cloudscale/appcat/appcat/10_provider_cloudscale.yaml rename to component/tests/golden/cloudscale/appcat/appcat/10_provider_cloudscale.yaml diff --git a/tests/golden/cloudscale/appcat/appcat/10_provider_kubernetes.yaml b/component/tests/golden/cloudscale/appcat/appcat/10_provider_kubernetes.yaml similarity index 100% rename from tests/golden/cloudscale/appcat/appcat/10_provider_kubernetes.yaml rename to component/tests/golden/cloudscale/appcat/appcat/10_provider_kubernetes.yaml diff --git a/tests/golden/cloudscale/appcat/appcat/20_rbac_objectstorage.yaml b/component/tests/golden/cloudscale/appcat/appcat/20_rbac_objectstorage.yaml similarity index 100% rename from tests/golden/cloudscale/appcat/appcat/20_rbac_objectstorage.yaml rename to component/tests/golden/cloudscale/appcat/appcat/20_rbac_objectstorage.yaml diff --git a/tests/golden/cloudscale/appcat/appcat/20_xrd_objectstorage.yaml b/component/tests/golden/cloudscale/appcat/appcat/20_xrd_objectstorage.yaml similarity index 100% rename from tests/golden/cloudscale/appcat/appcat/20_xrd_objectstorage.yaml rename to component/tests/golden/cloudscale/appcat/appcat/20_xrd_objectstorage.yaml diff --git a/tests/golden/cloudscale/appcat/appcat/21_composition_objectstorage_cloudscale.yaml b/component/tests/golden/cloudscale/appcat/appcat/21_composition_objectstorage_cloudscale.yaml similarity index 100% rename from tests/golden/cloudscale/appcat/appcat/21_composition_objectstorage_cloudscale.yaml rename to component/tests/golden/cloudscale/appcat/appcat/21_composition_objectstorage_cloudscale.yaml diff --git a/tests/golden/cloudscale/appcat/appcat/statefuleset-resize-controller.yaml b/component/tests/golden/cloudscale/appcat/appcat/statefuleset-resize-controller.yaml similarity index 100% rename from tests/golden/cloudscale/appcat/appcat/statefuleset-resize-controller.yaml rename to component/tests/golden/cloudscale/appcat/appcat/statefuleset-resize-controller.yaml diff --git a/tests/golden/cloudscale/appcat/apps/appcat.yaml b/component/tests/golden/cloudscale/appcat/apps/appcat.yaml similarity index 100% rename from tests/golden/cloudscale/appcat/apps/appcat.yaml rename to component/tests/golden/cloudscale/appcat/apps/appcat.yaml diff --git a/tests/golden/controllers/appcat/appcat/10_appcat_billing_recording_rule.yaml b/component/tests/golden/controllers/appcat/appcat/10_appcat_billing_recording_rule.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/10_appcat_billing_recording_rule.yaml rename to component/tests/golden/controllers/appcat/appcat/10_appcat_billing_recording_rule.yaml diff --git a/tests/golden/controllers/appcat/appcat/10_appcat_maintenance_recording_rule.yaml b/component/tests/golden/controllers/appcat/appcat/10_appcat_maintenance_recording_rule.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/10_appcat_maintenance_recording_rule.yaml rename to component/tests/golden/controllers/appcat/appcat/10_appcat_maintenance_recording_rule.yaml diff --git a/tests/golden/controllers/appcat/appcat/10_appcat_namespace.yaml b/component/tests/golden/controllers/appcat/appcat/10_appcat_namespace.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/10_appcat_namespace.yaml rename to component/tests/golden/controllers/appcat/appcat/10_appcat_namespace.yaml diff --git a/tests/golden/controllers/appcat/appcat/10_clusterrole_finalizer.yaml b/component/tests/golden/controllers/appcat/appcat/10_clusterrole_finalizer.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/10_clusterrole_finalizer.yaml rename to component/tests/golden/controllers/appcat/appcat/10_clusterrole_finalizer.yaml diff --git a/tests/golden/controllers/appcat/appcat/10_clusterrole_services_read.yaml b/component/tests/golden/controllers/appcat/appcat/10_clusterrole_services_read.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/10_clusterrole_services_read.yaml rename to component/tests/golden/controllers/appcat/appcat/10_clusterrole_services_read.yaml diff --git a/tests/golden/controllers/appcat/appcat/10_clusterrole_view.yaml b/component/tests/golden/controllers/appcat/appcat/10_clusterrole_view.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/10_clusterrole_view.yaml rename to component/tests/golden/controllers/appcat/appcat/10_clusterrole_view.yaml diff --git a/tests/golden/controllers/appcat/appcat/controllers/appcat/10_cluster_role.yaml b/component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_cluster_role.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/controllers/appcat/10_cluster_role.yaml rename to component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_cluster_role.yaml diff --git a/tests/golden/controllers/appcat/appcat/controllers/appcat/10_cluster_role_binding.yaml b/component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_cluster_role_binding.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/controllers/appcat/10_cluster_role_binding.yaml rename to component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_cluster_role_binding.yaml diff --git a/tests/golden/controllers/appcat/appcat/controllers/appcat/10_pg_webhooks.yaml b/component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_pg_webhooks.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/controllers/appcat/10_pg_webhooks.yaml rename to component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_pg_webhooks.yaml diff --git a/tests/golden/controllers/appcat/appcat/controllers/appcat/10_redis_webhooks.yaml b/component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_redis_webhooks.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/controllers/appcat/10_redis_webhooks.yaml rename to component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_redis_webhooks.yaml diff --git a/tests/golden/controllers/appcat/appcat/controllers/appcat/10_role_binding_leader_election.yaml b/component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_role_binding_leader_election.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/controllers/appcat/10_role_binding_leader_election.yaml rename to component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_role_binding_leader_election.yaml diff --git a/tests/golden/controllers/appcat/appcat/controllers/appcat/10_role_leader_election.yaml b/component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_role_leader_election.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/controllers/appcat/10_role_leader_election.yaml rename to component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_role_leader_election.yaml diff --git a/tests/golden/controllers/appcat/appcat/controllers/appcat/10_webhook_certificate.yaml b/component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_webhook_certificate.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/controllers/appcat/10_webhook_certificate.yaml rename to component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_webhook_certificate.yaml diff --git a/tests/golden/controllers/appcat/appcat/controllers/appcat/10_webhook_issuer.yaml b/component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_webhook_issuer.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/controllers/appcat/10_webhook_issuer.yaml rename to component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_webhook_issuer.yaml diff --git a/tests/golden/controllers/appcat/appcat/controllers/appcat/10_webhook_service.yaml b/component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_webhook_service.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/controllers/appcat/10_webhook_service.yaml rename to component/tests/golden/controllers/appcat/appcat/controllers/appcat/10_webhook_service.yaml diff --git a/tests/golden/controllers/appcat/appcat/controllers/appcat/20_service_account.yaml b/component/tests/golden/controllers/appcat/appcat/controllers/appcat/20_service_account.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/controllers/appcat/20_service_account.yaml rename to component/tests/golden/controllers/appcat/appcat/controllers/appcat/20_service_account.yaml diff --git a/tests/golden/controllers/appcat/appcat/controllers/appcat/30_deployment.yaml b/component/tests/golden/controllers/appcat/appcat/controllers/appcat/30_deployment.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/controllers/appcat/30_deployment.yaml rename to component/tests/golden/controllers/appcat/appcat/controllers/appcat/30_deployment.yaml diff --git a/tests/golden/controllers/appcat/appcat/statefuleset-resize-controller.yaml b/component/tests/golden/controllers/appcat/appcat/statefuleset-resize-controller.yaml similarity index 100% rename from tests/golden/controllers/appcat/appcat/statefuleset-resize-controller.yaml rename to component/tests/golden/controllers/appcat/appcat/statefuleset-resize-controller.yaml diff --git a/tests/golden/controllers/appcat/apps/appcat.yaml b/component/tests/golden/controllers/appcat/apps/appcat.yaml similarity index 100% rename from tests/golden/controllers/appcat/apps/appcat.yaml rename to component/tests/golden/controllers/appcat/apps/appcat.yaml diff --git a/tests/golden/defaults/appcat/appcat/10_appcat_billing_recording_rule.yaml b/component/tests/golden/defaults/appcat/appcat/10_appcat_billing_recording_rule.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/10_appcat_billing_recording_rule.yaml rename to component/tests/golden/defaults/appcat/appcat/10_appcat_billing_recording_rule.yaml diff --git a/tests/golden/defaults/appcat/appcat/10_appcat_maintenance_recording_rule.yaml b/component/tests/golden/defaults/appcat/appcat/10_appcat_maintenance_recording_rule.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/10_appcat_maintenance_recording_rule.yaml rename to component/tests/golden/defaults/appcat/appcat/10_appcat_maintenance_recording_rule.yaml diff --git a/tests/golden/defaults/appcat/appcat/10_appcat_namespace.yaml b/component/tests/golden/defaults/appcat/appcat/10_appcat_namespace.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/10_appcat_namespace.yaml rename to component/tests/golden/defaults/appcat/appcat/10_appcat_namespace.yaml diff --git a/tests/golden/defaults/appcat/appcat/10_clusterrole_services_read.yaml b/component/tests/golden/defaults/appcat/appcat/10_clusterrole_services_read.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/10_clusterrole_services_read.yaml rename to component/tests/golden/defaults/appcat/appcat/10_clusterrole_services_read.yaml diff --git a/tests/golden/defaults/appcat/appcat/10_clusterrole_view.yaml b/component/tests/golden/defaults/appcat/appcat/10_clusterrole_view.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/10_clusterrole_view.yaml rename to component/tests/golden/defaults/appcat/appcat/10_clusterrole_view.yaml diff --git a/tests/golden/defaults/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml b/component/tests/golden/defaults/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml rename to component/tests/golden/defaults/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml diff --git a/tests/golden/defaults/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml b/component/tests/golden/defaults/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml rename to component/tests/golden/defaults/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml diff --git a/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml b/component/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml rename to component/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml diff --git a/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml b/component/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml rename to component/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml diff --git a/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml b/component/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml rename to component/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml diff --git a/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml b/component/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml rename to component/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml diff --git a/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml b/component/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml rename to component/tests/golden/defaults/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml diff --git a/tests/golden/defaults/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml b/component/tests/golden/defaults/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml rename to component/tests/golden/defaults/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml diff --git a/tests/golden/defaults/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml b/component/tests/golden/defaults/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml rename to component/tests/golden/defaults/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml diff --git a/tests/golden/defaults/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml b/component/tests/golden/defaults/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml rename to component/tests/golden/defaults/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml diff --git a/tests/golden/defaults/appcat/appcat/statefuleset-resize-controller.yaml b/component/tests/golden/defaults/appcat/appcat/statefuleset-resize-controller.yaml similarity index 100% rename from tests/golden/defaults/appcat/appcat/statefuleset-resize-controller.yaml rename to component/tests/golden/defaults/appcat/appcat/statefuleset-resize-controller.yaml diff --git a/tests/golden/defaults/appcat/apps/appcat.yaml b/component/tests/golden/defaults/appcat/apps/appcat.yaml similarity index 100% rename from tests/golden/defaults/appcat/apps/appcat.yaml rename to component/tests/golden/defaults/appcat/apps/appcat.yaml diff --git a/tests/golden/exoscale/appcat/appcat/10_appcat_billing_recording_rule.yaml b/component/tests/golden/exoscale/appcat/appcat/10_appcat_billing_recording_rule.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/10_appcat_billing_recording_rule.yaml rename to component/tests/golden/exoscale/appcat/appcat/10_appcat_billing_recording_rule.yaml diff --git a/tests/golden/exoscale/appcat/appcat/10_appcat_maintenance_recording_rule.yaml b/component/tests/golden/exoscale/appcat/appcat/10_appcat_maintenance_recording_rule.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/10_appcat_maintenance_recording_rule.yaml rename to component/tests/golden/exoscale/appcat/appcat/10_appcat_maintenance_recording_rule.yaml diff --git a/tests/golden/exoscale/appcat/appcat/10_appcat_namespace.yaml b/component/tests/golden/exoscale/appcat/appcat/10_appcat_namespace.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/10_appcat_namespace.yaml rename to component/tests/golden/exoscale/appcat/appcat/10_appcat_namespace.yaml diff --git a/tests/golden/exoscale/appcat/appcat/10_clusterrole_services_read.yaml b/component/tests/golden/exoscale/appcat/appcat/10_clusterrole_services_read.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/10_clusterrole_services_read.yaml rename to component/tests/golden/exoscale/appcat/appcat/10_clusterrole_services_read.yaml diff --git a/tests/golden/exoscale/appcat/appcat/10_clusterrole_view.yaml b/component/tests/golden/exoscale/appcat/appcat/10_clusterrole_view.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/10_clusterrole_view.yaml rename to component/tests/golden/exoscale/appcat/appcat/10_clusterrole_view.yaml diff --git a/tests/golden/exoscale/appcat/appcat/10_provider_exoscale.yaml b/component/tests/golden/exoscale/appcat/appcat/10_provider_exoscale.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/10_provider_exoscale.yaml rename to component/tests/golden/exoscale/appcat/appcat/10_provider_exoscale.yaml diff --git a/tests/golden/exoscale/appcat/appcat/10_provider_kubernetes.yaml b/component/tests/golden/exoscale/appcat/appcat/10_provider_kubernetes.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/10_provider_kubernetes.yaml rename to component/tests/golden/exoscale/appcat/appcat/10_provider_kubernetes.yaml diff --git a/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_kafka.yaml b/component/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_kafka.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_kafka.yaml rename to component/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_kafka.yaml diff --git a/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_mysql.yaml b/component/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_mysql.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_mysql.yaml rename to component/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_mysql.yaml diff --git a/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_opensearch.yaml b/component/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_opensearch.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_opensearch.yaml rename to component/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_opensearch.yaml diff --git a/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_postgres.yaml b/component/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_postgres.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_postgres.yaml rename to component/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_postgres.yaml diff --git a/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_redis.yaml b/component/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_redis.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_redis.yaml rename to component/tests/golden/exoscale/appcat/appcat/20_rbac_exoscale_redis.yaml diff --git a/tests/golden/exoscale/appcat/appcat/20_rbac_objectstorage.yaml b/component/tests/golden/exoscale/appcat/appcat/20_rbac_objectstorage.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/20_rbac_objectstorage.yaml rename to component/tests/golden/exoscale/appcat/appcat/20_rbac_objectstorage.yaml diff --git a/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_kafka.yaml b/component/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_kafka.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_kafka.yaml rename to component/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_kafka.yaml diff --git a/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_mysql.yaml b/component/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_mysql.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_mysql.yaml rename to component/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_mysql.yaml diff --git a/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_opensearch.yaml b/component/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_opensearch.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_opensearch.yaml rename to component/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_opensearch.yaml diff --git a/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_postgres.yaml b/component/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_postgres.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_postgres.yaml rename to component/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_postgres.yaml diff --git a/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_redis.yaml b/component/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_redis.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_redis.yaml rename to component/tests/golden/exoscale/appcat/appcat/20_xrd_exoscale_redis.yaml diff --git a/tests/golden/exoscale/appcat/appcat/20_xrd_objectstorage.yaml b/component/tests/golden/exoscale/appcat/appcat/20_xrd_objectstorage.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/20_xrd_objectstorage.yaml rename to component/tests/golden/exoscale/appcat/appcat/20_xrd_objectstorage.yaml diff --git a/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_kafka.yaml b/component/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_kafka.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/21_composition_exoscale_kafka.yaml rename to component/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_kafka.yaml diff --git a/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_mysql.yaml b/component/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_mysql.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/21_composition_exoscale_mysql.yaml rename to component/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_mysql.yaml diff --git a/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_opensearch.yaml b/component/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_opensearch.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/21_composition_exoscale_opensearch.yaml rename to component/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_opensearch.yaml diff --git a/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_postgres.yaml b/component/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_postgres.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/21_composition_exoscale_postgres.yaml rename to component/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_postgres.yaml diff --git a/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_redis.yaml b/component/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_redis.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/21_composition_exoscale_redis.yaml rename to component/tests/golden/exoscale/appcat/appcat/21_composition_exoscale_redis.yaml diff --git a/tests/golden/exoscale/appcat/appcat/21_composition_objectstorage_exoscale.yaml b/component/tests/golden/exoscale/appcat/appcat/21_composition_objectstorage_exoscale.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/21_composition_objectstorage_exoscale.yaml rename to component/tests/golden/exoscale/appcat/appcat/21_composition_objectstorage_exoscale.yaml diff --git a/tests/golden/exoscale/appcat/appcat/statefuleset-resize-controller.yaml b/component/tests/golden/exoscale/appcat/appcat/statefuleset-resize-controller.yaml similarity index 100% rename from tests/golden/exoscale/appcat/appcat/statefuleset-resize-controller.yaml rename to component/tests/golden/exoscale/appcat/appcat/statefuleset-resize-controller.yaml diff --git a/tests/golden/exoscale/appcat/apps/appcat.yaml b/component/tests/golden/exoscale/appcat/apps/appcat.yaml similarity index 100% rename from tests/golden/exoscale/appcat/apps/appcat.yaml rename to component/tests/golden/exoscale/appcat/apps/appcat.yaml diff --git a/tests/golden/minio/appcat/appcat/10_appcat_billing_recording_rule.yaml b/component/tests/golden/minio/appcat/appcat/10_appcat_billing_recording_rule.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/10_appcat_billing_recording_rule.yaml rename to component/tests/golden/minio/appcat/appcat/10_appcat_billing_recording_rule.yaml diff --git a/tests/golden/minio/appcat/appcat/10_appcat_maintenance_recording_rule.yaml b/component/tests/golden/minio/appcat/appcat/10_appcat_maintenance_recording_rule.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/10_appcat_maintenance_recording_rule.yaml rename to component/tests/golden/minio/appcat/appcat/10_appcat_maintenance_recording_rule.yaml diff --git a/tests/golden/minio/appcat/appcat/10_appcat_namespace.yaml b/component/tests/golden/minio/appcat/appcat/10_appcat_namespace.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/10_appcat_namespace.yaml rename to component/tests/golden/minio/appcat/appcat/10_appcat_namespace.yaml diff --git a/tests/golden/minio/appcat/appcat/10_clusterrole_services_read.yaml b/component/tests/golden/minio/appcat/appcat/10_clusterrole_services_read.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/10_clusterrole_services_read.yaml rename to component/tests/golden/minio/appcat/appcat/10_clusterrole_services_read.yaml diff --git a/tests/golden/minio/appcat/appcat/10_clusterrole_view.yaml b/component/tests/golden/minio/appcat/appcat/10_clusterrole_view.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/10_clusterrole_view.yaml rename to component/tests/golden/minio/appcat/appcat/10_clusterrole_view.yaml diff --git a/tests/golden/minio/appcat/appcat/10_mailgun_secret.yaml b/component/tests/golden/minio/appcat/appcat/10_mailgun_secret.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/10_mailgun_secret.yaml rename to component/tests/golden/minio/appcat/appcat/10_mailgun_secret.yaml diff --git a/tests/golden/minio/appcat/appcat/10_namespace_vshn_control.yaml b/component/tests/golden/minio/appcat/appcat/10_namespace_vshn_control.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/10_namespace_vshn_control.yaml rename to component/tests/golden/minio/appcat/appcat/10_namespace_vshn_control.yaml diff --git a/tests/golden/minio/appcat/appcat/10_provider_helm.yaml b/component/tests/golden/minio/appcat/appcat/10_provider_helm.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/10_provider_helm.yaml rename to component/tests/golden/minio/appcat/appcat/10_provider_helm.yaml diff --git a/tests/golden/minio/appcat/appcat/10_provider_kubernetes.yaml b/component/tests/golden/minio/appcat/appcat/10_provider_kubernetes.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/10_provider_kubernetes.yaml rename to component/tests/golden/minio/appcat/appcat/10_provider_kubernetes.yaml diff --git a/tests/golden/minio/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role.yaml b/component/tests/golden/minio/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role.yaml rename to component/tests/golden/minio/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role.yaml diff --git a/tests/golden/minio/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role_binding.yaml b/component/tests/golden/minio/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role_binding.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role_binding.yaml rename to component/tests/golden/minio/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role_binding.yaml diff --git a/tests/golden/minio/appcat/appcat/10_rbac_helm_service_maintenance_sa.yaml b/component/tests/golden/minio/appcat/appcat/10_rbac_helm_service_maintenance_sa.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/10_rbac_helm_service_maintenance_sa.yaml rename to component/tests/golden/minio/appcat/appcat/10_rbac_helm_service_maintenance_sa.yaml diff --git a/tests/golden/minio/appcat/appcat/20_rbac_vshn_minio.yaml b/component/tests/golden/minio/appcat/appcat/20_rbac_vshn_minio.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/20_rbac_vshn_minio.yaml rename to component/tests/golden/minio/appcat/appcat/20_rbac_vshn_minio.yaml diff --git a/tests/golden/minio/appcat/appcat/20_xrd_vshn_minio.yaml b/component/tests/golden/minio/appcat/appcat/20_xrd_vshn_minio.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/20_xrd_vshn_minio.yaml rename to component/tests/golden/minio/appcat/appcat/20_xrd_vshn_minio.yaml diff --git a/tests/golden/minio/appcat/appcat/21_composition_vshn_minio.yaml b/component/tests/golden/minio/appcat/appcat/21_composition_vshn_minio.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/21_composition_vshn_minio.yaml rename to component/tests/golden/minio/appcat/appcat/21_composition_vshn_minio.yaml diff --git a/tests/golden/minio/appcat/appcat/apiserver/10_apiserver_envs.yaml b/component/tests/golden/minio/appcat/appcat/apiserver/10_apiserver_envs.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/apiserver/10_apiserver_envs.yaml rename to component/tests/golden/minio/appcat/appcat/apiserver/10_apiserver_envs.yaml diff --git a/tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_api_server.yaml b/component/tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_api_server.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_api_server.yaml rename to component/tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_api_server.yaml diff --git a/tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_basic_users.yaml b/component/tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_basic_users.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_basic_users.yaml rename to component/tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_basic_users.yaml diff --git a/tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_binding.yaml b/component/tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_binding.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_binding.yaml rename to component/tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_binding.yaml diff --git a/tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_view.yaml b/component/tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_view.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_view.yaml rename to component/tests/golden/minio/appcat/appcat/apiserver/10_cluster_role_view.yaml diff --git a/tests/golden/minio/appcat/appcat/apiserver/20_service_account.yaml b/component/tests/golden/minio/appcat/appcat/apiserver/20_service_account.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/apiserver/20_service_account.yaml rename to component/tests/golden/minio/appcat/appcat/apiserver/20_service_account.yaml diff --git a/tests/golden/minio/appcat/appcat/apiserver/30_api_service.yaml b/component/tests/golden/minio/appcat/appcat/apiserver/30_api_service.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/apiserver/30_api_service.yaml rename to component/tests/golden/minio/appcat/appcat/apiserver/30_api_service.yaml diff --git a/tests/golden/minio/appcat/appcat/apiserver/30_deployment.yaml b/component/tests/golden/minio/appcat/appcat/apiserver/30_deployment.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/apiserver/30_deployment.yaml rename to component/tests/golden/minio/appcat/appcat/apiserver/30_deployment.yaml diff --git a/tests/golden/minio/appcat/appcat/apiserver/30_service.yaml b/component/tests/golden/minio/appcat/appcat/apiserver/30_service.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/apiserver/30_service.yaml rename to component/tests/golden/minio/appcat/appcat/apiserver/30_service.yaml diff --git a/tests/golden/minio/appcat/appcat/apiserver/31_api_certificate.yaml b/component/tests/golden/minio/appcat/appcat/apiserver/31_api_certificate.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/apiserver/31_api_certificate.yaml rename to component/tests/golden/minio/appcat/appcat/apiserver/31_api_certificate.yaml diff --git a/tests/golden/minio/appcat/appcat/apiserver/31_api_issuer.yaml b/component/tests/golden/minio/appcat/appcat/apiserver/31_api_issuer.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/apiserver/31_api_issuer.yaml rename to component/tests/golden/minio/appcat/appcat/apiserver/31_api_issuer.yaml diff --git a/tests/golden/minio/appcat/appcat/controllers/appcat/10_cluster_role.yaml b/component/tests/golden/minio/appcat/appcat/controllers/appcat/10_cluster_role.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/controllers/appcat/10_cluster_role.yaml rename to component/tests/golden/minio/appcat/appcat/controllers/appcat/10_cluster_role.yaml diff --git a/tests/golden/minio/appcat/appcat/controllers/appcat/10_cluster_role_binding.yaml b/component/tests/golden/minio/appcat/appcat/controllers/appcat/10_cluster_role_binding.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/controllers/appcat/10_cluster_role_binding.yaml rename to component/tests/golden/minio/appcat/appcat/controllers/appcat/10_cluster_role_binding.yaml diff --git a/tests/golden/minio/appcat/appcat/controllers/appcat/10_pg_webhooks.yaml b/component/tests/golden/minio/appcat/appcat/controllers/appcat/10_pg_webhooks.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/controllers/appcat/10_pg_webhooks.yaml rename to component/tests/golden/minio/appcat/appcat/controllers/appcat/10_pg_webhooks.yaml diff --git a/tests/golden/minio/appcat/appcat/controllers/appcat/10_redis_webhooks.yaml b/component/tests/golden/minio/appcat/appcat/controllers/appcat/10_redis_webhooks.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/controllers/appcat/10_redis_webhooks.yaml rename to component/tests/golden/minio/appcat/appcat/controllers/appcat/10_redis_webhooks.yaml diff --git a/tests/golden/minio/appcat/appcat/controllers/appcat/10_role_binding_leader_election.yaml b/component/tests/golden/minio/appcat/appcat/controllers/appcat/10_role_binding_leader_election.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/controllers/appcat/10_role_binding_leader_election.yaml rename to component/tests/golden/minio/appcat/appcat/controllers/appcat/10_role_binding_leader_election.yaml diff --git a/tests/golden/minio/appcat/appcat/controllers/appcat/10_role_leader_election.yaml b/component/tests/golden/minio/appcat/appcat/controllers/appcat/10_role_leader_election.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/controllers/appcat/10_role_leader_election.yaml rename to component/tests/golden/minio/appcat/appcat/controllers/appcat/10_role_leader_election.yaml diff --git a/tests/golden/minio/appcat/appcat/controllers/appcat/10_webhook_certificate.yaml b/component/tests/golden/minio/appcat/appcat/controllers/appcat/10_webhook_certificate.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/controllers/appcat/10_webhook_certificate.yaml rename to component/tests/golden/minio/appcat/appcat/controllers/appcat/10_webhook_certificate.yaml diff --git a/tests/golden/minio/appcat/appcat/controllers/appcat/10_webhook_issuer.yaml b/component/tests/golden/minio/appcat/appcat/controllers/appcat/10_webhook_issuer.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/controllers/appcat/10_webhook_issuer.yaml rename to component/tests/golden/minio/appcat/appcat/controllers/appcat/10_webhook_issuer.yaml diff --git a/tests/golden/minio/appcat/appcat/controllers/appcat/10_webhook_service.yaml b/component/tests/golden/minio/appcat/appcat/controllers/appcat/10_webhook_service.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/controllers/appcat/10_webhook_service.yaml rename to component/tests/golden/minio/appcat/appcat/controllers/appcat/10_webhook_service.yaml diff --git a/tests/golden/minio/appcat/appcat/controllers/appcat/20_service_account.yaml b/component/tests/golden/minio/appcat/appcat/controllers/appcat/20_service_account.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/controllers/appcat/20_service_account.yaml rename to component/tests/golden/minio/appcat/appcat/controllers/appcat/20_service_account.yaml diff --git a/tests/golden/minio/appcat/appcat/controllers/appcat/30_deployment.yaml b/component/tests/golden/minio/appcat/appcat/controllers/appcat/30_deployment.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/controllers/appcat/30_deployment.yaml rename to component/tests/golden/minio/appcat/appcat/controllers/appcat/30_deployment.yaml diff --git a/tests/golden/minio/appcat/appcat/sla_reporter/01_cronjob.yaml b/component/tests/golden/minio/appcat/appcat/sla_reporter/01_cronjob.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/sla_reporter/01_cronjob.yaml rename to component/tests/golden/minio/appcat/appcat/sla_reporter/01_cronjob.yaml diff --git a/tests/golden/minio/appcat/appcat/sla_reporter/02_object_bucket.yaml b/component/tests/golden/minio/appcat/appcat/sla_reporter/02_object_bucket.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/sla_reporter/02_object_bucket.yaml rename to component/tests/golden/minio/appcat/appcat/sla_reporter/02_object_bucket.yaml diff --git a/tests/golden/minio/appcat/appcat/sla_reporter/03_network_policy.yaml b/component/tests/golden/minio/appcat/appcat/sla_reporter/03_network_policy.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/sla_reporter/03_network_policy.yaml rename to component/tests/golden/minio/appcat/appcat/sla_reporter/03_network_policy.yaml diff --git a/tests/golden/minio/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml b/component/tests/golden/minio/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml rename to component/tests/golden/minio/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml diff --git a/tests/golden/minio/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml b/component/tests/golden/minio/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml rename to component/tests/golden/minio/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml diff --git a/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml b/component/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml rename to component/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml diff --git a/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml b/component/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml rename to component/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml diff --git a/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml b/component/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml rename to component/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml diff --git a/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml b/component/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml rename to component/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml diff --git a/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml b/component/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml rename to component/tests/golden/minio/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml diff --git a/tests/golden/minio/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml b/component/tests/golden/minio/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml rename to component/tests/golden/minio/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml diff --git a/tests/golden/minio/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml b/component/tests/golden/minio/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml rename to component/tests/golden/minio/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml diff --git a/tests/golden/minio/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml b/component/tests/golden/minio/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml rename to component/tests/golden/minio/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml diff --git a/tests/golden/minio/appcat/appcat/statefuleset-resize-controller.yaml b/component/tests/golden/minio/appcat/appcat/statefuleset-resize-controller.yaml similarity index 100% rename from tests/golden/minio/appcat/appcat/statefuleset-resize-controller.yaml rename to component/tests/golden/minio/appcat/appcat/statefuleset-resize-controller.yaml diff --git a/tests/golden/minio/appcat/apps/appcat.yaml b/component/tests/golden/minio/appcat/apps/appcat.yaml similarity index 100% rename from tests/golden/minio/appcat/apps/appcat.yaml rename to component/tests/golden/minio/appcat/apps/appcat.yaml diff --git a/tests/golden/openshift/appcat/appcat/10_appcat_billing_recording_rule.yaml b/component/tests/golden/openshift/appcat/appcat/10_appcat_billing_recording_rule.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/10_appcat_billing_recording_rule.yaml rename to component/tests/golden/openshift/appcat/appcat/10_appcat_billing_recording_rule.yaml diff --git a/tests/golden/openshift/appcat/appcat/10_appcat_maintenance_recording_rule.yaml b/component/tests/golden/openshift/appcat/appcat/10_appcat_maintenance_recording_rule.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/10_appcat_maintenance_recording_rule.yaml rename to component/tests/golden/openshift/appcat/appcat/10_appcat_maintenance_recording_rule.yaml diff --git a/tests/golden/openshift/appcat/appcat/10_appcat_namespace.yaml b/component/tests/golden/openshift/appcat/appcat/10_appcat_namespace.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/10_appcat_namespace.yaml rename to component/tests/golden/openshift/appcat/appcat/10_appcat_namespace.yaml diff --git a/tests/golden/openshift/appcat/appcat/10_clusterrole_finalizer.yaml b/component/tests/golden/openshift/appcat/appcat/10_clusterrole_finalizer.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/10_clusterrole_finalizer.yaml rename to component/tests/golden/openshift/appcat/appcat/10_clusterrole_finalizer.yaml diff --git a/tests/golden/openshift/appcat/appcat/10_clusterrole_services_read.yaml b/component/tests/golden/openshift/appcat/appcat/10_clusterrole_services_read.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/10_clusterrole_services_read.yaml rename to component/tests/golden/openshift/appcat/appcat/10_clusterrole_services_read.yaml diff --git a/tests/golden/openshift/appcat/appcat/10_clusterrole_view.yaml b/component/tests/golden/openshift/appcat/appcat/10_clusterrole_view.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/10_clusterrole_view.yaml rename to component/tests/golden/openshift/appcat/appcat/10_clusterrole_view.yaml diff --git a/tests/golden/openshift/appcat/appcat/10_provider_cloudscale.yaml b/component/tests/golden/openshift/appcat/appcat/10_provider_cloudscale.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/10_provider_cloudscale.yaml rename to component/tests/golden/openshift/appcat/appcat/10_provider_cloudscale.yaml diff --git a/tests/golden/openshift/appcat/appcat/10_provider_exoscale.yaml b/component/tests/golden/openshift/appcat/appcat/10_provider_exoscale.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/10_provider_exoscale.yaml rename to component/tests/golden/openshift/appcat/appcat/10_provider_exoscale.yaml diff --git a/tests/golden/openshift/appcat/appcat/10_provider_kubernetes.yaml b/component/tests/golden/openshift/appcat/appcat/10_provider_kubernetes.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/10_provider_kubernetes.yaml rename to component/tests/golden/openshift/appcat/appcat/10_provider_kubernetes.yaml diff --git a/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_kafka.yaml b/component/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_kafka.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/20_rbac_exoscale_kafka.yaml rename to component/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_kafka.yaml diff --git a/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_mysql.yaml b/component/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_mysql.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/20_rbac_exoscale_mysql.yaml rename to component/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_mysql.yaml diff --git a/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_opensearch.yaml b/component/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_opensearch.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/20_rbac_exoscale_opensearch.yaml rename to component/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_opensearch.yaml diff --git a/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_postgres.yaml b/component/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_postgres.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/20_rbac_exoscale_postgres.yaml rename to component/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_postgres.yaml diff --git a/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_redis.yaml b/component/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_redis.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/20_rbac_exoscale_redis.yaml rename to component/tests/golden/openshift/appcat/appcat/20_rbac_exoscale_redis.yaml diff --git a/tests/golden/openshift/appcat/appcat/20_rbac_objectstorage.yaml b/component/tests/golden/openshift/appcat/appcat/20_rbac_objectstorage.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/20_rbac_objectstorage.yaml rename to component/tests/golden/openshift/appcat/appcat/20_rbac_objectstorage.yaml diff --git a/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_kafka.yaml b/component/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_kafka.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/20_xrd_exoscale_kafka.yaml rename to component/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_kafka.yaml diff --git a/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_mysql.yaml b/component/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_mysql.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/20_xrd_exoscale_mysql.yaml rename to component/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_mysql.yaml diff --git a/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_opensearch.yaml b/component/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_opensearch.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/20_xrd_exoscale_opensearch.yaml rename to component/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_opensearch.yaml diff --git a/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_postgres.yaml b/component/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_postgres.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/20_xrd_exoscale_postgres.yaml rename to component/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_postgres.yaml diff --git a/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_redis.yaml b/component/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_redis.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/20_xrd_exoscale_redis.yaml rename to component/tests/golden/openshift/appcat/appcat/20_xrd_exoscale_redis.yaml diff --git a/tests/golden/openshift/appcat/appcat/20_xrd_objectstorage.yaml b/component/tests/golden/openshift/appcat/appcat/20_xrd_objectstorage.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/20_xrd_objectstorage.yaml rename to component/tests/golden/openshift/appcat/appcat/20_xrd_objectstorage.yaml diff --git a/tests/golden/openshift/appcat/appcat/21_composition_exoscale_kafka.yaml b/component/tests/golden/openshift/appcat/appcat/21_composition_exoscale_kafka.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/21_composition_exoscale_kafka.yaml rename to component/tests/golden/openshift/appcat/appcat/21_composition_exoscale_kafka.yaml diff --git a/tests/golden/openshift/appcat/appcat/21_composition_exoscale_mysql.yaml b/component/tests/golden/openshift/appcat/appcat/21_composition_exoscale_mysql.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/21_composition_exoscale_mysql.yaml rename to component/tests/golden/openshift/appcat/appcat/21_composition_exoscale_mysql.yaml diff --git a/tests/golden/openshift/appcat/appcat/21_composition_exoscale_opensearch.yaml b/component/tests/golden/openshift/appcat/appcat/21_composition_exoscale_opensearch.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/21_composition_exoscale_opensearch.yaml rename to component/tests/golden/openshift/appcat/appcat/21_composition_exoscale_opensearch.yaml diff --git a/tests/golden/openshift/appcat/appcat/21_composition_exoscale_postgres.yaml b/component/tests/golden/openshift/appcat/appcat/21_composition_exoscale_postgres.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/21_composition_exoscale_postgres.yaml rename to component/tests/golden/openshift/appcat/appcat/21_composition_exoscale_postgres.yaml diff --git a/tests/golden/openshift/appcat/appcat/21_composition_exoscale_redis.yaml b/component/tests/golden/openshift/appcat/appcat/21_composition_exoscale_redis.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/21_composition_exoscale_redis.yaml rename to component/tests/golden/openshift/appcat/appcat/21_composition_exoscale_redis.yaml diff --git a/tests/golden/openshift/appcat/appcat/21_composition_objectstorage_exoscale.yaml b/component/tests/golden/openshift/appcat/appcat/21_composition_objectstorage_exoscale.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/21_composition_objectstorage_exoscale.yaml rename to component/tests/golden/openshift/appcat/appcat/21_composition_objectstorage_exoscale.yaml diff --git a/tests/golden/openshift/appcat/appcat/21_openshift_template_kafka_exoscale.yaml b/component/tests/golden/openshift/appcat/appcat/21_openshift_template_kafka_exoscale.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/21_openshift_template_kafka_exoscale.yaml rename to component/tests/golden/openshift/appcat/appcat/21_openshift_template_kafka_exoscale.yaml diff --git a/tests/golden/openshift/appcat/appcat/21_openshift_template_mysql_exoscale.yaml b/component/tests/golden/openshift/appcat/appcat/21_openshift_template_mysql_exoscale.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/21_openshift_template_mysql_exoscale.yaml rename to component/tests/golden/openshift/appcat/appcat/21_openshift_template_mysql_exoscale.yaml diff --git a/tests/golden/openshift/appcat/appcat/21_openshift_template_opensearch_exoscale.yaml b/component/tests/golden/openshift/appcat/appcat/21_openshift_template_opensearch_exoscale.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/21_openshift_template_opensearch_exoscale.yaml rename to component/tests/golden/openshift/appcat/appcat/21_openshift_template_opensearch_exoscale.yaml diff --git a/tests/golden/openshift/appcat/appcat/21_openshift_template_postgresql_exoscale.yaml b/component/tests/golden/openshift/appcat/appcat/21_openshift_template_postgresql_exoscale.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/21_openshift_template_postgresql_exoscale.yaml rename to component/tests/golden/openshift/appcat/appcat/21_openshift_template_postgresql_exoscale.yaml diff --git a/tests/golden/openshift/appcat/appcat/21_openshift_template_redis_exoscale.yaml b/component/tests/golden/openshift/appcat/appcat/21_openshift_template_redis_exoscale.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/21_openshift_template_redis_exoscale.yaml rename to component/tests/golden/openshift/appcat/appcat/21_openshift_template_redis_exoscale.yaml diff --git a/tests/golden/openshift/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml b/component/tests/golden/openshift/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml rename to component/tests/golden/openshift/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml diff --git a/tests/golden/openshift/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml b/component/tests/golden/openshift/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml rename to component/tests/golden/openshift/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml diff --git a/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml b/component/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml rename to component/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml diff --git a/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml b/component/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml rename to component/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml diff --git a/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml b/component/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml rename to component/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml diff --git a/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml b/component/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml rename to component/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml diff --git a/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml b/component/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml rename to component/tests/golden/openshift/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml diff --git a/tests/golden/openshift/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml b/component/tests/golden/openshift/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml rename to component/tests/golden/openshift/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml diff --git a/tests/golden/openshift/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml b/component/tests/golden/openshift/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml rename to component/tests/golden/openshift/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml diff --git a/tests/golden/openshift/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml b/component/tests/golden/openshift/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml rename to component/tests/golden/openshift/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml diff --git a/tests/golden/openshift/appcat/appcat/statefuleset-resize-controller.yaml b/component/tests/golden/openshift/appcat/appcat/statefuleset-resize-controller.yaml similarity index 100% rename from tests/golden/openshift/appcat/appcat/statefuleset-resize-controller.yaml rename to component/tests/golden/openshift/appcat/appcat/statefuleset-resize-controller.yaml diff --git a/tests/golden/openshift/appcat/apps/appcat.yaml b/component/tests/golden/openshift/appcat/apps/appcat.yaml similarity index 100% rename from tests/golden/openshift/appcat/apps/appcat.yaml rename to component/tests/golden/openshift/appcat/apps/appcat.yaml diff --git a/tests/golden/vshn/appcat/appcat/10_appcat_billing_recording_rule.yaml b/component/tests/golden/vshn/appcat/appcat/10_appcat_billing_recording_rule.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/10_appcat_billing_recording_rule.yaml rename to component/tests/golden/vshn/appcat/appcat/10_appcat_billing_recording_rule.yaml diff --git a/tests/golden/vshn/appcat/appcat/10_appcat_maintenance_recording_rule.yaml b/component/tests/golden/vshn/appcat/appcat/10_appcat_maintenance_recording_rule.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/10_appcat_maintenance_recording_rule.yaml rename to component/tests/golden/vshn/appcat/appcat/10_appcat_maintenance_recording_rule.yaml diff --git a/tests/golden/vshn/appcat/appcat/10_appcat_namespace.yaml b/component/tests/golden/vshn/appcat/appcat/10_appcat_namespace.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/10_appcat_namespace.yaml rename to component/tests/golden/vshn/appcat/appcat/10_appcat_namespace.yaml diff --git a/tests/golden/vshn/appcat/appcat/10_clusterrole_services_read.yaml b/component/tests/golden/vshn/appcat/appcat/10_clusterrole_services_read.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/10_clusterrole_services_read.yaml rename to component/tests/golden/vshn/appcat/appcat/10_clusterrole_services_read.yaml diff --git a/tests/golden/vshn/appcat/appcat/10_clusterrole_view.yaml b/component/tests/golden/vshn/appcat/appcat/10_clusterrole_view.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/10_clusterrole_view.yaml rename to component/tests/golden/vshn/appcat/appcat/10_clusterrole_view.yaml diff --git a/tests/golden/vshn/appcat/appcat/10_mailgun_secret.yaml b/component/tests/golden/vshn/appcat/appcat/10_mailgun_secret.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/10_mailgun_secret.yaml rename to component/tests/golden/vshn/appcat/appcat/10_mailgun_secret.yaml diff --git a/tests/golden/vshn/appcat/appcat/10_namespace_vshn_control.yaml b/component/tests/golden/vshn/appcat/appcat/10_namespace_vshn_control.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/10_namespace_vshn_control.yaml rename to component/tests/golden/vshn/appcat/appcat/10_namespace_vshn_control.yaml diff --git a/tests/golden/vshn/appcat/appcat/10_provider_helm.yaml b/component/tests/golden/vshn/appcat/appcat/10_provider_helm.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/10_provider_helm.yaml rename to component/tests/golden/vshn/appcat/appcat/10_provider_helm.yaml diff --git a/tests/golden/vshn/appcat/appcat/10_provider_kubernetes.yaml b/component/tests/golden/vshn/appcat/appcat/10_provider_kubernetes.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/10_provider_kubernetes.yaml rename to component/tests/golden/vshn/appcat/appcat/10_provider_kubernetes.yaml diff --git a/tests/golden/vshn/appcat/appcat/10_provider_minio.yaml b/component/tests/golden/vshn/appcat/appcat/10_provider_minio.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/10_provider_minio.yaml rename to component/tests/golden/vshn/appcat/appcat/10_provider_minio.yaml diff --git a/tests/golden/vshn/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role.yaml b/component/tests/golden/vshn/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role.yaml rename to component/tests/golden/vshn/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role.yaml diff --git a/tests/golden/vshn/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role_binding.yaml b/component/tests/golden/vshn/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role_binding.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role_binding.yaml rename to component/tests/golden/vshn/appcat/appcat/10_rbac_helm_service_maintenance_cluster_role_binding.yaml diff --git a/tests/golden/vshn/appcat/appcat/10_rbac_helm_service_maintenance_sa.yaml b/component/tests/golden/vshn/appcat/appcat/10_rbac_helm_service_maintenance_sa.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/10_rbac_helm_service_maintenance_sa.yaml rename to component/tests/golden/vshn/appcat/appcat/10_rbac_helm_service_maintenance_sa.yaml diff --git a/tests/golden/vshn/appcat/appcat/20_plans_vshn_postgresql.yaml b/component/tests/golden/vshn/appcat/appcat/20_plans_vshn_postgresql.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/20_plans_vshn_postgresql.yaml rename to component/tests/golden/vshn/appcat/appcat/20_plans_vshn_postgresql.yaml diff --git a/tests/golden/vshn/appcat/appcat/20_plans_vshn_redis.yaml b/component/tests/golden/vshn/appcat/appcat/20_plans_vshn_redis.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/20_plans_vshn_redis.yaml rename to component/tests/golden/vshn/appcat/appcat/20_plans_vshn_redis.yaml diff --git a/tests/golden/vshn/appcat/appcat/20_rbac_objectstorage.yaml b/component/tests/golden/vshn/appcat/appcat/20_rbac_objectstorage.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/20_rbac_objectstorage.yaml rename to component/tests/golden/vshn/appcat/appcat/20_rbac_objectstorage.yaml diff --git a/tests/golden/vshn/appcat/appcat/20_rbac_vshn_minio.yaml b/component/tests/golden/vshn/appcat/appcat/20_rbac_vshn_minio.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/20_rbac_vshn_minio.yaml rename to component/tests/golden/vshn/appcat/appcat/20_rbac_vshn_minio.yaml diff --git a/tests/golden/vshn/appcat/appcat/20_rbac_vshn_postgres.yaml b/component/tests/golden/vshn/appcat/appcat/20_rbac_vshn_postgres.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/20_rbac_vshn_postgres.yaml rename to component/tests/golden/vshn/appcat/appcat/20_rbac_vshn_postgres.yaml diff --git a/tests/golden/vshn/appcat/appcat/20_rbac_vshn_redis.yaml b/component/tests/golden/vshn/appcat/appcat/20_rbac_vshn_redis.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/20_rbac_vshn_redis.yaml rename to component/tests/golden/vshn/appcat/appcat/20_rbac_vshn_redis.yaml diff --git a/tests/golden/vshn/appcat/appcat/20_rbac_vshn_redis_resize.yaml b/component/tests/golden/vshn/appcat/appcat/20_rbac_vshn_redis_resize.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/20_rbac_vshn_redis_resize.yaml rename to component/tests/golden/vshn/appcat/appcat/20_rbac_vshn_redis_resize.yaml diff --git a/tests/golden/vshn/appcat/appcat/20_role_vshn_postgresrestore.yaml b/component/tests/golden/vshn/appcat/appcat/20_role_vshn_postgresrestore.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/20_role_vshn_postgresrestore.yaml rename to component/tests/golden/vshn/appcat/appcat/20_role_vshn_postgresrestore.yaml diff --git a/tests/golden/vshn/appcat/appcat/20_role_vshn_redisrestore.yaml b/component/tests/golden/vshn/appcat/appcat/20_role_vshn_redisrestore.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/20_role_vshn_redisrestore.yaml rename to component/tests/golden/vshn/appcat/appcat/20_role_vshn_redisrestore.yaml diff --git a/tests/golden/vshn/appcat/appcat/20_xrd_objectstorage.yaml b/component/tests/golden/vshn/appcat/appcat/20_xrd_objectstorage.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/20_xrd_objectstorage.yaml rename to component/tests/golden/vshn/appcat/appcat/20_xrd_objectstorage.yaml diff --git a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_minio.yaml b/component/tests/golden/vshn/appcat/appcat/20_xrd_vshn_minio.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/20_xrd_vshn_minio.yaml rename to component/tests/golden/vshn/appcat/appcat/20_xrd_vshn_minio.yaml diff --git a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_postgres.yaml b/component/tests/golden/vshn/appcat/appcat/20_xrd_vshn_postgres.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/20_xrd_vshn_postgres.yaml rename to component/tests/golden/vshn/appcat/appcat/20_xrd_vshn_postgres.yaml diff --git a/tests/golden/vshn/appcat/appcat/20_xrd_vshn_redis.yaml b/component/tests/golden/vshn/appcat/appcat/20_xrd_vshn_redis.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/20_xrd_vshn_redis.yaml rename to component/tests/golden/vshn/appcat/appcat/20_xrd_vshn_redis.yaml diff --git a/tests/golden/vshn/appcat/appcat/21_composition_objectstorage_minio.yaml b/component/tests/golden/vshn/appcat/appcat/21_composition_objectstorage_minio.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/21_composition_objectstorage_minio.yaml rename to component/tests/golden/vshn/appcat/appcat/21_composition_objectstorage_minio.yaml diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_minio.yaml b/component/tests/golden/vshn/appcat/appcat/21_composition_vshn_minio.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/21_composition_vshn_minio.yaml rename to component/tests/golden/vshn/appcat/appcat/21_composition_vshn_minio.yaml diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgres.yaml b/component/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgres.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/21_composition_vshn_postgres.yaml rename to component/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgres.yaml diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgresrestore.yaml b/component/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgresrestore.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/21_composition_vshn_postgresrestore.yaml rename to component/tests/golden/vshn/appcat/appcat/21_composition_vshn_postgresrestore.yaml diff --git a/tests/golden/vshn/appcat/appcat/21_composition_vshn_redis.yaml b/component/tests/golden/vshn/appcat/appcat/21_composition_vshn_redis.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/21_composition_vshn_redis.yaml rename to component/tests/golden/vshn/appcat/appcat/21_composition_vshn_redis.yaml diff --git a/tests/golden/vshn/appcat/appcat/22_prom_rule_sla_postgres.yaml b/component/tests/golden/vshn/appcat/appcat/22_prom_rule_sla_postgres.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/22_prom_rule_sla_postgres.yaml rename to component/tests/golden/vshn/appcat/appcat/22_prom_rule_sla_postgres.yaml diff --git a/tests/golden/vshn/appcat/appcat/22_prom_rule_sla_redis.yaml b/component/tests/golden/vshn/appcat/appcat/22_prom_rule_sla_redis.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/22_prom_rule_sla_redis.yaml rename to component/tests/golden/vshn/appcat/appcat/22_prom_rule_sla_redis.yaml diff --git a/tests/golden/vshn/appcat/appcat/apiserver/10_apiserver_envs.yaml b/component/tests/golden/vshn/appcat/appcat/apiserver/10_apiserver_envs.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/apiserver/10_apiserver_envs.yaml rename to component/tests/golden/vshn/appcat/appcat/apiserver/10_apiserver_envs.yaml diff --git a/tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_api_server.yaml b/component/tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_api_server.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_api_server.yaml rename to component/tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_api_server.yaml diff --git a/tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_basic_users.yaml b/component/tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_basic_users.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_basic_users.yaml rename to component/tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_basic_users.yaml diff --git a/tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_binding.yaml b/component/tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_binding.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_binding.yaml rename to component/tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_binding.yaml diff --git a/tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_view.yaml b/component/tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_view.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_view.yaml rename to component/tests/golden/vshn/appcat/appcat/apiserver/10_cluster_role_view.yaml diff --git a/tests/golden/vshn/appcat/appcat/apiserver/20_service_account.yaml b/component/tests/golden/vshn/appcat/appcat/apiserver/20_service_account.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/apiserver/20_service_account.yaml rename to component/tests/golden/vshn/appcat/appcat/apiserver/20_service_account.yaml diff --git a/tests/golden/vshn/appcat/appcat/apiserver/30_api_service.yaml b/component/tests/golden/vshn/appcat/appcat/apiserver/30_api_service.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/apiserver/30_api_service.yaml rename to component/tests/golden/vshn/appcat/appcat/apiserver/30_api_service.yaml diff --git a/tests/golden/vshn/appcat/appcat/apiserver/30_deployment.yaml b/component/tests/golden/vshn/appcat/appcat/apiserver/30_deployment.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/apiserver/30_deployment.yaml rename to component/tests/golden/vshn/appcat/appcat/apiserver/30_deployment.yaml diff --git a/tests/golden/vshn/appcat/appcat/apiserver/30_service.yaml b/component/tests/golden/vshn/appcat/appcat/apiserver/30_service.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/apiserver/30_service.yaml rename to component/tests/golden/vshn/appcat/appcat/apiserver/30_service.yaml diff --git a/tests/golden/vshn/appcat/appcat/apiserver/31_api_certificate.yaml b/component/tests/golden/vshn/appcat/appcat/apiserver/31_api_certificate.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/apiserver/31_api_certificate.yaml rename to component/tests/golden/vshn/appcat/appcat/apiserver/31_api_certificate.yaml diff --git a/tests/golden/vshn/appcat/appcat/apiserver/31_api_issuer.yaml b/component/tests/golden/vshn/appcat/appcat/apiserver/31_api_issuer.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/apiserver/31_api_issuer.yaml rename to component/tests/golden/vshn/appcat/appcat/apiserver/31_api_issuer.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/appcat/10_cluster_role.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_cluster_role.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/appcat/10_cluster_role.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_cluster_role.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/appcat/10_cluster_role_binding.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_cluster_role_binding.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/appcat/10_cluster_role_binding.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_cluster_role_binding.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/appcat/10_pg_webhooks.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_pg_webhooks.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/appcat/10_pg_webhooks.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_pg_webhooks.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/appcat/10_redis_webhooks.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_redis_webhooks.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/appcat/10_redis_webhooks.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_redis_webhooks.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/appcat/10_role_binding_leader_election.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_role_binding_leader_election.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/appcat/10_role_binding_leader_election.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_role_binding_leader_election.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/appcat/10_role_leader_election.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_role_leader_election.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/appcat/10_role_leader_election.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_role_leader_election.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/appcat/10_webhook_certificate.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_webhook_certificate.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/appcat/10_webhook_certificate.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_webhook_certificate.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/appcat/10_webhook_issuer.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_webhook_issuer.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/appcat/10_webhook_issuer.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_webhook_issuer.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/appcat/10_webhook_service.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_webhook_service.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/appcat/10_webhook_service.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/appcat/10_webhook_service.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/appcat/20_service_account.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/appcat/20_service_account.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/appcat/20_service_account.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/appcat/20_service_account.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/appcat/30_deployment.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/appcat/30_deployment.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/appcat/30_deployment.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/appcat/30_deployment.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_binding.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_binding.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_binding.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_binding.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_deployment.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_deployment.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_deployment.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_deployment.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_role.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_role.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_role.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_role.yaml diff --git a/tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_sa.yaml b/component/tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_sa.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_sa.yaml rename to component/tests/golden/vshn/appcat/appcat/controllers/sts-resizer/10_sa.yaml diff --git a/tests/golden/vshn/appcat/appcat/sla_reporter/01_cronjob.yaml b/component/tests/golden/vshn/appcat/appcat/sla_reporter/01_cronjob.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sla_reporter/01_cronjob.yaml rename to component/tests/golden/vshn/appcat/appcat/sla_reporter/01_cronjob.yaml diff --git a/tests/golden/vshn/appcat/appcat/sla_reporter/02_object_bucket.yaml b/component/tests/golden/vshn/appcat/appcat/sla_reporter/02_object_bucket.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sla_reporter/02_object_bucket.yaml rename to component/tests/golden/vshn/appcat/appcat/sla_reporter/02_object_bucket.yaml diff --git a/tests/golden/vshn/appcat/appcat/sla_reporter/03_network_policy.yaml b/component/tests/golden/vshn/appcat/appcat/sla_reporter/03_network_policy.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sla_reporter/03_network_policy.yaml rename to component/tests/golden/vshn/appcat/appcat/sla_reporter/03_network_policy.yaml diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/90_slo_vshn_postgresql.yaml b/component/tests/golden/vshn/appcat/appcat/sli_exporter/90_slo_vshn_postgresql.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sli_exporter/90_slo_vshn_postgresql.yaml rename to component/tests/golden/vshn/appcat/appcat/sli_exporter/90_slo_vshn_postgresql.yaml diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/90_slo_vshn_postgresql_ha.yaml b/component/tests/golden/vshn/appcat/appcat/sli_exporter/90_slo_vshn_postgresql_ha.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sli_exporter/90_slo_vshn_postgresql_ha.yaml rename to component/tests/golden/vshn/appcat/appcat/sli_exporter/90_slo_vshn_postgresql_ha.yaml diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/90_slo_vshn_redis.yaml b/component/tests/golden/vshn/appcat/appcat/sli_exporter/90_slo_vshn_redis.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sli_exporter/90_slo_vshn_redis.yaml rename to component/tests/golden/vshn/appcat/appcat/sli_exporter/90_slo_vshn_redis.yaml diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml b/component/tests/golden/vshn/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml rename to component/tests/golden/vshn/appcat/appcat/sli_exporter/apps_v1_deployment_appcat-sliexporter-controller-manager.yaml diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml b/component/tests/golden/vshn/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml rename to component/tests/golden/vshn/appcat/appcat/sli_exporter/monitoring.coreos.com_v1_servicemonitor_appcat-sliexporter-controller-manager-metrics-monitor.yaml diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml b/component/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml rename to component/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-appcat-sli-exporter.yaml diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml b/component/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml rename to component/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-metrics-reader.yaml diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml b/component/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml rename to component/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrole_appcat-sliexporter-proxy-role.yaml diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml b/component/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml rename to component/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-appcat-sli-exporter.yaml diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml b/component/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml rename to component/tests/golden/vshn/appcat/appcat/sli_exporter/rbac.authorization.k8s.io_v1_clusterrolebinding_appcat-sliexporter-proxy-rolebinding.yaml diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml b/component/tests/golden/vshn/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml rename to component/tests/golden/vshn/appcat/appcat/sli_exporter/v1_namespace_appcat-slos.yaml diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml b/component/tests/golden/vshn/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml rename to component/tests/golden/vshn/appcat/appcat/sli_exporter/v1_service_appcat-sliexporter-controller-manager-metrics-service.yaml diff --git a/tests/golden/vshn/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml b/component/tests/golden/vshn/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml similarity index 100% rename from tests/golden/vshn/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml rename to component/tests/golden/vshn/appcat/appcat/sli_exporter/v1_serviceaccount_appcat-sliexporter-controller-manager.yaml diff --git a/tests/golden/vshn/appcat/apps/appcat.yaml b/component/tests/golden/vshn/appcat/apps/appcat.yaml similarity index 100% rename from tests/golden/vshn/appcat/apps/appcat.yaml rename to component/tests/golden/vshn/appcat/apps/appcat.yaml diff --git a/tests/minio.yml b/component/tests/minio.yml similarity index 100% rename from tests/minio.yml rename to component/tests/minio.yml diff --git a/tests/openshift.yml b/component/tests/openshift.yml similarity index 100% rename from tests/openshift.yml rename to component/tests/openshift.yml diff --git a/tests/vshn.yml b/component/tests/vshn.yml similarity index 100% rename from tests/vshn.yml rename to component/tests/vshn.yml diff --git a/package/.cruft.json b/package/.cruft.json new file mode 100644 index 000000000..dc2585caf --- /dev/null +++ b/package/.cruft.json @@ -0,0 +1,20 @@ +{ + "template": "https://github.com/projectsyn/commodore-config-package-template.git", + "commit": "8dc31bcae98175d73858af0450d87e4e6e9c4751", + "checkout": "main", + "context": { + "cookiecutter": { + "name": "appcat", + "slug": "appcat", + "test_cases": "defaults", + "add_golden": "y", + "copyright_holder": "VSHN AG ", + "copyright_year": "2023", + "github_owner": "vshn", + "__github_name": "component-appcat", + "__github_url": "https://github.com/vshn/component-appcat", + "_template": "https://github.com/projectsyn/commodore-config-package-template.git" + } + }, + "directory": null +} diff --git a/package/.github/workflows/test.yaml b/package/.github/workflows/test.yaml new file mode 100644 index 000000000..36dd3fe50 --- /dev/null +++ b/package/.github/workflows/test.yaml @@ -0,0 +1,29 @@ +name: Pull Request +on: + pull_request: + branches: + - master + +env: + PACKAGE_NAME: appcat + +jobs: + linting: + runs-on: ubuntu-latest + strategy: + matrix: + command: + - lint_yaml + - lint_adoc + - lint_commodore + steps: + - uses: actions/checkout@v4 + - name: Run ${{ matrix.command }} + run: make ${{ matrix.command }} + editorconfig: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: snow-actions/eclint@v1.0.1 + with: + args: "check" diff --git a/package/.gitignore b/package/.gitignore new file mode 100644 index 000000000..d4faf71b5 --- /dev/null +++ b/package/.gitignore @@ -0,0 +1,14 @@ +# Commodore +/.cache/ +/compiled/ +/dependencies/ +/inventory/ +/vendor/ +/jsonnetfile.json +/jsonnetfile.lock.json + +# Antora +/_archive/ +/_public/ + +# Additional entries diff --git a/package/.yamllint.yml b/package/.yamllint.yml new file mode 100644 index 000000000..e0eef8b34 --- /dev/null +++ b/package/.yamllint.yml @@ -0,0 +1,23 @@ +extends: default + +rules: + # 80 chars should be enough, but don't fail if a line is longer + line-length: + max: 80 + level: warning + + # Forbid octal literals until we've fully migrated to reclass-rs + octal-values: + forbid-implicit-octal: true + forbid-explicit-octal: true + + # Restrict truthy values to set which is parsed as boolean by reclass-rs + truthy: + allowed-values: ["true", "false", "True", "False", "TRUE", "FALSE"] + check-keys: true + +ignore: | + dependencies/ + vendor/ + compiled/ + tests/golden/ diff --git a/package/Makefile b/package/Makefile new file mode 100644 index 000000000..71cc540a4 --- /dev/null +++ b/package/Makefile @@ -0,0 +1,38 @@ +MAKEFLAGS += --warn-undefined-variables +SHELL := bash +.SHELLFLAGS := -eu -o pipefail -c +.DEFAULT_GOAL := all +.DELETE_ON_ERROR: +.SUFFIXES: + +include Makefile.vars.mk + +.PHONY: help +help: ## Show this help + @grep -E -h '\s##\s' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = "(: ).*?## "}; {gsub(/\\:/,":", $$1)}; {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}' + +.PHONY: all +all: lint + +.PHONY: lint +lint: lint_commodore lint_yaml lint_adoc ## All-in-one linting + +.PHONY: lint_commodore +lint_commodore: ## Run commodore linter on package + $(COMMODORE_CMD) inventory lint . + +.PHONY: lint_yaml +lint_yaml: ## Lint yaml files + $(YAMLLINT_DOCKER) -f parsable -c $(YAMLLINT_CONFIG) $(YAMLLINT_ARGS) -- . + +.PHONY: lint_adoc +lint_adoc: ## Lint documentation + $(VALE_CMD) $(VALE_ARGS) + +.PHONY: docs-serve +docs-serve: ## Preview the documentation + $(ANTORA_PREVIEW_CMD) + +.PHONY: clean +clean: ## Clean the project + rm -rf .cache compiled dependencies vendor helmcharts jsonnetfile*.json || true diff --git a/package/Makefile.vars.mk b/package/Makefile.vars.mk new file mode 100644 index 000000000..5e7bafcca --- /dev/null +++ b/package/Makefile.vars.mk @@ -0,0 +1,35 @@ +# Commodore takes the root dir name as the package name +PACKAGE_NAME ?= $(shell basename ${PWD} | sed s/package-//) + +git_dir ?= $(shell git rev-parse --git-common-dir) +root_volume ?= -v "$${PWD}:/$(PACKAGE_NAME)" +commodore_args ?= tests/$(instance).yml + +ifneq "$(git_dir)" ".git" + git_volume ?= -v "$(git_dir):$(git_dir):ro" + antora_git_volume ?= -v "$(git_dir):/preview/antora/.git:ro" +else + git_volume ?= + antora_git_volume ?= -v "${PWD}/.git:/preview/antora/.git:ro" +endif + +ifneq "$(shell which docker 2>/dev/null)" "" + DOCKER_CMD ?= $(shell which docker) + DOCKER_USERNS ?= "" +else + DOCKER_CMD ?= podman + DOCKER_USERNS ?= keep-id +endif +DOCKER_ARGS ?= run --rm -u "$$(id -u):$$(id -g)" --userns=$(DOCKER_USERNS) -w /$(PACKAGE_NAME) -e HOME="/$(PACKAGE_NAME)" + +YAMLLINT_ARGS ?= --no-warnings +YAMLLINT_CONFIG ?= .yamllint.yml +YAMLLINT_IMAGE ?= docker.io/cytopia/yamllint:latest +YAMLLINT_DOCKER ?= $(DOCKER_CMD) $(DOCKER_ARGS) $(root_volume) $(YAMLLINT_IMAGE) + +VALE_CMD ?= $(DOCKER_CMD) $(DOCKER_ARGS) $(root_volume) --volume "$${PWD}"/docs/modules:/pages ghcr.io/vshn/vale:2.15.5 +VALE_ARGS ?= --minAlertLevel=error --config=/pages/ROOT/pages/.vale.ini /pages + +ANTORA_PREVIEW_CMD ?= $(DOCKER_CMD) run --rm --publish 35729:35729 --publish 2020:2020 $(antora_git_volume) --volume "${PWD}/docs":/preview/antora/docs ghcr.io/vshn/antora-preview:3.1.2.3 --style=syn --antora=docs + +COMMODORE_CMD ?= $(DOCKER_CMD) $(DOCKER_ARGS) $(root_volume) docker.io/projectsyn/commodore:latest diff --git a/package/main.yaml b/package/main.yaml new file mode 100644 index 000000000..1aa0a61d9 --- /dev/null +++ b/package/main.yaml @@ -0,0 +1,66 @@ +applications: + - appcat + - crossplane +parameters: + pkg.appcat: + componentVersion: package_appcat + image: + registry: ghcr.io + repository: vshn/appcat + tag: v4.34.0 + components: + appcat: + url: https://github.com/vshn/component-appcat.git + version: ${pkg.appcat:componentVersion} + path: component + crossplane: + url: https://github.com/projectsyn/component-crossplane.git + version: v3.4.0 + appcat: + images: + appcat: + registry: ${pkg.appcat:image:registry} + repository: ${pkg.appcat:image:repository} + tag: ${pkg.appcat:image:tag} + namespaceAnnotations: + openshift.io/node-selector: node-role.kubernetes.io/infra= + apiserver: + enabled: true + namespace: syn-appcat + env: + APPCAT_HANDLER_ENABLED: "true" + crossplane: + namespaceAnnotations: + openshift.io/node-selector: node-role.kubernetes.io/infra= + monitoring: + enabled: false + helmValues: + xfn: + enabled: true + securityContext: + seccompProfile: null + capabilities: + add: [] + image: + repository: ${pkg.appcat:image:registry}/${pkg.appcat:image:repository} + tag: ${pkg.appcat:image:tag} + resources: + requests: + cpu: 100m + memory: 64Mi + limits: + cpu: 500m + memory: 128Mi + args: + - grpc + args: + - --enable-environment-configs + - --enable-composition-functions + rbacManager: + managementPolicy: Basic + resourcesCrossplane: + requests: + cpu: 10m + resourcesRBACManager: + requests: + cpu: 10m diff --git a/pod.yaml b/pod.yaml deleted file mode 100644 index 3ae40502c..000000000 --- a/pod.yaml +++ /dev/null @@ -1,1226 +0,0 @@ -apiVersion: v1 -kind: Pod -metadata: - annotations: - stackgres.io/cluster-controller-version: 1.4.0 - stackgres.io/envoy-version: 1.24.0 - stackgres.io/operatorVersion: 1.4.0 - stackgres.io/patroni-version: 2.1.4 - stackgres.io/pgbouncer-version: 1.17.0 - stackgres.io/postgresql-version: "14.6" - stackgres.io/prometheus-postgres-exporter-version: 0.11.1 - status: '{"conn_url":"postgres://10.244.2.7:7433/postgres","api_url":"http://10.244.2.7:8008/patroni","state":"running","role":"master","version":"2.1.4","xlog_location":26523224,"timeline":1}' - creationTimestamp: "2023-02-10T09:55:17Z" - generateName: pgsql-app1-prod-9xdgn- - labels: - app: StackGresCluster - controller-revision-hash: pgsql-app1-prod-9xdgn-6cc86c5fdf - role: master - stackgres.io/cluster: "true" - stackgres.io/cluster-name: pgsql-app1-prod-9xdgn - stackgres.io/cluster-uid: 60fcae55-deb0-4d01-b7c9-86e93ee119dd - stackgres.io/disruptible: "true" - statefulset.kubernetes.io/pod-name: pgsql-app1-prod-9xdgn-0 - name: pgsql-app1-prod-9xdgn-0 - namespace: vshn-postgresql-pgsql-app1-prod-9xdgn - ownerReferences: - - apiVersion: apps/v1 - blockOwnerDeletion: true - controller: true - kind: StatefulSet - name: pgsql-app1-prod-9xdgn - uid: ebe2dcfb-6213-4221-bfd0-ca63a96f87cf - resourceVersion: "4235" - uid: 0791bca7-280b-4749-bd68-4234df745ae4 -spec: - affinity: - podAntiAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - - labelSelector: - matchExpressions: - - key: app - operator: In - values: - - StackGresCluster - - key: stackgres.io/cluster - operator: In - values: - - "true" - topologyKey: kubernetes.io/hostname - containers: - - command: - - /bin/sh - - -ex - - /usr/local/bin/start-patroni.sh - env: - - name: LOCAL_BIN_PATH - value: /usr/local/bin - - name: PG_BASE_PATH - value: /var/lib/postgresql - - name: PG_DATA_PATH - value: /var/lib/postgresql/data - - name: ETC_PASSWD_PATH - value: /etc/passwd - - name: ETC_GROUP_PATH - value: /etc/group - - name: ETC_SHADOW_PATH - value: /etc/shadow - - name: ETC_GSHADOW_PATH - value: /etc/gshadow - - name: PG_EXTENSIONS_BASE_PATH - value: /var/lib/postgresql/extensions - - name: PG_EXTENSIONS_PATH - value: /var/lib/postgresql/extensions/14/6 - - name: PG_EXTENSIONS_BINARIES_PATH - value: /var/lib/postgresql/extensions/14/6/usr/lib/postgresql/14 - - name: PG_EXTENSIONS_BIN_PATH - value: /var/lib/postgresql/extensions/14/6/usr/lib/postgresql/14/bin - - name: PG_EXTENSIONS_LIB_PATH - value: /var/lib/postgresql/extensions/14/6/usr/lib/postgresql/14/lib - - name: PG_EXTENSIONS_SHARE_PATH - value: /var/lib/postgresql/extensions/14/6/usr/share/postgresql/14 - - name: PG_EXTENSIONS_EXTENSION_PATH - value: /var/lib/postgresql/extensions/14/6/usr/share/postgresql/14/extension - - name: PG_EXTENSIONS_LIB64_PATH - value: /var/lib/postgresql/extensions/14/6/usr/lib64 - - name: PG_LIB64_PATH - value: /usr/lib64 - - name: PG_BINARIES_PATH - value: /usr/lib/postgresql/14.6 - - name: PG_BIN_PATH - value: /usr/lib/postgresql/14.6/bin - - name: PG_LIB_PATH - value: /usr/lib/postgresql/14.6/lib - - name: PG_EXTRA_BIN_PATH - value: /usr/lib/postgresql/14.6/extra/bin - - name: PG_EXTRA_LIB_PATH - value: /usr/lib/postgresql/14.6/extra/lib - - name: PG_SHARE_PATH - value: /usr/share/postgresql/14.6 - - name: PG_EXTENSION_PATH - value: /usr/share/postgresql/14.6/extension - - name: PG_RELOCATED_BASE_PATH - value: /var/lib/postgresql/relocated - - name: PG_RELOCATED_PATH - value: /var/lib/postgresql/relocated/14.6 - - name: PG_RELOCATED_LIB64_PATH - value: /var/lib/postgresql/relocated/14.6/usr/lib64 - - name: PG_RELOCATED_BINARIES_PATH - value: /var/lib/postgresql/relocated/14.6/usr/lib/postgresql/14.6 - - name: PG_RELOCATED_BIN_PATH - value: /var/lib/postgresql/relocated/14.6/usr/lib/postgresql/14.6/bin - - name: PG_RELOCATED_LIB_PATH - value: /var/lib/postgresql/relocated/14.6/usr/lib/postgresql/14.6/lib - - name: PG_RELOCATED_SHARE_PATH - value: /var/lib/postgresql/relocated/14.6/usr/share/postgresql//14.6 - - name: PG_RELOCATED_EXTENSION_PATH - value: /var/lib/postgresql/relocated/14.6/usr/share/postgresql//14.6/extension - - name: PG_UPGRADE_PATH - value: /var/lib/postgresql/upgrade - - name: PATH - value: /usr/lib/postgresql/14.6/bin:/usr/lib/postgresql/14.6/extra/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin - - name: LD_LIBRARY_PATH - value: /usr/lib/postgresql/14.6/extra/lib - - name: PATRONI_NAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.name - - name: PATRONI_KUBERNETES_NAMESPACE - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.namespace - - name: PATRONI_KUBERNETES_POD_IP - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: status.podIP - - name: PATRONI_RESTAPI_CONNECT_ADDRESS - value: ${PATRONI_KUBERNETES_POD_IP}:8008 - - name: PATRONI_ENV - value: patroni - - name: BASE_SECRET_PATH - value: /etc/env/.secret - - name: PATRONI_ENV_PATH - value: /etc/env/patroni - - name: PATRONI_SECRET_ENV_PATH - value: /etc/env/.secret/patroni - - name: PATRONI_CONFIG_PATH - value: /etc/patroni - - name: PATRONI_CONFIG_FILE_PATH - value: /etc/patroni/config.yml - - name: BACKUP_ENV - value: backup - - name: BACKUP_ENV_PATH - value: /etc/env/backup - - name: BACKUP_SECRET_PATH - value: /etc/env/.secret/backup - - name: REPLICATE_ENV - value: replicate - - name: REPLICATE_ENV_PATH - value: /etc/env/replicate - - name: REPLICATE_SECRET_PATH - value: /etc/env/.secret/replicate - - name: RESTORE_ENV - value: restore - - name: RESTORE_ENV_PATH - value: /etc/env/restore - - name: RESTORE_SECRET_PATH - value: /etc/env/.secret/restore - - name: HUGEPAGES_2M_PATH - value: /hugepages-2Mi - - name: HUGEPAGES_1G_PATH - value: /hugepages-1Gi - - name: PATRONI_CONFIG_MD5SUM - value: 6C0567FCC81D75BD4E348048D122B01F - envFrom: - - configMapRef: - name: pgsql-app1-prod-9xdgn - image: docker.io/ongres/patroni:v2.1.4-pg14.6-build-6.18 - imagePullPolicy: IfNotPresent - livenessProbe: - failureThreshold: 6 - httpGet: - path: /liveness - port: 8008 - scheme: HTTP - initialDelaySeconds: 15 - periodSeconds: 20 - successThreshold: 1 - timeoutSeconds: 1 - name: patroni - ports: - - containerPort: 7432 - name: pgport - protocol: TCP - - containerPort: 7433 - name: pgreplication - protocol: TCP - - containerPort: 8008 - name: patroniport - protocol: TCP - readinessProbe: - failureThreshold: 3 - httpGet: - path: /readiness - port: 8008 - scheme: HTTP - initialDelaySeconds: 5 - periodSeconds: 10 - successThreshold: 1 - timeoutSeconds: 1 - resources: - limits: - cpu: 500m - memory: 128Mi - requests: - cpu: 500m - memory: 128Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - volumeMounts: - - mountPath: /var/run/postgresql - name: socket - - mountPath: /dev/shm - name: dshm - - mountPath: /var/log/postgresql - name: log - - mountPath: /usr/local/bin - name: local-bin - - mountPath: /etc/env/patroni - name: patroni-env - - mountPath: /etc/env/.secret/patroni - name: patroni-secret-env - - mountPath: /etc/patroni - name: patroni-config - - mountPath: /etc/env/backup - name: backup-env - - mountPath: /etc/env/.secret/backup - name: backup-secret - - mountPath: /etc/env/replicate - name: replicate-env - - mountPath: /etc/env/.secret/replicate - name: replicate-secret - - mountPath: /var/lib/postgresql - name: pgsql-app1-prod-9xdgn-data - - mountPath: /etc/passwd - name: user - readOnly: true - subPath: etc/passwd - - mountPath: /etc/group - name: user - readOnly: true - subPath: etc/group - - mountPath: /etc/shadow - name: user - readOnly: true - subPath: etc/shadow - - mountPath: /etc/gshadow - name: user - readOnly: true - subPath: etc/gshadow - - mountPath: /usr/lib64 - name: pgsql-app1-prod-9xdgn-data - subPath: relocated/14.6/usr/lib64 - - mountPath: /usr/lib/postgresql/14.6/bin - name: pgsql-app1-prod-9xdgn-data - subPath: relocated/14.6/usr/lib/postgresql/14.6/bin - - mountPath: /usr/lib/postgresql/14.6/lib - name: pgsql-app1-prod-9xdgn-data - subPath: relocated/14.6/usr/lib/postgresql/14.6/lib - - mountPath: /usr/share/postgresql/14.6 - name: pgsql-app1-prod-9xdgn-data - subPath: relocated/14.6/usr/share/postgresql//14.6 - - mountPath: /usr/share/postgresql/14.6/extension - name: pgsql-app1-prod-9xdgn-data - subPath: extensions/14/6/usr/share/postgresql/14/extension - - mountPath: /usr/lib/postgresql/14.6/extra/bin - name: pgsql-app1-prod-9xdgn-data - subPath: extensions/14/6/usr/lib/postgresql/14/bin - - mountPath: /usr/lib/postgresql/14.6/extra/lib - name: pgsql-app1-prod-9xdgn-data - subPath: extensions/14/6/usr/lib64 - - mountPath: /var/run/secrets/kubernetes.io/serviceaccount - name: kube-api-access-tqsbn - readOnly: true - - args: - - -c - - /etc/envoy/envoy.json - command: - - /usr/local/bin/envoy - image: docker.io/ongres/envoy:v1.24.0-build-6.18 - imagePullPolicy: IfNotPresent - name: envoy - ports: - - containerPort: 7432 - name: pgport - protocol: TCP - - containerPort: 7433 - name: pgreplication - protocol: TCP - - containerPort: 8001 - name: envoy - protocol: TCP - - containerPort: 8008 - name: patroniport - protocol: TCP - resources: - requests: - cpu: 250m - memory: 64Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - volumeMounts: - - mountPath: /etc/envoy - name: envoy - readOnly: true - - mountPath: /etc/passwd - name: user - readOnly: true - subPath: etc/passwd - - mountPath: /etc/group - name: user - readOnly: true - subPath: etc/group - - mountPath: /etc/shadow - name: user - readOnly: true - subPath: etc/shadow - - mountPath: /etc/gshadow - name: user - readOnly: true - subPath: etc/gshadow - - mountPath: /var/run/secrets/kubernetes.io/serviceaccount - name: kube-api-access-tqsbn - readOnly: true - - image: docker.io/ongres/pgbouncer:v1.17.0-build-6.17 - imagePullPolicy: IfNotPresent - name: pgbouncer - resources: - requests: - cpu: 250m - memory: 64Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - volumeMounts: - - mountPath: /var/run/postgresql - name: socket - - mountPath: /etc/passwd - name: user - readOnly: true - subPath: etc/passwd - - mountPath: /etc/group - name: user - readOnly: true - subPath: etc/group - - mountPath: /etc/shadow - name: user - readOnly: true - subPath: etc/shadow - - mountPath: /etc/gshadow - name: user - readOnly: true - subPath: etc/gshadow - - mountPath: /etc/pgbouncer - name: pgbouncer-config - - mountPath: /etc/pgbouncer/pgbouncer.ini - name: pgbouncer - readOnly: true - subPath: pgbouncer.ini - - mountPath: /etc/pgbouncer/auth - name: pgbouncer-config - readOnly: true - subPath: auth - - mountPath: /var/run/secrets/kubernetes.io/serviceaccount - name: kube-api-access-tqsbn - readOnly: true - - command: - - /bin/sh - - -ex - - /templates/start-postgres-exporter.sh - env: - - name: PGAPPNAME - value: prometheus-postgres-exporter - - name: DATA_SOURCE_NAME - value: postgresql://postgres@:5432/postgres?host=/var/run/postgresql&sslmode=disable - - name: PG_EXPORTER_EXTEND_QUERY_PATH - value: /var/opt/postgres-exporter/queries.yaml - - name: PG_EXPORTER_CONSTANT_LABELS - value: cluster_name=pgsql-app1-prod-9xdgn, namespace=vshn-postgresql-pgsql-app1-prod-9xdgn - - name: PG_EXPORTER_LOG_LEVEL - value: info - - name: PG_PORT - value: "5432" - - name: PG_RUN_PATH - value: /var/run/postgresql - - name: TEMPLATES_PATH - value: /templates - - name: LOCAL_BIN_SHELL_UTILS_PATH - value: /usr/local/bin/shell-utils - - name: LOCAL_BIN_SETUP_ARBITRARY_USER_SH_PATH - value: /usr/local/bin/setup-arbitrary-user.sh - - name: LOCAL_BIN_SETUP_SCRIPTS_SH_PATH - value: /usr/local/bin/setup-scripts.sh - - name: LOCAL_BIN_RELOCATE_BINARIES_SH_PATH - value: /usr/local/bin/relocate-binaries.sh - - name: LOCAL_BIN_START_PATRONI_SH_PATH - value: /usr/local/bin/start-patroni.sh - - name: LOCAL_BIN_PATRONICTL_PATH - value: /usr/local/bin/patronictl - - name: LOCAL_BIN_POST_INIT_SH_PATH - value: /usr/local/bin/post-init.sh - - name: LOCAL_BIN_CREATE_BACKUP_SH_PATH - value: /usr/local/bin/create-backup.sh - - name: LOCAL_BIN_EXEC_WITH_ENV_PATH - value: /usr/local/bin/exec-with-env - - name: ETC_PASSWD_PATH - value: /etc/passwd - - name: ETC_GROUP_PATH - value: /etc/group - - name: ETC_SHADOW_PATH - value: /etc/shadow - - name: ETC_GSHADOW_PATH - value: /etc/gshadow - - name: LOCAL_BIN_SET_DBOPS_RUNNING_SH_PATH - value: /usr/local/bin/set-dbops-running.sh - - name: LOCAL_BIN_RUN_DBOPS_SH_PATH - value: /usr/local/bin/run-dbops.sh - - name: LOCAL_BIN_SET_DBOPS_RESULT_SH_PATH - value: /usr/local/bin/set-dbops-result.sh - - name: LOCAL_BIN_RUN_PGBENCH_SH_PATH - value: /usr/local/bin/dbops/pgbench/run-pgbench.sh - - name: LOCAL_BIN_SET_PGBENCH_RESULT_SH_PATH - value: /usr/local/bin/dbops/pgbench/set-pgbench-result.sh - - name: LOCAL_BIN_RUN_VACUUM_SH_PATH - value: /usr/local/bin/dbops/vacuum/run-vacuum.sh - - name: LOCAL_BIN_RUN_REPACK_SH_PATH - value: /usr/local/bin/dbops/repack/run-repack.sh - - name: LOCAL_BIN_RUN_MAJOR_VERSION_UPGRADE_SH_PATH - value: /usr/local/bin/dbops/major-version-upgrade/run-major-version-upgrade.sh - - name: LOCAL_BIN_RUN_RESTART_SH_PATH - value: /usr/local/bin/dbops/restart/run-restart.sh - - name: LOCAL_BIN_MAJOR_VERSION_UPGRADE_SH_PATH - value: /usr/local/bin/dbops/major-version-upgrade/major-version-upgrade.sh - - name: LOCAL_BIN_RESET_PATRONI_SH_PATH - value: /usr/local/bin/dbops/major-version-upgrade/reset-patroni.sh - - name: LOCAL_BIN_START_FLUENTBIT_SH_PATH - value: /usr/local/bin/start-fluentbit.sh - - name: LOCAL_BIN_START_POSTGRES_EXPORTER_SH_PATH - value: /usr/local/bin/start-postgres-exporter.sh - image: docker.io/ongres/prometheus-postgres-exporter:v0.11.1-build-6.17 - imagePullPolicy: IfNotPresent - name: prometheus-postgres-exporter - ports: - - containerPort: 9187 - name: pgexporter - protocol: TCP - resources: - requests: - cpu: 32m - memory: 256Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - volumeMounts: - - mountPath: /var/run/postgresql - name: socket - - mountPath: /templates - name: templates - - mountPath: /var/opt/postgres-exporter/queries.yaml - name: queries - readOnly: true - subPath: queries.yaml - - mountPath: /etc/passwd - name: user - readOnly: true - subPath: etc/passwd - - mountPath: /etc/group - name: user - readOnly: true - subPath: etc/group - - mountPath: /etc/shadow - name: user - readOnly: true - subPath: etc/shadow - - mountPath: /etc/gshadow - name: user - readOnly: true - subPath: etc/gshadow - - mountPath: /var/run/secrets/kubernetes.io/serviceaccount - name: kube-api-access-tqsbn - readOnly: true - - args: - - -c - - while true; do sleep 10; done - command: - - /bin/sh - image: docker.io/ongres/postgres-util:v14.6-build-6.18 - imagePullPolicy: IfNotPresent - name: postgres-util - resources: - requests: - cpu: 32m - memory: 64Mi - stdin: true - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - tty: true - volumeMounts: - - mountPath: /var/run/postgresql - name: socket - - mountPath: /var/lib/postgresql - name: empty-base - - mountPath: /etc/passwd - name: user - readOnly: true - subPath: etc/passwd - - mountPath: /etc/group - name: user - readOnly: true - subPath: etc/group - - mountPath: /etc/shadow - name: user - readOnly: true - subPath: etc/shadow - - mountPath: /etc/gshadow - name: user - readOnly: true - subPath: etc/gshadow - - mountPath: /var/run/secrets/kubernetes.io/serviceaccount - name: kube-api-access-tqsbn - readOnly: true - - env: - - name: CLUSTER_NAME - value: pgsql-app1-prod-9xdgn - - name: CLUSTER_NAMESPACE - value: vshn-postgresql-pgsql-app1-prod-9xdgn - - name: CLUSTER_CONTROLLER_POD_NAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.name - - name: CLUSTER_CONTROLLER_EXTENSIONS_REPOSITORY_URLS - value: https://extensions.stackgres.io/postgres/repository - - name: CLUSTER_CONTROLLER_SKIP_OVERWRITE_SHARED_LIBRARIES - value: "true" - - name: CLUSTER_CONTROLLER_RECONCILE_PGBOUNCER - value: "true" - - name: CLUSTER_CONTROLLER_RECONCILE_PATRONI - value: "true" - - name: CLUSTER_CONTROLLER_RECONCILE_MANAGED_SQL - value: "true" - - name: CLUSTER_CONTROLLER_LOG_LEVEL - - name: CLUSTER_CONTROLLER_SHOW_STACK_TRACES - - name: APP_OPTS - - name: JAVA_OPTS - - name: DEBUG_CLUSTER_CONTROLLER - - name: DEBUG_CLUSTER_CONTROLLER_SUSPEND - image: docker.io/stackgres/cluster-controller:1.4.0 - imagePullPolicy: IfNotPresent - name: cluster-controller - resources: - requests: - cpu: 250m - memory: 512Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - volumeMounts: - - mountPath: /etc/passwd - name: user - readOnly: true - subPath: etc/passwd - - mountPath: /etc/group - name: user - readOnly: true - subPath: etc/group - - mountPath: /etc/shadow - name: user - readOnly: true - subPath: etc/shadow - - mountPath: /etc/gshadow - name: user - readOnly: true - subPath: etc/gshadow - - mountPath: /var/lib/postgresql - name: pgsql-app1-prod-9xdgn-data - - mountPath: /var/run/postgresql - name: socket - - mountPath: /etc/pgbouncer - name: pgbouncer-config - - mountPath: /etc/patroni - name: patroni-config - - mountPath: /var/run/secrets/kubernetes.io/serviceaccount - name: kube-api-access-tqsbn - readOnly: true - dnsPolicy: ClusterFirst - enableServiceLinks: true - hostname: pgsql-app1-prod-9xdgn-0 - initContainers: - - command: - - /bin/sh - - -ex - - /templates/setup-arbitrary-user.sh - env: - - name: TEMPLATES_PATH - value: /templates - - name: LOCAL_BIN_SHELL_UTILS_PATH - value: /usr/local/bin/shell-utils - - name: LOCAL_BIN_SETUP_ARBITRARY_USER_SH_PATH - value: /usr/local/bin/setup-arbitrary-user.sh - - name: LOCAL_BIN_SETUP_SCRIPTS_SH_PATH - value: /usr/local/bin/setup-scripts.sh - - name: LOCAL_BIN_RELOCATE_BINARIES_SH_PATH - value: /usr/local/bin/relocate-binaries.sh - - name: LOCAL_BIN_START_PATRONI_SH_PATH - value: /usr/local/bin/start-patroni.sh - - name: LOCAL_BIN_PATRONICTL_PATH - value: /usr/local/bin/patronictl - - name: LOCAL_BIN_POST_INIT_SH_PATH - value: /usr/local/bin/post-init.sh - - name: LOCAL_BIN_CREATE_BACKUP_SH_PATH - value: /usr/local/bin/create-backup.sh - - name: LOCAL_BIN_EXEC_WITH_ENV_PATH - value: /usr/local/bin/exec-with-env - - name: ETC_PASSWD_PATH - value: /etc/passwd - - name: ETC_GROUP_PATH - value: /etc/group - - name: ETC_SHADOW_PATH - value: /etc/shadow - - name: ETC_GSHADOW_PATH - value: /etc/gshadow - - name: LOCAL_BIN_SET_DBOPS_RUNNING_SH_PATH - value: /usr/local/bin/set-dbops-running.sh - - name: LOCAL_BIN_RUN_DBOPS_SH_PATH - value: /usr/local/bin/run-dbops.sh - - name: LOCAL_BIN_SET_DBOPS_RESULT_SH_PATH - value: /usr/local/bin/set-dbops-result.sh - - name: LOCAL_BIN_RUN_PGBENCH_SH_PATH - value: /usr/local/bin/dbops/pgbench/run-pgbench.sh - - name: LOCAL_BIN_SET_PGBENCH_RESULT_SH_PATH - value: /usr/local/bin/dbops/pgbench/set-pgbench-result.sh - - name: LOCAL_BIN_RUN_VACUUM_SH_PATH - value: /usr/local/bin/dbops/vacuum/run-vacuum.sh - - name: LOCAL_BIN_RUN_REPACK_SH_PATH - value: /usr/local/bin/dbops/repack/run-repack.sh - - name: LOCAL_BIN_RUN_MAJOR_VERSION_UPGRADE_SH_PATH - value: /usr/local/bin/dbops/major-version-upgrade/run-major-version-upgrade.sh - - name: LOCAL_BIN_RUN_RESTART_SH_PATH - value: /usr/local/bin/dbops/restart/run-restart.sh - - name: LOCAL_BIN_MAJOR_VERSION_UPGRADE_SH_PATH - value: /usr/local/bin/dbops/major-version-upgrade/major-version-upgrade.sh - - name: LOCAL_BIN_RESET_PATRONI_SH_PATH - value: /usr/local/bin/dbops/major-version-upgrade/reset-patroni.sh - - name: LOCAL_BIN_START_FLUENTBIT_SH_PATH - value: /usr/local/bin/start-fluentbit.sh - - name: LOCAL_BIN_START_POSTGRES_EXPORTER_SH_PATH - value: /usr/local/bin/start-postgres-exporter.sh - - name: PG_BASE_PATH - value: /var/lib/postgresql - - name: PG_DATA_PATH - value: /var/lib/postgresql/data - - name: HOME - value: /tmp - image: docker.io/ongres/kubectl:v1.25.2-build-6.17 - imagePullPolicy: IfNotPresent - name: setup-arbitrary-user - resources: - requests: - cpu: 100m - memory: 100Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - volumeMounts: - - mountPath: /templates - name: templates - - mountPath: /local/etc - name: user - subPath: etc - - mountPath: /var/run/secrets/kubernetes.io/serviceaccount - name: kube-api-access-tqsbn - readOnly: true - - command: - - /bin/sh - - -ex - - /templates/setup-scripts.sh - env: - - name: LOCAL_BIN_PATH - value: /usr/local/bin - - name: TEMPLATES_PATH - value: /templates - - name: LOCAL_BIN_SHELL_UTILS_PATH - value: /usr/local/bin/shell-utils - - name: LOCAL_BIN_SETUP_ARBITRARY_USER_SH_PATH - value: /usr/local/bin/setup-arbitrary-user.sh - - name: LOCAL_BIN_SETUP_SCRIPTS_SH_PATH - value: /usr/local/bin/setup-scripts.sh - - name: LOCAL_BIN_RELOCATE_BINARIES_SH_PATH - value: /usr/local/bin/relocate-binaries.sh - - name: LOCAL_BIN_START_PATRONI_SH_PATH - value: /usr/local/bin/start-patroni.sh - - name: LOCAL_BIN_PATRONICTL_PATH - value: /usr/local/bin/patronictl - - name: LOCAL_BIN_POST_INIT_SH_PATH - value: /usr/local/bin/post-init.sh - - name: LOCAL_BIN_CREATE_BACKUP_SH_PATH - value: /usr/local/bin/create-backup.sh - - name: LOCAL_BIN_EXEC_WITH_ENV_PATH - value: /usr/local/bin/exec-with-env - - name: ETC_PASSWD_PATH - value: /etc/passwd - - name: ETC_GROUP_PATH - value: /etc/group - - name: ETC_SHADOW_PATH - value: /etc/shadow - - name: ETC_GSHADOW_PATH - value: /etc/gshadow - - name: LOCAL_BIN_SET_DBOPS_RUNNING_SH_PATH - value: /usr/local/bin/set-dbops-running.sh - - name: LOCAL_BIN_RUN_DBOPS_SH_PATH - value: /usr/local/bin/run-dbops.sh - - name: LOCAL_BIN_SET_DBOPS_RESULT_SH_PATH - value: /usr/local/bin/set-dbops-result.sh - - name: LOCAL_BIN_RUN_PGBENCH_SH_PATH - value: /usr/local/bin/dbops/pgbench/run-pgbench.sh - - name: LOCAL_BIN_SET_PGBENCH_RESULT_SH_PATH - value: /usr/local/bin/dbops/pgbench/set-pgbench-result.sh - - name: LOCAL_BIN_RUN_VACUUM_SH_PATH - value: /usr/local/bin/dbops/vacuum/run-vacuum.sh - - name: LOCAL_BIN_RUN_REPACK_SH_PATH - value: /usr/local/bin/dbops/repack/run-repack.sh - - name: LOCAL_BIN_RUN_MAJOR_VERSION_UPGRADE_SH_PATH - value: /usr/local/bin/dbops/major-version-upgrade/run-major-version-upgrade.sh - - name: LOCAL_BIN_RUN_RESTART_SH_PATH - value: /usr/local/bin/dbops/restart/run-restart.sh - - name: LOCAL_BIN_MAJOR_VERSION_UPGRADE_SH_PATH - value: /usr/local/bin/dbops/major-version-upgrade/major-version-upgrade.sh - - name: LOCAL_BIN_RESET_PATRONI_SH_PATH - value: /usr/local/bin/dbops/major-version-upgrade/reset-patroni.sh - - name: LOCAL_BIN_START_FLUENTBIT_SH_PATH - value: /usr/local/bin/start-fluentbit.sh - - name: LOCAL_BIN_START_POSTGRES_EXPORTER_SH_PATH - value: /usr/local/bin/start-postgres-exporter.sh - - name: BASE_ENV_PATH - value: /etc/env - - name: POSTGRES_PORT - value: "5432" - - name: BASE_SECRET_PATH - value: /etc/env/.secret - - name: HOME - value: /tmp - image: docker.io/ongres/kubectl:v1.25.2-build-6.17 - imagePullPolicy: IfNotPresent - name: setup-scripts - resources: - requests: - cpu: 100m - memory: 100Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - volumeMounts: - - mountPath: /templates - name: templates - - mountPath: /usr/local/bin - name: local-bin - - mountPath: /etc/passwd - name: user - readOnly: true - subPath: etc/passwd - - mountPath: /etc/group - name: user - readOnly: true - subPath: etc/group - - mountPath: /etc/shadow - name: user - readOnly: true - subPath: etc/shadow - - mountPath: /etc/gshadow - name: user - readOnly: true - subPath: etc/gshadow - - mountPath: /var/run/secrets/kubernetes.io/serviceaccount - name: kube-api-access-tqsbn - readOnly: true - - command: - - /bin/sh - - -ex - - /templates/relocate-binaries.sh - env: - - name: PG_BASE_PATH - value: /var/lib/postgresql - - name: PG_DATA_PATH - value: /var/lib/postgresql/data - - name: ETC_PASSWD_PATH - value: /etc/passwd - - name: ETC_GROUP_PATH - value: /etc/group - - name: ETC_SHADOW_PATH - value: /etc/shadow - - name: ETC_GSHADOW_PATH - value: /etc/gshadow - - name: PG_EXTENSIONS_BASE_PATH - value: /var/lib/postgresql/extensions - - name: PG_EXTENSIONS_PATH - value: /var/lib/postgresql/extensions/14/6 - - name: PG_EXTENSIONS_BINARIES_PATH - value: /var/lib/postgresql/extensions/14/6/usr/lib/postgresql/14 - - name: PG_EXTENSIONS_BIN_PATH - value: /var/lib/postgresql/extensions/14/6/usr/lib/postgresql/14/bin - - name: PG_EXTENSIONS_LIB_PATH - value: /var/lib/postgresql/extensions/14/6/usr/lib/postgresql/14/lib - - name: PG_EXTENSIONS_SHARE_PATH - value: /var/lib/postgresql/extensions/14/6/usr/share/postgresql/14 - - name: PG_EXTENSIONS_EXTENSION_PATH - value: /var/lib/postgresql/extensions/14/6/usr/share/postgresql/14/extension - - name: PG_EXTENSIONS_LIB64_PATH - value: /var/lib/postgresql/extensions/14/6/usr/lib64 - - name: PG_LIB64_PATH - value: /usr/lib64 - - name: PG_BINARIES_PATH - value: /usr/lib/postgresql/14.6 - - name: PG_BIN_PATH - value: /usr/lib/postgresql/14.6/bin - - name: PG_LIB_PATH - value: /usr/lib/postgresql/14.6/lib - - name: PG_EXTRA_BIN_PATH - value: /usr/lib/postgresql/14.6/extra/bin - - name: PG_EXTRA_LIB_PATH - value: /usr/lib/postgresql/14.6/extra/lib - - name: PG_SHARE_PATH - value: /usr/share/postgresql/14.6 - - name: PG_EXTENSION_PATH - value: /usr/share/postgresql/14.6/extension - - name: PG_RELOCATED_BASE_PATH - value: /var/lib/postgresql/relocated - - name: PG_RELOCATED_PATH - value: /var/lib/postgresql/relocated/14.6 - - name: PG_RELOCATED_LIB64_PATH - value: /var/lib/postgresql/relocated/14.6/usr/lib64 - - name: PG_RELOCATED_BINARIES_PATH - value: /var/lib/postgresql/relocated/14.6/usr/lib/postgresql/14.6 - - name: PG_RELOCATED_BIN_PATH - value: /var/lib/postgresql/relocated/14.6/usr/lib/postgresql/14.6/bin - - name: PG_RELOCATED_LIB_PATH - value: /var/lib/postgresql/relocated/14.6/usr/lib/postgresql/14.6/lib - - name: PG_RELOCATED_SHARE_PATH - value: /var/lib/postgresql/relocated/14.6/usr/share/postgresql//14.6 - - name: PG_RELOCATED_EXTENSION_PATH - value: /var/lib/postgresql/relocated/14.6/usr/share/postgresql//14.6/extension - - name: PG_UPGRADE_PATH - value: /var/lib/postgresql/upgrade - - name: PATH - value: /usr/lib/postgresql/14.6/bin:/usr/lib/postgresql/14.6/extra/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin - - name: LD_LIBRARY_PATH - value: /usr/lib/postgresql/14.6/extra/lib - image: docker.io/ongres/patroni:v2.1.4-pg14.6-build-6.18 - imagePullPolicy: IfNotPresent - name: relocate-binaries - resources: - requests: - cpu: 100m - memory: 100Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - volumeMounts: - - mountPath: /templates - name: templates - - mountPath: /var/lib/postgresql - name: pgsql-app1-prod-9xdgn-data - - mountPath: /var/run/secrets/kubernetes.io/serviceaccount - name: kube-api-access-tqsbn - readOnly: true - - command: - - /bin/sh - - -exc - - |- - mkdir -p '/etc/pgbouncer/auth' - test -f '/etc/pgbouncer/pgbouncer-admin-password' - test -f '/etc/pgbouncer/pgbouncer-stats-password' - PGBOUNCER_ADMIN_MD5="$({ - cat '/etc/pgbouncer/pgbouncer-admin-password' - printf '%s' 'pgbouncer_admin' - } | md5sum | cut -d ' ' -f 1)" - PGBOUNCER_STATS_MD5="$({ - cat '/etc/pgbouncer/pgbouncer-stats-password' - printf '%s' 'pgbouncer_stats' - } | md5sum | cut -d ' ' -f 1)" - ( - printf '%s\n' "\"pgbouncer_admin\" \"md5$PGBOUNCER_ADMIN_MD5\"" - printf '%s\n' "\"pgbouncer_stats\" \"md5$PGBOUNCER_STATS_MD5\"" - ) > '/etc/pgbouncer/auth/users.txt' - image: docker.io/ongres/kubectl:v1.25.2-build-6.17 - imagePullPolicy: IfNotPresent - name: pgbouncer-auth-file - resources: - requests: - cpu: 100m - memory: 100Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - volumeMounts: - - mountPath: /etc/pgbouncer - name: pgbouncer-config - - mountPath: /etc/pgbouncer/pgbouncer-admin-password - name: pgbouncer-secrets - readOnly: true - subPath: pgbouncer-admin-password - - mountPath: /etc/pgbouncer/pgbouncer-stats-password - name: pgbouncer-secrets - readOnly: true - subPath: pgbouncer-stats-password - - mountPath: /var/run/secrets/kubernetes.io/serviceaccount - name: kube-api-access-tqsbn - readOnly: true - - env: - - name: COMMAND - value: run-reconciliation-cycle - - name: CLUSTER_NAME - value: pgsql-app1-prod-9xdgn - - name: CLUSTER_NAMESPACE - value: vshn-postgresql-pgsql-app1-prod-9xdgn - - name: CLUSTER_CONTROLLER_POD_NAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.name - - name: CLUSTER_CONTROLLER_EXTENSIONS_REPOSITORY_URLS - value: https://extensions.stackgres.io/postgres/repository - - name: CLUSTER_CONTROLLER_SKIP_OVERWRITE_SHARED_LIBRARIES - value: "false" - - name: CLUSTER_CONTROLLER_RECONCILE_PGBOUNCER - value: "false" - - name: CLUSTER_CONTROLLER_RECONCILE_PATRONI - value: "false" - - name: CLUSTER_CONTROLLER_RECONCILE_MANAGED_SQL - value: "true" - - name: CLUSTER_CONTROLLER_LOG_LEVEL - - name: CLUSTER_CONTROLLER_SHOW_STACK_TRACES - - name: APP_OPTS - - name: DEBUG_CLUSTER_CONTROLLER - - name: DEBUG_CLUSTER_CONTROLLER_SUSPEND - image: docker.io/stackgres/cluster-controller:1.4.0 - imagePullPolicy: IfNotPresent - name: cluster-reconciliation-cycle - resources: - requests: - cpu: 100m - memory: 100Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - volumeMounts: - - mountPath: /var/lib/postgresql - name: pgsql-app1-prod-9xdgn-data - - mountPath: /var/run/secrets/kubernetes.io/serviceaccount - name: kube-api-access-tqsbn - readOnly: true - nodeName: kindev-worker3 - preemptionPolicy: PreemptLowerPriority - priority: 0 - restartPolicy: Always - schedulerName: default-scheduler - securityContext: - fsGroup: 999 - runAsGroup: 999 - runAsNonRoot: true - runAsUser: 999 - serviceAccount: pgsql-app1-prod-9xdgn-patroni - serviceAccountName: pgsql-app1-prod-9xdgn-patroni - shareProcessNamespace: true - subdomain: pgsql-app1-prod-9xdgn - terminationGracePeriodSeconds: 60 - tolerations: - - effect: NoExecute - key: node.kubernetes.io/not-ready - operator: Exists - tolerationSeconds: 300 - - effect: NoExecute - key: node.kubernetes.io/unreachable - operator: Exists - tolerationSeconds: 300 - volumes: - - name: pgsql-app1-prod-9xdgn-data - persistentVolumeClaim: - claimName: pgsql-app1-prod-9xdgn-data-pgsql-app1-prod-9xdgn-0 - - emptyDir: - medium: Memory - name: socket - - emptyDir: - medium: Memory - name: dshm - - emptyDir: {} - name: log - - emptyDir: {} - name: local-bin - - configMap: - defaultMode: 444 - name: pgsql-app1-prod-9xdgn - name: patroni-env - - name: patroni-secret-env - secret: - defaultMode: 400 - secretName: pgsql-app1-prod-9xdgn - - emptyDir: {} - name: patroni-config - - configMap: - defaultMode: 444 - name: pgsql-app1-prod-9xdgn-backup - name: backup-env - - name: backup-secret - secret: - defaultMode: 444 - secretName: pgsql-app1-prod-9xdgn-backup - - configMap: - defaultMode: 420 - name: pgsql-app1-prod-9xdgn-replicate - name: replicate-env - - name: replicate-secret - secret: - defaultMode: 420 - secretName: pgsql-app1-prod-9xdgn-replicate - - emptyDir: {} - name: user - - configMap: - defaultMode: 420 - name: pgsql-app1-prod-9xdgn-envoy-config - name: envoy - - emptyDir: {} - name: pgbouncer-config - - configMap: - defaultMode: 420 - name: pgsql-app1-prod-9xdgn-connection-pooling-config - name: pgbouncer - - configMap: - defaultMode: 444 - name: pgsql-app1-prod-9xdgn-templates - name: templates - - configMap: - defaultMode: 420 - name: pgsql-app1-prod-9xdgn-prometheus-postgres-exporter-config - name: queries - - emptyDir: {} - name: empty-base - - name: pgbouncer-secrets - secret: - defaultMode: 420 - secretName: pgsql-app1-prod-9xdgn - - name: kube-api-access-tqsbn - projected: - defaultMode: 420 - sources: - - serviceAccountToken: - expirationSeconds: 3607 - path: token - - configMap: - items: - - key: ca.crt - path: ca.crt - name: kube-root-ca.crt - - downwardAPI: - items: - - fieldRef: - apiVersion: v1 - fieldPath: metadata.namespace - path: namespace -status: - conditions: - - lastProbeTime: null - lastTransitionTime: "2023-02-10T09:55:57Z" - status: "True" - type: Initialized - - lastProbeTime: null - lastTransitionTime: "2023-02-10T09:55:22Z" - message: 'containers with unready status: [patroni envoy pgbouncer prometheus-postgres-exporter - postgres-util cluster-controller]' - reason: ContainersNotReady - status: "False" - type: Ready - - lastProbeTime: null - lastTransitionTime: "2023-02-10T09:55:22Z" - message: 'containers with unready status: [patroni envoy pgbouncer prometheus-postgres-exporter - postgres-util cluster-controller]' - reason: ContainersNotReady - status: "False" - type: ContainersReady - - lastProbeTime: null - lastTransitionTime: "2023-02-10T09:55:22Z" - status: "True" - type: PodScheduled - containerStatuses: - - image: docker.io/stackgres/cluster-controller:1.4.0 - imageID: "" - lastState: {} - name: cluster-controller - ready: false - restartCount: 0 - started: false - state: - waiting: - reason: PodInitializing - - image: docker.io/ongres/envoy:v1.24.0-build-6.18 - imageID: "" - lastState: {} - name: envoy - ready: false - restartCount: 0 - started: false - state: - waiting: - reason: PodInitializing - - image: docker.io/ongres/patroni:v2.1.4-pg14.6-build-6.18 - imageID: "" - lastState: {} - name: patroni - ready: false - restartCount: 0 - started: false - state: - waiting: - reason: PodInitializing - - image: docker.io/ongres/pgbouncer:v1.17.0-build-6.17 - imageID: "" - lastState: {} - name: pgbouncer - ready: false - restartCount: 0 - started: false - state: - waiting: - reason: PodInitializing - - image: docker.io/ongres/postgres-util:v14.6-build-6.18 - imageID: "" - lastState: {} - name: postgres-util - ready: false - restartCount: 0 - started: false - state: - waiting: - reason: PodInitializing - - image: docker.io/ongres/prometheus-postgres-exporter:v0.11.1-build-6.17 - imageID: "" - lastState: {} - name: prometheus-postgres-exporter - ready: false - restartCount: 0 - started: false - state: - waiting: - reason: PodInitializing - hostIP: 172.18.0.2 - initContainerStatuses: - - containerID: containerd://73904376b3b4587c447ff9e370a8f6265b5698923f36489658c3f51b2f7256f9 - image: docker.io/ongres/kubectl:v1.25.2-build-6.17 - imageID: docker.io/ongres/kubectl@sha256:450a8871fbacdfce2600b7d168a6046404db18f62ff7102e0bc6aa37933f4967 - lastState: {} - name: setup-arbitrary-user - ready: true - restartCount: 0 - state: - terminated: - containerID: containerd://73904376b3b4587c447ff9e370a8f6265b5698923f36489658c3f51b2f7256f9 - exitCode: 0 - finishedAt: "2023-02-10T09:55:31Z" - reason: Completed - startedAt: "2023-02-10T09:55:31Z" - - containerID: containerd://2fc66d187eba1d296fd0ae05ed61d6c465b2e0c4f6c037af08d93a8a6d7e0f0e - image: docker.io/ongres/kubectl:v1.25.2-build-6.17 - imageID: docker.io/ongres/kubectl@sha256:450a8871fbacdfce2600b7d168a6046404db18f62ff7102e0bc6aa37933f4967 - lastState: {} - name: setup-scripts - ready: true - restartCount: 0 - state: - terminated: - containerID: containerd://2fc66d187eba1d296fd0ae05ed61d6c465b2e0c4f6c037af08d93a8a6d7e0f0e - exitCode: 0 - finishedAt: "2023-02-10T09:55:33Z" - reason: Completed - startedAt: "2023-02-10T09:55:33Z" - - containerID: containerd://a88f6fa6cbcf4bfb2db348f9816c028ddf76be97ce1e068ae22faf031397e93f - image: docker.io/ongres/patroni:v2.1.4-pg14.6-build-6.18 - imageID: docker.io/ongres/patroni@sha256:6cd573bc96d372f61a5294a452aabb3c45a3f9ab9a0f8301ccab93c914a6e6c7 - lastState: {} - name: relocate-binaries - ready: true - restartCount: 0 - state: - terminated: - containerID: containerd://a88f6fa6cbcf4bfb2db348f9816c028ddf76be97ce1e068ae22faf031397e93f - exitCode: 0 - finishedAt: "2023-02-10T09:55:47Z" - reason: Completed - startedAt: "2023-02-10T09:55:46Z" - - containerID: containerd://349b6eceefe081a080a37a4e749e3f4df320a42c3b0f117c77469af411084004 - image: docker.io/ongres/kubectl:v1.25.2-build-6.17 - imageID: docker.io/ongres/kubectl@sha256:450a8871fbacdfce2600b7d168a6046404db18f62ff7102e0bc6aa37933f4967 - lastState: {} - name: pgbouncer-auth-file - ready: true - restartCount: 0 - state: - terminated: - containerID: containerd://349b6eceefe081a080a37a4e749e3f4df320a42c3b0f117c77469af411084004 - exitCode: 0 - finishedAt: "2023-02-10T09:55:50Z" - reason: Completed - startedAt: "2023-02-10T09:55:50Z" - - containerID: containerd://ed5d8656f6b0f32ec9c0f09f79d48c73a71d5cfcc3ae930a403dfc47db521eca - image: docker.io/stackgres/cluster-controller:1.4.0 - imageID: docker.io/stackgres/cluster-controller@sha256:75a79a949d3f673fea15215db65dc0854b269f4cea4e15bf85789eb3742166ac - lastState: {} - name: cluster-reconciliation-cycle - ready: true - restartCount: 0 - state: - terminated: - containerID: containerd://ed5d8656f6b0f32ec9c0f09f79d48c73a71d5cfcc3ae930a403dfc47db521eca - exitCode: 0 - finishedAt: "2023-02-10T09:55:57Z" - reason: Completed - startedAt: "2023-02-10T09:55:56Z" - phase: Pending - podIP: 10.244.2.7 - podIPs: - - ip: 10.244.2.7 - qosClass: Burstable - startTime: "2023-02-10T09:55:22Z" diff --git a/renovate.json b/renovate.json index 0cdde1aab..1be537acc 100644 --- a/renovate.json +++ b/renovate.json @@ -9,12 +9,18 @@ ], "postUpgradeTasks": { "commands": [ - "make gen-golden-all" + "make -C component gen-golden-all", + "make -C package gen-golden-all" + ], + "fileFilters": [ + "component/tests/golden/**", + "package/tests/golden/**" ], - "fileFilters": [ "tests/golden/**" ], "executionMode": "update" }, - "suppressNotifications": [ "artifactErrors" ], + "suppressNotifications": [ + "artifactErrors" + ], "labels": [ "dependency" ]