Documentation ¶
Index ¶
- Constants
- func GetObjectByKind(name string) (reflect.Value, error)
- type AFC
- type AFCSearchResult
- type AnsibleBundle
- type AppInstanceDetails
- type AppKubernetes
- type AppKubernetesWrapper
- type AppVMWareVsphere
- type AppVMWareVsphereWrapper
- type Applier
- type Client
- func (c *Client) AFCDelete(afcID int) error
- func (c *Client) AFCGet(afcID int) (*AFC, error)
- func (c *Client) AFCMarkForDeath(afcID int, typeOfMark string) error
- func (c *Client) AFCRetryCall(afcID int) error
- func (c *Client) AFCSearch(filter string, page_start int, page_end int) (*[]AFCSearchResult, error)
- func (c *Client) AFCSkip(afcID int) error
- func (c *Client) ClusterAppKubernetes(clusterID int, decryptCredentials bool) (*AppKubernetes, error)
- func (c *Client) ClusterAppKubernetesByLabel(clusterLabel string, decryptCredentials bool) (*AppKubernetes, error)
- func (c *Client) ClusterAppVMWareVSphere(clusterID int, decryptCredentials bool) (*AppVMWareVsphere, error)
- func (c *Client) ClusterAppVMWareVSphereByLabel(clusterLabel string, decryptCredentials bool) (*AppVMWareVsphere, error)
- func (c *Client) ClusterCreate(infrastructureID int, cluster Cluster) (*Cluster, error)
- func (c *Client) ClusterCreateByLabel(infrastructureLabel string, cluster Cluster) (*Cluster, error)
- func (c *Client) ClusterDelete(clusterID int) error
- func (c *Client) ClusterDeleteByLabel(clusterLabel string) error
- func (c *Client) ClusterEdit(clusterId int, clusterOperation ClusterOperation) (*Cluster, error)
- func (c *Client) ClusterEditByLabel(clusterLabel string, clusterOperation ClusterOperation) (*Cluster, error)
- func (c *Client) ClusterGet(clusterID int) (*Cluster, error)
- func (c *Client) ClusterGetByLabel(clusterLabel string) (*Cluster, error)
- func (c *Client) ClusterInstanceArrays(clusterId int) (*map[string]InstanceArray, error)
- func (c *Client) ClusterInstanceArraysByLabel(clusterLabel string) (*map[string]InstanceArray, error)
- func (c *Client) Clusters(infrastructureId int) (*map[string]Cluster, error)
- func (c *Client) ClustersByLabel(infrastructureLabel string) (*map[string]Cluster, error)
- func (c *Client) CustomISOBootIntoServer(customISOID int, serverID int) (int, error)
- func (c *Client) CustomISOCreate(customISO CustomISO) (*CustomISO, error)
- func (c *Client) CustomISODelete(customISOID int) error
- func (c *Client) CustomISOGet(customISOID int) (*CustomISO, error)
- func (c *Client) CustomISOUpdate(customISOID int, customISO CustomISO) (*CustomISO, error)
- func (c *Client) CustomISOs(userID int) (*map[string]CustomISO, error)
- 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) DatacenterDelete(datacenterName string) 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) ExternalConnectionCreate(externalConnection ExternalConnection) (*ExternalConnection, error)
- func (c *Client) ExternalConnectionDelete(externalConnectionID int) error
- func (c *Client) ExternalConnectionDeleteByLabel(externalConnectionLabel string) error
- func (c *Client) ExternalConnectionEdit(externalConnectionID int, externalConnection ExternalConnection) (*ExternalConnection, error)
- func (c *Client) ExternalConnectionEditByLabel(externalConnectionLabel string, externalConnection ExternalConnection) (*ExternalConnection, error)
- func (c *Client) ExternalConnectionGet(externalConnectionID int) (*ExternalConnection, error)
- func (c *Client) ExternalConnectionGetByLabel(externalConnectionLabel string) (*ExternalConnection, error)
- func (c *Client) ExternalConnections(datacenterName string) (*map[int]ExternalConnection, 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) InfrastructureDeployCustomStageDelete(nInfrastructureCustomDeployStageID int) error
- func (c *Client) InfrastructureDeployCustomStages(infraID int, stageDefinitionType string) (*[]WorkflowStageAssociation, error)
- func (c *Client) InfrastructureDeployWithOptions(infrastructureID int, shutdownOptions ShutdownOptions, ...) error
- func (c *Client) InfrastructureDeployWithOptionsByLabel(infrastructureLabel string, shutdownOptions ShutdownOptions, ...) 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) InfrastructureSearch(filter string) (*[]InfrastructuresSearchResult, 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) InstanceArrayNetworkProfileClear(instanceArrayID int, networkID int) error
- func (c *Client) InstanceArrayNetworkProfileSet(instanceArrayID int, networkID int, networkProfileID int) (*map[int]int, 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) InstanceEdit(instanceID int, instanceOperation InstanceOperation) (*Instance, error)
- func (c *Client) InstanceEditByLabel(instanceLabel string, instanceOperation InstanceOperation) (*Instance, 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) InstanceServerReplace(instanceID int, serverID int) (int, 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) NetworkProfileCreate(datacenterName string, networkProfile NetworkProfile) (*NetworkProfile, error)
- func (c *Client) NetworkProfileDelete(networkProfileID int) error
- func (c *Client) NetworkProfileDeleteByLabel(networkProfileLabel string) error
- func (c *Client) NetworkProfileGet(networkProfileID int) (*NetworkProfile, error)
- func (c *Client) NetworkProfileGetByLabel(networkProfileLabel string) (*NetworkProfile, error)
- func (c *Client) NetworkProfileListByInstanceArray(instanceArrayID int) (*map[int]int, error)
- func (c *Client) NetworkProfileUpdate(networkProfileID int, networkProfile NetworkProfile) (*NetworkProfile, error)
- func (c *Client) NetworkProfileUpdateByLabel(networkProfileLabel string, networkProfile NetworkProfile) (*NetworkProfile, error)
- func (c *Client) NetworkProfiles(datacenterName string) (*map[int]NetworkProfile, 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) OSAssetGetStoredContent(osAssetID int) (string, error)
- func (c *Client) OSAssetMakePrivate(osAssetID int, userID int) (*OSAsset, error)
- func (c *Client) OSAssetMakePublic(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) OSTemplatesNetwork() (*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) ServerCreateAndRegister(serverCreateAndRegister ServerCreateAndRegister) (int, error)
- func (c *Client) ServerDecomission(serverID int, skipIPMI bool) error
- func (c *Client) ServerDefaultCredentials(datacenter_name string, decryptPasswd bool) (*[]ServerDefaultCredentials, error)
- func (c *Client) ServerDefaultCredentialsAdd(credentials []ServerDefaultCredentials) error
- func (c *Client) ServerDefaultCredentialsRemove(default_credentials_id []int) 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, serverUpdateInBMC bool) (*Server, error)
- func (c *Client) ServerEditInventory(serverID int, serverEditInventory ServerEditInventory) (*Server, error)
- func (c *Client) ServerEditProperty(serverID int, serverPropertyToEdit string, serverPropertyValue interface{}) error
- func (c *Client) ServerEditRack(serverID int, serverEditRack ServerEditRack) (*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) ServerFirmwarePolicyAddRule(serverFirmwarePolicyID int, serverRule *ServerFirmwareUpgradePolicyRule) (*ServerFirmwareUpgradePolicy, error)
- func (c *Client) ServerFirmwarePolicyDeleteRule(serverFirmwarePolicyID int, serverRule *ServerFirmwareUpgradePolicyRule) error
- func (c *Client) ServerFirmwarePolicyGet(serverFirmwarePolicyID int) (*ServerFirmwareUpgradePolicy, error)
- func (c *Client) ServerFirmwareUgradePolicyInstanceArraySet(serverFirmwarePolicyID int, instanceArrayList []int) error
- func (c *Client) ServerFirmwareUpgrade(serverID int) error
- func (c *Client) ServerFirmwareUpgradePolicyActionSet(serverFirmwarePolicyID int, serverFirmwarePolicyAction string) error
- func (c *Client) ServerFirmwareUpgradePolicyCreate(serverFirmwarePolicy *ServerFirmwareUpgradePolicy) (*ServerFirmwareUpgradePolicy, error)
- func (c *Client) ServerFirmwareUpgradePolicyDelete(serverFirmwarePolicyID int) error
- func (c *Client) ServerFirmwareUpgradePolicyLabelSet(serverFirmwarePolicyID int, serverFirmwarePolicyLabel string) 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) ServerReregister(serverID int, bSkipIPMI bool, bUseBDKAgent bool) error
- func (c *Client) ServerStatusUpdate(serverID int, status 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) ServerUnmanagedImport(server ServerCreateUnmanaged) (*Server, error)
- func (c *Client) ServerUnmanagedImportBatch(servers []ServerCreateUnmanaged) (*map[string]Server, error)
- func (c *Client) ServersSearch(filter string) (*[]ServerSearchResult, error)
- func (c *Client) SharedDriveAttachInstanceArray(sharedDriveID int, instanceArrayID int) (*SharedDrive, 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) SharedDriveDetachInstanceArray(sharedDriveID int, instanceArrayID int) (*SharedDrive, 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) SharedDrives(infrastructureID int) (*map[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) StoragePoolGet(serverID int, decryptPasswd bool) (*StoragePool, error)
- func (c *Client) StoragePoolSearch(filter string) (*[]StoragePoolSearchResult, error)
- func (c *Client) SubnetCreate(subnet Subnet) (*Subnet, error)
- func (c *Client) SubnetDelete(subnetID int) error
- func (c *Client) SubnetGet(subnetID int) (*Subnet, error)
- func (c *Client) SubnetOOBCreate(subnetOOB SubnetOOB) (*SubnetOOB, error)
- func (c *Client) SubnetOOBDelete(subnetOOBID int) error
- func (c *Client) SubnetOOBDeleteByLabel(subnetOOBLabel string) error
- func (c *Client) SubnetOOBGet(subnetOOBID int) (*SubnetOOB, error)
- func (c *Client) SubnetOOBGetByLabel(subnetOOBLabel string) (*SubnetOOB, error)
- func (c *Client) SubnetOOBSearch(filter string) (*[]SubnetOOB, error)
- func (c *Client) SubnetPoolCreate(subnetPool SubnetPool) (*SubnetPool, error)
- func (c *Client) SubnetPoolCreateOrUpdate(subnetPool SubnetPool) (*SubnetPool, error)
- func (c *Client) SubnetPoolDelete(subnetPoolID int) error
- func (c *Client) SubnetPoolDeleteByLabel(subnetPoolLabel string) error
- func (c *Client) SubnetPoolGet(subnetPoolID int) (*SubnetPool, error)
- func (c *Client) SubnetPoolGetByLabel(subnetPoolLabel string) (*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) SwitchDeviceControllerCreate(switchDeviceController SwitchDeviceController) (*SwitchDeviceController, error)
- func (c *Client) SwitchDeviceControllerDelete(networkEquipmentControllerID int) error
- func (c *Client) SwitchDeviceControllerGet(networkEquipmentControllerID int, decryptPasswd bool) (*SwitchDeviceController, error)
- func (c *Client) SwitchDeviceControllerGetByIdentifierString(networkEquipmentIdentifierString string, decryptPasswd bool) (*SwitchDeviceController, error)
- func (c *Client) SwitchDeviceControllerSwitches(networkEquipmentIdentifierString string) (map[int]SwitchDevice, error)
- func (c *Client) SwitchDeviceControllerSync(networkEquipmentControllerID int) (*map[int]SwitchDevice, error)
- func (c *Client) SwitchDeviceControllerUpdate(networkEquipmentControllerID int, networkEquipmentControllerData interface{}) (*SwitchDeviceController, error)
- func (c *Client) SwitchDeviceControllers(datacenter string) (*map[int]SwitchDeviceController, error)
- func (c *Client) SwitchDeviceCreate(switchDevice SwitchDevice, bOverwriteWithHostnameFromFetchedSwitch bool) (*SwitchDevice, error)
- func (c *Client) SwitchDeviceDefaults(datacenter string) (*[]SwitchDeviceDefaults, error)
- func (c *Client) SwitchDeviceDefaultsCreate(switchDeviceDefaultsArray []SwitchDeviceDefaults) error
- func (c *Client) SwitchDeviceDefaultsDelete(switchDeviceDefaultsIDs []int) 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) SwitchDeviceLinkCreate(networkEquipmentID1 int, networkEquipmentID2 int, ...) (*SwitchDeviceLink, error)
- func (c *Client) SwitchDeviceLinkDelete(networkEquipmentID1 int, networkEquipmentID2 int, linkType string) error
- func (c *Client) SwitchDeviceLinkGet(networkEquipmentID1 int, networkEquipmentID2 int, linkType string) (*SwitchDeviceLink, error)
- func (c *Client) SwitchDeviceLinks() (*map[int]SwitchDeviceLink, 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) SwitchInterfaceSearch(filter string) (*[]SwitchInterfaceSearchResult, 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) UserSearch(filter string) (*[]UsersSearchResult, 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, bootstrapFunctionName string) 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 ClientOptions
- type Cluster
- type ClusterOperation
- type Copy
- type CustomISO
- type Datacenter
- type DatacenterConfig
- type DeployOptions
- type DeployOptionsServerTypeMappingObject
- type Drive
- type DriveArray
- type DriveArrayOperation
- type DriveCredentials
- type DriveFileSystem
- type ExternalConnection
- 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 InfrastructuresSearchResult
- type Instance
- type InstanceArray
- type InstanceArrayInterface
- type InstanceArrayInterfaceOperation
- type InstanceArrayOperation
- type InstanceCredentials
- type InstanceInterface
- type InstanceInterfaceOperation
- type InstanceOperation
- type MetalCloudClient
- type Network
- type NetworkOperatingSystem
- type NetworkOperation
- type NetworkProfile
- type NetworkProfileSubnetPool
- type NetworkProfileVLAN
- type OSAsset
- type OSTemplate
- type OSTemplateCredentials
- type OSTemplateOSAssetData
- type OperatingSystem
- type Option82ToIPMapping
- 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 ServerCreateAndRegister
- type ServerCreateUnmanaged
- type ServerDefaultCredentials
- type ServerDisk
- type ServerEditInventory
- type ServerEditRack
- type ServerFirmwareUpgradePolicy
- type ServerFirmwareUpgradePolicyRule
- type ServerInterface
- type ServerInterfaceCreate
- type ServerNICDetails
- type ServerSearchResult
- type ServerType
- type ServerTypeMatch
- type ServerTypeMatches
- type SharedDrive
- type SharedDriveCredentials
- type SharedDriveOperation
- type ShutdownOptions
- type Snapshot
- type StageDefinition
- type StoragePool
- type StoragePoolSearchResult
- type Subnet
- type SubnetOOB
- type SubnetPool
- type SubnetPoolUtilization
- type SwitchDevice
- type SwitchDeviceController
- type SwitchDeviceDefaults
- type SwitchDeviceLink
- type SwitchInterfaceSearchResult
- type User
- type UsersSearchResult
- type Variable
- type VolumeTemplate
- type WebFetchAAPIOptions
- type WebFetchAPIRequestHeaders
- type WebProxy
- type Workflow
- type WorkflowReference
- type WorkflowStageAssociation
- type WorkflowStageDefinitionReference
Constants ¶
const ( CLUSTER_TYPE_VMWARE_VSPHERE string = "vmware_vsphere" CLUSTER_TYPE_KUBERNETES string = "kubernetes" )
const ( AuthMethodSignature string = "signature" AuthMethodBearer string = "bearer" AuthMethodOauth string = "oauth" )
Variables ¶
This section is empty.
Functions ¶
Types ¶
type AFC ¶
type AFC struct { AFCID int `json:"afc_id,omitempty" yaml:"AFCID,omitempty"` AFCType string `json:"afc_type,omitempty" yaml:"afcType,omitempty"` AFCResponseJSON string `json:"afc_response_json,omitempty" yaml:"AFCResponseJSON,omitempty"` AFCExceptionJSON string `json:"afc_exception_json,omitempty" yaml:"AFCExceptionJSON,omitempty"` InfrastructureID int `json:"infrastructure_id,omitempty" yaml:"infrastructureID,omitempty"` AFCIPAddressHumanReadable string `json:"afc_ip_address_human_readable,omitempty" yaml:"AFCIPAddressHumanReadable,omitempty"` AFCIsBlocked int `json:"afc_id_blocked,omitempty" yaml:"AFCIsBlocked,omitempty"` AFCIsBlockedBy int `json:"afc_id_blocked_by,omitempty" yaml:"AFCIsBlockedBy,omitempty"` AFCGroupID int `json:"afc_group_id,omitempty" yaml:"AFCGroupID,omitempty"` DatacenterName string `json:"datacenter_name,omitempty" yaml:"datacenterName,omitempty"` InstanceID int `json:"instance_id,omitempty" yaml:"instanceID,omitempty"` ServerID int `json:"server_id,omitempty" yaml:"serverID,omitempty"` AFCExecuteEngine string `json:"afc_execute_engine,omitempty" yaml:"AFCExecuteEngine,omitempty"` AFCCallCount int `json:"afc_call_count,omitempty" yaml:"AFCCallCount,omitempty"` AFCRetryMax int `json:"afc_retry_max,omitempty" yaml:"AFCRetryMax,omitempty"` AFCRetryCount int `json:"afc_retry_count,omitempty" yaml:"AFCRetryCount,omitempty"` AFCStartTimestamp string `json:"afc_start_timestamp,omitempty" yaml:"AFCStartTimestamp,omitempty"` AFCRetryMinSec int `json:"afc_retry_min_sec,omitempty" yaml:"AFCRetryMinSec,omitempty"` AFCDurationMs int `json:"afc_duration_milliseconds,omitempty" yaml:"AFCDurationMs,omitempty"` AFCUpdatedTimestamp string `json:"afc_updated_timestamp,omitempty" yaml:"AFCUpdatedTimestamp,omitempty"` AFCCreatedTimestamp string `json:"afc_created_timestamp,omitempty" yaml:"AFCCreatedTimestamp,omitempty"` AFCFunctionName string `json:"afc_function_name,omitempty" yaml:"AFCFunctionName,omitempty"` AFCParamsJSON string `json:"afc_params_json,omitempty" yaml:"AFCParamsJSON,omitempty"` AFCStatus string `json:"afc_status,omitempty" yaml:"AFCStatus,omitempty"` }
AFC Represents an AFC result
type AFCSearchResult ¶
type AFCSearchResult struct { AFCID int `json:"afc_id,omitempty" yaml:"AFCID,omitempty"` AFCType string `json:"afc_type,omitempty" yaml:"afcType,omitempty"` AFCResponseJSON string `json:"afc_response_json,omitempty" yaml:"AFCResponseJSON,omitempty"` AFCExceptionJSON string `json:"afc_exception_json,omitempty" yaml:"AFCExceptionJSON,omitempty"` InfrastructureID int `json:"infrastructure_id,omitempty" yaml:"infrastructureID,omitempty"` AFCIPAddressHumanReadable string `json:"afc_ip_address_human_readable,omitempty" yaml:"AFCIPAddressHumanReadable,omitempty"` AFCIsBlocked int `json:"afc_id_blocked,omitempty" yaml:"AFCIsBlocked,omitempty"` AFCIsBlockedBy int `json:"afc_id_blocked_by,omitempty" yaml:"AFCIsBlockedBy,omitempty"` AFCGroupID int `json:"afc_group_id,omitempty" yaml:"AFCGroupID,omitempty"` DatacenterName string `json:"datacenter_name,omitempty" yaml:"datacenterName,omitempty"` InstanceID int `json:"instance_id,omitempty" yaml:"instanceID,omitempty"` ServerID int `json:"server_id,omitempty" yaml:"serverID,omitempty"` AFCExecuteEngine string `json:"afc_execute_engine,omitempty" yaml:"AFCExecuteEngine,omitempty"` AFCCallCount int `json:"afc_call_count,omitempty" yaml:"AFCCallCount,omitempty"` AFCRetryMax int `json:"afc_retry_max,omitempty" yaml:"AFCRetryMax,omitempty"` AFCRetryCount int `json:"afc_retry_count,omitempty" yaml:"AFCRetryCount,omitempty"` AFCStartTimestamp string `json:"afc_start_timestamp,omitempty" yaml:"AFCStartTimestamp,omitempty"` AFCRetryMinSec int `json:"afc_retry_min_sec,omitempty" yaml:"AFCRetryMinSec,omitempty"` AFCDurationMs int `json:"afc_duration_milliseconds,omitempty" yaml:"AFCDurationMs,omitempty"` AFCUpdatedTimestamp string `json:"afc_updated_timestamp,omitempty" yaml:"AFCUpdatedTimestamp,omitempty"` AFCCreatedTimestamp string `json:"afc_created_timestamp,omitempty" yaml:"AFCCreatedTimestamp,omitempty"` AFCFunctionName string `json:"afc_function_name,omitempty" yaml:"AFCFunctionName,omitempty"` AFCParamsJSON string `json:"afc_params_json,omitempty" yaml:"AFCParamsJSON,omitempty"` AFCStatus string `json:"afc_status,omitempty" yaml:"AFCStatus,omitempty"` }
AFCSearchResult Represents an AFC search result
type AnsibleBundle ¶
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 AppInstanceDetails ¶
type AppInstanceDetails struct { InstanceID int `json:"instance_id,omitempty" yaml:"instanceId,omitempty"` InstanceLabel string `json:"instance_label,omitempty" yaml:"instanceLabel,omitempty"` InstanceHostname string `json:"instance_hostname,omitempty" yaml:"instanceHostname,omitempty"` InstanceClusterUrl string `json:"instance_cluster_url,omitempty" yaml:"instanceClusterUrl,omitempty"` InstanceHealth string `json:"instance_health,omitempty" yaml:"instanceHealth,omitempty"` Type string `json:"type,omitempty" yaml:"type,omitempty"` ESXIUsername string `json:"esxi_username,omitempty" yaml:"esxiUsername,omitempty"` ESXIPassword string `json:"esxi_password,omitempty" yaml:"esxiUsername,omitempty"` }
type AppKubernetes ¶
type AppKubernetes struct { KubernetesNodes map[string]AppInstanceDetails `json:"vsphere_worker,omitempty" yaml:"vsphereWorker,omitempty"` KubernetesMaster map[string]AppInstanceDetails `json:"vsphere_master,omitempty" yaml:"vsphereWorker,omitempty"` AdminUsername string `json:"admin_username,omitempty" yaml:"adminUsername,omitempty"` AdminPassword string `json:"admin_password,omitempty" yaml:"adminPassword,omitempty"` ClusterSoftwareAvailableVersions []string `json:"cluster_software_available_versions,omitempty" yaml:"clusterSoftwareAvailableVersions,omitempty"` ClusterSoftwareVersion string `json:"cluster_software_version,omitempty" yaml:"clusterSoftwareVersion,omitempty"` Type string `json:"type,omitempty" yaml:"type,omitempty"` }
type AppKubernetesWrapper ¶
type AppKubernetesWrapper struct { ClusterApp AppKubernetes `json:"cluster_app,omitempty" yaml:"clusterApp,omitempty"` Type string `json:"type,omitempty" yaml:"type,omitempty"` }
type AppVMWareVsphere ¶
type AppVMWareVsphere struct { VSphereWorker map[string]AppInstanceDetails `json:"vsphere_worker,omitempty" yaml:"vsphereWorker,omitempty"` VSphereMaster map[string]AppInstanceDetails `json:"vsphere_master,omitempty" yaml:"vsphereWorker,omitempty"` AdminUsername string `json:"admin_username,omitempty" yaml:"adminUsername,omitempty"` AdminPassword string `json:"admin_password,omitempty" yaml:"adminPassword,omitempty"` ClusterSoftwareAvailableVersions []string `json:"cluster_software_available_versions,omitempty" yaml:"clusterSoftwareAvailableVersions,omitempty"` ClusterSoftwareVersion string `json:"cluster_software_version,omitempty" yaml:"clusterSoftwareVersion,omitempty"` Type string `json:"type,omitempty" yaml:"type,omitempty"` InstanceVCenterServerManagement string `json:"instance_vcenter_server_management,omitempty" yaml:"instanceVcenterServerManagement,omitempty"` InstanceVcenterWebClient string `json:"instance_vcenter_web_client,omitempty" yaml:"instanceVcenterWebClient,omitempty"` VCSAUsername string `json:"vcsa_username,omitempty" yaml:"vcsaUsername,omitempty"` VCSAInitialPassword string `json:"vcsa_initial_password,omitempty" yaml:"vcsaUsername,omitempty"` }
type AppVMWareVsphereWrapper ¶
type AppVMWareVsphereWrapper struct { ClusterApp AppVMWareVsphere `json:"cluster_app,omitempty" yaml:"clusterApp,omitempty"` Type string `json:"type,omitempty" yaml:"type,omitempty"` }
type Applier ¶
type Applier interface { CreateOrUpdate(MetalCloudClient) error Delete(MetalCloudClient) error Validate() error }
Applier should create or update an object.
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client struct defines a metalcloud client
func GetMetalcloudClient ¶
func GetMetalcloudClientWithOptions ¶
func GetMetalcloudClientWithOptions(options ClientOptions) (*Client, error)
GetMetalcloudClient returns a metal cloud client
func (*Client) AFCMarkForDeath ¶
AFCMarkForDeath Tries to kill an AFC
func (*Client) AFCRetryCall ¶
AFCRetryCall Retries an AFC
func (*Client) ClusterAppKubernetes ¶
func (c *Client) ClusterAppKubernetes(clusterID int, decryptCredentials bool) (*AppKubernetes, error)
ClusterAppKubernetes
func (*Client) ClusterAppKubernetesByLabel ¶
func (c *Client) ClusterAppKubernetesByLabel(clusterLabel string, decryptCredentials bool) (*AppKubernetes, error)
ClusterAppKubernetesByLabel
func (*Client) ClusterAppVMWareVSphere ¶
func (c *Client) ClusterAppVMWareVSphere(clusterID int, decryptCredentials bool) (*AppVMWareVsphere, error)
ClusterAppVMWareVSphere
func (*Client) ClusterAppVMWareVSphereByLabel ¶
func (c *Client) ClusterAppVMWareVSphereByLabel(clusterLabel string, decryptCredentials bool) (*AppVMWareVsphere, error)
ClusterAppVMWareVSphereByLabel
func (*Client) ClusterCreate ¶
ClusterCreate
func (*Client) ClusterCreateByLabel ¶
func (c *Client) ClusterCreateByLabel(infrastructureLabel string, cluster Cluster) (*Cluster, error)
ClusterCreateByLabel
func (*Client) ClusterDelete ¶
ClusterDelete array. Requires deploy.
func (*Client) ClusterDeleteByLabel ¶
ClusterDeleteByLabel array. Requires deploy.
func (*Client) ClusterEdit ¶
func (c *Client) ClusterEdit(clusterId int, clusterOperation ClusterOperation) (*Cluster, error)
ClusterEdit array. Requires deploy.
func (*Client) ClusterEditByLabel ¶
func (c *Client) ClusterEditByLabel(clusterLabel string, clusterOperation ClusterOperation) (*Cluster, error)
ClusterEditByLabel array. Requires deploy.
func (*Client) ClusterGet ¶
ClusterGet (app) with specified id
func (*Client) ClusterGetByLabel ¶
ClusterGetByLabel (app) with specified id
func (*Client) ClusterInstanceArrays ¶
func (c *Client) ClusterInstanceArrays(clusterId int) (*map[string]InstanceArray, error)
ClusterInstanceArrays
func (*Client) ClusterInstanceArraysByLabel ¶
func (c *Client) ClusterInstanceArraysByLabel(clusterLabel string) (*map[string]InstanceArray, error)
ClusterInstanceArraysByLabel
func (*Client) ClustersByLabel ¶
ClustersByLabel
func (*Client) CustomISOBootIntoServer ¶
CustomISOBootIntoServer boots a server with an iso. Returns an AFC group id
func (*Client) CustomISOCreate ¶
CustomISOCreate creates a custom ISO record
func (*Client) CustomISODelete ¶
CustomISODelete deletes a CustomISO with specified id
func (*Client) CustomISOGet ¶
CustomISOCreate creates a custom ISO record
func (*Client) CustomISOUpdate ¶
CustomISODelete deletes a CustomISO with specified id
func (*Client) CustomISOs ¶
CustomISOs returns custom ISOs for user
func (*Client) DatacenterAgentsConfigJSONDownloadURL ¶
func (c *Client) DatacenterAgentsConfigJSONDownloadURL(datacenterName string, decrypt bool) (string, error)
DatacenterAgentsConfigJSONDownloadURL returns the agent url (and automatically decrypts it)
func (*Client) DatacenterConfigGet ¶
func (c *Client) DatacenterConfigGet(datacenterName string) (*DatacenterConfig, error)
DatacenterConfigGet returns details of a specific datacenter
func (*Client) DatacenterConfigUpdate ¶
func (c *Client) DatacenterConfigUpdate(datacenterName string, datacenterConfig DatacenterConfig) error
DatacenterConfigUpdate Updates configuration information for a specified Datacenter.
func (*Client) DatacenterCreate ¶
func (c *Client) DatacenterCreate(datacenter Datacenter, datacenterConfig DatacenterConfig) (*Datacenter, error)
DatacenterCreate creates a new Datacenter
func (*Client) DatacenterDelete ¶ added in v3.0.2
DatacenterDelete deletes storage pools, subnet pools, and other resources then marks the datacenter as deleted.
func (*Client) DatacenterGet ¶
func (c *Client) DatacenterGet(datacenterName string) (*Datacenter, error)
DatacenterGet returns details of a specific datacenter
func (*Client) DatacenterGetForUserByEmail ¶
func (c *Client) DatacenterGetForUserByEmail(datacenterName string, userID string) (*Datacenter, error)
DatacenterGetForUserByEmail returns details of a specific datacenter
func (*Client) DatacenterGetForUserByID ¶
func (c *Client) DatacenterGetForUserByID(datacenterName string, userID int) (*Datacenter, error)
DatacenterGetForUserByID returns details of a specific datacenter
func (*Client) Datacenters ¶
func (c *Client) Datacenters(onlyActive bool) (*map[string]Datacenter, error)
Datacenters returns datacenters for all users
func (*Client) DatacentersByUserEmail ¶
func (c *Client) DatacentersByUserEmail(userEmail string, onlyActive bool) (*map[string]Datacenter, error)
DatacentersByUserEmail returns datacenters by email
func (*Client) DatacentersByUserID ¶
DatacentersByUserID returns datacenters for specific user
func (*Client) DriveArrayCreate ¶
func (c *Client) DriveArrayCreate(infrastructureID int, driveArray DriveArray) (*DriveArray, error)
DriveArrayCreate array. Requires deploy.
func (*Client) DriveArrayCreateByLabel ¶
func (c *Client) DriveArrayCreateByLabel(infrastructureLabel string, driveArray DriveArray) (*DriveArray, error)
DriveArrayCreateByLabel array. Requires deploy.
func (*Client) DriveArrayDelete ¶
DriveArrayDelete
func (*Client) DriveArrayDeleteByLabel ¶
DriveArrayDeleteByLabel
func (*Client) DriveArrayDrives ¶
DriveArrayDrives
func (*Client) DriveArrayDrivesByLabel ¶
DriveArrayDrivesByLabel
func (*Client) DriveArrayEdit ¶
func (c *Client) DriveArrayEdit(driveArrayID int, driveArrayOperation DriveArrayOperation) (*DriveArray, error)
DriveArrayEdit array. Requires deploy.
func (*Client) DriveArrayEditByLabel ¶
func (c *Client) DriveArrayEditByLabel(driveArrayLabel string, driveArrayOperation DriveArrayOperation) (*DriveArray, error)
DriveArrayEditByLabel 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 ¶
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 ¶
func (c *Client) DriveArraysByLabel(infrastructureLabel string) (*map[string]DriveArray, error)
DriveArraysByLabel retrieves the list of drives arrays of an infrastructure
func (*Client) DriveSnapshotCreate ¶
DriveSnapshotCreate creates a drive snapshot
func (*Client) DriveSnapshotDelete ¶
DriveSnapshotDelete creates a drive snapshot
func (*Client) DriveSnapshotGet ¶
DriveSnapshotGet gets a drive snapshot
func (*Client) DriveSnapshotRollback ¶
DriveSnapshotRollback rolls a Drive back to a specified DriveSnapshot. The specified snapshot is not destroyed and can be reused.
func (*Client) DriveSnapshots ¶
DriveSnapshots retrieves a list of all the snapshot objects
func (*Client) ExternalConnectionCreate ¶
func (c *Client) ExternalConnectionCreate(externalConnection ExternalConnection) (*ExternalConnection, error)
ExternalConnectionCreate creates an external connection.
func (*Client) ExternalConnectionDelete ¶
ExternalConnectionDelete connection.
func (*Client) ExternalConnectionDeleteByLabel ¶
ExternalConnectionDeleteByLabel connection.
func (*Client) ExternalConnectionEdit ¶
func (c *Client) ExternalConnectionEdit(externalConnectionID int, externalConnection ExternalConnection) (*ExternalConnection, error)
ExternalConnectionEdit connection.
func (*Client) ExternalConnectionEditByLabel ¶
func (c *Client) ExternalConnectionEditByLabel(externalConnectionLabel string, externalConnection ExternalConnection) (*ExternalConnection, error)
ExternalConnectionEditByLabel connection.
func (*Client) ExternalConnectionGet ¶
func (c *Client) ExternalConnectionGet(externalConnectionID int) (*ExternalConnection, error)
ExternalConnectionGet
func (*Client) ExternalConnectionGetByLabel ¶
func (c *Client) ExternalConnectionGetByLabel(externalConnectionLabel string) (*ExternalConnection, error)
ExternalConnectionGetByLabel
func (*Client) ExternalConnections ¶
func (c *Client) ExternalConnections(datacenterName string) (*map[int]ExternalConnection, error)
ExternalConnections returns a list of external connections for the specified datacenter
func (*Client) GetEndpoint ¶
GetEndpoint returns the endpoint configured for this connection
func (*Client) GetUserEmail ¶
GetUserEmail returns the user configured for this connection
func (*Client) InfrastructureCreate ¶
func (c *Client) InfrastructureCreate(infrastructure Infrastructure) (*Infrastructure, error)
InfrastructureCreate creates an infrastructure
func (*Client) InfrastructureDelete ¶
InfrastructureDelete elements. Requires deploy
func (*Client) InfrastructureDeleteByLabel ¶
InfrastructureDeleteByLabel elements. Requires deploy
func (*Client) InfrastructureDeploy ¶
func (c *Client) InfrastructureDeploy(infrastructureID int, shutdownOptions ShutdownOptions, allowDataLoss bool, skipAnsible bool) error
InfrastructureDeploy
func (*Client) InfrastructureDeployByLabel ¶
func (c *Client) InfrastructureDeployByLabel(infrastructureLabel string, shutdownOptions ShutdownOptions, allowDataLoss bool, skipAnsible bool) error
InfrastructureDeployByLabel
func (*Client) InfrastructureDeployCustomStageAddIntoRunlevel ¶
func (c *Client) InfrastructureDeployCustomStageAddIntoRunlevel(infraID int, stageID int, runLevel int, stageRunMoment string) error
InfrastructureDeployCustomStageAddIntoRunlevel adds a stage into a runlevel
func (*Client) InfrastructureDeployCustomStageDelete ¶
func (c *Client) InfrastructureDeployCustomStageDelete(nInfrastructureCustomDeployStageID int) error
InfrastructureDeployCustomStageDelete delete a stage
func (*Client) InfrastructureDeployCustomStages ¶
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) InfrastructureDeployWithOptions ¶
func (c *Client) InfrastructureDeployWithOptions(infrastructureID int, shutdownOptions ShutdownOptions, deployOptions *DeployOptions, allowDataLoss bool, skipAnsible bool) error
InfrastructureDeployWithOptions infrastructure. With options.
func (*Client) InfrastructureDeployWithOptionsByLabel ¶
func (c *Client) InfrastructureDeployWithOptionsByLabel(infrastructureLabel string, shutdownOptions ShutdownOptions, deployOptions *DeployOptions, allowDataLoss bool, skipAnsible bool) error
InfrastructureDeployWithOptionsByLabel infrastructure. With options.
func (*Client) InfrastructureEdit ¶
func (c *Client) InfrastructureEdit(infrastructureID int, infrastructureOperation InfrastructureOperation) (*Infrastructure, error)
InfrastructureEdit
func (*Client) InfrastructureEditByLabel ¶
func (c *Client) InfrastructureEditByLabel(infrastructureLabel string, infrastructureOperation InfrastructureOperation) (*Infrastructure, error)
InfrastructureEditByLabel
func (*Client) InfrastructureGet ¶
func (c *Client) InfrastructureGet(infrastructureID int) (*Infrastructure, error)
InfrastructureGet
func (*Client) InfrastructureGetByLabel ¶
func (c *Client) InfrastructureGetByLabel(infrastructureLabel string) (*Infrastructure, error)
InfrastructureGetByLabel
func (*Client) InfrastructureOperationCancel ¶
InfrastructureOperationCancel (undos) alterations done before deploy
func (*Client) InfrastructureOperationCancelByLabel ¶
InfrastructureOperationCancelByLabel (undos) alterations done before deploy
func (*Client) InfrastructureSearch ¶
func (c *Client) InfrastructureSearch(filter string) (*[]InfrastructuresSearchResult, error)
InfrastructureSearch searches for infrastructures with filtering support
func (*Client) InfrastructureUserLimits ¶
InfrastructureUserLimits
func (*Client) InfrastructureUserLimitsByLabel ¶
func (c *Client) InfrastructureUserLimitsByLabel(infrastructureLabel string) (*map[string]interface{}, error)
InfrastructureUserLimitsByLabel
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 (colletion of identical instances). Requires Deploy.
func (*Client) InstanceArrayCreateByLabel ¶
func (c *Client) InstanceArrayCreateByLabel(infrastructureLabel string, instanceArray InstanceArray) (*InstanceArray, error)
InstanceArrayCreateByLabel (colletion of identical instances). Requires Deploy.
func (*Client) InstanceArrayDelete ¶
InstanceArrayDelete array. Requires deploy.
func (*Client) InstanceArrayDeleteByLabel ¶
InstanceArrayDeleteByLabel 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 array. Requires deploy.
func (*Client) InstanceArrayEditByLabel ¶
func (c *Client) InstanceArrayEditByLabel(instanceArrayLabel string, instanceArrayOperation InstanceArrayOperation, bSwapExistingInstancesHardware *bool, bKeepDetachingDrives *bool, objServerTypeMatches *ServerTypeMatches, arrInstancesToBeDeleted *[]int) (*InstanceArray, error)
InstanceArrayEditByLabel array. Requires deploy.
func (*Client) InstanceArrayGet ¶
func (c *Client) InstanceArrayGet(instanceArrayID int) (*InstanceArray, error)
InstanceArrayGet
func (*Client) InstanceArrayGetByLabel ¶
func (c *Client) InstanceArrayGetByLabel(instanceArrayLabel string) (*InstanceArray, error)
InstanceArrayGetByLabel
func (*Client) InstanceArrayInstances ¶
InstanceArrayInstances InstanceArray.
func (*Client) InstanceArrayInstancesByLabel ¶
func (c *Client) InstanceArrayInstancesByLabel(instanceArrayLabel string) (*map[string]Instance, error)
InstanceArrayInstancesByLabel 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) InstanceArrayNetworkProfileClear ¶
func (*Client) InstanceArrayNetworkProfileSet ¶
func (*Client) InstanceArrayStart ¶
func (c *Client) InstanceArrayStart(instanceArrayID int) (*InstanceArray, error)
InstanceArrayStart InstanceArray.
func (*Client) InstanceArrayStartByLabel ¶
func (c *Client) InstanceArrayStartByLabel(instanceArrayLabel string) (*InstanceArray, error)
InstanceArrayStartByLabel InstanceArray.
func (*Client) InstanceArrayStop ¶
func (c *Client) InstanceArrayStop(instanceArrayID int) (*InstanceArray, error)
InstanceArrayStop InstanceArray.
func (*Client) InstanceArrayStopByLabel ¶
func (c *Client) InstanceArrayStopByLabel(instanceArrayLabel string) (*InstanceArray, error)
InstanceArrayStopByLabel InstanceArray.
func (*Client) InstanceArrays ¶
func (c *Client) InstanceArrays(infrastructureID int) (*map[string]InstanceArray, error)
InstanceArrays
func (*Client) InstanceArraysByLabel ¶
func (c *Client) InstanceArraysByLabel(infrastructureLabel string) (*map[string]InstanceArray, error)
InstanceArraysByLabel
func (*Client) InstanceEdit ¶
func (c *Client) InstanceEdit(instanceID int, instanceOperation InstanceOperation) (*Instance, error)
InstanceEdit instance. Requires deploy
func (*Client) InstanceEditByLabel ¶
func (c *Client) InstanceEditByLabel(instanceLabel string, instanceOperation InstanceOperation) (*Instance, error)
InstanceEditByLabel instance. Requires deploy
func (*Client) InstanceGet ¶
InstanceGet
func (*Client) InstanceGetByLabel ¶
InstanceGetByLabel
func (*Client) InstanceServerPowerGet ¶
InstanceServerPowerGet
func (*Client) InstanceServerPowerGetBatch ¶
func (c *Client) InstanceServerPowerGetBatch(infrastructureID int, instanceIDs []int) (*map[string]string, error)
InstanceServerPowerGetBatch
func (*Client) InstanceServerPowerGetBatchByLabel ¶
func (c *Client) InstanceServerPowerGetBatchByLabel(infrastructureLabel string, instanceIDs []int) (*map[string]string, error)
InstanceServerPowerGetBatchByLabel
func (*Client) InstanceServerPowerGetByLabel ¶
InstanceServerPowerGetByLabel
func (*Client) InstanceServerPowerSet ¶
InstanceServerPowerSet
func (*Client) InstanceServerPowerSetByLabel ¶
InstanceServerPowerSetByLabel
func (*Client) InstanceServerReplace ¶
InstanceServerReplace replaces a server associated to an instance. Returns an AFC Group ID to be used in the AFC Deploy Viewer.
func (*Client) NetworkCreate ¶
NetworkCreate network
func (*Client) NetworkCreateByLabel ¶
func (c *Client) NetworkCreateByLabel(infrastructureLabel string, network Network) (*Network, error)
NetworkCreateByLabel network
func (*Client) NetworkDelete ¶
NetworkDelete network.
func (*Client) NetworkDeleteByLabel ¶
NetworkDeleteByLabel network.
func (*Client) NetworkEdit ¶
func (c *Client) NetworkEdit(networkID int, networkOperation NetworkOperation) (*Network, error)
NetworkEdit network
func (*Client) NetworkEditByLabel ¶
func (c *Client) NetworkEditByLabel(networkLabel string, networkOperation NetworkOperation) (*Network, error)
NetworkEditByLabel network
func (*Client) NetworkGet ¶
NetworkGet object
func (*Client) NetworkGetByLabel ¶
NetworkGetByLabel object
func (*Client) NetworkJoin ¶
NetworkJoin objects.
func (*Client) NetworkJoinByLabel ¶
NetworkJoinByLabel objects.
func (*Client) NetworkProfileCreate ¶
func (c *Client) NetworkProfileCreate(datacenterName string, networkProfile NetworkProfile) (*NetworkProfile, error)
NetworkProfileCreate creates a network profile.
func (*Client) NetworkProfileDelete ¶
NetworkProfileDelete profile.
func (*Client) NetworkProfileDeleteByLabel ¶
NetworkProfileDeleteByLabel profile.
func (*Client) NetworkProfileGet ¶
func (c *Client) NetworkProfileGet(networkProfileID int) (*NetworkProfile, error)
NetworkProfileGet
func (*Client) NetworkProfileGetByLabel ¶
func (c *Client) NetworkProfileGetByLabel(networkProfileLabel string) (*NetworkProfile, error)
NetworkProfileGetByLabel
func (*Client) NetworkProfileListByInstanceArray ¶
func (*Client) NetworkProfileUpdate ¶
func (c *Client) NetworkProfileUpdate(networkProfileID int, networkProfile NetworkProfile) (*NetworkProfile, error)
NetworkProfileUpdate profile.
func (*Client) NetworkProfileUpdateByLabel ¶
func (c *Client) NetworkProfileUpdateByLabel(networkProfileLabel string, networkProfile NetworkProfile) (*NetworkProfile, error)
NetworkProfileUpdateByLabel profile.
func (*Client) NetworkProfiles ¶
func (c *Client) NetworkProfiles(datacenterName string) (*map[int]NetworkProfile, error)
NetworkProfiles returns a list of network profiles for the specified datacenter
func (*Client) NetworksByLabel ¶
NetworksByLabel infrastructure
func (*Client) OSAssetCreate ¶
OSAssetCreate creates a osAsset object
func (*Client) OSAssetDelete ¶
OSAssetDelete permanently destroys a OSAsset.
func (*Client) OSAssetGet ¶
OSAssetGet returns a OSAsset specified by nOSAssetID. The OSAsset's protected value is never returned.
func (*Client) OSAssetGetStoredContent ¶
OSAssetGetStoredContent returns the content of an OSAsset specified by nOSAssetID.
func (*Client) OSAssetMakePrivate ¶
OSAssetMakePrivate makes an OS Asset private and owned by the current user
func (*Client) OSAssetMakePublic ¶
OSAssetMakePublic makes an OS Asset public
func (*Client) OSAssetUpdate ¶
OSAssetUpdate updates a osAsset
func (*Client) OSAssets ¶
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 ¶
func (c *Client) OSTemplateAddOSAsset(osTemplateID int, osAssetID int, path string, variablesJSON string) error
OSTemplateAddOSAsset adds an asset to a template
func (*Client) OSTemplateCreate ¶
func (c *Client) OSTemplateCreate(osTemplate OSTemplate) (*OSTemplate, error)
OSTemplateCreate creates a osTemplate object
func (*Client) OSTemplateDelete ¶
OSTemplateDelete permanently destroys a OSTemplate.
func (*Client) OSTemplateGet ¶
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 ¶
OSTemplateMakePrivate makes a template private
func (*Client) OSTemplateMakePublic ¶
OSTemplateMakePublic makes a template public
func (*Client) OSTemplateOSAssets ¶
func (c *Client) OSTemplateOSAssets(osTemplateID int) (*map[string]OSTemplateOSAssetData, error)
OSTemplateOSAssets returns the OSAssets assigned to an OSTemplate.
func (*Client) OSTemplateRemoveOSAsset ¶
OSTemplateRemoveOSAsset removes an asset from a template
func (*Client) OSTemplateUpdate ¶
func (c *Client) OSTemplateUpdate(osTemplateID int, osTemplate OSTemplate) (*OSTemplate, error)
OSTemplateUpdate updates a osTemplate
func (*Client) OSTemplateUpdateOSAssetPath ¶
OSTemplateUpdateOSAssetPath updates an asset mapping
func (*Client) OSTemplateUpdateOSAssetVariables ¶
func (c *Client) OSTemplateUpdateOSAssetVariables(osTemplateID int, osAssetID int, variablesJSON string) error
OSTemplateUpdateOSAssetVariables updates an asset variable
func (*Client) OSTemplates ¶
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) OSTemplatesNetwork ¶
func (c *Client) OSTemplatesNetwork() (*map[string]OSTemplate, error)
OSTemplatesNetwork retrieves a list of all the network OSTemplate objects which a specified User is allowed to see through ownership or delegation.
func (*Client) SecretCreate ¶
SecretCreate creates a secret
func (*Client) SecretDelete ¶
SecretDelete Permanently destroys a Secret.
func (*Client) SecretGet ¶
SecretGet returns a Secret specified by nSecretID. The secret's protected value is never returned.
func (*Client) SecretUpdate ¶
SecretUpdate This function allows updating the secret_usage, secret_label and secret_base64 of a Secret
func (*Client) Secrets ¶
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 ¶
func (c *Client) ServerComponentGet(serverComponentID int) (*ServerComponent, error)
ServerComponentGet returns a server's component's details
func (*Client) ServerComponents ¶
func (c *Client) ServerComponents(serverID int, filter string) (*[]ServerComponent, error)
ServerComponents searches for servers matching certain filter
func (*Client) ServerCreate ¶
ServerCreate manually creates a server record. DEPRECATED
func (*Client) ServerCreateAndRegister ¶
func (c *Client) ServerCreateAndRegister(serverCreateAndRegister ServerCreateAndRegister) (int, error)
ServerCreateAndRegister manually creates and registers a server
func (*Client) ServerDecomission ¶
ServerDecomission decomissions the server row and deletes all child rows.
func (*Client) ServerDefaultCredentials ¶
func (c *Client) ServerDefaultCredentials(datacenter_name string, decryptPasswd bool) (*[]ServerDefaultCredentials, error)
ServerDefaultCredentials retrieves the default credentials for server BMCs for the ZTP process for a given datacenter
func (*Client) ServerDefaultCredentialsAdd ¶
func (c *Client) ServerDefaultCredentialsAdd(credentials []ServerDefaultCredentials) error
ServerDefaultCredentialsAdd Adds BMC credentials to the default credentials list for the ZTP process
func (*Client) ServerDefaultCredentialsRemove ¶
ServerDefaultCredentialsRemove Removes BMC credentials to the default credentials list for the ZTP process
func (*Client) ServerDelete ¶
ServerDelete deletes all the information about a specified Server.
func (*Client) ServerEdit ¶
ServerEdit edits a server record
func (*Client) ServerEditAvailability ¶
ServerEditAvailability - edit only server availability settings
func (*Client) ServerEditComplete ¶
ServerEditComplete - perform a complete edit
func (*Client) ServerEditIPMI ¶
func (c *Client) ServerEditIPMI(serverID int, server Server, serverUpdateInBMC bool) (*Server, error)
ServerEditIPMI - edit only IPMI settings
func (*Client) ServerEditInventory ¶
func (c *Client) ServerEditInventory(serverID int, serverEditInventory ServerEditInventory) (*Server, error)
ServerEditInventory returns a server's inventory details
func (*Client) ServerEditProperty ¶
func (c *Client) ServerEditProperty(serverID int, serverPropertyToEdit string, serverPropertyValue interface{}) error
ServerEditProperty edits a specific property from the server record this is used instead of the server edit function as it does not require a marshal-unmarshal to and form the server object which sometimes is broken due to frequent changes on the server side
func (*Client) ServerEditRack ¶
func (c *Client) ServerEditRack(serverID int, serverEditRack ServerEditRack) (*Server, error)
ServerEditRack returns a server's rack info details
func (*Client) ServerFirmwareComponentTargetVersionAdd ¶
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 ¶
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 ¶
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 ¶
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) ServerFirmwarePolicyAddRule ¶
func (c *Client) ServerFirmwarePolicyAddRule(serverFirmwarePolicyID int, serverRule *ServerFirmwareUpgradePolicyRule) (*ServerFirmwareUpgradePolicy, error)
ServerFirmwarePolicyAddRule add a new rule for a policy.
func (*Client) ServerFirmwarePolicyDeleteRule ¶
func (c *Client) ServerFirmwarePolicyDeleteRule(serverFirmwarePolicyID int, serverRule *ServerFirmwareUpgradePolicyRule) error
ServerFirmwarePolicyDeleteRule deletes a rule from a policy.
func (*Client) ServerFirmwarePolicyGet ¶
func (c *Client) ServerFirmwarePolicyGet(serverFirmwarePolicyID int) (*ServerFirmwareUpgradePolicy, error)
ServerFirmwarePolicyGet returns a server policy's details
func (*Client) ServerFirmwareUgradePolicyInstanceArraySet ¶
func (*Client) ServerFirmwareUpgrade ¶
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) ServerFirmwareUpgradePolicyActionSet ¶
func (c *Client) ServerFirmwareUpgradePolicyActionSet(serverFirmwarePolicyID int, serverFirmwarePolicyAction string) error
ServerFirmwareUpgradePolicyActionSet sets the upgrade action for a specified ServerFirmwareUpgradePolicy.
func (*Client) ServerFirmwareUpgradePolicyCreate ¶
func (c *Client) ServerFirmwareUpgradePolicyCreate(serverFirmwarePolicy *ServerFirmwareUpgradePolicy) (*ServerFirmwareUpgradePolicy, error)
ServerFirmwareUpgradePolicyCreate creates a server firmware policy.
func (*Client) ServerFirmwareUpgradePolicyDelete ¶
ServerFirmwareUpgradePolicyDelete deletes all the information about a specified ServerFirmwareUpgradePolicy.
func (*Client) ServerFirmwareUpgradePolicyLabelSet ¶
func (c *Client) ServerFirmwareUpgradePolicyLabelSet(serverFirmwarePolicyID int, serverFirmwarePolicyLabel string) error
ServerFirmwareUpgradePolicyLabelSet sets the label for a specified ServerFirmwareUpgradePolicy.
func (*Client) ServerGetByUUID ¶
ServerGetByUUID retrieves information about a specified Server by using the server's UUID
func (*Client) ServerPowerSet ¶
ServerPowerSet reboots or powers on a server
func (*Client) ServerReregister ¶
ServerReregister triggers a re-register of a server
func (*Client) ServerStatusUpdate ¶
ServerStatusUpdate alters the status of 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 id
func (*Client) ServerTypeGetByLabel ¶
func (c *Client) ServerTypeGetByLabel(serverTypeLabel string) (*ServerType, error)
ServerTypeGetByLabel 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 ¶
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 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 ¶
func (c *Client) ServerTypesMatchesByLabel(infrastructureLabel string, hardwareConfiguration HardwareConfiguration, instanceArrayID *int, bAllowServerSwap bool) (*map[string]ServerType, error)
ServerTypesMatchesByLabel 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) ServerUnmanagedImport ¶
func (c *Client) ServerUnmanagedImport(server ServerCreateUnmanaged) (*Server, error)
ServerUnmanagedImport creates an unmanaged server
func (*Client) ServerUnmanagedImportBatch ¶
func (c *Client) ServerUnmanagedImportBatch(servers []ServerCreateUnmanaged) (*map[string]Server, error)
ServerUnmanagedImportBatch Imports multiple unmanaged servers
func (*Client) ServersSearch ¶
func (c *Client) ServersSearch(filter string) (*[]ServerSearchResult, error)
ServersSearch searches for servers matching certain filter
func (*Client) SharedDriveAttachInstanceArray ¶
func (c *Client) SharedDriveAttachInstanceArray(sharedDriveID int, instanceArrayID int) (*SharedDrive, error)
func (*Client) SharedDriveCreate ¶
func (c *Client) SharedDriveCreate(infrastructureID int, sharedDrive SharedDrive) (*SharedDrive, error)
SharedDriveCreate array. Requires deploy.
func (*Client) SharedDriveCreateByLabel ¶
func (c *Client) SharedDriveCreateByLabel(infrastructureLabel string, sharedDrive SharedDrive) (*SharedDrive, error)
SharedDriveCreateByLabel array. Requires deploy.
func (*Client) SharedDriveDelete ¶
SharedDriveDelete drive.
func (*Client) SharedDriveDeleteByLabel ¶
SharedDriveDeleteByLabel drive.
func (*Client) SharedDriveDetachInstanceArray ¶
func (c *Client) SharedDriveDetachInstanceArray(sharedDriveID int, instanceArrayID int) (*SharedDrive, error)
func (*Client) SharedDriveEdit ¶
func (c *Client) SharedDriveEdit(sharedDriveID int, sharedDriveOperation SharedDriveOperation) (*SharedDrive, error)
SharedDriveEdit array. Requires deploy.
func (*Client) SharedDriveEditByLabel ¶
func (c *Client) SharedDriveEditByLabel(sharedDriveLabel string, sharedDriveOperation SharedDriveOperation) (*SharedDrive, error)
SharedDriveEditByLabel array. Requires deploy.
func (*Client) SharedDriveGet ¶
func (c *Client) SharedDriveGet(sharedDriveID int) (*SharedDrive, error)
SharedDriveGet drive
func (*Client) SharedDriveGetByLabel ¶
func (c *Client) SharedDriveGetByLabel(sharedDriveLabel string) (*SharedDrive, error)
SharedDriveGetByLabel drive
func (*Client) SharedDrives ¶
func (c *Client) SharedDrives(infrastructureID int) (*map[string]SharedDrive, error)
SharedDrives retrieves the list of shared drives of an infrastructure
func (*Client) StageDefinitionCreate ¶
func (c *Client) StageDefinitionCreate(stageDefinition StageDefinition) (*StageDefinition, error)
StageDefinitionCreate creates a stageDefinition
func (*Client) StageDefinitionDelete ¶
StageDefinitionDelete Permanently destroys a StageDefinition.
func (*Client) StageDefinitionGet ¶
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 ¶
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 ¶
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) StoragePoolGet ¶
func (c *Client) StoragePoolGet(serverID int, decryptPasswd bool) (*StoragePool, error)
StoragePoolGet returns a storage pool's details
func (*Client) StoragePoolSearch ¶
func (c *Client) StoragePoolSearch(filter string) (*[]StoragePoolSearchResult, error)
StoragePoolSearch searches for storage pools matching certain filter
func (*Client) SubnetDelete ¶
func (*Client) SubnetOOBCreate ¶ added in v3.0.1
func (*Client) SubnetOOBDelete ¶ added in v3.0.1
func (*Client) SubnetOOBDeleteByLabel ¶ added in v3.0.1
func (*Client) SubnetOOBGet ¶ added in v3.0.1
func (*Client) SubnetOOBGetByLabel ¶ added in v3.0.1
SubnetOOBGetByLabel retrieves information regarding a specified Subnet by label.
func (*Client) SubnetOOBSearch ¶ added in v3.0.1
SubnetOOBSearch retrieves all OOB subnets registered in the database with the specified filter
func (*Client) SubnetPoolCreate ¶
func (c *Client) SubnetPoolCreate(subnetPool SubnetPool) (*SubnetPool, error)
SubnetPoolCreate creates a new SubnetPool.
func (*Client) SubnetPoolCreateOrUpdate ¶
func (c *Client) SubnetPoolCreateOrUpdate(subnetPool SubnetPool) (*SubnetPool, error)
SubnetPoolCreateOrUpdate creates or updates a subnet pool
func (*Client) SubnetPoolDelete ¶
SubnetPoolDelete deletes the specified SubnetPool
func (*Client) SubnetPoolDeleteByLabel ¶ added in v3.0.1
func (*Client) SubnetPoolGet ¶
func (c *Client) SubnetPoolGet(subnetPoolID int) (*SubnetPool, error)
SubnetPoolGet retrieves information regarding a specified SubnetPool.
func (*Client) SubnetPoolGetByLabel ¶ added in v3.0.1
func (c *Client) SubnetPoolGetByLabel(subnetPoolLabel string) (*SubnetPool, error)
SubnetPoolGetByLabel retrieves information regarding a specified SubnetPool by label.
func (*Client) SubnetPoolPrefixSizesStats ¶
func (c *Client) SubnetPoolPrefixSizesStats(subnetPoolID int) (*SubnetPoolUtilization, error)
SubnetPoolPrefixSizesStats retrieves information regarding the utilization of a specified SubnetPool.
func (*Client) SubnetPoolSearch ¶
func (c *Client) SubnetPoolSearch(filter string) (*[]SubnetPool, error)
SubnetPoolSearch retrieves all switch devices registered in the database with the specified filter
func (*Client) SubnetPools ¶
func (c *Client) SubnetPools() (*[]SubnetPool, error)
SubnetPools retrieves all switch devices registered in the database.
func (*Client) SwitchDeviceControllerCreate ¶
func (c *Client) SwitchDeviceControllerCreate(switchDeviceController SwitchDeviceController) (*SwitchDeviceController, error)
SwitchDeviceControllerCreate creates a record for a new SwitchDeviceController and for the switches that were detected and created.
func (*Client) SwitchDeviceControllerDelete ¶
SwitchDeviceControllerDelete deletes a specified switch device controller. The switches belonging to the controller need to be deleted first.
func (*Client) SwitchDeviceControllerGet ¶
func (c *Client) SwitchDeviceControllerGet(networkEquipmentControllerID int, decryptPasswd bool) (*SwitchDeviceController, error)
SwitchDeviceControllerGet retrieves information regarding a specified SwitchDeviceController.
func (*Client) SwitchDeviceControllerGetByIdentifierString ¶
func (c *Client) SwitchDeviceControllerGetByIdentifierString(networkEquipmentIdentifierString string, decryptPasswd bool) (*SwitchDeviceController, error)
SwitchDeviceControllerGetByIdentifierString retrieves information regarding a specified SwitchDeviceController by identifier string.
func (*Client) SwitchDeviceControllerSwitches ¶
func (c *Client) SwitchDeviceControllerSwitches(networkEquipmentIdentifierString string) (map[int]SwitchDevice, error)
SwitchDeviceControllers retrieves all switch devices registered in the database.
func (*Client) SwitchDeviceControllerSync ¶
func (c *Client) SwitchDeviceControllerSync(networkEquipmentControllerID int) (*map[int]SwitchDevice, error)
Creates multiple network equipment controller records, based on the output from Switch Controller. Returns the created switches. Please note that this may take some time, typically a few seconds.
func (*Client) SwitchDeviceControllerUpdate ¶
func (c *Client) SwitchDeviceControllerUpdate(networkEquipmentControllerID int, networkEquipmentControllerData interface{}) (*SwitchDeviceController, error)
SwitchDeviceUpdate updates an existing switch configuration
func (*Client) SwitchDeviceControllers ¶
func (c *Client) SwitchDeviceControllers(datacenter string) (*map[int]SwitchDeviceController, error)
SwitchDeviceControllers retrieves all switch controller devices registered in the database. If a datacenter is specified, only the switch device controllers for that datacenter are returned.
func (*Client) SwitchDeviceCreate ¶
func (c *Client) SwitchDeviceCreate(switchDevice SwitchDevice, bOverwriteWithHostnameFromFetchedSwitch bool) (*SwitchDevice, error)
SwitchDeviceCreate Creates a record for a new SwitchDevice.
func (*Client) SwitchDeviceDefaults ¶
func (c *Client) SwitchDeviceDefaults(datacenter string) (*[]SwitchDeviceDefaults, error)
SwitchDeviceDefaults retrieves all switch defaults registered in the database for a datacenter.
func (*Client) SwitchDeviceDefaultsCreate ¶
func (c *Client) SwitchDeviceDefaultsCreate(switchDeviceDefaultsArray []SwitchDeviceDefaults) error
SwitchDeviceDefaultsCreate adds records for a new set of switch device defaults.
func (*Client) SwitchDeviceDefaultsDelete ¶
SwitchDeviceDefaultsDelete removes records for the specified switch device defaults.
func (*Client) SwitchDeviceDelete ¶
SwitchDeviceDelete deletes a specified switch device and its registered interfaces.
func (*Client) SwitchDeviceGet ¶
func (c *Client) SwitchDeviceGet(networkEquipmentID int, decryptPasswd bool) (*SwitchDevice, error)
SwitchDeviceGet Retrieves information regarding a specified SwitchDevice.
func (*Client) SwitchDeviceGetByIdentifierString ¶
func (c *Client) SwitchDeviceGetByIdentifierString(networkEquipmentIdentifierString string, decryptPasswd bool) (*SwitchDevice, error)
SwitchDeviceGetByIdentifierString Retrieves information regarding a specified SwitchDevice by identifier string.
func (*Client) SwitchDeviceLinkCreate ¶
func (c *Client) SwitchDeviceLinkCreate(networkEquipmentID1 int, networkEquipmentID2 int, networkEquipmentLinkType string) (*SwitchDeviceLink, error)
SwitchDeviceLinkCreate Creates a record for a new SwitchDevice.
func (*Client) SwitchDeviceLinkDelete ¶
func (c *Client) SwitchDeviceLinkDelete(networkEquipmentID1 int, networkEquipmentID2 int, linkType string) error
SwitchDeviceLinkDelete deletes a specified switch device and its registered interfaces.
func (*Client) SwitchDeviceLinkGet ¶
func (c *Client) SwitchDeviceLinkGet(networkEquipmentID1 int, networkEquipmentID2 int, linkType string) (*SwitchDeviceLink, error)
SwitchDeviceLinkGet Retrieves information regarding a specified switch device link
func (*Client) SwitchDeviceLinks ¶
func (c *Client) SwitchDeviceLinks() (*map[int]SwitchDeviceLink, error)
SwitchDeviceLinks Returns all the switch device links found in the database.
func (*Client) SwitchDeviceUpdate ¶
func (c *Client) SwitchDeviceUpdate(networkEquipmentID int, switchDevice SwitchDevice, bOverwriteWithHostnameFromFetchedSwitch bool) (*SwitchDevice, error)
SwitchDeviceUpdate updates an existing switch configuration
func (*Client) SwitchDevices ¶
func (c *Client) SwitchDevices(datacenter string, switchType string) (*map[string]SwitchDevice, error)
SwitchDevices retrieves all switch devices registered in the database.
func (*Client) SwitchDevicesInDatacenter ¶
func (c *Client) SwitchDevicesInDatacenter(datacenter string) (*map[string]SwitchDevice, error)
SwitchDevicesInDatacenter retrieves all switch devices in a datacenter
func (*Client) SwitchInterfaceSearch ¶
func (c *Client) SwitchInterfaceSearch(filter string) (*[]SwitchInterfaceSearchResult, error)
SwitchInterfaceSearch searches for server interfaces filtering on various elements such as switch id or server id
func (*Client) UserEmailToUserID ¶
UserEmailToUserID returns the user id of an user given an email
func (*Client) UserGetByEmail ¶
UserGetByEmail describes returns user account specifications.
func (*Client) UserSearch ¶
func (c *Client) UserSearch(filter string) (*[]UsersSearchResult, error)
UserSearch searches for users with filtering support
func (*Client) VariableCreate ¶
VariableCreate creates a variable object
func (*Client) VariableDelete ¶
VariableDelete permanently destroys a Variable.
func (*Client) VariableGet ¶
VariableGet returns a Variable specified by nVariableID. The Variable's protected value is never returned.
func (*Client) VariableUpdate ¶
VariableUpdate updates a variable
func (*Client) Variables ¶
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 ¶
func (c *Client) VolumeTemplateCreateFromDrive(driveID int, objVolumeTemplate VolumeTemplate) (*VolumeTemplate, error)
VolumeTemplateCreateFromDrive drive
func (*Client) VolumeTemplateCreateFromDriveByLabel ¶
func (c *Client) VolumeTemplateCreateFromDriveByLabel(driveLabel string, objVolumeTemplate VolumeTemplate) (*VolumeTemplate, error)
VolumeTemplateCreateFromDriveByLabel drive
func (*Client) VolumeTemplateGet ¶
func (c *Client) VolumeTemplateGet(volumeTemplateID int) (*VolumeTemplate, error)
VolumeTemplateGet template
func (*Client) VolumeTemplateGetByLabel ¶
func (c *Client) VolumeTemplateGetByLabel(volumeTemplateLabel string) (*VolumeTemplate, error)
VolumeTemplateGetByLabel template
func (*Client) VolumeTemplateMakePrivate ¶
VolumeTemplateMakePrivate makes a template private
func (*Client) VolumeTemplateMakePublic ¶
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 ¶
WorkflowCreate creates a workflow
func (*Client) WorkflowDelete ¶
WorkflowDelete Permanently destroys a Workflow.
func (*Client) WorkflowGet ¶
WorkflowGet returns a Workflow specified by nWorkflowID. The workflow's protected value is never returned.
func (*Client) WorkflowMoveAsNewRunLevel ¶
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 ¶
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 ¶
func (c *Client) WorkflowStageAddAsNewRunLevel(workflowID int, stageDefinitionID int, destinationRunLevel int) error
WorkflowStageAddAsNewRunLevel adds a new stage in this workflow
func (*Client) WorkflowStageAddIntoRunLevel ¶
func (c *Client) WorkflowStageAddIntoRunLevel(workflowID int, stageDefinitionID int, destinationRunLevel int) error
WorkflowStageAddIntoRunLevel adds a new stage in this workflow
func (*Client) WorkflowStageDelete ¶
WorkflowStageDelete deletes a stage from a workflow entirelly
func (*Client) WorkflowStageGet ¶
func (c *Client) WorkflowStageGet(workflowStageID int) (*WorkflowStageDefinitionReference, error)
WorkflowStageGet returns a StageDefinition specified by workflowStageID.
func (*Client) WorkflowStages ¶
func (c *Client) WorkflowStages(workflowID int) (*[]WorkflowStageDefinitionReference, error)
WorkflowStages retrieves a list of all the StageDefinitions objects in this workflow
func (*Client) WorkflowUpdate ¶
WorkflowUpdate This function allows updating the workflow_usage, workflow_label and workflow_base64 of a Workflow
type ClientOptions ¶
type Cluster ¶
type Cluster struct { ClusterID int `json:"cluster_id,omitempty" yaml:"clusterId,omitempty"` ClusterLabel string `json:"cluster_label,omitempty" yaml:"clusterLabel,omitempty"` ClusterSubdomain string `json:"cluster_subdomain,omitempty" yaml:"clusterSubdomain,omitempty"` ClusterSubdomainPermanent string `json:"cluster_subdomain_permanent,omitempty" yaml:"clusterSubdomainPermanent,omitempty"` InfrastructureID int `json:"infrastructure_id,omitempty" yaml:"infrastructureId,omitempty"` ClusterType string `json:"cluster_type,omitempty" yaml:"clusterType,omitempty"` ClusterServiceStatus string `json:"cluster_service_status,omitempty" yaml:"clusterServiceStatus,omitempty"` ClusterSoftwareVersion string `json:"cluster_software_version,omitempty" yaml:"clusterSoftwareVersion,omitempty"` ClusterAutomaticManagement bool `json:"cluster_automatic_management,omitempty" yaml:"clusterAutomaticManagement,omitempty"` //ClusterApp interface{} `json:"cluster_app,omitempty" yaml:"clusterApp,omitempty"` ClusterChangeId int `json:"cluster_change_id,omitempty" yaml:"clusterChangeId,omitempty"` ClusterOperation ClusterOperation `json:"cluster_operation,omitempty" yaml:"clusterOperation,omitempty"` ClusterCustom map[string]string `json:"cluster_custom,omitempty" yaml:"clusterCustom,omitempty"` ClusterCustomJSON string `json:"cluster_custom_json,omitempty" yaml:"clusterCustomJson,omitempty"` }
type ClusterOperation ¶
type ClusterOperation struct { ClusterLabel string `json:"cluster_label,omitempty" yaml:"clusterLabel,omitempty"` ClusterSubdomain string `json:"cluster_subdomain,omitempty" yaml:"clusterSubdomain,omitempty"` ClusterSubdomainPermanent string `json:"cluster_subdomain_permanent,omitempty" yaml:"clusterSubdomainPermanent,omitempty"` InfrastructureID string `json:"infrastructure_id,omitempty" yaml:"infrastructureId,omitempty"` ClusterType string `json:"cluster_type,omitempty" yaml:"clusterType,omitempty"` ClusterServiceStatus string `json:"cluster_service_status,omitempty" yaml:"clusterServiceStatus,omitempty"` ClusterSoftwareVersion string `json:"cluster_software_version,omitempty" yaml:"clusterSoftwareVersion,omitempty"` ClusterAutomaticManagement bool `json:"cluster_automatic_management,omitempty" yaml:"clusterAutomaticManagement,omitempty"` ClusterDeployStatus string `json:"cluster_deploy_status,omitempty" yaml:"clusterDeployStatus,omitempty"` ClusterDeployType string `json:"cluster_deploy_type,omitempty" yaml:"clusterDeployType,omitempty"` ClusterChangeId int `json:"cluster_change_id,omitempty" yaml:"clusterChangeId,omitempty"` }
type Copy ¶
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 CustomISO ¶
type CustomISO struct { CustomISOID int `json:"custom_iso_id,omitempty" yaml:"customISOID,omitempty"` UserIDOwner int `json:"user_id_owner,omitempty" yaml:"userIDOwner,omitempty"` UserIDAuthenticated int `json:"user_id_authenticated,omitempty" yaml:"userIDAuthenticated,omitempty"` CustomISODisplayName string `json:"custom_iso_display_name,omitempty" yaml:"customISODisplayName,omitempty"` CustomISOName string `json:"custom_iso_name,omitempty" yaml:"customISOName,omitempty"` CustomISOType string `json:"custom_iso_type,omitempty" yaml:"customISOType,omitempty"` CustomISOIsPublic bool `json:"custom_iso_is_public,omitempty" yaml:"customISOIsPublic,omitempty"` CustomISOAccessURL string `json:"custom_iso_access_url,omitempty" yaml:"customISOAccessURL,omitempty"` CustomISOAccessUsername string `json:"custom_iso_access_username,omitempty" yaml:"customISOAccessUsername,omitempty"` CustomISOAccessPassword string `json:"custom_iso_access_password,omitempty" yaml:"customISOAccessPassword,omitempty"` CustomISOCreatedTimestamp string `json:"custom_iso_created_timestamp,omitempty" yaml:"customISOCreatedTimestamp,omitempty"` CustomISOUpdatedTimestamp string `json:"custom_iso_updated_timestamp,omitempty" yaml:"customISOUpdatedTimestamp,omitempty"` }
type Datacenter ¶
type Datacenter struct { DatacenterID int `json:"datacenter_id,omitempty" yaml:"id,omitempty"` 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" yaml:"ismaster"` DatacenterIsMaintenance bool `json:"datacenter_is_maintenance" yaml:"ismaintenance"` 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" yaml:"ishidden"` 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 ¶
func (dc Datacenter) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (Datacenter) Delete ¶
func (dc Datacenter) Delete(client MetalCloudClient) error
Delete implements interface Applier
func (Datacenter) Validate ¶
func (dc Datacenter) Validate() error
Validate implements interface Applier
type DatacenterConfig ¶
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" yaml:"NTPServers"` 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"` ServerRegisterUsingProvidedIPMICredentialsEnabled bool `json:"serverRegisterUsingProvidedIPMICredentialsEnabled" yaml:"serverRegisterUsingProvidedIPMICredentialsEnabled"` SwitchProvisioner map[string]interface{} `json:"switchProvisioner,omitempty" yaml:"switchProvisioner,omitempty"` EnableTenantAccessToIPMI bool `json:"enableTenantAccessToIPMI" yaml:"enableTenantAccessToIPMI"` AllowVLANOverrides bool `json:"allowVLANOverrides" yaml:"allowVLANOverrides"` AllowNetworkProfiles bool `json:"allowNetworkProfiles" yaml:"allowNetworkProfiles"` EnableServerRegistrationStartedByInBandDHCP bool `json:"enableServerRegistrationStartedByInBandDHCP" yaml:"enableServerRegistrationStartedByInBandDHCP"` ExtraInternalIPsPerSubnet int `json:"extraInternalIPsPerSubnet" yaml:"extraInternalIPsPerSubnet"` ExtraInternalIPsPerSANSubnet int `json:"extraInternalIPsPerSANSubnet" yaml:"extraInternalIPsPerSANSubnet"` ServerRAIDConfigurationEnabled bool `json:"serverRAIDConfigurationEnabled" yaml:"serverRAIDConfigurationEnabled"` WebProxy *WebProxy `json:"webProxy" yaml:"webProxy"` IsKubernetesDeployment bool `json:"isKubernetesDeployment" yaml:"isKubernetesDeployment"` AllowInstanceArrayFirmwarePolicies bool `json:"allowInstanceArrayFirmwarePolicies" yaml:"allowInstanceArrayFirmwarePolicies"` ProvisionUsingTheQuarantineNetwork bool `json:"provisionUsingTheQuarantineNetwork" yaml:"provisionUsingTheQuarantineNetwork"` EnableDHCPRelaySecurityForQuarantineNetwork bool `json:"enableDHCPRelaySecurityForQuarantineNetwork" yaml:"enableDHCPRelaySecurityForQuarantineNetwork"` EnableDHCPRelaySecurityForClientNetworks bool `json:"enableDHCPRelaySecurityForClientNetworks" yaml:"enableDHCPRelaySecurityForClientNetworks"` EnableDHCPBMCMACAddressWhitelist bool `json:"enableDHCPBMCMACAddressWhitelist" yaml:"enableDHCPBMCMACAddressWhitelist"` DHCPBMCMACAddressWhitelist []string `json:"dhcpBMCMACAddressWhitelist" yaml:"dhcpBMCMACAddressWhitelist"` DefaultServerCleanupPolicyID int `json:"defaultServerCleanupPolicyID" yaml:"defaultServerCleanupPolicyID"` DefaultWANNetworkProfileID int `json:"defaultWANNetworkProfileID" yaml:"defaultWANNetworkProfileID"` DefaultDeploymentMechanism string `json:"defaultDeploymentMechanism" yaml:"defaultDeploymentMechanism"` DefaultCleanupAndRegistrationMechanism string `json:"defaultCleanupAndRegistrationMechanism" yaml:"defaultCleanupAndRegistrationMechanism"` NFSServer string `json:"NFSServer" yaml:"NFSServer"` Option82ToIPMapping Option82ToIPMapping `json:"Option82ToIPMapping" yaml:"Option82ToIPMapping"` }
DatacenterConfig - datacenter configuration
type DeployOptions ¶
type DeployOptions struct {
InstanceArrayMapping map[int]map[string]DeployOptionsServerTypeMappingObject `json:"instance_array"`
}
DeployOptions controls server allocation
type DeployOptionsServerTypeMappingObject ¶
type DeployOptionsServerTypeMappingObject struct { ServerCount int `json:"server_count"` ServerIDs []int `json:"server_ids"` }
DeployOptionsServerTypeMappingObject respresents one of the server type mappings
type Drive ¶
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"` DriveWWN string `json:"drive_wwn,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" yaml:"expandWithInstanceArray"` DriveArrayOperation *DriveArrayOperation `json:"drive_array_operation,omitempty" yaml:"operation,omitempty"` DriveArrayIOLimitPolicy string `json:"drive_array_io_limit_policy,omitempty" yaml:"ioLimit,omitempty"` StoragePoolID int `json:"storage_pool_id,omitempty" yaml:"storagePoolID,omitempty"` DriveArrayAllocationAffinity string `json:"drive_array_allocation_affinity,omitempty" yaml:"affinity,omitempty"` }
DriveArray represents a collection of identical drives
func (DriveArray) CreateOrUpdate ¶
func (da DriveArray) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (DriveArray) Delete ¶
func (da DriveArray) Delete(client MetalCloudClient) error
Delete implements interface Applier
func (DriveArray) Validate ¶
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 interface{} `json:"instance_array_id" yaml:"instanceArrayID"` 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" yaml:"expandWithInstanceArray"` 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"` DriveArrayIOLimitPolicy string `json:"drive_array_io_limit_policy,omitempty" yaml:"ioLimit,omitempty"` }
DriveArrayOperation defines changes to be applied to a DriveArray
type DriveCredentials ¶
type DriveCredentials struct {
ISCSI ISCSI `json:"iscsi,omitempty"`
}
DriveCredentials credentials to connect to the drive
type DriveFileSystem ¶
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 ExternalConnection ¶
type ExternalConnection struct { ExternalConnectionID int `json:"external_connection_id,omitempty" yaml:"id,omitempty"` ExternalConnectionLabel string `json:"external_connection_label,omitempty" yaml:"label,omitempty"` DatacenterName string `json:"datacenter_name,omitempty" yaml:"dc,omitempty"` ExternalConnectionHidden bool `json:"external_connection_hidden" yaml:"hidden"` ExternalConnectionDescription string `json:"external_connection_description,omitempty" yaml:"description,omitempty"` }
ExternalConnection object describes an external connection
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" yaml:"enabled"` }
FirewallRule describes a firewall rule that is to be applied on all instances of an array
type HTTPRequest ¶
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 ¶
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 ¶
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 ¶
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 ¶
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 ¶
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 ¶
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 ¶
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"` InfrastructureExperimentalPriority string `json:"infrastructure_experimental_priority,omitempty"` InfrastructureCustomVariables interface{} `json:"infrastructure_custom_variables,omitempty" yaml:"customVariables,omitempty"` }
Infrastructure - the main infrastructure object
func (Infrastructure) CreateOrUpdate ¶
func (i Infrastructure) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (Infrastructure) Delete ¶
func (i Infrastructure) Delete(client MetalCloudClient) error
Delete implements interface Applier
func (Infrastructure) Validate ¶
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"` InfrastructureCustomVariables interface{} `json:"infrastructure_custom_variables,omitempty" yaml:"customVariables,omitempty"` }
InfrastructureOperation - object with alternations to be applied
type InfrastructuresSearchResult ¶
type InfrastructuresSearchResult struct { InfrastructureID int `json:"infrastructure_id,omitempty" yaml:"id,omitempty"` InfrastructureLabel string `json:"infrastructure_label" yaml:"label"` InfrastructureSubdomain string `json:"infrastructure_subdomain" yaml:"label"` InfrastructureServiceStatus string `json:"infrastructure_service_status" yaml:"label"` InfrastructureDeployStatus string `json:"infrastructure_deploy_status" yaml:"label"` DatacenterName string `json:"datacenter_name" yaml:"datacenter"` InfrastructureCreatedTimestamp string `json:"infrastructure_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` InfrastructureUpdatedTimestamp string `json:"infrastructure_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` UserIDOwner int `json:"user_id_owner,omitempty" yaml:"ownerID,omitempty"` UserEmail []string `json:"user_email,omitempty" yaml:"userEmail,omitempty"` InfrastructureDeployID int `json:"infrastructure_deploy_id,omitempty" yaml:"deployID,omitempty"` AFCGroupCreatedTimestamp string `json:"afc_group_created_timestamp,omitempty" yaml:"afcGroupCreatedTimestamp,omitempty"` AFCGroupFinishedTimestamp string `json:"afc_group_finished_timestamp,omitempty" yaml:"afcGroupFinishedTimestamp,omitempty"` AFCThrownError int `json:"thrownError,omitempty" yaml:"thrownError,omitempty"` AFCExecutedSuccess int `json:"executedSuccess,omitempty" yaml:"executedSuccess,omitempty"` AFCTotal int `json:"total,omitempty" yaml:"total,omitempty"` }
type Instance ¶
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"` InstanceCustomVariables interface{} `json:"instance_custom_variables,omitempty" yaml:"customVariables,omitempty"` PreferredServerIDsJSON string `json:"preferred_server_ids_json,omitempty" yaml:"preferredServerIDs,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" yaml:"instanceCount"` InstanceArrayRAMGbytes int `json:"instance_array_ram_gbytes,omitempty" yaml:"ramGBytes,omitempty"` InstanceArrayProcessorCount int `json:"instance_array_processor_count" yaml:"processorCount"` InstanceArrayProcessorCoreMHZ int `json:"instance_array_processor_core_mhz,omitempty" yaml:"processorCoreMhz,omitempty"` InstanceArrayProcessorCoreCount int `json:"instance_array_processor_core_count" yaml:"processorCoreCount"` InstanceArrayDiskCount int `json:"instance_array_disk_count" yaml:"diskCount"` 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" yaml:"firewallManaged"` 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"` InstanceArrayAdditionalWanIPv4JSON string `json:"instance_array_additional_wan_ipv4_json,omitempty" yaml:"additionalWanIPv4,omitempty"` InstanceArrayCustomVariables interface{} `json:"instance_array_custom_variables,omitempty" yaml:"customVariables,omitempty"` InstanceArrayFirmwarePolicies []int `json:"instance_array_firmware_policies,omitempty" yaml:"firmwarePolicies,omitempty"` DriveArrayIDBoot int `json:"drive_array_id_boot,omitempty" yaml:"drive_array_id_boot,omitempty"` }
InstanceArray object describes a collection of identical instances
func (InstanceArray) CreateOrUpdate ¶
func (ia InstanceArray) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (InstanceArray) Delete ¶
func (ia InstanceArray) Delete(client MetalCloudClient) error
Delete implements interface Applier
func (InstanceArray) Validate ¶
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"` InstanceArrayInterfaceChangeID int `json:"instance_array_interface_change_id,omitempty" yaml:"instance_array_interface_change_id,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" yaml:"instanceCount"` InstanceArrayRAMGbytes int `json:"instance_array_ram_gbytes,omitempty" yaml:"ramGBytes,omitempty"` InstanceArrayProcessorCount int `json:"instance_array_processor_count" yaml:"processorCount"` InstanceArrayProcessorCoreMHZ int `json:"instance_array_processor_core_mhz,omitempty" yaml:"processorCoreMhz,omitempty"` InstanceArrayProcessorCoreCount int `json:"instance_array_processor_core_count" yaml:"processorCoreCount"` InstanceArrayDiskCount int `json:"instance_array_disk_count" yaml:"diskCount"` 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" yaml:"firewallManaged"` 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"` InstanceArrayAdditionalWanIPv4JSON string `json:"instance_array_additional_wan_ipv4_json,omitempty" yaml:"additionalWanIPv4,omitempty"` InstanceArrayCustomVariables interface{} `json:"instance_array_custom_variables,omitempty" yaml:"customVariables,omitempty"` InstanceArrayFirmwarePolicies []int `json:"instance_array_firmware_policies" yaml:"firmwarePolicies"` DriveArrayIDBoot int `json:"drive_array_id_boot,omitempty" yaml:"drive_array_id_boot,omitempty"` }
InstanceArrayOperation object describes the changes that will be applied to an instance array
type InstanceCredentials ¶
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 ¶
func (b *InstanceCredentials) UnmarshalJSON(data []byte) error
UnmarshalJSON custom InstanceCredentials unmarshaling
type InstanceInterface ¶
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 []string `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 ¶
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 []string `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 ¶
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"` InstanceCustomVariables interface{} `json:"instance_custom_variables,omitempty" yaml:"customVariables,omitempty"` PreferredServerIDsJSON string `json:"preferred_server_ids_json,omitempty" yaml:"preferredServerIDs,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 MetalCloudClient ¶
type MetalCloudClient interface { // AFCSearch searches for AFCs AFCSearch(filter string, page_start int, page_end int) (*[]AFCSearchResult, error) // AFCGet Returns an AFC AFCGet(afcID int) (*AFC, error) // AFCRetryCall Retries an AFC AFCRetryCall(afcID int) error // AFCRetryCall Skips an AFC AFCSkip(afcID int) error // AFCDelete Skips an AFC AFCDelete(afcID int) error // AFCMarkForDeath Tries to kill an AFC AFCMarkForDeath(afcID int, typeOfMark string) error // CustomISOs returns custom ISOs for user CustomISOs(userID int) (*map[string]CustomISO, error) // CustomISOCreate creates a custom ISO record CustomISOCreate(customISO CustomISO) (*CustomISO, error) // CustomISOCreate creates a custom ISO record CustomISOGet(customISOID int) (*CustomISO, error) // CustomISODelete deletes a CustomISO with specified id CustomISODelete(customISOID int) error // CustomISODelete deletes a CustomISO with specified id CustomISOUpdate(customISOID int, customISO CustomISO) (*CustomISO, error) // CustomISOBootIntoServer boots a server with an iso. Returns an AFC group id CustomISOBootIntoServer(customISOID int, serverID int) (int, error) // Datacenters returns datacenters for all users Datacenters(onlyActive bool) (*map[string]Datacenter, error) // DatacentersByUserID returns datacenters for specific user DatacentersByUserID(userID int, onlyActive bool) (*map[string]Datacenter, error) // DatacentersByUserEmail returns datacenters by email DatacentersByUserEmail(userEmail string, onlyActive bool) (*map[string]Datacenter, error) // DatacenterGet returns details of a specific datacenter DatacenterGet(datacenterName string) (*Datacenter, error) // DatacenterGetForUserByEmail returns details of a specific datacenter DatacenterGetForUserByEmail(datacenterName string, userID string) (*Datacenter, error) // DatacenterGetForUserByID returns details of a specific datacenter DatacenterGetForUserByID(datacenterName string, userID int) (*Datacenter, error) // DatacenterConfigGet returns details of a specific datacenter DatacenterConfigGet(datacenterName string) (*DatacenterConfig, error) // DatacenterConfigUpdate Updates configuration information for a specified Datacenter. DatacenterConfigUpdate(datacenterName string, datacenterConfig DatacenterConfig) error // DatacenterCreate creates a new Datacenter DatacenterCreate(datacenter Datacenter, datacenterConfig DatacenterConfig) (*Datacenter, error) // DatacenterDelete deletes storage pools, subnet pools, and other resources then marks the datacenter as deleted. DatacenterDelete(datacenterName string) error // DatacenterAgentsConfigJSONDownloadURL returns the agent url (and automatically decrypts it) DatacenterAgentsConfigJSONDownloadURL(datacenterName string, decrypt bool) (string, error) // DriveArrays retrieves the list of drives arrays of an infrastructure DriveArrays(infrastructureID int) (*map[string]DriveArray, error) // DriveArraysByLabel retrieves the list of drives arrays of an infrastructure DriveArraysByLabel(infrastructureLabel string) (*map[string]DriveArray, error) // DriveArrayGet retrieves a DriveArray object with specified ids DriveArrayGet(driveArrayID int) (*DriveArray, error) // DriveArrayGetByLabel retrieves a DriveArray object with specified ids DriveArrayGetByLabel(driveArrayLabel string) (*DriveArray, error) // DriveArrayCreate array. Requires deploy. DriveArrayCreate(infrastructureID int, driveArray DriveArray) (*DriveArray, error) // DriveArrayCreateByLabel array. Requires deploy. DriveArrayCreateByLabel(infrastructureLabel string, driveArray DriveArray) (*DriveArray, error) // DriveArrayEdit array. Requires deploy. DriveArrayEdit(driveArrayID int, driveArrayOperation DriveArrayOperation) (*DriveArray, error) // DriveArrayEditByLabel array. Requires deploy. DriveArrayEditByLabel(driveArrayLabel string, driveArrayOperation DriveArrayOperation) (*DriveArray, error) // DriveArrayDelete DriveArrayDelete(driveArrayID int) error // DriveArrayDeleteByLabel DriveArrayDeleteByLabel(driveArrayLabel string) error // DriveArrayDrives DriveArrayDrives(driveArray int) (*map[string]Drive, error) // DriveArrayDrivesByLabel DriveArrayDrivesByLabel(driveArrLabel string) (*map[string]Drive, error) // DriveSnapshotCreate creates a drive snapshot DriveSnapshotCreate(driveID int) (*Snapshot, error) // DriveSnapshotDelete creates a drive snapshot DriveSnapshotDelete(driveSnapshotID int) error // DriveSnapshotRollback rolls a Drive back to a specified DriveSnapshot. The specified snapshot is not destroyed and can be reused. DriveSnapshotRollback(driveSnapshotID int) error // DriveSnapshotGet gets a drive snapshot DriveSnapshotGet(driveSnapshotID int) (*Snapshot, error) // DriveSnapshots retrieves a list of all the snapshot objects DriveSnapshots(driveID int) (*map[string]Snapshot, error) // ExternalConnections returns a list of external connections for the specified datacenter ExternalConnections(datacenterName string) (*map[int]ExternalConnection, error) // ExternalConnectionCreate creates an external connection. ExternalConnectionCreate(externalConnection ExternalConnection) (*ExternalConnection, error) // ExternalConnectionGet ExternalConnectionGet(externalConnectionID int) (*ExternalConnection, error) // ExternalConnectionGetByLabel ExternalConnectionGetByLabel(externalConnectionLabel string) (*ExternalConnection, error) // ExternalConnectionEdit connection. ExternalConnectionEdit(externalConnectionID int, externalConnection ExternalConnection) (*ExternalConnection, error) // ExternalConnectionEditByLabel connection. ExternalConnectionEditByLabel(externalConnectionLabel string, externalConnection ExternalConnection) (*ExternalConnection, error) // ExternalConnectionDelete connection. ExternalConnectionDelete(externalConnectionID int) error // ExternalConnectionDeleteByLabel connection. ExternalConnectionDeleteByLabel(externalConnectionLabel string) error // InfrastructureCreate creates an infrastructure InfrastructureCreate(infrastructure Infrastructure) (*Infrastructure, error) // Infrastructures returns a list of infrastructures Infrastructures() (*map[string]Infrastructure, error) // InfrastructureSearch searches for infrastructures with filtering support InfrastructureSearch(filter string) (*[]InfrastructuresSearchResult, error) // InfrastructureEdit InfrastructureEdit(infrastructureID int, infrastructureOperation InfrastructureOperation) (*Infrastructure, error) // InfrastructureEditByLabel InfrastructureEditByLabel(infrastructureLabel string, infrastructureOperation InfrastructureOperation) (*Infrastructure, error) // InfrastructureDelete elements. Requires deploy InfrastructureDelete(infrastructureID int) error // InfrastructureDeleteByLabel elements. Requires deploy InfrastructureDeleteByLabel(infrastructureLabel string) error // InfrastructureOperationCancel (undos) alterations done before deploy InfrastructureOperationCancel(infrastructureID int) error // InfrastructureOperationCancelByLabel (undos) alterations done before deploy InfrastructureOperationCancelByLabel(infrastructureLabel string) error // InfrastructureDeploy InfrastructureDeploy(infrastructureID int, shutdownOptions ShutdownOptions, allowDataLoss bool, skipAnsible bool) error // InfrastructureDeployByLabel InfrastructureDeployByLabel(infrastructureLabel string, shutdownOptions ShutdownOptions, allowDataLoss bool, skipAnsible bool) error // InfrastructureDeployWithOptions infrastructure. With options. InfrastructureDeployWithOptions(infrastructureID int, shutdownOptions ShutdownOptions, deployOptions *DeployOptions, allowDataLoss bool, skipAnsible bool) error // InfrastructureDeployWithOptionsByLabel infrastructure. With options. InfrastructureDeployWithOptionsByLabel(infrastructureLabel string, shutdownOptions ShutdownOptions, deployOptions *DeployOptions, allowDataLoss bool, skipAnsible bool) error // InfrastructureGet InfrastructureGet(infrastructureID int) (*Infrastructure, error) // InfrastructureGetByLabel InfrastructureGetByLabel(infrastructureLabel string) (*Infrastructure, error) // InfrastructureUserLimits InfrastructureUserLimits(infrastructureID int) (*map[string]interface{}, error) // InfrastructureUserLimitsByLabel InfrastructureUserLimitsByLabel(infrastructureLabel string) (*map[string]interface{}, error) // InstanceArrayInterfaceAttachNetwork attaches an InstanceArrayInterface to a Network InstanceArrayInterfaceAttachNetwork(instanceArrayID int, instanceArrayInterfaceIndex int, networkID int) (*InstanceArray, error) // InstanceArrayInterfaceDetach detaches an InstanceArrayInterface from any Network element that is attached to. InstanceArrayInterfaceDetach(instanceArrayID int, instanceArrayInterfaceIndex int) (*InstanceArray, error) // InstanceArrayGet InstanceArrayGet(instanceArrayID int) (*InstanceArray, error) // InstanceArrayGetByLabel InstanceArrayGetByLabel(instanceArrayLabel string) (*InstanceArray, error) // InstanceArrays InstanceArrays(infrastructureID int) (*map[string]InstanceArray, error) // InstanceArraysByLabel InstanceArraysByLabel(infrastructureLabel string) (*map[string]InstanceArray, error) // InstanceArrayCreate (colletion of identical instances). Requires Deploy. InstanceArrayCreate(infrastructureID int, instanceArray InstanceArray) (*InstanceArray, error) // InstanceArrayCreateByLabel (colletion of identical instances). Requires Deploy. InstanceArrayCreateByLabel(infrastructureLabel string, instanceArray InstanceArray) (*InstanceArray, error) // InstanceArrayEdit array. Requires deploy. InstanceArrayEdit(instanceArrayID int, instanceArrayOperation InstanceArrayOperation, bSwapExistingInstancesHardware *bool, bKeepDetachingDrives *bool, objServerTypeMatches *ServerTypeMatches, arrInstancesToBeDeleted *[]int) (*InstanceArray, error) // InstanceArrayEditByLabel array. Requires deploy. InstanceArrayEditByLabel(instanceArrayLabel string, instanceArrayOperation InstanceArrayOperation, bSwapExistingInstancesHardware *bool, bKeepDetachingDrives *bool, objServerTypeMatches *ServerTypeMatches, arrInstancesToBeDeleted *[]int) (*InstanceArray, error) // InstanceArrayDelete array. Requires deploy. InstanceArrayDelete(instanceArrayID int) error // InstanceArrayDeleteByLabel array. Requires deploy. InstanceArrayDeleteByLabel(instanceArrayLabel string) error // InstanceArrayStop InstanceArray. InstanceArrayStop(instanceArrayID int) (*InstanceArray, error) // InstanceArrayStopByLabel InstanceArray. InstanceArrayStopByLabel(instanceArrayLabel string) (*InstanceArray, error) // InstanceArrayStart InstanceArray. InstanceArrayStart(instanceArrayID int) (*InstanceArray, error) // InstanceArrayStartByLabel InstanceArray. InstanceArrayStartByLabel(instanceArrayLabel string) (*InstanceArray, error) // ClusterCreate ClusterCreate(infrastructureID int, cluster Cluster) (*Cluster, error) // ClusterCreateByLabel ClusterCreateByLabel(infrastructureLabel string, cluster Cluster) (*Cluster, error) // ClusterGet (app) with specified id ClusterGet(clusterID int) (*Cluster, error) // ClusterGetByLabel (app) with specified id ClusterGetByLabel(clusterLabel string) (*Cluster, error) // ClusterAppVMWareVSphere ClusterAppVMWareVSphere(clusterID int, decryptCredentials bool) (*AppVMWareVsphere, error) // ClusterAppVMWareVSphereByLabel ClusterAppVMWareVSphereByLabel(clusterLabel string, decryptCredentials bool) (*AppVMWareVsphere, error) // ClusterAppKubernetes ClusterAppKubernetes(clusterID int, decryptCredentials bool) (*AppKubernetes, error) // ClusterAppKubernetesByLabel ClusterAppKubernetesByLabel(clusterLabel string, decryptCredentials bool) (*AppKubernetes, error) // ClusterDelete array. Requires deploy. ClusterDelete(clusterID int) error // ClusterDeleteByLabel array. Requires deploy. ClusterDeleteByLabel(clusterLabel string) error // ClusterEdit array. Requires deploy. ClusterEdit(clusterId int, clusterOperation ClusterOperation) (*Cluster, error) // ClusterEditByLabel array. Requires deploy. ClusterEditByLabel(clusterLabel string, clusterOperation ClusterOperation) (*Cluster, error) // Clusters Clusters(infrastructureId int) (*map[string]Cluster, error) // ClustersByLabel ClustersByLabel(infrastructureLabel string) (*map[string]Cluster, error) // ClusterInstanceArrays ClusterInstanceArrays(clusterId int) (*map[string]InstanceArray, error) // ClusterInstanceArraysByLabel ClusterInstanceArraysByLabel(clusterLabel string) (*map[string]InstanceArray, error) // InstanceEdit instance. Requires deploy InstanceEdit(instanceID int, instanceOperation InstanceOperation) (*Instance, error) // InstanceEditByLabel instance. Requires deploy InstanceEditByLabel(instanceLabel string, instanceOperation InstanceOperation) (*Instance, error) // InstanceArrayInstances InstanceArray. InstanceArrayInstances(instanceArrayID int) (*map[string]Instance, error) // InstanceArrayInstancesByLabel InstanceArray. InstanceArrayInstancesByLabel(instanceArrayLabel string) (*map[string]Instance, error) // InstanceGet InstanceGet(instanceID int) (*Instance, error) // InstanceGetByLabel InstanceGetByLabel(instanceLabel string) (*Instance, error) // InstanceServerPowerSet InstanceServerPowerSet(instanceID int, operation string) error // InstanceServerPowerSetByLabel InstanceServerPowerSetByLabel(instanceLabel string, operation string) error // InstanceServerPowerGet InstanceServerPowerGet(instanceID int) (*string, error) // InstanceServerPowerGetByLabel InstanceServerPowerGetByLabel(instanceLabel string) (*string, error) // InstanceServerPowerGetBatch InstanceServerPowerGetBatch(infrastructureID int, instanceIDs []int) (*map[string]string, error) // InstanceServerPowerGetBatchByLabel InstanceServerPowerGetBatchByLabel(infrastructureLabel string, instanceIDs []int) (*map[string]string, error) // GetUserEmail returns the user configured for this connection GetUserEmail() string // GetEndpoint returns the endpoint configured for this connection GetEndpoint() string // GetUserID returns the ID of the user extracted from the API key GetUserID() int // NetworkGet object NetworkGet(networkID int) (*Network, error) // NetworkGetByLabel object NetworkGetByLabel(networkLabel string) (*Network, error) // Networks infrastructure Networks(infrastructureID int) (*map[string]Network, error) // NetworksByLabel infrastructure NetworksByLabel(infrastructureLabel string) (*map[string]Network, error) // NetworkCreate network NetworkCreate(infrastructureID int, network Network) (*Network, error) // NetworkCreateByLabel network NetworkCreateByLabel(infrastructureLabel string, network Network) (*Network, error) // NetworkEdit network NetworkEdit(networkID int, networkOperation NetworkOperation) (*Network, error) // NetworkEditByLabel network NetworkEditByLabel(networkLabel string, networkOperation NetworkOperation) (*Network, error) // NetworkDelete network. NetworkDelete(networkID int) error // NetworkDeleteByLabel network. NetworkDeleteByLabel(networkLabel string) error // NetworkJoin objects. NetworkJoin(networkID int, networkToBeDeletedID int) error // NetworkJoinByLabel objects. NetworkJoinByLabel(networkLabel string, networkToBeDeletedID int) error // NetworkProfiles returns a list of network profiles for the specified datacenter NetworkProfiles(datacenterName string) (*map[int]NetworkProfile, error) // NetworkProfileCreate creates a network profile. NetworkProfileCreate(datacenterName string, networkProfile NetworkProfile) (*NetworkProfile, error) InstanceArrayNetworkProfileSet(instanceArrayID int, networkID int, networkProfileID int) (*map[int]int, error) InstanceArrayNetworkProfileClear(instanceArrayID int, networkID int) error NetworkProfileListByInstanceArray(instanceArrayID int) (*map[int]int, error) // NetworkProfileGet NetworkProfileGet(networkProfileID int) (*NetworkProfile, error) // NetworkProfileGetByLabel NetworkProfileGetByLabel(networkProfileLabel string) (*NetworkProfile, error) // NetworkProfileUpdate profile. NetworkProfileUpdate(networkProfileID int, networkProfile NetworkProfile) (*NetworkProfile, error) // NetworkProfileUpdateByLabel profile. NetworkProfileUpdateByLabel(networkProfileLabel string, networkProfile NetworkProfile) (*NetworkProfile, error) // NetworkProfileDelete profile. NetworkProfileDelete(networkProfileID int) error // NetworkProfileDeleteByLabel profile. NetworkProfileDeleteByLabel(networkProfileLabel string) error // OSAssetCreate creates a osAsset object OSAssetCreate(osAsset OSAsset) (*OSAsset, error) // OSAssetDelete permanently destroys a OSAsset. OSAssetDelete(osAssetID int) error // OSAssetUpdate updates a osAsset OSAssetUpdate(osAssetID int, osAsset OSAsset) (*OSAsset, error) // OSAssetGet returns a OSAsset specified by nOSAssetID. The OSAsset's protected value is never returned. OSAssetGet(osAssetID int) (*OSAsset, error) // OSAssetGetStoredContent returns the content of an OSAsset specified by nOSAssetID. OSAssetGetStoredContent(osAssetID int) (string, error) // 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. OSAssets() (*map[string]OSAsset, error) // OSAssetMakePublic makes an OS Asset public OSAssetMakePublic(osAssetID int) (*OSAsset, error) // OSAssetMakePrivate makes an OS Asset private and owned by the current user OSAssetMakePrivate(osAssetID int, userID int) (*OSAsset, error) // OSTemplateCreate creates a osTemplate object OSTemplateCreate(osTemplate OSTemplate) (*OSTemplate, error) // OSTemplateDelete permanently destroys a OSTemplate. OSTemplateDelete(osTemplateID int) error // OSTemplateUpdate updates a osTemplate OSTemplateUpdate(osTemplateID int, osTemplate OSTemplate) (*OSTemplate, error) // OSTemplateGet returns a OSTemplate specified by nOSTemplateID. The OSTemplate's protected value is never returned. OSTemplateGet(osTemplateID int, decryptPasswd bool) (*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. OSTemplates() (*map[string]OSTemplate, error) // OSTemplatesNetwork retrieves a list of all the network OSTemplate objects which a specified User is allowed to see through ownership or delegation. OSTemplatesNetwork() (*map[string]OSTemplate, error) // OSTemplateOSAssets returns the OSAssets assigned to an OSTemplate. OSTemplateOSAssets(osTemplateID int) (*map[string]OSTemplateOSAssetData, error) // OSTemplateAddOSAsset adds an asset to a template OSTemplateAddOSAsset(osTemplateID int, osAssetID int, path string, variablesJSON string) error // OSTemplateRemoveOSAsset removes an asset from a template OSTemplateRemoveOSAsset(osTemplateID int, osAssetID int) error // OSTemplateUpdateOSAssetPath updates an asset mapping OSTemplateUpdateOSAssetPath(osTemplateID int, osAssetID int, path string) error // OSTemplateUpdateOSAssetVariables updates an asset variable OSTemplateUpdateOSAssetVariables(osTemplateID int, osAssetID int, variablesJSON string) error // OSTemplateMakePublic makes a template public OSTemplateMakePublic(osTemplateID int) error // OSTemplateMakePrivate makes a template private OSTemplateMakePrivate(osTemplateID int, userID int) error // SecretCreate creates a secret SecretCreate(secret Secret) (*Secret, error) // SecretDelete Permanently destroys a Secret. SecretDelete(secretID int) error // SecretUpdate This function allows updating the secret_usage, secret_label and secret_base64 of a Secret SecretUpdate(secretID int, secret Secret) (*Secret, error) // SecretGet returns a Secret specified by nSecretID. The secret's protected value is never returned. SecretGet(secretID int) (*Secret, error) // 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. Secrets(usage string) (*map[string]Secret, error) // ServersSearch searches for servers matching certain filter ServersSearch(filter string) (*[]ServerSearchResult, error) // ServerGetByUUID retrieves information about a specified Server by using the server's UUID ServerGetByUUID(serverUUID string, decryptPasswd bool) (*Server, error) // ServerGet returns a server's details ServerGet(serverID int, decryptPasswd bool) (*Server, error) // ServerCreate manually creates a server record. DEPRECATED ServerCreate(server Server, autoGenerate bool) (int, error) // ServerUnmanagedImport creates an unmanaged server ServerUnmanagedImport(server ServerCreateUnmanaged) (*Server, error) // ServerUnmanagedImportBatch Imports multiple unmanaged servers ServerUnmanagedImportBatch(servers []ServerCreateUnmanaged) (*map[string]Server, error) // ServerCreateAndRegister manually creates and registers a server ServerCreateAndRegister(serverCreateAndRegister ServerCreateAndRegister) (int, error) // ServerEditComplete - perform a complete edit ServerEditComplete(serverID int, server Server) (*Server, error) // ServerEditIPMI - edit only IPMI settings ServerEditIPMI(serverID int, server Server, serverUpdateInBMC bool) (*Server, error) // ServerEditAvailability - edit only server availability settings ServerEditAvailability(serverID int, server Server) (*Server, error) // ServerEdit edits a server record ServerEdit(serverID int, serverEditType string, server Server) (*Server, error) // ServerEditProperty edits a specific property from the server record // this is used instead of the server edit function as it does not require a marshal-unmarshal to and form the server object // which sometimes is broken due to frequent changes on the server side ServerEditProperty(serverID int, serverPropertyToEdit string, serverPropertyValue interface{}) error // ServerDelete deletes all the information about a specified Server. ServerDelete(serverID int, skipIPMI bool) error // ServerDecomission decomissions the server row and deletes all child rows. ServerDecomission(serverID int, skipIPMI bool) 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 ServerFirmwareComponentUpgrade(serverID int, serverComponentID int, serverComponentFirmwareNewVersion string, firmwareBinaryURL string) error // ServerFirmwareUpgrade creates a firmware upgrading session that affects all components from the specified server that have a target version set and are updatable. ServerFirmwareUpgrade(serverID int) error // ServerFirmwareComponentTargetVersionSet Sets a firmware target version for the upgrading process. The system will apply the upgrade at the next upgrading session. ServerFirmwareComponentTargetVersionSet(serverComponentID int, serverComponentFirmwareNewVersion string) error // 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. ServerFirmwareComponentTargetVersionUpdate(serverComponentID int) 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. ServerFirmwareComponentTargetVersionAdd(serverComponentID int, version string, firmareBinaryURL string) error // ServerComponentGet returns a server's component's details ServerComponentGet(serverComponentID int) (*ServerComponent, error) // ServerComponents searches for servers matching certain filter ServerComponents(serverID int, filter string) (*[]ServerComponent, error) // ServerPowerSet reboots or powers on a server ServerPowerSet(serverID int, operation string) error // ServerReregister triggers a re-register of a server ServerReregister(serverID int, bSkipIPMI bool, bUseBDKAgent bool) error // ServerStatusUpdate alters the status of a server ServerStatusUpdate(serverID int, status string) error // ServerEditRack returns a server's rack info details ServerEditRack(serverID int, serverEditRack ServerEditRack) (*Server, error) // ServerEditInventory returns a server's inventory details ServerEditInventory(serverID int, serverEditInventory ServerEditInventory) (*Server, error) // InstanceServerReplace replaces a server associated to an instance. Returns an AFC Group ID to be used in the AFC Deploy Viewer. InstanceServerReplace(instanceID int, serverID int) (int, error) // ServerDefaultCredentialsAdd Adds BMC credentials to the default credentials list for the ZTP process ServerDefaultCredentialsAdd(credentials []ServerDefaultCredentials) error // ServerDefaultCredentials retrieves the default credentials for server BMCs for the ZTP process for a given datacenter ServerDefaultCredentials(datacenter_name string, decryptPasswd bool) (*[]ServerDefaultCredentials, error) // ServerDefaultCredentialsRemove Removes BMC credentials to the default credentials list for the ZTP process ServerDefaultCredentialsRemove(default_credentials_id []int) error // ServerFirmwarePolicyGet returns a server policy's details ServerFirmwarePolicyGet(serverFirmwarePolicyID int) (*ServerFirmwareUpgradePolicy, error) // ServerFirmwareUpgradePolicyCreate creates a server firmware policy. ServerFirmwareUpgradePolicyCreate(serverFirmwarePolicy *ServerFirmwareUpgradePolicy) (*ServerFirmwareUpgradePolicy, error) // ServerFirmwarePolicyAddRule add a new rule for a policy. ServerFirmwarePolicyAddRule(serverFirmwarePolicyID int, serverRule *ServerFirmwareUpgradePolicyRule) (*ServerFirmwareUpgradePolicy, error) // ServerFirmwarePolicyDeleteRule deletes a rule from a policy. ServerFirmwarePolicyDeleteRule(serverFirmwarePolicyID int, serverRule *ServerFirmwareUpgradePolicyRule) error // ServerFirmwareUpgradePolicyDelete deletes all the information about a specified ServerFirmwareUpgradePolicy. ServerFirmwareUpgradePolicyDelete(serverFirmwarePolicyID int) error ServerFirmwareUgradePolicyInstanceArraySet(serverFirmwarePolicyID int, instanceArrayList []int) error // ServerFirmwareUpgradePolicyActionSet sets the upgrade action for a specified ServerFirmwareUpgradePolicy. ServerFirmwareUpgradePolicyActionSet(serverFirmwarePolicyID int, serverFirmwarePolicyAction string) error // ServerFirmwareUpgradePolicyLabelSet sets the label for a specified ServerFirmwareUpgradePolicy. ServerFirmwareUpgradePolicyLabelSet(serverFirmwarePolicyID int, serverFirmwarePolicyLabel string) 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. ServerTypesMatchHardwareConfiguration(datacenterName string, hardwareConfiguration HardwareConfiguration) (*map[int]ServerType, error) // ServerTypeDatacenter retrieves all the server type IDs for servers found in a specified Datacenter ServerTypeDatacenter(datacenterName string) (*[]int, error) // ServerTypes retrieves all ServerType objects from the database. ServerTypes(bOnlyAvailable bool) (*map[int]ServerType, error) // ServerTypesForDatacenter retrieves all ServerType objects from the database. ServerTypesForDatacenter(datacenterName string, bOnlyAvailable bool) (*map[int]ServerType, error) // ServerTypeGet id ServerTypeGet(serverTypeID int) (*ServerType, error) // ServerTypeGetByLabel id ServerTypeGetByLabel(serverTypeLabel string) (*ServerType, error) // ServerTypesMatches Instance's configuration, using the properties specified in the objHardwareConfiguration object, and returns the number of compatible servers for each server_type_id. ServerTypesMatches(infrastructureID int, hardwareConfiguration HardwareConfiguration, instanceArrayID *int, bAllowServerSwap bool) (*map[string]ServerType, error) // ServerTypesMatchesByLabel Instance's configuration, using the properties specified in the objHardwareConfiguration object, and returns the number of compatible servers for each server_type_id. ServerTypesMatchesByLabel(infrastructureLabel string, hardwareConfiguration HardwareConfiguration, instanceArrayID *int, bAllowServerSwap bool) (*map[string]ServerType, error) SharedDrives(infrastructureID int) (*map[string]SharedDrive, error) SharedDriveCreate(infrastructureID int, sharedDrive SharedDrive) (*SharedDrive, error) SharedDriveCreateByLabel(infrastructureLabel string, sharedDrive SharedDrive) (*SharedDrive, error) SharedDriveGet(sharedDriveID int) (*SharedDrive, error) SharedDriveGetByLabel(sharedDriveLabel string) (*SharedDrive, error) SharedDriveEdit(sharedDriveID int, sharedDriveOperation SharedDriveOperation) (*SharedDrive, error) SharedDriveEditByLabel(sharedDriveLabel string, sharedDriveOperation SharedDriveOperation) (*SharedDrive, error) SharedDriveDelete(sharedDriveID int) error SharedDriveDeleteByLabel(sharedDriveLabel string) error // StageDefinitionCreate creates a stageDefinition StageDefinitionCreate(stageDefinition StageDefinition) (*StageDefinition, error) // StageDefinitionDelete Permanently destroys a StageDefinition. StageDefinitionDelete(stageDefinitionID int) error // StageDefinitionUpdate This function allows updating the stageDefinition_usage, stageDefinition_label and stageDefinition_base64 of a StageDefinition StageDefinitionUpdate(stageDefinitionID int, stageDefinition StageDefinition) (*StageDefinition, error) // StageDefinitionGet returns a StageDefinition specified by nStageDefinitionID. The stageDefinition's protected value is never returned. StageDefinitionGet(stageDefinitionID int) (*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. StageDefinitions() (*map[string]StageDefinition, error) // StoragePoolSearch searches for storage pools matching certain filter StoragePoolSearch(filter string) (*[]StoragePoolSearchResult, error) // StoragePoolGet returns a storage pool's details StoragePoolGet(serverID int, decryptPasswd bool) (*StoragePool, error) SubnetGet(subnetID int) (*Subnet, error) SubnetCreate(subnet Subnet) (*Subnet, error) SubnetDelete(subnetID int) error // SubnetPoolCreateOrUpdate creates or updates a subnet pool SubnetPoolCreateOrUpdate(subnetPool SubnetPool) (*SubnetPool, error) SubnetOOBGet(subnetOOBID int) (*SubnetOOB, error) // SubnetOOBGetByLabel retrieves information regarding a specified Subnet by label. SubnetOOBGetByLabel(subnetOOBLabel string) (*SubnetOOB, error) SubnetOOBCreate(subnetOOB SubnetOOB) (*SubnetOOB, error) SubnetOOBDelete(subnetOOBID int) error SubnetOOBDeleteByLabel(subnetOOBLabel string) error // SubnetOOBSearch retrieves all OOB subnets registered in the database with the specified filter SubnetOOBSearch(filter string) (*[]SubnetOOB, error) // SubnetPoolCreate creates a new SubnetPool. SubnetPoolCreate(subnetPool SubnetPool) (*SubnetPool, error) // SubnetPoolGet retrieves information regarding a specified SubnetPool. SubnetPoolGet(subnetPoolID int) (*SubnetPool, error) // SubnetPoolGetByLabel retrieves information regarding a specified SubnetPool by label. SubnetPoolGetByLabel(subnetPoolLabel string) (*SubnetPool, error) // SubnetPoolPrefixSizesStats retrieves information regarding the utilization of a specified SubnetPool. SubnetPoolPrefixSizesStats(subnetPoolID int) (*SubnetPoolUtilization, error) // SubnetPoolDelete deletes the specified SubnetPool SubnetPoolDelete(subnetPoolID int) error SubnetPoolDeleteByLabel(subnetPoolLabel string) error // SubnetPools retrieves all switch devices registered in the database. SubnetPools() (*[]SubnetPool, error) // SubnetPoolSearch retrieves all switch devices registered in the database with the specified filter SubnetPoolSearch(filter string) (*[]SubnetPool, error) // SwitchDeviceGet Retrieves information regarding a specified SwitchDevice. SwitchDeviceGet(networkEquipmentID int, decryptPasswd bool) (*SwitchDevice, error) // SwitchDeviceGetByIdentifierString Retrieves information regarding a specified SwitchDevice by identifier string. SwitchDeviceGetByIdentifierString(networkEquipmentIdentifierString string, decryptPasswd bool) (*SwitchDevice, error) // SwitchDeviceCreate Creates a record for a new SwitchDevice. SwitchDeviceCreate(switchDevice SwitchDevice, bOverwriteWithHostnameFromFetchedSwitch bool) (*SwitchDevice, error) // SwitchDeviceDelete deletes a specified switch device and its registered interfaces. SwitchDeviceDelete(networkEquipmentID int) error // SwitchDevices retrieves all switch devices registered in the database. SwitchDevices(datacenter string, switchType string) (*map[string]SwitchDevice, error) // SwitchDevicesInDatacenter retrieves all switch devices in a datacenter SwitchDevicesInDatacenter(datacenter string) (*map[string]SwitchDevice, error) // SwitchDeviceUpdate updates an existing switch configuration SwitchDeviceUpdate(networkEquipmentID int, switchDevice SwitchDevice, bOverwriteWithHostnameFromFetchedSwitch bool) (*SwitchDevice, error) // SwitchDeviceControllerGet retrieves information regarding a specified SwitchDeviceController. SwitchDeviceControllerGet(networkEquipmentControllerID int, decryptPasswd bool) (*SwitchDeviceController, error) // SwitchDeviceControllerGetByIdentifierString retrieves information regarding a specified SwitchDeviceController by identifier string. SwitchDeviceControllerGetByIdentifierString(networkEquipmentIdentifierString string, decryptPasswd bool) (*SwitchDeviceController, error) // SwitchDeviceControllerCreate creates a record for a new SwitchDeviceController and for the switches that were detected and created. SwitchDeviceControllerCreate(switchDeviceController SwitchDeviceController) (*SwitchDeviceController, error) // SwitchDeviceControllers retrieves all switch controller devices registered in the database. // If a datacenter is specified, only the switch device controllers for that datacenter are returned. SwitchDeviceControllers(datacenter string) (*map[int]SwitchDeviceController, error) // SwitchDeviceControllers retrieves all switch devices registered in the database. SwitchDeviceControllerSwitches(networkEquipmentIdentifierString string) (map[int]SwitchDevice, error) // SwitchDeviceUpdate updates an existing switch configuration SwitchDeviceControllerUpdate(networkEquipmentControllerID int, networkEquipmentControllerData interface{}) (*SwitchDeviceController, error) // Creates multiple network equipment controller records, based on the output from Switch Controller. // Returns the created switches. // Please note that this may take some time, typically a few seconds. SwitchDeviceControllerSync(networkEquipmentControllerID int) (*map[int]SwitchDevice, error) // SwitchDeviceControllerDelete deletes a specified switch device controller. The switches belonging to the controller need to be deleted first. SwitchDeviceControllerDelete(networkEquipmentControllerID int) error // SwitchDeviceDefaults retrieves all switch defaults registered in the database for a datacenter. SwitchDeviceDefaults(datacenter string) (*[]SwitchDeviceDefaults, error) // SwitchDeviceDefaultsCreate adds records for a new set of switch device defaults. SwitchDeviceDefaultsCreate(switchDeviceDefaultsArray []SwitchDeviceDefaults) error // SwitchDeviceDefaultsDelete removes records for the specified switch device defaults. SwitchDeviceDefaultsDelete(switchDeviceDefaultsIDs []int) error // SwitchDeviceLinks Returns all the switch device links found in the database. SwitchDeviceLinks() (*map[int]SwitchDeviceLink, error) // SwitchDeviceLinkCreate Creates a record for a new SwitchDevice. SwitchDeviceLinkCreate(networkEquipmentID1 int, networkEquipmentID2 int, networkEquipmentLinkType string) (*SwitchDeviceLink, error) // SwitchDeviceLinkGet Retrieves information regarding a specified switch device link SwitchDeviceLinkGet(networkEquipmentID1 int, networkEquipmentID2 int, linkType string) (*SwitchDeviceLink, error) // SwitchDeviceLinkDelete deletes a specified switch device and its registered interfaces. SwitchDeviceLinkDelete(networkEquipmentID1 int, networkEquipmentID2 int, linkType string) error // SwitchInterfaceSearch searches for server interfaces filtering on various elements such as switch id or server id SwitchInterfaceSearch(filter string) (*[]SwitchInterfaceSearchResult, error) // UserGet describes returns user account specifications. UserGet(userID int) (*User, error) // UserGetByEmail describes returns user account specifications. UserGetByEmail(userLabel string) (*User, error) // UserEmailToUserID returns the user id of an user given an email UserEmailToUserID(userEmail string) (*int, error) // UserSearch searches for users with filtering support UserSearch(filter string) (*[]UsersSearchResult, error) // VariableCreate creates a variable object VariableCreate(variable Variable) (*Variable, error) // VariableDelete permanently destroys a Variable. VariableDelete(variableID int) error // VariableUpdate updates a variable VariableUpdate(variableID int, variable Variable) (*Variable, error) // VariableGet returns a Variable specified by nVariableID. The Variable's protected value is never returned. VariableGet(variableID int) (*Variable, error) // 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. Variables(usage string) (*map[string]Variable, error) // VolumeTemplates retrives the list of available templates VolumeTemplates() (*map[string]VolumeTemplate, error) // VolumeTemplateMakePublic makes a template public VolumeTemplateMakePublic(volumeTemplateID int, bootstrapFunctionName string) error // VolumeTemplateMakePrivate makes a template private VolumeTemplateMakePrivate(volumeTemplateID int, userID int) error // VolumeTemplateGet template VolumeTemplateGet(volumeTemplateID int) (*VolumeTemplate, error) // VolumeTemplateGetByLabel template VolumeTemplateGetByLabel(volumeTemplateLabel string) (*VolumeTemplate, error) // VolumeTemplateCreateFromDrive drive VolumeTemplateCreateFromDrive(driveID int, objVolumeTemplate VolumeTemplate) (*VolumeTemplate, error) // VolumeTemplateCreateFromDriveByLabel drive VolumeTemplateCreateFromDriveByLabel(driveLabel string, objVolumeTemplate VolumeTemplate) (*VolumeTemplate, error) // WorkflowCreate creates a workflow WorkflowCreate(workflow Workflow) (*Workflow, error) // WorkflowDelete Permanently destroys a Workflow. WorkflowDelete(workflowID int) error // WorkflowUpdate This function allows updating the workflow_usage, workflow_label and workflow_base64 of a Workflow WorkflowUpdate(workflowID int, workflow Workflow) (*Workflow, error) // WorkflowGet returns a Workflow specified by nWorkflowID. The workflow's protected value is never returned. WorkflowGet(workflowID int) (*Workflow, error) // Workflows retrieves a list of all the Workflow objects which a specified User is allowed to see through ownership or delegation. Workflows() (*map[string]Workflow, error) // WorkflowsWithUsage retrieves a list of all the Workflow objects which the current User is allowed to see through ownership or delegation with a specific usage. WorkflowsWithUsage(usage string) (*map[string]Workflow, error) // WorkflowStages retrieves a list of all the StageDefinitions objects in this workflow WorkflowStages(workflowID int) (*[]WorkflowStageDefinitionReference, error) // WorkflowStageGet returns a StageDefinition specified by workflowStageID. WorkflowStageGet(workflowStageID int) (*WorkflowStageDefinitionReference, error) // WorkflowStageAddAsNewRunLevel adds a new stage in this workflow WorkflowStageAddAsNewRunLevel(workflowID int, stageDefinitionID int, destinationRunLevel int) error // WorkflowStageAddIntoRunLevel adds a new stage in this workflow WorkflowStageAddIntoRunLevel(workflowID int, stageDefinitionID int, destinationRunLevel int) error // WorkflowMoveAsNewRunLevel moves a stage in this workflow from a runlevel to another WorkflowMoveAsNewRunLevel(workflowID int, stageDefinitionID int, sourceRunLevel int, destinationRunLevel int) error // WorkflowMoveIntoRunLevel moves a stage in this workflow from a runlevel to another WorkflowMoveIntoRunLevel(workflowID int, stageDefinitionID int, sourceRunLevel int, destinationRunLevel int) error // WorkflowStageDelete deletes a stage from a workflow entirelly WorkflowStageDelete(workflowStageID int) error // InfrastructureDeployCustomStageAddIntoRunlevel adds a stage into a runlevel InfrastructureDeployCustomStageAddIntoRunlevel(infraID int, stageID int, runLevel int, stageRunMoment string) error // InfrastructureDeployCustomStageDelete delete a stage InfrastructureDeployCustomStageDelete(nInfrastructureCustomDeployStageID int) 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. InfrastructureDeployCustomStages(infraID int, stageDefinitionType string) (*[]WorkflowStageAssociation, error) }
MetalCloudClient interface used for mocking and abstracting the backend
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 ¶
func (n Network) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (Network) Delete ¶
func (n Network) Delete(client MetalCloudClient) error
Delete implements interface Applier
type NetworkOperatingSystem ¶
type NetworkOperatingSystem struct { OperatingSystemArchitecture string `json:"operating_system_architecture,omitempty" yaml:"architecture,omitempty"` OperatingSystemDatacenterName string `json:"operating_system_datacenter_name,omitempty" yaml:"datacenter_name,omitempty"` OperatingSystemMachine string `json:"operating_system_machine,omitempty" yaml:"machine,omitempty"` OperatingSystemSwitchDriver string `json:"operating_system_switch_driver,omitempty" yaml:"switchDriver,omitempty"` OperatingSystemSwitchRole string `json:"operating_system_switch_role,omitempty" yaml:"switchRole,omitempty"` OperatingSystemVendor string `json:"operating_system_vendor,omitempty" yaml:"vendor,omitempty"` OperatingSystemVersion string `json:"operating_system_version,omitempty" yaml:"version,omitempty"` }
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" yaml:"LANAutoAllocateIPs"` 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 NetworkProfile ¶
type NetworkProfile struct { NetworkProfileID int `json:"network_profile_id,omitempty" yaml:"id,omitempty"` NetworkProfileLabel string `json:"network_profile_label,omitempty" yaml:"label,omitempty"` DatacenterName string `json:"datacenter_name,omitempty" yaml:"dc,omitempty"` NetworkProfileIsPublic bool `json:"network_profile_is_public,omitempty" yaml:"networkProfileIsPublic,omitempty"` NetworkType string `json:"network_type,omitempty" yaml:"networkType,omitempty"` NetworkProfileVLANs []NetworkProfileVLAN `json:"network_profile_vlans" yaml:"vlans"` NetworkProfileCreatedTimestamp string `json:"nework_profile_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` NetworkProfileUpdatedTimestamp string `json:"nework_profile_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` }
NetworkProfile object describes a network profile
type NetworkProfileVLAN ¶
type NetworkProfileVLAN struct { VlanID *int `json:"vlan_id" yaml:"vlanID"` PortMode string `json:"port_mode,omitempty" yaml:"portMode,omitempty"` ProvisionSubnetGateways bool `json:"provision_subnet_gateways" yaml:"provisionSubnetGateways"` ProvisionVXLAN bool `json:"provision_vxlan" yaml:"provisionVXLAN"` ExternalConnectionIDs []int `json:"external_connection_ids" yaml:"extConnectionIDs"` SubnetPools []NetworkProfileSubnetPool `json:"subnet_pools" yaml:"subnetPools"` }
NetworkProfileVLAN object describes a VLAN
type OSAsset ¶
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"` OSAssetTemplateType string `json:"os_asset_template_type,omitempty" yaml:"templateType,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 ¶
func (asset OSAsset) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (OSAsset) Delete ¶
func (asset OSAsset) Delete(client MetalCloudClient) error
Delete implements interface Applier
type OSTemplate ¶
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"` VolumeTemplateIsForSwitch bool `json:"volume_template_is_for_switch,omitempty"` VolumeTemplateImageBuildRequired bool `json:"volume_template_image_build_required,omitempty" yaml:"isImageBuildRequired,omitempty"` VolumeTemplateProvisionViaOOB bool `json:"volume_template_provision_via_oob,omitempty" yaml:"provisionViaOOB,omitempty"` VolumeTemplateBootMethodsSupported string `json:"volume_template_boot_methods_supported,omitempty" yaml:"bootMethods,omitempty"` VolumeTemplateOsBootstrapFunctionName string `json:"volume_template_os_bootstrap_function_name,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" yaml:"OSAssetIDBootloaderLocalInstall"` OSAssetBootloaderOSBoot int `json:"os_asset_id_bootloader_os_boot" yaml:"OSAssetIDBootloaderOSBoot"` VolumeTemplateVariablesJSON string `json:"volume_template_variables_json,omitempty" yaml:"variablesJSON,omitempty"` VolumeTemplateNetworkOperatingSystem *NetworkOperatingSystem `json:"volume_template_network_operating_system,omitempty" yaml:"networkOS,omitempty"` VolumeTemplateVersion string `json:"volume_template_version,omitempty"` VolumeTemplateOSReadyMethod string `json:"volume_template_os_ready_method,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 ¶
func (t OSTemplate) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (OSTemplate) Delete ¶
func (t OSTemplate) Delete(client MetalCloudClient) error
Delete implements interface Applier
func (OSTemplate) Validate ¶
func (t OSTemplate) Validate() error
Validate implements interface Applier
type OSTemplateCredentials ¶
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 ¶
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 Option82ToIPMapping ¶
func (*Option82ToIPMapping) UnmarshalJSON ¶
func (m *Option82ToIPMapping) UnmarshalJSON(data []byte) error
type RDP ¶
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 ¶
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 ¶
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 ¶
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 ¶
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 ¶
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 interface{} `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 ¶
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 ¶
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 ¶
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 ¶
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 ¶
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 ¶
func (s Secret) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (Secret) Delete ¶
func (s Secret) Delete(client MetalCloudClient) error
Delete implements interface Applier
type Server ¶
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" yaml:"disks,omitempty"` ServerDiskCount int `json:"server_disk_count" yaml:"diskCount,omitempty"` ServerDiskSizeMbytes int `json:"server_disk_size_mbytes" yaml:"diskSizeMbytes"` ServerDiskType string `json:"server_disk_type,omitempty" yaml:"diskType,omitempty"` ServerRackName *string `json:"server_rack_name" yaml:"rackName"` ServerRackPositionLowerUnit *string `json:"server_rack_position_lower_unit" yaml:"rackPositionLowerUnit"` ServerRackPositionUpperUnit *string `json:"server_rack_position_upper_unit" yaml:"rackPositionUpperUnit"` ServerRackId *string `json:"server_rack_id" yaml:"rackID"` ChassisRackId *int `json:"chassis_rack_id" yaml:"chassisRackID"` ServerInventoryId *string `json:"server_inventory_id" yaml:"inventoryId"` 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"` ServerSupportsOOBProvisioning bool `json:"server_supports_oob_provisioning" yaml:"supportsOOBProvisioning"` ServerTags []string `json:"server_tags" yaml:"tags"` 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"` ServerIPMInternalPasswordEncrypted string `json:"server_ipmi_internal_password_encrypted,omitempty" yaml:"IPMIPasswordEncrypted,omitempty"` ServerIPMCredentialsNeedUpdate bool `json:"server_ipmi_credentials_need_update" yaml:"IPMICredentialsNeedUpdate"` ServerVendorSKUID string `json:"server_vendor_sku_id,omitempty" yaml:"vendorSKU,omitempty"` ServerComments string `json:"server_comments" yaml:"comments,omitempty"` ServerBIOSInfoJSON string `json:"server_bios_info_json" yaml:"BIOSInfoJson"` ServerCustomJSON *string `json:"server_custom_json" yaml:"CustomJSON"` ServerInfoJSON *string `json:"server_info_json" yaml:"infoJSON"` ServerDetailXML string `json:"server_details_xml" yaml:"serverDetailsXML"` ServerInstanceCustomJSON *string `json:"server_instance_custom_json" yaml:"instanceCustomJSON"` ServerSupportsSOL bool `json:"server_supports_sol" yaml:"supportsSOL"` ServerILOResetTimestamp string `json:"server_ilo_reset_timestamp" yaml:"ILOResetTimestamp"` ServerBootLastUpdateTimestamp string `json:"server_boot_last_update_timestamp" yaml:"BootLastUpdateTimestamp"` ServerPowerStatusUpdateTimestamp string `json:"server_power_status_last_update_timestamp" yaml:"PowerStatusUpdateTimestamp"` SubnetOOBID int `json:"subnet_oob_id" yaml:"subnetOOBID"` ServerDHCPStatus string `json:"server_dhcp_status" yaml:"subnetDHCPStatus"` ServerBMCMACAddress string `json:"server_bmc_mac_address" yaml:"BMCMACAddress"` ServerCommunityPasswordDCEncrypted string `json:"snmp_community_password_dcencrypted" yaml:"SNMPCommunityPaswordDCencrypted"` ServerMgmtSNMPCommunityPasswordDCEncrypted string `json:"server_mgmt_snmp_community_password_dcencrypted" yaml:"MGMTNMPCommunityPasswordDCEncrypted"` ServerMgmtSNMPVersion int `json:"server_mgmt_snmp_version" yaml:"MGMTSNMPVersion"` ServerMgmtSNMPPort int `json:"server_mgmt_snmp_port" yaml:"MGMTSNMPPort"` ServerSecureBootIsEnabled bool `json:"server_secure_boot_is_enabled" yaml:"secureBootIsEnabled"` ServerOOBIndex int `json:"subnet_oob_index" yaml:"subnetOOBIndex"` ServerIPMIVersion string `json:"server_ipmi_version" yaml:"subnetIPMIVersion"` ServerCreatedTimestamp string `json:"server_created_timestamp" yaml:"createdTimestamp"` ServerLastCleanupStart string `json:"server_last_cleanup_start" yaml:"lastCleanupStart"` ServerVersionInfoJSON string `json:"server_vendor_info_json" yaml:"vendorInfoJSON"` ServerChipsetName string `json:"server_chipset_name" yaml:"chipsetName"` ServerRequiresReregister bool `json:"server_requires_reregister" yaml:"requiresReregiter"` ServerGPUCount int `json:"server_gpu_count" yaml:"GPUCount"` ServerGPUModel string `json:"server_gpu_model" yaml:"GPUModel"` ServerGPUVendor string `json:"server_gpu_vendor" yaml:"GPUVendor"` ServerAllocationTimestamp string `json:"server_allocation_timestamp" yaml:"allocationTimestamp"` ServerDHCPRelaySecurityIsEnabled bool `json:"server_dhcp_relay_security_is_enabled" yaml:"DHCPRelaySecurityIsEnabled"` ServerRequiresManualCleaning bool `json:"server_requires_manual_cleaning" yaml:"requiresManualCleaning"` ServerCleanupInProgress bool `json:"server_cleanup_in_progress" yaml:"cleanupInProgress"` ServerSupportsVirtualMedia bool `json:"server_supports_virtual_media" yaml:"serverSupportsVirtualMedia"` ServerIsInDiagnostics bool `json:"server_is_in_diagnostics" yaml:"serverIsInDiagnostics"` ServerDiskWipe bool `json:"server_disk_wipe" yaml:"diskWipe"` ServerMetricsMetadataJSON *string `json:"server_metrics_metadata_json" yaml:"metricsMetadataJSON"` AgentID int `json:"agent_id" yaml:"agentID"` ServerDHCPPacketSniffingIsEnabled bool `json:"server_dhcp_packet_sniffing_is_enabled" yaml:"DHCPPacketSniffingIsEnabled"` ServerBDKDEbug bool `json:"server_bdk_debug" yaml:"BDKDebug"` ServerKeysJSON string `json:"server_keys_json" yaml:"keysJSON"` NICDetails map[string]ServerNICDetails `json:"nic_details,omitempty" yaml:"NICDetails,omitempty"` ServerSubmodel string `json:"server_submodel,omitempty" yaml:"submodel,omitempty"` }
Server represents a server in a datacenter.
func (Server) CreateOrUpdate ¶
func (s Server) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (Server) Delete ¶
func (s Server) Delete(client MetalCloudClient) error
Delete implements interface Applier
type ServerComponent ¶
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 ServerCreateAndRegister ¶
type ServerCreateAndRegister struct { DatacenterName string `json:"datacenter_name" yaml:"datacenter"` ServerVendor string `json:"server_vendor" yaml:"vendor"` ServerManagementAddress string `json:"server_ipmi_host" yaml:"address"` ServerManagementUser string `json:"server_ipmi_user" yaml:"user"` ServerManagementPassword string `json:"server_ipmi_password" yaml:"pass"` }
type ServerCreateUnmanaged ¶
type ServerCreateUnmanaged struct { DatacenterName string `json:"datacenter_name" yaml:"datacenter"` ServerSerialNumber string `json:"server_serial_number,omitempty" yaml:"serialNumber,omitempty"` ServerManagementAddress string `json:"server_ipmi_host,omitempty" yaml:"address,omitempty"` ServerManagementUser string `json:"server_ipmi_user,omitempty" yaml:"user,omitempty"` ServerManagementPassword string `json:"server_ipmi_password,omitempty" yaml:"pass,omitempty"` ServerInterfaces []ServerInterfaceCreate `json:"server_interfaces,omitempty" yaml:"interfaces,omitempty"` ServerTypeID int `json:"server_type_id,omitempty" yaml:"serverTypeID,omitempty"` }
type ServerDefaultCredentials ¶
type ServerDefaultCredentials struct { ServerDefaultCredentialsID int `json:"server_default_credentials_id,omitempty" yaml:"id,omitempty"` DatacenterName string `json:"datacenter_name,omitempty" yaml:"datacenter,omitempty"` ServerSerialNumber string `json:"server_serial_number,omitempty" yaml:"serialNumber,omitempty"` ServerBMCMACAddress string `json:"server_bmc_mac_address" yaml:"BMCMACAddress"` ServerDefaultCredentialsUsername string `json:"server_default_credentials_username" yaml:"username"` ServerDefaultCredentialsPassword string `json:"server_default_credentials_password" yaml:"password"` }
type ServerDisk ¶
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 ServerEditInventory ¶
type ServerEditInventory struct {
ServerInventoryId *string `json:"server_inventory_id" yaml:"inventoryId"`
}
type ServerEditRack ¶
type ServerEditRack struct { ServerRackName *string `json:"server_rack_name" yaml:"rackName"` ServerRackPositionLowerUnit *string `json:"server_rack_position_lower_unit" yaml:"rackPositionLowerUnit"` ServerRackPositionUpperUnit *string `json:"server_rack_position_upper_unit" yaml:"rackPositionUpperUnit"` }
type ServerFirmwareUpgradePolicy ¶
type ServerFirmwareUpgradePolicy struct { ServerFirmwareUpgradePolicyID int `json:"server_firmware_upgrade_policy_id,omitempty" yaml:"id,omitempty"` ServerFirmwareUpgradePolicyLabel string `json:"server_firmware_upgrade_policy_label,omitempty" yaml:"label,omitempty"` ServerFirmwareUpgradePolicyRules []ServerFirmwareUpgradePolicyRule `json:"server_firmware_upgrade_policy_rules,omitempty" yaml:"rules,omitempty"` ServerFirmwareUpgradePolicyAction string `json:"server_firmware_upgrade_policy_action,omitempty" yaml:"action,omitempty"` InstanceArrayIDList []int `json:"instance_array_ids,omitempty" yaml:"instanceArrayList,omitempty"` }
ServerFirmwareUpgradePolicy represents a server firmware policy.
type ServerFirmwareUpgradePolicyRule ¶
type ServerFirmwareUpgradePolicyRule struct { Operation string `json:"operation,omitempty" yaml:"operation,omitempty"` Property string `json:"property,omitempty" yaml:"property,omitempty"` Value string `json:"value,omitempty" yaml:"value,omitempty"` }
ServerFirmwareUpgradePolicyRule describes a policy rule.
type ServerInterface ¶
type ServerInterface struct {
ServerInterfaceMACAddress string `json:"server_interface_mac_address,omitempty" yaml:"macAddress,omitempty"`
}
ServerInterface contains server connectivity information.
type ServerInterfaceCreate ¶
type ServerInterfaceCreate struct { NetworkEquipmentIdentifierString string `json:"network_equipment_identifier_string,omitempty" yaml:"switch,omitempty"` ServerInterfaceMACAddress string `json:"server_interface_mac_address,omitempty" yaml:"mac,omitempty"` NetworkEquipmentInterfaceIdentifierString string `json:"network_equipment_interface_identifier_string,omitempty" yaml:"switchInterface,omitempty"` }
type ServerNICDetails ¶
type ServerNICDetails struct { NetworkEquipmentInterfaceLLDPInformation string `json:"network_equipment_interface_lldp_information,omitempty" yaml:"networkEquipmentInterfaceLLDPInformation,omitempty"` NetworkEquipmentInterfaceMACAddress string `json:"network_equipment_interface_mac_address,omitempty" yaml:"networkEquipmentInterfaceMACAddress,omitempty"` SwitchPortID string `json:"switch_port_id,omitempty" yaml:"switchPortID,omitempty"` SwitchPortDescription string `json:"switch_port_description,omitempty" yaml:"switchPortDescription,omitempty"` SwitchHostname string `json:"switch_hostname,omitempty" yaml:"switchHostname,omitempty"` NetworkEquipmentDescription string `json:"network_equipment_description,omitempty" yaml:"networkEquipmentDescription,omitempty"` SwitchVLANID string `json:"switch_vlan_id,omitempty" yaml:"switchVLANID,omitempty"` SwitchInterfaceIndex int `json:"server_interface_index,omitempty" yaml:"switchInterfaceIndex,omitempty"` ServerInterfaceMACAddress string `json:"server_interface_mac_address,omitempty" yaml:"serverInterfaceMACAddress,omitempty"` ServerInterfaceCapacityMBPs int `json:"server_interface_capacity_mbps,omitempty" yaml:"serverInterfaceCapacityMBPs,omitempty"` }
type ServerSearchResult ¶
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" 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"` ServerRackName string `json:"server_rack_name" yaml:"rackName"` ServerRackPositionLowerUnit string `json:"server_rack_position_lower_unit,omitempty" yaml:"rackPositionLowerUnit,omitempty"` ServerRackPositionUpperUnit string `json:"server_rack_position_upper_unit,omitempty" yaml:"rackPositionUpperUnit,omitempty"` ServerInventoryId string `json:"server_inventory_id,omitempty" yaml:"inventoryId,omitempty"` ServerDisks []ServerDisk `json:"server_disks,omitempty" yaml:"disks,omitempty"` ServerSupportsOOBProvisioning bool `json:"server_supports_oob_provisioning" yaml:"supportsOOBProvisioning"` 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"` ServerSubmodel string `json:"server_submodel,omitempty" yaml:"submodel,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"` ServerTypeSupportsOOBProvisioning bool `json:"server_type_supports_oob_provisioning,omitempty"` ServerTypeIsExperimental bool `json:"server_type_is_experimental,omitempty"` ServerCount int `json:"server_count,omitempty"` ServerTypeAllowedVendorSkuIdsJSON string `json:"server_type_allowed_vendor_sku_ids_json,omitempty"` }
ServerType struct defines a server type
type ServerTypeMatch ¶
type ServerTypeMatch struct {
ServerCount int `json:"server_count,omitempty"`
}
ServerTypeMatch what exact server types to use
type ServerTypeMatches ¶
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 ¶
type SharedDrive struct {}
SharedDrive represents a drive that can be shared between instances
func (SharedDrive) CreateOrUpdate ¶
func (sd SharedDrive) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (SharedDrive) Delete ¶
func (sd SharedDrive) Delete(client MetalCloudClient) error
Delete implements interface Applier
func (SharedDrive) Validate ¶
func (sd SharedDrive) Validate() error
Validate implements interface Applier
type SharedDriveCredentials ¶
type SharedDriveCredentials struct {
}SharedDriveCredentials iscsi or other forms of connection details
type SharedDriveOperation ¶
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 ¶
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 ¶
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"` StageDefinitionContext string `json:"stage_definition_context,omitempty" yaml:"context,omitempty"` StageDefinitionAutomaticallyAddedToPreDeploys int `json:"stage_definition_automatically_added_to_pre_deploys,omitempty" yaml:"automaticallyAddedToPreDeploys,omitempty"` StageDefinitionAutomaticallyAddedToPostDeploys int `json:"stage_definition_automatically_added_to_post_deploys,omitempty" yaml:"automaticallyAddedToPostDeploys,omitempty"` }
StageDefinition contains a JavaScript file, HTTP request url and options, an AnsibleBundle or an API call template.
func (StageDefinition) CreateOrUpdate ¶
func (s StageDefinition) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (StageDefinition) Delete ¶
func (s StageDefinition) Delete(client MetalCloudClient) error
Delete implements interface Applier
func (*StageDefinition) UnmarshalJSON ¶
func (s *StageDefinition) UnmarshalJSON(b []byte) error
UnmarshalJSON custom json marshaling
func (StageDefinition) Validate ¶
func (s StageDefinition) Validate() error
Validate implements interface Applier
type StoragePool ¶
type StoragePool struct { StoragePoolID int `json:"storage_pool_id,omitempty" yaml:"id,omitempty"` StoragePoolName string `json:"storage_pool_name,omitempty" yaml:"name,omitempty"` StoragePoolStatus string `json:"storage_pool_status,omitempty" yaml:"status,omitempty"` StoragePoolInMaintenance bool `json:"storage_pool_in_maintenance" yaml:"maintenance"` StoragePoolIsExperimental bool `json:"storage_pool_is_experimental" yaml:"experimental"` DatacenterName string `json:"datacenter_name,omitempty" yaml:"datacenter,omitempty"` StorageType string `json:"storage_type,omitempty" yaml:"type,omitempty"` UserID int `json:"user_id,omitempty" yaml:"user,omitempty"` StoragePoolISCSIHost string `json:"storage_pool_iscsi_host,omitempty" yaml:"host,omitempty"` StoragePoolISCSIPort int `json:"storage_pool_iscsi_port,omitempty" yaml:"port,omitempty"` StoragePoolCapacityTotalCachedRealMbytes int `json:"storage_pool_capacity_total_cached_real_mbytes,omitempty" yaml:"capacityTotalRealMbytes,omitempty"` StoragePoolCapacityUsableCachedRealMbytes int `json:"storage_pool_capacity_usable_cached_real_mbytes,omitempty" yaml:"capacityUsableRealMbytes,omitempty"` StoragePoolCapacityFreeCachedRealMbytes int `json:"storage_pool_capacity_free_cached_real_mbytes,omitempty" yaml:"capacityFreeRealMbytes,omitempty"` StoragePoolCapacityUsedCachedVirtualMbytes int `json:"storage_pool_capacity_used_cached_virtual_mbytes,omitempty" yaml:"capacityUsedRealMbytes,omitempty"` StoragePoolCreatedTimestamp string `json:"storage_pool_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` StoragePoolUpdatedTimestamp string `json:"storage_pool_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` StoragePoolDrivePriority int `json:"storage_pool_drive_priority,omitempty" yaml:"drivePriority,omitempty"` StoragePoolEndpoint string `json:"storage_pool_endpoint,omitempty" yaml:"endpoint,omitempty"` StoragePoolOptionsJSON string `json:"storage_pool_options_json,omitempty" yaml:"optionsJSON,omitempty"` StoragePoolUsername string `json:"storage_pool_username,omitempty" yaml:"username,omitempty"` StoragePoolPassword string `json:"storage_pool_password,omitempty" yaml:"password,omitempty"` StoragePoolPortGroupAllocationOrderJSON string `json:"storage_pool_port_group_allocation_order_json,omitempty" yaml:"portGroupAllocationOrderJSON,omitempty"` StoragePoolPortGroupPhysicalPortsJSON string `json:"storage_pool_port_group_physical_ports_json,omitempty" yaml:"portGroupPhysicalPortsJSON,omitempty"` StoragePoolTags []string `json:"storage_pool_tags,omitempty" yaml:"tags,omitempty"` StoragePoolTargetIQN string `json:"storage_pool_target_iqn,omitempty" yaml:"targetIQN,omitempty"` }
StoragePool represents a storage appliance in a datacenter.
type StoragePoolSearchResult ¶
type StoragePoolSearchResult struct { StoragePoolID int `json:"storage_pool_id,omitempty" yaml:"id,omitempty"` StoragePoolName string `json:"storage_pool_name,omitempty" yaml:"name,omitempty"` StoragePoolStatus string `json:"storage_pool_status,omitempty" yaml:"status,omitempty"` StoragePoolInMaintenance bool `json:"storage_pool_in_maintenance" yaml:"maintenance"` StoragePoolIsExperimental bool `json:"storage_pool_is_experimental" yaml:"experimental"` DatacenterName string `json:"datacenter_name,omitempty" yaml:"datacenter,omitempty"` StorageType string `json:"storage_type,omitempty" yaml:"type,omitempty"` UserID int `json:"user_id,omitempty" yaml:"user,omitempty"` StoragePoolISCSIHost string `json:"storage_pool_iscsi_host,omitempty" yaml:"host,omitempty"` StoragePoolISCSIPort int `json:"storage_pool_iscsi_port,omitempty" yaml:"port,omitempty"` StoragePoolEndpoint string `json:"storage_pool_endpoint,omitempty" yaml:"endpoint,omitempty"` StoragePoolCapacityTotalCachedRealMbytes int `json:"storage_pool_capacity_total_cached_real_mbytes,omitempty" yaml:"capacityTotalRealMbytes,omitempty"` StoragePoolCapacityUsableCachedRealMbytes int `json:"storage_pool_capacity_usable_cached_real_mbytes,omitempty" yaml:"capacityUsableRealMbytes,omitempty"` StoragePoolCapacityFreeCachedRealMbytes int `json:"storage_pool_capacity_free_cached_real_mbytes,omitempty" yaml:"capacityFreeRealMbytes,omitempty"` StoragePoolCapacityUsedCachedVirtualMbytes int `json:"storage_pool_capacity_used_cached_virtual_mbytes,omitempty" yaml:"capacityUsedRealMbytes,omitempty"` }
StoragePoolSearchResult represents a storage appliance in a datacenter.
type Subnet ¶
type Subnet struct { SubnetID int `json:"subnet_id,omitempty" yaml:"id,omitempty"` SubnetType string `json:"subnet_type,omitempty" yaml:"type,omitempty"` NetworkID int `json:"network_id,omitempty" yaml:"networkID,omitempty"` InfrastructureID int `json:"infrastructure_id,omitempty" yaml:"infrastructureID,omitempty"` SubnetPoolID int `json:"subnet_pool_id,omitempty" yaml:"subnetPoolID,omitempty"` ClusterID int `json:"cluster_id,omitempty" yaml:"clusterID,omitempty"` SubnetNetmaskHumanReadable string `json:"subnet_netmask_human_readable,omitempty" yaml:"netmask,omitempty"` SubnetGatewayHumanReadable string `json:"subnet_gateway_human_readable,omitempty" yaml:"gateway,omitempty"` SubnetPrefixSize int `json:"subnet_prefix_size,omitempty" yaml:"prefixSize,omitempty"` SubnetChangeID int `json:"subnet_change_id,omitempty" yaml:"changeID,omitempty"` SubnetServiceStatus string `json:"subnet_service_status,omitempty" yaml:"serviceStatus,omitempty"` SubnetDestination string `json:"subnet_destination,omitempty" yaml:"destination,omitempty"` SubnetAutomaticAllocation bool `json:"subnet_automatic_allocation" yaml:"automaticAllocation,omitempty"` SubnetLabel string `json:"subnet_label,omitempty" yaml:"label,omitempty"` DNSSubdomainPermanentID int `json:"dns_subdomain_permanent_id,omitempty" yaml:"dnsSubdomainPermanentID,omitempty"` SubnetSubdomain string `json:"subnet_subdomain,omitempty" yaml:"subdomain,omitempty"` SubnetSubdomainPermanent string `json:"subnet_subdomain_permanent,omitempty" yaml:"subdomainPermanent,omitempty"` SubnetTrafficDownloadBytes int `json:"subnet_traffic_download_bytes,omitempty" yaml:"trafficDownloadBytes,omitempty"` SubnetTrafficUploadBytes int `json:"subnet_traffic_upload_bytes,omitempty" yaml:"trafficUploadBytes,omitempty"` SubnetTrafficDatacenterBytes int `json:"subnet_traffic_datacenter_bytes,omitempty" yaml:"trafficDatacenterBytes,omitempty"` SubnetDirtyBit bool `json:"subnet_dirty_bit,omitempty" yaml:"dirtyBit,omitempty"` SubnetUpdatedTimestamp string `json:"subnet_updated_timestamp,omitempty" yaml:"updatedTimestamp,omitempty"` SubnetCreatedTimestamp string `json:"subnet_created_timestamp,omitempty" yaml:"createdTimestamp,omitempty"` SubnetIsAPIPrivate bool `json:"subnet_is_api_private,omitempty" yaml:"isAPIPrivate,omitempty"` SubnetTrafficDownloadBytesTemporary int `json:"subnet_traffic_download_bytes_temporary,omitempty" yaml:"trafficDownloadBytesTemporary,omitempty"` SubnetTrafficUploadBytesTemporary int `json:"subnet_traffic_upload_bytes_temporary,omitempty" yaml:"trafficUploadBytesTemporary,omitempty"` SubnetTrafficDatacenterBytesTemporary int `json:"subnet_traffic_datacenter_bytes_temporary,omitempty" yaml:"trafficDatacenterBytesTemporary,omitempty"` SubnetTrafficFetchedUntilTimestamp string `json:"subnet_traffic_fetched_until_timestamp,omitempty" yaml:"trafficFetchedUntilTimestamp,omitempty"` SubnetTrafficFetchedUntilTimestampTemporary string `json:"subnet_traffic_fetched_until_timestamp_temporary,omitempty" yaml:"trafficFetchedUntilTimestampTemporary,omitempty"` SubnetFromSubnetPoolForcedOnly bool `json:"subnet_from_subnet_pool_forced_only,omitempty" yaml:"fromSubnetPoolForcedOnly,omitempty"` SubnetOverrideVLANID int `json:"subnet_override_vlan_id,omitempty" yaml:"overrideVLANID,omitempty"` SubnetOverrideVLANAutoAllocationIndex int `json:"subnet_override_vlan_auto_allocation_index,omitempty" yaml:"overrideVLANAutoAllocationIndex,omitempty"` SubnetIsIPRange bool `json:"subnet_is_ip_range,omitempty" yaml:"isIPRange,omitempty"` SubnetRangeStartHumanReadable string `json:"subnet_range_start_human_readable,omitempty" yaml:"rangeStart,omitempty"` }
Subnet represents a subnet
func (Subnet) CreateOrUpdate ¶
func (s Subnet) CreateOrUpdate(client MetalCloudClient) error
func (Subnet) Delete ¶
func (s Subnet) Delete(client MetalCloudClient) error
type SubnetOOB ¶ added in v3.0.1
type SubnetOOB struct { SubnetOOBID int `json:"subnet_oob_id,omitempty" yaml:"id,omitempty"` SubnetOOBLabel string `json:"subnet_oob_label,omitempty" yaml:"label,omitempty"` SubnetOOBType string `json:"subnet_oob_type,omitempty" yaml:"type,omitempty"` SubnetOOBAllocateForResourceType string `json:"subent_oob_allocate_for_resource_type,omitempty" yaml:"forResourceType,omitempty"` SubnetOOBBlackList []string `json:"subnet_oob_blacklist,omitempty" yaml:"blacklist,omitempty"` SubnetOOBGatewayHex string `json:"subnet_oob_gateway_hex,omitempty" yaml:"gatewayHex,omitempty"` SubnetOOBGatewayHumanReadable string `json:"subnet_oob_gateway_human_readable,omitempty" yaml:"gateway,omitempty"` SubnetOOBNetmaskHex string `json:"subnet_oob_netmask_hex,omitempty" yaml:"netmaskHex,omitempty"` SubnetOOBNetmaskHumanReadable string `json:"subnet_oob_netmask_human_readable,omitempty" yaml:"netmask,omitempty"` SubnetOOBPrefixSize int `json:"subnet_oob_prefix_size,omitempty" yaml:"size,omitempty"` SubnetOOBRangeStartHex string `json:"subnet_oob_range_start_hex,omitempty" yaml:"rangeStartHex,omitempty"` SubnetOOBRangeStartHumanReadable string `json:"subnet_oob_range_start_human_readable,omitempty" yaml:"rangeStart,omitempty"` SubnetOOBRangeStartHumanReadableCompressed string `json:"subnet_oob_range_start_human_readable_compressed,omitempty" yaml:"rangeStartCompressed,omitempty"` SubnetOOBRangeEndHex string `json:"subnet_oob_range_end_hex,omitempty" yaml:"rangeEndHex,omitempty"` SubnetOOBRangeEndHumanReadable string `json:"subnet_oob_range_end_human_readable,omitempty" yaml:"rangeEnd,omitempty"` SubnetOOBRangeEndHumanReadableCompressed string `json:"subnet_oob_range_end_human_readable_compressed,omitempty" yaml:"rangeEndCompressed,omitempty"` SubnetOOBUseForAutoAllocation bool `json:"subnet_oob_use_for_auto_allocation,omitempty" yaml:"useForAutoAllocation,omitempty"` DatacenterName string `json:"datacenter_name,omitempty" yaml:"datacenter,omitempty"` }
Subnet represents a subnet
func (SubnetOOB) CreateOrUpdate ¶ added in v3.0.1
func (s SubnetOOB) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (SubnetOOB) Delete ¶ added in v3.0.1
func (s SubnetOOB) Delete(client MetalCloudClient) error
Delete implements interface Applier
type SubnetPool ¶
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"` SubnetPoolLabel string `json:"subnet_pool_label,omitempty" yaml:"label,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" yaml:"routable"` 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" yaml:"manualAllocationOnly"` }
SubnetPool represents a pool of subnets
func (SubnetPool) CreateOrUpdate ¶
func (s SubnetPool) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (SubnetPool) Delete ¶
func (s SubnetPool) Delete(client MetalCloudClient) error
Delete implements interface Applier
func (SubnetPool) Validate ¶
func (s SubnetPool) Validate() error
Validate implements interface Applier
type SubnetPoolUtilization ¶
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 ¶
func (s *SubnetPoolUtilization) UnmarshalJSON(data []byte) error
UnmarshalJSON to handle the shity [] to {} and 0 and "123123" cases
type SwitchDevice ¶
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:"datacenterName,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"` NetworkEquipmentIsBorderDevice bool `json:"network_equipment_is_border_device" yaml:"isBorderDevice"` NetworkEquipmentIsStorageSwitch bool `json:"network_equipment_is_storage_switch" yaml:"isStorageSwitch"` NetworkEquipmentIsGateway bool `json:"network_equipment_is_gateway" yaml:"isGateway"` NetworkEquipmentNetworkTypesAllowed []string `json:"network_equipment_network_types_allowed,omitempty" yaml:"networkTypesAllowed,omitempty"` VolumeTemplateID int `json:"volume_template_id,omitempty" yaml:"volumeTemplateID,omitempty"` NetworkEquipmentLoopbackAddress string `json:"network_equipment_loopback_address,omitempty" yaml:"LoopbackAddress,omitempty"` NetworkEquipmentVTEPAddress string `json:"network_equipment_vtep_address,omitempty" yaml:"VTEPAddress,omitempty"` NetworkEquipmentASN int `json:"network_equipment_asn,omitempty" yaml:"ASN,omitempty"` NetworkEquipmentControllerID int `json:"network_equipment_controller_id,omitempty" yaml:"controllerID,omitempty"` }
SwitchDevice Represents a switch installed in a datacenter.
func (SwitchDevice) CreateOrUpdate ¶
func (s SwitchDevice) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (SwitchDevice) Delete ¶
func (s SwitchDevice) Delete(client MetalCloudClient) error
Delete implements interface Applier
func (*SwitchDevice) UnmarshalJSON ¶
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 ¶
func (s SwitchDevice) Validate() error
Validate implements interface Applier
type SwitchDeviceController ¶
type SwitchDeviceController struct { DatacenterName string `json:"datacenter_name,omitempty" yaml:"datacenterName,omitempty"` NetworkEquipmentControllerProvisionerType string `json:"network_equipment_controller_provisioner_type,omitempty" yaml:"provisionerType,omitempty"` NetworkEquipmentControllerDriver string `json:"network_equipment_controller_driver,omitempty" yaml:"driver,omitempty"` NetworkEquipmentControllerManagementUsername string `json:"network_equipment_controller_management_username,omitempty" yaml:"managementUsername,omitempty"` NetworkEquipmentControllerManagementPassword string `json:"network_equipment_controller_management_password,omitempty" yaml:"managementPassword,omitempty"` NetworkEquipmentControllerManagementAddress string `json:"network_equipment_controller_management_address,omitempty" yaml:"managementAddress,omitempty"` NetworkEquipmentControllerManagementPort int `json:"network_equipment_controller_management_port,omitempty" yaml:"managementPort,omitempty"` NetworkEquipmentControllerManagementProtocol string `json:"network_equipment_controller_management_protocol,omitempty" yaml:"managementProtocol,omitempty"` NetworkEquipmentControllerDescription string `json:"network_equipment_controller_description,omitempty" yaml:"description,omitempty"` NetworkEquipmentControllerID int `json:"network_equipment_controller_id,omitempty" yaml:"id,omitempty"` NetworkEquipmentControllerIdentifierString string `json:"network_equipment_controller_identifier_string,omitempty" yaml:"identifierString,omitempty"` NetworkEquipmentControllerOptions interface{} `json:"network_equipment_controller_options,omitempty" yaml:"options,omitempty"` NetworkEquipmentControllerFabricConfiguration interface{} `json:"network_equipment_controller_fabric_configuration,omitempty" yaml:"fabricConfiguration,omitempty"` }
SwitchDeviceController represents a switch controller installed in a datacenter.
type SwitchDeviceDefaults ¶
type SwitchDeviceDefaults struct { NetworkEquipmentDefaultsID int `json:"network_equipment_defaults_id,omitempty" yaml:"id,omitempty"` DatacenterName string `json:"datacenter_name,omitempty" yaml:"datacenterName,omitempty"` NetworkEquipmentSerialNumber *string `json:"network_equipment_serial_number" yaml:"serialNumber"` NetworkEquipmentManagementMacAddress *string `json:"network_equipment_management_mac_address" yaml:"managementMacAddress"` NetworkEquipmentPosition string `json:"network_equipment_position,omitempty" yaml:"position,omitempty"` NetworkEquipmentIdentifierString string `json:"network_equipment_identifier_string,omitempty" yaml:"identifierString,omitempty"` NetworkEquipmentAsn int `json:"network_equipment_asn,omitempty" yaml:"asn,omitempty"` NetworkEquipmentPartOfMlagPair bool `json:"network_equipment_part_of_mlag_pair,omitempty" yaml:"partOfMlagPair,omitempty"` NetworkEquipmentMlagSystemMac string `json:"network_equipment_mlag_system_mac,omitempty" yaml:"mlagSystemMac,omitempty"` NetworkEquipmentMlagDomainId int `json:"network_equipment_mlag_domain_id,omitempty" yaml:"mlagDomainId,omitempty"` NetworkEquipmentMlagPeerLinkPortChannelId int `json:"network_equipment_mlag_peer_link_port_channel_id,omitempty" yaml:"mlagPeerLinkPortChannelId,omitempty"` NetworkEquipmentMlagPartnerVlanId int `json:"network_equipment_mlag_partner_vlan_id,omitempty" yaml:"mlagPartnerVlanId,omitempty"` NetworkEquipmentMlagPartnerHostname string `json:"network_equipment_mlag_partner_hostname,omitempty" yaml:"mlagPartnerHostname,omitempty"` NetworkEquipmentLoopbackAddressIpv4 string `json:"network_equipment_loopback_address_ipv4,omitempty" yaml:"loopbackAddressIpv4,omitempty"` NetworkEquipmentLoopbackAddressIpv6 string `json:"network_equipment_loopback_address_ipv6,omitempty" yaml:"loopbackAddressIpv6,omitempty"` NetworkEquipmentVtepAddressIpv4 string `json:"network_equipment_vtep_address_ipv4,omitempty" yaml:"vtepAddressIpv4,omitempty"` NetworkEquipmentVtepAddressIpv6 string `json:"network_equipment_vtep_address_ipv6,omitempty" yaml:"vtepAddressIpv6,omitempty"` NetworkEquipmentSkipInitialConfiguration bool `json:"network_equipment_skip_initial_configuration,omitempty" yaml:"skipInitialConfiguration,omitempty"` VolumeTemplateID int `json:"volume_template_id,omitempty" yaml:"volumeTemplateID,omitempty"` NetworkEquipmentCustomVariables map[string]string `json:"network_equipment_custom_variables,omitempty" yaml:"customVariables,omitempty"` }
SwitchDeviceDefaults represents a set of switch device defaults for a datacenter.
type SwitchDeviceLink ¶
type SwitchDeviceLink struct { NetworkEquipmentLinkID int `json:"network_equipment_link_id,omitempty" yaml:"id,omitempty"` NetworkEquipmentID1 int `json:"network_equipment_id_1,omitempty" yaml:"switchID1,omitempty"` NetworkEquipmentID2 int `json:"network_equipment_id_2,omitempty" yaml:"switchID2,omitempty"` NetworkEquipmentLinkType string `json:"network_equipment_link_type,omitempty" yaml:"type,omitempty"` }
type SwitchInterfaceSearchResult ¶
type SwitchInterfaceSearchResult struct { ServerID int `json:"server_id,omitempty" yaml:"serverID,omitempty"` ServerIPMIHost string `json:"server_ipmi_host,omitempty" yaml:"serverIPMIHost,omitempty"` ServerSerialNumber string `json:"server_serial_number,omitempty" yaml:"serverSerialNumber,omitempty"` ServerTypeID int `json:"server_type_id,omitempty" yaml:"ServerTypeID,omitempty"` NetworkEquipmentID int `json:"network_equipment_id,omitempty" yaml:"networkEquipmentID,omitempty"` NetworkEquipmentIdentifierString string `json:"network_equipment_identifier_string,omitempty" yaml:"networkEquipmentIdentifierString,omitempty"` NetworkEquipmentManagementAddress string `json:"network_equipment_management_address,omitempty" yaml:"networkEquipmentManagementAddress,omitempty"` NetworkEquipmentInterfaceID int `json:"network_equipment_interface_id,omitempty" yaml:"networkEquipmentInterfaceID,omitempty"` NetworkEquipmentInterfaceMACAddress string `json:"network_equipment_interface_mac_address,omitempty" yaml:"networkEquipmentInterfaceMACAddress,omitempty"` NetworkEquipmentInterfaceIdentifierString string `json:"network_equipment_interface_identifier_string,omitempty" yaml:"networkEquipmentInterfaceIdentifierString,omitempty"` ServerInterfaceMACAddress string `json:"server_interface_mac_address,omitempty" yaml:"serverInterfaceMACAddress,omitempty"` ServerInterfaceIndex int `json:"server_interface_index,omitempty" yaml:"serverInterfaceIndex,omitempty"` ServerInterfaceCapacityMBPs int `json:"server_interface_capacity_mbps,omitempty" yaml:"serverInterfaceCapacityMBPs,omitempty"` IP [][]string `json:"ip_human_readable,omitempty" yaml:"ip,omitempty"` SubnetRangeStart [][]string `json:"subnet_range_start_human_readable,omitempty" yaml:"rangeStart,omitempty"` NetworkType []string `json:"network_type,omitempty" yaml:"networkType,omitempty"` NetworkID []int `json:"network_id,omitempty" yaml:"networkID,omitempty"` SubnetPrefixSize [][]int `json:"subnet_prefix_size,omitempty" yaml:"subnetPrefixSize,omitempty"` SubnetPoolID [][]int `json:"subnet_pool_id,omitempty" yaml:"subnetPoolID,omitempty"` }
SwitchInterfaceSearchResult Represents a switch interface-to-server interface mapping.
type User ¶
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 UsersSearchResult ¶
type UsersSearchResult struct { Franchise string `json:"franchise" yaml:"franchise"` UserAccessLevel string `json:"user_access_level" yaml:"user_access_level"` UserAuthFailedAttemptsSinceLastLogin int `json:"user_auth_failed_attempts_since_last_login" yaml:"userFailedLoginAttempts"` UserAuthenticatorCreatedTimestamp string `json:"user_authenticator_created_timestamp" yaml:"userCreatedTimestamp"` UserAuthenticatorIsMandatory bool `json:"user_authenticator_is_mandatory,omitempty" yaml:"userAuthenticatorIsMandatory,omitempty"` UserAuthenticatorMustChange bool `json:"user_authenticator_must_change,omitempty" yaml:"userAuthenticatorMustChange,omitempty"` UserBlocked bool `json:"user_blocked" yaml:"userBlocked"` UserBrand string `json:"user_brand,omitempty" yaml:"userBrand,omitempty"` UserCreatedTimestamp string `json:"user_created_timestamp" yaml:"userCreatedTimestamp"` UserCustomPricesJson string `json:"user_custom_prices_json,omitempty" yaml:"userCustomPricesJson,omitempty"` UserDisplayName string `json:"user_display_name" yaml:"displayName"` UserEmail string `json:"user_email" yaml:"email"` UserEmailStatus string `json:"user_email_status,omitempty" yaml:"emailStatus,omitempty"` UserExcludeFromReports bool `json:"user_exclude_from_reports,omitempty" yaml:"userExcludeFromReports,omitempty"` UserExperimentalTagsJson string `json:"user_experimental_tags_json,omitempty" yaml:"userExperimentalTagsJson,omitempty"` UserExternalIDsJson string `json:"user_external_ids_json,omitempty" yaml:"userExternalIDsJson,omitempty"` UserGuiSettingsJson string `json:"user_gui_settings_json,omitempty" yaml:"userGuiSettingsJson,omitempty"` UserID int `json:"user_id" yaml:"id"` UserInfrastructureIDDefault int `json:"user_infrastructure_id_default,omitempty" yaml:"userInfrastructureIDDefault,omitempty"` UserIsBillable bool `json:"user_is_billable,omitempty" yaml:"userIsBillable,omitempty"` UserIsBrandManager bool `json:"user_is_brand_manager,omitempty" yaml:"userIsBrandManager,omitempty"` UserIsDatastorePublisher bool `json:"user_is_datastore_publisher,omitempty" yaml:"userIsDatastorePublisher,omitempty"` UserIsSuspended bool `json:"user_is_suspended,omitempty" yaml:"userIsSuspended,omitempty"` UserIsTestAccount bool `json:"user_is_test_account,omitempty" yaml:"userIsTestAccount,omitempty"` UserIsTestingMode bool `json:"user_is_testing_mode,omitempty" yaml:"userIsTestingMode,omitempty"` UserKerberosPrincipalName string `json:"user_kerberos_principal_name,omitempty" yaml:"userKerberosPrincipalName,omitempty"` UserLanguage string `json:"user_language,omitempty" yaml:"userLanguage,omitempty"` UserLastLoginTimestamp string `json:"user_last_login_timestamp" yaml:"userLastLoginTimestamp"` UserLastLoginType string `json:"user_last_login_type,omitempty" yaml:"userLastLoginType,omitempty"` UserLimitsJson string `json:"user_limits_json,omitempty" yaml:"userLimitsJson,omitempty"` UserPasswordChangeRequired bool `json:"user_password_change_required,omitempty" yaml:"userPasswordChangeRequired,omitempty"` UserPermissionsJson string `json:"user_permissions_json,omitempty" yaml:"userPermissionsJson,omitempty"` UserPlanType string `json:"user_plan_type,omitempty" yaml:"userPlanType,omitempty"` UserPromotionTagsJson string `json:"user_promotion_tags_json,omitempty" yaml:"userPromotionTagsJson,omitempty"` }
type Variable ¶
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 ¶
func (v Variable) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (Variable) Delete ¶
func (v Variable) Delete(client MetalCloudClient) error
Delete 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"` VolumeTemplateNetworkOperatingSystem NetworkOperatingSystem `json:"volume_template_network_operating_system,omitempty"` VolumeTemplateVersion string `json:"volume_template_version,omitempty"` VolumeTemplateIsExperimental bool `json:"volume_template_is_experimental,omitempty"` VolumeTemplateIsForSwitch bool `json:"volume_template_is_for_switch,omitempty"` VolumeTemplateOSReadyMethod string `json:"volume_template_os_ready_method,omitempty"` }
VolumeTemplate describes an OS template
type WebFetchAAPIOptions ¶
type WebFetchAAPIOptions struct { Method string `json:"method,omitempty"` Redirect string `json:"redirect,omitempty"` Follow int `json:"follow,omitempty"` Compress bool `json:"compress"` 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 ¶
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 WebProxy ¶
type WebProxy struct { WebProxyServerIP string `json:"web_proxy_server_ip,omitempty" yaml:"ip,omitempty"` WebProxyServerPort int `json:"web_proxy_server_port,omitempty" yaml:"port,omitempty"` WebProxyUsername string `json:"web_proxy_username,omitempty" yaml:"username,omitempty"` WebProxyPassword string `json:"web_proxy_password,omitempty" yaml:"password,omitempty"` }
type Workflow ¶
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 ¶
func (w Workflow) CreateOrUpdate(client MetalCloudClient) error
CreateOrUpdate implements interface Applier
func (Workflow) Delete ¶
func (w Workflow) Delete(client MetalCloudClient) error
Delete implements interface Applier
type WorkflowReference ¶
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 ¶
type WorkflowStageAssociation struct { InfrastructureDeployCustomStageID int `json:"infrastructure_deploy_custom_stage_id,omitempty"` InfrastructureID int `json:"infrastructure_id"` 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 ¶
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"` }
WorkflowStageDefinitionReference defines where in a workflow a stage definition resides
Source Files ¶
- afc.go
- afc_exports.go
- applier.go
- custom_iso.go
- datacenter.go
- decrypt.go
- drive.go
- drive_array.go
- drive_array_exports.go
- drive_snapshot.go
- external_connection.go
- external_connection_exports.go
- id.go
- infrastructure.go
- infrastructure_exports.go
- instance.go
- instance_array.go
- instance_array_exports.go
- instance_cluster.go
- instance_cluster_exports.go
- instance_exports.go
- metal_cloud_client.go
- metalcloud_client.go
- network.go
- network_exports.go
- network_profile.go
- network_profile_exports.go
- os_asset.go
- os_template.go
- registry.go
- registry_exports.go
- secret.go
- server.go
- server_firmware_upgrade_policy.go
- server_type.go
- server_type_exports.go
- shared_drive.go
- shared_drive_exports.go
- stage_definition.go
- storage.go
- subnet.go
- subnet_oob.go
- subnet_pool.go
- switch_device.go
- switch_device_controller.go
- switch_device_defaults.go
- switch_device_link.go
- switch_interface.go
- user.go
- variable.go
- volume_template.go
- volume_template_exports.go
- workflow.go