Skip to content

Latest commit

 

History

History
73 lines (53 loc) · 1.14 KB

README.md

File metadata and controls

73 lines (53 loc) · 1.14 KB

component-operator

Kubebuilder - Operator

Commands

  1. Create project
kubebuilder init --domain component.cloudsteak.com --owner "CloudSteak" --repo github.com/cloudsteak/component-operator.git --license 'none'
  1. Create API
kubebuilder create api --kind NamespaceChecker --version v1alpha1 --group api
  1. Generate code containing DeepCopy, DeepCopyInto, and DeepCopyObject method implementations.
make generate
  1. Create manifests (CRD, RBAC and Controller)
make manifests
  1. Develop your code

  2. Install CRDs

make install
  1. Configure sample CRD
nano config/samples/api_v1alpha1_namespacechecker.yaml
apiVersion: api.component.cloudsteak.com/v1alpha1
kind: NamespaceChecker
metadata:
  name: namespacechecker-sample
spec:
  namespaces:
  - default
  configMapNames:
  - configmap-01
  configMapsNamespace: default
  secretNames:
  - secret-1
  - secret-2
  secretsNamespace: default
  deploymentNamespace: default
  1. Create scaler
kubectl apply -f config/samples/api_v1alpha1_namespacechecker.yaml
  1. Run the controller
make run