v1alpha1

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Jan 27, 2019 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the k8 v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=k8.jabberwocky.se

Package v1alpha1 contains API Schema definitions for the k8 v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=k8.jabberwocky.se

Index

Constants

This section is empty.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: "k8.jabberwocky.se", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}
)

Functions

This section is empty.

Types

type CloudConfig

type CloudConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   CloudConfigSpec   `json:"spec,omitempty"`
	Status CloudConfigStatus `json:"status,omitempty"`
}

CloudConfig is the Schema for the cloudconfigs API +k8s:openapi-gen=true

func (*CloudConfig) DeepCopy

func (in *CloudConfig) DeepCopy() *CloudConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudConfig.

func (*CloudConfig) DeepCopyInto

func (in *CloudConfig) DeepCopyInto(out *CloudConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CloudConfig) DeepCopyObject

func (in *CloudConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*CloudConfig) GetEnvironment added in v0.2.0

func (config *CloudConfig) GetEnvironment(key string) *CloudConfigEnv

GetEnvironment returns an environment from the spec falling back to default values for unspecified fields

func (*CloudConfig) IsManagedNamespace added in v0.2.0

func (config *CloudConfig) IsManagedNamespace(namespace string) bool

IsManagedNamespace returns `true` if the given namespace is managed by one of the CloudConfig's environments.

type CloudConfigCredentials added in v0.2.0

type CloudConfigCredentials struct {
	// Secret is the name of the secret that holds all credentials, required
	Secret string `json:"secret,omitempty"`
	// Username is the name of the username secret entry, defaults to `username`
	Username string `json:"username,omitempty"`
	// Password is the name of the password secret entry, defaults to `password`
	Password string `json:"password,omitempty"`
	// Token is the name of the token secret entry, defaults to `token`
	Token string `json:"token,omitempty"`
	// Cert is the name of the client certificate secret entry, defaults tp `cert.pem`
	Cert string `json:"cert,omitempty"`
	// Key is the name of the client certificate key secret entry, defaults to `key.pem`
	Key string `json:"key,omitempty"`
	// RootCA is the name of the secret entry for the certificate used to sign the server certificate,
	// defaults to `cert.key`
	RootCA string `json:"rootCA,omitempty"`
}

CloudConfigCredentials contains the metadata used to retrieve a Kubernetes secret containing Cloud Config Server credentials.

func NewCloudConfigCredentials added in v0.2.0

func NewCloudConfigCredentials() *CloudConfigCredentials

NewCloudConfigCredentials returns the default credentials

func (*CloudConfigCredentials) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudConfigCredentials.

func (*CloudConfigCredentials) DeepCopyInto added in v0.2.0

func (in *CloudConfigCredentials) DeepCopyInto(out *CloudConfigCredentials)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudConfigEnv added in v0.2.0

type CloudConfigEnv struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   CloudConfigEnvSpec   `json:"spec,omitempty"`
	Status CloudConfigEnvStatus `json:"status,omitempty"`
}

CloudConfigEnv is the Schema for the cloudconfigenvs API +k8s:openapi-gen=true

func (*CloudConfigEnv) DeepCopy added in v0.2.0

func (in *CloudConfigEnv) DeepCopy() *CloudConfigEnv

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudConfigEnv.

func (*CloudConfigEnv) DeepCopyInto added in v0.2.0

func (in *CloudConfigEnv) DeepCopyInto(out *CloudConfigEnv)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CloudConfigEnv) DeepCopyObject added in v0.2.0

func (in *CloudConfigEnv) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (CloudConfigEnv) GetDurationUntilNextCycle added in v0.2.0

func (env CloudConfigEnv) GetDurationUntilNextCycle(startTime time.Time) (time.Duration, bool)

GetDurationUntilNextCycle returns the time.Duration until the start of the next reconciliation cycle. This is calculated as the Period minus the duration from the start of the current cycle. If the current cycle took longer than the period the boolean result is returned as true indicating that

one or more periods were skipped.

type CloudConfigEnvList added in v0.2.0

type CloudConfigEnvList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []CloudConfigEnv `json:"items"`
}

CloudConfigEnvList contains a list of CloudConfigEnv

func (*CloudConfigEnvList) DeepCopy added in v0.2.0

func (in *CloudConfigEnvList) DeepCopy() *CloudConfigEnvList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudConfigEnvList.

func (*CloudConfigEnvList) DeepCopyInto added in v0.2.0

func (in *CloudConfigEnvList) DeepCopyInto(out *CloudConfigEnvList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CloudConfigEnvList) DeepCopyObject added in v0.2.0

func (in *CloudConfigEnvList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type CloudConfigEnvSpec added in v0.2.0

type CloudConfigEnvSpec struct {
	// Sys is the system name
	Sys string `json:"sys,omitempty"`

	// Env is the environment name
	Env string `json:"env,omitempty"`

	// Application name, defaults to system name
	AppName string `json:"appName,omitempty"`

	// List or profile names
	Profile []string `json:"profile,omitempty"`

	// label used for all apps, defaults to 'master'
	Label string `json:"label,omitempty"`

	// Cloud Config Server name or URL
	Server string `json:"server,omitempty"`

	// app spec file name, defaults to 'deployment.yaml'
	SpecFile string `json:"specFile,omitempty"`

	// Application list property name, optional
	AppList string `json:"appList,omitempty"`

	// Period is the number of seconds between cloud config synchronizations,
	// a 0 value means that the environment is updated only once after each CloudConfigEnv change
	Period int `json:"period,omitempty"`

	// TrustStore optionally defines the name of a secret containing all trusted certificates
	TrustStore string `json:"trustStore,omitempty"`

	// Cloud Config Server secret containing cloud config credentials, optional
	Credentials CloudConfigCredentials `json:"credentials,omitempty"`

	// If Insecure is 'true' certificates are not required for
	// servers outside the cluster and SSL errors are ignored.
	Insecure bool `json:"insecure,omitempty"`
}

CloudConfigEnvSpec defines the desired state of CloudConfigEnv

func NewCloudConfigEnvSpec added in v0.2.0

func NewCloudConfigEnvSpec(app, sys, env string) *CloudConfigEnvSpec

NewCloudConfigEnvSpec returns the default spec for CloudConfigEnv

func (*CloudConfigEnvSpec) DeepCopy added in v0.2.0

func (in *CloudConfigEnvSpec) DeepCopy() *CloudConfigEnvSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudConfigEnvSpec.

func (*CloudConfigEnvSpec) DeepCopyInto added in v0.2.0

func (in *CloudConfigEnvSpec) DeepCopyInto(out *CloudConfigEnvSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudConfigEnvStatus added in v0.2.0

type CloudConfigEnvStatus struct {
	// TODO think through how to defined the current status of a CloudConfig CloudConfigEnvSpec
	NamespaceStatus metav1.Status `json:"namsepaceStatus,omitempty"`
}

CloudConfigEnvStatus defines the observed state of CloudConfigEnv

func (*CloudConfigEnvStatus) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudConfigEnvStatus.

func (*CloudConfigEnvStatus) DeepCopyInto added in v0.2.0

func (in *CloudConfigEnvStatus) DeepCopyInto(out *CloudConfigEnvStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudConfigList

type CloudConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []CloudConfig `json:"items"`
}

CloudConfigList contains a list of CloudConfig

func (*CloudConfigList) DeepCopy

func (in *CloudConfigList) DeepCopy() *CloudConfigList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudConfigList.

func (*CloudConfigList) DeepCopyInto

func (in *CloudConfigList) DeepCopyInto(out *CloudConfigList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CloudConfigList) DeepCopyObject

func (in *CloudConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type CloudConfigSpec

type CloudConfigSpec struct {
	// Period is the number of seconds between each synchronization event
	Period int `json:"period,omitempty"`

	// Default environment properties
	CloudConfigEnvSpec `json:",omitempty"`

	// Environments where apps are managed
	Environments map[string]CloudConfigEnvSpec `json:"environments,omitempty"`
}

CloudConfigSpec defines the desired state of CloudConfig

func (*CloudConfigSpec) DeepCopy

func (in *CloudConfigSpec) DeepCopy() *CloudConfigSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudConfigSpec.

func (*CloudConfigSpec) DeepCopyInto

func (in *CloudConfigSpec) DeepCopyInto(out *CloudConfigSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudConfigStatus

type CloudConfigStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "operator-sdk generate k8s" to regenerate code after modifying this file
	CronJobs []string `json:"cronJobs"`
}

CloudConfigStatus defines the observed state of CloudConfig

func (*CloudConfigStatus) DeepCopy

func (in *CloudConfigStatus) DeepCopy() *CloudConfigStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudConfigStatus.

func (*CloudConfigStatus) DeepCopyInto

func (in *CloudConfigStatus) DeepCopyInto(out *CloudConfigStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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