client

package
v1.6.1 Latest Latest
Warning

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

Go to latest
Published: Mar 4, 2026 License: MPL-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	HTTPAddrEnvName         = "CLOUDTEMPLE_HTTP_ADDR"
	HTTPSchemeEnvName       = "CLOUDTEMPLE_HTTP_SCHEME"
	HTTPClientIDEnvName     = "CLOUDTEMPLE_CLIENT_ID"
	HTTPClientSecretEnvName = "CLOUDTEMPLE_SECRET_ID"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ACL added in v1.5.0

type ACL struct {
	ID   string
	Name string
	Role string
}

type ACLClient added in v1.5.0

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

func (*ACLClient) ListByBucket added in v1.5.0

func (c *ACLClient) ListByBucket(ctx context.Context, bucketName string) ([]*ACL, error)

ListByBucket récupère tous les storage accounts qui ont accès à un bucket spécifique

func (*ACLClient) ListByStorageAccount added in v1.5.0

func (c *ACLClient) ListByStorageAccount(ctx context.Context, storageAccountName string) ([]*ACL, error)

ListByStorageAccount récupère tous les buckets auxquels un storage account a accès

type ACLEntryClient added in v1.5.0

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

func (*ACLEntryClient) Grant added in v1.5.0

func (c *ACLEntryClient) Grant(ctx context.Context, bucket, role, storageAccount string) (string, error)

func (*ACLEntryClient) Revoke added in v1.5.0

func (c *ACLEntryClient) Revoke(ctx context.Context, bucket, role, storageAccount string) (string, error)

type Activity

type Activity struct {
	ID             string
	TenantId       string
	Description    string
	Type           string
	Tags           []string
	CreationDate   time.Time
	ConcernedItems []ActivityConcernedItem
	State          map[string]ActivityState
}

type ActivityClient

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

func (*ActivityClient) List

func (c *ActivityClient) List(ctx context.Context, filter *struct{}) ([]*Activity, error)

func (*ActivityClient) Read

func (c *ActivityClient) Read(ctx context.Context, id string) (*Activity, error)

func (*ActivityClient) WaitForCompletion

func (c *ActivityClient) WaitForCompletion(ctx context.Context, id string, options *WaiterOptions) (*Activity, error)

type ActivityCompletionError added in v0.2.2

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

func (*ActivityCompletionError) Error added in v0.2.2

func (a *ActivityCompletionError) Error() string

type ActivityConcernedItem

type ActivityConcernedItem struct {
	ID   string
	Type string
}

type ActivityState

type ActivityState struct {
	StartDate   string
	StopDate    string
	Reason      string
	Result      string
	Progression float64
}

type AssignmentClient

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

func (*AssignmentClient) List

func (a *AssignmentClient) List(ctx context.Context, userId, tenantId, roleId string) ([]*TenantAssignment, error)

type AssociateReplicationPolicyToVirtualMachineRequest added in v1.3.0

type AssociateReplicationPolicyToVirtualMachineRequest struct {
	ConfigurationID string `json:"configurationId"`
}

type Backup added in v0.15.0

type Backup struct {
	ID                      string
	InternalID              string
	Mode                    string
	IsVirtualMachineDeleted bool
	Size                    int
	Timestamp               int
	VirtualMachine          BaseObject
	Policy                  BaseObject
}

type BackupAssignVirtualDiskRequest added in v0.6.0

type BackupAssignVirtualDiskRequest struct {
	VirtualDiskId string   `json:"virtualDiskId"`
	SLAPolicies   []string `json:"slaPolicies"`
}

type BackupAssignVirtualMachineRequest added in v0.2.0

type BackupAssignVirtualMachineRequest struct {
	VirtualMachineIds []string `json:"virtualMachineIds"`
	SLAPolicies       []string `json:"slaPolicies"`
}

type BackupBackupClient

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

type BackupClient

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

func (*BackupClient) Backup

func (c *BackupClient) Backup() *BackupBackupClient

func (*BackupClient) Job

func (c *BackupClient) Job() *BackupJobClient

func (*BackupClient) JobSession

func (c *BackupClient) JobSession() *BackupJobSessionClient

func (*BackupClient) Metrics

func (c *BackupClient) Metrics() *BackupMetricsClient

func (*BackupClient) OpenIaaS added in v0.15.0

func (c *BackupClient) OpenIaaS() *BackupOpenIaasClient

func (*BackupClient) SLAPolicy

func (c *BackupClient) SLAPolicy() *BackupSLAPolicyClient

func (*BackupClient) SPPServer

func (c *BackupClient) SPPServer() *BackupSPPServerClient

func (*BackupClient) Site

func (c *BackupClient) Site() *BackupSiteClient

func (*BackupClient) Storage

func (c *BackupClient) Storage() *BackupStorageClient

func (*BackupClient) VCenter

func (c *BackupClient) VCenter() *BackupVCenterClient

func (*BackupClient) VirtualDisk added in v0.14.0

func (c *BackupClient) VirtualDisk() *BackupVirtualDiskClient

func (*BackupClient) VirtualMachine added in v0.6.0

func (c *BackupClient) VirtualMachine() *BackupVirtualMachineClient

type BackupJob

type BackupJob struct {
	ID          string
	Name        string
	DisplayName string
	Type        string
	Status      string
	PolicyId    string
}

type BackupJobClient

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

func (*BackupJobClient) List

func (c *BackupJobClient) List(ctx context.Context, filter *BackupJobFilter) ([]*BackupJob, error)

func (*BackupJobClient) Read

func (c *BackupJobClient) Read(ctx context.Context, id string) (*BackupJob, error)

func (*BackupJobClient) Run added in v0.2.0

func (*BackupJobClient) WaitForCompletion added in v0.2.0

func (c *BackupJobClient) WaitForCompletion(ctx context.Context, id string, options *WaiterOptions) (*BackupJob, error)

type BackupJobCompletionError added in v0.3.0

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

func (*BackupJobCompletionError) Error added in v0.3.0

func (b *BackupJobCompletionError) Error() string

type BackupJobFilter added in v0.2.0

type BackupJobFilter struct {
	Type string
}

type BackupJobRunRequest added in v0.2.0

type BackupJobRunRequest struct {
	JobId    string `json:"jobId"`
	PolicyId string `json:"policyId,omitempty"`
}

type BackupJobSession

type BackupJobSession struct {
	ID            string
	JobName       string
	SlaPolicyType string
	JobId         string
	Type          string
	Duration      int
	Start         int
	End           int
	Status        string
	Statistics    BackupStatistics
	SLAPolicies   []*BackupSLAPolicyStub
}

type BackupJobSessionClient

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

func (*BackupJobSessionClient) List

func (c *BackupJobSessionClient) List(ctx context.Context, filter *struct{}) ([]*BackupJobSession, error)

type BackupMetricsClient

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

func (*BackupMetricsClient) Coverage

func (*BackupMetricsClient) History

func (*BackupMetricsClient) Platform

func (*BackupMetricsClient) PlatformCPU

func (*BackupMetricsClient) Policies

func (*BackupMetricsClient) VirtualMachines

type BackupMetricsCoverage

type BackupMetricsCoverage struct {
	FailedResources      int
	ProtectedResources   int
	UnprotectedResources int
	TotalResources       int
}

type BackupMetricsHistory

type BackupMetricsHistory struct {
	TotalRuns     int
	SucessPercent float64
	Failed        int
	Warning       int
	Success       int
	Running       int
}

type BackupMetricsPlatform

type BackupMetricsPlatform struct {
	Version        string
	Build          string
	Date           string
	Product        string
	Epoch          int
	DeploymentType string
}

type BackupMetricsPlatformCPU

type BackupMetricsPlatformCPU struct {
	CPUUtil int
}

type BackupMetricsPolicies

type BackupMetricsPolicies struct {
	Name                string
	TriggerType         string
	NumberOfProtectedVM int
}

type BackupMetricsVirtualMachines

type BackupMetricsVirtualMachines struct {
	InSPP               int
	InCompute           int
	WithBackup          int
	InSLA               int
	InOffloadingSLA     int
	TSMOffloadingFactor int
}

type BackupOpenIaasAssignPolicyRequest added in v0.15.0

type BackupOpenIaasAssignPolicyRequest struct {
	VirtualMachineId string   `json:"virtualMachineId"`
	PolicyIds        []string `json:"policyIds"`
}

type BackupOpenIaasBackupClient added in v0.15.0

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

func (*BackupOpenIaasBackupClient) List added in v0.15.0

func (*BackupOpenIaasBackupClient) Read added in v0.15.0

type BackupOpenIaasClient added in v0.15.0

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

func (*BackupOpenIaasClient) Backup added in v0.15.0

func (*BackupOpenIaasClient) Policy added in v0.15.0

type BackupOpenIaasPolicy added in v0.15.0

type BackupOpenIaasPolicy struct {
	ID              string
	Name            string
	InternalID      string
	Running         bool
	Mode            string
	MachineManager  BaseObject
	VirtualMachines []string
	Schedulers      []struct {
		TemporarilyDisabled bool
		Retention           int
		Cron                string
		Timezone            string
	}
}

type BackupOpenIaasPolicyClient added in v0.15.0

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

func (*BackupOpenIaasPolicyClient) Assign added in v0.15.0

func (*BackupOpenIaasPolicyClient) List added in v0.15.0

func (*BackupOpenIaasPolicyClient) Read added in v0.15.0

type BackupOpenIaasPolicyFilter added in v1.0.0

type BackupOpenIaasPolicyFilter struct {
	Name             string `filter:"name"`
	MachineManagerId string `filter:"machineManagerId"`
	VirtualMachineId string `filter:"virtualMachineId"`
}

type BackupSLAPolicy

type BackupSLAPolicy struct {
	ID          string
	Name        string
	SubPolicies []*BackupSLASubPolicy
}

type BackupSLAPolicyClient

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

func (*BackupSLAPolicyClient) AssignVirtualDisk added in v0.6.0

func (*BackupSLAPolicyClient) AssignVirtualMachine added in v0.2.0

func (*BackupSLAPolicyClient) List

func (*BackupSLAPolicyClient) Read

type BackupSLAPolicyFilter added in v0.2.0

type BackupSLAPolicyFilter struct {
	VirtualMachineId string `filter:"virtualMachineId"`
	VirtualDiskId    string `filter:"virtualDiskId"`
}

type BackupSLAPolicyRetention

type BackupSLAPolicyRetention struct {
	Age int
}

type BackupSLAPolicyStub

type BackupSLAPolicyStub struct {
	ID   string
	Name string
	HREF string
}

type BackupSLAPolicyTarget

type BackupSLAPolicyTarget struct {
	ID           string
	Href         string
	ResourceType string
}

type BackupSLAPolicyTrigger

type BackupSLAPolicyTrigger struct {
	Frequency    int
	Type         string
	ActivateDate int
}

type BackupSLASubPolicy

type BackupSLASubPolicy struct {
	Type          string
	UseEncryption bool
	Software      bool
	Site          string
	Retention     BackupSLAPolicyRetention
	Trigger       BackupSLAPolicyTrigger
	Target        BackupSLAPolicyTarget
}

type BackupSPPServer

type BackupSPPServer struct {
	ID      string
	Name    string
	Address string
}

type BackupSPPServerClient

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

func (*BackupSPPServerClient) List

func (*BackupSPPServerClient) Read

type BackupSPPServerFilter added in v1.0.0

type BackupSPPServerFilter struct {
	TenantId string `filter:"tenantId"`
}

type BackupSite

type BackupSite struct {
	ID   string
	Name string
}

type BackupSiteClient

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

func (*BackupSiteClient) List

func (c *BackupSiteClient) List(ctx context.Context) ([]*BackupSite, error)

type BackupStatistics

type BackupStatistics struct {
	Total   int
	Success int
	Failed  int
	Skipped int
}

type BackupStorage

type BackupStorage struct {
	ID               string
	ResourceType     string
	Type             string
	Site             string
	Name             string
	StorageId        string
	HostAddress      string
	PortNumber       int
	SSLConnection    bool
	InitializeStatus string
	Version          string
	IsReady          bool
	Capacity         BackupStorageCapacity
}

type BackupStorageCapacity

type BackupStorageCapacity struct {
	Free       int
	Total      int
	UpdateTime int
}

type BackupStorageClient

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

func (*BackupStorageClient) List

type BackupVCenter

type BackupVCenter struct {
	ID          string
	InternalId  int
	InstanceId  string
	SppServerId string
	Name        string
}

type BackupVCenterClient

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

func (*BackupVCenterClient) List

type BackupVCenterFilter added in v1.0.0

type BackupVCenterFilter struct {
	SppServerId string `filter:"sppServerId"`
}

type BackupVirtualDisk added in v0.14.0

type BackupVirtualDisk struct {
	ID               string
	Name             string
	InternalId       string
	InstanceId       string
	SPPServerId      string
	VirtualMachineId string
}

type BackupVirtualDiskClient added in v0.14.0

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

func (*BackupVirtualDiskClient) Read added in v0.14.0

func (*BackupVirtualDiskClient) WaitForInventory added in v0.14.0

func (c *BackupVirtualDiskClient) WaitForInventory(ctx context.Context, id string, options *WaiterOptions) (*BackupVirtualDisk, error)

type BackupVirtualDiskNotFoundError added in v0.14.0

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

func (*BackupVirtualDiskNotFoundError) Error added in v0.14.0

type BackupVirtualMachine added in v0.6.0

type BackupVirtualMachine struct {
	ID                string
	Name              string
	Moref             string
	InternalId        string
	InternalVCenterId int
	VCenterId         string
	Href              string
	MetadataPath      string
	StorageProfiles   []string
	DatacenterName    string
	Volumes           []BackupVirtualMachineVolume
}

type BackupVirtualMachineClient added in v0.6.0

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

func (*BackupVirtualMachineClient) Read added in v0.6.0

func (*BackupVirtualMachineClient) WaitForInventory added in v0.7.0

func (c *BackupVirtualMachineClient) WaitForInventory(ctx context.Context, id string, options *WaiterOptions) (*BackupVirtualMachine, error)

type BackupVirtualMachineNotFoundError added in v0.7.0

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

func (*BackupVirtualMachineNotFoundError) Error added in v0.7.0

type BackupVirtualMachineVolume added in v0.6.0

type BackupVirtualMachineVolume struct {
	Name         string
	Key          string
	Size         int
	ConfigVolume bool
}

type BaseObject added in v0.15.0

type BaseObject struct {
	ID   string
	Name string
}

type BootOptions

type BootOptions struct {
	BootDelay            int    `json:"bootDelay"`
	BootRetryDelay       int    `json:"bootRetryDelay"`
	BootRetryEnabled     bool   `json:"bootRetryEnabled"`
	EnterBIOSSetup       bool   `json:"enterBIOSSetup"`
	Firmware             string `json:"firmware"`
	EFISecureBootEnabled bool   `json:"efiSecureBootEnabled"`
}

type Bucket added in v1.5.0

type Bucket struct {
	ID              string
	Name            string
	Namespace       string
	RetentionPeriod int64
	Versioning      string
	Endpoint        string
	TotalSize       string
	TotalSizeUnit   string
	TotalObjects    int64
	Tags            []struct {
		Key   string
		Value string
	}
	TotalObjectsDeleted string
	TotalSizeDeleted    string
}

type BucketACLEntry added in v1.5.0

type BucketACLEntry struct {
	ID   string
	Name string
	Role string
}

type BucketClient added in v1.5.0

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

func (*BucketClient) Create added in v1.5.0

func (c *BucketClient) Create(ctx context.Context, req *CreateBucketRequest) (string, error)

func (*BucketClient) Delete added in v1.5.0

func (c *BucketClient) Delete(ctx context.Context, name string) (string, error)

func (*BucketClient) List added in v1.5.0

func (c *BucketClient) List(ctx context.Context) ([]*Bucket, error)

func (*BucketClient) ListACLEntries added in v1.5.0

func (c *BucketClient) ListACLEntries(ctx context.Context, bucket string) ([]*BucketACLEntry, error)

func (*BucketClient) Read added in v1.5.0

func (c *BucketClient) Read(ctx context.Context, name string) (*Bucket, error)

func (*BucketClient) UpdateVersioning added in v1.5.0

func (c *BucketClient) UpdateVersioning(ctx context.Context, name string, req *UpdateVersioningRequest) (string, error)

func (*BucketClient) UpdateWhitelist added in v1.5.0

func (c *BucketClient) UpdateWhitelist(ctx context.Context, name string, req *UpdateWhitelistRequest) (string, error)

type BucketFile added in v1.5.0

type BucketFile struct {
	Key          string
	LastModified string
	Size         int64
	Tags         []struct {
		Key   string
		Value string
	}
	Versions []BucketFileVersion
}

type BucketFileVersion added in v1.5.0

type BucketFileVersion struct {
	VersionID      string
	IsLatest       bool
	LastModified   string
	Size           int64
	IsDeleteMarker bool
}

type BucketFilesClient added in v1.5.0

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

func (*BucketFilesClient) List added in v1.5.0

func (c *BucketFilesClient) List(ctx context.Context, bucketName string, filter *BucketFilesFilter) ([]*BucketFile, error)

type BucketFilesFilter added in v1.5.0

type BucketFilesFilter struct {
	FolderPath string `filter:"folderPath"`
}

type Client

type Client struct {
	SavedToken *jwt.Token

	UserAgent string
	// contains filtered or unexported fields
}

func NewClient

func NewClient(config *Config) (*Client, error)

func (*Client) Activity

func (c *Client) Activity() *ActivityClient

func (*Client) Backup

func (c *Client) Backup() *BackupClient

func (*Client) Compute

func (c *Client) Compute() *ComputeClient

func (*Client) IAM

func (c *Client) IAM() *IAM

func (*Client) JWT added in v1.0.0

func (c *Client) JWT(ctx context.Context) (*jwt.Token, error)

func (*Client) Marketplace added in v1.4.0

func (c *Client) Marketplace() *MarketplaceClient

func (*Client) ObjectStorage added in v1.5.0

func (c *Client) ObjectStorage() *ObjectStorage

func (*Client) Tag

func (c *Client) Tag() *TagClient

func (*Client) Token

func (c *Client) Token(ctx context.Context) (*LoginToken, error)

type CloneVirtualMachineRequest added in v0.2.0

type CloneVirtualMachineRequest struct {
	Name              string `json:"name"`
	VirtualMachineId  string `json:"-"`
	PowerOn           bool   `json:"powerOn,omitempty"`
	DatacenterId      string `json:"datacenterId,omitempty"`
	HostClusterId     string `json:"hostClusterId,omitempty"`
	HostId            string `json:"hostId,omitempty"`
	DatatoreClusterId string `json:"datastoreClusterId,omitempty"`
	DatastoreId       string `json:"datastoreId,omitempty"`
}

type CloudInit added in v0.16.0

type CloudInit struct {
	CloudConfig   string `json:"cloudConfig,omitempty"`
	NetworkConfig string `json:"networkConfig,omitempty"`
}

type Company

type Company struct {
	ID   string
	Name string
}

type CompanyClient

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

func (*CompanyClient) Read

func (c *CompanyClient) Read(ctx context.Context, companyID string) (*Company, error)

type ComputeClient

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

func (*ComputeClient) ContentLibrary

func (c *ComputeClient) ContentLibrary() *ContentLibraryClient

func (*ComputeClient) Datastore

func (c *ComputeClient) Datastore() *DatastoreClient

func (*ComputeClient) DatastoreCluster

func (c *ComputeClient) DatastoreCluster() *DatastoreClusterClient

func (*ComputeClient) Folder

func (c *ComputeClient) Folder() *FolderClient

func (*ComputeClient) GuestOperatingSystem

func (c *ComputeClient) GuestOperatingSystem() *GuestOperatingSystemClient

func (*ComputeClient) Host

func (c *ComputeClient) Host() *HostClient

func (*ComputeClient) HostCluster

func (c *ComputeClient) HostCluster() *HostClusterClient

func (*ComputeClient) Network

func (c *ComputeClient) Network() *NetworkClient

func (*ComputeClient) NetworkAdapter

func (c *ComputeClient) NetworkAdapter() *NetworkAdapterClient

func (*ComputeClient) OpenIaaS added in v0.15.0

func (c *ComputeClient) OpenIaaS() *ComputeOpenIaaSClient

func (*ComputeClient) ResourcePool

func (c *ComputeClient) ResourcePool() *ResourcePoolClient

func (*ComputeClient) Snapshot

func (c *ComputeClient) Snapshot() *SnapshotClient

func (*ComputeClient) VirtualController

func (c *ComputeClient) VirtualController() *VirtualControllerClient

func (*ComputeClient) VirtualDatacenter

func (c *ComputeClient) VirtualDatacenter() *VirtualDatacenterClient

func (*ComputeClient) VirtualDisk

func (c *ComputeClient) VirtualDisk() *VirtualDiskClient

func (*ComputeClient) VirtualMachine

func (c *ComputeClient) VirtualMachine() *VirtualMachineClient

func (*ComputeClient) VirtualSwitch

func (c *ComputeClient) VirtualSwitch() *VirtualSwitchClient

func (*ComputeClient) Worker

func (c *ComputeClient) Worker() *WorkerClient

type ComputeContentLibraryItemDeployRequest added in v0.3.0

type ComputeContentLibraryItemDeployRequest struct {
	ContentLibraryId      string          `json:"-"`
	ContentLibraryItemId  string          `json:"contentLibraryItemId"`
	Name                  string          `json:"name"`
	HostClusterId         string          `json:"hostClusterId,omitempty"`
	HostId                string          `json:"hostId,omitempty"`
	DatastoreId           string          `json:"datastoreId,"`
	DatacenterId          string          `json:"datacenterId,omitempty"`
	PowerOn               bool            `json:"powerOn,omitempty"`
	DisksProvisioningType string          `json:"disksProvisioningType,omitempty"`
	DeployOptions         []*DeployOption `json:"deployOptions,omitempty"`
	NetworkData           []*NetworkData  `json:"networkData,omitempty"`
}

type ComputeOpenIaaSClient added in v0.15.0

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

func (*ComputeOpenIaaSClient) Host added in v0.15.0

func (*ComputeOpenIaaSClient) MachineManager added in v0.15.0

func (*ComputeOpenIaaSClient) Network added in v0.15.0

func (*ComputeOpenIaaSClient) NetworkAdapter added in v0.15.0

func (*ComputeOpenIaaSClient) Pool added in v0.15.0

func (*ComputeOpenIaaSClient) Replication added in v1.3.0

func (*ComputeOpenIaaSClient) Snapshot added in v0.15.0

func (*ComputeOpenIaaSClient) StorageRepository added in v0.15.0

func (*ComputeOpenIaaSClient) Template added in v0.15.0

func (*ComputeOpenIaaSClient) VirtualDisk added in v0.15.0

func (*ComputeOpenIaaSClient) VirtualMachine added in v0.15.0

type ComputeOpenIaaSReplicationClient added in v1.3.0

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

func (*ComputeOpenIaaSReplicationClient) Policy added in v1.3.0

type ComputeOpenIaaSReplicationPolicyClient added in v1.3.0

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

func (*ComputeOpenIaaSReplicationPolicyClient) Create added in v1.3.0

func (*ComputeOpenIaaSReplicationPolicyClient) Delete added in v1.3.0

func (*ComputeOpenIaaSReplicationPolicyClient) List added in v1.3.0

func (*ComputeOpenIaaSReplicationPolicyClient) Read added in v1.3.0

func (*ComputeOpenIaaSReplicationPolicyClient) VirtualMachine added in v1.3.0

type ComputeOpenIaaSReplicationPolicyVirtualMachineClient added in v1.3.0

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

func (*ComputeOpenIaaSReplicationPolicyVirtualMachineClient) Associate added in v1.3.0

func (*ComputeOpenIaaSReplicationPolicyVirtualMachineClient) Dissociate added in v1.3.0

func (*ComputeOpenIaaSReplicationPolicyVirtualMachineClient) Read added in v1.3.0

type Config

type Config struct {
	Address string

	ApiSuffix bool

	Scheme string

	HttpClient *http.Client

	Transport http.RoundTripper

	ClientID, SecretID string

	// this parameter will only be used during the tests and not exposed to
	// clients
	ErrorOnUnexpectedActivity bool
}

func DefaultConfig

func DefaultConfig() *Config

type ContentLibrary

type ContentLibrary struct {
	ID             string
	Name           string
	MachineManager BaseObject
	Datastore      BaseObject
}

type ContentLibraryClient

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

func (*ContentLibraryClient) Deploy added in v0.3.0

func (*ContentLibraryClient) List

func (*ContentLibraryClient) ListItems

func (*ContentLibraryClient) Read

func (*ContentLibraryClient) ReadItem

func (c *ContentLibraryClient) ReadItem(ctx context.Context, contentLibraryId, contentLibraryItemId string) (*ContentLibraryItem, error)

type ContentLibraryFilter added in v0.8.0

type ContentLibraryFilter struct {
	Name             string `filter:"name"`
	MachineManagerId string `filter:"machineManagerId"`
}

type ContentLibraryItem

type ContentLibraryItem struct {
	ID               string
	Name             string
	Description      string
	Type             string
	CreationTime     time.Time
	Size             int
	LastModifiedTime string
	OvfProperties    []string
}

type ContentLibraryItemFilter added in v0.8.0

type ContentLibraryItemFilter struct {
	Name             string `filter:"name"`
	ContentLibraryId string
}

type CreateBucketRequest added in v1.5.0

type CreateBucketRequest struct {
	Name       string   `json:"name"`
	AccessType string   `json:"accessType"`
	Whitelist  []string `json:"whitelist,omitempty"`
}

type CreateNetworkAdapterRequest

type CreateNetworkAdapterRequest struct {
	VirtualMachineId string `json:"virtualMachineId"`
	NetworkId        string `json:"networkId"`
	Type             string `json:"type"`
	MacAddress       string `json:"macAddress,omitempty"`
}

type CreateOpenIaaSReplicationPolicyRequest added in v1.3.0

type CreateOpenIaaSReplicationPolicyRequest struct {
	Name                string                    `json:"name"`
	StorageRepositoryID string                    `json:"storageRepositoryId"`
	Interval            ReplicationPolicyInterval `json:"interval"`
}

type CreateOpenIaasNetworkAdapterRequest added in v0.15.0

type CreateOpenIaasNetworkAdapterRequest struct {
	VirtualMachineID string `json:"virtualMachineId"`
	NetworkID        string `json:"networkId"`
	MAC              string `json:"mac,omitempty"`
}

type CreateOpenIaasVirtualMachineRequest added in v0.15.0

type CreateOpenIaasVirtualMachineRequest struct {
	Name            string             `json:"name"`
	TemplateID      string             `json:"templateId"`
	CPU             int                `json:"cpu"`
	Memory          int                `json:"memory"`
	CloudInit       CloudInit          `json:"cloudInit,omitempty"`
	NetworkAdapters []OSNetworkAdapter `json:"networkAdapters,omitempty"`
}

type CreateStorageAccountRequest added in v1.5.0

type CreateStorageAccountRequest struct {
	Name string `json:"name"`
}

type CreateStorageAccountResponse added in v1.5.0

type CreateStorageAccountResponse struct {
	AccessKeyID     string `json:"accessKeyId"`
	SecretAccessKey string `json:"secretAccessKey"`
}

type CreateTagRequest

type CreateTagRequest struct {
	Key       string                      `json:"key"`
	Value     string                      `json:"value"`
	Resources []*CreateTagRequestResource `json:"resources"`
}

type CreateTagRequestResource

type CreateTagRequestResource struct {
	UUID   string `json:"uuid"`
	Type   string `json:"type"`
	Source string `json:"source"`
}

type CreateVirtualControllerRequest added in v0.11.0

type CreateVirtualControllerRequest struct {
	VirtualMachineId string `json:"virtualMachineId"`
	Type             string `json:"type"`
	SubType          string `json:"subType,omitempty"`
}

type CreateVirtualDiskRequest

type CreateVirtualDiskRequest struct {
	ControllerId       string `json:"controllerId,omitempty"`
	ProvisioningType   string `json:"provisioningType"`
	DiskMode           string `json:"diskMode"`
	Capacity           int    `json:"capacity"`
	VirtualMachineId   string `json:"virtualMachineId"`
	DatastoreId        string `json:"datastoreId,omitempty"`
	DatastoreClusterId string `json:"datastoreClusterId,omitempty"`
}

type CreateVirtualMachineRequest

type CreateVirtualMachineRequest struct {
	DatacenterId              string `json:"datacenterId,omitempty"`
	HostId                    string `json:"hostId,omitempty"`
	HostClusterId             string `json:"hostClusterId,omitempty"`
	DatastoreId               string `json:"datastoreId,omitempty"`
	DatastoreClusterId        string `json:"datastoreClusterId,omitempty"`
	Name                      string `json:"name,omitempty"`
	Memory                    int    `json:"memory,omitempty"`
	CPU                       int    `json:"cpu,omitempty"`
	GuestOperatingSystemMoref string `json:"guestOperatingSystemMoref,omitempty"`
}

type CustomAdapterConfig added in v0.12.0

type CustomAdapterConfig struct {
	MacAddress string `json:"macAddress,omitempty"`
	IpAddress  string `json:"ipAddress"`
	SubnetMask string `json:"subnetMask"`
	Gateway    string `json:"gateway"`
}

type CustomGuestNetworkConfig added in v0.12.0

type CustomGuestNetworkConfig struct {
	Hostname      string                 `json:"hostname"`
	Domain        string                 `json:"domain"`
	DnsServerList []string               `json:"dnsServerList,omitempty"`
	DnsSuffixList []string               `json:"dnsSuffixList,omitempty"`
	Adapters      []*CustomAdapterConfig `json:"adapters,omitempty"`
}

type CustomGuestWindowsConfig added in v0.12.0

type CustomGuestWindowsConfig struct {
	AutoLogon           bool   `json:"autoLogon"`
	AutoLogonCount      int    `json:"autoLogonCount"`
	TimeZone            int    `json:"timezone"`
	Password            string `json:"password"`
	JoinDomain          string `json:"joinDomain,omitempty"`
	DomainAdmin         string `json:"domainAdmin,omitempty"`
	DomainAdminPassword string `json:"domainAdminPassword,omitempty"`
	JoinWorkgroup       string `json:"joinWorkgroup,omitempty"`
}

type CustomizeGuestOSRequest added in v0.12.0

type CustomizeGuestOSRequest struct {
	NetworkConfig *CustomGuestNetworkConfig `json:"networkConfig"`
	WindowsConfig *CustomGuestWindowsConfig `json:"windowsConfig,omitempty"`
}

type Datastore

type Datastore struct {
	ID                    string
	Name                  string
	MachineManager        BaseObject
	Moref                 string
	MaxCapacity           int
	FreeCapacity          int
	Accessible            int
	MaintenanceMode       bool
	UniqueId              string
	Type                  string
	VirtualMachinesNumber int
	HostsNumber           int
	HostsNames            []string
	AssociatedFolder      string
}

type DatastoreClient

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

func (*DatastoreClient) List

func (d *DatastoreClient) List(
	ctx context.Context,
	filter *DatastoreFilter) ([]*Datastore, error)

func (*DatastoreClient) Read

func (d *DatastoreClient) Read(ctx context.Context, id string) (*Datastore, error)

type DatastoreCluster

type DatastoreCluster struct {
	ID             string
	Name           string
	Moref          string
	Datastores     []string
	Metrics        DatastoreClusterMetrics
	MachineManager BaseObject
	Datacenter     BaseObject
}

type DatastoreClusterClient

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

func (*DatastoreClusterClient) List

func (*DatastoreClusterClient) Read

type DatastoreClusterFilter added in v0.6.0

type DatastoreClusterFilter struct {
	Name             string `filter:"name"`
	MachineManagerId string `filter:"machineManagerId"`
	DatacenterId     string `filter:"datacenterId"`
	HostId           string `filter:"hostId"`
	HostClusterId    string `filter:"hostClusterId"`
}

type DatastoreClusterMetrics

type DatastoreClusterMetrics struct {
	FreeCapacity                  int
	MaxCapacity                   int
	Enabled                       bool
	DefaultVmBehavior             string
	LoadBalanceInterval           int
	SpaceThresholdMode            string
	SpaceUtilizationThreshold     int
	MinSpaceUtilizationDifference int
	ReservablePercentThreshold    int
	ReservableThresholdMode       string
	IoLatencyThreshold            int
	IoLoadImbalanceThreshold      int
	IoLoadBalanceEnabled          bool
}

type DatastoreFilter added in v0.6.0

type DatastoreFilter struct {
	Name               string `filter:"name"`
	MachineManagerId   string `filter:"machineManagerId"`
	DatacenterId       string `filter:"datacenterId"`
	HostId             string `filter:"hostId"`
	HostClusterId      string `filter:"hostClusterId"`
	DatastoreClusterId string `filter:"datastoreClusterId"`
}

type DeployOption added in v0.3.0

type DeployOption struct {
	ID    string `json:"id"`
	Value string `json:"value"`
}

type DiskPlacement added in v0.4.0

type DiskPlacement struct {
	VirtualDiskId      string `json:"virtualDiskId"`
	VirtualMachineId   string `json:"virtualMachineId"`
	DatastoreId        string `json:"datastoreId"`
	DatastoreClusterId string `json:"datastoreClusterId"`
}

type DvdDrive added in v0.15.0

type DvdDrive struct {
	Name     string
	Attached bool
}

type Feature

type Feature struct {
	ID   string
	Name string

	SubFeatures []*Feature
}

type FeatureAssignment

type FeatureAssignment struct {
	FeatureID string
	TenantID  string
}

type FeatureClient

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

func (*FeatureClient) List

func (f *FeatureClient) List(ctx context.Context) ([]*Feature, error)

func (*FeatureClient) ListAssignments

func (f *FeatureClient) ListAssignments(ctx context.Context, tenantID string) ([]*FeatureAssignment, error)

type Folder

type Folder struct {
	ID             string
	Name           string
	MachineManager BaseObject
}

type FolderClient

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

func (*FolderClient) List

func (f *FolderClient) List(ctx context.Context, filter *FolderFilter) ([]*Folder, error)

func (*FolderClient) Read

func (f *FolderClient) Read(ctx context.Context, id string) (*Folder, error)

type FolderFilter added in v1.0.0

type FolderFilter struct {
	Name             string `filter:"name"`
	MachineManagerID string `filter:"machineManagerId"`
	DatacenterID     string `filter:"datacenterId"`
}

type GlobalAccessKeyClient added in v1.5.0

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

func (*GlobalAccessKeyClient) Renew added in v1.5.0

type GuestOperatingSystem

type GuestOperatingSystem struct {
	Moref    string
	Family   string
	FullName string
}

type GuestOperatingSystemClient

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

func (*GuestOperatingSystemClient) List

func (*GuestOperatingSystemClient) Read

type GuestOperatingSystemFilter added in v1.0.0

type GuestOperatingSystemFilter struct {
	HostID        string `filter:"hostId"`
	HostClusterID string `filter:"hostClusterId"`
	OsFamily      string `filter:"osFamily"`
	Version       string `filter:"version"`
}

type Host

type Host struct {
	ID              string
	Name            string
	Moref           string
	MachineManager  BaseObject
	Metrics         HostMetrics
	VirtualMachines []HostVirtualMachinesStub
}

type HostClient

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

func (*HostClient) List

func (h *HostClient) List(ctx context.Context, filter *HostFilter) ([]*Host, error)

func (*HostClient) Read

func (h *HostClient) Read(ctx context.Context, id string) (*Host, error)

type HostCluster

type HostCluster struct {
	ID                    string
	Name                  string
	Moref                 string
	Hosts                 []HostClusterHostStub
	Metrics               HostClusterMetrics
	VirtualMachinesNumber int
	MachineManager        BaseObject
	Datacenter            BaseObject
}

type HostClusterClient

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

func (*HostClusterClient) List

func (h *HostClusterClient) List(
	ctx context.Context,
	filter *HostClusterFilter) ([]*HostCluster, error)

func (*HostClusterClient) Read

type HostClusterFilter added in v0.6.0

type HostClusterFilter struct {
	Name               string `filter:"name"`
	MachineManagerId   string `filter:"machineManagerId"`
	DatacenterId       string `filter:"datacenterId"`
	DatastoreId        string `filter:"datastoreId"`
	DatastoreClusterId string `filter:"datastoreClusterId"`
}

type HostClusterHostStub

type HostClusterHostStub struct {
	ID   string
	Type string
}

type HostClusterMetrics

type HostClusterMetrics struct {
	TotalCpu     int
	TotalMemory  int
	TotalStorage int
	CpuUsed      int
	MemoryUsed   int
	StorageUsed  int
}

type HostFilter added in v1.0.0

type HostFilter struct {
	Name             string `filter:"name"`
	MachineManagerID string `filter:"machineManagerId"`
	DatacenterID     string `filter:"datacenterId"`
	HostClusterID    string `filter:"hostClusterId"`
	DatastoreID      string `filter:"datastoreId"`
}

type HostMetrics

type HostMetrics struct {
	ESX             HostMetricsESXStub
	CPU             HostMetricsCPUStub
	Memory          HostMetricsMemoryStub
	MaintenanceMode bool
	Uptime          int
	Connected       bool
}

type HostMetricsCPUStub

type HostMetricsCPUStub struct {
	OverallCPUUsage int
	CPUMhz          int
	CPUCores        int
	CPUThreads      int
}

type HostMetricsESXStub

type HostMetricsESXStub struct {
	Version  string
	Build    int
	FullName string
}

type HostMetricsMemoryStub

type HostMetricsMemoryStub struct {
	MemorySize  int
	MemoryUsage int
}

type HostVirtualMachinesStub

type HostVirtualMachinesStub struct {
	ID   string
	Type string
}

type IAM

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

func (*IAM) Assignment

func (i *IAM) Assignment() *AssignmentClient

func (*IAM) Company

func (i *IAM) Company() *CompanyClient

func (*IAM) Feature

func (i *IAM) Feature() *FeatureClient

func (*IAM) PAT

func (i *IAM) PAT() *PATClient

func (*IAM) Role

func (i *IAM) Role() *RoleClient

func (*IAM) Tenant

func (i *IAM) Tenant() *TenantClient

func (*IAM) User

func (i *IAM) User() *UserClient

type LoginToken

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

func (*LoginToken) CompanyID

func (l *LoginToken) CompanyID() string

func (*LoginToken) TenantID

func (l *LoginToken) TenantID() string

func (*LoginToken) UserID

func (l *LoginToken) UserID() string

type MarketplaceClient added in v1.4.0

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

func (*MarketplaceClient) Item added in v1.4.0

type MarketplaceItem added in v1.4.0

type MarketplaceItem struct {
	ID            string
	Name          string
	Editor        string
	Icon          string
	Description   string
	DescriptionEN string
	CreationDate  string
	LastUpdate    string
	Categories    []string
	Type          string
	Version       string
	Build         string
	Details       struct {
		Overview           string
		HowToUse           string
		Support            string
		TermsAndConditions string
	}
	DetailsEN struct {
		Overview           string
		HowToUse           string
		Support            string
		TermsAndConditions string
	}
	DeploymentOptions struct {
		Targets []struct {
			Key   string
			Name  string
			SKUs  []string
			Files []string
		}
	}
}

type MarketplaceItemClient added in v1.4.0

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

func (*MarketplaceItemClient) DeployOpenIaasItem added in v1.4.0

func (*MarketplaceItemClient) DeployVMWareItem added in v1.4.0

func (*MarketplaceItemClient) List added in v1.4.0

func (*MarketplaceItemClient) Read added in v1.4.0

func (*MarketplaceItemClient) ReadInfo added in v1.4.0

type MarketplaceOpenIaasDeployementRequest added in v1.4.0

type MarketplaceOpenIaasDeployementRequest struct {
	ID                  string               `json:"id"`
	Name                string               `json:"name"`
	StorageRepositoryID string               `json:"storageRepositoryId"`
	NetworkData         []NetworkDataMapping `json:"networkData,omitempty"`
	CloudInit           CloudInit            `json:"cloudInit,omitempty"`
}

type MarketplaceOpenIaasItemInfo added in v1.4.0

type MarketplaceOpenIaasItemInfo struct {
	Name        string
	Description string
	CPU         struct {
		Count          int
		CoresPerSocket int
	}
	Memory          int
	OperatingSystem struct {
		Name    string
		Distro  string
		Version string
	}
	Disks []struct {
		Name                string
		VirtualSize         int
		PhysicalUtilisation int
		Type                string
	}
	NetworkAdapters []struct {
		Name        string
		NetworkName string
		MTU         int
	}
	HighAvailability struct {
		Enabled         bool
		RestartPriority string
	}
	PVDrivers struct {
		Detected bool
		Version  string
		UpToDate bool
	}
}

type MarketplaceVMWareDeployementRequest added in v1.4.0

type MarketplaceVMWareDeployementRequest struct {
	ID            string               `json:"id"`
	Name          string               `json:"name"`
	DatacenterID  string               `json:"datacenterId"`
	HostClusterID string               `json:"hostClusterId,omitempty"`
	HostID        string               `json:"hostId,omitempty"`
	DatastoreID   string               `json:"datastoreId"`
	NetworkData   []NetworkDataMapping `json:"networkData,omitempty"`
	DeployOptions []*DeployOption      `json:"deployOptions,omitempty"`
}

type MarketplaceVMWareItemInfo added in v1.4.0

type MarketplaceVMWareItemInfo struct {
	Name string
	CPU  struct {
		Count             int
		NumCoresPerSocket int
	}
	Memory          int
	OperatingSystem struct {
		ID   string
		Name string
	}
	HardwareVersion string
	NetworkAdapters []struct {
		Name        string
		NetworkName string
		Type        string
	}
	Controllers []struct {
		ID      string
		Name    string
		Type    string
		SubType string
	}
	Disks []struct {
		Name          string
		Capacity      int
		ControllerId  string
		PopulatedSize int
	}
	ExtraConfig []struct {
		Key      string
		Value    string
		Required bool
	}
}

type MountVirtualControllerRequest added in v0.11.0

type MountVirtualControllerRequest struct {
	ID                   string `json:"id"`
	IsoPath              string `json:"isoPath,omitempty"`
	ContentLibraryItemId string `json:"contentLibraryItemId,omitempty"`
}

type Namespace added in v1.5.0

type Namespace struct {
	ID          string
	Name        string
	Region      string
	AccessKeyID string
}

type NamespaceClient added in v1.5.0

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

func (*NamespaceClient) Read added in v1.5.0

func (c *NamespaceClient) Read(ctx context.Context) (*Namespace, error)

type Network

type Network struct {
	ID                    string
	Name                  string
	Moref                 string
	MachineManager        BaseObject
	VirtualMachinesNumber int
	HostNumber            int
	HostNames             []string
}

type NetworkAdapter

type NetworkAdapter struct {
	ID               string
	VirtualMachineId string
	Name             string
	Network          BaseObject
	Type             string
	MacType          string
	MacAddress       string
	Connected        bool
	AutoConnect      bool
}

type NetworkAdapterClient

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

func (*NetworkAdapterClient) Connect

func (n *NetworkAdapterClient) Connect(ctx context.Context, id string) (string, error)

func (*NetworkAdapterClient) Create

func (*NetworkAdapterClient) Delete

func (n *NetworkAdapterClient) Delete(ctx context.Context, id string) (string, error)

func (*NetworkAdapterClient) Disconnect

func (n *NetworkAdapterClient) Disconnect(ctx context.Context, id string) (string, error)

func (*NetworkAdapterClient) List

func (*NetworkAdapterClient) Read

func (*NetworkAdapterClient) Update

type NetworkAdapterFilter added in v1.0.0

type NetworkAdapterFilter struct {
	VirtualMachineID string `filter:"virtualMachineId"`
}

type NetworkClient

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

func (*NetworkClient) List

func (n *NetworkClient) List(
	ctx context.Context,
	filter *NetworkFilter) ([]*Network, error)

func (*NetworkClient) Read

func (n *NetworkClient) Read(ctx context.Context, id string) (*Network, error)

type NetworkData added in v0.3.0

type NetworkData struct {
	NetworkAdapterId string `json:"networkAdapterId"`
	NetworkId        string `json:"networkId"`
}

type NetworkDataMapping added in v1.4.0

type NetworkDataMapping struct {
	SourceNetworkName    string `json:"sourceNetworkName"`
	DestinationNetworkId string `json:"destinationNetworkId"`
}

type NetworkFilter added in v0.8.1

type NetworkFilter struct {
	Name             string `filter:"name"`
	MachineManagerId string `filter:"machineManagerId"`
	DatacenterId     string `filter:"datacenterId"`
	VirtualMachineId string `filter:"virtualMachineId"`
	Type             string `filter:"type"`
	VirtualSwitchId  string `filter:"virtualSwitchId"`
	HostId           string `filter:"hostId"`
	HostClusterId    string `filter:"hostClusterId"`
	FolderId         string `filter:"folderId"`
}

type OSNetworkAdapter added in v1.3.0

type OSNetworkAdapter struct {
	NetworkID string `json:"networkId"`
	MAC       string `json:"mac,omitempty"`
}

type ObjectStorage added in v1.5.0

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

func (*ObjectStorage) ACL added in v1.5.0

func (c *ObjectStorage) ACL() *ACLClient

func (*ObjectStorage) ACLEntry added in v1.5.0

func (c *ObjectStorage) ACLEntry() *ACLEntryClient

func (*ObjectStorage) Bucket added in v1.5.0

func (c *ObjectStorage) Bucket() *BucketClient

func (*ObjectStorage) BucketFiles added in v1.5.0

func (c *ObjectStorage) BucketFiles() *BucketFilesClient

func (*ObjectStorage) GlobalAccessKey added in v1.5.0

func (c *ObjectStorage) GlobalAccessKey() *GlobalAccessKeyClient

func (*ObjectStorage) Namespace added in v1.5.0

func (c *ObjectStorage) Namespace() *NamespaceClient

func (*ObjectStorage) Role added in v1.5.0

func (*ObjectStorage) StorageAccount added in v1.5.0

func (c *ObjectStorage) StorageAccount() *StorageAccountClient

type ObjectStorageRole added in v1.5.0

type ObjectStorageRole struct {
	ID          string
	Name        string
	Description string
	Permissions []string
}

type ObjectStorageRoleClient added in v1.5.0

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

func (*ObjectStorageRoleClient) List added in v1.5.0

type OpenIaaSHost added in v0.15.0

type OpenIaaSHost struct {
	ID             string
	MachineManager BaseObject
	InternalId     string
	Pool           struct {
		ID   string
		Name string
		Type struct {
			Key         string
			Description string
		}
	}
	Name       string
	Master     bool
	Uptime     int
	PowerState string
	UpdateData struct {
		MaintenanceMode bool
		Status          string
	}
	RebootRequired  bool
	VirtualMachines []string
	Metrics         struct {
		XOA struct {
			Version  string
			FullName string
			Build    string
		}
		Memory struct {
			Usage int
			Size  int
		}
		Cpu struct {
			Sockets   int
			Cores     int
			Model     string
			ModelName string
		}
	}
}

type OpenIaaSHostClient added in v0.15.0

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

func (*OpenIaaSHostClient) List added in v0.15.0

func (*OpenIaaSHostClient) Read added in v0.15.0

type OpenIaaSMachineManager added in v0.15.0

type OpenIaaSMachineManager struct {
	ID        string
	Name      string
	OSVersion string
	OSName    string
}

type OpenIaaSMachineManagerClient added in v0.15.0

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

func (*OpenIaaSMachineManagerClient) List added in v0.15.0

func (*OpenIaaSMachineManagerClient) Read added in v0.15.0

type OpenIaaSNetwork added in v0.15.0

type OpenIaaSNetwork struct {
	ID                         string
	MachineManager             BaseObject
	InternalID                 string
	Name                       string
	Pool                       BaseObject
	MaximumTransmissionUnit    int
	NetworkAdapters            []string
	NetworkBlockDevice         bool
	InsecureNetworkBlockDevice bool
}

type OpenIaaSNetworkAdapter added in v0.15.0

type OpenIaaSNetworkAdapter struct {
	ID               string
	Name             string
	InternalID       string
	VirtualMachineID string
	MacAddress       string
	MTU              int
	Attached         bool
	TxChecksumming   bool
	Network          BaseObject
	MachineManager   BaseObject
}

type OpenIaaSNetworkAdapterClient added in v0.15.0

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

func (*OpenIaaSNetworkAdapterClient) Connect added in v0.15.0

func (*OpenIaaSNetworkAdapterClient) Create added in v0.15.0

func (*OpenIaaSNetworkAdapterClient) Delete added in v0.15.0

func (*OpenIaaSNetworkAdapterClient) Disconnect added in v0.15.0

func (v *OpenIaaSNetworkAdapterClient) Disconnect(ctx context.Context, id string) (string, error)

func (*OpenIaaSNetworkAdapterClient) List added in v0.15.0

func (*OpenIaaSNetworkAdapterClient) Read added in v0.15.0

func (*OpenIaaSNetworkAdapterClient) Update added in v0.15.0

type OpenIaaSNetworkAdapterFilter added in v1.0.0

type OpenIaaSNetworkAdapterFilter struct {
	VirtualMachineID string `filter:"virtualMachineId"`
}

type OpenIaaSNetworkClient added in v0.15.0

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

func (*OpenIaaSNetworkClient) List added in v0.15.0

func (*OpenIaaSNetworkClient) Read added in v0.15.0

type OpenIaaSNetworkFilter added in v0.15.0

type OpenIaaSNetworkFilter struct {
	MachineManagerID string `filter:"machineManagerId"`
	PoolID           string `filter:"poolId"`
}

type OpenIaaSReplicationPolicy added in v1.3.0

type OpenIaaSReplicationPolicy struct {
	ID                string
	Name              string
	StorageRepository struct {
		ID   string
		Name string
	}
	Pool struct {
		ID    string
		Name  string
		Label string
	}
	MachineManager struct {
		ID   string
		Name string
	}
	LastRun struct {
		Start  int
		End    int
		Status string
	}
	Interval struct {
		Hours   int
		Minutes int
	}
}

type OpenIaaSSnapshot added in v0.15.0

type OpenIaaSSnapshot struct {
	ID               string
	Description      string
	VirtualMachineID string
	Name             string
	CreateTime       int
}

type OpenIaaSSnapshotClient added in v0.15.0

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

func (*OpenIaaSSnapshotClient) List added in v0.15.0

func (*OpenIaaSSnapshotClient) Read added in v0.15.0

type OpenIaaSSnapshotFilter added in v1.0.0

type OpenIaaSSnapshotFilter struct {
	VirtualMachineID string `filter:"virtualMachineId"`
}

type OpenIaaSStorageRepository added in v0.15.0

type OpenIaaSStorageRepository struct {
	ID              string
	InternalId      string
	Name            string
	Description     string
	MaintenanceMode bool
	MaxCapacity     int
	FreeCapacity    int
	StorageType     string
	VirtualDisks    []string
	Shared          bool
	Accessible      int
	Host            BaseObject
	Pool            BaseObject
	MachineManager  BaseObject
}

type OpenIaaSStorageRepositoryClient added in v0.15.0

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

func (*OpenIaaSStorageRepositoryClient) List added in v0.15.0

func (*OpenIaaSStorageRepositoryClient) Read added in v0.15.0

type OpenIaaSTemplateFilter added in v0.15.0

type OpenIaaSTemplateFilter struct {
	MachineManagerId string `filter:"machineManagerId"`
	PoolId           string `filter:"poolId,omitempty"`
}

type OpenIaaSVirtualDisk added in v0.15.0

type OpenIaaSVirtualDisk struct {
	ID                string
	InternalID        string
	Name              string
	Description       string
	Size              int
	Usage             int
	IsSnapshot        bool
	StorageRepository BaseObject
	VirtualMachines   []OpenIaaSVirtualDiskConnection
	Templates         []struct {
		ID       string
		Name     string
		ReadOnly bool
	}
}

type OpenIaaSVirtualDiskAttachRequest added in v0.15.0

type OpenIaaSVirtualDiskAttachRequest struct {
	VirtualMachineID string `json:"virtualMachineId"`
	Bootable         bool   `json:"bootable,omitempty"`
	Mode             string `json:"mode"`
	Position         string `json:"position,omitempty"`
}

type OpenIaaSVirtualDiskClient added in v0.15.0

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

func (*OpenIaaSVirtualDiskClient) Attach added in v0.15.0

func (*OpenIaaSVirtualDiskClient) Connect added in v1.3.0

func (*OpenIaaSVirtualDiskClient) Create added in v0.15.0

func (*OpenIaaSVirtualDiskClient) Delete added in v0.15.0

func (*OpenIaaSVirtualDiskClient) Detach added in v1.3.0

func (*OpenIaaSVirtualDiskClient) Disconnect added in v1.3.0

func (*OpenIaaSVirtualDiskClient) List added in v0.15.0

func (*OpenIaaSVirtualDiskClient) Read added in v0.15.0

func (*OpenIaaSVirtualDiskClient) Relocate added in v1.3.0

func (*OpenIaaSVirtualDiskClient) Update added in v1.3.0

type OpenIaaSVirtualDiskConnection added in v1.3.0

type OpenIaaSVirtualDiskConnection struct {
	ID        string
	Name      string
	ReadOnly  bool
	Connected bool
}

type OpenIaaSVirtualDiskConnectionRequest added in v1.3.0

type OpenIaaSVirtualDiskConnectionRequest struct {
	VirtualMachineID string `json:"virtualMachineId"`
}

type OpenIaaSVirtualDiskCreateRequest added in v0.15.0

type OpenIaaSVirtualDiskCreateRequest struct {
	Name                string `json:"name"`
	Size                int    `json:"size"`
	Mode                string `json:"mode"`
	StorageRepositoryID string `json:"storageRepositoryId"`
	VirtualMachineID    string `json:"virtualMachineId"`
	Bootable            bool   `json:"bootable"`
}

type OpenIaaSVirtualDiskDetachRequest added in v1.3.0

type OpenIaaSVirtualDiskDetachRequest struct {
	VirtualMachineID string `json:"virtualMachineId"`
}

type OpenIaaSVirtualDiskFilter added in v1.0.0

type OpenIaaSVirtualDiskFilter struct {
	VirtualMachineID    string `filter:"virtualMachineId"`
	TemplateID          string `filter:"templateId"`
	StorageRepositoryID string `filter:"storageRepositoryId"`
}

type OpenIaaSVirtualDiskRelocateRequest added in v1.3.0

type OpenIaaSVirtualDiskRelocateRequest struct {
	StorageRepositoryID string `json:"storageRepositoryId"`
}

type OpenIaaSVirtualDiskUpdateRequest added in v1.3.0

type OpenIaaSVirtualDiskUpdateRequest struct {
	Name string `json:"name,omitempty"`
	Size int    `json:"size,omitempty"`
}

type OpenIaaSVirtualMachine added in v0.15.0

type OpenIaaSVirtualMachine struct {
	ID                  string
	Name                string
	InternalID          string
	PowerState          string
	SecureBoot          bool
	HighAvailability    string
	BootFirmware        string
	AutoPowerOn         bool
	DvdDrive            DvdDrive
	BootOrder           []string
	OperatingSystemName string
	CPU                 int
	NumCoresPerSocket   int
	Memory              int
	Tools               struct {
		Detected bool
		Version  string
	}
	PVDrivers struct {
		Detected    bool
		Version     string
		AreUpToDate bool
	}
	ManagementAgent struct {
		Detected bool
	}
	Addresses struct {
		IPv6 string
		IPv4 string
	}
	MachineManager BaseObject
	Host           BaseObject
	Pool           BaseObject
}

type OpenIaaSVirtualMachineClient added in v0.15.0

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

func (*OpenIaaSVirtualMachineClient) Create added in v0.15.0

func (*OpenIaaSVirtualMachineClient) Delete added in v0.15.0

func (*OpenIaaSVirtualMachineClient) List added in v0.15.0

func (*OpenIaaSVirtualMachineClient) MountISO added in v0.15.1

func (v *OpenIaaSVirtualMachineClient) MountISO(ctx context.Context, id string, virtualDiskId string) (string, error)

func (*OpenIaaSVirtualMachineClient) Power added in v0.15.0

func (*OpenIaaSVirtualMachineClient) Read added in v0.15.0

func (*OpenIaaSVirtualMachineClient) UnmountISO added in v0.15.1

func (v *OpenIaaSVirtualMachineClient) UnmountISO(ctx context.Context, id string) (string, error)

func (*OpenIaaSVirtualMachineClient) Update added in v0.15.0

func (*OpenIaaSVirtualMachineClient) UpdateBootOrder added in v0.15.0

func (v *OpenIaaSVirtualMachineClient) UpdateBootOrder(ctx context.Context, id string, bootOrder []string) (string, error)

func (*OpenIaaSVirtualMachineClient) WaitForDrivers added in v1.6.0

func (c *OpenIaaSVirtualMachineClient) WaitForDrivers(
	ctx context.Context,
	id string,
	timeout time.Duration,
	options *WaiterOptions,
) (*OpenIaaSVirtualMachine, error)

type OpenIaaSVirtualMachineFilter added in v0.15.0

type OpenIaaSVirtualMachineFilter struct {
	MachineManagerID string `filter:"machineManagerId"`
}

type OpenIaasBackupFilter added in v0.15.0

type OpenIaasBackupFilter struct {
	MachineManagerId string `filter:"machineManagerId"`
	VirtualMachineId string `filter:"virtualMachineId"`
	Deleted          bool   `filter:"deleted"`
}

type OpenIaasHostFilter added in v0.15.0

type OpenIaasHostFilter struct {
	MachineManagerId string `filter:"machineManagerId"`
	PoolId           string `filter:"poolId"`
}

type OpenIaasPool added in v0.15.0

type OpenIaasPool struct {
	ID                      string
	MachineManager          BaseObject
	InternalID              string
	Name                    string
	Label                   string
	HighAvailabilityEnabled bool
	Master                  string
	Hosts                   []string
	Memory                  struct {
		Usage int
		Size  int
	}
	Cpu struct {
		Cores   int
		Sockets int
	}
	Type struct {
		Key         string
		Description string
	}
}

type OpenIaasPoolClient added in v0.15.0

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

func (*OpenIaasPoolClient) List added in v0.15.0

func (*OpenIaasPoolClient) Read added in v0.15.0

type OpenIaasPoolFilter added in v0.15.0

type OpenIaasPoolFilter struct {
	MachineManagerId string `filter:"machineManagerId"`
}

type OpenIaasTemplate added in v0.15.0

type OpenIaasTemplate struct {
	ID                string
	MachineManager    BaseObject
	InternalID        string
	Name              string
	CPU               int
	NumCoresPerSocket int
	Memory            int
	PowerState        string
	Snapshots         []string
	SLAPolicies       []string
	Disks             []TemplateDisk
	NetworkAdapters   []TemplateNetworkAdapter
}

type OpenIaasTemplateClient added in v0.15.0

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

func (*OpenIaasTemplateClient) List added in v0.15.0

func (*OpenIaasTemplateClient) Read added in v0.15.0

type PATClient

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

func (*PATClient) Create

func (p *PATClient) Create(ctx context.Context, name string, roles []string, expirationDate int) (*Token, error)

func (*PATClient) Delete

func (p *PATClient) Delete(ctx context.Context, patID string) error

func (*PATClient) List

func (p *PATClient) List(ctx context.Context) ([]*Token, error)

func (*PATClient) Read

func (p *PATClient) Read(ctx context.Context, patID string) (*Token, error)

type PowerRequest

type PowerRequest struct {
	ID             string                             `json:"id,omitempty"`
	DatacenterId   string                             `json:"datacenterId,omitempty"`
	PowerAction    string                             `json:"powerAction,omitempty"`
	ForceEnterBIOS bool                               `json:"forceEnterBIOS,omitempty"`
	Recommendation *VirtualMachinePowerRecommendation `json:"recommendation,omitempty"`
}

type RelocateVirtualMachineRequest added in v0.4.0

type RelocateVirtualMachineRequest struct {
	VirtualMachines    []string         `json:"virtualMachines"`
	Priority           string           `json:"priority"`
	DatacenterId       string           `json:"datacenterId,omitempty"`
	HostId             string           `json:"hostId,omitempty"`
	HostClusterId      string           `json:"hostClusterId,omitempty"`
	DatastoreId        string           `json:"datastoreId,omitempty"`
	DatastoreClusterId string           `json:"datastoreClusterId,omitempty"`
	NetworkData        []*NetworkData   `json:"networkData,omitempty"`
	DiskPlacements     []*DiskPlacement `json:"diskPlacements,omitempty"`
}

type RenewAccessKeyResponse added in v1.5.0

type RenewAccessKeyResponse struct {
	AccessKeyID     string
	AccessSecretKey string
}

type ReplicationPolicyInterval added in v1.3.0

type ReplicationPolicyInterval struct {
	Hours   int `json:"hours,omitempty"`
	Minutes int `json:"minute,omitempty"`
}

type ResourcePool

type ResourcePool struct {
	ID             string
	Name           string
	Moref          string
	Parent         ResourcePoolParent
	Metrics        ResourcePoolMetrics
	MachineManager BaseObject
}

type ResourcePoolCPUMetrics

type ResourcePoolCPUMetrics struct {
	MaxUsage        int
	ReservationUsed int
}

type ResourcePoolClient

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

func (*ResourcePoolClient) List

func (*ResourcePoolClient) Read

type ResourcePoolFilter added in v1.0.0

type ResourcePoolFilter struct {
	MachineManagerID string `filter:"machineManagerId"`
	DatacenterID     string `filter:"datacenterId"`
	HostClusterID    string `filter:"hostClusterId"`
}

type ResourcePoolMemoryMetrics

type ResourcePoolMemoryMetrics struct {
	MaxUsage        int
	ReservationUsed int
	BalloonedMemory int
}

type ResourcePoolMetrics

type ResourcePoolMetrics struct {
	CPU    ResourcePoolCPUMetrics
	Memory ResourcePoolMemoryMetrics
}

type ResourcePoolParent

type ResourcePoolParent struct {
	ID   string
	Type string
}

type Role

type Role struct {
	ID   string
	Name string
}

type RoleClient

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

func (*RoleClient) List

func (r *RoleClient) List(ctx context.Context) ([]*Role, error)

func (*RoleClient) Read

func (r *RoleClient) Read(ctx context.Context, roleID string) (*Role, error)

type Snapshot

type Snapshot struct {
	ID               string
	VirtualMachineId string
	Name             string
	CreateTime       int
}

type SnapshotClient

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

func (*SnapshotClient) List

func (s *SnapshotClient) List(ctx context.Context, filter *SnapshotFilter) ([]*Snapshot, error)

type SnapshotFilter added in v1.0.0

type SnapshotFilter struct {
	VirtualMachineID string `filter:"virtualMachineId"`
}

type StatusError

type StatusError struct {
	Code int
	Body string
}

func (StatusError) Error

func (e StatusError) Error() string

type StorageAccount added in v1.5.0

type StorageAccount struct {
	ID          string
	Name        string
	AccessKeyID string
	ARN         string
	CreateDate  string
	Path        string
	Tags        []struct {
		Key   string
		Value string
	}
}

type StorageAccountACLEntry added in v1.5.0

type StorageAccountACLEntry struct {
	ID   string
	Name string
	Role string
}

type StorageAccountClient added in v1.5.0

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

func (*StorageAccountClient) Create added in v1.5.0

func (*StorageAccountClient) Delete added in v1.5.0

func (c *StorageAccountClient) Delete(ctx context.Context, name string) (string, error)

func (*StorageAccountClient) List added in v1.5.0

func (*StorageAccountClient) ListACLEntries added in v1.5.0

func (c *StorageAccountClient) ListACLEntries(ctx context.Context, storageAccount string) ([]*StorageAccountACLEntry, error)

func (*StorageAccountClient) Read added in v1.5.0

type StorageRepositoryFilter added in v0.15.0

type StorageRepositoryFilter struct {
	MachineManagerId string   `filter:"machineManagerId"`
	PoolId           string   `filter:"poolId"`
	HostId           string   `filter:"hostId"`
	StorageTypes     []string `filter:"types,omitempty"`
	Shared           bool     `filter:"shared"`
}

type Tag

type Tag struct {
	Key      string
	Value    string
	Tenant   string
	Resource string
}

type TagClient

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

func (*TagClient) Resource

func (c *TagClient) Resource() *TagResourceClient

type TagResourceClient

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

func (*TagResourceClient) Create

func (*TagResourceClient) Delete

func (c *TagResourceClient) Delete(ctx context.Context, resourceId string, key string) error

func (*TagResourceClient) Read

func (c *TagResourceClient) Read(ctx context.Context, resourceId string) ([]*Tag, error)

type TemplateDisk added in v0.15.0

type TemplateDisk struct {
	ID                string
	Name              string
	Description       string
	Size              int
	StorageRepository BaseObject
}

type TemplateNetworkAdapter added in v0.15.0

type TemplateNetworkAdapter struct {
	Name       string
	MacAddress string
	MTU        int
	Attached   bool
	Network    BaseObject
}

type Tenant

type Tenant struct {
	ID        string
	Name      string
	SNC       bool
	CompanyID string
}

type TenantAssignment

type TenantAssignment struct {
	UserID   string
	TenantID string
	RoleID   string
}

type TenantClient

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

func (*TenantClient) List

func (t *TenantClient) List(ctx context.Context) ([]*Tenant, error)

type Token

type Token struct {
	ID             string
	Name           string
	Secret         string
	Roles          []string
	ExpirationDate string
	UserId         string
	TenantId       string
	TenantName     string
}

type UpdateGuestRequest added in v0.6.0

type UpdateGuestRequest struct {
	GuestOperatingSystemMoref string `json:"guestOperatingSystemMoref"`
}

type UpdateNetworkAdapterRequest

type UpdateNetworkAdapterRequest struct {
	ID           string `json:"id"`
	NewNetworkId string `json:"newNetworkId"`
	AutoConnect  bool   `json:"autoConnect"`
	MacAddress   string `json:"macAddress,omitempty"`
}

type UpdateOpenIaasNetworkAdapterRequest added in v0.15.0

type UpdateOpenIaasNetworkAdapterRequest struct {
	NetworkID      string `json:"networkId"`
	MAC            string `json:"mac,omitempty"`
	Attached       bool   `json:"attached,omitempty"`
	TxChecksumming bool   `json:"txChecksumming,omitempty"`
}

type UpdateOpenIaasVirtualMachinePowerRequest added in v0.15.0

type UpdateOpenIaasVirtualMachinePowerRequest struct {
	PowerState              string `json:"powerState"`
	HostId                  string `json:"hostId,omitempty"`
	Force                   bool   `json:"force,omitempty"`
	BypassMacAddressesCheck bool   `json:"bypassMacAddressesCheck,omitempty"`
	ForceShutdownDelay      int    `json:"forceShutdownDelay,omitempty"`
	BypassBlockedOperation  bool   `json:"bypassBlockedOperation,omitempty"`
}

type UpdateOpenIaasVirtualMachineRequest added in v0.15.0

type UpdateOpenIaasVirtualMachineRequest struct {
	Name              string `json:"name,omitempty"`
	CPU               int    `json:"cpu,omitempty"`
	NumCoresPerSocket int    `json:"numCoresPerSocket,omitempty"`
	Memory            int    `json:"memory,omitempty"`
	SecureBoot        bool   `json:"secureBoot"`
	BootFirmware      string `json:"bootFirmware,omitempty"`
	AutoPowerOn       bool   `json:"autoPowerOn"`
	HighAvailability  string `json:"highAvailability,omitempty"`
}

type UpdateVersioningRequest added in v1.5.0

type UpdateVersioningRequest struct {
	Status string `json:"status"`
}

type UpdateVirtualDiskRequest

type UpdateVirtualDiskRequest struct {
	ID          string `json:"id"`
	NewCapacity int    `json:"newCapacity,omitempty"`
	DiskMode    string `json:"diskMode,omitempty"`
}

type UpdateVirtualMachineRequest

type UpdateVirtualMachineRequest struct {
	Id                           string       `json:"id"`
	Ram                          int          `json:"ram"`
	MemoryReservation            int          `json:"memoryReservation"`
	Cpu                          int          `json:"cpu"`
	CorePerSocket                int          `json:"corePerSocket"`
	HotCpuAdd                    bool         `json:"hotCpuAdd"`
	HotCpuRemove                 bool         `json:"hotCpuRemove"`
	HotMemAdd                    bool         `json:"hotMemAdd"`
	BootOptions                  *BootOptions `json:"bootOptions,omitempty"`
	ExposeHardwareVirtualization bool         `json:"exposeHardwareVirtualization,omitempty"`
}

type UpdateWhitelistRequest added in v1.5.0

type UpdateWhitelistRequest struct {
	AccessType string   `json:"accessType"`
	Whitelist  []string `json:"whitelist,omitempty"`
}

type User

type User struct {
	ID            string
	InternalID    string
	Name          string
	Type          string
	Source        []string
	SourceID      string
	EmailVerified bool
	Email         string
}

type UserClient

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

func (*UserClient) List

func (t *UserClient) List(ctx context.Context, filter *UserFilter) ([]*User, error)

func (*UserClient) Read

func (t *UserClient) Read(ctx context.Context, userID string) (*User, error)

type UserFilter added in v1.0.0

type UserFilter struct {
	CompanyID string `filter:"companyId"`
}

type VirtualController

type VirtualController struct {
	ID               string
	VirtualMachineId string
	HotAddRemove     bool
	Type             string
	SubType          string
	Label            string
	Summary          string
	VirtualDisks     []string
}

type VirtualControllerClient

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

func (*VirtualControllerClient) Connect added in v0.11.0

func (n *VirtualControllerClient) Connect(ctx context.Context, id string) (string, error)

func (*VirtualControllerClient) Create added in v0.11.0

func (*VirtualControllerClient) Delete added in v0.11.0

func (n *VirtualControllerClient) Delete(ctx context.Context, id string) (string, error)

func (*VirtualControllerClient) Disconnect added in v0.11.0

func (n *VirtualControllerClient) Disconnect(ctx context.Context, id string) (string, error)

func (*VirtualControllerClient) List

func (*VirtualControllerClient) Mount added in v0.11.0

func (*VirtualControllerClient) Read added in v0.11.0

func (*VirtualControllerClient) Unmount added in v0.11.0

func (n *VirtualControllerClient) Unmount(ctx context.Context, id string) (string, error)

type VirtualControllerFilter added in v1.0.0

type VirtualControllerFilter struct {
	VirtualMachineId string   `filter:"virtualMachineId"`
	Types            []string `filter:"types"`
}

type VirtualDatacenter

type VirtualDatacenter struct {
	ID             string
	Name           string
	TenantID       string
	MachineManager BaseObject
	VCenter        BaseObject
}

type VirtualDatacenterClient

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

func (*VirtualDatacenterClient) List

func (*VirtualDatacenterClient) Read

type VirtualDatacenterFilter added in v0.6.0

type VirtualDatacenterFilter struct {
	Name             string `filter:"name"`
	MachineManagerId string `filter:"machineManagerId"`
}

type VirtualDisk

type VirtualDisk struct {
	ID               string
	Name             string
	VirtualMachineId string
	MachineManager   BaseObject
	Datastore        BaseObject
	Capacity         int
	DiskUnitNumber   int
	InstantAccess    bool
	NativeId         string
	DiskPath         string
	ProvisioningType string
	DiskMode         string
	Editable         bool
	Controller       struct {
		ID        string
		BusNumber int
		Type      string
	}
}

type VirtualDiskClient

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

func (*VirtualDiskClient) Create

func (*VirtualDiskClient) Delete

func (n *VirtualDiskClient) Delete(ctx context.Context, id string) (string, error)

func (*VirtualDiskClient) List

func (*VirtualDiskClient) Mount

func (n *VirtualDiskClient) Mount(ctx context.Context, virtualMachineId string, path string) (string, error)

func (*VirtualDiskClient) Read

func (*VirtualDiskClient) Unmount

func (n *VirtualDiskClient) Unmount(ctx context.Context, id string) (string, error)

func (*VirtualDiskClient) Update

type VirtualDiskFilter added in v1.0.0

type VirtualDiskFilter struct {
	Name             string `filter:"name"`
	VirtualMachineID string `filter:"virtualMachineId"`
}

type VirtualMachine

type VirtualMachine struct {
	ID                  string
	Name                string
	Moref               string
	MachineManager      BaseObject
	Datacenter          BaseObject
	HostCluster         BaseObject
	Datastore           BaseObject
	DatastoreCluster    BaseObject
	ConsolidationNeeded bool
	Template            bool
	PowerState          string
	HardwareVersion     string
	NumCoresPerSocket   int
	OperatingSystem     struct {
		Name string
	}
	OperatingSystemMoref           string
	Cpu                            int
	CpuHotAddEnabled               bool
	CpuHotRemoveEnabled            bool
	MemoryHotAddEnabled            bool
	Memory                         int
	CpuUsage                       int
	MemoryUsage                    int
	Tools                          string
	ToolsVersion                   int
	DistributedVirtualPortGroupIds []string
	SppMode                        string
	Snapshoted                     bool
	TriggeredAlarms                []VirtualMachineTriggeredAlarm
	ReplicationConfig              VirtualMachineReplicationConfig
	ExtraConfig                    []VirtualMachineExtraConfig
	Storage                        VirtualMachineStorage
	BootOptions                    VirtualMachineBootOptions
	ExposeHardwareVirtualization   bool
}

type VirtualMachineBootOptions

type VirtualMachineBootOptions struct {
	Firmware             string
	BootDelay            int
	EnterBIOSSetup       bool
	BootRetryEnabled     bool
	BootRetryDelay       int
	EFISecureBootEnabled bool
}

type VirtualMachineClient

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

func (*VirtualMachineClient) Clone added in v0.2.0

func (*VirtualMachineClient) Create

func (*VirtualMachineClient) CustomizeGuestOS added in v0.12.0

func (v *VirtualMachineClient) CustomizeGuestOS(ctx context.Context, id string, req *CustomizeGuestOSRequest) (string, error)

func (*VirtualMachineClient) Delete

func (v *VirtualMachineClient) Delete(ctx context.Context, id string) (string, error)

func (*VirtualMachineClient) Guest added in v0.6.0

func (*VirtualMachineClient) List

func (*VirtualMachineClient) Power

func (*VirtualMachineClient) Read

func (*VirtualMachineClient) Recommendation added in v0.6.0

func (*VirtualMachineClient) Relocate added in v0.4.0

func (*VirtualMachineClient) Rename

func (v *VirtualMachineClient) Rename(ctx context.Context, id string, name string) (string, error)

func (*VirtualMachineClient) Update

func (*VirtualMachineClient) UpdateExtraConfig added in v1.3.0

func (v *VirtualMachineClient) UpdateExtraConfig(ctx context.Context, id string, req map[string]interface{}) (string, error)

type VirtualMachineDisk

type VirtualMachineDisk struct {
	Key               int
	DiskReplicationId string
}

type VirtualMachineExtraConfig

type VirtualMachineExtraConfig struct {
	Key   string
	Value string
}

type VirtualMachineFilter added in v1.0.0

type VirtualMachineFilter struct {
	Name             string   `filter:"name"`
	MachineManagerID string   `filter:"machineManagerId"`
	AllOptions       bool     `filter:"allOptions"`
	Datacenters      []string `filter:"datacenters"`
	Networks         []string `filter:"networks"`
	Datastores       []string `filter:"datastores"`
	Hosts            []string `filter:"hosts"`
	HostClusters     []string `filter:"hostClusters"`
}

type VirtualMachinePowerRecommendation added in v0.6.0

type VirtualMachinePowerRecommendation struct {
	Key             int    `json:"key"`
	HostClusterId   string `json:"hostClusterId"`
	HostId          string `json:"hostId"`
	HostClusterName string `json:"hostClusterName"`
	HostName        string `json:"hostName"`
}

type VirtualMachineRecommendationFilter added in v0.6.0

type VirtualMachineRecommendationFilter struct {
	Id            string `filter:"virtualMachineId"`
	DatacenterId  string `filter:"datacenterId"`
	HostClusterId string `filter:"hostClusterId"`
}

type VirtualMachineReplicationConfig

type VirtualMachineReplicationConfig struct {
	Generation            int
	VmReplicationId       string
	Rpo                   int
	QuiesceGuestEnabled   bool
	Paused                bool
	OppUpdatesEnabled     bool
	NetCompressionEnabled bool
	NetEncryptionEnabled  bool
	EncryptionDestination bool
	Disk                  []VirtualMachineDisk
}

type VirtualMachineStorage

type VirtualMachineStorage struct {
	Committed   int
	Uncommitted int
}

type VirtualMachineTriggeredAlarm added in v0.2.1

type VirtualMachineTriggeredAlarm struct {
	ID     string
	Status string
}

type VirtualSwitch

type VirtualSwitch struct {
	ID             string
	Name           string
	Moref          string
	FolderId       string
	MachineManager BaseObject
}

type VirtualSwitchClient

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

func (*VirtualSwitchClient) List

func (*VirtualSwitchClient) Read

type VirtualSwitchFilter added in v0.8.1

type VirtualSwitchFilter struct {
	Name             string `filter:"name"`
	MachineManagerId string `filter:"machineManagerId"`
	DatacenterId     string `filter:"datacenterId"`
	HostClusterId    string `filter:"hostClusterId"`
}

type WaiterOptions added in v0.3.0

type WaiterOptions struct {
	Logger func(msg string)
}

type Worker

type Worker struct {
	ID                    string
	Name                  string
	FullName              string
	Vendor                string
	Version               string
	Build                 int
	LocaleVersion         string
	LocaleBuild           int
	OsType                string
	ProductLineID         string
	ApiType               string
	ApiVersion            string
	InstanceUuid          string
	LicenseProductName    string
	LicenseProductVersion int
	TenantID              string
	TenantName            string
}

type WorkerClient

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

func (*WorkerClient) List

func (v *WorkerClient) List(ctx context.Context, name string) ([]*Worker, error)

func (*WorkerClient) Read

func (v *WorkerClient) Read(ctx context.Context, id string) (*Worker, error)

Source Files

Jump to

Keyboard shortcuts

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