Documentation ¶
Index ¶
- Variables
- func ConfigureAuth(p Provisioner, authOptions auth.AuthOptions) error
- func Register(name string, p *RegisteredProvisioner)
- type Boot2DockerProvisioner
- func (provisioner *Boot2DockerProvisioner) CompatibleWithHost() bool
- func (provisioner *Boot2DockerProvisioner) GenerateDockerOptions(dockerPort int, authOptions auth.AuthOptions) (*DockerOptions, error)
- func (provisioner *Boot2DockerProvisioner) GetDockerOptionsDir() string
- func (provisioner *Boot2DockerProvisioner) GetDriver() drivers.Driver
- func (provisioner *Boot2DockerProvisioner) Hostname() (string, error)
- func (provisioner *Boot2DockerProvisioner) Package(name string, action pkgaction.PackageAction) error
- func (provisioner *Boot2DockerProvisioner) Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions) error
- func (provisioner *Boot2DockerProvisioner) SSHCommand(args ...string) (*exec.Cmd, error)
- func (provisioner *Boot2DockerProvisioner) Service(name string, action pkgaction.ServiceAction) error
- func (provisioner *Boot2DockerProvisioner) SetHostname(hostname string) error
- func (provisioner *Boot2DockerProvisioner) SetOsReleaseInfo(info *OsRelease)
- type DockerOptions
- type OsRelease
- type Provisioner
- type RegisteredProvisioner
- type UbuntuProvisioner
- func (provisioner *UbuntuProvisioner) CompatibleWithHost() bool
- func (provisioner *UbuntuProvisioner) GenerateDockerOptions(dockerPort int, authOptions auth.AuthOptions) (*DockerOptions, error)
- func (provisioner *UbuntuProvisioner) GetDockerOptionsDir() string
- func (provisioner *UbuntuProvisioner) GetDriver() drivers.Driver
- func (provisioner *UbuntuProvisioner) Hostname() (string, error)
- func (provisioner *UbuntuProvisioner) Package(name string, action pkgaction.PackageAction) error
- func (provisioner *UbuntuProvisioner) Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions) error
- func (provisioner *UbuntuProvisioner) SSHCommand(args ...string) (*exec.Cmd, error)
- func (provisioner *UbuntuProvisioner) Service(name string, action pkgaction.ServiceAction) error
- func (provisioner *UbuntuProvisioner) SetHostname(hostname string) error
- func (provisioner *UbuntuProvisioner) SetOsReleaseInfo(info *OsRelease)
Constants ¶
This section is empty.
Variables ¶
Functions ¶
func ConfigureAuth ¶
func ConfigureAuth(p Provisioner, authOptions auth.AuthOptions) error
func Register ¶
func Register(name string, p *RegisteredProvisioner)
Types ¶
type Boot2DockerProvisioner ¶
type Boot2DockerProvisioner struct { OsReleaseInfo *OsRelease Driver drivers.Driver SwarmOptions swarm.SwarmOptions }
func (*Boot2DockerProvisioner) CompatibleWithHost ¶
func (provisioner *Boot2DockerProvisioner) CompatibleWithHost() bool
func (*Boot2DockerProvisioner) GenerateDockerOptions ¶
func (provisioner *Boot2DockerProvisioner) GenerateDockerOptions(dockerPort int, authOptions auth.AuthOptions) (*DockerOptions, error)
func (*Boot2DockerProvisioner) GetDockerOptionsDir ¶
func (provisioner *Boot2DockerProvisioner) GetDockerOptionsDir() string
func (*Boot2DockerProvisioner) GetDriver ¶
func (provisioner *Boot2DockerProvisioner) GetDriver() drivers.Driver
func (*Boot2DockerProvisioner) Hostname ¶
func (provisioner *Boot2DockerProvisioner) Hostname() (string, error)
func (*Boot2DockerProvisioner) Package ¶
func (provisioner *Boot2DockerProvisioner) Package(name string, action pkgaction.PackageAction) error
func (*Boot2DockerProvisioner) Provision ¶
func (provisioner *Boot2DockerProvisioner) Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions) error
func (*Boot2DockerProvisioner) SSHCommand ¶
func (provisioner *Boot2DockerProvisioner) SSHCommand(args ...string) (*exec.Cmd, error)
func (*Boot2DockerProvisioner) Service ¶
func (provisioner *Boot2DockerProvisioner) Service(name string, action pkgaction.ServiceAction) error
func (*Boot2DockerProvisioner) SetHostname ¶
func (provisioner *Boot2DockerProvisioner) SetHostname(hostname string) error
func (*Boot2DockerProvisioner) SetOsReleaseInfo ¶
func (provisioner *Boot2DockerProvisioner) SetOsReleaseInfo(info *OsRelease)
type DockerOptions ¶
type OsRelease ¶
type OsRelease struct { AnsiColor string `osr:"ANSI_COLOR"` Name string `osr:"NAME"` Version string `osr:"VERSION"` Id string `osr:"ID"` IdLike string `osr:"ID_LIKE"` PrettyName string `osr:"PRETTY_NAME"` VersionId string `osr:"VERSION_ID"` HomeUrl string `osr:"HOME_URL"` SupportUrl string `osr:"SUPPORT_URL"` BugReportUrl string `osr:"BUG_REPORT_URL"` }
Values in this struct must always be string or the reflection will not work properly.
func NewOsRelease ¶
func (*OsRelease) ParseOsRelease ¶
type Provisioner ¶
type Provisioner interface { // Create the files for the daemon to consume configuration settings (return struct of content and path) GenerateDockerOptions(dockerPort int, authOptions auth.AuthOptions) (*DockerOptions, error) // Get the directory where the settings files for docker are to be found GetDockerOptionsDir() string // Run a package action e.g. install Package(name string, action pkgaction.PackageAction) error // Get Hostname Hostname() (string, error) // Set hostname SetHostname(hostname string) error // Figure out if this is the right provisioner to use based on /etc/os-release info CompatibleWithHost() bool // Do the actual provisioning piece: // 1. Set the hostname on the instance. // 2. Install Docker if it is not present. // 3. Configure the daemon to accept connections over TLS. // 4. Copy the needed certificates to the server and local config dir. // 5. Configure / activate swarm if applicable. Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions) error // Perform action on a named service e.g. stop Service(name string, action pkgaction.ServiceAction) error // Get the driver which is contained in the provisioner. GetDriver() drivers.Driver // Short-hand for accessing an SSH command from the driver. SSHCommand(args ...string) (*exec.Cmd, error) // Set the OS Release info depending on how it's represented // internally SetOsReleaseInfo(info *OsRelease) }
Distribution specific actions
func DetectProvisioner ¶
func DetectProvisioner(d drivers.Driver) (Provisioner, error)
func NewBoot2DockerProvisioner ¶
func NewBoot2DockerProvisioner(d drivers.Driver) Provisioner
func NewUbuntuProvisioner ¶
func NewUbuntuProvisioner(d drivers.Driver) Provisioner
type RegisteredProvisioner ¶
type RegisteredProvisioner struct {
New func(d drivers.Driver) Provisioner
}
Detection
type UbuntuProvisioner ¶
type UbuntuProvisioner struct { OsReleaseInfo *OsRelease Driver drivers.Driver SwarmOptions swarm.SwarmOptions // contains filtered or unexported fields }
func (*UbuntuProvisioner) CompatibleWithHost ¶
func (provisioner *UbuntuProvisioner) CompatibleWithHost() bool
func (*UbuntuProvisioner) GenerateDockerOptions ¶
func (provisioner *UbuntuProvisioner) GenerateDockerOptions(dockerPort int, authOptions auth.AuthOptions) (*DockerOptions, error)
func (*UbuntuProvisioner) GetDockerOptionsDir ¶
func (provisioner *UbuntuProvisioner) GetDockerOptionsDir() string
func (*UbuntuProvisioner) GetDriver ¶
func (provisioner *UbuntuProvisioner) GetDriver() drivers.Driver
func (*UbuntuProvisioner) Hostname ¶
func (provisioner *UbuntuProvisioner) Hostname() (string, error)
func (*UbuntuProvisioner) Package ¶
func (provisioner *UbuntuProvisioner) Package(name string, action pkgaction.PackageAction) error
func (*UbuntuProvisioner) Provision ¶
func (provisioner *UbuntuProvisioner) Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions) error
func (*UbuntuProvisioner) SSHCommand ¶
func (provisioner *UbuntuProvisioner) SSHCommand(args ...string) (*exec.Cmd, error)
func (*UbuntuProvisioner) Service ¶
func (provisioner *UbuntuProvisioner) Service(name string, action pkgaction.ServiceAction) error
func (*UbuntuProvisioner) SetHostname ¶
func (provisioner *UbuntuProvisioner) SetHostname(hostname string) error
func (*UbuntuProvisioner) SetOsReleaseInfo ¶
func (provisioner *UbuntuProvisioner) SetOsReleaseInfo(info *OsRelease)
Source Files ¶
Click to show internal directories.
Click to hide internal directories.