# Functions

ClusterConfigDetails return the cluster config yaml.
CreateNamespace creates a namespace.
DeleteNamespace delete the namespace.
GetDB Connection using the given properties.
ListClusterConfig return the list of saved cluster configs.
ListNamespaces returns a list of namespaces.
LoadClusterConfig reads DB and create map with cluster configuration.
NamespaceExists return true if namespace is already created.
NewCluster returns a new cluster ready to start.
NewDeployment is the deployment ctor.
NewJob is the job ctor.
NewPVC is the PersistentVolumeClaim constructor.
NewService is the service ctor.
ParseYaml convert string to maps.
RemoveClusterConfig writes cluster config on DB.
ServicePort ...
WriteClusterConfig writes cluster config on DB.

# Constants

ClientIDEnvVar defines the name of the environment variable.
ClientSecretEnvVar defines the name of the environment variable.

# Structs

Cluster represents a k8s cluster for a user.
ClusterAppConfig defines the configuration of an app and service.
ClusterConfig contains the elements of a config file.
Deployment represents a deployment.
DeploymentReadiness implements Readiness interface.
EnvVar has name and value of an environment value.
Job represents a Kubernetes job.
JobReadiness implements Readiness interface.
MemoryAndCPUResource has information about CPU and memory to be allocated to a pod.
MockCredentials implements Credentials interface.
OSCredentials implements Credentials interface.
PersistentVolumeClaim gets volume configs from yaml.
PortMap maps a port to a target por on service.
Probe refers to the Kubernetes readiness probe.
Resources holds how much CPU and memory is allocated to the pod.
Service represents a service.
Setup has the job config to run and configure services.
VolumeMount helps getting PersistentVolume from yaml.

# Interfaces

Credentials is an interface with Get method to get ClientID and ClientSecret.
DB is the mystack-controller db interface.
Readiness is the interface that tell how much time to wait untilthe deployment is readyand its readiness probe reports Ready.