Documentation ¶
Index ¶
- Constants
- Variables
- func BuildEnvNameFromResolvedRepo(resolvedRepo ResolvedEnvRepository) string
- func BuildEnvNameSlug(name string) string
- func CheckPortValidity(port string, reservedPorts []string) error
- type CloudService
- type CloudServiceBuilder
- type Cluster
- type ClusterStatus
- type Config
- func (c *Config) ClusterExists(clusterName string) bool
- func (c *Config) CountEnvsInCluster(clusterName string) (int, error)
- func (c *Config) EnvExists(clusterName, envName string) bool
- func (c *Config) GetCluster(clusterName string) (*Cluster, error)
- func (c *Config) GetEnv(clusterName, envName string) (*Env, error)
- func (c *Config) RemoveCluster(clusterName string) error
- func (c *Config) RemoveEnv(clusterName, envName string) error
- func (c *Config) SetCluster(cluster *Cluster) error
- func (c *Config) SetEnv(clusterName string, env *Env) error
- type Env
- type EnvRepositoryGitURL
- type EnvSSHHostKey
- type EnvStatus
- type ErrClosePortCreatingEnv
- type ErrClosePortRemovingEnv
- type ErrClusterAlreadyExists
- type ErrClusterNotExists
- type ErrEditCreatingEnv
- type ErrEditRemovingEnv
- type ErrEnvNotExists
- type ErrEnvRepositoryNotFound
- type ErrInitRemovingEnv
- type ErrInvalidPort
- type ErrOpenPortCreatingEnv
- type ErrOpenPortRemovingEnv
- type ErrReservedPort
- type HookRunner
- type ResolvedEnvRepository
Constants ¶
View Source
const (
DefaultClusterName = "default"
)
Variables ¶
View Source
var ( ErrYoloNotInstalled = errors.New("ErrYoloNotInstalled") ErrUninstallExistingEnvs = errors.New("ErrUninstallExistingEnvs") )
Functions ¶
func BuildEnvNameFromResolvedRepo ¶
func BuildEnvNameFromResolvedRepo( resolvedRepo ResolvedEnvRepository, ) string
func BuildEnvNameSlug ¶
func CheckPortValidity ¶
Types ¶
type CloudService ¶
type CloudService interface { CreateYoloConfigStorage(stepper.Stepper) error RemoveYoloConfigStorage(stepper.Stepper) error LookupYoloConfig(stepper.Stepper) (*Config, error) SaveYoloConfig(stepper.Stepper, *Config) error CreateCluster(stepper.Stepper, *Config, *Cluster) error RemoveCluster(stepper.Stepper, *Config, *Cluster) error CheckInstanceTypeValidity(stepper.Stepper, string) error CreateEnv(stepper.Stepper, *Config, *Cluster, *Env) error RemoveEnv(stepper.Stepper, *Config, *Cluster, *Env) error OpenPort(stepper.Stepper, *Config, *Cluster, *Env, string) error ClosePort(stepper.Stepper, *Config, *Cluster, *Env, string) error }
type CloudServiceBuilder ¶
type CloudServiceBuilder interface {
Build() (CloudService, error)
}
type Cluster ¶
type Cluster struct { ID string `json:"id"` Name string `json:"name"` DefaultInstanceType string `json:"default_instance_type"` InfrastructureJSON string `json:"infrastructure_json"` Envs map[string]*Env `json:"envs"` IsDefault bool `json:"is_default"` Status ClusterStatus `json:"status"` CreatedAtTimestamp int64 `json:"created_at_timestamp"` }
func NewCluster ¶
func (*Cluster) GetNameSlug ¶
func (*Cluster) SetInfrastructureJSON ¶
type ClusterStatus ¶
type ClusterStatus string
const ( ClusterStatusCreating ClusterStatus = "creating" ClusterStatusCreated ClusterStatus = "created" ClusterStatusRemoving ClusterStatus = "removing" )
type Config ¶
type Config struct { ID string `json:"id"` Clusters map[string]*Cluster `json:"clusters"` CreatedAtTimestamp int64 `json:"created_at_timestamp"` }
func (*Config) ClusterExists ¶
func (*Config) CountEnvsInCluster ¶
func (*Config) RemoveCluster ¶
func (*Config) SetCluster ¶
type Env ¶
type Env struct { ID string `json:"id"` Name string `json:"name"` InfrastructureJSON string `json:"infrastructure_json"` InstanceType string `json:"instance_type"` InstancePublicIPAddress string `json:"instance_public_ip_address"` SSHHostKeys []EnvSSHHostKey `json:"ssh_host_keys"` SSHKeyPairPEMContent string `json:"ssh_key_pair_pem_content"` ResolvedRepository ResolvedEnvRepository `json:"resolved_repository"` OpenedPorts map[string]bool `json:"opened_ports"` Status EnvStatus `json:"status"` AdditionalPropertiesJSON string `json:"additional_properties_json"` CreatedAtTimestamp int64 `json:"created_at_timestamp"` }
func NewEnv ¶
func NewEnv( envName string, instanceType string, resolvedRepository ResolvedEnvRepository, ) *Env
func (*Env) GetNameSlug ¶
func (*Env) GetSSHKeyPairName ¶
func (*Env) SetAdditionalPropertiesJSON ¶
func (*Env) SetInfrastructureJSON ¶
type EnvRepositoryGitURL ¶
type EnvRepositoryGitURL string
type EnvSSHHostKey ¶
type EnvSSHHostKey struct { Algorithm string `json:"algorithm"` Fingerprint string `json:"fingerprint"` }
func ParseSSHHostKeys ¶
func ParseSSHHostKeys(hostKeysContent string) ([]EnvSSHHostKey, error)
type ErrClosePortCreatingEnv ¶
type ErrClosePortCreatingEnv struct {
EnvName string
}
func (ErrClosePortCreatingEnv) Error ¶
func (ErrClosePortCreatingEnv) Error() string
type ErrClosePortRemovingEnv ¶
type ErrClosePortRemovingEnv struct {
EnvName string
}
func (ErrClosePortRemovingEnv) Error ¶
func (ErrClosePortRemovingEnv) Error() string
type ErrClusterAlreadyExists ¶
type ErrClusterAlreadyExists struct {
ClusterName string
}
func (ErrClusterAlreadyExists) Error ¶
func (e ErrClusterAlreadyExists) Error() string
type ErrClusterNotExists ¶
type ErrClusterNotExists struct {
ClusterName string
}
func (ErrClusterNotExists) Error ¶
func (e ErrClusterNotExists) Error() string
type ErrEditCreatingEnv ¶
type ErrEditCreatingEnv struct {
EnvName string
}
func (ErrEditCreatingEnv) Error ¶
func (ErrEditCreatingEnv) Error() string
type ErrEditRemovingEnv ¶
type ErrEditRemovingEnv struct {
EnvName string
}
func (ErrEditRemovingEnv) Error ¶
func (ErrEditRemovingEnv) Error() string
type ErrEnvNotExists ¶
func (ErrEnvNotExists) Error ¶
func (ErrEnvNotExists) Error() string
type ErrEnvRepositoryNotFound ¶
func (ErrEnvRepositoryNotFound) Error ¶
func (ErrEnvRepositoryNotFound) Error() string
type ErrInitRemovingEnv ¶
type ErrInitRemovingEnv struct {
EnvName string
}
func (ErrInitRemovingEnv) Error ¶
func (ErrInitRemovingEnv) Error() string
type ErrInvalidPort ¶
type ErrInvalidPort struct {
InvalidPort string
}
func (ErrInvalidPort) Error ¶
func (ErrInvalidPort) Error() string
type ErrOpenPortCreatingEnv ¶
type ErrOpenPortCreatingEnv struct {
EnvName string
}
func (ErrOpenPortCreatingEnv) Error ¶
func (ErrOpenPortCreatingEnv) Error() string
type ErrOpenPortRemovingEnv ¶
type ErrOpenPortRemovingEnv struct {
EnvName string
}
func (ErrOpenPortRemovingEnv) Error ¶
func (ErrOpenPortRemovingEnv) Error() string
type ErrReservedPort ¶
type ErrReservedPort struct {
ReservedPort string
}
func (ErrReservedPort) Error ¶
func (ErrReservedPort) Error() string
type HookRunner ¶
type HookRunner interface { Run( cloudService CloudService, config *Config, cluster *Cluster, env *Env, ) error }
type ResolvedEnvRepository ¶
type ResolvedEnvRepository struct { Name string `json:"name"` Owner string `json:"owner"` ExplicitOwner bool `json:"explicit_owner"` GitURL EnvRepositoryGitURL `json:"git_url"` GitHTTPURL EnvRepositoryGitURL `json:"git_http_url"` LanguagesUsed []string `json:"languages_used"` }
Click to show internal directories.
Click to hide internal directories.