Documentation
¶
Index ¶
Constants ¶
View Source
const ( SimpleStreams IncusRemoteProtocol = "simplestreams" IncusImageVirtualMachine IncusImageType = "virtual-machine" IncusImageContainer IncusImageType = "container" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Incus ¶
type Incus struct {
// UnixSocket is the path on disk to the Incus unix socket. If defined,
// this is prefered over connecting via HTTPs.
UnixSocket string `toml:"unix_socket_path" json:"unix-socket-path"`
// Project name is the name of the project in which this runner will create
// instances. If this option is not set, the default project will be used.
// The project used here, must have all required profiles created by you
// beforehand. For Incus, the "flavor" used in the runner definition for a pool
// equates to a profile in the desired project.
ProjectName string `toml:"project_name" json:"project-name"`
// IncludeDefaultProfile specifies whether or not this provider will always add
// the "default" profile to any newly created instance.
IncludeDefaultProfile bool `toml:"include_default_profile" json:"include-default-profile"`
// URL holds the URL of the remote Incus server.
// example: https://10.10.10.1:8443/
URL string `toml:"url" json:"url"`
// ClientCertificate is the x509 client certificate path used for authentication.
ClientCertificate string `toml:"client_certificate" json:"client_certificate"`
// ClientKey is the key used for client certificate authentication.
ClientKey string `toml:"client_key" json:"client-key"`
// TLS certificate of the remote server. If not specified, the system CA is used.
TLSServerCert string `toml:"tls_server_certificate" json:"tls-server-certificate"`
// TLSCA is the TLS CA certificate when running Incus in PKI mode.
TLSCA string `toml:"tls_ca" json:"tls-ca"`
// ImageRemotes is a map to a set of remote image repositories we can use to
// download images.
ImageRemotes map[string]IncusImageRemote `toml:"image_remotes" json:"image-remotes"`
// SecureBoot enables secure boot for VMs spun up using this provider.
SecureBoot bool `toml:"secure_boot" json:"secure-boot"`
// InstanceType allows you to choose between a virtual machine and a container
InstanceType IncusImageType `toml:"instance_type" json:"instance-type"`
}
Incus holds connection information for an Incus cluster.
func (*Incus) GetInstanceType ¶
func (l *Incus) GetInstanceType() IncusImageType
type IncusImageRemote ¶
type IncusImageRemote struct {
Address string `toml:"addr" json:"addr"`
Public bool `toml:"public" json:"public"`
Protocol IncusRemoteProtocol `toml:"protocol" json:"protocol"`
InsecureSkipVerify bool `toml:"skip_verify" json:"skip-verify"`
}
IncusImageRemote holds information about a remote server from which Incus can fetch OS images. Typically this will be a simplestreams server.
func (*IncusImageRemote) Validate ¶
func (l *IncusImageRemote) Validate() error
type IncusImageType ¶
type IncusImageType string
func (IncusImageType) String ¶
func (l IncusImageType) String() string
type IncusRemoteProtocol ¶
type IncusRemoteProtocol string
Click to show internal directories.
Click to hide internal directories.