Moved to latest kubebuilder
This commit is contained in:
parent
b6c7add468
commit
a904dd21d4
143
Makefile
143
Makefile
@ -1,9 +1,8 @@
|
|||||||
|
|
||||||
# Image URL to use all building/pushing image targets
|
# Image URL to use all building/pushing image targets
|
||||||
IMG ?= desmo999r/formolcontroller:0.2.2
|
IMG ?= desmo999r/formolcontroller:0.3.0
|
||||||
# Produce CRDs that work back to Kubernetes 1.11 (no version conversion)
|
# Produce CRDs that work back to Kubernetes 1.11 (no version conversion)
|
||||||
#CRD_OPTIONS ?= "crd:trivialVersions=true"
|
CRD_OPTIONS ?= "crd:trivialVersions=true,preserveUnknownFields=false,crdVersions=v1"
|
||||||
CRD_OPTIONS ?= "crd:trivialVersions=true,crdVersions=v1"
|
|
||||||
|
|
||||||
# Get the currently used golang install path (in GOPATH/bin, unless GOBIN is set)
|
# Get the currently used golang install path (in GOPATH/bin, unless GOBIN is set)
|
||||||
ifeq (,$(shell go env GOBIN))
|
ifeq (,$(shell go env GOBIN))
|
||||||
@ -12,76 +11,100 @@ else
|
|||||||
GOBIN=$(shell go env GOBIN)
|
GOBIN=$(shell go env GOBIN)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
all: manager
|
# 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
|
||||||
|
|
||||||
# Run tests
|
all: build
|
||||||
test: generate fmt vet manifests
|
|
||||||
go test ./... -coverprofile cover.out
|
|
||||||
|
|
||||||
# Build manager binary
|
##@ General
|
||||||
manager: generate fmt vet
|
|
||||||
go build -o bin/manager main.go
|
|
||||||
|
|
||||||
# Run against the configured Kubernetes cluster in ~/.kube/config
|
# The help target prints out all targets with their descriptions organized
|
||||||
run: generate fmt vet manifests
|
# beneath their categories. The categories are represented by '##@' and the
|
||||||
go run ./main.go
|
# target descriptions by '##'. The awk commands 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.
|
||||||
|
# More info on the usage of ANSI control characters for terminal formatting:
|
||||||
|
# https://en.wikipedia.org/wiki/ANSI_escape_code#SGR_parameters
|
||||||
|
# More info on the awk command:
|
||||||
|
# http://linuxcommand.org/lc3_adv_awk.php
|
||||||
|
|
||||||
# Install CRDs into a cluster
|
help: ## Display this help.
|
||||||
install: manifests
|
@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m<target>\033[0m\n"} /^[a-zA-Z_0-9-]+:.*?##/ { printf " \033[36m%-15s\033[0m %s\n", $$1, $$2 } /^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) } ' $(MAKEFILE_LIST)
|
||||||
kustomize build config/crd | kubectl apply -f -
|
|
||||||
|
|
||||||
# Uninstall CRDs from a cluster
|
##@ Development
|
||||||
uninstall: manifests
|
|
||||||
kustomize build config/crd | kubectl delete -f -
|
|
||||||
|
|
||||||
# Deploy controller in the configured Kubernetes cluster in ~/.kube/config
|
manifests: controller-gen ## Generate WebhookConfiguration, ClusterRole and CustomResourceDefinition objects.
|
||||||
deploy: manifests
|
|
||||||
cd config/manager && kustomize edit set image controller=${IMG}
|
|
||||||
kustomize build config/default | kubectl apply -f -
|
|
||||||
|
|
||||||
undeploy: manifests
|
|
||||||
cd config/manager && kustomize edit set image controller=${IMG}
|
|
||||||
kustomize build config/default | kubectl delete -f -
|
|
||||||
|
|
||||||
# Generate manifests e.g. CRD, RBAC etc.
|
|
||||||
manifests: controller-gen
|
|
||||||
$(CONTROLLER_GEN) $(CRD_OPTIONS) rbac:roleName=manager-role webhook paths="./..." output:crd:artifacts:config=config/crd/bases
|
$(CONTROLLER_GEN) $(CRD_OPTIONS) rbac:roleName=manager-role webhook paths="./..." output:crd:artifacts:config=config/crd/bases
|
||||||
|
|
||||||
# Run go fmt against code
|
generate: controller-gen ## Generate code containing DeepCopy, DeepCopyInto, and DeepCopyObject method implementations.
|
||||||
fmt:
|
|
||||||
go fmt ./...
|
|
||||||
|
|
||||||
# Run go vet against code
|
|
||||||
vet:
|
|
||||||
go vet ./...
|
|
||||||
|
|
||||||
# Generate code
|
|
||||||
generate: controller-gen
|
|
||||||
$(CONTROLLER_GEN) object:headerFile="hack/boilerplate.go.txt" paths="./..."
|
$(CONTROLLER_GEN) object:headerFile="hack/boilerplate.go.txt" paths="./..."
|
||||||
|
|
||||||
# Build the docker image
|
fmt: ## Run go fmt against code.
|
||||||
docker-build: test
|
go fmt ./...
|
||||||
|
|
||||||
|
vet: ## Run go vet against code.
|
||||||
|
go vet ./...
|
||||||
|
|
||||||
|
ENVTEST_ASSETS_DIR=$(shell pwd)/testbin
|
||||||
|
test: manifests generate fmt vet ## Run tests.
|
||||||
|
mkdir -p ${ENVTEST_ASSETS_DIR}
|
||||||
|
test -f ${ENVTEST_ASSETS_DIR}/setup-envtest.sh || curl -sSLo ${ENVTEST_ASSETS_DIR}/setup-envtest.sh https://raw.githubusercontent.com/kubernetes-sigs/controller-runtime/v0.8.3/hack/setup-envtest.sh
|
||||||
|
source ${ENVTEST_ASSETS_DIR}/setup-envtest.sh; fetch_envtest_tools $(ENVTEST_ASSETS_DIR); setup_envtest_env $(ENVTEST_ASSETS_DIR); go test ./... -coverprofile cover.out
|
||||||
|
|
||||||
|
##@ Build
|
||||||
|
|
||||||
|
build: generate fmt vet ## Build manager binary.
|
||||||
|
go build -o bin/manager main.go
|
||||||
|
|
||||||
|
run: manifests generate fmt vet ## Run a controller from your host.
|
||||||
|
go run ./main.go
|
||||||
|
|
||||||
|
docker-build: test ## Build docker image with the manager.
|
||||||
podman build --disable-compression --format=docker . -t ${IMG}
|
podman build --disable-compression --format=docker . -t ${IMG}
|
||||||
|
|
||||||
# Push the docker image
|
docker-push: ## Push docker image with the manager.
|
||||||
docker-push:
|
|
||||||
podman push ${IMG}
|
podman push ${IMG}
|
||||||
|
|
||||||
docker: docker-build docker-push
|
docker: docker-build docker-push
|
||||||
|
|
||||||
# find or download controller-gen
|
##@ Deployment
|
||||||
# download controller-gen if necessary
|
|
||||||
controller-gen:
|
install: manifests kustomize ## Install CRDs into the K8s cluster specified in ~/.kube/config.
|
||||||
ifeq (, $(shell which controller-gen))
|
$(KUSTOMIZE) build config/crd | kubectl apply -f -
|
||||||
@{ \
|
|
||||||
set -e ;\
|
uninstall: manifests kustomize ## Uninstall CRDs from the K8s cluster specified in ~/.kube/config.
|
||||||
CONTROLLER_GEN_TMP_DIR=$$(mktemp -d) ;\
|
$(KUSTOMIZE) build config/crd | kubectl delete -f -
|
||||||
cd $$CONTROLLER_GEN_TMP_DIR ;\
|
|
||||||
go mod init tmp ;\
|
deploy: manifests kustomize ## Deploy controller to the K8s cluster specified in ~/.kube/config.
|
||||||
go get sigs.k8s.io/controller-tools/cmd/controller-gen@v0.2.5 ;\
|
cd config/manager && $(KUSTOMIZE) edit set image controller=${IMG}
|
||||||
rm -rf $$CONTROLLER_GEN_TMP_DIR ;\
|
$(KUSTOMIZE) build config/default | kubectl apply -f -
|
||||||
}
|
|
||||||
CONTROLLER_GEN=$(GOBIN)/controller-gen
|
undeploy: ## Undeploy controller from the K8s cluster specified in ~/.kube/config.
|
||||||
else
|
$(KUSTOMIZE) build config/default | kubectl delete -f -
|
||||||
CONTROLLER_GEN=$(shell which controller-gen)
|
|
||||||
endif
|
|
||||||
|
CONTROLLER_GEN = $(shell pwd)/bin/controller-gen
|
||||||
|
controller-gen: ## Download controller-gen locally if necessary.
|
||||||
|
$(call go-get-tool,$(CONTROLLER_GEN),sigs.k8s.io/controller-tools/cmd/controller-gen@v0.4.1)
|
||||||
|
|
||||||
|
KUSTOMIZE = $(shell pwd)/bin/kustomize
|
||||||
|
kustomize: ## Download kustomize locally if necessary.
|
||||||
|
$(call go-get-tool,$(KUSTOMIZE),sigs.k8s.io/kustomize/kustomize/v3@v3.8.7)
|
||||||
|
|
||||||
|
# go-get-tool will 'go get' any package $2 and install it to $1.
|
||||||
|
PROJECT_DIR := $(shell dirname $(abspath $(lastword $(MAKEFILE_LIST))))
|
||||||
|
define go-get-tool
|
||||||
|
@[ -f $(1) ] || { \
|
||||||
|
set -e ;\
|
||||||
|
TMP_DIR=$$(mktemp -d) ;\
|
||||||
|
cd $$TMP_DIR ;\
|
||||||
|
go mod init tmp ;\
|
||||||
|
echo "Downloading $(2)" ;\
|
||||||
|
GOBIN=$(PROJECT_DIR)/bin go get $(2) ;\
|
||||||
|
rm -rf $$TMP_DIR ;\
|
||||||
|
}
|
||||||
|
endef
|
||||||
|
|||||||
@ -1,79 +0,0 @@
|
|||||||
/*
|
|
||||||
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
import (
|
|
||||||
"k8s.io/apimachinery/pkg/runtime"
|
|
||||||
ctrl "sigs.k8s.io/controller-runtime"
|
|
||||||
logf "sigs.k8s.io/controller-runtime/pkg/log"
|
|
||||||
"sigs.k8s.io/controller-runtime/pkg/webhook"
|
|
||||||
)
|
|
||||||
|
|
||||||
// log is for logging in this package.
|
|
||||||
var backupconfigurationlog = logf.Log.WithName("backupconfiguration-resource")
|
|
||||||
|
|
||||||
func (r *BackupConfiguration) SetupWebhookWithManager(mgr ctrl.Manager) error {
|
|
||||||
return ctrl.NewWebhookManagedBy(mgr).
|
|
||||||
For(r).
|
|
||||||
Complete()
|
|
||||||
}
|
|
||||||
|
|
||||||
// EDIT THIS FILE! THIS IS SCAFFOLDING FOR YOU TO OWN!
|
|
||||||
|
|
||||||
// +kubebuilder:webhook:path=/mutate-formol-desmojim-fr-v1alpha1-backupconfiguration,mutating=true,failurePolicy=fail,groups=formol.desmojim.fr,resources=backupconfigurations,verbs=create;update,versions=v1alpha1,name=mbackupconfiguration.kb.io
|
|
||||||
|
|
||||||
var _ webhook.Defaulter = &BackupConfiguration{}
|
|
||||||
|
|
||||||
// Default implements webhook.Defaulter so a webhook will be registered for the type
|
|
||||||
func (r *BackupConfiguration) Default() {
|
|
||||||
backupconfigurationlog.Info("default", "name", r.Name)
|
|
||||||
|
|
||||||
// TODO(user): fill in your defaulting logic.
|
|
||||||
if r.Spec.Suspend == nil {
|
|
||||||
suspend := false
|
|
||||||
r.Spec.Suspend = &suspend
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO(user): change verbs to "verbs=create;update;delete" if you want to enable deletion validation.
|
|
||||||
// +kubebuilder:webhook:verbs=create;update,path=/validate-formol-desmojim-fr-v1alpha1-backupconfiguration,mutating=false,failurePolicy=fail,groups=formol.desmojim.fr,resources=backupconfigurations,versions=v1alpha1,name=vbackupconfiguration.kb.io
|
|
||||||
|
|
||||||
var _ webhook.Validator = &BackupConfiguration{}
|
|
||||||
|
|
||||||
// ValidateCreate implements webhook.Validator so a webhook will be registered for the type
|
|
||||||
func (r *BackupConfiguration) ValidateCreate() error {
|
|
||||||
backupconfigurationlog.Info("validate create", "name", r.Name)
|
|
||||||
|
|
||||||
// TODO(user): fill in your validation logic upon object creation.
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
|
|
||||||
func (r *BackupConfiguration) ValidateUpdate(old runtime.Object) error {
|
|
||||||
backupconfigurationlog.Info("validate update", "name", r.Name)
|
|
||||||
|
|
||||||
// TODO(user): fill in your validation logic upon object update.
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// ValidateDelete implements webhook.Validator so a webhook will be registered for the type
|
|
||||||
func (r *BackupConfiguration) ValidateDelete() error {
|
|
||||||
backupconfigurationlog.Info("validate delete", "name", r.Name)
|
|
||||||
|
|
||||||
// TODO(user): fill in your validation logic upon object deletion.
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
@ -1,76 +0,0 @@
|
|||||||
/*
|
|
||||||
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
import (
|
|
||||||
"k8s.io/apimachinery/pkg/runtime"
|
|
||||||
ctrl "sigs.k8s.io/controller-runtime"
|
|
||||||
logf "sigs.k8s.io/controller-runtime/pkg/log"
|
|
||||||
"sigs.k8s.io/controller-runtime/pkg/webhook"
|
|
||||||
)
|
|
||||||
|
|
||||||
// log is for logging in this package.
|
|
||||||
var backupsessionlog = logf.Log.WithName("backupsession-resource")
|
|
||||||
|
|
||||||
func (r *BackupSession) SetupWebhookWithManager(mgr ctrl.Manager) error {
|
|
||||||
backupsessionlog.Info("setupWebhook", "name", r.Name)
|
|
||||||
return ctrl.NewWebhookManagedBy(mgr).
|
|
||||||
For(r).
|
|
||||||
Complete()
|
|
||||||
}
|
|
||||||
|
|
||||||
// EDIT THIS FILE! THIS IS SCAFFOLDING FOR YOU TO OWN!
|
|
||||||
|
|
||||||
// +kubebuilder:webhook:path=/mutate-formol-desmojim-fr-v1alpha1-backupsession,mutating=true,failurePolicy=fail,groups=formol.desmojim.fr,resources=backupsessions,verbs=create;update,versions=v1alpha1,name=mbackupsession.kb.io
|
|
||||||
|
|
||||||
var _ webhook.Defaulter = &BackupSession{}
|
|
||||||
|
|
||||||
// Default implements webhook.Defaulter so a webhook will be registered for the type
|
|
||||||
func (r *BackupSession) Default() {
|
|
||||||
backupsessionlog.Info("default", "name", r.Name)
|
|
||||||
|
|
||||||
// TODO(user): fill in your defaulting logic.
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO(user): change verbs to "verbs=create;update;delete" if you want to enable deletion validation.
|
|
||||||
// +kubebuilder:webhook:verbs=create;update,path=/validate-formol-desmojim-fr-v1alpha1-backupsession,mutating=false,failurePolicy=fail,groups=formol.desmojim.fr,resources=backupsessions,versions=v1alpha1,name=vbackupsession.kb.io
|
|
||||||
|
|
||||||
var _ webhook.Validator = &BackupSession{}
|
|
||||||
|
|
||||||
// ValidateCreate implements webhook.Validator so a webhook will be registered for the type
|
|
||||||
func (r *BackupSession) ValidateCreate() error {
|
|
||||||
backupsessionlog.Info("validate create", "name", r.Name)
|
|
||||||
|
|
||||||
// TODO(user): fill in your validation logic upon object creation.
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
|
|
||||||
func (r *BackupSession) ValidateUpdate(old runtime.Object) error {
|
|
||||||
backupsessionlog.Info("validate update", "name", r.Name)
|
|
||||||
|
|
||||||
// TODO(user): fill in your validation logic upon object update.
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// ValidateDelete implements webhook.Validator so a webhook will be registered for the type
|
|
||||||
func (r *BackupSession) ValidateDelete() error {
|
|
||||||
backupsessionlog.Info("validate delete", "name", r.Name)
|
|
||||||
|
|
||||||
// TODO(user): fill in your validation logic upon object deletion.
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
@ -31,7 +31,7 @@ type Function struct {
|
|||||||
metav1.TypeMeta `json:",inline"`
|
metav1.TypeMeta `json:",inline"`
|
||||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||||
|
|
||||||
Spec corev1.Container `json:"spec,omitempty"`
|
Spec corev1.Container `json:"spec"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// +kubebuilder:object:root=true
|
// +kubebuilder:object:root=true
|
||||||
|
|||||||
@ -1,76 +0,0 @@
|
|||||||
/*
|
|
||||||
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package v1alpha1
|
|
||||||
|
|
||||||
import (
|
|
||||||
"k8s.io/apimachinery/pkg/runtime"
|
|
||||||
ctrl "sigs.k8s.io/controller-runtime"
|
|
||||||
logf "sigs.k8s.io/controller-runtime/pkg/log"
|
|
||||||
"sigs.k8s.io/controller-runtime/pkg/webhook"
|
|
||||||
)
|
|
||||||
|
|
||||||
// log is for logging in this package.
|
|
||||||
var functionlog = logf.Log.WithName("function-resource")
|
|
||||||
|
|
||||||
func (r *Function) SetupWebhookWithManager(mgr ctrl.Manager) error {
|
|
||||||
return ctrl.NewWebhookManagedBy(mgr).
|
|
||||||
For(r).
|
|
||||||
Complete()
|
|
||||||
}
|
|
||||||
|
|
||||||
// EDIT THIS FILE! THIS IS SCAFFOLDING FOR YOU TO OWN!
|
|
||||||
|
|
||||||
// +kubebuilder:webhook:path=/mutate-formol-desmojim-fr-v1alpha1-function,mutating=true,failurePolicy=fail,groups=formol.desmojim.fr,resources=functions,verbs=create;update,versions=v1alpha1,name=mfunction.kb.io
|
|
||||||
|
|
||||||
var _ webhook.Defaulter = &Function{}
|
|
||||||
|
|
||||||
// Default implements webhook.Defaulter so a webhook will be registered for the type
|
|
||||||
func (r *Function) Default() {
|
|
||||||
functionlog.Info("default", "name", r.Name)
|
|
||||||
|
|
||||||
// TODO(user): fill in your defaulting logic.
|
|
||||||
r.Spec.Name = r.Name
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO(user): change verbs to "verbs=create;update;delete" if you want to enable deletion validation.
|
|
||||||
// +kubebuilder:webhook:verbs=create;update,path=/validate-formol-desmojim-fr-v1alpha1-function,mutating=false,failurePolicy=fail,groups=formol.desmojim.fr,resources=functions,versions=v1alpha1,name=vfunction.kb.io
|
|
||||||
|
|
||||||
var _ webhook.Validator = &Function{}
|
|
||||||
|
|
||||||
// ValidateCreate implements webhook.Validator so a webhook will be registered for the type
|
|
||||||
func (r *Function) ValidateCreate() error {
|
|
||||||
functionlog.Info("validate create", "name", r.Name)
|
|
||||||
|
|
||||||
// TODO(user): fill in your validation logic upon object creation.
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
|
|
||||||
func (r *Function) ValidateUpdate(old runtime.Object) error {
|
|
||||||
functionlog.Info("validate update", "name", r.Name)
|
|
||||||
|
|
||||||
// TODO(user): fill in your validation logic upon object update.
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// ValidateDelete implements webhook.Validator so a webhook will be registered for the type
|
|
||||||
func (r *Function) ValidateDelete() error {
|
|
||||||
functionlog.Info("validate delete", "name", r.Name)
|
|
||||||
|
|
||||||
// TODO(user): fill in your validation logic upon object deletion.
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
@ -23,7 +23,7 @@ package v1alpha1
|
|||||||
import (
|
import (
|
||||||
"k8s.io/api/core/v1"
|
"k8s.io/api/core/v1"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
"k8s.io/apimachinery/pkg/runtime"
|
runtime "k8s.io/apimachinery/pkg/runtime"
|
||||||
)
|
)
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||||
|
|||||||
@ -5,4 +5,4 @@ kind: Kustomization
|
|||||||
images:
|
images:
|
||||||
- name: controller
|
- name: controller
|
||||||
newName: desmo999r/formolcontroller
|
newName: desmo999r/formolcontroller
|
||||||
newTag: 0.2.0
|
newTag: 0.3.0
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user