crd

package
v1.0.0-master Latest Latest
Warning

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

Go to latest
Published: Feb 5, 2019 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CRDPlural   string = "databases"
	CRDGroup    string = "k8s.io"
	CRDVersion  string = "v1"
	FullCRDName string = "databases." + CRDGroup
)

Variables

View Source
var SchemeGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

Functions

func CreateCRD

func CreateCRD(clientset apiextcs.Interface) error

CreateCRD creates the CRD resource, ignore error if it already exists

func NewClient

func NewClient(cfg *rest.Config) (*rest.RESTClient, *runtime.Scheme, error)

Create a Rest client with the new CRD Schema

Types

type Database

type Database struct {
	meta_v1.TypeMeta   `json:",inline"`
	meta_v1.ObjectMeta `json:"metadata"`
	Spec               DatabaseSpec   `json:"spec"`
	Status             DatabaseStatus `json:"status,omitempty"`
}

Database is the definition of our CRD Database

func (*Database) DeepCopyObject

func (d *Database) DeepCopyObject() runtime.Object

type DatabaseList

type DatabaseList struct {
	meta_v1.TypeMeta `json:",inline"`
	meta_v1.ListMeta `json:"metadata"`
	Items            []Database `json:"items"`
}

func (*DatabaseList) DeepCopyObject

func (d *DatabaseList) DeepCopyObject() runtime.Object

type DatabaseSpec

type DatabaseSpec struct {
	Username              string               `json:"username"`
	Password              v1.SecretKeySelector `json:"password"`
	DBName                string               `json:"dbname"`
	Engine                string               `json:"engine"` // "postgres"
	Class                 string               `json:"class"`  // like "db.t2.micro"
	Size                  int64                `json:"size"`   // size in gb
	MultiAZ               bool                 `json:"multiaz,omitempty"`
	PubliclyAccessible    bool                 `json:"publicaccess,omitempty"`
	StorageEncrypted      bool                 `json:"encrypted,omitempty"`
	StorageType           string               `json:"storagetype,omitempty"`
	Iops                  int64                `json:"iops,omitempty"`
	BackupRetentionPeriod int64                `json:"backupretentionperiod,omitempty"` // between 0 and 35, zero means disable
}

DatabaseSpec main structure describing the database instance

type DatabaseStatus

type DatabaseStatus struct {
	State   string `json:"state,omitempty" description:"State of the deploy"`
	Message string `json:"message,omitempty" description:"Detailed message around the state"`
}

Jump to

Keyboard shortcuts

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