Documentation ¶
Overview ¶
The description package defines the structure and representation and serialisation of models to facilitate the import and export of models from different controllers.
Index ¶
- func Serialize(model Model) ([]byte, error)
- type Action
- type ActionArgs
- type Address
- type AddressArgs
- type AgentTools
- type AgentToolsArgs
- type Annotations_
- type Application
- type ApplicationArgs
- type BlockDevice
- type BlockDeviceArgs
- type ByName
- type CloudCredential
- type CloudCredentialArgs
- type CloudImageMetadata
- type CloudImageMetadataArgs
- type CloudInstance
- type CloudInstanceArgs
- type Constraints
- type ConstraintsArgs
- type Endpoint
- type EndpointArgs
- type Filesystem
- type FilesystemArgs
- type FilesystemAttachment
- type FilesystemAttachmentArgs
- type HasAnnotations
- type HasConstraints
- type HasStatus
- type HasStatusHistory
- type IPAddress
- type IPAddressArgs
- type LinkLayerDevice
- type LinkLayerDeviceArgs
- type Machine
- type MachineArgs
- type Model
- type ModelArgs
- type OpenedPorts
- type OpenedPortsArgs
- type Payload
- type PayloadArgs
- type PortRange
- type PortRangeArgs
- type Relation
- type RelationArgs
- type RemoteApplication
- type RemoteApplicationArgs
- type RemoteEndpoint
- type RemoteEndpointArgs
- type Resource
- type ResourceArgs
- type ResourceRevision
- type ResourceRevisionArgs
- type SSHHostKey
- type SSHHostKeyArgs
- type Space
- type SpaceArgs
- type Status
- type StatusArgs
- type StatusHistory_
- type StatusPoint_
- type Storage
- type StorageArgs
- type StorageConstraint
- type StorageConstraintArgs
- type StoragePool
- type StoragePoolArgs
- type Subnet
- type SubnetArgs
- type Unit
- type UnitArgs
- type UnitResource
- type UnitResourceArgs
- type User
- type UserArgs
- type Volume
- type VolumeArgs
- type VolumeAttachment
- type VolumeAttachmentArgs
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Action ¶
type Action interface { Id() string Receiver() string Name() string Parameters() map[string]interface{} Enqueued() time.Time Started() time.Time Completed() time.Time Results() map[string]interface{} Status() string Message() string }
Action represents an IP action.
type ActionArgs ¶
type ActionArgs struct { Id string Receiver string Name string Parameters map[string]interface{} Enqueued time.Time Started time.Time Completed time.Time Status string Message string Results map[string]interface{} }
ActionArgs is an argument struct used to create a new internal action type that supports the Action interface.
type AddressArgs ¶
AddressArgs is an argument struct used to create a new internal address type that supports the Address interface.
type AgentTools ¶
AgentTools represent the version and related binary file that the machine and unit agents are using.
type AgentToolsArgs ¶
AgentToolsArgs is an argument struct used to add information about the tools the agent is using to a Machine.
type Annotations_ ¶
Instead of copy / pasting the Annotations, SetAnnotations, and the import three lines into every entity that has annotations, the Annotations_ helper type is provided for use in composition. This type is composed without a name so the methods get promoted so they satisfy the HasAnnotations interface.
NOTE(mjs) - The type is exported due to a limitation with go-yaml under 1.6. Once that's fixed it should be possible to make it private again.
NOTE(mjs) - The trailing underscore on the type name is to avoid collisions between the type name and the Annotations method. The underscore can go once the type becomes private again (revert to "annotations").
func (*Annotations_) Annotations ¶
func (a *Annotations_) Annotations() map[string]string
Annotations implements HasAnnotations.
func (*Annotations_) SetAnnotations ¶
func (a *Annotations_) SetAnnotations(annotations map[string]string)
SetAnnotations implements HasAnnotations.
type Application ¶
type Application interface { HasAnnotations HasConstraints HasStatus HasStatusHistory Tag() names.ApplicationTag Name() string Series() string Subordinate() bool CharmURL() string Channel() string CharmModifiedVersion() int ForceCharm() bool Exposed() bool MinUnits() int EndpointBindings() map[string]string Settings() map[string]interface{} Leader() string LeadershipSettings() map[string]interface{} MetricsCredentials() []byte StorageConstraints() map[string]StorageConstraint Resources() []Resource AddResource(ResourceArgs) Resource Units() []Unit AddUnit(UnitArgs) Unit Validate() error }
Application represents a deployed charm in a model.
type ApplicationArgs ¶
type ApplicationArgs struct { Tag names.ApplicationTag Series string Subordinate bool CharmURL string Channel string CharmModifiedVersion int ForceCharm bool Exposed bool MinUnits int EndpointBindings map[string]string Settings map[string]interface{} Leader string LeadershipSettings map[string]interface{} StorageConstraints map[string]StorageConstraintArgs MetricsCredentials []byte }
ApplicationArgs is an argument struct used to add an application to the Model.
type BlockDevice ¶
type BlockDevice interface { Name() string Links() []string Label() string UUID() string HardwareID() string BusAddress() string Size() uint64 FilesystemType() string InUse() bool MountPoint() string }
BlockDevice represents a block device on a machine.
type BlockDeviceArgs ¶
type BlockDeviceArgs struct { Name string Links []string Label string UUID string HardwareID string BusAddress string Size uint64 FilesystemType string InUse bool MountPoint string }
BlockDeviceArgs is an argument struct used to add a block device to a Machine.
type CloudCredential ¶
type CloudCredential interface { Owner() string Cloud() string Name() string AuthType() string Attributes() map[string]string }
CloudCredential represents the current cloud credential for the model.
type CloudCredentialArgs ¶
type CloudCredentialArgs struct { Owner names.UserTag Cloud names.CloudTag Name string AuthType string Attributes map[string]string }
CloudCredentialArgs is an argument struct used to create a new internal cloudCredential type that supports the CloudCredential interface.
type CloudImageMetadata ¶
type CloudImageMetadata interface { Stream() string Region() string Version() string Series() string Arch() string VirtType() string RootStorageType() string RootStorageSize() (uint64, bool) DateCreated() int64 Source() string Priority() int ImageId() string }
CloudImageMetadata represents an IP cloudimagemetadata.
type CloudImageMetadataArgs ¶
type CloudImageMetadataArgs struct { Stream string Region string Version string Series string Arch string VirtType string RootStorageType string RootStorageSize *uint64 DateCreated int64 Source string Priority int ImageId string }
CloudImageMetadataArgs is an argument struct used to create a new internal cloudimagemetadata type that supports the CloudImageMetadata interface.
type CloudInstance ¶
type CloudInstance interface { InstanceId() string Status() string Architecture() string Memory() uint64 RootDisk() uint64 CpuCores() uint64 CpuPower() uint64 Tags() []string AvailabilityZone() string }
CloudInstance holds information particular to a machine instance in a cloud.
type CloudInstanceArgs ¶
type CloudInstanceArgs struct { InstanceId string Status string Architecture string Memory uint64 RootDisk uint64 CpuCores uint64 CpuPower uint64 Tags []string AvailabilityZone string }
CloudInstanceArgs is an argument struct used to add information about the cloud instance to a Machine.
type Constraints ¶
type Constraints interface { Architecture() string Container() string CpuCores() uint64 CpuPower() uint64 InstanceType() string Memory() uint64 RootDisk() uint64 Spaces() []string Tags() []string VirtType() string }
Constraints holds information about particular deployment constraints for entities.
type ConstraintsArgs ¶
type ConstraintsArgs struct { Architecture string Container string CpuCores uint64 CpuPower uint64 InstanceType string Memory uint64 RootDisk uint64 Spaces []string Tags []string VirtType string }
ConstraintsArgs is an argument struct to construct Constraints.
type Endpoint ¶
type Endpoint interface { ApplicationName() string Name() string // Role, Interface, Optional, Limit, and Scope should all be available // through the Charm associated with the Application. There is no real need // for this information to be denormalised like this. However, for now, // since the import may well take place before the charms have been loaded // into the model, we'll send this information over. Role() string Interface() string Optional() bool Limit() int Scope() string // UnitCount returns the number of units the endpoint has settings for. UnitCount() int Settings(unitName string) map[string]interface{} SetUnitSettings(unitName string, settings map[string]interface{}) }
Endpoint represents one end of a relation. A named endpoint provided by the charm that is deployed for the application.
type EndpointArgs ¶
type EndpointArgs struct { ApplicationName string Name string Role string Interface string Optional bool Limit int Scope string }
EndpointArgs is an argument struct used to specify a relation.
type Filesystem ¶
type Filesystem interface { HasStatus HasStatusHistory Tag() names.FilesystemTag Volume() names.VolumeTag Storage() names.StorageTag Provisioned() bool Size() uint64 Pool() string FilesystemID() string Attachments() []FilesystemAttachment AddAttachment(FilesystemAttachmentArgs) FilesystemAttachment }
Filesystem represents a filesystem in the model.
type FilesystemArgs ¶
type FilesystemArgs struct { Tag names.FilesystemTag Storage names.StorageTag Volume names.VolumeTag Provisioned bool Size uint64 Pool string FilesystemID string }
FilesystemArgs is an argument struct used to add a filesystem to the Model.
type FilesystemAttachment ¶
type FilesystemAttachment interface { Machine() names.MachineTag Provisioned() bool MountPoint() string ReadOnly() bool }
FilesystemAttachment represents a filesystem attached to a machine.
type FilesystemAttachmentArgs ¶
type FilesystemAttachmentArgs struct { Machine names.MachineTag Provisioned bool ReadOnly bool MountPoint string }
FilesystemAttachmentArgs is an argument struct used to add information about the cloud instance to a Filesystem.
type HasAnnotations ¶
HasAnnotations defines the common methods for setting and getting annotations for the various entities.
type HasConstraints ¶
type HasConstraints interface { Constraints() Constraints SetConstraints(ConstraintsArgs) }
HasConstraints defines the common methods for setting and getting constraints for the various entities.
type HasStatus ¶
type HasStatus interface { Status() Status SetStatus(StatusArgs) }
HasStatus defines the common methods for setting and getting status entries for the various entities.
type HasStatusHistory ¶
type HasStatusHistory interface { StatusHistory() []Status SetStatusHistory([]StatusArgs) }
HasStatusHistory defines the common methods for setting and getting historical status entries for the various entities.
type IPAddress ¶
type IPAddress interface { ProviderID() string DeviceName() string MachineID() string SubnetCIDR() string ConfigMethod() string Value() string DNSServers() []string DNSSearchDomains() []string GatewayAddress() string }
IPAddress represents an IP address.
type IPAddressArgs ¶
type IPAddressArgs struct { ProviderID string DeviceName string MachineID string SubnetCIDR string ConfigMethod string Value string DNSServers []string DNSSearchDomains []string GatewayAddress string }
IPAddressArgs is an argument struct used to create a new internal ipaddress type that supports the IPAddress interface.
type LinkLayerDevice ¶
type LinkLayerDevice interface { Name() string MTU() uint ProviderID() string MachineID() string Type() string MACAddress() string IsAutoStart() bool IsUp() bool ParentName() string }
LinkLayerDevice represents a link layer device.
type LinkLayerDeviceArgs ¶
type LinkLayerDeviceArgs struct { Name string MTU uint ProviderID string MachineID string Type string MACAddress string IsAutoStart bool IsUp bool ParentName string }
LinkLayerDeviceArgs is an argument struct used to create a new internal linklayerdevice type that supports the LinkLayerDevice interface.
type Machine ¶
type Machine interface { HasAnnotations HasConstraints HasStatus HasStatusHistory Id() string Tag() names.MachineTag Nonce() string PasswordHash() string Placement() string Series() string ContainerType() string Jobs() []string SupportedContainers() ([]string, bool) Instance() CloudInstance SetInstance(CloudInstanceArgs) // Life() string -- only transmit alive things? ProviderAddresses() []Address MachineAddresses() []Address SetAddresses(machine []AddressArgs, provider []AddressArgs) PreferredPublicAddress() Address PreferredPrivateAddress() Address SetPreferredAddresses(public AddressArgs, private AddressArgs) Tools() AgentTools SetTools(AgentToolsArgs) Containers() []Machine AddContainer(MachineArgs) Machine BlockDevices() []BlockDevice AddBlockDevice(BlockDeviceArgs) BlockDevice OpenedPorts() []OpenedPorts AddOpenedPorts(OpenedPortsArgs) OpenedPorts // THINKING: Validate() error to make sure the machine has // enough stuff set, like tools, and addresses etc. Validate() error }
Machine represents an existing live machine or container running in the model.
type MachineArgs ¶
type MachineArgs struct { Id names.MachineTag Nonce string PasswordHash string Placement string Series string ContainerType string Jobs []string // A null value means that we don't yet know which containers // are supported. An empty slice means 'no containers are supported'. SupportedContainers *[]string }
MachineArgs is an argument struct used to add a machine to the Model.
type Model ¶
type Model interface { HasAnnotations HasConstraints Cloud() string CloudRegion() string CloudCredential() CloudCredential SetCloudCredential(CloudCredentialArgs) Tag() names.ModelTag Owner() names.UserTag Config() map[string]interface{} LatestToolsVersion() version.Number // UpdateConfig overwrites existing config values with those specified. UpdateConfig(map[string]interface{}) // Blocks returns a map of block type to the message associated with that // block. Blocks() map[string]string Users() []User AddUser(UserArgs) Machines() []Machine AddMachine(MachineArgs) Machine Applications() []Application AddApplication(ApplicationArgs) Application Relations() []Relation AddRelation(RelationArgs) Relation Spaces() []Space AddSpace(SpaceArgs) Space LinkLayerDevices() []LinkLayerDevice AddLinkLayerDevice(LinkLayerDeviceArgs) LinkLayerDevice Subnets() []Subnet AddSubnet(SubnetArgs) Subnet IPAddresses() []IPAddress AddIPAddress(IPAddressArgs) IPAddress SSHHostKeys() []SSHHostKey AddSSHHostKey(SSHHostKeyArgs) SSHHostKey CloudImageMetadata() []CloudImageMetadata AddCloudImageMetadata(CloudImageMetadataArgs) CloudImageMetadata Actions() []Action AddAction(ActionArgs) Action Sequences() map[string]int SetSequence(name string, value int) Volumes() []Volume AddVolume(VolumeArgs) Volume Filesystems() []Filesystem AddFilesystem(FilesystemArgs) Filesystem Storages() []Storage AddStorage(StorageArgs) Storage StoragePools() []StoragePool AddStoragePool(StoragePoolArgs) StoragePool RemoteApplications() []RemoteApplication AddRemoteApplication(RemoteApplicationArgs) RemoteApplication Validate() error }
Model is a database agnostic representation of an existing model.
func Deserialize ¶
Deserialize constructs a Model from a serialized YAML byte stream. The normal use for this is to construct the Model representation after getting the byte stream from an API connection or read from a file.
type ModelArgs ¶
type ModelArgs struct { Owner names.UserTag Config map[string]interface{} LatestToolsVersion version.Number Blocks map[string]string Cloud string CloudRegion string }
ModelArgs represent the bare minimum information that is needed to represent a model.
type OpenedPorts ¶
OpenedPorts represents a collection of port ranges that are open on a particular subnet. OpenedPorts are always associated with a Machine.
type OpenedPortsArgs ¶
type OpenedPortsArgs struct { SubnetID string OpenedPorts []PortRangeArgs }
OpenedPortsArgs is an argument struct used to add a set of opened port ranges to a machine.
type Payload ¶
type Payload interface { Name() string Type() string RawID() string State() string Labels() []string }
Payload represents a charm payload for a unit.
type PayloadArgs ¶
PayloadArgs is an argument struct used to create a new internal payload type that supports the Payload interface.
type PortRangeArgs ¶
PortRangeArgs is an argument struct used to create a PortRange. This is only done as part of creating OpenedPorts for a Machine.
type Relation ¶
type Relation interface { Id() int Key() string Endpoints() []Endpoint AddEndpoint(EndpointArgs) Endpoint }
Relation represents a relationship between two applications, or a peer relation between different instances of an application.
type RelationArgs ¶
RelationArgs is an argument struct used to specify a relation.
type RemoteApplication ¶
type RemoteApplication interface { Tag() names.ApplicationTag Name() string OfferName() string URL() string SourceModelTag() names.ModelTag IsConsumerProxy() bool Endpoints() []RemoteEndpoint AddEndpoint(RemoteEndpointArgs) RemoteEndpoint }
RemoteApplication represents an application in another model that can participate in a relation in this model.
type RemoteApplicationArgs ¶
type RemoteApplicationArgs struct { Tag names.ApplicationTag OfferName string URL string SourceModel names.ModelTag IsConsumerProxy bool }
RemoteApplicationArgs is an argument struct used to add a remote application to the Model.
type RemoteEndpoint ¶
type RemoteEndpoint interface { Name() string Role() string Interface() string Limit() int Scope() string }
RemoteEndpoint represents a connection point that can be related to another application.
type RemoteEndpointArgs ¶
RemoteEndpointArgs is an argument struct used to add a remote endpoint to a remote application.
type Resource ¶
type Resource interface { // Name returns the name of the resource. Name() string // SetApplicationRevision sets the application revision of the // resource. SetApplicationRevision(ResourceRevisionArgs) ResourceRevision // ApplicationRevision returns the revision of the resource as set // on the application. May return nil if SetApplicationRevision // hasn't been called yet. ApplicationRevision() ResourceRevision // SetCharmStoreRevision sets the application revision of the // resource. SetCharmStoreRevision(ResourceRevisionArgs) ResourceRevision // CharmStoreRevision returns the revision the charmstore has, as // seen at the last poll. May return nil if SetCharmStoreRevision // hasn't been called yet. CharmStoreRevision() ResourceRevision // Validate checks the consistency of the resource and its // revisions. Validate() error }
Resource represents an application resource.
type ResourceArgs ¶
type ResourceArgs struct {
Name string
}
ResourceArgs is an argument struct used to create a new internal resource type that supports the Resource interface.
type ResourceRevision ¶
type ResourceRevision interface { Revision() int Type() string Path() string Description() string Origin() string FingerprintHex() string Size() int64 Timestamp() time.Time Username() string }
ResourceRevision represents a revision of an application resource.
type ResourceRevisionArgs ¶
type ResourceRevisionArgs struct { Revision int Type string Path string Description string Origin string FingerprintHex string Size int64 Timestamp time.Time Username string }
ResourceRevisionArgs is an argument struct used to add a new internal resource revision to a Resource.
type SSHHostKey ¶
SSHHostKey represents an ssh host key.
type SSHHostKeyArgs ¶
SSHHostKeyArgs is an argument struct used to create a new internal sshHostKey type that supports the SSHHostKey interface.
type SpaceArgs ¶
SpaceArgs is an argument struct used to create a new internal space type that supports the Space interface.
type Status ¶
type Status interface { Value() string Message() string Data() map[string]interface{} Updated() time.Time }
Status represents an agent, application, or workload status.
type StatusArgs ¶
type StatusArgs struct { Value string Message string Data map[string]interface{} Updated time.Time }
StatusArgs is an argument struct used to set the agent, application, or workload status.
type StatusHistory_ ¶
type StatusHistory_ struct { Version int `yaml:"version"` History []*StatusPoint_ `yaml:"history"` }
func (*StatusHistory_) SetStatusHistory ¶
func (s *StatusHistory_) SetStatusHistory(args []StatusArgs)
SetStatusHistory implements HasStatusHistory.
func (*StatusHistory_) StatusHistory ¶
func (s *StatusHistory_) StatusHistory() []Status
StatusHistory implements HasStatusHistory.
type StatusPoint_ ¶
type StatusPoint_ struct { Value_ string `yaml:"value"` Message_ string `yaml:"message,omitempty"` Data_ map[string]interface{} `yaml:"data,omitempty"` Updated_ time.Time `yaml:"updated"` }
StatusPoint_ implements Status, and represents the status of an entity at a point in time. Used in the serialization of both status and StatusHistory_.
func (*StatusPoint_) Data ¶
func (a *StatusPoint_) Data() map[string]interface{}
Data implements Status.
func (*StatusPoint_) Updated ¶
func (a *StatusPoint_) Updated() time.Time
Updated implements Status.
type Storage ¶
type Storage interface { Tag() names.StorageTag Kind() string // Owner returns the tag of the application or unit that owns this storage // instance. Owner() (names.Tag, error) Name() string Attachments() []names.UnitTag Validate() error }
Storage represents the state of a unit or application-wide storage instance in the model.
type StorageArgs ¶
type StorageArgs struct { Tag names.StorageTag Kind string Owner names.Tag Name string Attachments []names.UnitTag }
StorageArgs is an argument struct used to add a storage to the Model.
type StorageConstraint ¶
type StorageConstraint interface { // Pool is the name of the storage pool from which to provision the // storage instances. Pool() string // Size is the required size of the storage instances, in MiB. Size() uint64 // Count is the required number of storage instances. Count() uint64 }
StorageConstraint repressents the user-specified constraints for provisioning storage instances for an application unit.
type StorageConstraintArgs ¶
StorageConstraintArgs is an argument struct used to create a new internal storageconstraint type that supports the StorageConstraint interface.
type StoragePool ¶
StoragePool represents a named storage pool and its settings.
type StoragePoolArgs ¶
StoragePoolArgs is an argument struct used to add a storage pool to the Model.
type Subnet ¶
type Subnet interface { ProviderId() string CIDR() string VLANTag() int AvailabilityZone() string SpaceName() string AllocatableIPHigh() string AllocatableIPLow() string }
Subnet represents a network subnet.
type SubnetArgs ¶
type SubnetArgs struct { ProviderId string CIDR string VLANTag int AvailabilityZone string SpaceName string // These will be deprecated once the address allocation strategy for // EC2 is changed. They are unused already on MAAS. AllocatableIPHigh string AllocatableIPLow string }
SubnetArgs is an argument struct used to create a new internal subnet type that supports the Subnet interface.
type Unit ¶
type Unit interface { HasAnnotations HasConstraints Tag() names.UnitTag Name() string Machine() names.MachineTag PasswordHash() string Principal() names.UnitTag Subordinates() []names.UnitTag MeterStatusCode() string MeterStatusInfo() string Tools() AgentTools SetTools(AgentToolsArgs) WorkloadStatus() Status SetWorkloadStatus(StatusArgs) WorkloadStatusHistory() []Status SetWorkloadStatusHistory([]StatusArgs) WorkloadVersion() string WorkloadVersionHistory() []Status SetWorkloadVersionHistory([]StatusArgs) AgentStatus() Status SetAgentStatus(StatusArgs) AgentStatusHistory() []Status SetAgentStatusHistory([]StatusArgs) AddResource(UnitResourceArgs) UnitResource Resources() []UnitResource AddPayload(PayloadArgs) Payload Payloads() []Payload Validate() error }
Unit represents an instance of an application in a model.
type UnitArgs ¶
type UnitArgs struct { Tag names.UnitTag Machine names.MachineTag PasswordHash string Principal names.UnitTag Subordinates []names.UnitTag WorkloadVersion string MeterStatusCode string MeterStatusInfo string }
UnitArgs is an argument struct used to add a Unit to a Application in the Model.
type UnitResource ¶
type UnitResource interface { // Name returns the name of the resource. Name() string // Revision returns the revision of the resource as used by a // particular unit. Revision() ResourceRevision }
UnitResource represents the revision of a resource used by a unit.
type UnitResourceArgs ¶
type UnitResourceArgs struct { Name string RevisionArgs ResourceRevisionArgs }
UnitResourceArgs is an argument struct used to specify the revision of a resource used by a unit.
type User ¶
type User interface { Name() names.UserTag DisplayName() string CreatedBy() names.UserTag DateCreated() time.Time LastConnection() time.Time Access() string }
User represents a user of the model. Users are able to connect to, and depending on the read only flag, modify the model.
type Volume ¶
type Volume interface { HasStatus HasStatusHistory Tag() names.VolumeTag Storage() names.StorageTag Provisioned() bool Size() uint64 Pool() string HardwareID() string VolumeID() string Persistent() bool Attachments() []VolumeAttachment AddAttachment(VolumeAttachmentArgs) VolumeAttachment }
Volume represents a volume (disk, logical volume, etc.) in the model.
type VolumeArgs ¶
type VolumeArgs struct { Tag names.VolumeTag Storage names.StorageTag Provisioned bool Size uint64 Pool string HardwareID string VolumeID string Persistent bool }
VolumeArgs is an argument struct used to add a volume to the Model.
Source Files ¶
- action.go
- address.go
- annotations.go
- application.go
- blockdevice.go
- cloudcredential.go
- cloudimagemetadata.go
- constraints.go
- doc.go
- filesystem.go
- interfaces.go
- ipaddress.go
- linklayerdevice.go
- machine.go
- model.go
- payload.go
- ports.go
- relation.go
- remoteapplication.go
- remoteendpoint.go
- resource.go
- serialization.go
- space.go
- sshhostkey.go
- status.go
- storage.go
- storageconstraint.go
- storagepool.go
- subnet.go
- unit.go
- unitresources.go
- user.go
- volume.go