Documentation ¶
Index ¶
- type AssetManifest
- type AssetManifestSpec
- type AuthenticationTokenWebhookOpts
- type CertPair
- type Cluster
- type ClusterFile
- type ClusterFiles
- type ClusterFilesSpec
- type ClusterRegistry
- func (reg *ClusterRegistry) Create(cluster *Cluster, force bool) error
- func (reg *ClusterRegistry) Delete(clusterName string) error
- func (reg *ClusterRegistry) Exists(clusterName string) (bool, error)
- func (reg *ClusterRegistry) Get(clusterName string) (*Cluster, error)
- func (reg *ClusterRegistry) GetFiles(clusterName string, role string) (*ClusterFiles, error)
- func (reg *ClusterRegistry) List() ([]string, error)
- func (reg *ClusterRegistry) SetFiles(clusterName string, role string, clusterFiles *ClusterFiles) error
- type ClusterSecrets
- type ClusterSpec
- type DockerOpts
- type EtcdCluster
- type EtcdMember
- type NodeFile
- type PodSecurityPolicyOpts
- type TokenSecret
- type VSphereOpts
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AssetManifest ¶
type AssetManifest struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AssetManifestSpec `json:"spec"` }
type AssetManifestSpec ¶
type AuthenticationTokenWebhookOpts ¶
type AuthenticationTokenWebhookOpts struct { ConfigDataBase64 string `json:"configDataBase64"` // base64 encoded string of the config file CacheTTL string `json:"cacheTTL"` }
AuthenticationTokenWebhookOpts is the configurable options for when authentication token webhook is used.
type CertPair ¶
CertPair is contains base64 encoded cert and key data
func (CertPair) GetCertData ¶
GetCertData returns the x509 certificate data in bytes
func (CertPair) GetKeyData ¶
GetKeyData returns the x509 key data in bytes
type Cluster ¶
type Cluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClusterSpec `json:"spec"` AssetManifest AssetManifestSpec `json:"assetManifest"` Secrets ClusterSecrets `json:"secrets"` }
Cluster is the full representation of a Kubernetes cluster that can be used to reproduce a cluster set up.
type ClusterFile ¶
ClusterFile represents a file to be provisioned on a cluster node
func (*ClusterFile) GetData ¶
func (cf *ClusterFile) GetData() ([]byte, error)
type ClusterFiles ¶
type ClusterFiles struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClusterFilesSpec `json:"spec"` }
func NewClusterFiles ¶
func NewClusterFiles() *ClusterFiles
type ClusterFilesSpec ¶
type ClusterFilesSpec struct {
ClusterFiles []*ClusterFile `json:"files"`
}
type ClusterRegistry ¶
type ClusterRegistry struct {
// contains filtered or unexported fields
}
func NewClusterRegistry ¶
func NewClusterRegistry(storeUrl string) *ClusterRegistry
func (*ClusterRegistry) Create ¶
func (reg *ClusterRegistry) Create(cluster *Cluster, force bool) error
func (*ClusterRegistry) Delete ¶
func (reg *ClusterRegistry) Delete(clusterName string) error
func (*ClusterRegistry) Exists ¶
func (reg *ClusterRegistry) Exists(clusterName string) (bool, error)
func (*ClusterRegistry) GetFiles ¶
func (reg *ClusterRegistry) GetFiles(clusterName string, role string) (*ClusterFiles, error)
func (*ClusterRegistry) List ¶
func (reg *ClusterRegistry) List() ([]string, error)
func (*ClusterRegistry) SetFiles ¶
func (reg *ClusterRegistry) SetFiles(clusterName string, role string, clusterFiles *ClusterFiles) error
type ClusterSecrets ¶
type ClusterSecrets struct { PKIs map[string]CertPair `json:"pkis"` TokenSecrets map[string]TokenSecret `json:"tokenSecrets"` }
ClusterSecrets stores PKI and token secrets used to secure the cluster
type ClusterSpec ¶
type ClusterSpec struct { KubeVersion string `json:"kubeVersion"` // Version of Kubernetes MasterPublicName string `json:"masterPublicName"` MasterPort int `json:"masterPort"` DNSDomain string `json:"dnsDomain"` PodCIDR string `json:"podCIDR"` ServiceCIDR string `json:"serviceCIDR"` DNSClusterIP string `json:"dnsClusterIP"` CloudProvider string `json:"cloudProvider"` CloudConfig string `json:"cloudConfig"` WorkerCloudConfig string `json:"workerCloudConfig"` DockerOpts DockerOpts `json:"dockerOpts"` VSphereOpts VSphereOpts `json:"vsphereOpts"` PodSecurityPolicyOpts PodSecurityPolicyOpts `json:"podSecurityPolicyOpts"` AuthenticationTokenWebhookOpts AuthenticationTokenWebhookOpts `json:"authenticationTokenWebhookOpts"` EtcdCluster EtcdCluster `json:"etcdCluster"` }
ClusterSpec is the spec that defines a the property of a cluster
type DockerOpts ¶
type DockerOpts struct { InsecureRegistries []string `json:"insecureRegistries"` RegistryMirrors []string `json:"registryMirrors"` KubeImageProxy string `json:"kubeImageProxy"` }
DockerOpts is the configurable options for Docker
type EtcdCluster ¶
type EtcdCluster struct {
Members []EtcdMember `json:"members"`
}
EtcdCluster contains information about the ETCD cluster used by Kubernetes
type EtcdMember ¶
type EtcdMember struct {
Hostname string `json:"hostname"`
}
EtcdMember contains information about a single ETCD node of the ETCD cluster used by Kubernetes
type NodeFile ¶
NodeFile represents a specific version of the node config file template from asset files
type PodSecurityPolicyOpts ¶
type PodSecurityPolicyOpts struct {
Enabled bool `json:"enabled"`
}
PodSecurityPolicyOpts is the configurable options for PodSecurityPolicy
type TokenSecret ¶
type TokenSecret struct { Username string `json:"username"` Token string `json:"token"` UID int `json:"uid"` Groups []string `json:"groups"` }
TokenSecret contains information about a bearing token used for apiserver authentication
type VSphereOpts ¶
type VSphereOpts struct { Username string `json:"username"` Password string `json:"password"` Server string `json:"server"` DataCenter string `json:"dataCenter"` DataStore string `json:"dataStore"` WorkingDir string `json:"workingDir"` }
VSphereOpts is the configuration options for when VSphere is used as the cloud provider