maas

package
v0.0.0-...-288c4de Latest Latest
Warning

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

Go to latest
Published: Jul 5, 2023 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ContainerInterface

type ContainerInterface struct {
	Name       string
	MACAddress string
	Subnets    []ContainerInterfaceSubnet
}

ContainerInterface represents a MAAS connected network interface on the container.

type ContainerInterfaceSubnet

type ContainerInterfaceSubnet struct {
	Name    string
	Address string
}

ContainerInterfaceSubnet represents an interface's subscription to a MAAS subnet.

type Controller

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

Controller represents a MAAS server's machine functions.

func NewController

func NewController(url string, key string, machine string) (*Controller, error)

NewController returns a new Controller using the specific MAAS server and machine.

func (*Controller) CreateContainer

func (c *Controller) CreateContainer(inst Instance, interfaces []ContainerInterface) error

CreateContainer defines a new MAAS device for the controller.

func (*Controller) DefinedContainer

func (c *Controller) DefinedContainer(inst Instance) (bool, error)

DefinedContainer returns true if the container is defined in MAAS.

func (*Controller) DeleteContainer

func (c *Controller) DeleteContainer(inst Instance) error

DeleteContainer removes the MAAS device for the container.

func (*Controller) RenameContainer

func (c *Controller) RenameContainer(inst Instance, newName string) error

RenameContainer renames the MAAS device for the container without releasing any allocation.

func (*Controller) UpdateContainer

func (c *Controller) UpdateContainer(inst Instance, interfaces []ContainerInterface) error

UpdateContainer updates the MAAS device's interfaces with the new provided state.

type Instance

type Instance interface {
	Name() string
	Project() api.Project
}

Instance is a MAAS specific instance interface. This is used rather than instance.Instance to avoid import loops.

Jump to

Keyboard shortcuts

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