Documentation ¶
Index ¶
- func DefaultEndpoint() string
- type AnsibleBundle
- type Applier
- type Client
- func (c *Client) DatacenterAgentsConfigJSONDownloadURL(datacenterName string, decrypt bool) (string, error)
- func (c *Client) DatacenterConfigGet(datacenterName string) (*DatacenterConfig, error)
- func (c *Client) DatacenterConfigUpdate(datacenterName string, datacenterConfig DatacenterConfig) error
- func (c *Client) DatacenterCreate(datacenter Datacenter, datacenterConfig DatacenterConfig) (*Datacenter, error)
- func (c *Client) DatacenterGet(datacenterName string) (*Datacenter, error)
- func (c *Client) DatacenterGetForUserByEmail(datacenterName string, userID string) (*Datacenter, error)
- func (c *Client) DatacenterGetForUserByID(datacenterName string, userID int) (*Datacenter, error)
- func (c *Client) Datacenters(onlyActive bool) (*map[string]Datacenter, error)
- func (c *Client) DatacentersByUserEmail(userEmail string, onlyActive bool) (*map[string]Datacenter, error)
- func (c *Client) DatacentersByUserID(userID int, onlyActive bool) (*map[string]Datacenter, error)
- func (c *Client) DriveArrayCreate(infrastructureID int, driveArray DriveArray) (*DriveArray, error)
- func (c *Client) DriveArrayCreateByLabel(infrastructureLabel string, driveArray DriveArray) (*DriveArray, error)
- func (c *Client) DriveArrayDelete(driveArrayID int) error
- func (c *Client) DriveArrayDeleteByLabel(driveArrayLabel string) error
- func (c *Client) DriveArrayDrives(driveArray int) (*map[string]Drive, error)
- func (c *Client) DriveArrayDrivesByLabel(driveArrLabel string) (*map[string]Drive, error)
- func (c *Client) DriveArrayEdit(driveArrayID int, driveArrayOperation DriveArrayOperation) (*DriveArray, error)
- func (c *Client) DriveArrayEditByLabel(driveArrayLabel string, driveArrayOperation DriveArrayOperation) (*DriveArray, error)
- func (c *Client) DriveArrayGet(driveArrayID int) (*DriveArray, error)
- func (c *Client) DriveArrayGetByLabel(driveArrayLabel string) (*DriveArray, error)
- func (c *Client) DriveArrays(infrastructureID int) (*map[string]DriveArray, error)
- func (c *Client) DriveArraysByLabel(infrastructureLabel string) (*map[string]DriveArray, error)
- func (c *Client) DriveSnapshotCreate(driveID int) (*Snapshot, error)
- func (c *Client) DriveSnapshotDelete(driveSnapshotID int) error
- func (c *Client) DriveSnapshotGet(driveSnapshotID int) (*Snapshot, error)
- func (c *Client) DriveSnapshotRollback(driveSnapshotID int) error
- func (c *Client) DriveSnapshots(driveID int) (*map[string]Snapshot, error)
- func (c *Client) GetEndpoint() string
- func (c *Client) GetUserEmail() string
- func (c *Client) GetUserID() int
- func (c *Client) InfrastructureCreate(infrastructure Infrastructure) (*Infrastructure, error)
- func (c *Client) InfrastructureDelete(infrastructureID int) error
- func (c *Client) InfrastructureDeleteByLabel(infrastructureLabel string) error
- func (c *Client) InfrastructureDeploy(infrastructureID int, shutdownOptions ShutdownOptions, allowDataLoss bool, ...) error
- func (c *Client) InfrastructureDeployByLabel(infrastructureLabel string, shutdownOptions ShutdownOptions, ...) error
- func (c *Client) InfrastructureDeployCustomStageAddIntoRunlevel(infraID int, stageID int, runLevel int, stageRunMoment string) error
- func (c *Client) InfrastructureDeployCustomStageDeleteIntoRunlevel(infraID int, stageID int, runLevel int, stageRunMoment string) error
- func (c *Client) InfrastructureDeployCustomStages(infraID int, stageDefinitionType string) (*[]WorkflowStageAssociation, error)
- func (c *Client) InfrastructureEdit(infrastructureID int, infrastructureOperation InfrastructureOperation) (*Infrastructure, error)
- func (c *Client) InfrastructureEditByLabel(infrastructureLabel string, infrastructureOperation InfrastructureOperation) (*Infrastructure, error)
- func (c *Client) InfrastructureGet(infrastructureID int) (*Infrastructure, error)
- func (c *Client) InfrastructureGetByLabel(infrastructureLabel string) (*Infrastructure, error)
- func (c *Client) InfrastructureOperationCancel(infrastructureID int) error
- func (c *Client) InfrastructureOperationCancelByLabel(infrastructureLabel string) error
- func (c *Client) InfrastructureUserLimits(infrastructureID int) (*map[string]interface{}, error)
- func (c *Client) InfrastructureUserLimitsByLabel(infrastructureLabel string) (*map[string]interface{}, error)
- func (c *Client) Infrastructures() (*map[string]Infrastructure, error)
- func (c *Client) InstanceArrayCreate(infrastructureID int, instanceArray InstanceArray) (*InstanceArray, error)
- func (c *Client) InstanceArrayCreateByLabel(infrastructureLabel string, instanceArray InstanceArray) (*InstanceArray, error)
- func (c *Client) InstanceArrayDelete(instanceArrayID int) error
- func (c *Client) InstanceArrayDeleteByLabel(instanceArrayLabel string) error
- func (c *Client) InstanceArrayEdit(instanceArrayID int, instanceArrayOperation InstanceArrayOperation, ...) (*InstanceArray, error)
- func (c *Client) InstanceArrayEditByLabel(instanceArrayLabel string, instanceArrayOperation InstanceArrayOperation, ...) (*InstanceArray, error)
- func (c *Client) InstanceArrayGet(instanceArrayID int) (*InstanceArray, error)
- func (c *Client) InstanceArrayGetByLabel(instanceArrayLabel string) (*InstanceArray, error)
- func (c *Client) InstanceArrayInstances(instanceArrayID int) (*map[string]Instance, error)
- func (c *Client) InstanceArrayInstancesByLabel(instanceArrayLabel string) (*map[string]Instance, error)
- func (c *Client) InstanceArrayInterfaceAttachNetwork(instanceArrayID int, instanceArrayInterfaceIndex int, networkID int) (*InstanceArray, error)
- func (c *Client) InstanceArrayInterfaceDetach(instanceArrayID int, instanceArrayInterfaceIndex int) (*InstanceArray, error)
- func (c *Client) InstanceArrayStart(instanceArrayID int) (*InstanceArray, error)
- func (c *Client) InstanceArrayStartByLabel(instanceArrayLabel string) (*InstanceArray, error)
- func (c *Client) InstanceArrayStop(instanceArrayID int) (*InstanceArray, error)
- func (c *Client) InstanceArrayStopByLabel(instanceArrayLabel string) (*InstanceArray, error)
- func (c *Client) InstanceArrays(infrastructureID int) (*map[string]InstanceArray, error)
- func (c *Client) InstanceArraysByLabel(infrastructureLabel string) (*map[string]InstanceArray, error)
- func (c *Client) InstanceGet(instanceID int) (*Instance, error)
- func (c *Client) InstanceGetByLabel(instanceLabel string) (*Instance, error)
- func (c *Client) InstanceServerPowerGet(instanceID int) (*string, error)
- func (c *Client) InstanceServerPowerGetBatch(infrastructureID int, instanceIDs []int) (*map[string]string, error)
- func (c *Client) InstanceServerPowerGetBatchByLabel(infrastructureLabel string, instanceIDs []int) (*map[string]string, error)
- func (c *Client) InstanceServerPowerGetByLabel(instanceLabel string) (*string, error)
- func (c *Client) InstanceServerPowerSet(instanceID int, operation string) error
- func (c *Client) InstanceServerPowerSetByLabel(instanceLabel string, operation string) error
- func (c *Client) NetworkCreate(infrastructureID int, network Network) (*Network, error)
- func (c *Client) NetworkCreateByLabel(infrastructureLabel string, network Network) (*Network, error)
- func (c *Client) NetworkDelete(networkID int) error
- func (c *Client) NetworkDeleteByLabel(networkLabel string) error
- func (c *Client) NetworkEdit(networkID int, networkOperation NetworkOperation) (*Network, error)
- func (c *Client) NetworkEditByLabel(networkLabel string, networkOperation NetworkOperation) (*Network, error)
- func (c *Client) NetworkGet(networkID int) (*Network, error)
- func (c *Client) NetworkGetByLabel(networkLabel string) (*Network, error)
- func (c *Client) NetworkJoin(networkID int, networkToBeDeletedID int) error
- func (c *Client) NetworkJoinByLabel(networkLabel string, networkToBeDeletedID int) error
- func (c *Client) Networks(infrastructureID int) (*map[string]Network, error)
- func (c *Client) NetworksByLabel(infrastructureLabel string) (*map[string]Network, error)
- func (c *Client) OSAssetCreate(osAsset OSAsset) (*OSAsset, error)
- func (c *Client) OSAssetDelete(osAssetID int) error
- func (c *Client) OSAssetGet(osAssetID int) (*OSAsset, error)
- func (c *Client) OSAssetUpdate(osAssetID int, osAsset OSAsset) (*OSAsset, error)
- func (c *Client) OSAssets() (*map[string]OSAsset, error)
- func (c *Client) OSTemplateAddOSAsset(osTemplateID int, osAssetID int, path string, variablesJSON string) error
- func (c *Client) OSTemplateCreate(osTemplate OSTemplate) (*OSTemplate, error)
- func (c *Client) OSTemplateDelete(osTemplateID int) error
- func (c *Client) OSTemplateGet(osTemplateID int, decryptPasswd bool) (*OSTemplate, error)
- func (c *Client) OSTemplateMakePrivate(osTemplateID int, userID int) error
- func (c *Client) OSTemplateMakePublic(osTemplateID int) error
- func (c *Client) OSTemplateOSAssets(osTemplateID int) (*map[string]OSTemplateOSAssetData, error)
- func (c *Client) OSTemplateRemoveOSAsset(osTemplateID int, osAssetID int) error
- func (c *Client) OSTemplateUpdate(osTemplateID int, osTemplate OSTemplate) (*OSTemplate, error)
- func (c *Client) OSTemplateUpdateOSAssetPath(osTemplateID int, osAssetID int, path string) error
- func (c *Client) OSTemplateUpdateOSAssetVariables(osTemplateID int, osAssetID int, variablesJSON string) error
- func (c *Client) OSTemplates() (*map[string]OSTemplate, error)
- func (c *Client) SecretCreate(secret Secret) (*Secret, error)
- func (c *Client) SecretDelete(secretID int) error
- func (c *Client) SecretGet(secretID int) (*Secret, error)
- func (c *Client) SecretUpdate(secretID int, secret Secret) (*Secret, error)
- func (c *Client) Secrets(usage string) (*map[string]Secret, error)
- func (c *Client) ServerComponentGet(serverComponentID int) (*ServerComponent, error)
- func (c *Client) ServerComponents(serverID int, filter string) (*[]ServerComponent, error)
- func (c *Client) ServerCreate(server Server, autoGenerate bool) (int, error)
- func (c *Client) ServerDecomission(serverID int, skipIPMI bool) error
- func (c *Client) ServerDelete(serverID int, skipIPMI bool) error
- func (c *Client) ServerEdit(serverID int, serverEditType string, server Server) (*Server, error)
- func (c *Client) ServerEditAvailability(serverID int, server Server) (*Server, error)
- func (c *Client) ServerEditComplete(serverID int, server Server) (*Server, error)
- func (c *Client) ServerEditIPMI(serverID int, server Server) (*Server, error)
- func (c *Client) ServerFirmwareComponentTargetVersionAdd(serverComponentID int, version string, firmareBinaryURL string) error
- func (c *Client) ServerFirmwareComponentTargetVersionSet(serverComponentID int, serverComponentFirmwareNewVersion string) error
- func (c *Client) ServerFirmwareComponentTargetVersionUpdate(serverComponentID int) error
- func (c *Client) ServerFirmwareComponentUpgrade(serverID int, serverComponentID int, serverComponentFirmwareNewVersion string, ...) error
- func (c *Client) ServerFirmwareUpgrade(serverID int) error
- func (c *Client) ServerGet(serverID int, decryptPasswd bool) (*Server, error)
- func (c *Client) ServerGetByUUID(serverUUID string, decryptPasswd bool) (*Server, error)
- func (c *Client) ServerPowerSet(serverID int, operation string) error
- func (c *Client) ServerTypeDatacenter(datacenterName string) (*[]int, error)
- func (c *Client) ServerTypeGet(serverTypeID int) (*ServerType, error)
- func (c *Client) ServerTypeGetByLabel(serverTypeLabel string) (*ServerType, error)
- func (c *Client) ServerTypes(bOnlyAvailable bool) (*map[int]ServerType, error)
- func (c *Client) ServerTypesForDatacenter(datacenterName string, bOnlyAvailable bool) (*map[int]ServerType, error)
- func (c *Client) ServerTypesMatchHardwareConfiguration(datacenterName string, hardwareConfiguration HardwareConfiguration) (*map[int]ServerType, error)
- func (c *Client) ServerTypesMatches(infrastructureID int, hardwareConfiguration HardwareConfiguration, ...) (*map[string]ServerType, error)
- func (c *Client) ServerTypesMatchesByLabel(infrastructureLabel string, hardwareConfiguration HardwareConfiguration, ...) (*map[string]ServerType, error)
- func (c *Client) ServersSearch(filter string) (*[]ServerSearchResult, error)
- func (c *Client) SharedDriveCreate(infrastructureID int, sharedDrive SharedDrive) (*SharedDrive, error)
- func (c *Client) SharedDriveCreateByLabel(infrastructureLabel string, sharedDrive SharedDrive) (*SharedDrive, error)
- func (c *Client) SharedDriveDelete(sharedDriveID int) error
- func (c *Client) SharedDriveDeleteByLabel(sharedDriveLabel string) error
- func (c *Client) SharedDriveEdit(sharedDriveID int, sharedDriveOperation SharedDriveOperation) (*SharedDrive, error)
- func (c *Client) SharedDriveEditByLabel(sharedDriveLabel string, sharedDriveOperation SharedDriveOperation) (*SharedDrive, error)
- func (c *Client) SharedDriveGet(sharedDriveID int) (*SharedDrive, error)
- func (c *Client) SharedDriveGetByLabel(sharedDriveLabel string) (*SharedDrive, error)
- func (c *Client) StageDefinitionCreate(stageDefinition StageDefinition) (*StageDefinition, error)
- func (c *Client) StageDefinitionDelete(stageDefinitionID int) error
- func (c *Client) StageDefinitionGet(stageDefinitionID int) (*StageDefinition, error)
- func (c *Client) StageDefinitionUpdate(stageDefinitionID int, stageDefinition StageDefinition) (*StageDefinition, error)
- func (c *Client) StageDefinitions() (*map[string]StageDefinition, error)
- func (c *Client) SubnetPoolCreate(subnetPool SubnetPool) (*SubnetPool, error)
- func (c *Client) SubnetPoolDelete(subnetPoolID int) error
- func (c *Client) SubnetPoolGet(subnetPoolID int) (*SubnetPool, error)
- func (c *Client) SubnetPoolPrefixSizesStats(subnetPoolID int) (*SubnetPoolUtilization, error)
- func (c *Client) SubnetPoolSearch(filter string) (*[]SubnetPool, error)
- func (c *Client) SubnetPools() (*[]SubnetPool, error)
- func (c *Client) SwitchDeviceCreate(switchDevice SwitchDevice, bOverwriteWithHostnameFromFetchedSwitch bool) (*SwitchDevice, error)
- func (c *Client) SwitchDeviceDelete(networkEquipmentID int) error
- func (c *Client) SwitchDeviceGet(networkEquipmentID int, decryptPasswd bool) (*SwitchDevice, error)
- func (c *Client) SwitchDeviceGetByIdentifierString(networkEquipmentIdentifierString string, decryptPasswd bool) (*SwitchDevice, error)
- func (c *Client) SwitchDeviceUpdate(networkEquipmentID int, switchDevice SwitchDevice, ...) (*SwitchDevice, error)
- func (c *Client) SwitchDevices(datacenter string, switchType string) (*map[string]SwitchDevice, error)
- func (c *Client) SwitchDevicesInDatacenter(datacenter string) (*map[string]SwitchDevice, error)
- func (c *Client) UserEmailToUserID(userEmail string) (*int, error)
- func (c *Client) UserGet(userID int) (*User, error)
- func (c *Client) UserGetByEmail(userLabel string) (*User, error)
- func (c *Client) VariableCreate(variable Variable) (*Variable, error)
- func (c *Client) VariableDelete(variableID int) error
- func (c *Client) VariableGet(variableID int) (*Variable, error)
- func (c *Client) VariableUpdate(variableID int, variable Variable) (*Variable, error)
- func (c *Client) Variables(usage string) (*map[string]Variable, error)
- func (c *Client) VolumeTemplateCreateFromDrive(driveID int, objVolumeTemplate VolumeTemplate) (*VolumeTemplate, error)
- func (c *Client) VolumeTemplateCreateFromDriveByLabel(driveLabel string, objVolumeTemplate VolumeTemplate) (*VolumeTemplate, error)
- func (c *Client) VolumeTemplateGet(volumeTemplateID int) (*VolumeTemplate, error)
- func (c *Client) VolumeTemplateGetByLabel(volumeTemplateLabel string) (*VolumeTemplate, error)
- func (c *Client) VolumeTemplateMakePrivate(volumeTemplateID int, userID int) error
- func (c *Client) VolumeTemplateMakePublic(volumeTemplateID int) error
- func (c *Client) VolumeTemplates() (*map[string]VolumeTemplate, error)
- func (c *Client) WorkflowCreate(workflow Workflow) (*Workflow, error)
- func (c *Client) WorkflowDelete(workflowID int) error
- func (c *Client) WorkflowGet(workflowID int) (*Workflow, error)
- func (c *Client) WorkflowMoveAsNewRunLevel(workflowID int, stageDefinitionID int, sourceRunLevel int, ...) error
- func (c *Client) WorkflowMoveIntoRunLevel(workflowID int, stageDefinitionID int, sourceRunLevel int, ...) error
- func (c *Client) WorkflowStageAddAsNewRunLevel(workflowID int, stageDefinitionID int, destinationRunLevel int) error
- func (c *Client) WorkflowStageAddIntoRunLevel(workflowID int, stageDefinitionID int, destinationRunLevel int) error
- func (c *Client) WorkflowStageDelete(workflowStageID int) error
- func (c *Client) WorkflowStageGet(workflowStageID int) (*WorkflowStageDefinitionReference, error)
- func (c *Client) WorkflowStages(workflowID int) (*[]WorkflowStageDefinitionReference, error)
- func (c *Client) WorkflowUpdate(workflowID int, workflow Workflow) (*Workflow, error)
- func (c *Client) Workflows() (*map[string]Workflow, error)
- func (c *Client) WorkflowsWithUsage(usage string) (*map[string]Workflow, error)
- type Copy
- type Datacenter
- type DatacenterConfig
- type Drive
- type DriveArray
- type DriveArrayOperation
- type DriveCredentials
- type DriveFileSystem
- type FirewallRule
- type HTTPRequest
- type HardwareConfiguration
- type IDRAC
- type ILO
- type IP
- type IPMI
- type IPOperation
- type ISCSI
- type ISCSIInitiator
- type Infrastructure
- type InfrastructureOperation
- type Instance
- type InstanceArray
- type InstanceArrayInterface
- type InstanceArrayInterfaceOperation
- type InstanceArrayOperation
- type InstanceCredentials
- type InstanceInterface
- type InstanceInterfaceOperation
- type InstanceOperation
- type Network
- type NetworkOperation
- type OSAsset
- type OSTemplate
- type OSTemplateCredentials
- type OSTemplateOSAssetData
- type OperatingSystem
- type RDP
- type RemoteConsole
- type SCPResourceLocation
- type SSH
- type SSHAlgorithms
- type SSHClientOptions
- type SSHExec
- type SSHKey
- type SearchResultForServerComponents
- type SearchResultForServers
- type Secret
- type Server
- type ServerComponent
- type ServerDisk
- type ServerInterface
- type ServerSearchResult
- type ServerType
- type ServerTypeMatch
- type ServerTypeMatches
- type SharedDrive
- type SharedDriveCredentials
- type SharedDriveOperation
- type ShutdownOptions
- type Snapshot
- type StageDefinition
- type SubnetPool
- type SubnetPoolUtilization
- type SwitchDevice
- type User
- type Variable
- type VolumeTemplate
- type WebFetchAAPIOptions
- type WebFetchAPIRequestHeaders
- type Workflow
- type WorkflowReference
- type WorkflowStageAssociation
- type WorkflowStageDefinitionReference
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DefaultEndpoint ¶
func DefaultEndpoint() string
DefaultEndpoint returns the default Bigstep Metalcloud endpoint
Types ¶
type AnsibleBundle ¶ added in v1.0.8
type AnsibleBundle struct { AnsibleBundleArchiveFilename string `json:"ansible_bundle_archive_filename,omitempty"` AnsibleBundleArchiveContentsBase64 string `json:"ansible_bundle_archive_contents_base64,omitempty"` Type string `json:"type,omitempty"` }
AnsibleBundle contains an Ansible project as a single archive file, usually .zip
type Applier ¶ added in v1.6.0
type Applier interface { CreateOrUpdate(interface{}) error Delete(interface{}) error Validate() error }
Applier should create or update an object.
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client sruct defines a metalcloud client
func GetMetalcloudClient ¶
func GetMetalcloudClient(user string, apiKey string, endpoint string, loggingEnabled bool) (*Client, error)
GetMetalcloudClient returns a metal cloud client
func (*Client) DatacenterAgentsConfigJSONDownloadURL ¶ added in v1.3.0
func (c *Client) DatacenterAgentsConfigJSONDownloadURL(datacenterName string, decrypt bool) (string, error)
DatacenterAgentsConfigJSONDownloadURL returns the agent url (and automatically decrypts it)
func (*Client) DatacenterConfigGet ¶ added in v1.3.0
func (c *Client) DatacenterConfigGet(datacenterName string) (*DatacenterConfig, error)
DatacenterConfigGet returns details of a specific datacenter
func (*Client) DatacenterConfigUpdate ¶ added in v1.3.0
func (c *Client) DatacenterConfigUpdate(datacenterName string, datacenterConfig DatacenterConfig) error
DatacenterConfigUpdate Updates configuration information for a specified Datacenter.
func (*Client) DatacenterCreate ¶ added in v1.3.0
func (c *Client) DatacenterCreate(datacenter Datacenter, datacenterConfig DatacenterConfig) (*Datacenter, error)
DatacenterCreate creates a new Datacenter
func (*Client) DatacenterGet ¶ added in v1.3.0
func (c *Client) DatacenterGet(datacenterName string) (*Datacenter, error)
DatacenterGet returns details of a specific datacenter
func (*Client) DatacenterGetForUserByEmail ¶ added in v1.3.0
func (c *Client) DatacenterGetForUserByEmail(datacenterName string, userID string) (*Datacenter, error)
DatacenterGetForUserByEmail returns details of a specific datacenter
func (*Client) DatacenterGetForUserByID ¶ added in v1.3.0
func (c *Client) DatacenterGetForUserByID(datacenterName string, userID int) (*Datacenter, error)
DatacenterGetForUserByID returns details of a specific datacenter
func (*Client) Datacenters ¶ added in v1.3.0
func (c *Client) Datacenters(onlyActive bool) (*map[string]Datacenter, error)
Datacenters returns datacenters for all users
func (*Client) DatacentersByUserEmail ¶ added in v1.3.0
func (c *Client) DatacentersByUserEmail(userEmail string, onlyActive bool) (*map[string]Datacenter, error)
DatacentersByUserEmail returns datacenters by email
func (*Client) DatacentersByUserID ¶ added in v1.3.0
DatacentersByUserID returns datacenters for specific user
func (*Client) DriveArrayCreate ¶
func (c *Client) DriveArrayCreate(infrastructureID int, driveArray DriveArray) (*DriveArray, error)
DriveArrayCreate creates a drive array. Requires deploy.
func (*Client) DriveArrayCreateByLabel ¶ added in v1.0.2
func (c *Client) DriveArrayCreateByLabel(infrastructureLabel string, driveArray DriveArray) (*DriveArray, error)
DriveArrayCreateByLabel creates a drive array. Requires deploy.
func (*Client) DriveArrayDelete ¶
DriveArrayDelete deletes a Drive Array with specified id
func (*Client) DriveArrayDeleteByLabel ¶ added in v1.0.2
DriveArrayDeleteByLabel deletes a Drive Array with specified id
func (*Client) DriveArrayDrives ¶ added in v1.2.1
DriveArrayDrives returns the drives of a drive array
func (*Client) DriveArrayDrivesByLabel ¶ added in v1.2.1
DriveArrayDrivesByLabel returns the drives of a drive array
func (*Client) DriveArrayEdit ¶
func (c *Client) DriveArrayEdit(driveArrayID int, driveArrayOperation DriveArrayOperation) (*DriveArray, error)
DriveArrayEdit alters a deployed drive array. Requires deploy.
func (*Client) DriveArrayEditByLabel ¶ added in v1.0.2
func (c *Client) DriveArrayEditByLabel(driveArrayLabel string, driveArrayOperation DriveArrayOperation) (*DriveArray, error)
DriveArrayEditByLabel alters a deployed drive array. Requires deploy.
func (*Client) DriveArrayGet ¶
func (c *Client) DriveArrayGet(driveArrayID int) (*DriveArray, error)
DriveArrayGet retrieves a DriveArray object with specified ids
func (*Client) DriveArrayGetByLabel ¶ added in v1.0.2
func (c *Client) DriveArrayGetByLabel(driveArrayLabel string) (*DriveArray, error)
DriveArrayGetByLabel retrieves a DriveArray object with specified ids
func (*Client) DriveArrays ¶
func (c *Client) DriveArrays(infrastructureID int) (*map[string]DriveArray, error)
DriveArrays retrieves the list of drives arrays of an infrastructure
func (*Client) DriveArraysByLabel ¶ added in v1.0.2
func (c *Client) DriveArraysByLabel(infrastructureLabel string) (*map[string]DriveArray, error)
DriveArraysByLabel retrieves the list of drives arrays of an infrastructure
func (*Client) DriveSnapshotCreate ¶ added in v1.2.1
DriveSnapshotCreate creates a drive snapshot
func (*Client) DriveSnapshotDelete ¶ added in v1.2.1
DriveSnapshotDelete creates a drive snapshot
func (*Client) DriveSnapshotGet ¶ added in v1.2.1
DriveSnapshotGet gets a drive snapshot
func (*Client) DriveSnapshotRollback ¶ added in v1.2.1
DriveSnapshotRollback rolls a Drive back to a specified DriveSnapshot. The specified snapshot is not destroyed and can be reused.
func (*Client) DriveSnapshots ¶ added in v1.2.1
DriveSnapshots retrieves a list of all the snapshot objects
func (*Client) GetEndpoint ¶
GetEndpoint returns the endpoint configured for this connection
func (*Client) GetUserEmail ¶
GetUserEmail returns the user configured for this connection
func (*Client) GetUserID ¶ added in v1.0.10
GetUserID returns the ID of the user extracted from the API key
func (*Client) InfrastructureCreate ¶
func (c *Client) InfrastructureCreate(infrastructure Infrastructure) (*Infrastructure, error)
InfrastructureCreate creates an infrastructure
func (*Client) InfrastructureDelete ¶
InfrastructureDelete deletes an infrastructure and all associated elements. Requires deploy
func (*Client) InfrastructureDeleteByLabel ¶ added in v1.0.2
InfrastructureDeleteByLabel deletes an infrastructure and all associated elements. Requires deploy
func (*Client) InfrastructureDeploy ¶
func (c *Client) InfrastructureDeploy(infrastructureID int, shutdownOptions ShutdownOptions, allowDataLoss bool, skipAnsible bool) error
InfrastructureDeploy initiates a deploy operation that will apply all registered changes for the respective infrastructure
func (*Client) InfrastructureDeployByLabel ¶ added in v1.0.2
func (c *Client) InfrastructureDeployByLabel(infrastructureLabel string, shutdownOptions ShutdownOptions, allowDataLoss bool, skipAnsible bool) error
InfrastructureDeployByLabel initiates a deploy operation that will apply all registered changes for the respective infrastructure
func (*Client) InfrastructureDeployCustomStageAddIntoRunlevel ¶ added in v1.0.9
func (c *Client) InfrastructureDeployCustomStageAddIntoRunlevel(infraID int, stageID int, runLevel int, stageRunMoment string) error
InfrastructureDeployCustomStageAddIntoRunlevel adds a stage into a runlevel
func (*Client) InfrastructureDeployCustomStageDeleteIntoRunlevel ¶ added in v1.0.9
func (c *Client) InfrastructureDeployCustomStageDeleteIntoRunlevel(infraID int, stageID int, runLevel int, stageRunMoment string) error
InfrastructureDeployCustomStageDeleteIntoRunlevel delete a stage into a runlevel
func (*Client) InfrastructureDeployCustomStages ¶ added in v1.0.9
func (c *Client) InfrastructureDeployCustomStages(infraID int, stageDefinitionType string) (*[]WorkflowStageAssociation, error)
InfrastructureDeployCustomStages retrieves a list of all the StageDefinition objects which a specified User is allowed to see through ownership or delegation. The stageDefinition objects never return the actual protected stageDefinition value.
func (*Client) InfrastructureEdit ¶
func (c *Client) InfrastructureEdit(infrastructureID int, infrastructureOperation InfrastructureOperation) (*Infrastructure, error)
InfrastructureEdit alters an infrastructure
func (*Client) InfrastructureEditByLabel ¶ added in v1.0.2
func (c *Client) InfrastructureEditByLabel(infrastructureLabel string, infrastructureOperation InfrastructureOperation) (*Infrastructure, error)
InfrastructureEditByLabel alters an infrastructure
func (*Client) InfrastructureGet ¶
func (c *Client) InfrastructureGet(infrastructureID int) (*Infrastructure, error)
InfrastructureGet returns a specific infrastructure by id
func (*Client) InfrastructureGetByLabel ¶ added in v1.0.2
func (c *Client) InfrastructureGetByLabel(infrastructureLabel string) (*Infrastructure, error)
InfrastructureGetByLabel returns a specific infrastructure by id
func (*Client) InfrastructureOperationCancel ¶
InfrastructureOperationCancel reverts (undos) alterations done before deploy
func (*Client) InfrastructureOperationCancelByLabel ¶ added in v1.0.2
InfrastructureOperationCancelByLabel reverts (undos) alterations done before deploy
func (*Client) InfrastructureUserLimits ¶
InfrastructureUserLimits returns user metadata
func (*Client) InfrastructureUserLimitsByLabel ¶ added in v1.0.2
func (c *Client) InfrastructureUserLimitsByLabel(infrastructureLabel string) (*map[string]interface{}, error)
InfrastructureUserLimitsByLabel returns user metadata
func (*Client) Infrastructures ¶
func (c *Client) Infrastructures() (*map[string]Infrastructure, error)
Infrastructures returns a list of infrastructures
func (*Client) InstanceArrayCreate ¶
func (c *Client) InstanceArrayCreate(infrastructureID int, instanceArray InstanceArray) (*InstanceArray, error)
InstanceArrayCreate creates an instance array (colletion of identical instances). Requires Deploy.
func (*Client) InstanceArrayCreateByLabel ¶ added in v1.0.2
func (c *Client) InstanceArrayCreateByLabel(infrastructureLabel string, instanceArray InstanceArray) (*InstanceArray, error)
InstanceArrayCreateByLabel creates an instance array (colletion of identical instances). Requires Deploy.
func (*Client) InstanceArrayDelete ¶
InstanceArrayDelete deletes an instance array. Requires deploy.
func (*Client) InstanceArrayDeleteByLabel ¶ added in v1.0.2
InstanceArrayDeleteByLabel deletes an instance array. Requires deploy.
func (*Client) InstanceArrayEdit ¶
func (c *Client) InstanceArrayEdit(instanceArrayID int, instanceArrayOperation InstanceArrayOperation, bSwapExistingInstancesHardware *bool, bKeepDetachingDrives *bool, objServerTypeMatches *ServerTypeMatches, arrInstancesToBeDeleted *[]int) (*InstanceArray, error)
InstanceArrayEdit alterns a deployed instance array. Requires deploy.
func (*Client) InstanceArrayEditByLabel ¶ added in v1.0.2
func (c *Client) InstanceArrayEditByLabel(instanceArrayLabel string, instanceArrayOperation InstanceArrayOperation, bSwapExistingInstancesHardware *bool, bKeepDetachingDrives *bool, objServerTypeMatches *ServerTypeMatches, arrInstancesToBeDeleted *[]int) (*InstanceArray, error)
InstanceArrayEditByLabel alterns a deployed instance array. Requires deploy.
func (*Client) InstanceArrayGet ¶
func (c *Client) InstanceArrayGet(instanceArrayID int) (*InstanceArray, error)
InstanceArrayGet returns an InstanceArray with specified id
func (*Client) InstanceArrayGetByLabel ¶ added in v1.0.2
func (c *Client) InstanceArrayGetByLabel(instanceArrayLabel string) (*InstanceArray, error)
InstanceArrayGetByLabel returns an InstanceArray with specified id
func (*Client) InstanceArrayInstances ¶ added in v1.0.3
InstanceArrayInstances retrieves a list of all the Instance objects associated with a specified InstanceArray.
func (*Client) InstanceArrayInstancesByLabel ¶ added in v1.0.3
func (c *Client) InstanceArrayInstancesByLabel(instanceArrayLabel string) (*map[string]Instance, error)
InstanceArrayInstancesByLabel retrieves a list of all the Instance objects associated with a specified InstanceArray.
func (*Client) InstanceArrayInterfaceAttachNetwork ¶
func (c *Client) InstanceArrayInterfaceAttachNetwork(instanceArrayID int, instanceArrayInterfaceIndex int, networkID int) (*InstanceArray, error)
InstanceArrayInterfaceAttachNetwork attaches an InstanceArrayInterface to a Network
func (*Client) InstanceArrayInterfaceDetach ¶
func (c *Client) InstanceArrayInterfaceDetach(instanceArrayID int, instanceArrayInterfaceIndex int) (*InstanceArray, error)
InstanceArrayInterfaceDetach detaches an InstanceArrayInterface from any Network element that is attached to.
func (*Client) InstanceArrayStart ¶ added in v1.2.6
func (c *Client) InstanceArrayStart(instanceArrayID int) (*InstanceArray, error)
InstanceArrayStart starts a specified InstanceArray.
func (*Client) InstanceArrayStartByLabel ¶ added in v1.2.6
func (c *Client) InstanceArrayStartByLabel(instanceArrayLabel string) (*InstanceArray, error)
InstanceArrayStartByLabel starts a specified InstanceArray.
func (*Client) InstanceArrayStop ¶ added in v1.2.6
func (c *Client) InstanceArrayStop(instanceArrayID int) (*InstanceArray, error)
InstanceArrayStop stops a specified InstanceArray.
func (*Client) InstanceArrayStopByLabel ¶ added in v1.2.6
func (c *Client) InstanceArrayStopByLabel(instanceArrayLabel string) (*InstanceArray, error)
InstanceArrayStopByLabel stops a specified InstanceArray.
func (*Client) InstanceArrays ¶
func (c *Client) InstanceArrays(infrastructureID int) (*map[string]InstanceArray, error)
InstanceArrays returns list of instance arrays of specified infrastructure
func (*Client) InstanceArraysByLabel ¶ added in v1.0.2
func (c *Client) InstanceArraysByLabel(infrastructureLabel string) (*map[string]InstanceArray, error)
InstanceArraysByLabel returns list of instance arrays of specified infrastructure
func (*Client) InstanceGet ¶ added in v1.0.3
InstanceGet returns a specific instance by id
func (*Client) InstanceGetByLabel ¶ added in v1.0.3
InstanceGetByLabel returns a specific instance by id
func (*Client) InstanceServerPowerGet ¶ added in v1.2.1
InstanceServerPowerGet returns the power status of an instance
func (*Client) InstanceServerPowerGetBatch ¶ added in v1.2.1
func (c *Client) InstanceServerPowerGetBatch(infrastructureID int, instanceIDs []int) (*map[string]string, error)
InstanceServerPowerGetBatch returns the power status of multiple instances
func (*Client) InstanceServerPowerGetBatchByLabel ¶ added in v1.2.1
func (c *Client) InstanceServerPowerGetBatchByLabel(infrastructureLabel string, instanceIDs []int) (*map[string]string, error)
InstanceServerPowerGetBatchByLabel returns the power status of multiple instances
func (*Client) InstanceServerPowerGetByLabel ¶ added in v1.2.1
InstanceServerPowerGetByLabel returns the power status of an instance
func (*Client) InstanceServerPowerSet ¶ added in v1.2.1
InstanceServerPowerSet reboots or powers on an instance
func (*Client) InstanceServerPowerSetByLabel ¶ added in v1.2.1
InstanceServerPowerSetByLabel reboots or powers on an instance
func (*Client) NetworkCreate ¶
NetworkCreate creates a network
func (*Client) NetworkCreateByLabel ¶ added in v1.0.2
func (c *Client) NetworkCreateByLabel(infrastructureLabel string, network Network) (*Network, error)
NetworkCreateByLabel creates a network
func (*Client) NetworkDelete ¶
NetworkDelete deletes a network.
func (*Client) NetworkDeleteByLabel ¶ added in v1.0.2
NetworkDeleteByLabel deletes a network.
func (*Client) NetworkEdit ¶
func (c *Client) NetworkEdit(networkID int, networkOperation NetworkOperation) (*Network, error)
NetworkEdit applies a change to an existing network
func (*Client) NetworkEditByLabel ¶ added in v1.0.2
func (c *Client) NetworkEditByLabel(networkLabel string, networkOperation NetworkOperation) (*Network, error)
NetworkEditByLabel applies a change to an existing network
func (*Client) NetworkGet ¶
NetworkGet retrieves a network object
func (*Client) NetworkGetByLabel ¶ added in v1.0.2
NetworkGetByLabel retrieves a network object
func (*Client) NetworkJoin ¶
NetworkJoin merges two specified Network objects.
func (*Client) NetworkJoinByLabel ¶ added in v1.0.2
NetworkJoinByLabel merges two specified Network objects.
func (*Client) NetworksByLabel ¶ added in v1.0.2
NetworksByLabel returns a list of all network objects of an infrastructure
func (*Client) OSAssetCreate ¶ added in v1.0.4
OSAssetCreate creates a osAsset object
func (*Client) OSAssetDelete ¶ added in v1.0.4
OSAssetDelete permanently destroys a OSAsset.
func (*Client) OSAssetGet ¶ added in v1.0.4
OSAssetGet returns a OSAsset specified by nOSAssetID. The OSAsset's protected value is never returned.
func (*Client) OSAssetUpdate ¶ added in v1.0.4
OSAssetUpdate updates a osAsset
func (*Client) OSAssets ¶ added in v1.0.4
OSAssets retrieves a list of all the OSAsset objects which a specified User is allowed to see through ownership or delegation. The OSAsset objects never return the actual protected OSAsset value.
func (*Client) OSTemplateAddOSAsset ¶ added in v1.0.4
func (c *Client) OSTemplateAddOSAsset(osTemplateID int, osAssetID int, path string, variablesJSON string) error
OSTemplateAddOSAsset adds an asset to a template
func (*Client) OSTemplateCreate ¶ added in v1.0.4
func (c *Client) OSTemplateCreate(osTemplate OSTemplate) (*OSTemplate, error)
OSTemplateCreate creates a osTemplate object
func (*Client) OSTemplateDelete ¶ added in v1.0.4
OSTemplateDelete permanently destroys a OSTemplate.
func (*Client) OSTemplateGet ¶ added in v1.0.4
func (c *Client) OSTemplateGet(osTemplateID int, decryptPasswd bool) (*OSTemplate, error)
OSTemplateGet returns a OSTemplate specified by nOSTemplateID. The OSTemplate's protected value is never returned.
func (*Client) OSTemplateMakePrivate ¶ added in v1.5.7
OSTemplateMakePrivate makes a template private
func (*Client) OSTemplateMakePublic ¶ added in v1.5.7
OSTemplateMakePublic makes a template public
func (*Client) OSTemplateOSAssets ¶ added in v1.0.4
func (c *Client) OSTemplateOSAssets(osTemplateID int) (*map[string]OSTemplateOSAssetData, error)
OSTemplateOSAssets returns the OSAssets assigned to an OSTemplate.
func (*Client) OSTemplateRemoveOSAsset ¶ added in v1.3.7
OSTemplateRemoveOSAsset removes an asset from a template
func (*Client) OSTemplateUpdate ¶ added in v1.0.4
func (c *Client) OSTemplateUpdate(osTemplateID int, osTemplate OSTemplate) (*OSTemplate, error)
OSTemplateUpdate updates a osTemplate
func (*Client) OSTemplateUpdateOSAssetPath ¶ added in v1.3.7
OSTemplateUpdateOSAssetPath updates an asset mapping
func (*Client) OSTemplateUpdateOSAssetVariables ¶ added in v1.3.7
func (c *Client) OSTemplateUpdateOSAssetVariables(osTemplateID int, osAssetID int, variablesJSON string) error
OSTemplateUpdateOSAssetVariables updates an asset variable
func (*Client) OSTemplates ¶ added in v1.0.4
func (c *Client) OSTemplates() (*map[string]OSTemplate, error)
OSTemplates retrieves a list of all the OSTemplate objects which a specified User is allowed to see through ownership or delegation. The OSTemplate objects never return the actual protected OSTemplate value.
func (*Client) SecretCreate ¶ added in v1.0.4
SecretCreate creates a secret
func (*Client) SecretDelete ¶ added in v1.0.4
SecretDelete Permanently destroys a Secret.
func (*Client) SecretGet ¶ added in v1.0.4
SecretGet returns a Secret specified by nSecretID. The secret's protected value is never returned.
func (*Client) SecretUpdate ¶ added in v1.0.4
SecretUpdate This function allows updating the secret_usage, secret_label and secret_base64 of a Secret
func (*Client) Secrets ¶ added in v1.0.4
Secrets retrieves a list of all the Secret objects which a specified User is allowed to see through ownership or delegation. The secret objects never return the actual protected secret value.
func (*Client) ServerComponentGet ¶ added in v1.1.2
func (c *Client) ServerComponentGet(serverComponentID int) (*ServerComponent, error)
ServerComponentGet returns a server's component's details
func (*Client) ServerComponents ¶ added in v1.1.2
func (c *Client) ServerComponents(serverID int, filter string) (*[]ServerComponent, error)
ServerComponents searches for servers matching certain filter
func (*Client) ServerCreate ¶ added in v1.4.4
ServerCreate manually creates a server record
func (*Client) ServerDecomission ¶ added in v1.4.4
ServerDecomission decomissions the server row and deletes all child rows.
func (*Client) ServerDelete ¶ added in v1.4.4
ServerDelete deletes all the information about a specified Server.
func (*Client) ServerEdit ¶ added in v1.4.4
ServerEdit edits a server record
func (*Client) ServerEditAvailability ¶ added in v1.4.4
ServerEditAvailability - edit only server availability settings
func (*Client) ServerEditComplete ¶ added in v1.4.4
ServerEditComplete - perform a complete edit
func (*Client) ServerEditIPMI ¶ added in v1.4.4
ServerEditIPMI - edit only IPMI settings
func (*Client) ServerFirmwareComponentTargetVersionAdd ¶ added in v1.1.2
func (c *Client) ServerFirmwareComponentTargetVersionAdd(serverComponentID int, version string, firmareBinaryURL string) error
ServerFirmwareComponentTargetVersionAdd Adds a new available firmware version for a server component along with the url of the binary. If the version already exists the old url will be overwritten.
func (*Client) ServerFirmwareComponentTargetVersionSet ¶ added in v1.1.2
func (c *Client) ServerFirmwareComponentTargetVersionSet(serverComponentID int, serverComponentFirmwareNewVersion string) error
ServerFirmwareComponentTargetVersionSet Sets a firmware target version for the upgrading process. The system will apply the upgrade at the next upgrading session.
func (*Client) ServerFirmwareComponentTargetVersionUpdate ¶ added in v1.1.2
ServerFirmwareComponentTargetVersionUpdate Updates for every component of the specified server the available firmware versions that can be used as target by the firmware upgrading process. The available versions are extracted from a vendor specific catalog.
func (*Client) ServerFirmwareComponentUpgrade ¶ added in v1.1.2
func (c *Client) ServerFirmwareComponentUpgrade(serverID int, serverComponentID int, serverComponentFirmwareNewVersion string, firmwareBinaryURL string) error
ServerFirmwareComponentUpgrade Creates a firmware upgrading session for the specified component. If no strServerComponentFirmwareNewVersion or strFirmwareBinaryURL are provided the system will use the values from the database which should have been previously added
func (*Client) ServerFirmwareUpgrade ¶ added in v1.1.2
ServerFirmwareUpgrade creates a firmware upgrading session that affects all components from the specified server that have a target version set and are updatable.
func (*Client) ServerGetByUUID ¶ added in v1.4.4
ServerGetByUUID retrieves information about a specified Server by using the server's UUID
func (*Client) ServerPowerSet ¶ added in v1.5.6
ServerPowerSet reboots or powers on a server
func (*Client) ServerTypeDatacenter ¶
ServerTypeDatacenter retrieves all the server type IDs for servers found in a specified Datacenter
func (*Client) ServerTypeGet ¶
func (c *Client) ServerTypeGet(serverTypeID int) (*ServerType, error)
ServerTypeGet retrieves a server type by id
func (*Client) ServerTypeGetByLabel ¶ added in v1.0.2
func (c *Client) ServerTypeGetByLabel(serverTypeLabel string) (*ServerType, error)
ServerTypeGetByLabel retrieves a server type by id
func (*Client) ServerTypes ¶
func (c *Client) ServerTypes(bOnlyAvailable bool) (*map[int]ServerType, error)
ServerTypes retrieves all ServerType objects from the database.
func (*Client) ServerTypesForDatacenter ¶ added in v1.4.5
func (c *Client) ServerTypesForDatacenter(datacenterName string, bOnlyAvailable bool) (*map[int]ServerType, error)
ServerTypesForDatacenter retrieves all ServerType objects from the database.
func (*Client) ServerTypesMatchHardwareConfiguration ¶
func (c *Client) ServerTypesMatchHardwareConfiguration(datacenterName string, hardwareConfiguration HardwareConfiguration) (*map[int]ServerType, error)
ServerTypesMatchHardwareConfiguration Retrieves a list of server types that match the provided hardware configuration. The function does not check for availability, only compatibility, so physical servers associated with the returned server types might be unavailable.
func (*Client) ServerTypesMatches ¶
func (c *Client) ServerTypesMatches(infrastructureID int, hardwareConfiguration HardwareConfiguration, instanceArrayID *int, bAllowServerSwap bool) (*map[string]ServerType, error)
ServerTypesMatches matches available servers with a certain Instance's configuration, using the properties specified in the objHardwareConfiguration object, and returns the number of compatible servers for each server_type_id.
func (*Client) ServerTypesMatchesByLabel ¶ added in v1.0.2
func (c *Client) ServerTypesMatchesByLabel(infrastructureLabel string, hardwareConfiguration HardwareConfiguration, instanceArrayID *int, bAllowServerSwap bool) (*map[string]ServerType, error)
ServerTypesMatchesByLabel matches available servers with a certain Instance's configuration, using the properties specified in the objHardwareConfiguration object, and returns the number of compatible servers for each server_type_id.
func (*Client) ServersSearch ¶ added in v1.0.4
func (c *Client) ServersSearch(filter string) (*[]ServerSearchResult, error)
ServersSearch searches for servers matching certain filter
func (*Client) SharedDriveCreate ¶ added in v1.3.4
func (c *Client) SharedDriveCreate(infrastructureID int, sharedDrive SharedDrive) (*SharedDrive, error)
SharedDriveCreate creates a shared drive array. Requires deploy.
func (*Client) SharedDriveCreateByLabel ¶ added in v1.3.4
func (c *Client) SharedDriveCreateByLabel(infrastructureLabel string, sharedDrive SharedDrive) (*SharedDrive, error)
SharedDriveCreateByLabel creates a shared drive array. Requires deploy.
func (*Client) SharedDriveDelete ¶ added in v1.3.4
SharedDriveDelete deletes a shared drive.
func (*Client) SharedDriveDeleteByLabel ¶ added in v1.3.4
SharedDriveDeleteByLabel deletes a shared drive.
func (*Client) SharedDriveEdit ¶ added in v1.3.4
func (c *Client) SharedDriveEdit(sharedDriveID int, sharedDriveOperation SharedDriveOperation) (*SharedDrive, error)
SharedDriveEdit alters a deployed drive array. Requires deploy.
func (*Client) SharedDriveEditByLabel ¶ added in v1.3.4
func (c *Client) SharedDriveEditByLabel(sharedDriveLabel string, sharedDriveOperation SharedDriveOperation) (*SharedDrive, error)
SharedDriveEditByLabel alters a deployed drive array. Requires deploy.
func (*Client) SharedDriveGet ¶ added in v1.3.4
func (c *Client) SharedDriveGet(sharedDriveID int) (*SharedDrive, error)
SharedDriveGet Retrieves a shared drive
func (*Client) SharedDriveGetByLabel ¶ added in v1.3.4
func (c *Client) SharedDriveGetByLabel(sharedDriveLabel string) (*SharedDrive, error)
SharedDriveGetByLabel Retrieves a shared drive
func (*Client) StageDefinitionCreate ¶ added in v1.0.8
func (c *Client) StageDefinitionCreate(stageDefinition StageDefinition) (*StageDefinition, error)
StageDefinitionCreate creates a stageDefinition
func (*Client) StageDefinitionDelete ¶ added in v1.0.8
StageDefinitionDelete Permanently destroys a StageDefinition.
func (*Client) StageDefinitionGet ¶ added in v1.0.8
func (c *Client) StageDefinitionGet(stageDefinitionID int) (*StageDefinition, error)
StageDefinitionGet returns a StageDefinition specified by nStageDefinitionID. The stageDefinition's protected value is never returned.
func (*Client) StageDefinitionUpdate ¶ added in v1.0.8
func (c *Client) StageDefinitionUpdate(stageDefinitionID int, stageDefinition StageDefinition) (*StageDefinition, error)
StageDefinitionUpdate This function allows updating the stageDefinition_usage, stageDefinition_label and stageDefinition_base64 of a StageDefinition
func (*Client) StageDefinitions ¶ added in v1.0.8
func (c *Client) StageDefinitions() (*map[string]StageDefinition, error)
StageDefinitions retrieves a list of all the StageDefinition objects which a specified User is allowed to see through ownership or delegation. The stageDefinition objects never return the actual protected stageDefinition value.
func (*Client) SubnetPoolCreate ¶ added in v1.4.3
func (c *Client) SubnetPoolCreate(subnetPool SubnetPool) (*SubnetPool, error)
SubnetPoolCreate creates a new SubnetPool.
func (*Client) SubnetPoolDelete ¶ added in v1.4.3
SubnetPoolDelete deletes the specified SubnetPool
func (*Client) SubnetPoolGet ¶ added in v1.4.3
func (c *Client) SubnetPoolGet(subnetPoolID int) (*SubnetPool, error)
SubnetPoolGet retrieves information regarding a specified SubnetPool.
func (*Client) SubnetPoolPrefixSizesStats ¶ added in v1.4.3
func (c *Client) SubnetPoolPrefixSizesStats(subnetPoolID int) (*SubnetPoolUtilization, error)
SubnetPoolPrefixSizesStats retrieves information regarding the utilization of a specified SubnetPool.
func (*Client) SubnetPoolSearch ¶ added in v1.4.3
func (c *Client) SubnetPoolSearch(filter string) (*[]SubnetPool, error)
SubnetPoolSearch retrieves all switch devices registered in the database with the specified filter
func (*Client) SubnetPools ¶ added in v1.4.3
func (c *Client) SubnetPools() (*[]SubnetPool, error)
SubnetPools retrieves all switch devices registered in the database.
func (*Client) SwitchDeviceCreate ¶ added in v1.4.0
func (c *Client) SwitchDeviceCreate(switchDevice SwitchDevice, bOverwriteWithHostnameFromFetchedSwitch bool) (*SwitchDevice, error)
SwitchDeviceCreate Creates a record for a new SwitchDevice.
func (*Client) SwitchDeviceDelete ¶ added in v1.4.0
SwitchDeviceDelete deletes a specified switch device and its registered interfaces.
func (*Client) SwitchDeviceGet ¶ added in v1.4.0
func (c *Client) SwitchDeviceGet(networkEquipmentID int, decryptPasswd bool) (*SwitchDevice, error)
SwitchDeviceGet Retrieves information regarding a specified SwitchDevice.
func (*Client) SwitchDeviceGetByIdentifierString ¶ added in v1.4.0
func (c *Client) SwitchDeviceGetByIdentifierString(networkEquipmentIdentifierString string, decryptPasswd bool) (*SwitchDevice, error)
SwitchDeviceGetByIdentifierString Retrieves information regarding a specified SwitchDevice by identifier string.
func (*Client) SwitchDeviceUpdate ¶ added in v1.4.0
func (c *Client) SwitchDeviceUpdate(networkEquipmentID int, switchDevice SwitchDevice, bOverwriteWithHostnameFromFetchedSwitch bool) (*SwitchDevice, error)
SwitchDeviceUpdate updates an existing switch configuration
func (*Client) SwitchDevices ¶ added in v1.4.0
func (c *Client) SwitchDevices(datacenter string, switchType string) (*map[string]SwitchDevice, error)
SwitchDevices retrieves all switch devices registered in the database.
func (*Client) SwitchDevicesInDatacenter ¶ added in v1.4.0
func (c *Client) SwitchDevicesInDatacenter(datacenter string) (*map[string]SwitchDevice, error)
SwitchDevicesInDatacenter retrieves all switch devices in a datacenter
func (*Client) UserEmailToUserID ¶ added in v1.0.4
UserEmailToUserID returns the user id of an user given an email
func (*Client) UserGetByEmail ¶ added in v1.0.4
UserGetByEmail describes returns user account specifications.
func (*Client) VariableCreate ¶ added in v1.0.4
VariableCreate creates a variable object
func (*Client) VariableDelete ¶ added in v1.0.4
VariableDelete permanently destroys a Variable.
func (*Client) VariableGet ¶ added in v1.0.4
VariableGet returns a Variable specified by nVariableID. The Variable's protected value is never returned.
func (*Client) VariableUpdate ¶ added in v1.0.4
VariableUpdate updates a variable
func (*Client) Variables ¶ added in v1.0.4
Variables retrieves a list of all the Variable objects which a specified User is allowed to see through ownership or delegation. The Variable objects never return the actual protected Variable value.
func (*Client) VolumeTemplateCreateFromDrive ¶ added in v1.5.3
func (c *Client) VolumeTemplateCreateFromDrive(driveID int, objVolumeTemplate VolumeTemplate) (*VolumeTemplate, error)
VolumeTemplateCreateFromDrive creates a private volume template from a drive
func (*Client) VolumeTemplateCreateFromDriveByLabel ¶ added in v1.5.3
func (c *Client) VolumeTemplateCreateFromDriveByLabel(driveLabel string, objVolumeTemplate VolumeTemplate) (*VolumeTemplate, error)
VolumeTemplateCreateFromDriveByLabel creates a private volume template from a drive
func (*Client) VolumeTemplateGet ¶
func (c *Client) VolumeTemplateGet(volumeTemplateID int) (*VolumeTemplate, error)
VolumeTemplateGet returns the specified volume template
func (*Client) VolumeTemplateGetByLabel ¶ added in v1.0.2
func (c *Client) VolumeTemplateGetByLabel(volumeTemplateLabel string) (*VolumeTemplate, error)
VolumeTemplateGetByLabel returns the specified volume template
func (*Client) VolumeTemplateMakePrivate ¶ added in v1.5.7
VolumeTemplateMakePrivate makes a template private
func (*Client) VolumeTemplateMakePublic ¶ added in v1.5.7
VolumeTemplateMakePublic makes a template public
func (*Client) VolumeTemplates ¶
func (c *Client) VolumeTemplates() (*map[string]VolumeTemplate, error)
VolumeTemplates retrives the list of available templates
func (*Client) WorkflowCreate ¶ added in v1.1.4
WorkflowCreate creates a workflow
func (*Client) WorkflowDelete ¶ added in v1.1.4
WorkflowDelete Permanently destroys a Workflow.
func (*Client) WorkflowGet ¶ added in v1.1.4
WorkflowGet returns a Workflow specified by nWorkflowID. The workflow's protected value is never returned.
func (*Client) WorkflowMoveAsNewRunLevel ¶ added in v1.1.4
func (c *Client) WorkflowMoveAsNewRunLevel(workflowID int, stageDefinitionID int, sourceRunLevel int, destinationRunLevel int) error
WorkflowMoveAsNewRunLevel moves a stage in this workflow from a runlevel to another
func (*Client) WorkflowMoveIntoRunLevel ¶ added in v1.1.4
func (c *Client) WorkflowMoveIntoRunLevel(workflowID int, stageDefinitionID int, sourceRunLevel int, destinationRunLevel int) error
WorkflowMoveIntoRunLevel moves a stage in this workflow from a runlevel to another
func (*Client) WorkflowStageAddAsNewRunLevel ¶ added in v1.1.4
func (c *Client) WorkflowStageAddAsNewRunLevel(workflowID int, stageDefinitionID int, destinationRunLevel int) error
WorkflowStageAddAsNewRunLevel adds a new stage in this workflow
func (*Client) WorkflowStageAddIntoRunLevel ¶ added in v1.1.4
func (c *Client) WorkflowStageAddIntoRunLevel(workflowID int, stageDefinitionID int, destinationRunLevel int) error
WorkflowStageAddIntoRunLevel adds a new stage in this workflow
func (*Client) WorkflowStageDelete ¶ added in v1.1.6
WorkflowStageDelete deletes a stage from a workflow entirelly
func (*Client) WorkflowStageGet ¶ added in v1.1.4
func (c *Client) WorkflowStageGet(workflowStageID int) (*WorkflowStageDefinitionReference, error)
WorkflowStageGet returns a StageDefinition specified by workflowStageID.
func (*Client) WorkflowStages ¶ added in v1.1.4
func (c *Client) WorkflowStages(workflowID int) (*[]WorkflowStageDefinitionReference, error)
WorkflowStages retrieves a list of all the StageDefinitions objects in this workflow
func (*Client) WorkflowUpdate ¶ added in v1.1.4
WorkflowUpdate This function allows updating the workflow_usage, workflow_label and workflow_base64 of a Workflow
type Copy ¶ added in v1.1.4
type Copy struct { Source interface{} `json:"source,omitempty"` Destination SCPResourceLocation `json:"destination,omitempty"` TimeoutMinutes int `json:"timeoutMinutes,omitempty"` IfDestinationAlreadyExists string `json:"ifDestinationAlreadyExists,omitempty"` Type string `json:"type,omitempty"` }
Copy defines the source and destination of a SCP operation. The source may be of various types. SCP and HTTP requests are streamed so they are recommended as sources. The destination has to be a SCP resource.
type Datacenter ¶ added in v1.3.0
type Datacenter struct { DatacenterName string `json:"datacenter_name,omitempty" yaml:"name,omitempty"` DatacenterNameParent string `json:"datacenter_name_parent,omitempty" yaml:"parentName,omitempty"` UserID int `json:"user_id,omitempty" yaml:"userid,omitempty"` DatacenterDisplayName string `json:"datacenter_display_name,omitempty" yaml:"displayname,omitempty"` DatacenterIsMaster bool `json:"datacenter_is_master,omitempty" yaml:"ismaster,omitempty"` DatacenterIsMaintenance bool `json:"datacenter_is_maintenance,omitempty" yaml:"ismaintenance,omitempty"` DatacenterType string `json:"datacenter_type,omitempty" yaml:"type,omitempty"` DatacenterCreatedTimestamp string `json:"datacenter_created_timestamp,omitempty" yaml:"createdtimestamp,omitempty"` DatacenterUpdatedTimestamp string `json:"datacenter_updated_timestamp,omitempty" yaml:"updatedtimestamp,omitempty"` DatacenterHidden bool `json:"datacenter_hidden,omitempty" yaml:"ishidden,omitempty"` DatacenterTags []string `json:"datacenter_tags,omitempty" yaml:"tags,omitempty"` DatacenterConfig *DatacenterConfig `json:"datacenter_config_json,omitempty" yaml:"config,omitempty"` }
Datacenter - datacenter description
func (Datacenter) CreateOrUpdate ¶ added in v1.6.0
func (dc Datacenter) CreateOrUpdate(c interface{}) error
CreateOrUpdate implements interface Applier
func (Datacenter) Delete ¶ added in v1.6.0
func (dc Datacenter) Delete(c interface{}) error
Delete implements interface Applier
func (Datacenter) Validate ¶ added in v1.6.0
func (dc Datacenter) Validate() error
Validate implements interface Applier
type DatacenterConfig ¶ added in v1.3.0
type DatacenterConfig struct { BSIMachinesSubnetIPv4CIDR string `json:"BSIMachinesSubnetIPv4CIDR,omitempty" yaml:"BSIMachinesSubnetIPv4CIDR,omitempty"` BSIVRRPListenIPv4 string `json:"BSIVRRPListenIPv4,omitempty" yaml:"BSIVRRPListenIPv4,omitempty"` BSIMachineListenIPv4List []string `json:"BSIMachineListenIPv4List,omitempty" yaml:"BSIMachineListenIPv4List,omitempty"` BSIExternallyVisibleIPv4 string `json:"BSIExternallyVisibleIPv4,omitempty" yaml:"BSIExternallyVisibleIPv4,omitempty"` RepoURLRoot string `json:"repoURLRoot,omitempty" yaml:"repoURLRoot,omitempty"` RepoURLRootQuarantineNetwork string `json:"repoURLRootQuarantineNetwork,omitempty" yaml:"repoURLRootQuarantineNetwork,omitempty"` SANRoutedSubnet string `json:"SANRoutedSubnet,omitempty" yaml:"SANRoutedSubnet,omitempty"` NTPServers []string `json:"NTPServers,omitempty" yaml:"NTPServers,omitempty"` DNSServers []string `json:"DNSServers,omitempty" yaml:"DNSServers,omitempty"` KMS string `json:"KMS,omitempty" yaml:"KMS,omitempty"` TFTPServerWANVRRPListenIPv4 string `json:"TFTPServerWANVRRPListenIPv4,omitempty" yaml:"TFTPServerWANVRRPListenIPv4,omitempty"` DataLakeEnabled bool `json:"dataLakeEnabled" yaml:"dataLakeEnabled"` MonitoringGraphitePlainTextSocketHost string `json:"monitoringGraphitePlainTextSocketHost,omitempty" yaml:"monitoringGraphitePlainTextSocketHost,omitempty"` MonitoringGraphiteRenderURLHost string `json:"monitoringGraphiteRenderURLHost,omitempty" yaml:"monitoringGraphiteRenderURLHost,omitempty"` Latitude float64 `json:"latitude,omitempty" yaml:"latitude,omitempty"` Longitude float64 `json:"longitude,omitempty" yaml:"longitude,omitempty"` Address string `json:"address,omitempty" yaml:"address,omitempty"` ServerRegisterUsingGeneratedIPMICredentialsEnabled bool `json:"serverRegisterUsingGeneratedIPMICredentialsEnabled" yaml:"serverRegisterUsingGeneratedIPMICredentialsEnabled"` DatacenterNetworksLayer2Only bool `json:"datacenterNetworkIsLayer2Only" yaml:"datacenterNetworkIsLayer2Only"` SwitchProvisioner map[string]interface{} `json:"switchProvisioner,omitempty" yaml:"switchProvisioner,omitempty"` EnableTenantAccessToIPMI bool `json:"enableTenantAccessToIPMI" yaml:"enableTenantAccessToIPMI"` ProxyURL string `json:"proxyURL" yaml:"proxyURL"` ProxyUsername string `json:"proxyUsername" yaml:"proxyUsername"` ProxyPassword string `json:"proxyPassword" yaml:"proxyPassword"` EnableProxyURL bool `json:"enableProxyURL" yaml:"enableProxyURL"` }
DatacenterConfig - datacenter configuration
type Drive ¶ added in v1.2.1
type Drive struct { DriveID int `json:"drive_id,omitempty"` DriveLabel string `json:"drive_label,omitempty"` DriveSubdomain string `json:"drive_subdomain,omitempty"` DriveArrayID int `json:"drive_array_id,omitempty"` InstanceID int `json:"instance_id,omitempty"` DriveSizeMBytes int `json:"drive_size_mbytes,omitempty"` DriveStorageType string `json:"drive_storage_type,omitempty"` InfrastructureID int `json:"infrastructure_id,omitempty"` TemplateIDOrigin int `json:"template_id_origin,omitempty"` DriveCredentials *DriveCredentials `json:"drive_credentials,omitempty"` DriveServiceStatus string `json:"drive_service_status,omitempty"` DriveCreatedTimestamp string `json:"drive_created_timestamp,omitempty"` DriveUpdatedTimestamp string `json:"drive_updated_timestamp,omitempty"` DriveOperatingSystem *OperatingSystem `json:"drive_operating_system,omitempty"` DriveFileSystem *DriveFileSystem `json:"drive_filesystem,omitempty"` }
Drive represents a drive
type DriveArray ¶
type DriveArray struct { DriveArrayID int `json:"drive_array_id,omitempty" yaml:"id,omitempty"` DriveArrayLabel string `json:"drive_array_label,omitempty" yaml:"label,omitempty"` VolumeTemplateID int `json:"volume_template_id,omitempty" yaml:"volumeTemplateID,omitempty"` DriveArrayStorageType string `json:"drive_array_storage_type,omitempty" yaml:"storageType,omitempty"` DriveSizeMBytesDefault int `json:"drive_size_mbytes_default,omitempty" yaml:"sizeMBytesDefault,omitempty"` InstanceArrayID int `json:"instance_array_id,omitempty" yaml:"instanceArrayID,omitempty"` InfrastructureID int `json:"infrastructure_id,omitempty" yaml:"infrastructureID,omitempty"` DriveArrayServiceStatus string `json:"drive_array_service_status,omitempty" yaml:"serviceStatus,omitempty"` DriveArrayCount int `json:"drive_array_count,omitempty" yaml:"count,omitempty"` DriveArrayExpandWithInstanceArray bool `json:"drive_array_expand_with_instance_array,omitempty" yaml:"expandWithInstanceArray,omitempty"` DriveArrayOperation *DriveArrayOperation `json:"drive_array_operation,omitempty" yaml:"operation,omitempty"` }
DriveArray represents a collection of identical drives
func (DriveArray) CreateOrUpdate ¶ added in v1.6.0
func (da DriveArray) CreateOrUpdate(c interface{}) error
CreateOrUpdate implements interface Applier
func (DriveArray) Delete ¶ added in v1.6.0
func (da DriveArray) Delete(c interface{}) error
Delete implements interface Applier
func (DriveArray) Validate ¶ added in v1.6.0
func (da DriveArray) Validate() error
Validate implements interface Applier
type DriveArrayOperation ¶
type DriveArrayOperation struct { DriveArrayID int `json:"drive_array_id,omitempty" yaml:"id,omitempty"` DriveArrayLabel string `json:"drive_array_label,omitempty" yaml:"label,omitempty"` VolumeTemplateID int `json:"volume_template_id,omitempty" yaml:"volumeTemplateID,omitempty"` DriveArrayStorageType string `json:"drive_array_storage_type,omitempty" yaml:"storageType,omitempty"` DriveSizeMBytesDefault int `json:"drive_size_mbytes_default,omitempty" yaml:"sizeMBytes,omitempty"` InstanceArrayID int `json:"instance_array_id,omitempty" yaml:"instanceArrayID,omitempty"` InfrastructureID int `json:"infrastructure_id,omitempty" yaml:"infrastructureID,omitempty"` DriveArrayCount int `json:"drive_array_count,omitempty" yaml:"count,omitempty"` DriveArrayExpandWithInstanceArray bool `json:"drive_array_expand_with_instance_array,omitempty" yaml:"expandWithInstanceArray,omitempty"` DriveArrayDeployType string `json:"drive_array_deploy_type,omitempty" yaml:"deployType,omitempty"` DriveArrayDeployStatus string `json:"drive_array_deploy_status,omitempty" yaml:"deployStatus,omitempty"` DriveArrayChangeID int `json:"drive_array_change_id,omitempty" yaml:"changeID,omitempty"` }
DriveArrayOperation defines changes to be applied to a DriveArray
type DriveCredentials ¶ added in v1.2.1
type DriveCredentials struct {
ISCSI ISCSI `json:"iscsi,omitempty"`
}
DriveCredentials credentials to connect to the drive
type DriveFileSystem ¶ added in v1.2.1
type DriveFileSystem struct { DriveFilesystemType string `json:"drive_filesystem_type,omitempty"` DriveFilesystemBlockSizeBytes int `json:"drive_filesystem_block_size_bytes,omitempty"` DriveFilesystemMountPath string `json:"drive_filesystem_mount_path,omitempty"` }
DriveFileSystem filesystem details
type FirewallRule ¶
type FirewallRule struct { FirewallRuleDescription string `json:"firewall_rule_description,omitempty" yaml:"description,omitempty"` FirewallRulePortRangeStart int `json:"firewall_rule_port_range_start,omitempty" yaml:"portRangeStart,omitempty"` FirewallRulePortRangeEnd int `json:"firewall_rule_port_range_end,omitempty" yaml:"portRangeEnd,omitempty"` FirewallRuleSourceIPAddressRangeStart string `json:"firewall_rule_source_ip_address_range_start,omitempty" yaml:"sourceIPAddressRangeStart,omitempty"` FirewallRuleSourceIPAddressRangeEnd string `json:"firewall_rule_source_ip_address_range_end,omitempty" yaml:"sourceIPAddressRangeEnd,omitempty"` FirewallRuleDestinationIPAddressRangeStart string `json:"firewall_rule_destination_ip_address_range_start,omitempty" yaml:"destinationIPAddressRangeStart,omitempty"` FirewallRuleDestinationIPAddressRangeEnd string `json:"firewall_rule_destination_ip_address_range_end,omitempty" yaml:"destinationIPAddressRangeEnd,omitempty"` FirewallRuleProtocol string `json:"firewall_rule_protocol,omitempty" yaml:"protocol,omitempty"` FirewallRuleIPAddressType string `json:"firewall_rule_ip_address_type,omitempty" yaml:"IPAddressType,omitempty"` FirewallRuleEnabled bool `json:"firewall_rule_enabled,omitempty" yaml:"enabled,omitempty"` }
FirewallRule describes a firewall rule that is to be applied on all instances of an array
type HTTPRequest ¶ added in v1.0.8
type HTTPRequest struct { URL string `json:"url,omitempty"` Options WebFetchAAPIOptions `json:"options,omitempty"` Type string `json:"type,omitempty"` }
HTTPRequest represents an HTTP request definition compatible with the standard Web Fetch API.
type HardwareConfiguration ¶
type HardwareConfiguration struct { InstanceArrayRAMGbytes int `json:"instance_array_ram_gbytes,omitempty"` InstanceArrayProcessorCount int `json:"instance_array_processor_count,omitempty"` InstanceArrayProcessorCoreMHZ int `json:"instance_array_processor_core_mhz,omitempty"` InstanceArrayProcessorCoreCount int `json:"instance_array_processor_core_count,omitempty"` InstanceArrayDiskCount int `json:"instance_array_disk_count,omitempty"` InstanceArrayDiskSizeMBytes int `json:"instance_array_disk_size_mbytes,omitempty"` InstanceArrayTotalMhz int `json:"instance_array_total_mhz,omitempty"` InstanceArrayDiskTypes []string `json:"instance_array_disk_types,omitempty"` InstanceArrayInstanceCount int `json:"instance_array_instance_count,omitempty"` }
HardwareConfiguration holds the desired hardware configuration when trying to find available servers for provisioning.
type IDRAC ¶ added in v1.0.3
type IDRAC struct { ControlPanelURL string `json:"control_panel_url,omitempty"` Username string `json:"username,omitempty"` InitialPassword string `json:"initial_password,omitempty"` }
IDRAC control panel credentials.
type ILO ¶ added in v1.0.3
type ILO struct { ControlPanelURL string `json:"control_panel_url,omitempty"` Username string `json:"username,omitempty"` InitialPassword string `json:"initial_password,omitempty"` }
ILO control panel credentials
type IP ¶ added in v1.0.3
type IP struct { IPID int `json:"ip_id,omitempty"` IPType string `json:"ip_type,omitempty"` IPHumanReadable string `json:"ip_human_readable,omitempty"` IPHex string `json:"ip_hex,omitempty"` IPLeaseExpires string `json:"ip_lease_expires,omitempty"` IPOperation IPOperation `json:"ip_operation,omitempty"` SubnetID int `json:"subnet_id,omitempty"` SubnetDestination string `json:"subnet_destination,omitempty"` SubnetGatewayHumanReadable string `json:"subnet_gateway_human_readable,omitempty"` SubnetNetmaskHumanReadable string `json:"subnet_netmask_human_readable,omitempty"` InstanceInterfaceID int `json:"instance_interface_id,omitempty"` IPChangeID int `json:"ip_change_id,omitempty"` }
IP object contains information regarding an IP address.
type IPMI ¶ added in v1.0.3
type IPMI struct { IPAddress string `json:"ip_address,omitempty"` Version string `json:"version,omitempty"` Username string `json:"username,omitempty"` InitialPassword string `json:"initial_password,omitempty"` }
IPMI credentials.
type IPOperation ¶ added in v1.0.3
type IPOperation struct { InstanceInterfaceID int `json:"instance_interface_id,omitempty"` IPDeployStatus string `json:"ip_deploy_status,omitempty"` IPDeployType string `json:"ip_deploy_type,omitempty"` IPID int `json:"ip_id,omitempty"` IPType string `json:"ip_type,omitempty"` IPHumanReadable string `json:"ip_human_readable,omitempty"` IPHex string `json:"ip_hex,omitempty"` IPLabel string `json:"ip_label,omitempty"` IPSubdomain string `json:"ip_subdomain,omitempty"` IPLeaseExpires string `json:"ip_lease_expires,omitempty"` IPUpdatedTimestamp string `json:"ip_updated_timestamp,omitempty"` SubnetID int `json:"subnet_id,omitempty"` IPChangeID int `json:"ip_change_id,omitempty"` }
IPOperation contains information regarding the changes that are to be made to a product. Edit and deploy functions have to be called in order to apply the changes. The operation type and status are unique to each operation object.
type ISCSI ¶ added in v1.0.3
type ISCSI struct { TargetIQN string `json:"target_iqn,omitempty" yaml:"targetIQN,omitempty"` StorageIPAddress string `json:"storage_ip_address,omitempty" yaml:"storageIPAddress,omitempty"` StoragePort int `json:"storage_port,omitempty" yaml:"storagePort,omitempty"` LunID int `json:"lun_id,omitempty" yaml:"LunID,omitempty"` }
ISCSI provides target IQN, IP address, port number and the LUN ID.
type ISCSIInitiator ¶ added in v1.0.3
type ISCSIInitiator struct { Username string `json:"username,omitempty"` Password string `json:"password,omitempty"` InitiatorIQN string `json:"initiator_iqn,omitempty"` Gateway string `json:"gateway,omitempty"` Netmask string `json:"netmask,omitempty"` InitiatorIPAddress string `json:"initiator_ip_address,omitempty"` }
ISCSIInitiator provides initiator IQN, username and password and other iSCSI connection details.
type Infrastructure ¶
type Infrastructure struct { InfrastructureID int `json:"infrastructure_id,omitempty" yaml:"id,omitempty"` InfrastructureLabel string `json:"infrastructure_label" yaml:"label"` DatacenterName string `json:"datacenter_name" yaml:"datacenter"` InfrastructureSubdomain string `json:"infrastructure_subdomain,omitempty" yaml:"subdomain,omitempty"` UserIDowner int `json:"user_id_owner,omitempty" yaml:"ownerID,omitempty"` UserEmailOwner string `json:"user_email_owner,omitempty" yaml:"ownerEmail,omitempty"` InfrastructureTouchUnixtime string `json:"infrastructure_touch_unixtime,omitempty" yaml:"touchUnixTime,omitempty"` InfrastructureServiceStatus string `json:"infrastructure_service_status,omitempty" yaml:"serviceStatus,omitempty"` InfrastructureCreatedTimestamp string `json:"infrastructure_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` InfrastructureUpdatedTimestamp string `json:"infrastructure_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` InfrastructureChangeID int `json:"infrastructure_change_id,omitempty" yaml:"changeID,omitempty"` InfrastructureDeployID int `json:"infrastructure_deploy_id,omitempty" yaml:"deployID,omitempty"` InfrastructureDesignIsLocked bool `json:"infrastructure_design_is_locked,omitempty" yaml:"designIsLocked,omitempty"` InfrastructureOperation InfrastructureOperation `json:"infrastructure_operation,omitempty" yaml:"operation,omitempty"` }
Infrastructure - the main infrastructure object
func (Infrastructure) CreateOrUpdate ¶ added in v1.6.0
func (i Infrastructure) CreateOrUpdate(c interface{}) error
CreateOrUpdate implements interface Applier
func (Infrastructure) Delete ¶ added in v1.6.0
func (i Infrastructure) Delete(c interface{}) error
Delete implements interface Applier
func (Infrastructure) Validate ¶ added in v1.6.0
func (i Infrastructure) Validate() error
Validate implements interface Applier
type InfrastructureOperation ¶
type InfrastructureOperation struct { InfrastructureID int `json:"infrastructure_id,omitempty" yaml:"id,omitempty"` InfrastructureLabel string `json:"infrastructure_label" yaml:"label"` DatacenterName string `json:"datacenter_name" yaml:"datacenter"` InfrastructureDeployStatus string `json:"infrastructure_deploy_status,omitempty" yaml:"deployStatus,omitempty"` InfrastructureDeployType string `json:"infrastructure_deploy_type,omitempty" yaml:"deployType,omitempty"` InfrastructureSubdomain string `json:"infrastructure_subdomain,omitempty" yaml:"subdomain,omitempty"` UserIDOwner int `json:"user_id_owner,omitempty" yaml:"ownerID,omitempty"` InfrastructureUpdatedTimestamp string `json:"infrastructure_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` InfrastructureChangeID int `json:"infrastructure_change_id,omitempty" yaml:"changeID,omitempty"` InfrastructureDeployID int `json:"infrastructure_deploy_id,omitempty" yaml:"deployID,omitempty"` }
InfrastructureOperation - object with alternations to be applied
type Instance ¶ added in v1.0.3
type Instance struct { InstanceID int `json:"instance_id,omitempty"` InstanceLabel string `json:"instance_label,omitempty"` InstanceSubdomain string `json:"instance_subdomain,omitempty"` InstanceSubdomainPermanent string `json:"instance_subdomain_permanent,omitempty"` InstanceArrayID int `json:"instance_array_id,omitempty"` ServerID int `json:"server_id,omitempty"` ServerTypeID int `json:"server_type_id,omitempty"` InstanceServiceStatus string `json:"instance_service_status,omitempty"` InstanceCredentials InstanceCredentials `json:"instance_credentials,omitempty"` InstanceOperation InstanceOperation `json:"instance_operation,omitempty"` InstanceInterfaces []InstanceInterface `json:"instance_interfaces,omitempty"` InstanceCreatedTimestamp string `json:"instance_created_timestamp,omitempty"` InstanceUpdatedTimestamp string `json:"instance_updated_timestamp,omitempty"` DriveIDBootable int `json:"drive_id_bootable,omitempty"` InstanceChangeID int `json:"instance_change_id,omitempty"` TemplateIDOrigin int `json:"template_id_origin,omitempty"` }
Instance object describes an instance
type InstanceArray ¶
type InstanceArray struct { InstanceArrayID int `json:"instance_array_id,omitempty" yaml:"instanceID,omitempty"` InstanceArrayLabel string `json:"instance_array_label,omitempty" yaml:"label,omitempty"` InstanceArraySubdomain string `json:"instance_array_subdomain,omitempty" yaml:"subdomain,omitempty"` InstanceArrayBootMethod string `json:"instance_array_boot_method,omitempty" yaml:"bootMethod,omitempty"` InstanceArrayInstanceCount int `json:"instance_array_instance_count,omitempty" yaml:"instanceCount,omitempty"` InstanceArrayRAMGbytes int `json:"instance_array_ram_gbytes,omitempty" yaml:"ramGBytes,omitempty"` InstanceArrayProcessorCount int `json:"instance_array_processor_count,omitempty" yaml:"processorCount,omitempty"` InstanceArrayProcessorCoreMHZ int `json:"instance_array_processor_core_mhz,omitempty" yaml:"processorCoreMhz,omitempty"` InstanceArrayProcessorCoreCount int `json:"instance_array_processor_core_count,omitempty" yaml:"processorCoreCount,omitempty"` InstanceArrayDiskCount int `json:"instance_array_disk_count,omitempty" yaml:"diskCount,omitempty"` InstanceArrayDiskSizeMBytes int `json:"instance_array_disk_size_mbytes,omitempty" yaml:"diskSizeMBytes,omitempty"` InstanceArrayDiskTypes []string `json:"instance_array_disk_types,omitempty" yaml:"diskTypes,omitempty"` InfrastructureID int `json:"infrastructure_id,omitempty" yaml:"infrastructureID,omitempty"` InstanceArrayServiceStatus string `json:"instance_array_service_status,omitempty" yaml:"serviceStatus,omitempty"` InstanceArrayInterfaces []InstanceArrayInterface `json:"instance_array_interfaces,omitempty" yaml:"interfaces,omitempty"` ClusterID int `json:"cluster_id,omitempty" yaml:"clusterID,omitempty"` ClusterRoleGroup string `json:"cluster_role_group,omitempty" yaml:"clusterRoleGroup,omitempty"` InstanceArrayFirewallManaged bool `json:"instance_array_firewall_managed,omitempty" yaml:"firewallManaged,omitempty"` InstanceArrayFirewallRules []FirewallRule `json:"instance_array_firewall_rules,omitempty" yaml:"firewallRules,omitempty"` VolumeTemplateID int `json:"volume_template_id,omitempty" yaml:"volumeTemplateID,omitempty"` InstanceArrayOperation *InstanceArrayOperation `json:"instance_array_operation,omitempty" yaml:"operation,omitempty"` }
InstanceArray object describes a collection of identical instances
func (InstanceArray) CreateOrUpdate ¶ added in v1.6.0
func (ia InstanceArray) CreateOrUpdate(c interface{}) error
CreateOrUpdate implements interface Applier
func (InstanceArray) Delete ¶ added in v1.6.0
func (ia InstanceArray) Delete(c interface{}) error
Delete implements interface Applier
func (InstanceArray) Validate ¶ added in v1.6.0
func (ia InstanceArray) Validate() error
Validate implements interface Applier
type InstanceArrayInterface ¶
type InstanceArrayInterface struct { InstanceArrayInterfaceLabel string `json:"instance_array_interface_label,omitempty" yaml:"label,omitempty"` InstanceArrayInterfaceSubdomain string `json:"instance_array_interface_subdomain,omitempty" yaml:"subdomain,omitempty"` InstanceArrayInterfaceID int `json:"instance_array_interface_id,omitempty" yaml:"id,omitempty"` InstanceArrayID int `json:"instance_array_id,omitempty" yaml:"instanceArrayID,omitempty"` NetworkID int `json:"network_id,omitempty" yaml:"networkID,omitempty"` InstanceArrayInterfaceLAGGIndexes []interface{} `json:"instance_array_interface_lagg_indexes,omitempty" yaml:"LAGGIndexes,omitempty"` InstanceArrayInterfaceIndex int `json:"instance_array_interface_index,omitempty" yaml:"index,omitempty"` InstanceArrayInterfaceServiceStatus string `json:"instance_array_interface_service_status,omitempty" yaml:"serviceStatus,omitempty"` InstanceArrayInterfaceCreatedTimestamp string `json:"instance_array_interface_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` InstanceArrayInterfaceUpdatedTimestamp string `json:"instance_array_interface_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` InstanceArrayInterfaceOperation *InstanceArrayInterfaceOperation `json:"instance_array_interface_operation,omitempty" yaml:"operation,omitempty"` }
InstanceArrayInterface describes a network interface of the array. It's properties will be applied to all InstanceInterfaces of the array's instances.
type InstanceArrayInterfaceOperation ¶
type InstanceArrayInterfaceOperation struct { InstanceArrayInterfaceLabel string `json:"instance_array_interface_label,omitempty" yaml:"label,omitempty"` InstanceArrayInterfaceSubdomain string `json:"instance_array_interface_subdomain,omitempty" yaml:"subdomain,omitempty"` InstanceArrayInterfaceID int `json:"instance_array_interface_id,omitempty" yaml:"id,omitempty"` InstanceArrayID int `json:"instance_array_id,omitempty" yaml:"instanceArrayID,omitempty"` NetworkID int `json:"network_id,omitempty" yaml:"networkID,omitempty"` InstanceArrayInterfaceLAGGIndexes []interface{} `json:"instance_array_interface_lagg_indexes,omitempty" yaml:"LAGGIndexes,omitempty"` InstanceArrayInterfaceIndex int `json:"instance_array_interface_index,omitempty" yaml:"index,omitempty"` InstanceArrayInterfaceServiceStatus string `json:"instance_array_interface_service_status,omitempty" yaml:"serviceStatus,omitempty"` InstanceArrayInterfaceCreatedTimestamp string `json:"instance_array_interface_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` InstanceArrayInterfaceUpdatedTimestamp string `json:"instance_array_interface_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` InstanceArrayInterfaceChangeID int `json:"instance_array_interface_change_id,omitempty" yaml:"changeID,omitempty"` }
InstanceArrayInterfaceOperation describes changes to a network array interface
type InstanceArrayOperation ¶
type InstanceArrayOperation struct { InstanceArrayID int `json:"instance_array_id,omitempty" yaml:"id,omitempty"` InstanceArrayLabel string `json:"instance_array_label,omitempty" yaml:"label,omitempty"` InstanceArraySubdomain string `json:"instance_array_subdomain,omitempty" yaml:"subdomain,omitempty"` InstanceArrayBootMethod string `json:"instance_array_boot_method,omitempty" yaml:"bootMethod,omitempty"` InstanceArrayInstanceCount int `json:"instance_array_instance_count,omitempty" yaml:"instanceCount,omitempty"` InstanceArrayRAMGbytes int `json:"instance_array_ram_gbytes,omitempty" yaml:"ramGBytes,omitempty"` InstanceArrayProcessorCount int `json:"instance_array_processor_count,omitempty" yaml:"processorCount,omitempty"` InstanceArrayProcessorCoreMHZ int `json:"instance_array_processor_core_mhz,omitempty" yaml:"processorCoreMhz,omitempty"` InstanceArrayProcessorCoreCount int `json:"instance_array_processor_core_count,omitempty" yaml:"processorCoreCount,omitempty"` InstanceArrayDiskCount int `json:"instance_array_disk_count,omitempty" yaml:"diskCount,omitempty"` InstanceArrayDiskSizeMBytes int `json:"instance_array_disk_size_mbytes,omitempty" yaml:"diskSizeMBytes,omitempty"` InstanceArrayDiskTypes []string `json:"instance_array_disk_types,omitempty" yaml:"diskTypes,omitempty"` InstanceArrayServiceStatus string `json:"instance_array_service_status,omitempty" yaml:"serviceStatus,omitempty"` InstanceArrayInterfaces []InstanceArrayInterfaceOperation `json:"instance_array_interfaces,omitempty" yaml:"interfaces,omitempty"` ClusterID int `json:"cluster_id,omitempty" yaml:"clusterID,omitempty"` ClusterRoleGroup string `json:"cluster_role_group,omitempty" yaml:"clusterRoleGroup,omitempty"` InstanceArrayFirewallManaged bool `json:"instance_array_firewall_managed,omitempty" yaml:"firewallManaged,omitempty"` InstanceArrayFirewallRules []FirewallRule `json:"instance_array_firewall_rules,omitempty" yaml:"firewallRules,omitempty"` VolumeTemplateID int `json:"volume_template_id,omitempty" yaml:"volumeTemplateID,omitempty"` InstanceArrayDeployType string `json:"instance_array_deploy_type,omitempty" yaml:"deployType,omitempty"` InstanceArrayDeployStatus string `json:"instance_array_deploy_status,omitempty" yaml:"deployStatus,omitempty"` InstanceArrayChangeID int `json:"instance_array_change_id,omitempty" yaml:"changeID,omitempty"` }
InstanceArrayOperation object describes the changes that will be applied to an instance array
type InstanceCredentials ¶ added in v1.0.3
type InstanceCredentials struct { SSH *SSH `json:"ssh,omitempty"` RDP *RDP `json:"rdp,omitempty"` IPMI *IPMI `json:"ipmi,omitempty"` ILO *ILO `json:"ilo,omitempty"` IDRAC *IDRAC `json:"idrac,omitempty"` ISCSI *ISCSIInitiator `json:"iscsi,omitempty"` RemoteConsole *RemoteConsole `json:"remote_console,omitempty"` IPAddressesPublic []IP `json:"ip_addresses_public,omitempty"` IPAddressesPrivate []IP `json:"ip_addresses_private,omitempty"` }
InstanceCredentials contains information needed to connect to the server via IPMI, iLO etc.
func (*InstanceCredentials) UnmarshalJSON ¶ added in v1.3.9
func (b *InstanceCredentials) UnmarshalJSON(data []byte) error
UnmarshalJSON custom InstanceCredentials unmarshaling
type InstanceInterface ¶ added in v1.0.3
type InstanceInterface struct { InstanceInterfaceLabel string `json:"instance_interface_label,omitempty"` InstanceInterfaceSubdomain string `json:"instance_interface_subdomain,omitempty"` InstanceInterfaceID int `json:"instance_interface_id,omitempty"` InstanceID int `json:"instance_id,omitempty"` NetworkID int `json:"network_id,omitempty"` InstanceInterfaceLaggIndexes []int `json:"instance_interface_lagg_indexes,omitempty"` InstanceInterfaceIndex int `json:"instance_interface_index,omitempty"` InstanceInterfaceCapacityMbps int `json:"instance_interface_capacity_mbps,omitempty"` InstanceInterfaceServiceStatus string `json:"instance_interface_service_status,omitempty"` ServerInterface ServerInterface `json:"server_interface,omitempty"` InstanceInterfaceOperation InstanceInterfaceOperation `json:"instance_interface_operation,omitempty"` InstanceInterfaceIPs []IP `json:"instance_interface_ips,omitempty"` InstanceInterfaceChangeID int `json:"instance_interface_change_id,omitempty"` }
InstanceInterface objects are created automatically when instances are created. Subnets are added on networks and then IP addresses are associated automatically or manually through the API to instance interfaces.
type InstanceInterfaceOperation ¶ added in v1.0.3
type InstanceInterfaceOperation struct { InstanceInterfaceLabel string `json:"instance_interface_label,omitempty"` InstanceInterfaceSubdomain string `json:"instance_interface_subdomain,omitempty"` InstanceInterfaceDeployStatus string `json:"instance_interface_deploy_status,omitempty"` InstanceInterfaceDeployType string `json:"instance_interface_deploy_type,omitempty"` InstanceInterfaceID int `json:"instance_interface_id,omitempty"` InstanceID int `json:"instance_id,omitempty"` NetworkID int `json:"network_id,omitempty"` InstanceInterfaceLaggIndexes []int `json:"instance_interface_lagg_indexes,omitempty"` InstanceInterfaceIndex int `json:"instance_interface_index,omitempty"` InstanceInterfaceCapacityMbps int `json:"instance_interface_capacity_mbps,omitempty"` InstanceInterfaceChangeID int `json:"instance_interface_change_id,omitempty"` }
InstanceInterfaceOperation objects are created automatically when instances are created. Subnets are added on networks and then IP addresses are associated automatically or manually through the API to instance interfaces.
type InstanceOperation ¶ added in v1.0.3
type InstanceOperation struct { InstanceID int `json:"instance_id,omitempty"` InstanceDeployType string `json:"instance_deploy_type,omitempty"` InstanceDeployStatus string `json:"instance_deploy_status,omitempty"` InstanceLabel string `json:"instance_label,omitempty"` InstanceSubdomain string `json:"instance_subdomain,omitempty"` InstanceSubdomainPermanent string `json:"instance_subdomain_permanent,omitempty"` InstanceArrayID int `json:"instance_array_id,omitempty"` ServerID int `json:"server_id,omitempty"` ServerTypeID int `json:"server_type_id,omitempty"` InstanceChangeID int `json:"instance_change_id,omitempty"` TemplateIDOrigin int `json:"template_id_origin,omitempty"` }
InstanceOperation contains information regarding the changes that are to be made to a product. Edit and deploy functions have to be called in order to apply the changes. The operation type and status are unique to each operation object.
type Network ¶
type Network struct { NetworkID int `json:"network_id,omitempty" yaml:"id,omitempty"` NetworkLabel string `json:"network_label,omitempty" yaml:"label,omitempty"` NetworkSubdomain string `json:"network_subdomain,omitempty" yaml:"subdomain,omitempty"` NetworkType string `json:"network_type,omitempty" yaml:"type,omitempty"` InfrastructureID int `json:"infrastructure_id,omitempty" yaml:"infrastructureID,omitempty"` NetworkCreatedTimestamp string `json:"network_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` NetworkUpdatedTimestamp string `json:"network_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` NetworkLANAutoAllocateIPs bool `json:"network_lan_autoallocate_ips,omitempty" yaml:"LANAutoAllocateIPs,omitempty"` NetworkOperation *NetworkOperation `json:"network_operation,omitempty" yaml:"operation,omitempty"` }
Network object describes an high level connection construct
func (Network) CreateOrUpdate ¶ added in v1.6.0
CreateOrUpdate implements interface Applier
type NetworkOperation ¶
type NetworkOperation struct { NetworkID int `json:"network_id,omitempty" yaml:"id,omitempty"` NetworkLabel string `json:"network_label,omitempty" yaml:"label,omitempty"` NetworkSubdomain string `json:"network_subdomain,omitempty" yaml:"subdomain,omitempty"` NetworkType string `json:"network_type,omitempty" yaml:"type,omitempty"` InfrastructureID int `json:"infrastructure_id,omitempty" yaml:"infrastructureID,omitempty"` NetworkLANAutoAllocateIPs bool `json:"network_lan_autoallocate_ips,omitempty" yaml:"LANAutoAllocateIPs,omitempty"` NetworkDeployType string `json:"network_deploy_type,omitempty" yaml:"deployType,omitempty"` NetworkChangeID int `json:"network_change_id,omitempty" yaml:"changeID,omitempty"` }
NetworkOperation object describes the change(s) required to be applied to a Network
type OSAsset ¶ added in v1.0.4
type OSAsset struct { OSAssetID int `json:"os_asset_id,omitempty" yaml:"id,omitempty"` UserIDOwner int `json:"user_id_owner,omitempty" yaml:"ownerID,omitempty"` UserIDAuthenticated int `json:"user_id_authenticated,omitempty" yaml:"userIDAuthenticated,omitempty"` OSAssetFileName string `json:"os_asset_filename,omitempty" yaml:"fileName,omitempty"` OSAssetFileSizeBytes int `json:"os_asset_file_size_bytes,omitempty" yaml:"fileSizeBytes,omitempty"` OSAssetFileMime string `json:"os_asset_file_mime,omitempty" yaml:"fileMime,omitempty"` OSAssetContentsBase64 string `json:"os_asset_contents_base64,omitempty" yaml:"contentBase64,omitempty"` OSAssetContentsSHA256Hex string `json:"os_asset_contents_sha256_hex,omitempty" yaml:"contentSHA256Hex,omitempty"` OSAssetUsage string `json:"os_asset_usage,omitempty" yaml:"usage,omitempty"` OSAssetSourceURL string `json:"os_asset_source_url,omitempty" yaml:"sourceURL,omitempty"` OSAssetVariableNamesRequired []string `json:"os_asset_variable_names_required,omitempty" yaml:"variables,omitempty"` OSAssetTags []string `json:"os_asset_tags,omitempty" yaml:"tags,omitempty"` OSAssetCreatedTimestamp string `json:"os_asset_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` OSAssetUpdatedTimestamp string `json:"os_asset_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` }
OSAsset struct defines a server type
func (OSAsset) CreateOrUpdate ¶ added in v1.6.0
CreateOrUpdate implements interface Applier
type OSTemplate ¶ added in v1.0.4
type OSTemplate struct { VolumeTemplateID int `json:"volume_template_id,omitempty" yaml:"id,omitempty"` VolumeTemplateLabel string `json:"volume_template_label,omitempty" yaml:"label,omitempty"` VolumeTemplateDisplayName string `json:"volume_template_display_name,omitempty" yaml:"name,omitempty"` VolumeTemplateSizeMBytes int `json:"volume_template_size_mbytes,omitempty" yaml:"sizeMBytes,omitempty"` VolumeTemplateLocalDiskSupported bool `json:"volume_template_local_disk_supported,omitempty" yaml:"localDisk,omitempty"` VolumeTemplateIsOSTemplate bool `json:"volume_template_is_os_template,omitempty" yaml:"isOsTemplate,omitempty"` VolumeTemplateBootMethodsSupported string `json:"volume_template_boot_methods_supported,omitempty" yaml:"bootMethods,omitempty"` VolumeTemplateBootType string `json:"volume_template_boot_type,omitempty" yaml:"bootType,omitempty"` VolumeTemplateDescription string `json:"volume_template_description,omitempty" yaml:"description,omitempty"` VolumeTemplateCreatedTimestamp string `json:"volume_template_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` VolumeTemplateUpdatedTimestamp string `json:"volume_template_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` UserID int `json:"user_id,omitempty" yaml:"userID,omitempty"` VolumeTemplateOperatingSystem *OperatingSystem `json:"volume_template_operating_system,omitempty" yaml:"os,omitempty"` VolumeTemplateRepoURL string `json:"volume_template_repo_url,omitempty" yaml:"repoURL,omitempty"` VolumeTemplateDeprecationStatus string `json:"volume_template_deprecation_status,omitempty" yaml:"deprecationStatus,omitempty"` OSTemplateCredentials *OSTemplateCredentials `json:"os_template_credentials,omitempty" yaml:"credentials,omitempty"` VolumeTemplateTags []string `json:"volume_template_tags,omitempty" yaml:"tags,omitempty"` OSTemplatePreBootArchitecture string `json:"os_template_pre_boot_architecture,omitempty" yaml:"preBootArchitecture,omitempty"` OSAssetBootloaderLocalInstall int `json:"os_asset_id_bootloader_local_install,omitempty" yaml:"OSAssetIDBootloaderLocalInstall,omitempty"` OSAssetBootloaderOSBoot int `json:"os_asset_id_bootloader_os_boot,omitempty" yaml:"OSAssetIDBootloaderOSBoot,omitempty"` VolumeTemplateVariablesJSON string `json:"volume_template_variables_json,omitempty" yaml:"variablesJSON,omitempty"` }
OSTemplate A template can be created based on a drive and it has the same characteristics and holds the same information as the parent drive.
func (OSTemplate) CreateOrUpdate ¶ added in v1.6.0
func (t OSTemplate) CreateOrUpdate(c interface{}) error
CreateOrUpdate implements interface Applier
func (OSTemplate) Delete ¶ added in v1.6.0
func (t OSTemplate) Delete(c interface{}) error
Delete implements interface Applier
func (OSTemplate) Validate ¶ added in v1.6.0
func (t OSTemplate) Validate() error
Validate implements interface Applier
type OSTemplateCredentials ¶ added in v1.0.4
type OSTemplateCredentials struct { OSTemplateInitialUser string `json:"os_template_initial_user,omitempty" yaml:"initialUser,omitempty"` OSTemplateInitialPasswordEncrypted string `json:"os_template_initial_password_encrypted,omitempty" yaml:"initialPasswordEncrypted,omitempty"` OSTemplateInitialPassword string `json:"os_template_initial_password,omitempty" yaml:"initialPassword,omitempty"` OSTemplateInitialSSHPort int `json:"os_template_initial_ssh_port,omitempty" yaml:"initialSSHPort,omitempty"` OSTemplateChangePasswordAfterDeploy bool `json:"os_template_change_password_after_deploy,omitempty" yaml:"changePasswordAfterDeploy,omitempty"` OSTemplateUseAutogeneratedInitialPassword bool `json:"os_template_use_autogenerated_initial_password,omitempty" yaml:"useAutogeneratedInitialPassword,omitempty"` }
OSTemplateCredentials holds information needed to connect to an OS installed by an OSTemplate.
type OSTemplateOSAssetData ¶ added in v1.3.7
type OSTemplateOSAssetData struct { OSAsset *OSAsset `json:"os_asset,omitempty"` OSAssetFilePath string `json:"os_asset_file_path,omitempty"` OSTemplateOSAssetUpdatedTimestamp string `json:"volume_template_os_asset_updated_timestamp,omitempty"` OSTemplateOSAssetVariablesJSON string `json:"volume_template_os_asset_variables_json,omitempty"` }
OSTemplateOSAssetData holds asset-template information
type OperatingSystem ¶
type OperatingSystem struct { OperatingSystemType string `json:"operating_system_type,omitempty" yaml:"type,omitempty"` OperatingSystemVersion string `json:"operating_system_version,omitempty" yaml:"version,omitempty"` OperatingSystemArchitecture string `json:"operating_system_architecture,omitempty" yaml:"architecture,omitempty"` }
OperatingSystem describes an OS
type RDP ¶ added in v1.0.3
type RDP struct { Port int `json:"port,omitempty"` Username string `json:"username,omitempty"` InitialPassword string `json:"initial_password,omitempty"` }
RDP credentials for the installed OS.
type RemoteConsole ¶ added in v1.0.3
type RemoteConsole struct { RemoteProtocol string `json:"remote_protocol,omitempty"` TunnelPathURL string `json:"tunnel_path_url,omitempty"` RemoteControlPanelURL string `json:"remote_control_panel_url,omitempty"` }
RemoteConsole provides credentials needed to connect to the server via the HTML interface
type SCPResourceLocation ¶ added in v1.1.4
type SCPResourceLocation struct { Path string `json:"path,omitempty"` SSHTarget SSHClientOptions `json:"ssh_target,omitempty"` }
SCPResourceLocation defines a file path and SSH client connection options for use with Secure Copy Protocol (SCP).
type SSH ¶ added in v1.0.3
type SSH struct { Port int `json:"port,omitempty"` Username string `json:"username,omitempty"` InitialPassword string `json:"initial_password,omitempty"` }
SSH credentials for the installed OS.
type SSHAlgorithms ¶ added in v1.1.4
type SSHAlgorithms struct { Kex []string `json:"kex,omitempty"` Cipher []string `json:"cipher,omitempty"` ServerHostKey []string `json:"serverHostKey,omitempty"` HMAC []string `json:"hmac,omitempty"` Compress []string `json:"compress,omitempty"` }
SSHAlgorithms defines algorithms that can be used during an ssh session
type SSHClientOptions ¶ added in v1.1.4
type SSHClientOptions struct { Host string `json:"host,omitempty"` Port int `json:"port,omitempty"` ForceIPv4 bool `json:"forceIPv4,omitempty"` ForceIPv6 bool `json:"forceIPv6,omitempty"` HostHash string `json:"hostHash,omitempty"` HashedKey string `json:"hashedKey,omitempty"` Username string `json:"username,omitempty"` Password string `json:"password,omitempty"` PrivateKey string `json:"privateKey,omitempty"` Passphrase string `json:"passphrase,omitempty"` ReadyTimeout int `json:"readyTimeout,omitempty"` StrictVendor bool `json:"strictVendor,omitempty"` Algorithms SSHAlgorithms `json:"algorithms,omitempty"` Compress string `json:"compress,omitempty"` }
SSHClientOptions defines an ssh cnnection such as the host, port, user, password, private keys, etc. All properties support template-like variables; for example, ${{instance_credentials_password}} may be used as value for the password property.
type SSHExec ¶ added in v1.1.4
type SSHExec struct { Command string `json:"command,omitempty"` SSHTarget SSHClientOptions `json:"ssh_target,omitempty"` Timeout int `json:"timeout,omitempty"` Type string `json:"type,omitempty"` }
SSHExec executes a command on a remote server using the SSH exec functionality (not through a shell).
type SSHKey ¶ added in v1.0.3
type SSHKey struct { UserSSHKeyID int `json:"user_ssh_key_id,omitempty"` UserID int `json:"user_id,omitempty"` UserSSHKey string `json:"user_ssh_key,omitempty"` UserSSHKeyCreatedTimeStamp string `json:"user_ssh_key_created_timestamp,omitempty"` UserSSHKeyStatus string `json:"user_ssh_key_status,omitempty"` }
SSHKey represents an SSH keys added by a user
type SearchResultForServerComponents ¶ added in v1.1.2
type SearchResultForServerComponents struct { DurationMilliseconds int `json:"duration_millisecnds,omitempty"` Rows []ServerComponent `json:"rows,omitempty"` RowsOrder [][]string `json:"rows_order,omitempty"` RowsTotal int `json:"rows_total,omitempty"` }
SearchResultForServerComponents describes a search result
type SearchResultForServers ¶ added in v1.0.4
type SearchResultForServers struct { DurationMilliseconds int `json:"duration_millisecnds,omitempty"` Rows []ServerSearchResult `json:"rows,omitempty"` RowsOrder [][]string `json:"rows_order,omitempty"` RowsTotal int `json:"rows_total,omitempty"` }
SearchResultForServers describes a serach result
type Secret ¶ added in v1.0.4
type Secret struct { SecretID int `json:"secret_id,omitempty" yaml:"id,omitempty"` UserIDOwner int `json:"user_id_owner,omitempty" yaml:"ownerID,omitempty"` UserIDAuthenticated int `json:"user_id_authenticated,omitempty" yaml:"userIDAuthenticated,omitempty"` SecretName string `json:"secret_name,omitempty" yaml:"name,omitempty"` SecretUsage string `json:"secret_usage,omitempty" yaml:"usage,omitempty"` SecretBase64 string `json:"secret_base64,omitempty" yaml:"base64,omitempty"` SecretCreatedTimestamp string `json:"secret_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` SecretUpdatedTimestamp string `json:"secret_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` }
Secret struct defines a server type
func (Secret) CreateOrUpdate ¶ added in v1.6.0
CreateOrUpdate implements interface Applier
type Server ¶ added in v1.0.4
type Server struct { ServerID int `json:"server_id,omitempty" yaml:"id,omitempty"` ServerUUID string `json:"server_uuid,omitempty" yaml:"UUID,omitempty"` ServerStatus string `json:"server_status,omitempty" yaml:"status,omitempty"` ServerSerialNumber string `json:"server_serial_number,omitempty" yaml:"serialNumber,omitempty"` ServerVendor string `json:"server_vendor,omitempty" yaml:"vendor,omitempty"` DatacenterName string `json:"datacenter_name,omitempty" yaml:"datacenter,omitempty"` ServerNetworkTotalCapacityMbps int `json:"server_network_total_capacity_mbps,omitempty" yaml:"networkTotalCapacityMbps,omitempty"` ServerBootType string `json:"server_boot_type,omitempty" yaml:"bootType,omitempty"` ServerPowerStatus string `json:"server_power_status,omitempty" yaml:"powerStatus,omitempty"` ServerProcessorName string `json:"server_processor_name,omitempty" yaml:"processorName,omitempty"` ServerProcessorCoreCount int `json:"server_processor_core_count,omitempty" yaml:"processorCoreCount,omitempty"` ServerProcessorCoreMhz int `json:"server_processor_core_mhz,omitempty" yaml:"processorCoreMhz,omitempty"` ServerProcessorCount int `json:"server_processor_count,omitempty" yaml:"processorCount,omitempty"` ServerProcessorThreads int `json:"server_processor_threads,omitempty" yaml:"processorThreads,omitempty"` ServerProcessorCPUMark int `json:"server_processor_cpu_mark" yaml:"processorCPUMark"` ServerRAMGbytes int `json:"server_ram_gbytes,omitempty" yaml:"ramGbytes,omitempty"` ServerDisks []ServerDisk `json:"server_disks,omitempty" yaml:"disks,omitempty"` ServerDiskCount int `json:"server_disk_count,omitempty" yaml:"diskCount,omitempty"` ServerDiskSizeMbytes int `json:"server_disk_size_mbytes,omitempty" yaml:"diskSizeMbytes,omitempty"` ServerDiskType string `json:"server_disk_type,omitempty" yaml:"diskType,omitempty"` ServerProductName string `json:"server_product_name,omitempty" yaml:"productName,omitempty"` ServerClass string `json:"server_class,omitempty" yaml:"serverClass,omitempty"` ServerTypeID int `json:"server_type_id,omitempty" yaml:"serverTypeID,omitempty"` ServerInterfaces []ServerInterface `json:"server_interfaces,omitempty" yaml:"interfaces,omitempty"` ServerTags []string `json:"server_tags,omitempty" yaml:"tags,omitempty"` ServerIPMIChannel int `json:"server_ipmi_channel" yaml:"IPMIChannel"` ServerIPMIHost string `json:"server_ipmi_host,omitempty" yaml:"IPMIHostname,omitempty"` ServerIPMInternalUsername string `json:"server_ipmi_internal_username,omitempty" yaml:"IPMIUsername,omitempty"` ServerIPMInternalPassword string `json:"server_ipmi_internal_password,omitempty" yaml:"IPMIPassword,omitempty"` ServerIPMCredentialsNeedUpdate bool `json:"server_ipmi_credentials_need_update,omitempty" yaml:"IPMICredentialsNeedUpdate,omitempty"` ServerVendorSKUID string `json:"server_vendor_sku_id,omitempty" yaml:"vendorSKU,omitempty"` ServerComments string `json:"server_comments,omitempty" yaml:"comments,omitempty"` ServerBIOSInfoJSON string `json:"server_bios_info_json" yaml:"BIOSInfoJson"` ServerCustomJSON string `json:"server_custom_json" yaml:"CustomJSON"` }
Server represents a server in a datacenter.
func (Server) CreateOrUpdate ¶ added in v1.6.0
CreateOrUpdate implements interface Applier
type ServerComponent ¶ added in v1.1.2
type ServerComponent struct { ServerComponentID int `json:"server_component_id,omitempty" yaml:"id,omitempty"` ServerID int `json:"server_id,omitempty" yaml:"serverID,omitempty"` ServerComponentName string `json:"server_component_name,omitempty" yaml:"componentName,omitempty"` ServerComponentFirmwareVersion string `json:"server_component_firmware_version,omitempty" yaml:"firmwareVersion,omitempty"` ServerComponentFirmwareUpdateable bool `json:"server_component_firmware_updateable,omitempty" yaml:"firmwareUpdateable,omitempty"` ServerComponentFirmwareJSON string `json:"server_component_firmware_json,omitempty" yaml:"firmwareJSON,omitempty"` ServerComponentFirmwareUpdateAvailableVersions []string `json:"server_component_firmware_update_available_versions,omitempty" yaml:"firmwareUpdateAvailableVersions,omitempty"` ServerComponentFirmwareStatus string `json:"server_component_firmware_status,omitempty" yaml:"firmwareStatus,omitempty"` ServerComponentType string `json:"server_component_type,omitempty" yaml:"type,omitempty"` ServerComponentFirmwareUpdateTimestamp string `json:"server_component_firmware_update_timestamp,omitempty" yaml:"firmwareUpdateTimestamp,omitempty"` ServerComponentFirmwareTargetVersion string `json:"server_component_firmware_target_version,omitempty" yaml:"firmwareTargetVersion,omitempty"` ServerComponentFirmwareScheduledTimestamp string `json:"server_component_firmware_scheduled_timestamp,omitempty" yaml:"firmwareScheduledTimestamp,omitempty"` }
ServerComponent information about a server's components
type ServerDisk ¶ added in v1.0.4
type ServerDisk struct { ServerDiskID int `json:"server_disk_id,omitempty" yaml:"id,omitempty"` ServerDiskModel string `json:"server_disk_model,omitempty" yaml:"model,omitempty"` ServerDiskType string `json:"server_disk_type,omitempty" yaml:"type,omitempty"` ServerDiskVendor string `json:"server_disk_vendor,omitempty" yaml:"vendor,omitempty"` ServerDiskStatus string `json:"server_disk_status,omitempty" yaml:"status,omitempty"` ServerDiskSerial string `json:"server_disk_serial,omitempty" yaml:"serial_number,omitempty"` ServerDiskSizeGB int `json:"server_disk_size_gb,omitempty" yaml:"sizeGB,omitempty"` }
ServerDisk describes a disk
type ServerInterface ¶ added in v1.0.3
type ServerInterface struct {
ServerInterfaceMACAddress string `json:"server_interface_mac_address,omitempty" yaml:"macAddress,omitempty"`
}
ServerInterface contains server connectivity information.
type ServerSearchResult ¶ added in v1.0.4
type ServerSearchResult struct { ServerID int `json:"server_id,omitempty" yaml:"id,omitempty"` ServerUUID string `json:"server_uuid,omitempty" yaml:"uuid,omitempty"` ServerStatus string `json:"server_status,omitempty" yaml:"status,omitempty"` ServerSerialNumber string `json:"server_serial_number,omitempty" yaml:"serial_number,omitempty"` ServerVendor string `json:"server_vendor,omitempty" yaml:"vendor,omitempty"` ServerNetworkTotalCapacityMbps int `json:"server_network_total_capacity_mbps,omitempty" yaml:"networkTotalCapacityMbps,omitempty"` ServerBootType string `json:"server_boot_type,omitempty" yaml:"bootType,omitempty"` ServerPowerStatus string `json:"server_power_status,omitempty" yaml:"powerStatus,omitempty"` ServerProcessorName string `json:"server_processor_name,omitempty" yaml:"processorName,omitempty"` ServerProcessorCoreCount int `json:"server_processor_core_count,omitempty" yaml:"processorCoreCount,omitempty"` ServerProcessorCoreMhz int `json:"server_processor_core_mhz,omitempty" yaml:"processorCoreMhz,omitempty"` ServerProcessorCount int `json:"server_processor_count,omitempty" yaml:"processorCount,omitempty"` ServerProcessorThreads int `json:"server_processor_threads,omitempty" yaml:"processorThreads,omitempty"` ServerProcessorCPUMark int `json:"server_processor_cpu_mark" yaml:"processorCPUMark"` ServerRAMGbytes int `json:"server_ram_gbytes,omitempty" yaml:"ramGbytes,omitempty"` ServerDiskCount int `json:"server_disk_count,omitempty" yaml:"diskCount,omitempty"` ServerDiskSizeMbytes int `json:"server_disk_size_mbytes,omitempty" yaml:"diskSizeMbytes,omitempty"` ServerDiskType string `json:"server_disk_type,omitempty" yaml:"diskType,omitempty"` ServerProductName string `json:"server_product_name,omitempty" yaml:"productName,omitempty"` ServerClass string `json:"server_class,omitempty" yaml:"class,omitempty"` ServerTypeID int `json:"server_type_id,omitempty" yaml:"typeID,omitempty"` ServerTypeName string `json:"server_type_name,omitempty" yaml:"type,omitempty"` ServerTypeBootType string `json:"server_type_boot_type,omitempty" yaml:"serverBootType,omitempty"` ServerInterfaces []ServerInterface `json:"server_interfaces,omitempty" yaml:"interfaces,omitempty"` ServerDisks []ServerDisk `json:"server_disks,omitempty" yaml:"disks,omitempty"` ServerTags []string `json:"server_tags,omitempty" yaml:"tags,omitempty"` ServerIPMIChannel int `json:"server_ipmi_channel,omitempty" yaml:"IPMIChannel,omitempty"` ServerIPMIHost string `json:"server_ipmi_host,omitempty" yaml:"IPMIHostname,omitempty"` ServerIPMInternalUsername string `json:"server_ipmi_internal_username,omitempty" yaml:"IPMIUsername,omitempty"` ServerIPMInternalPassword string `json:"server_ipmi_internal_password,omitempty" yaml:"IPMIPassword,omitempty"` ServerIPMCredentialsNeedUpdate bool `json:"server_ipmi_credentials_need_update,omitempty" yaml:"IPMICredentialsNeedUpdate,omitempty"` ServerVendorSKUID string `json:"server_vendor_sku_id,omitempty" yaml:"vendorSKUID,omitempty"` ServerComments string `json:"server_comments,omitempty" yaml:"comments,omitempty"` InstanceLabel []string `json:"instance_label,omitempty" yaml:"instanceLabel,omitempty"` InstanceID []int `json:"instance_id,omitempty" yaml:"instanceID,omitempty"` InstanceArrayID []int `json:"instance_array_id,omitempty" yaml:"instanceArrayID,omitempty"` InfrastructureID []int `json:"infrastructure_id,omitempty" yaml:"infrastructureID,omitempty"` UserEmail [][]string `json:"user_email,omitempty" yaml:"userEmail,omitempty"` UserID [][]int `json:"user_id,omitempty" yaml:"users,omitempty"` DatacenterName string `json:"datacenter_name,omitempty" yaml:"datacenter,omitempty"` }
ServerSearchResult represents a server in a datacenter.
type ServerType ¶
type ServerType struct { ServerTypeID int `json:"server_type_id,omitempty"` ServerNetworkTotalCapacityMBps int `json:"server_network_total_capacity_mbps,omitempty"` ServerTypeName string `json:"server_type_name,omitempty"` ServerTypeDisplayName string `json:"server_type_display_name,omitempty"` ServerTypeLabel string `json:"server_type_label,omitempty"` ServerProcessorCoreCount int `json:"server_processor_core_count,omitempty"` ServerProcessorCoreMHz int `json:"server_processor_core_mhz,omitempty"` ServerProcessorCount int `json:"server_processor_count,omitempty"` ServerRAMGbytes int `json:"server_ram_gbytes,omitempty"` ServerDiskCount int `json:"server_disk_count,omitempty"` ServerDiskType string `json:"server_disk_type,omitempty"` ServerDiskSizeMBytes int `json:"server_disk_size_mbytes,omitempty"` ServerProcessorNamesJSON string `json:"server_processor_names_json,omitempty"` ServerProcessorName string `json:"server_processor_name,omitempty"` ServerClass string `json:"server_class,omitempty"` ServerTypeIsExperimental bool `json:"server_type_is_experimental,omitempty"` ServerCount int `json:"server_count,omitempty"` }
ServerType struct defines a server type
type ServerTypeMatch ¶ added in v1.2.6
type ServerTypeMatch struct {
ServerCount int `json:"server_count,omitempty"`
}
ServerTypeMatch what exact server types to use
type ServerTypeMatches ¶ added in v1.2.6
type ServerTypeMatches struct {
ServerTypes map[int]ServerTypeMatch `json:"server_types,omitempty"`
}
ServerTypeMatches used in InstanceArrayEdit operations to specify which server types to use
type SharedDrive ¶ added in v1.3.3
type SharedDrive struct {}
SharedDrive represents a drive that can be shared between instances
func (SharedDrive) CreateOrUpdate ¶ added in v1.6.0
func (sd SharedDrive) CreateOrUpdate(c interface{}) error
CreateOrUpdate implements interface Applier
func (SharedDrive) Delete ¶ added in v1.6.0
func (sd SharedDrive) Delete(c interface{}) error
Delete implements interface Applier
func (SharedDrive) Validate ¶ added in v1.6.0
func (sd SharedDrive) Validate() error
Validate implements interface Applier
type SharedDriveCredentials ¶ added in v1.3.7
type SharedDriveCredentials struct {
}SharedDriveCredentials iscsi or other forms of connection details
type SharedDriveOperation ¶ added in v1.3.3
type SharedDriveOperation struct {}
SharedDriveOperation represents an ongoing or new operation on a shared drive
type ShutdownOptions ¶
type ShutdownOptions struct { HardShutdownAfterTimeout bool `json:"hard_shutdown_after_timeout"` AttemptSoftShutdown bool `json:"attempt_soft_shutdown"` SoftShutdownTimeoutSeconds int `json:"soft_shutdown_timeout_seconds"` }
ShutdownOptions controls how the deploy engine handles running instances
type Snapshot ¶ added in v1.2.1
type Snapshot struct { DriveSnapshotID int `json:"drive_snapshot_id,omitempty"` DriveSnapshotLabel string `json:"drive_snapshot_label,omitempty"` DriveID int `json:"drive_id,omitempty"` DriveSnapshotCreatedTimestamp string `json:"drive_snapshot_created_timestamp,omitempty"` }
Snapshot A snapshot of a drive created at a specific time.
type StageDefinition ¶ added in v1.0.8
type StageDefinition struct { StageDefinitionID int `json:"stage_definition_id,omitempty" yaml:"id,omitempty"` UserIDOwner int `json:"user_id_owner,omitempty" yaml:"ownerID,omitempty"` UserIDAuthenticated int `json:"user_id_authenticated,omitempty" yaml:"userIDAuthenticated,omitempty"` StageDefinitionLabel string `json:"stage_definition_label,omitempty" yaml:"label,omitempty"` IconAssetDataURI string `json:"icon_asset_data_uri,omitempty" yaml:"iconAssetDataURI,omitempty"` StageDefinitionTitle string `json:"stage_definition_title,omitempty" yaml:"title,omitempty"` StageDefinitionDescription string `json:"stage_definition_description,omitempty" yaml:"description,omitempty"` StageDefinitionType string `json:"stage_definition_type,omitempty" yaml:"type,omitempty"` StageDefinitionVariablesNamesRequired []string `json:"stage_definition_variable_names_required,omitempty" yaml:"variableNames,omitempty"` StageDefinition interface{} `json:"stage_definition,omitempty" yaml:"stageDefinition,omitempty"` StageDefinitionCreatedTimestamp string `json:"stage_definition_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` StageDefinitionUpdatedTimestamp string `json:"stage_definition_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` }
StageDefinition contains a JavaScript file, HTTP request url and options, an AnsibleBundle or an API call template.
func (StageDefinition) CreateOrUpdate ¶ added in v1.6.0
func (s StageDefinition) CreateOrUpdate(c interface{}) error
CreateOrUpdate implements interface Applier
func (StageDefinition) Delete ¶ added in v1.6.0
func (s StageDefinition) Delete(c interface{}) error
Delete implements interface Applier
func (*StageDefinition) UnmarshalJSON ¶ added in v1.0.8
func (s *StageDefinition) UnmarshalJSON(b []byte) error
UnmarshalJSON custom json marshaling
func (StageDefinition) Validate ¶ added in v1.6.0
func (s StageDefinition) Validate() error
Validate implements interface Applier
type SubnetPool ¶ added in v1.4.3
type SubnetPool struct { SubnetPoolID int `json:"subnet_pool_id,omitempty" yaml:"id,omitempty"` DatacenterName string `json:"datacenter_name,omitempty" yaml:"datacenter,omitempty"` NetworkEquipmentID int `json:"network_equipment_id,omitempty" yaml:"networkEquipmentID,omitempty"` UserID int `json:"user_id,omitempty" yaml:"user,omitempty"` SubnetPoolPrefixHumanReadable string `json:"subnet_pool_prefix_human_readable,omitempty" yaml:"prefix,omitempty"` SubnetPoolPrefixHex string `json:"subnet_pool_prefix_hex,omitempty" yaml:"prefixHex,omitempty"` SubnetPoolNetmaskHumanReadable string `json:"subnet_pool_netmask_human_readable,omitempty" yaml:"netmask,omitempty"` SubnetPoolNetmaskHex string `json:"subnet_pool_netmask_hex,omitempty" yaml:"netmaskHex,omitempty"` SubnetPoolPrefixSize int `json:"subnet_pool_prefix_size,omitempty" yaml:"size,omitempty"` SubnetPoolType string `json:"subnet_pool_type,omitempty" yaml:"type,omitempty"` SubnetPoolRoutable bool `json:"subnet_pool_routable,omitempty" yaml:"routable,omitempty"` SubnetPoolDestination string `json:"subnet_pool_destination,omitempty" yaml:"destination,omitempty"` SubnetPoolUtilizationCachedJSON string `json:"subnet_pool_utilization_cached_json,omitempty" yaml:"currentUtilizationJSON,omitempty"` SubnetPoolUtilizationCachedUpdatedTimestamp string `json:"subnet_pool_cached_updated_timestamp,omitempty" yaml:"currentUtilizationLastUpdated,omitempty"` SubnetPoolIsOnlyForManualAllocation bool `json:"subnet_pool_is_only_for_manual_allocation,omitempty" yaml:"manualAllocationOnly,omitempty"` }
SubnetPool represents a pool of subnets
func (SubnetPool) CreateOrUpdate ¶ added in v1.6.0
func (s SubnetPool) CreateOrUpdate(c interface{}) error
CreateOrUpdate implements interface Applier
func (SubnetPool) Delete ¶ added in v1.6.0
func (s SubnetPool) Delete(c interface{}) error
Delete implements interface Applier
func (SubnetPool) Validate ¶ added in v1.6.0
func (s SubnetPool) Validate() error
Validate implements interface Applier
type SubnetPoolUtilization ¶ added in v1.4.3
type SubnetPoolUtilization struct { PrefixCountFree map[string]int `json:"prefix_count_free,omitempty" yaml:"availableSubnets,omitempty"` PrefixCountAllocated map[string]int `json:"prefix_count_allocated,omitempty" yaml:"allocatedSubnets,omitempty"` IPAddressesUsableCountFree string `json:"ip_addresses_usable_count_free,omitempty" yaml:"availableUsableIps,omitempty"` IPAddressesUsableCountAllocated string `json:"ip_addresses_usable_count_allocated,omitempty" yaml:"allocatedUsableIps,omitempty"` IPAddressesUsableFreePercentOptimistic string `json:"ip_addresses_usable_free_percent_optimistic,omitempty" yaml:"availablePercentage,omitempty"` }
SubnetPoolUtilization describes the current utilization of the subnet
func (*SubnetPoolUtilization) UnmarshalJSON ¶ added in v1.4.3
func (s *SubnetPoolUtilization) UnmarshalJSON(data []byte) error
UnmarshalJSON to handle the shity [] to {} and 0 and "123123" cases
type SwitchDevice ¶ added in v1.4.0
type SwitchDevice struct { NetworkEquipmentID int `json:"network_equipment_id,omitempty" yaml:"id,omitempty"` NetworkEquipmentIdentifierString string `json:"network_equipment_identifier_string,omitempty" yaml:"identifierString,omitempty"` DatacenterName string `json:"datacenter_name,omitempty" yaml:"datacenter,omitempty"` NetworkEquipmentProvisionerType string `json:"network_equipment_provisioner_type,omitempty" yaml:"provisionerType,omitempty"` NetworkEquipmentProvisionerPosition string `json:"network_equipment_position,omitempty" yaml:"provisionerPosition,omitempty"` NetworkEquipmentDriver string `json:"network_equipment_driver,omitempty" yaml:"driver,omitempty"` NetworkEquipmentManagementUsername string `json:"network_equipment_management_username,omitempty" yaml:"managementUsername,omitempty"` NetworkEquipmentManagementPassword string `json:"network_equipment_management_password,omitempty" yaml:"managementPassword,omitempty"` NetworkEquipmentManagementAddress string `json:"network_equipment_management_address,omitempty" yaml:"managementAddress,omitempty"` NetworkEquipmentManagementPort int `json:"network_equipment_management_port,omitempty" yaml:"managementPort,omitempty"` NetworkEquipmentManagementProtocol string `json:"network_equipment_management_protocol,omitempty" yaml:"managementProtocol,omitempty"` NetworkEquipmentManagementAddressMask string `json:"network_equipment_management_address_mask,omitempty" yaml:"managementAddressMask,omitempty"` NetworkEquipmentManagementAddressGateway string `json:"network_equipment_management_address_gateway,omitempty" yaml:"managementAddressGateway,omitempty"` NetworkEquipmentManagementMACAddress string `json:"network_equipment_management_mac_address,omitempty" yaml:"managementMACAddress,omitempty"` NetworkEquipmentPrimaryWANIPv4SubnetPool string `json:"network_equipment_primary_wan_ipv4_subnet_pool,omitempty" yaml:"primaryWANIPv4SubnetPool,omitempty"` NetworkEquipmentPrimaryWANIPv4SubnetPrefixSize int `json:"network_equipment_primary_wan_ipv4_subnet_prefix_size,omitempty" yaml:"primaryWANIPv4SubnetPrefixSize,omitempty"` NetworkEquipmentPrimaryWANIPv6SubnetPool string `json:"network_equipment_primary_wan_ipv6_subnet_pool,omitempty" yaml:"primaryWANIPv6SubnetPool,omitempty"` NetworkEquipmentPrimaryWANIPv6SubnetPoolID int `json:"network_equipment_primary_wan_ipv6_subnet_pool_id,omitempty" yaml:"primaryWANIPv6SubnetPoolID,omitempty"` NetworkEquipmentPrimaryWANIPv6SubnetCIDR string `json:"network_equipment_primary_wan_ipv6_subnet_cidr,omitempty" yaml:"primaryWANIPv6SubnetCIDR,omitempty"` NetworkEquipmentPrimaryWANIPv6SubnetPrefixSize int `json:"network_equipment_primary_wan_ipv6_subnet_prefix_size,omitempty" yaml:"primaryWANIPv6SubnetPrefixSize,omitempty"` NetworkEquipmentPrimarySANSubnetPool string `json:"network_equipment_primary_san_subnet_pool,omitempty" yaml:"primarySANSubnetPool,omitempty"` NetworkEquipmentPrimarySANSubnetPrefixSize int `json:"network_equipment_primary_san_subnet_prefix_size,omitempty" yaml:"primarySANSubnetPrefixSize,omitempty"` NetworkEquipmentQuarantineSubnetStart string `json:"network_equipment_quarantine_subnet_start,omitempty" yaml:"quarantineSubnetStart,omitempty"` NetworkEquipmentQuarantineSubnetEnd string `json:"network_equipment_quarantine_subnet_end,omitempty" yaml:"quarantineSubnetEnd,omitempty"` NetworkEquipmentQuarantineSubnetPrefixSize int `json:"network_equipment_quarantine_subnet_prefix_size,omitempty" yaml:"quarantineSubnetPrefixSize,omitempty"` NetworkEquipmentQuarantineSubnetGateway string `json:"network_equipment_quarantine_subnet_gateway,omitempty" yaml:"quarantineSubnetGateway,omitempty"` NetworkEquipmentDescription string `json:"network_equipment_description,omitempty" yaml:"description,omitempty"` NetworkEquipmentCountry string `json:"network_equipment_country,omitempty" yaml:"country,omitempty"` NetworkEquipmentCity string `json:"network_equipment_city,omitempty" yaml:"city,omitempty"` NetworkEquipmentDatacenter string `json:"network_equipment_datacenter,omitempty" yaml:"netDatacenter,omitempty"` NetworkEquipmentDatacenterRoom string `json:"network_equipment_datacenter_room,omitempty" yaml:"datacenterRoom,omitempty"` NetworkEquipmentDatacenterRack string `json:"network_equipment_datacenter_rack,omitempty" yaml:"datacenterRack,omitempty"` NetworkEquipmentRackPositionUpperUnit int `json:"network_equipment_rack_position_upper_unit,omitempty" yaml:"rackPositionUpperUnit,omitempty"` NetworkEquipmentRackPositionLowerUnit int `json:"network_equipment_rack_position_lower_unit,omitempty" yaml:"rackPositionLowerUnit,omitempty"` NetworkEquipmentSerialNumber string `json:"network_equipment_serial_number,omitempty" yaml:"serialNumber,omitempty"` ChassisRackID int `json:"chassis_rack_id,omitempty" yaml:"chassisRackID,omitempty"` NetworkEquipmentTORLinkedID int `json:"network_equipment_tor_linked_id,omitempty" yaml:"TORLinkedID,omitempty"` NetworkEquipmentTags []string `json:"network_equipment_tags,omitempty" yaml:"tags,omitempty"` NetworkEquipmentRequiresOSInstall bool `json:"network_equipment_requires_os_install" yaml:"requiresOSInstall"` VolumeTemplateID int `json:"volume_template_id,omitempty" yaml:"volumeTemplateID,omitempty"` }
SwitchDevice Represents a switch installed in a datacenter.
func (SwitchDevice) CreateOrUpdate ¶ added in v1.6.0
func (s SwitchDevice) CreateOrUpdate(c interface{}) error
CreateOrUpdate implements interface Applier
func (SwitchDevice) Delete ¶ added in v1.6.0
func (s SwitchDevice) Delete(c interface{}) error
Delete implements interface Applier
func (*SwitchDevice) UnmarshalJSON ¶ added in v1.4.4
func (s *SwitchDevice) UnmarshalJSON(data []byte) error
UnmarshalJSON to handle the shitty boolean being returned as 0 and 1 and true and false in different environments
func (SwitchDevice) Validate ¶ added in v1.6.0
func (s SwitchDevice) Validate() error
Validate implements interface Applier
type User ¶ added in v1.0.4
type User struct { UserID int `json:"user_id,omitempty"` UserDisplayName string `json:"user_display_name,omitempty"` UserEmail string `json:"user_email,omitempty"` }
User describes user account specifications.
type Variable ¶ added in v1.0.4
type Variable struct { VariableID int `json:"variable_id,omitempty" yaml:"id,omitempty"` UserIDOwner int `json:"user_id_owner,omitempty" yaml:"ownerID,omitempty"` UserIDAuthenticated int `json:"user_id_authenticated,omitempty" yaml:"userIDAuthenticated,omitempty"` VariableName string `json:"variable_name,omitempty" yaml:"name,omitempty"` VariableUsage string `json:"variable_usage,omitempty" yaml:"usage,omitempty"` VariableJSON string `json:"variable_json,omitempty" yaml:"json,omitempty"` VariableCreatedTimestamp string `json:"variable_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` VariableUpdatedTimestamp string `json:"variable_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` }
Variable struct defines a Variable type
func (Variable) CreateOrUpdate ¶ added in v1.6.0
CreateOrUpdate implements interface Applier
type VolumeTemplate ¶
type VolumeTemplate struct { VolumeTemplateID int `json:"volume_template_id,omitempty"` VolumeTemplateLabel string `json:"volume_template_label,omitempty"` VolumeTemplateSizeMBytes int `json:"volume_template_size_mbytes,omitempty"` VolumeTemplateDisplayName string `json:"volume_template_display_name,omitempty"` VolumeTemplateDescription string `json:"volume_template_description,omitempty"` VolumeTemplateLocalDiskSupported bool `json:"volume_template_local_supported,omitempty"` VolumeTemplateBootMethodsSupported string `json:"volume_template_boot_methods_supported,omitempty"` VolumeTemplateBootType string `json:"volume_template_boot_type,omitempty"` VolumeTemplateDeprecationStatus string `json:"volume_template_deprecation_status,omitempty"` VolumeTemplateRepoURL string `json:"volume_template_repo_url,omitempty"` VolumeTemplateOperatingSystem OperatingSystem `json:"volume_template_operating_system,omitempty"` VolumeTemplateTags []string `json:"volume_template_tags,omitempty"` VolumeTemplateOsBootstrapFunctionName string `json:"volume_template_os_bootstrap_function_name,omitempty"` }
VolumeTemplate describes an OS template
type WebFetchAAPIOptions ¶ added in v1.0.8
type WebFetchAAPIOptions struct { Method string `json:"method,omitempty"` Redirect string `json:"redirect,omitempty"` Follow int `json:"follow,omitempty"` Compress bool `json:"compress,omitempty"` Timeout int `json:"timeout,omitempty"` Size int `json:"size,omitempty"` Headers WebFetchAPIRequestHeaders `json:"headers,omitempty"` Body string `json:"body,omitempty"` BodyBufferBase64 string `json:"bodyBufferBase64,omitempty"` }
WebFetchAAPIOptions represents node-fetch options which is follows the Web API Fetch specification. See https://github.com/node-fetch/node-fetch
type WebFetchAPIRequestHeaders ¶ added in v1.0.8
type WebFetchAPIRequestHeaders struct { Accept string `json:"Accept,omitempty"` UserAgent string `json:"User-Agent,omitempty"` ContentType string `json:"Content-Type,omitempty"` Cookie string `json:"Cookie,omitempty"` Authorization string `json:"Authorization,omitempty"` ProxyAuthorization string `json:"Proxy-Authorization,omitempty"` ContentMD5 string `json:"Content-MD5,omitempty"` }
WebFetchAPIRequestHeaders HTTP request headers. null means undefined (the default for most) so the header will not be included with the request.
type Workflow ¶ added in v1.1.4
type Workflow struct { WorkflowID int `json:"workflow_id,omitempty" yaml:"id,omitempty"` UserIDOwner int `json:"user_id_owner,omitempty" yaml:"ownerID,omitempty"` UserIDAuthenticated int `json:"user_id_authenticated,omitempty" yaml:"userIDAuthenticated,omitempty"` WorkflowLabel string `json:"workflow_label,omitempty" yaml:"label,omitempty"` WorkflowUsage string `json:"workflow_usage,omitempty" yaml:"usage,omitempty"` WorkflowTitle string `json:"workflow_title,omitempty" yaml:"title,omitempty"` WorkflowDescription string `json:"workflow_description,omitempty" yaml:"description,omitempty"` WorkflowIsDeprecated bool `json:"workflow_is_deprecated,omitempty" yaml:"isDeprecated,omitempty"` IconAssetDataURI string `json:"icon_asset_data_uri,omitempty" yaml:"assetDataURI,omitempty"` WorkflowCreatedTimestamp string `json:"workflow_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` WorkflowUpdatedTimestamp string `json:"workflow_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` }
Workflow struct defines a server type
func (Workflow) CreateOrUpdate ¶ added in v1.6.0
CreateOrUpdate implements interface Applier
type WorkflowReference ¶ added in v1.1.4
type WorkflowReference struct { WorkflowID int `json:"workflow_id,omitempty"` Type string `json:"type,omitempty"` }
WorkflowReference points to a Workflow object via its workflow_id. To be used as a stage definition.
type WorkflowStageAssociation ¶ added in v1.0.9
type WorkflowStageAssociation struct { InfrastructureDeployCustomStageID int `json:"infrastructure_deploy_custom_stage_id,omitempty"` InfrastructureID int `json:"infrastructure_id,omitempty"` StageDefinitionID int `json:"stage_definition_id,omitempty"` InfrastructureDeployCustomStageType string `json:"infrastructure_deploy_custom_stage_type,omitempty"` InfrastructureDeployCustomStageRunLevel int `json:"infrastructure_deploy_custom_stage_run_level,omitempty"` InfrastructureDeployCustomStageExecOutputJSON string `json:"infrastructure_deploy_custom_stage_exec_output_json,omitempty"` }
WorkflowStageAssociation associations
type WorkflowStageDefinitionReference ¶ added in v1.1.4
type WorkflowStageDefinitionReference struct { WorkflowStageID int `json:"workflow_stage_id,omitempty"` WorkflowID int `json:"workflow_id,omitempty"` StageDefinitionID int `json:"stage_definition_id,omitempty"` WorkflowStageRunLevel int `json:"workflow_stage_run_level,omitempty"` WorkflowStageExecOutputJSON int `json:"workflow_stage_exec_output_json,omitempty"` }
WorkflowStageDefinitionReference defines where in a workflow a stage definition resides
Source Files ¶
- applier.go
- datacenter.go
- drive.go
- drive_array.go
- drive_array_exports.go
- drive_snapshot.go
- id.go
- infrastructure.go
- infrastructure_exports.go
- instance.go
- instance_array.go
- instance_array_exports.go
- instance_exports.go
- metalcloud_client.go
- network.go
- network_exports.go
- os_asset.go
- os_template.go
- secret.go
- server.go
- server_type.go
- server_type_exports.go
- shared_drive.go
- shared_drive_exports.go
- stage_definition.go
- subnet.go
- switch_device.go
- user.go
- variable.go
- volume_template.go
- volume_template_exports.go
- workflow.go