models

package
v0.0.0-...-105ea73 Latest Latest
Warning

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

Go to latest
Published: May 8, 2020 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ClusterStatus

type ClusterStatus string
const (
	ClusterStatusReady    ClusterStatus = "Ready"
	ClusterStatusNotReady ClusterStatus = "NotReady"
)

func (ClusterStatus) String

func (cs ClusterStatus) String() string

type Credentials

type Credentials struct {
	// GCPServiceAccountFile is a string that represents the file content
	// for cloud auth credentials.
	GCPServiceAccountFile string `json:"gcpServiceAccountFile"`
	// AWSAccessKeyID is the Access Key ID for an AWS account
	AWSAccessKeyID string `json:"awsAccessKeyID"`
	// AWSSecretAccessKey is the Secret Access Key for an AWS account
	AWSSecretAccessKey string `json:"awsSecretAccessKey"`
	// SSHPublicKey is a public key to import for use in AWS. This MUST be
	// RSA as that's the only algorithm AWS supports at the moment.
	SSHPublicKey string `json:"sshPublicKey"`
}

type K8sCluster

type K8sCluster struct {
	Name   string        `json:"name"`
	Status ClusterStatus `json:"status"`
}

type K8sProvisionerSpec

type K8sProvisionerSpec struct {
	// Provider is which cloud provider to use (currently gcp or aws)
	Provider string `json:"provider"`
	// Project is which project within the provider account to use
	Project string `json:"project"`
	// Credentials provides api access credentials to the cloud platform sdks
	Credentials Credentials `json:"credentials"`
	// ClusterName is the name of the cluster (including DNS zone)
	ClusterName string `json:"clusterName"`
	// StateStoreName is the name of the storage bucket to create for kops state
	StateStoreName string `json:"stateStoreName"`
	// MasterCount is how many nodes to provision as masters. Setting this value
	// higher than 1 enables HA.
	MasterCount int `json:"masterCount"`
	// NodeCount is how many nodes to provision
	// TODO: autoscaling needs to be figured out
	NodeCount int `json:"nodeCount"`
	// Zones is which zones in the cloud provider to run instances in
	Zones  []string `json:"zones"`
	Region string   `json:"region"`
}

Spec is the nebula workflow spec for provisioning a k8s cluster

Jump to

Keyboard shortcuts

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