Skip to content

Commit d3b048a

Browse files
committed
Append kubernetes cluster domain if provided
[#233] Signed-off-by: Aitor Perez Cedres <[email protected]>
1 parent 3d66aff commit d3b048a

15 files changed

+207
-96
lines changed

Makefile

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@ platform := $(shell uname | tr A-Z a-z)
88
list: ## list Makefile targets
99
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}'
1010

11+
### Tools
12+
# Allows flexbility to use other build kits, like nerdctl
13+
BUILD_KIT ?= /usr/local/bin/docker
14+
1115
define get_mod_code_generator
1216
echo "Only go get & mod k8s.io/code-generator, but do not install it"
1317
echo "⚠️ Keep it at the same version as captured in go.mod, otherwise we may end up with version inconsistencies"
@@ -30,6 +34,8 @@ export KUBEBUILDER_ASSETS = $(LOCAL_TESTBIN)/k8s/$(ENVTEST_K8S_VERSION)-$(platfo
3034
$(KUBEBUILDER_ASSETS):
3135
setup-envtest --os $(platform) --arch $(ARCHITECTURE) --bin-dir $(LOCAL_TESTBIN) use $(ENVTEST_K8S_VERSION)
3236

37+
### Targets
38+
3339
.PHONY: unit-tests
3440
unit-tests: install-tools $(KUBEBUILDER_ASSETS) generate fmt vet manifests ## Run unit tests
3541
ginkgo -r --randomizeAllSpecs api/ internal/
@@ -38,6 +44,9 @@ unit-tests: install-tools $(KUBEBUILDER_ASSETS) generate fmt vet manifests ## Ru
3844
integration-tests: install-tools $(KUBEBUILDER_ASSETS) generate fmt vet manifests ## Run integration tests
3945
ginkgo -r --randomizeAllSpecs controllers/
4046

47+
just-integration-tests: $(KUBEBUILDER_ASSETS) vet
48+
ginkgo -randomizeAllSpecs -r controllers/
49+
4150
local-tests: unit-tests integration-tests ## Run all local tests (unit & integration)
4251

4352
system-tests: ## run end-to-end tests against Kubernetes cluster defined in ~/.kube/config. Expects cluster operator and messaging topology operator to be installed in the cluster
@@ -82,7 +91,7 @@ deploy-dev: check-env-docker-credentials docker-build-dev manifests deploy-rbac
8291

8392
# Load operator image and deploy operator into current KinD cluster
8493
deploy-kind: manifests deploy-rbac
85-
docker build --build-arg=GIT_COMMIT=$(GIT_COMMIT) -t $(DOCKER_REGISTRY_SERVER)/$(OPERATOR_IMAGE):$(GIT_COMMIT) .
94+
$(BUILD_KIT) build --build-arg=GIT_COMMIT=$(GIT_COMMIT) -t $(DOCKER_REGISTRY_SERVER)/$(OPERATOR_IMAGE):$(GIT_COMMIT) .
8695
kind load docker-image $(DOCKER_REGISTRY_SERVER)/$(OPERATOR_IMAGE):$(GIT_COMMIT)
8796
kustomize build config/default/overlays/kind | sed 's@((operator_docker_image))@"$(DOCKER_REGISTRY_SERVER)/$(OPERATOR_IMAGE):$(GIT_COMMIT)"@' | kubectl apply -f -
8897

@@ -131,8 +140,8 @@ ifndef DOCKER_REGISTRY_SECRET
131140
endif
132141

133142
docker-build-dev: check-env-docker-repo git-commit-sha
134-
docker build --build-arg=GIT_COMMIT=$(GIT_COMMIT) -t $(DOCKER_REGISTRY_SERVER)/$(OPERATOR_IMAGE):$(GIT_COMMIT) .
135-
docker push $(DOCKER_REGISTRY_SERVER)/$(OPERATOR_IMAGE):$(GIT_COMMIT)
143+
$(BUILD_KIT) build --build-arg=GIT_COMMIT=$(GIT_COMMIT) -t $(DOCKER_REGISTRY_SERVER)/$(OPERATOR_IMAGE):$(GIT_COMMIT) .
144+
$(BUILD_KIT) push $(DOCKER_REGISTRY_SERVER)/$(OPERATOR_IMAGE):$(GIT_COMMIT)
136145

137146
docker-registry-secret: check-env-docker-credentials operator-namespace
138147
echo "creating registry secret and patching default service account"
@@ -172,8 +181,8 @@ generate-manifests:
172181
kustomize build config/installation/cert-manager/ > releases/messaging-topology-operator-with-certmanager.yaml
173182

174183
CERT_MANAGER_VERSION ?=v1.2.0
175-
cert-manager:
184+
cert-manager: ## Deploys Cert Manager from JetStack repo. Use CERT_MANAGER_VERSION to customise version e.g. v1.2.0
176185
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/$(CERT_MANAGER_VERSION)/cert-manager.yaml
177186

178-
destroy-cert-manager:
187+
destroy-cert-manager: ## Deletes Cert Manager deployment created by 'make cert-manager'
179188
kubectl delete -f https://github.com/jetstack/cert-manager/releases/download/$(CERT_MANAGER_VERSION)/cert-manager.yaml

controllers/binding_controller.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,11 @@ import (
3232
// BindingReconciler reconciles a Binding object
3333
type BindingReconciler struct {
3434
client.Client
35-
Log logr.Logger
36-
Scheme *runtime.Scheme
37-
Recorder record.EventRecorder
38-
RabbitmqClientFactory internal.RabbitMQClientFactory
35+
Log logr.Logger
36+
Scheme *runtime.Scheme
37+
Recorder record.EventRecorder
38+
RabbitmqClientFactory internal.RabbitMQClientFactory
39+
KubernetesClusterDomain string
3940
}
4041

4142
// +kubebuilder:rbac:groups=rabbitmq.com,resources=bindings,verbs=get;list;watch;create;update;patch;delete

controllers/exchange_controller.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,11 @@ import (
3030
// ExchangeReconciler reconciles a Exchange object
3131
type ExchangeReconciler struct {
3232
client.Client
33-
Log logr.Logger
34-
Scheme *runtime.Scheme
35-
Recorder record.EventRecorder
36-
RabbitmqClientFactory internal.RabbitMQClientFactory
33+
Log logr.Logger
34+
Scheme *runtime.Scheme
35+
Recorder record.EventRecorder
36+
RabbitmqClientFactory internal.RabbitMQClientFactory
37+
KubernetesClusterDomain string
3738
}
3839

3940
// +kubebuilder:rbac:groups=rabbitmq.com,resources=exchanges,verbs=get;list;watch;create;update;patch;delete

controllers/federation_controller.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,11 @@ import (
2323
// FederationReconciler reconciles a Federation object
2424
type FederationReconciler struct {
2525
client.Client
26-
Log logr.Logger
27-
Scheme *runtime.Scheme
28-
Recorder record.EventRecorder
29-
RabbitmqClientFactory internal.RabbitMQClientFactory
26+
Log logr.Logger
27+
Scheme *runtime.Scheme
28+
Recorder record.EventRecorder
29+
RabbitmqClientFactory internal.RabbitMQClientFactory
30+
KubernetesClusterDomain string
3031
}
3132

3233
// +kubebuilder:rbac:groups=rabbitmq.com,resources=federations,verbs=get;list;watch;create;update;patch;delete

controllers/permission_controller.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,11 @@ import (
2424
// PermissionReconciler reconciles a Permission object
2525
type PermissionReconciler struct {
2626
client.Client
27-
Log logr.Logger
28-
Scheme *runtime.Scheme
29-
Recorder record.EventRecorder
30-
RabbitmqClientFactory internal.RabbitMQClientFactory
27+
Log logr.Logger
28+
Scheme *runtime.Scheme
29+
Recorder record.EventRecorder
30+
RabbitmqClientFactory internal.RabbitMQClientFactory
31+
KubernetesClusterDomain string
3132
}
3233

3334
// +kubebuilder:rbac:groups=rabbitmq.com,resources=permissions,verbs=get;list;watch;create;update;patch;delete

controllers/policy_controller.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,11 @@ import (
3030
// PolicyReconciler reconciles a Policy object
3131
type PolicyReconciler struct {
3232
client.Client
33-
Log logr.Logger
34-
Scheme *runtime.Scheme
35-
Recorder record.EventRecorder
36-
RabbitmqClientFactory internal.RabbitMQClientFactory
33+
Log logr.Logger
34+
Scheme *runtime.Scheme
35+
Recorder record.EventRecorder
36+
RabbitmqClientFactory internal.RabbitMQClientFactory
37+
KubernetesClusterDomain string
3738
}
3839

3940
// +kubebuilder:rbac:groups=rabbitmq.com,resources=policies,verbs=get;list;watch;create;update;patch;delete

controllers/queue_controller.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,11 @@ import (
2828
// QueueReconciler reconciles a RabbitMQ Queue
2929
type QueueReconciler struct {
3030
client.Client
31-
Log logr.Logger
32-
Scheme *runtime.Scheme
33-
Recorder record.EventRecorder
34-
RabbitmqClientFactory internal.RabbitMQClientFactory
31+
Log logr.Logger
32+
Scheme *runtime.Scheme
33+
Recorder record.EventRecorder
34+
RabbitmqClientFactory internal.RabbitMQClientFactory
35+
KubernetesClusterDomain string
3536
}
3637

3738
// +kubebuilder:rbac:groups=rabbitmq.com,resources=queues,verbs=get;list;watch;create;update;patch;delete

controllers/schemareplication_controller.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,11 @@ const schemaReplicationParameterName = "schema_definition_sync_upstream"
2525
// SchemaReplicationReconciler reconciles a SchemaReplication object
2626
type SchemaReplicationReconciler struct {
2727
client.Client
28-
Log logr.Logger
29-
Scheme *runtime.Scheme
30-
Recorder record.EventRecorder
31-
RabbitmqClientFactory internal.RabbitMQClientFactory
28+
Log logr.Logger
29+
Scheme *runtime.Scheme
30+
Recorder record.EventRecorder
31+
RabbitmqClientFactory internal.RabbitMQClientFactory
32+
KubernetesClusterDomain string
3233
}
3334

3435
// +kubebuilder:rbac:groups=rabbitmq.com,resources=schemareplications,verbs=get;list;watch;create;update;patch;delete

controllers/shovel_controller.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,11 @@ import (
2323
// ShovelReconciler reconciles a Shovel object
2424
type ShovelReconciler struct {
2525
client.Client
26-
Log logr.Logger
27-
Scheme *runtime.Scheme
28-
Recorder record.EventRecorder
29-
RabbitmqClientFactory internal.RabbitMQClientFactory
26+
Log logr.Logger
27+
Scheme *runtime.Scheme
28+
Recorder record.EventRecorder
29+
RabbitmqClientFactory internal.RabbitMQClientFactory
30+
KubernetesClusterDomain string
3031
}
3132

3233
// +kubebuilder:rbac:groups=rabbitmq.com,resources=shovels,verbs=get;list;watch;create;update;patch;delete

controllers/suite_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,8 @@ var _ = BeforeSuite(func() {
8383
Expect(err).NotTo(HaveOccurred())
8484

8585
mgr, err := ctrl.NewManager(cfg, ctrl.Options{
86-
Scheme: scheme.Scheme,
86+
Scheme: scheme.Scheme,
87+
MetricsBindAddress: "0", // To avoid MacOS firewall pop-up every time you run this suite
8788
})
8889
Expect(err).ToNot(HaveOccurred())
8990

0 commit comments

Comments
 (0)