Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CloudProviderInterface ¶
type CloudProviderInterface interface {
// Deploy deploys a new instance
Deploy(Vm) (Vm, error)
// Destroy destroys an instance
Destroy(Vm) error
// List lists all instances
List() (VmList, error)
// CreateSSHKey creates a new SSH key
CreateSSHKey(publicKeyFile string) (keyID string, err error)
// SSHInto connects to a VM
SSHInto(serverName string)
}
type ProviderAws ¶
func (ProviderAws) CreateSSHKey ¶
func (p ProviderAws) CreateSSHKey(publicKeyFile string) (keyID string, err error)
func (ProviderAws) Destroy ¶
func (p ProviderAws) Destroy(server Vm) error
func (ProviderAws) List ¶
func (p ProviderAws) List() (VmList, error)
func (ProviderAws) SSHInto ¶
func (p ProviderAws) SSHInto(serverName string)
type ProviderAzure ¶
type ProviderAzure struct {
VmClient *armcompute.VirtualMachinesClient
NicClient *armnetwork.InterfacesClient
PublicIPClient *armnetwork.PublicIPAddressesClient
SSHKeyClient *armcompute.SSHPublicKeysClient
VnetClient *armnetwork.VirtualNetworksClient
}
func (ProviderAzure) CreateSSHKey ¶
func (p ProviderAzure) CreateSSHKey(publicKeyFileName string) (string, error)
func (ProviderAzure) Destroy ¶
func (p ProviderAzure) Destroy(server Vm) error
func (ProviderAzure) List ¶
func (p ProviderAzure) List() (VmList, error)
func (ProviderAzure) SSHInto ¶
func (p ProviderAzure) SSHInto(serverName string)
type ProviderHetzner ¶
func (ProviderHetzner) CreateSSHKey ¶
func (p ProviderHetzner) CreateSSHKey(publicKeyFile string) (keyID string, err error)
func (ProviderHetzner) Destroy ¶
func (p ProviderHetzner) Destroy(server Vm) error
func (ProviderHetzner) List ¶
func (p ProviderHetzner) List() (VmList, error)
func (ProviderHetzner) SSHInto ¶
func (p ProviderHetzner) SSHInto(serverName string)
type Vm ¶
type Vm struct {
// ID is the ID of the instance
ID string
// Name is the name of the instance
Name string
// IP is the public IP of the instance
IP string
// Type is the type of the instance
Type string
// Status is the status of the instance
Status string
// Location is the location of the instance
Location string
// SSHKeyID is the ID of the SSH key
SSHKeyID string
// ExposePorts is the list of ports to expose
ExposePorts []int64
// CreatedAt is the creation date of the instance
CreatedAt time.Time
}
Click to show internal directories.
Click to hide internal directories.