diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0f311642..7c5b19d5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -79,7 +79,7 @@ jobs: arch: ${{ matrix.arch }} reproducible: report instructions: | - go build -a -ldflags="${{ env.LD_FLAGS }}" -trimpath -o $BIN_PATH main.go + go build -a -ldflags="${{ env.LD_FLAGS }}" -trimpath -o $BIN_PATH cmd/main.go build-docker: name: Docker ${{ matrix.arch }} build diff --git a/Dockerfile b/Dockerfile index cd77a05a..34926c3e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,7 +7,7 @@ # Every target has a BIN_NAME argument that must be provided via --build-arg=BIN_NAME= # when building. -ARG GO_VERSION=1.22 +ARG GO_VERSION=1.23 # =================================== # @@ -33,13 +33,12 @@ COPY go.sum go.sum RUN go mod download -COPY main.go main.go COPY api/ api/ -COPY controllers/ controllers/ +COPY cmd/main.go cmd/main.go COPY internal/ internal/ COPY version/ version/ -RUN CGO_ENABLED=0 GOOS=${TARGETOS:-linux} GOARCH=${TARGETARCH} go build -a -trimpath -o $BIN_NAME main.go +RUN CGO_ENABLED=0 GOOS=${TARGETOS:-linux} GOARCH=${TARGETARCH} go build -a -trimpath -o $BIN_NAME cmd/main.go # dev runs the binary from devbuild # ----------------------------------- diff --git a/Makefile b/Makefile index b5a29d09..cbc4c982 100644 --- a/Makefile +++ b/Makefile @@ -46,6 +46,9 @@ ifeq ($(USE_IMAGE_DIGESTS), true) BUNDLE_GEN_FLAGS += --use-image-digests endif +# Set the Operator SDK version to use. By default, what is installed on the system is used. +# This is useful for CI or a project to utilize a specific version of the operator-sdk toolkit. +OPERATOR_SDK_VERSION ?= v1.37.0 # Image URL to use all building/pushing image targets IMG ?= controller:latest # ENVTEST_K8S_VERSION refers to the version of kubebuilder assets to be downloaded by envtest binary. @@ -58,8 +61,13 @@ else GOBIN=$(shell go env GOBIN) endif +# CONTAINER_TOOL defines the container tool to be used for building images. +# Be aware that the target commands are only tested with Docker which is +# scaffolded by default. However, you might want to replace it to use other +# tools. (i.e. podman) +CONTAINER_TOOL ?= docker + # Setting SHELL to bash allows bash commands to be executed by recipes. -# This is a requirement for 'setup-envtest.sh' in the test target. # Options are set to exit when a recipe line exits non-zero or a piped command fails. SHELL = /usr/bin/env bash -o pipefail .SHELLFLAGS = -ec @@ -71,7 +79,7 @@ all: build # The help target prints out all targets with their descriptions organized # beneath their categories. The categories are represented by '##@' and the -# target descriptions by '##'. The awk commands is responsible for reading the +# target descriptions by '##'. The awk command is responsible for reading the # entire set of makefiles included in this invocation, looking for lines of the # file as xyz: ## something, and then pretty-format the target and help. Then, # if there's a line with ##@ something, that gets pretty-printed as a category. @@ -125,7 +133,7 @@ copywrite: install-copywrite ## Run copywrite against code. .PHONY: test test: manifests generate fmt vet copywrite envtest ## Run tests. - KUBEBUILDER_ASSETS="$(shell $(ENVTEST) use $(ENVTEST_K8S_VERSION) -p path)" go test -timeout 30m -v ./controllers -coverprofile cover.out ${TESTARGS} + KUBEBUILDER_ASSETS="$(shell $(ENVTEST) use $(ENVTEST_K8S_VERSION) --bin-dir $(LOCALBIN) -p path)" go test -timeout 30m -v ./internal/controller -coverprofile cover.out ${TESTARGS} .PHONY: test-api test-api: fmt vet copywrite ## Run API tests. @@ -135,23 +143,57 @@ test-api: fmt vet copywrite ## Run API tests. test-internal: fmt vet copywrite ## Run internal/* tests. go test -timeout 5m -count 1 -v ./internal/* +.PHONY: lint +lint: golangci-lint ## Run golangci-lint linter & yamllint + $(GOLANGCI_LINT) run + +.PHONY: lint-fix +lint-fix: golangci-lint ## Run golangci-lint linter and perform fixes + $(GOLANGCI_LINT) run --fix + ##@ Build .PHONY: build build: manifests generate fmt vet copywrite ## Build manager binary. - go build -o bin/manager main.go + go build -o bin/manager ./cmd/main.go .PHONY: run run: manifests generate fmt vet copywrite ## Run a controller from your host. - go run ./main.go + go run ./cmd/main.go +# If you wish to build the manager image targeting other platforms you can use the --platform flag. +# (i.e. docker build --platform linux/arm64). However, you must enable docker buildKit for it. +# More info: https://docs.docker.com/develop/develop-images/build_enhancements/ .PHONY: docker-build -docker-build: test ## Build docker image with the manager. - docker build -t ${IMG} . +docker-build: ## Build docker image with the manager. + $(CONTAINER_TOOL) build -t ${IMG} . .PHONY: docker-push docker-push: ## Push docker image with the manager. - docker push ${IMG} + $(CONTAINER_TOOL) push ${IMG} + +# PLATFORMS defines the target platforms for the manager image be built to provide support to multiple +# architectures. (i.e. make docker-buildx IMG=myregistry/mypoperator:0.0.1). To use this option you need to: +# - be able to use docker buildx. More info: https://docs.docker.com/build/buildx/ +# - have enabled BuildKit. More info: https://docs.docker.com/develop/develop-images/build_enhancements/ +# - be able to push the image to your registry (i.e. if you do not set a valid value via IMG=> then the export will fail) +# To adequately provide solutions that are compatible with multiple platforms, you should consider using this option. +PLATFORMS ?= linux/arm64,linux/amd64 +.PHONY: docker-buildx +docker-buildx: ## Build and push docker image for the manager for cross-platform support + # copy existing Dockerfile and insert --platform=${BUILDPLATFORM} into Dockerfile.cross, and preserve the original Dockerfile + sed -e '1 s/\(^FROM\)/FROM --platform=\$$\{BUILDPLATFORM\}/; t' -e ' 1,// s//FROM --platform=\$$\{BUILDPLATFORM\}/' Dockerfile > Dockerfile.cross + - $(CONTAINER_TOOL) buildx create --name project-v3-builder + $(CONTAINER_TOOL) buildx use project-v3-builder + - $(CONTAINER_TOOL) buildx build --push --platform=$(PLATFORMS) --tag ${IMG} -f Dockerfile.cross . + - $(CONTAINER_TOOL) buildx rm project-v3-builder + rm Dockerfile.cross + +.PHONY: build-installer +build-installer: manifests generate kustomize ## Generate a consolidated YAML with CRDs and deployment. + mkdir -p dist + cd config/manager && $(KUSTOMIZE) edit set image controller=${IMG} + $(KUSTOMIZE) build config/default > dist/install.yaml ##@ Deployment @@ -161,20 +203,20 @@ endif .PHONY: install install: manifests kustomize ## Install CRDs into the K8s cluster specified in ~/.kube/config. - $(KUSTOMIZE) build config/crd | kubectl apply --server-side -f - + $(KUSTOMIZE) build config/crd | $(KUBECTL) apply --server-side -f - .PHONY: uninstall uninstall: manifests kustomize ## Uninstall CRDs from the K8s cluster specified in ~/.kube/config. Call with ignore-not-found=true to ignore resource not found errors during deletion. - $(KUSTOMIZE) build config/crd | kubectl delete --ignore-not-found=$(ignore-not-found) -f - + $(KUSTOMIZE) build config/crd | $(KUBECTL) delete --ignore-not-found=$(ignore-not-found) -f - .PHONY: deploy deploy: manifests kustomize ## Deploy controller to the K8s cluster specified in ~/.kube/config. cd config/manager && $(KUSTOMIZE) edit set image controller=${IMG} - $(KUSTOMIZE) build config/default | kubectl apply -f - + $(KUSTOMIZE) build config/default | $(KUBECTL) apply -f - .PHONY: undeploy undeploy: ## Undeploy controller from the K8s cluster specified in ~/.kube/config. Call with ignore-not-found=true to ignore resource not found errors during deletion. - $(KUSTOMIZE) build config/default | kubectl delete --ignore-not-found=$(ignore-not-found) -f - + $(KUSTOMIZE) build config/default | $(KUBECTL) delete --ignore-not-found=$(ignore-not-found) -f - ##@ Build Dependencies @@ -184,57 +226,96 @@ $(LOCALBIN): mkdir -p $(LOCALBIN) ## Tool Binaries -KUSTOMIZE ?= $(LOCALBIN)/kustomize -CONTROLLER_GEN ?= $(LOCALBIN)/controller-gen -ENVTEST ?= $(LOCALBIN)/setup-envtest -CRD_REF_DOCS ?= $(LOCALBIN)/crd-ref-docs -HELM_DOCS ?= $(LOCALBIN)/helm-docs -HASHICORP_COPYWRITE ?= $(LOCALBIN)/copywrite +KUBECTL ?= kubectl +KUSTOMIZE ?= $(LOCALBIN)/kustomize-$(KUSTOMIZE_VERSION) +CONTROLLER_GEN ?= $(LOCALBIN)/controller-gen-$(CONTROLLER_TOOLS_VERSION) +ENVTEST ?= $(LOCALBIN)/setup-envtest-$(ENVTEST_VERSION) +CRD_REF_DOCS ?= $(LOCALBIN)/crd-ref-docs-$(CRD_REF_DOCS_VERSION) +HELM_DOCS ?= $(LOCALBIN)/helm-docs-$(HELM_DOCS_VERSION) +HASHICORP_COPYWRITE ?= $(LOCALBIN)/copywrite-$(HASHICORP_COPYWRITE_VERSION) +GOLANGCI_LINT = $(LOCALBIN)/golangci-lint-$(GOLANGCI_LINT_VERSION) ## Tool Versions -KUSTOMIZE_VERSION ?= v5.0.1 +KUSTOMIZE_VERSION ?= v5.3.0 CONTROLLER_TOOLS_VERSION ?= v0.14.0 +ENVTEST_VERSION ?= release-0.17 CRD_REF_DOCS_VERSION ?= v0.0.12 HELM_DOCS_VERSION ?= v1.12.0 -HASHICORP_COPYWRITE_VERSION ?= 0.17.0 +HASHICORP_COPYWRITE_VERSION ?= v0.19.0 +GOLANGCI_LINT_VERSION ?= v1.57.2 -KUSTOMIZE_INSTALL_SCRIPT ?= "https://raw.githubusercontent.com/kubernetes-sigs/kustomize/master/hack/install_kustomize.sh" .PHONY: kustomize kustomize: $(KUSTOMIZE) ## Download kustomize locally if necessary. $(KUSTOMIZE): $(LOCALBIN) - curl -s $(KUSTOMIZE_INSTALL_SCRIPT) | bash -s -- $(subst v,,$(KUSTOMIZE_VERSION)) $(LOCALBIN) + $(call go-install-tool,$(KUSTOMIZE),sigs.k8s.io/kustomize/kustomize/v5,$(KUSTOMIZE_VERSION)) .PHONY: controller-gen controller-gen: $(CONTROLLER_GEN) ## Download controller-gen locally if necessary. $(CONTROLLER_GEN): $(LOCALBIN) - GOBIN=$(LOCALBIN) go install sigs.k8s.io/controller-tools/cmd/controller-gen@$(CONTROLLER_TOOLS_VERSION) + $(call go-install-tool,$(CONTROLLER_GEN),sigs.k8s.io/controller-tools/cmd/controller-gen,$(CONTROLLER_TOOLS_VERSION)) .PHONY: envtest -envtest: $(ENVTEST) ## Download envtest-setup locally if necessary. +envtest: $(ENVTEST) ## Download setup-envtest locally if necessary. $(ENVTEST): $(LOCALBIN) - GOBIN=$(LOCALBIN) go install sigs.k8s.io/controller-runtime/tools/setup-envtest@latest + $(call go-install-tool,$(ENVTEST),sigs.k8s.io/controller-runtime/tools/setup-envtest,$(ENVTEST_VERSION)) + +.PHONY: golangci-lint +golangci-lint: $(GOLANGCI_LINT) ## Download golangci-lint locally if necessary. +$(GOLANGCI_LINT): $(LOCALBIN) + $(call go-install-tool,$(GOLANGCI_LINT),github.com/golangci/golangci-lint/cmd/golangci-lint,${GOLANGCI_LINT_VERSION}) .PHONY: crd-ref-docs crd-ref-docs: $(CRD_REF_DOCS) ## Download crd-ref-docs locally if necessary. $(CRD_REF_DOCS): $(LOCALBIN) - GOBIN=$(LOCALBIN) go install github.com/elastic/crd-ref-docs@$(CRD_REF_DOCS_VERSION) + $(call go-install-tool,$(CRD_REF_DOCS),github.com/elastic/crd-ref-docs,$(CRD_REF_DOCS_VERSION)) .PHONY: install-helm-docs install-helm-docs: $(HELM_DOCS) ## Download helm-docs locally if necessary. $(HELM_DOCS): $(LOCALBIN) - GOBIN=$(LOCALBIN) go install github.com/norwoodj/helm-docs/cmd/helm-docs@$(HELM_DOCS_VERSION) + $(call go-install-tool,$(HELM_DOCS),github.com/norwoodj/helm-docs/cmd/helm-docs,$(HELM_DOCS_VERSION)) .PHONY: install-copywrite install-copywrite: $(HASHICORP_COPYWRITE) ## Download HashiCorp copywrite locally if necessary. $(HASHICORP_COPYWRITE): $(LOCALBIN) - GOBIN=$(LOCALBIN) go install github.com/hashicorp/copywrite@v$(HASHICORP_COPYWRITE_VERSION) + $(call go-install-tool,$(HASHICORP_COPYWRITE),github.com/hashicorp/copywrite,$(HASHICORP_COPYWRITE_VERSION)) + +# go-install-tool will 'go install' any package with custom target and name of binary, if it doesn't exist +# $1 - target path with name of binary (ideally with version) +# $2 - package url which can be installed +# $3 - specific version of package +define go-install-tool +@[ -f $(1) ] || { \ +set -e; \ +package=$(2)@$(3) ;\ +echo "Downloading $${package}" ;\ +GOBIN=$(LOCALBIN) go install $${package} ;\ +mv "$$(echo "$(1)" | sed "s/-$(3)$$//")" $(1) ;\ +} +endef + +.PHONY: operator-sdk +OPERATOR_SDK ?= $(LOCALBIN)/operator-sdk +operator-sdk: ## Download operator-sdk locally if necessary. +ifeq (,$(wildcard $(OPERATOR_SDK))) +ifeq (, $(shell which operator-sdk 2>/dev/null)) + @{ \ + set -e ;\ + mkdir -p $(dir $(OPERATOR_SDK)) ;\ + OS=$(shell go env GOOS) && ARCH=$(shell go env GOARCH) && \ + curl -sSLo $(OPERATOR_SDK) https://github.com/operator-framework/operator-sdk/releases/download/$(OPERATOR_SDK_VERSION)/operator-sdk_$${OS}_$${ARCH} ;\ + chmod +x $(OPERATOR_SDK) ;\ + } +else +OPERATOR_SDK = $(shell which operator-sdk) +endif +endif .PHONY: bundle -bundle: manifests kustomize ## Generate bundle manifests and metadata, then validate generated files. - operator-sdk generate kustomize manifests -q +bundle: manifests kustomize operator-sdk ## Generate bundle manifests and metadata, then validate generated files. + $(OPERATOR_SDK) generate kustomize manifests -q cd config/manager && $(KUSTOMIZE) edit set image controller=$(IMG) - $(KUSTOMIZE) build config/manifests | operator-sdk generate bundle $(BUNDLE_GEN_FLAGS) - operator-sdk bundle validate ./bundle + $(KUSTOMIZE) build config/manifests | $(OPERATOR_SDK) generate bundle $(BUNDLE_GEN_FLAGS) + $(OPERATOR_SDK) bundle validate ./bundle .PHONY: bundle-build bundle-build: ## Build the bundle image. @@ -245,7 +326,7 @@ bundle-push: ## Push the bundle image. $(MAKE) docker-push IMG=$(BUNDLE_IMG) .PHONY: opm -OPM = ./bin/opm +OPM = $(LOCALBIN)/opm opm: ## Download opm locally if necessary. ifeq (,$(wildcard $(OPM))) ifeq (,$(shell which opm 2>/dev/null)) diff --git a/PROJECT b/PROJECT index a668d09d..4796c6d5 100644 --- a/PROJECT +++ b/PROJECT @@ -5,12 +5,12 @@ componentConfig: true domain: terraform.io layout: -- go.kubebuilder.io/v3 +- go.kubebuilder.io/v4 plugins: manifests.sdk.operatorframework.io/v2: {} scorecard.sdk.operatorframework.io/v2: {} -projectName: terraform-cloud-operator -repo: github.com/hashicorp/terraform-cloud-operator +projectName: hcp-terraform-operator +repo: github.com/hashicorp/hcp-terraform-operator resources: - api: crdVersion: v1 @@ -19,7 +19,7 @@ resources: domain: terraform.io group: app kind: Workspace - path: github.com/hashicorp/terraform-cloud-operator/api/v1alpha2 + path: github.com/hashicorp/hcp-terraform-operator/api/v1alpha2 version: v1alpha2 - api: crdVersion: v1 @@ -28,7 +28,7 @@ resources: domain: terraform.io group: app kind: Module - path: github.com/hashicorp/terraform-cloud-operator/api/v1alpha2 + path: github.com/hashicorp/hcp-terraform-operator/api/v1alpha2 version: v1alpha2 - api: crdVersion: v1 @@ -37,7 +37,7 @@ resources: domain: terraform.io group: app kind: AgentPool - path: github.com/hashicorp/terraform-cloud-operator/api/v1alpha2 + path: github.com/hashicorp/hcp-terraform-operator/api/v1alpha2 version: v1alpha2 - api: crdVersion: v1 @@ -46,6 +46,6 @@ resources: domain: terraform.io group: app kind: Project - path: github.com/hashicorp/terraform-cloud-operator/api/v1alpha2 + path: github.com/hashicorp/hcp-terraform-operator/api/v1alpha2 version: v1alpha2 version: "3" diff --git a/charts/hcp-terraform-operator/templates/ca_secret.yaml b/charts/hcp-terraform-operator/templates/ca_secret.yaml index 5b718869..145cbadd 100644 --- a/charts/hcp-terraform-operator/templates/ca_secret.yaml +++ b/charts/hcp-terraform-operator/templates/ca_secret.yaml @@ -8,7 +8,7 @@ metadata: name: {{ .Release.Name }}-ca-certificates namespace: {{ .Release.Namespace }} data: - ca-certificates: |- -{{ .Files.Get .Values.customCAcertificates | indent 4 }} + ca-certificates: |- + {{- .Files.Get .Values.customCAcertificates | nindent 4 -}} {{- end }} diff --git a/main.go b/cmd/main.go similarity index 91% rename from main.go rename to cmd/main.go index 5b861f04..0480efc5 100644 --- a/main.go +++ b/cmd/main.go @@ -31,7 +31,7 @@ import ( "github.com/go-logr/zapr" appv1alpha2 "github.com/hashicorp/hcp-terraform-operator/api/v1alpha2" - "github.com/hashicorp/hcp-terraform-operator/controllers" + "github.com/hashicorp/hcp-terraform-operator/internal/controller" "github.com/hashicorp/hcp-terraform-operator/version" //+kubebuilder:scaffold:imports ) @@ -65,25 +65,25 @@ func main() { var agentPoolWorkers int flag.IntVar(&agentPoolWorkers, "agent-pool-workers", 1, "The number of the Agent Pool controller workers.") - flag.DurationVar(&controllers.AgentPoolSyncPeriod, "agent-pool-sync-period", 30*time.Second, + flag.DurationVar(&controller.AgentPoolSyncPeriod, "agent-pool-sync-period", 30*time.Second, "The minimum frequency at which watched agent pool resources are reconciled. Format: 5s, 1m, etc.") // MODULE CONTROLLER OPTIONS var moduleWorkers int flag.IntVar(&moduleWorkers, "module-workers", 1, "The number of the Module controller workers.") - flag.DurationVar(&controllers.ModuleSyncPeriod, "module-sync-period", 5*time.Minute, + flag.DurationVar(&controller.ModuleSyncPeriod, "module-sync-period", 5*time.Minute, "The minimum frequency at which watched workspace resources are reconciled. Format: 5s, 1m, etc.") // PROJECT CONTROLLER OPTIONS var projectWorkers int flag.IntVar(&projectWorkers, "project-workers", 1, "The number of the Project controller workers.") - flag.DurationVar(&controllers.ProjectSyncPeriod, "project-sync-period", 5*time.Minute, + flag.DurationVar(&controller.ProjectSyncPeriod, "project-sync-period", 5*time.Minute, "The minimum frequency at which watched project resources are reconciled. Format: 5s, 1m, etc.") // WORKSPACE CONTROLLER OPTIONS var workspaceWorkers int flag.IntVar(&workspaceWorkers, "workspace-workers", 1, "The number of the Workspace controller workers.") - flag.DurationVar(&controllers.WorkspaceSyncPeriod, "workspace-sync-period", 5*time.Minute, + flag.DurationVar(&controller.WorkspaceSyncPeriod, "workspace-sync-period", 5*time.Minute, "The minimum frequency at which watched workspace resources are reconciled. Format: 5s, 1m, etc.") // TODO @@ -170,10 +170,10 @@ func main() { } setupLog.Info(fmt.Sprintf("Operator sync period: %s", syncPeriod)) - setupLog.Info(fmt.Sprintf("Agent Pool sync period: %s", controllers.AgentPoolSyncPeriod)) - setupLog.Info(fmt.Sprintf("Module sync period: %s", controllers.ModuleSyncPeriod)) - setupLog.Info(fmt.Sprintf("Project sync period: %s", controllers.ProjectSyncPeriod)) - setupLog.Info(fmt.Sprintf("Workspace sync period: %s", controllers.WorkspaceSyncPeriod)) + setupLog.Info(fmt.Sprintf("Agent Pool sync period: %s", controller.AgentPoolSyncPeriod)) + setupLog.Info(fmt.Sprintf("Module sync period: %s", controller.ModuleSyncPeriod)) + setupLog.Info(fmt.Sprintf("Project sync period: %s", controller.ProjectSyncPeriod)) + setupLog.Info(fmt.Sprintf("Workspace sync period: %s", controller.WorkspaceSyncPeriod)) mgr, err := ctrl.NewManager(ctrl.GetConfigOrDie(), options) if err != nil { @@ -181,7 +181,7 @@ func main() { os.Exit(1) } - if err = (&controllers.AgentPoolReconciler{ + if err = (&controller.AgentPoolReconciler{ Client: mgr.GetClient(), Scheme: mgr.GetScheme(), Recorder: mgr.GetEventRecorderFor("AgentPoolController"), @@ -189,7 +189,7 @@ func main() { setupLog.Error(err, "unable to create controller", "controller", "AgentPool") os.Exit(1) } - if err = (&controllers.ModuleReconciler{ + if err = (&controller.ModuleReconciler{ Client: mgr.GetClient(), Scheme: mgr.GetScheme(), Recorder: mgr.GetEventRecorderFor("ModuleController"), @@ -197,7 +197,7 @@ func main() { setupLog.Error(err, "unable to create controller", "controller", "Module") os.Exit(1) } - if err = (&controllers.ProjectReconciler{ + if err = (&controller.ProjectReconciler{ Client: mgr.GetClient(), Scheme: mgr.GetScheme(), Recorder: mgr.GetEventRecorderFor("ProjectController"), @@ -205,7 +205,7 @@ func main() { setupLog.Error(err, "unable to create controller", "controller", "Project") os.Exit(1) } - if err = (&controllers.WorkspaceReconciler{ + if err = (&controller.WorkspaceReconciler{ Client: mgr.GetClient(), Scheme: mgr.GetScheme(), Recorder: mgr.GetEventRecorderFor("WorkspaceController"), diff --git a/go.mod b/go.mod index afd55e01..f319afbd 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/hashicorp/hcp-terraform-operator -go 1.22.6 +go 1.23.1 require ( github.com/go-logr/logr v1.4.2 diff --git a/controllers/agentpool_controller.go b/internal/controller/agentpool_controller.go similarity index 99% rename from controllers/agentpool_controller.go rename to internal/controller/agentpool_controller.go index e8f0666f..5ddf53e9 100644 --- a/controllers/agentpool_controller.go +++ b/internal/controller/agentpool_controller.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/agentpool_controller_autoscaling.go b/internal/controller/agentpool_controller_autoscaling.go similarity index 99% rename from controllers/agentpool_controller_autoscaling.go rename to internal/controller/agentpool_controller_autoscaling.go index 6bf9c9fb..7a1ec9ea 100644 --- a/controllers/agentpool_controller_autoscaling.go +++ b/internal/controller/agentpool_controller_autoscaling.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/agentpool_controller_autoscaling_test.go b/internal/controller/agentpool_controller_autoscaling_test.go similarity index 98% rename from controllers/agentpool_controller_autoscaling_test.go rename to internal/controller/agentpool_controller_autoscaling_test.go index 7d5dc035..d494c642 100644 --- a/controllers/agentpool_controller_autoscaling_test.go +++ b/internal/controller/agentpool_controller_autoscaling_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( . "github.com/onsi/ginkgo/v2" diff --git a/controllers/agentpool_controller_deployment.go b/internal/controller/agentpool_controller_deployment.go similarity index 99% rename from controllers/agentpool_controller_deployment.go rename to internal/controller/agentpool_controller_deployment.go index f6d2cfa1..1fd64f3a 100644 --- a/controllers/agentpool_controller_deployment.go +++ b/internal/controller/agentpool_controller_deployment.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/agentpool_controller_test.go b/internal/controller/agentpool_controller_test.go similarity index 99% rename from controllers/agentpool_controller_test.go rename to internal/controller/agentpool_controller_test.go index 24c12d4d..e01a6941 100644 --- a/controllers/agentpool_controller_test.go +++ b/internal/controller/agentpool_controller_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/agentpool_controller_tokens.go b/internal/controller/agentpool_controller_tokens.go similarity index 99% rename from controllers/agentpool_controller_tokens.go rename to internal/controller/agentpool_controller_tokens.go index 484e353a..a2ef68de 100644 --- a/controllers/agentpool_controller_tokens.go +++ b/internal/controller/agentpool_controller_tokens.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/consts.go b/internal/controller/consts.go similarity index 98% rename from controllers/consts.go rename to internal/controller/consts.go index 7183be2f..01a433d6 100644 --- a/controllers/consts.go +++ b/internal/controller/consts.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "time" diff --git a/controllers/flags.go b/internal/controller/flags.go similarity index 92% rename from controllers/flags.go rename to internal/controller/flags.go index b3b20b47..48b4e2fb 100644 --- a/controllers/flags.go +++ b/internal/controller/flags.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "time" diff --git a/controllers/helpers.go b/internal/controller/helpers.go similarity index 99% rename from controllers/helpers.go rename to internal/controller/helpers.go index c9f86ddd..3fe6f22e 100644 --- a/controllers/helpers.go +++ b/internal/controller/helpers.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/helpers_test.go b/internal/controller/helpers_test.go similarity index 99% rename from controllers/helpers_test.go rename to internal/controller/helpers_test.go index 4a2ff8eb..8715daca 100644 --- a/controllers/helpers_test.go +++ b/internal/controller/helpers_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/module_controller.go b/internal/controller/module_controller.go similarity index 99% rename from controllers/module_controller.go rename to internal/controller/module_controller.go index de708bad..ab9a9faa 100644 --- a/controllers/module_controller.go +++ b/internal/controller/module_controller.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "bytes" diff --git a/controllers/module_controller_outputs.go b/internal/controller/module_controller_outputs.go similarity index 99% rename from controllers/module_controller_outputs.go rename to internal/controller/module_controller_outputs.go index c71750a2..8ad52049 100644 --- a/controllers/module_controller_outputs.go +++ b/internal/controller/module_controller_outputs.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/module_controller_test.go b/internal/controller/module_controller_test.go similarity index 99% rename from controllers/module_controller_test.go rename to internal/controller/module_controller_test.go index 2f204f7c..b7c68763 100644 --- a/controllers/module_controller_test.go +++ b/internal/controller/module_controller_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/module_controller_workspace.go b/internal/controller/module_controller_workspace.go similarity index 98% rename from controllers/module_controller_workspace.go rename to internal/controller/module_controller_workspace.go index 2b81b136..571d1d8e 100644 --- a/controllers/module_controller_workspace.go +++ b/internal/controller/module_controller_workspace.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/predicates.go b/internal/controller/predicates.go similarity index 99% rename from controllers/predicates.go rename to internal/controller/predicates.go index 657baa46..3aeaf24a 100644 --- a/controllers/predicates.go +++ b/internal/controller/predicates.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" diff --git a/controllers/project_controller.go b/internal/controller/project_controller.go similarity index 99% rename from controllers/project_controller.go rename to internal/controller/project_controller.go index e4e6a15e..c8d0f1e7 100644 --- a/controllers/project_controller.go +++ b/internal/controller/project_controller.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/project_controller_team_access.go b/internal/controller/project_controller_team_access.go similarity index 99% rename from controllers/project_controller_team_access.go rename to internal/controller/project_controller_team_access.go index c24ebb2c..fe30bd04 100644 --- a/controllers/project_controller_team_access.go +++ b/internal/controller/project_controller_team_access.go @@ -1,7 +1,7 @@ // // Copyright (c) HashiCorp, Inc. // // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/project_controller_team_access_test.go b/internal/controller/project_controller_team_access_test.go similarity index 99% rename from controllers/project_controller_team_access_test.go rename to internal/controller/project_controller_team_access_test.go index 44196893..8841c2d3 100644 --- a/controllers/project_controller_team_access_test.go +++ b/internal/controller/project_controller_team_access_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/project_controller_test.go b/internal/controller/project_controller_test.go similarity index 99% rename from controllers/project_controller_test.go rename to internal/controller/project_controller_test.go index c9430df2..58eb039d 100644 --- a/controllers/project_controller_test.go +++ b/internal/controller/project_controller_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/suite_test.go b/internal/controller/suite_test.go similarity index 98% rename from controllers/suite_test.go rename to internal/controller/suite_test.go index b7a33b60..2d4b6086 100644 --- a/controllers/suite_test.go +++ b/internal/controller/suite_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" @@ -92,7 +92,7 @@ var _ = BeforeSuite(func() { b := true testEnv.UseExistingCluster = &b } else { - testEnv.CRDDirectoryPaths = []string{filepath.Join("..", "config", "crd", "bases")} + testEnv.CRDDirectoryPaths = []string{filepath.Join("..", "..", "config", "crd", "bases")} testEnv.ErrorIfCRDPathMissing = true } diff --git a/controllers/workspace_controller.go b/internal/controller/workspace_controller.go similarity index 99% rename from controllers/workspace_controller.go rename to internal/controller/workspace_controller.go index 023ce997..c3ce7cba 100644 --- a/controllers/workspace_controller.go +++ b/internal/controller/workspace_controller.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_agents.go b/internal/controller/workspace_controller_agents.go similarity index 98% rename from controllers/workspace_controller_agents.go rename to internal/controller/workspace_controller_agents.go index ded99486..8880e5a4 100644 --- a/controllers/workspace_controller_agents.go +++ b/internal/controller/workspace_controller_agents.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_agents_test.go b/internal/controller/workspace_controller_agents_test.go similarity index 99% rename from controllers/workspace_controller_agents_test.go rename to internal/controller/workspace_controller_agents_test.go index 9f2e2b93..6738a481 100644 --- a/controllers/workspace_controller_agents_test.go +++ b/internal/controller/workspace_controller_agents_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/workspace_controller_deletion_policy.go b/internal/controller/workspace_controller_deletion_policy.go similarity index 99% rename from controllers/workspace_controller_deletion_policy.go rename to internal/controller/workspace_controller_deletion_policy.go index 92b1cf63..d9fe5f82 100644 --- a/controllers/workspace_controller_deletion_policy.go +++ b/internal/controller/workspace_controller_deletion_policy.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_deletion_policy_test.go b/internal/controller/workspace_controller_deletion_policy_test.go similarity index 99% rename from controllers/workspace_controller_deletion_policy_test.go rename to internal/controller/workspace_controller_deletion_policy_test.go index 9e621e8d..ee87e5e9 100644 --- a/controllers/workspace_controller_deletion_policy_test.go +++ b/internal/controller/workspace_controller_deletion_policy_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/workspace_controller_notifications.go b/internal/controller/workspace_controller_notifications.go similarity index 99% rename from controllers/workspace_controller_notifications.go rename to internal/controller/workspace_controller_notifications.go index 9e609e6b..3f1daef5 100644 --- a/controllers/workspace_controller_notifications.go +++ b/internal/controller/workspace_controller_notifications.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_notifications_test.go b/internal/controller/workspace_controller_notifications_test.go similarity index 99% rename from controllers/workspace_controller_notifications_test.go rename to internal/controller/workspace_controller_notifications_test.go index 6af6d1ad..77ca34ba 100644 --- a/controllers/workspace_controller_notifications_test.go +++ b/internal/controller/workspace_controller_notifications_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/workspace_controller_outputs.go b/internal/controller/workspace_controller_outputs.go similarity index 99% rename from controllers/workspace_controller_outputs.go rename to internal/controller/workspace_controller_outputs.go index 2cc7cb01..5a96b4a4 100644 --- a/controllers/workspace_controller_outputs.go +++ b/internal/controller/workspace_controller_outputs.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_outputs_test.go b/internal/controller/workspace_controller_outputs_test.go similarity index 99% rename from controllers/workspace_controller_outputs_test.go rename to internal/controller/workspace_controller_outputs_test.go index d256d36c..ebee3b90 100644 --- a/controllers/workspace_controller_outputs_test.go +++ b/internal/controller/workspace_controller_outputs_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/workspace_controller_projects.go b/internal/controller/workspace_controller_projects.go similarity index 98% rename from controllers/workspace_controller_projects.go rename to internal/controller/workspace_controller_projects.go index 075b1b6d..1aa4ff73 100644 --- a/controllers/workspace_controller_projects.go +++ b/internal/controller/workspace_controller_projects.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_projects_test.go b/internal/controller/workspace_controller_projects_test.go similarity index 99% rename from controllers/workspace_controller_projects_test.go rename to internal/controller/workspace_controller_projects_test.go index 142fe2f6..0735ff35 100644 --- a/controllers/workspace_controller_projects_test.go +++ b/internal/controller/workspace_controller_projects_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/workspace_controller_remote_state_sharing.go b/internal/controller/workspace_controller_remote_state_sharing.go similarity index 99% rename from controllers/workspace_controller_remote_state_sharing.go rename to internal/controller/workspace_controller_remote_state_sharing.go index 5ba34e67..572a0d7a 100644 --- a/controllers/workspace_controller_remote_state_sharing.go +++ b/internal/controller/workspace_controller_remote_state_sharing.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_remote_state_sharing_test.go b/internal/controller/workspace_controller_remote_state_sharing_test.go similarity index 99% rename from controllers/workspace_controller_remote_state_sharing_test.go rename to internal/controller/workspace_controller_remote_state_sharing_test.go index 4d4e4584..c8ca0b39 100644 --- a/controllers/workspace_controller_remote_state_sharing_test.go +++ b/internal/controller/workspace_controller_remote_state_sharing_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/workspace_controller_run_tasks.go b/internal/controller/workspace_controller_run_tasks.go similarity index 99% rename from controllers/workspace_controller_run_tasks.go rename to internal/controller/workspace_controller_run_tasks.go index 088f9277..8afc9137 100644 --- a/controllers/workspace_controller_run_tasks.go +++ b/internal/controller/workspace_controller_run_tasks.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_run_tasks_test.go b/internal/controller/workspace_controller_run_tasks_test.go similarity index 99% rename from controllers/workspace_controller_run_tasks_test.go rename to internal/controller/workspace_controller_run_tasks_test.go index 23dcb26d..111e8405 100644 --- a/controllers/workspace_controller_run_tasks_test.go +++ b/internal/controller/workspace_controller_run_tasks_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/workspace_controller_run_triggers.go b/internal/controller/workspace_controller_run_triggers.go similarity index 99% rename from controllers/workspace_controller_run_triggers.go rename to internal/controller/workspace_controller_run_triggers.go index ff738210..ea64e883 100644 --- a/controllers/workspace_controller_run_triggers.go +++ b/internal/controller/workspace_controller_run_triggers.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_run_triggers_test.go b/internal/controller/workspace_controller_run_triggers_test.go similarity index 99% rename from controllers/workspace_controller_run_triggers_test.go rename to internal/controller/workspace_controller_run_triggers_test.go index cff5919c..0fb6ad79 100644 --- a/controllers/workspace_controller_run_triggers_test.go +++ b/internal/controller/workspace_controller_run_triggers_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/workspace_controller_runs.go b/internal/controller/workspace_controller_runs.go similarity index 99% rename from controllers/workspace_controller_runs.go rename to internal/controller/workspace_controller_runs.go index df96c9ab..30cdc728 100644 --- a/controllers/workspace_controller_runs.go +++ b/internal/controller/workspace_controller_runs.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_runs_test.go b/internal/controller/workspace_controller_runs_test.go similarity index 99% rename from controllers/workspace_controller_runs_test.go rename to internal/controller/workspace_controller_runs_test.go index 2cc62935..94d28d4a 100644 --- a/controllers/workspace_controller_runs_test.go +++ b/internal/controller/workspace_controller_runs_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/workspace_controller_sshkey.go b/internal/controller/workspace_controller_sshkey.go similarity index 99% rename from controllers/workspace_controller_sshkey.go rename to internal/controller/workspace_controller_sshkey.go index a9c7418a..d9bfe07a 100644 --- a/controllers/workspace_controller_sshkey.go +++ b/internal/controller/workspace_controller_sshkey.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_sshkey_test.go b/internal/controller/workspace_controller_sshkey_test.go similarity index 99% rename from controllers/workspace_controller_sshkey_test.go rename to internal/controller/workspace_controller_sshkey_test.go index 54ef3d09..60fab5c5 100644 --- a/controllers/workspace_controller_sshkey_test.go +++ b/internal/controller/workspace_controller_sshkey_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "crypto/rand" diff --git a/controllers/workspace_controller_tags.go b/internal/controller/workspace_controller_tags.go similarity index 99% rename from controllers/workspace_controller_tags.go rename to internal/controller/workspace_controller_tags.go index ea38e157..cd4bed87 100644 --- a/controllers/workspace_controller_tags.go +++ b/internal/controller/workspace_controller_tags.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_tags_test.go b/internal/controller/workspace_controller_tags_test.go similarity index 99% rename from controllers/workspace_controller_tags_test.go rename to internal/controller/workspace_controller_tags_test.go index fc9f3bc5..b5fd64d8 100644 --- a/controllers/workspace_controller_tags_test.go +++ b/internal/controller/workspace_controller_tags_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( tfc "github.com/hashicorp/go-tfe" diff --git a/controllers/workspace_controller_team_access.go b/internal/controller/workspace_controller_team_access.go similarity index 99% rename from controllers/workspace_controller_team_access.go rename to internal/controller/workspace_controller_team_access.go index 5dfc2087..40b2f5f7 100644 --- a/controllers/workspace_controller_team_access.go +++ b/internal/controller/workspace_controller_team_access.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_team_access_test.go b/internal/controller/workspace_controller_team_access_test.go similarity index 99% rename from controllers/workspace_controller_team_access_test.go rename to internal/controller/workspace_controller_team_access_test.go index e2e51ca1..4656f62a 100644 --- a/controllers/workspace_controller_team_access_test.go +++ b/internal/controller/workspace_controller_team_access_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/workspace_controller_test.go b/internal/controller/workspace_controller_test.go similarity index 99% rename from controllers/workspace_controller_test.go rename to internal/controller/workspace_controller_test.go index c2fbfbc6..8500b5d8 100644 --- a/controllers/workspace_controller_test.go +++ b/internal/controller/workspace_controller_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/workspace_controller_variables.go b/internal/controller/workspace_controller_variables.go similarity index 99% rename from controllers/workspace_controller_variables.go rename to internal/controller/workspace_controller_variables.go index dbbb37d1..2ff6172d 100644 --- a/controllers/workspace_controller_variables.go +++ b/internal/controller/workspace_controller_variables.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "context" diff --git a/controllers/workspace_controller_variables_test.go b/internal/controller/workspace_controller_variables_test.go similarity index 99% rename from controllers/workspace_controller_variables_test.go rename to internal/controller/workspace_controller_variables_test.go index 704530ca..912e4470 100644 --- a/controllers/workspace_controller_variables_test.go +++ b/internal/controller/workspace_controller_variables_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt" diff --git a/controllers/workspace_controller_vcs_test.go b/internal/controller/workspace_controller_vcs_test.go similarity index 99% rename from controllers/workspace_controller_vcs_test.go rename to internal/controller/workspace_controller_vcs_test.go index 1c47899a..328ca87b 100644 --- a/controllers/workspace_controller_vcs_test.go +++ b/internal/controller/workspace_controller_vcs_test.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 -package controllers +package controller import ( "fmt"