dbkube

command module
v0.0.0-...-02bfe8e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 4, 2023 License: GPL-3.0 Imports: 19 Imported by: 0

README

dbkube

kubernetes operator built with kubebuilder

the operator will create database service by using crd inside a namespace

create a builder with kubebuilder

this repository will work with several apis and controllers

to initialise with kubebuilder with multiple groups

to initialize kubebuilder project run:

kubebuilder init --domain etz.com --repo github.com/nadavbm/dbkube
kubebuilder edit --multigroup=true

create the relevant api for running a database service instance in kubernetes:

kubebuilder create api --group configmaps --version v1alpha1 --kind ConfigMap
kubebuilder create api --group secrets --version v1alpha1 --kind Secret
kubebuilder create api --group services --version v1alpha1 --kind Service
kubebuilder create api --group deployments --version v1alpha1 --kind Deployment

edit and generate crd (whenever a new api group was added):

make generate
make manifests

to push docker image (release a new version):

make docker-build docker-push IMG="nadavbm/dbkube:v0.0.1"
testing operator with minikube

to test the operator, run minikube and the following commands:

sh test/cleanup.sh 
kubectl apply -f test/specs.yaml 
kubectl apply -f test/mongodb.yaml

test crd changes with (connect to the relevant namespace with kubens):

k edit configmap.configmaps.etz.com mongo-cm
k edit deployment.deployments.etz.com mongo-deploy
k edit secrets.secrets.etz.com mongo-secret
k edit service.services.etz.com mongo-service

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
apis
configmaps/v1alpha1
Package v1alpha1 contains API Schema definitions for the configmaps v1alpha1 API group +kubebuilder:object:generate=true +groupName=configmaps.etz.com
Package v1alpha1 contains API Schema definitions for the configmaps v1alpha1 API group +kubebuilder:object:generate=true +groupName=configmaps.etz.com
deployments/v1alpha1
Package v1alpha1 contains API Schema definitions for the deployments v1alpha1 API group +kubebuilder:object:generate=true +groupName=deployments.etz.com
Package v1alpha1 contains API Schema definitions for the deployments v1alpha1 API group +kubebuilder:object:generate=true +groupName=deployments.etz.com
secrets/v1alpha1
Package v1alpha1 contains API Schema definitions for the secrets v1alpha1 API group +kubebuilder:object:generate=true +groupName=secrets.etz.com
Package v1alpha1 contains API Schema definitions for the secrets v1alpha1 API group +kubebuilder:object:generate=true +groupName=secrets.etz.com
services/v1alpha1
Package v1alpha1 contains API Schema definitions for the services v1alpha1 API group +kubebuilder:object:generate=true +groupName=services.etz.com
Package v1alpha1 contains API Schema definitions for the services v1alpha1 API group +kubebuilder:object:generate=true +groupName=services.etz.com
controllers
pkg

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL