sshclient

package
v0.0.0-...-4bd6544 Latest Latest
Warning

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

Go to latest
Published: Oct 5, 2016 License: AGPL-3.0 Imports: 9 Imported by: 0

Documentation

Overview

Package sshclient implements the API endpoint required for Juju clients that wish to make SSH connections to Juju managed machines.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Backend

type Backend interface {
	ModelConfig() (*config.Config, error)
	GetMachineForEntity(tag string) (SSHMachine, error)
	GetSSHHostKeys(names.MachineTag) (state.SSHHostKeys, error)
	ModelTag() names.ModelTag
}

Backend defines the State API used by the sshclient facade.

type Facade

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

Facade implements the API required by the sshclient worker.

func New

func New(backend Backend, _ facade.Resources, authorizer facade.Authorizer) (*Facade, error)

New returns a new API facade for the sshclient worker.

func (*Facade) PrivateAddress

func (facade *Facade) PrivateAddress(args params.Entities) (params.SSHAddressResults, error)

PrivateAddress reports the preferred private network address for one or more entities. Machines and units are supported.

func (*Facade) Proxy

func (facade *Facade) Proxy() (params.SSHProxyResult, error)

Proxy returns whether SSH connections should be proxied through the controller hosts for the model associated with the API connection.

func (*Facade) PublicAddress

func (facade *Facade) PublicAddress(args params.Entities) (params.SSHAddressResults, error)

PublicAddress reports the preferred public network address for one or more entities. Machines and units are suppored.

func (*Facade) PublicKeys

func (facade *Facade) PublicKeys(args params.Entities) (params.SSHPublicKeysResults, error)

PublicKeys returns the public SSH hosts for one or more entities. Machines and units are supported.

type SSHMachine

type SSHMachine interface {
	MachineTag() names.MachineTag
	PublicAddress() (network.Address, error)
	PrivateAddress() (network.Address, error)
}

SSHMachine specifies the methods on State.Machine of interest to the SSHClient facade.

Jump to

Keyboard shortcuts

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