service

package
v0.0.0-...-725038a Latest Latest
Warning

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

Go to latest
Published: Sep 18, 2022 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Builder

type Builder struct {
	// contains filtered or unexported fields
}

func NewBuilder

func NewBuilder(
	opts BuilderOpts,
	userConfigResolver UserConfigResolver,
	userConfigValidator UserConfigValidator,
) Builder

func (Builder) Build

func (b Builder) Build() (entities.CloudService, error)

type BuilderOpts

type BuilderOpts struct {
	YoloConfigDir string
}

type ClusterInfrastructure

type ClusterInfrastructure struct {
	Network  *infrastructure.Network  `json:"network"`
	Location *infrastructure.Location `json:"location"`
}

type EnvInfrastructure

type EnvInfrastructure struct {
	Firewall *infrastructure.Firewall `json:"firewall"`
	SSHKey   *infrastructure.SSHKey   `json:"ssh_key"`
	Server   *infrastructure.Server   `json:"server"`
}

type ErrInvalidInstanceType

type ErrInvalidInstanceType struct {
	InstanceType string
	Region       string
}

func (ErrInvalidInstanceType) Error

type Hetzner

type Hetzner struct {
	// contains filtered or unexported fields
}

func NewHetzner

func NewHetzner(config *userconfig.Config) *Hetzner

func (*Hetzner) CheckInstanceTypeValidity

func (h *Hetzner) CheckInstanceTypeValidity(
	stepper stepper.Stepper,
	instanceType string,
) error

func (*Hetzner) ClosePort

func (h *Hetzner) ClosePort(
	stepper stepper.Stepper,
	config *entities.Config,
	cluster *entities.Cluster,
	env *entities.Env,
	portToClose string,
) error

func (*Hetzner) CreateCluster

func (h *Hetzner) CreateCluster(
	stepper stepper.Stepper,
	config *entities.Config,
	cluster *entities.Cluster,
) error

func (*Hetzner) CreateEnv

func (h *Hetzner) CreateEnv(
	stepper stepper.Stepper,
	config *entities.Config,
	cluster *entities.Cluster,
	env *entities.Env,
) error

func (*Hetzner) CreateYoloConfigStorage

func (h *Hetzner) CreateYoloConfigStorage(
	stepper stepper.Stepper,
) error

func (*Hetzner) LookupYoloConfig

func (h *Hetzner) LookupYoloConfig(
	stepper stepper.Stepper,
) (*entities.Config, error)

func (*Hetzner) OpenPort

func (h *Hetzner) OpenPort(
	stepper stepper.Stepper,
	config *entities.Config,
	cluster *entities.Cluster,
	env *entities.Env,
	portToOpen string,
) error

func (*Hetzner) RemoveCluster

func (h *Hetzner) RemoveCluster(
	stepper stepper.Stepper,
	config *entities.Config,
	cluster *entities.Cluster,
) error

func (*Hetzner) RemoveEnv

func (h *Hetzner) RemoveEnv(
	stepper stepper.Stepper,
	config *entities.Config,
	cluster *entities.Cluster,
	env *entities.Env,
) error

func (*Hetzner) RemoveYoloConfigStorage

func (h *Hetzner) RemoveYoloConfigStorage(
	stepper stepper.Stepper,
) error

func (*Hetzner) SaveYoloConfig

func (h *Hetzner) SaveYoloConfig(
	stepper stepper.Stepper,
	config *entities.Config,
) error

type UserConfigResolver

type UserConfigResolver interface {
	Resolve() (*userconfig.Config, error)
}

type UserConfigValidator

type UserConfigValidator interface {
	Validate(userConfig *userconfig.Config) error
}

Jump to

Keyboard shortcuts

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