Documentation ¶
Index ¶
- Variables
- func CacheExpires(r *http.Response) time.Time
- type APIClient
- type APIKey
- type APIResponse
- type AddVolume
- type Algorithm
- type Allocation
- type AllocationAPI
- type AllocationApiGetBySiteOpts
- type AllocationApiService
- func (a *AllocationApiService) GetBySite(ctx _context.Context, localVarOptionals *AllocationApiGetBySiteOpts) ([]Allocation, *_nethttp.Response, error)
- func (a *AllocationApiService) StorageGetBySite(ctx _context.Context, localVarOptionals *AllocationApiStorageGetBySiteOpts) ([]AllocationStorage, *_nethttp.Response, error)
- type AllocationApiStorageGetBySiteOpts
- type AllocationStorage
- type AttributeRule
- type AvailableImage
- type AvailableNetwork
- type AvailableResources
- type AvailableResourcesAPI
- type AvailableResourcesApiListOpts
- type AvailableResourcesApiService
- type BasicAuth
- type BondMode
- type BootMethod
- type ClassifierOperator
- type Configuration
- type Country
- type DiskPartitions
- type Encoding
- type ErrorResponse
- type FileInfo
- type FlavorDesc
- type GenericOpenAPIError
- type HealthStatus
- type Host
- type HostAlertInfo
- type HostAllOf
- type HostConnection
- type HostIscsiConfig
- type HostNetworkConnection
- type HostPowerState
- type HostServerPort
- type HostState
- type HostSubstate
- type HostsAPI
- type HostsApiAddOpts
- type HostsApiBootHDDOpts
- type HostsApiBootPXEOpts
- type HostsApiDeleteOpts
- type HostsApiGetByIDOpts
- type HostsApiListOpts
- type HostsApiMaintenanceOpts
- type HostsApiPowerOffOpts
- type HostsApiPowerOnOpts
- type HostsApiPowerResetOpts
- type HostsApiReimageOpts
- type HostsApiReplaceOpts
- type HostsApiService
- func (a *HostsApiService) Add(ctx _context.Context, newHost NewHost, localVarOptionals *HostsApiAddOpts) (Host, *_nethttp.Response, error)
- func (a *HostsApiService) BootHDD(ctx _context.Context, hostId string, localVarOptionals *HostsApiBootHDDOpts) (Host, *_nethttp.Response, error)
- func (a *HostsApiService) BootPXE(ctx _context.Context, hostId string, localVarOptionals *HostsApiBootPXEOpts) (Host, *_nethttp.Response, error)
- func (a *HostsApiService) Delete(ctx _context.Context, hostId string, localVarOptionals *HostsApiDeleteOpts) (*_nethttp.Response, error)
- func (a *HostsApiService) GetByID(ctx _context.Context, hostId string, localVarOptionals *HostsApiGetByIDOpts) (Host, *_nethttp.Response, error)
- func (a *HostsApiService) List(ctx _context.Context, localVarOptionals *HostsApiListOpts) ([]Host, *_nethttp.Response, error)
- func (a *HostsApiService) Maintenance(ctx _context.Context, hostId string, ...) (Host, *_nethttp.Response, error)
- func (a *HostsApiService) PowerOff(ctx _context.Context, hostId string, localVarOptionals *HostsApiPowerOffOpts) (Host, *_nethttp.Response, error)
- func (a *HostsApiService) PowerOn(ctx _context.Context, hostId string, localVarOptionals *HostsApiPowerOnOpts) (Host, *_nethttp.Response, error)
- func (a *HostsApiService) PowerReset(ctx _context.Context, hostId string, localVarOptionals *HostsApiPowerResetOpts) (Host, *_nethttp.Response, error)
- func (a *HostsApiService) Reimage(ctx _context.Context, hostId string, localVarOptionals *HostsApiReimageOpts) (Host, *_nethttp.Response, error)
- func (a *HostsApiService) Replace(ctx _context.Context, hostId string, localVarOptionals *HostsApiReplaceOpts) (Host, *_nethttp.Response, error)
- func (a *HostsApiService) Update(ctx _context.Context, hostId string, updateHost UpdateHost, ...) (Host, *_nethttp.Response, error)
- type HostsApiUpdateOpts
- type IPPoolsAPI
- type IpAllocation
- type IpPool
- type IpPoolAllOf
- type IpPoolStats
- type IpRange
- type IpSource
- type IpVer
- type IppoolsApiAllocateIPsOpts
- type IppoolsApiGetByIDOpts
- type IppoolsApiListOpts
- type IppoolsApiReturnIPsOpts
- type IppoolsApiService
- func (a *IppoolsApiService) AllocateIPs(ctx _context.Context, ippoolId string, iPAllocation []IpAllocation, ...) (IpPool, *_nethttp.Response, error)
- func (a *IppoolsApiService) GetByID(ctx _context.Context, ippoolId string, ...) (IpPool, *_nethttp.Response, error)
- func (a *IppoolsApiService) List(ctx _context.Context, localVarOptionals *IppoolsApiListOpts) ([]IpPool, *_nethttp.Response, error)
- func (a *IppoolsApiService) ReturnIPs(ctx _context.Context, ippoolId string, requestBody []string, ...) (IpPool, *_nethttp.Response, error)
- func (a *IppoolsApiService) Update(ctx _context.Context, ippoolId string, updateIpPool UpdateIpPool, ...) (IpPool, *_nethttp.Response, error)
- type IppoolsApiUpdateOpts
- type IscsiParameters
- type Limits
- type LocationInfo
- type MachineClassifier
- type MachineClassifierRule
- type MachineInventory
- type MachineSize
- type MachineSizeInfo
- type MultiPartFile
- type Netmask
- type Network
- type NetworkAllOf
- type NetworkHostUse
- type NetworkPurpose
- type NetworksAPI
- type NetworksApiAddOpts
- type NetworksApiDeleteOpts
- type NetworksApiGetByIDOpts
- type NetworksApiListOpts
- type NetworksApiService
- func (a *NetworksApiService) Add(ctx _context.Context, newNetwork NewNetwork, ...) (Network, *_nethttp.Response, error)
- func (a *NetworksApiService) Delete(ctx _context.Context, networkId string, ...) (*_nethttp.Response, error)
- func (a *NetworksApiService) GetByID(ctx _context.Context, networkId string, ...) (Network, *_nethttp.Response, error)
- func (a *NetworksApiService) List(ctx _context.Context, localVarOptionals *NetworksApiListOpts) ([]Network, *_nethttp.Response, error)
- func (a *NetworksApiService) Update(ctx _context.Context, networkId string, updateNetwork UpdateNetwork, ...) (Network, *_nethttp.Response, error)
- type NetworksApiUpdateOpts
- type NewHost
- type NewIpPool
- type NewNetwork
- type NewProject
- type NewSshKey
- type NewVolume
- type NewVolumeAttachment
- type OpArg
- type OpArgType
- type OsServiceImage
- type OsServiceImageAllOf
- type OsServiceImageApproach
- type OsServiceImageDownloadHealth
- type OsServiceImageDownloadHealthDetails
- type OsServiceImageDownloadHealthSummary
- type OsServiceImageOrigin
- type Partition
- type PartitionFormula
- type PartitionTable
- type PartitionType
- type PassedInfo
- type Pool
- type Profile
- type Project
- type ProjectAllOf
- type ProjectInfo
- type ProjectResources
- type ProjectsAPI
- type ProjectsApiAddOpts
- type ProjectsApiDeleteOpts
- type ProjectsApiGetByIDOpts
- type ProjectsApiListOpts
- type ProjectsApiService
- func (a *ProjectsApiService) Add(ctx _context.Context, newProject NewProject, ...) (Project, *_nethttp.Response, error)
- func (a *ProjectsApiService) Delete(ctx _context.Context, projectId string, ...) (*_nethttp.Response, error)
- func (a *ProjectsApiService) GetByID(ctx _context.Context, projectId string, ...) (Project, *_nethttp.Response, error)
- func (a *ProjectsApiService) List(ctx _context.Context, localVarOptionals *ProjectsApiListOpts) ([]Project, *_nethttp.Response, error)
- func (a *ProjectsApiService) Update(ctx _context.Context, projectId string, updateProject UpdateProject, ...) (Project, *_nethttp.Response, error)
- type ProjectsApiUpdateOpts
- type ProjectsInfo
- type ProjectsInfoAPI
- type ProjectsInfoApiListOpts
- type ProjectsInfoApiService
- type ProtocolKind
- type ProtocolParameters
- type ResourceBase
- type ServerConfiguration
- type ServerVariable
- type ServiceServerInfo
- type ServiceStorageInfo
- type ServicesAPI
- type ServicesApiAddOpts
- type ServicesApiDeleteOpts
- type ServicesApiGetByIDOpts
- type ServicesApiListOpts
- type ServicesApiService
- func (a *ServicesApiService) Add(ctx _context.Context, fileName *os.File, localVarOptionals *ServicesApiAddOpts) (OsServiceImage, *_nethttp.Response, error)
- func (a *ServicesApiService) Delete(ctx _context.Context, serviceId string, ...) (*_nethttp.Response, error)
- func (a *ServicesApiService) GetByID(ctx _context.Context, serviceId string, ...) (OsServiceImage, *_nethttp.Response, error)
- func (a *ServicesApiService) List(ctx _context.Context, localVarOptionals *ServicesApiListOpts) ([]OsServiceImage, *_nethttp.Response, error)
- func (a *ServicesApiService) Update(ctx _context.Context, serviceId string, fileName *os.File, ...) (OsServiceImage, *_nethttp.Response, error)
- func (a *ServicesApiService) Updatehealth(ctx _context.Context, serviceId string, ...) (*_nethttp.Response, error)
- type ServicesApiUpdateOpts
- type ServicesApiUpdatehealthOpts
- type SshKey
- type SshKeyAllOf
- type SshKeyEntry
- type SshkeysAPI
- type SshkeysApiAddOpts
- type SshkeysApiDeleteOpts
- type SshkeysApiGetByIDOpts
- type SshkeysApiListOpts
- type SshkeysApiService
- func (a *SshkeysApiService) Add(ctx _context.Context, newSshKey NewSshKey, ...) (SshKey, *_nethttp.Response, error)
- func (a *SshkeysApiService) Delete(ctx _context.Context, sshkeyId string, localVarOptionals *SshkeysApiDeleteOpts) (*_nethttp.Response, error)
- func (a *SshkeysApiService) GetByID(ctx _context.Context, sshkeyId string, ...) (SshKey, *_nethttp.Response, error)
- func (a *SshkeysApiService) List(ctx _context.Context, localVarOptionals *SshkeysApiListOpts) ([]SshKey, *_nethttp.Response, error)
- func (a *SshkeysApiService) Update(ctx _context.Context, sshkeyId string, updateSshKey UpdateSshKey, ...) (SshKey, *_nethttp.Response, error)
- type SshkeysApiUpdateOpts
- type StorageInventory
- type StoragePool
- type SummaryInfo
- type Target
- type Templating
- type TemplatingInfo
- type UpdateHost
- type UpdateHostAllOf
- type UpdateHostIscsiConfig
- type UpdateIpPool
- type UpdateIpPoolAllOf
- type UpdateLimits
- type UpdateNetwork
- type UpdateNetworkAllOf
- type UpdateProfile
- type UpdateProject
- type UpdateProjectAllOf
- type UpdateResourceBase
- type UpdateSshKey
- type UpdateVolume
- type UpdateVolumeAllOf
- type UseRecord
- type UserDefinedSteps
- type UserOp
- type UserOpEnum
- type VaStateEnum
- type VafsConfig
- type Version
- type VersionAPI
- type VersionApiService
- type Volume
- type VolumeAllOf
- type VolumeAttachHostUuid
- type VolumeAttachment
- type VolumeAttachmentAllOf
- type VolumeAttachmentsAPI
- type VolumeAttachmentsApiAddOpts
- type VolumeAttachmentsApiDeleteOpts
- type VolumeAttachmentsApiGetByIDOpts
- type VolumeAttachmentsApiListOpts
- type VolumeAttachmentsApiService
- func (a *VolumeAttachmentsApiService) Add(ctx _context.Context, newVolumeAttachment NewVolumeAttachment, ...) (VolumeAttachment, *_nethttp.Response, error)
- func (a *VolumeAttachmentsApiService) Delete(ctx _context.Context, attachmentId string, ...) (*_nethttp.Response, error)
- func (a *VolumeAttachmentsApiService) GetByID(ctx _context.Context, attachmentId string, ...) (VolumeAttachment, *_nethttp.Response, error)
- func (a *VolumeAttachmentsApiService) List(ctx _context.Context, localVarOptionals *VolumeAttachmentsApiListOpts) ([]VolumeAttachment, *_nethttp.Response, error)
- type VolumeCollection
- type VolumeFlavor
- type VolumeFlavorsInfo
- type VolumeInfo
- type VolumeState
- type VolumeStatus
- type VolumeSubState
- type VolumesAPI
- type VolumesApiAddOpts
- type VolumesApiAttachOpts
- type VolumesApiDeleteOpts
- type VolumesApiDetachOpts
- type VolumesApiGetByIDOpts
- type VolumesApiListOpts
- type VolumesApiService
- func (a *VolumesApiService) Add(ctx _context.Context, newVolume NewVolume, ...) (Volume, *_nethttp.Response, error)
- func (a *VolumesApiService) Attach(ctx _context.Context, volumeId string, ...) (VolumeAttachment, *_nethttp.Response, error)
- func (a *VolumesApiService) Delete(ctx _context.Context, volumeId string, localVarOptionals *VolumesApiDeleteOpts) (*_nethttp.Response, error)
- func (a *VolumesApiService) Detach(ctx _context.Context, volumeId string, ...) (*_nethttp.Response, error)
- func (a *VolumesApiService) GetByID(ctx _context.Context, volumeId string, ...) (Volume, *_nethttp.Response, error)
- func (a *VolumesApiService) List(ctx _context.Context, localVarOptionals *VolumesApiListOpts) ([]Volume, *_nethttp.Response, error)
- func (a *VolumesApiService) Update(ctx _context.Context, volumeId string, updateVolume UpdateVolume, ...) (Volume, *_nethttp.Response, error)
- type VolumesApiUpdateOpts
Constants ¶
This section is empty.
Variables ¶
var ( // ContextOAuth2 takes an oauth2.TokenSource as authentication for the request. ContextOAuth2 = contextKey("token") // ContextBasicAuth takes BasicAuth as authentication for the request. ContextBasicAuth = contextKey("basic") // ContextAccessToken takes a string oauth2 access token as authentication for the request. ContextAccessToken = contextKey("accesstoken") // ContextAPIKey takes an APIKey as authentication for the request ContextAPIKey = contextKey("apikey") )
Functions ¶
Types ¶
type APIClient ¶
type APIClient struct { AllocationApi AllocationAPI AvailableResourcesApi AvailableResourcesAPI HostsApi HostsAPI IppoolsApi IPPoolsAPI NetworksApi NetworksAPI ProjectsApi ProjectsAPI ProjectsInfoApi ProjectsInfoAPI ServicesApi ServicesAPI SshkeysApi SshkeysAPI VersionApi VersionAPI VolumeAttachmentsApi VolumeAttachmentsAPI VolumesApi VolumesAPI // contains filtered or unexported fields }
APIClient manages communication with the HPE GreenLake for bare metal API API vv1 In most cases there should be only one, shared, APIClient.
func NewAPIClient ¶
func NewAPIClient(cfg *Configuration) *APIClient
NewAPIClient creates a new API client. Requires a userAgent string describing your application. optionally a custom http.Client to allow for advanced features such as caching.
func (*APIClient) ChangeBasePath ¶
ChangeBasePath changes base path to allow switching to mocks
func (*APIClient) GetConfig ¶
func (c *APIClient) GetConfig() *Configuration
Allow modification of underlying config for alternate implementations and testing Caution: modifying the configuration while live can cause data races and potentially unwanted behavior
type APIKey ¶
APIKey provides API key based authentication to a request passed via context using ContextAPIKey
type APIResponse ¶
type APIResponse struct { *http.Response `json:"-"` Message string `json:"message,omitempty"` // Operation is the name of the OpenAPI operation. Operation string `json:"operation,omitempty"` // RequestURL is the request URL. This value is always available, even if the // embedded *http.Response is nil. RequestURL string `json:"url,omitempty"` // Method is the HTTP method used for the request. This value is always // available, even if the embedded *http.Response is nil. Method string `json:"method,omitempty"` // Payload holds the contents of the response body (which may be nil or empty). // This is provided here as the raw response.Body() reader will have already // been drained. Payload []byte `json:"-"` }
APIResponse stores the API response returned by the server.
func NewAPIResponse ¶
func NewAPIResponse(r *http.Response) *APIResponse
NewAPIResponse returns a new APIResonse object.
func NewAPIResponseWithError ¶
func NewAPIResponseWithError(errorMessage string) *APIResponse
NewAPIResponseWithError returns a new APIResponse object with the provided error message.
type AddVolume ¶
type AddVolume struct { Name string `json:"Name,omitempty"` Description string `json:"Description,omitempty"` // This object is used for new volume creation in the host create operation. Since host create already has location ID that field is not provided in this object. FlavorID string `json:"FlavorID,omitempty"` // The size of the volume in GiB Capacity int64 `json:"Capacity,omitempty"` Shareable bool `json:"Shareable,omitempty"` // The storage pool is one of those listed by the StoragePools array returned as part of the get /available-resources call that are available to create volumes of the specified flavor and location. StoragePoolID string `json:"StoragePoolID,omitempty"` // The optional volume collection is one of those listed by the VolumeCollections array returned as part of the get /available-resources call VolumeCollectionID string `json:"VolumeCollectionID,omitempty"` }
AddVolume struct for AddVolume
type Algorithm ¶ added in v1.5.0
type Algorithm string
Algorithm The algorithm used to generate the Image Signature. Currently sha256sum and sha512sum are supported.
type Allocation ¶ added in v1.4.6
type Allocation struct { // Type of the resource the allocation information is listed for. ResourceType string `json:"ResourceType"` // Total number of servers. Total int32 `json:"Total"` // Instance type family name. InstanceFamily string `json:"InstanceFamily"` // Server instance type InstanceType string `json:"InstanceType"` // Available number of servers. Available int32 `json:"Available"` // Array listing of server allocation information for each service type. AllocationInfo []ServiceServerInfo `json:"AllocationInfo"` }
Allocation allocation of servers for each PCE service.
type AllocationAPI ¶ added in v1.4.6
type AllocationAPI interface { /* GetBySite Get servers allocation Returns an array of allocation information for each server instance type. Each instance type's allocation information is further grouped by service type. When using a Metal token, the value in the 'Membership' header determines the scope of the response, i.e., Project or Hoster. However, the default scope is Tenant/Hoster when using the GL IAM token. If the allocation data is needed for a specific project, then the 'Project' header must be present in the request. If the 'siteID' query parameter is present, the information returned is specific to that site ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param optional nil or *AllocationApiGetBySiteOpts - Optional Parameters: - @param "SiteID" (optional.String) - site ID - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return []Allocation */ GetBySite(ctx _context.Context, localVarOptionals *AllocationApiGetBySiteOpts) ([]Allocation, *_nethttp.Response, error) /* StorageGetBySite Get storage allocation Returns an array of allocation information for each server instance type. Each instance type's allocation information is further grouped by service type. When using a Metal token, the value in the 'Membership' header determines the scope of the response, i.e., Project or Hoster. However, the default scope is Tenant/Hoster when using the GL IAM token. If the allocation data is needed for a specific project, then the 'Project' header must be present in the request. If the 'siteID' query parameter is present, the information returned is specific to that site ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param optional nil or *AllocationApiStorageGetBySiteOpts - Optional Parameters: - @param "SiteID" (optional.String) - site ID - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return []AllocationStorage */ StorageGetBySite(ctx _context.Context, localVarOptionals *AllocationApiStorageGetBySiteOpts) ([]AllocationStorage, *_nethttp.Response, error) }
AllocationAPI defines the client functions provided for Allocation.
type AllocationApiGetBySiteOpts ¶ added in v1.4.10
type AllocationApiGetBySiteOpts struct { SiteID optional.String XRole optional.String XWorkspaceid optional.String }
AllocationApiGetBySiteOpts Optional parameters for the method 'GetBySite'
type AllocationApiService ¶ added in v1.4.6
type AllocationApiService service
AllocationApiService AllocationApi service
func (*AllocationApiService) GetBySite ¶ added in v1.4.6
func (a *AllocationApiService) GetBySite(ctx _context.Context, localVarOptionals *AllocationApiGetBySiteOpts) ([]Allocation, *_nethttp.Response, error)
GetBySite Get servers allocation Returns an array of allocation information for each server instance type. Each instance type's allocation information is further grouped by service type. When using a Metal token, the value in the 'Membership' header determines the scope of the response, i.e., Project or Hoster. However, the default scope is Tenant/Hoster when using the GL IAM token. If the allocation data is needed for a specific project, then the 'Project' header must be present in the request. If the 'siteID' query parameter is present, the information returned is specific to that site ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param optional nil or *AllocationApiGetBySiteOpts - Optional Parameters:
- @param "SiteID" (optional.String) - site ID
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return []Allocation
func (*AllocationApiService) StorageGetBySite ¶ added in v1.4.6
func (a *AllocationApiService) StorageGetBySite(ctx _context.Context, localVarOptionals *AllocationApiStorageGetBySiteOpts) ([]AllocationStorage, *_nethttp.Response, error)
StorageGetBySite Get storage allocation Returns an array of allocation information for each server instance type. Each instance type's allocation information is further grouped by service type. When using a Metal token, the value in the 'Membership' header determines the scope of the response, i.e., Project or Hoster. However, the default scope is Tenant/Hoster when using the GL IAM token. If the allocation data is needed for a specific project, then the 'Project' header must be present in the request. If the 'siteID' query parameter is present, the information returned is specific to that site ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param optional nil or *AllocationApiStorageGetBySiteOpts - Optional Parameters:
- @param "SiteID" (optional.String) - site ID
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return []AllocationStorage
type AllocationApiStorageGetBySiteOpts ¶ added in v1.4.7
type AllocationApiStorageGetBySiteOpts struct { SiteID optional.String XRole optional.String XWorkspaceid optional.String }
AllocationApiStorageGetBySiteOpts Optional parameters for the method 'StorageGetBySite'
type AllocationStorage ¶ added in v1.4.7
type AllocationStorage struct { // Type of the resource the allocation information is listed for. ResourceType string `json:"ResourceType"` // Total storage capacity in TB Total float32 `json:"Total"` // Instance type family name. InstanceFamily string `json:"InstanceFamily"` // volume type InstanceType string `json:"InstanceType"` // Available storage space in TB Available float32 `json:"Available"` // Array listing the storage allocation information for each service type. AllocationInfo []ServiceStorageInfo `json:"AllocationInfo"` }
AllocationStorage Allocation of storage for each PCE service.
type AttributeRule ¶ added in v1.5.0
type AttributeRule struct { // The machine attribute. Attribute string `json:"Attribute"` // The value for the attribute. Value string `json:"Value"` Operator ClassifierOperator `json:"Operator"` }
AttributeRule Describes a machine classifier attribute rule.
type AvailableImage ¶
type AvailableImage struct { // Unique ID for imaging service ID string `json:"ID"` // Top-level grouping of imaging services that may reference an OS or application type Category string `json:"Category"` // Second-level grouping of imaging services. Typically references a specific OS or application. Flavor string `json:"Flavor"` // Name of imaging service. Name string `json:"Name"` // Specific version of a imaging service flavor. Version string `json:"Version"` // Additional image information for additional services added to the OS Description string `json:"Description"` }
AvailableImage Entry describing an available imaging service
type AvailableNetwork ¶
type AvailableNetwork struct { // ID of the network ID string `json:"ID"` // The name of the network Name string `json:"Name"` // The location ID is the data center location of the resource. The LocationID must be one of those provided by the LocationInfo array returned as part of the get /available-resources call. The locations are typically described by country, region, and data center. LocationID string `json:"LocationID"` Description string `json:"Description"` HostUse NetworkHostUse `json:"HostUse"` Purpose NetworkPurpose `json:"Purpose"` IPPoolID string `json:"IPPoolID"` // VLAN ID of the network VLAN int32 `json:"VLAN"` // VNI ID of the network VNI int32 `json:"VNI"` }
AvailableNetwork Entry of a network available within a data center location
type AvailableResources ¶
type AvailableResources struct { // Array listing the available host imaging services Images []AvailableImage `json:"Images"` // Array listing the data center locations with available resources Locations []LocationInfo `json:"Locations"` // Array listing the networks available for host connections Networks []AvailableNetwork `json:"Networks"` // Array listing the available machine (server) sizes MachineSizes []MachineSize `json:"MachineSizes"` // Array listing the available volume flavors VolumeFlavors []VolumeFlavor `json:"VolumeFlavors"` // Array listing the existing project volumes that could be attached to a host Volumes []VolumeInfo `json:"Volumes"` // Array listing the number of machines of each size in each location MachineInventory []MachineInventory `json:"MachineInventory"` // Array providing information on the amount of available storage of each flavor in each location StorageInventory []StorageInventory `json:"StorageInventory"` // Array listing pre-defined SSH keys that could be referenced when creating a Host SSHKeys []SshKeyEntry `json:"SSHKeys"` // Array listing the available storage pools StoragePools []StoragePool `json:"StoragePools"` // Array listing the available volume collections VolumeCollections []VolumeCollection `json:"VolumeCollections"` }
AvailableResources struct for AvailableResources
type AvailableResourcesAPI ¶
type AvailableResourcesAPI interface { /* List Get lists of available resources for creating hosts and volumes Used to get lists of options that are used when creating hosts and volumes. A get /available-resources will return an object that includes the following arrays: * Images - A list of image service IDs along with their category (Linux), flavor (ubuntu), and version (18.04) * MachineSizes - A list of machine size IDs along with the machine size names and detailed descriptions * Locations - A list of location IDs along with their country, region, and data center. * Networks - A list of available Network IDs along with the network name, location ID, network kind, and host usage (Required, Default, Optional) * MachineInventory - Information about the available inventory of machines based on location ID and machine size ID. While this information may change rapidly, it can be used by GUIs and systems to restrict host creates to locations with the desired machine size. * StorageInventory - Information about the current available storage capacity for a specific volume flavor by site. * VolumeFlavors - A list of volume flavor IDs along with their name and detailed description. * Volumes - A list of current, existing volumes. If the volume is in the the right state, it could be attached to a new Host. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param optional nil or *AvailableResourcesApiListOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return AvailableResources */ List(ctx _context.Context, localVarOptionals *AvailableResourcesApiListOpts) (AvailableResources, *_nethttp.Response, error) }
AvailableResourcesAPI defines the client functions provided for AvailableResources.
type AvailableResourcesApiListOpts ¶ added in v1.5.13
AvailableResourcesApiListOpts Optional parameters for the method 'List'
type AvailableResourcesApiService ¶
type AvailableResourcesApiService service
AvailableResourcesApiService AvailableResourcesApi service
func (*AvailableResourcesApiService) List ¶
func (a *AvailableResourcesApiService) List(ctx _context.Context, localVarOptionals *AvailableResourcesApiListOpts) (AvailableResources, *_nethttp.Response, error)
List Get lists of available resources for creating hosts and volumes Used to get lists of options that are used when creating hosts and volumes. A get /available-resources will return an object that includes the following arrays: * Images - A list of image service IDs along with their category (Linux), flavor (ubuntu), and version (18.04) * MachineSizes - A list of machine size IDs along with the machine size names and detailed descriptions * Locations - A list of location IDs along with their country, region, and data center. * Networks - A list of available Network IDs along with the network name, location ID, network kind, and host usage (Required, Default, Optional) * MachineInventory - Information about the available inventory of machines based on location ID and machine size ID. While this information may change rapidly, it can be used by GUIs and systems to restrict host creates to locations with the desired machine size. * StorageInventory - Information about the current available storage capacity for a specific volume flavor by site. * VolumeFlavors - A list of volume flavor IDs along with their name and detailed description. * Volumes - A list of current, existing volumes. If the volume is in the the right state, it could be attached to a new Host. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param optional nil or *AvailableResourcesApiListOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return AvailableResources
type BasicAuth ¶
type BasicAuth struct { UserName string `json:"userName,omitempty"` Password string `json:"password,omitempty"` }
BasicAuth provides basic http authentication to a request passed via context using ContextBasicAuth
type BondMode ¶ added in v1.5.0
type BondMode string
BondMode Specifies the policy indicating how bonding slaves are used during network transmission.
type BootMethod ¶ added in v1.5.0
type BootMethod string
BootMethod Indicates how the service expects the machine to be booted.
const ( BOOTMETHOD_PXE BootMethod = "pxe" BOOTMETHOD_UEFI_SHELL BootMethod = "uefi-shell" BOOTMETHOD_SVC_OS BootMethod = "svc-os" BOOTMETHOD_NA BootMethod = "na" )
List of BootMethod
type ClassifierOperator ¶ added in v1.5.0
type ClassifierOperator string
ClassifierOperator The operator used for comparison.
const ( CLASSIFIEROPERATOR_CONTAINS ClassifierOperator = "contains" CLASSIFIEROPERATOR_CONTAINSNOCASE ClassifierOperator = "containsnocase" CLASSIFIEROPERATOR_OMITS ClassifierOperator = "omits" CLASSIFIEROPERATOR_OMITSNOCASE ClassifierOperator = "omitsnocase" CLASSIFIEROPERATOR_STARTSWITH ClassifierOperator = "startswith" CLASSIFIEROPERATOR_STARTSWITHNOCASE ClassifierOperator = "startswithnocase" CLASSIFIEROPERATOR_ENDSWITH ClassifierOperator = "endswith" CLASSIFIEROPERATOR_ENDSWITHNOCASE ClassifierOperator = "endswithnocase" CLASSIFIEROPERATOR_ ClassifierOperator = "==" CLASSIFIEROPERATOR_NOT_EQUAL ClassifierOperator = "!=" CLASSIFIEROPERATOR_LESS_THAN ClassifierOperator = "<" CLASSIFIEROPERATOR_LESS_THAN_OR_EQUAL_TO ClassifierOperator = "<=" CLASSIFIEROPERATOR_GREATER_THAN ClassifierOperator = ">" CLASSIFIEROPERATOR_GREATER_THAN_OR_EQUAL_TO ClassifierOperator = ">=" CLASSIFIEROPERATOR_MATCH ClassifierOperator = "match" )
List of ClassifierOperator
type Configuration ¶
type Configuration struct { BasePath string `json:"basePath,omitempty"` Host string `json:"host,omitempty"` Scheme string `json:"scheme,omitempty"` DefaultHeader map[string]string `json:"defaultHeader,omitempty"` UserAgent string `json:"userAgent,omitempty"` Debug bool `json:"debug,omitempty"` Servers []ServerConfiguration HTTPClient *http.Client }
Configuration stores the configuration of the API client
func NewConfiguration ¶
func NewConfiguration() *Configuration
NewConfiguration returns a new Configuration object
func (*Configuration) AddDefaultHeader ¶
func (c *Configuration) AddDefaultHeader(key string, value string)
AddDefaultHeader adds a new HTTP header to the default header in the request
type Country ¶
type Country string
Country the model 'Country'
const ( COUNTRY_USA Country = "USA" COUNTRY_AFG Country = "AFG" COUNTRY_ALA Country = "ALA" COUNTRY_ALB Country = "ALB" COUNTRY_DZA Country = "DZA" COUNTRY_ASM Country = "ASM" COUNTRY_AND Country = "AND" COUNTRY_AGO Country = "AGO" COUNTRY_AIA Country = "AIA" COUNTRY_ATA Country = "ATA" COUNTRY_ATG Country = "ATG" COUNTRY_ARG Country = "ARG" COUNTRY_ARM Country = "ARM" COUNTRY_ABW Country = "ABW" COUNTRY_AUS Country = "AUS" COUNTRY_AUT Country = "AUT" COUNTRY_AZE Country = "AZE" COUNTRY_BHS Country = "BHS" COUNTRY_BHR Country = "BHR" COUNTRY_BGD Country = "BGD" COUNTRY_BRB Country = "BRB" COUNTRY_BLR Country = "BLR" COUNTRY_BEL Country = "BEL" COUNTRY_BLZ Country = "BLZ" COUNTRY_BEN Country = "BEN" COUNTRY_BMU Country = "BMU" COUNTRY_BTN Country = "BTN" COUNTRY_BOL Country = "BOL" COUNTRY_BES Country = "BES" COUNTRY_BIH Country = "BIH" COUNTRY_BWA Country = "BWA" COUNTRY_BVT Country = "BVT" COUNTRY_BRA Country = "BRA" COUNTRY_IOT Country = "IOT" COUNTRY_BRN Country = "BRN" COUNTRY_BGR Country = "BGR" COUNTRY_BFA Country = "BFA" COUNTRY_BDI Country = "BDI" COUNTRY_KHM Country = "KHM" COUNTRY_CMR Country = "CMR" COUNTRY_CAN Country = "CAN" COUNTRY_CPV Country = "CPV" COUNTRY_CYM Country = "CYM" COUNTRY_CAF Country = "CAF" COUNTRY_TCD Country = "TCD" COUNTRY_CHL Country = "CHL" COUNTRY_CHN Country = "CHN" COUNTRY_CXR Country = "CXR" COUNTRY_CCK Country = "CCK" COUNTRY_COL Country = "COL" COUNTRY_COM Country = "COM" COUNTRY_COG Country = "COG" COUNTRY_COD Country = "COD" COUNTRY_COK Country = "COK" COUNTRY_CRI Country = "CRI" COUNTRY_CIV Country = "CIV" COUNTRY_HRV Country = "HRV" COUNTRY_CUB Country = "CUB" COUNTRY_CUW Country = "CUW" COUNTRY_CYP Country = "CYP" COUNTRY_CZE Country = "CZE" COUNTRY_DNK Country = "DNK" COUNTRY_DJI Country = "DJI" COUNTRY_DMA Country = "DMA" COUNTRY_DOM Country = "DOM" COUNTRY_ECU Country = "ECU" COUNTRY_EGY Country = "EGY" COUNTRY_SLV Country = "SLV" COUNTRY_GNQ Country = "GNQ" COUNTRY_ERI Country = "ERI" COUNTRY_EST Country = "EST" COUNTRY_ETH Country = "ETH" COUNTRY_FLK Country = "FLK" COUNTRY_FRO Country = "FRO" COUNTRY_FJI Country = "FJI" COUNTRY_FIN Country = "FIN" COUNTRY_FRA Country = "FRA" COUNTRY_GUF Country = "GUF" COUNTRY_PYF Country = "PYF" COUNTRY_ATF Country = "ATF" COUNTRY_GAB Country = "GAB" COUNTRY_GMB Country = "GMB" COUNTRY_GEO Country = "GEO" COUNTRY_DEU Country = "DEU" COUNTRY_GHA Country = "GHA" COUNTRY_GIB Country = "GIB" COUNTRY_GRC Country = "GRC" COUNTRY_GRL Country = "GRL" COUNTRY_GRD Country = "GRD" COUNTRY_GLP Country = "GLP" COUNTRY_GUM Country = "GUM" COUNTRY_GTM Country = "GTM" COUNTRY_GGY Country = "GGY" COUNTRY_GIN Country = "GIN" COUNTRY_GNB Country = "GNB" COUNTRY_GUY Country = "GUY" COUNTRY_HTI Country = "HTI" COUNTRY_HMD Country = "HMD" COUNTRY_VAT Country = "VAT" COUNTRY_HND Country = "HND" COUNTRY_HKG Country = "HKG" COUNTRY_HUN Country = "HUN" COUNTRY_ISL Country = "ISL" COUNTRY_IND Country = "IND" COUNTRY_IDN Country = "IDN" COUNTRY_IRN Country = "IRN" COUNTRY_IRQ Country = "IRQ" COUNTRY_IRL Country = "IRL" COUNTRY_IMN Country = "IMN" COUNTRY_ISR Country = "ISR" COUNTRY_ITA Country = "ITA" COUNTRY_JAM Country = "JAM" COUNTRY_JPN Country = "JPN" COUNTRY_JEY Country = "JEY" COUNTRY_JOR Country = "JOR" COUNTRY_KAZ Country = "KAZ" COUNTRY_KEN Country = "KEN" COUNTRY_KIR Country = "KIR" COUNTRY_PRK Country = "PRK" COUNTRY_KOR Country = "KOR" COUNTRY_KWT Country = "KWT" COUNTRY_KGZ Country = "KGZ" COUNTRY_LAO Country = "LAO" COUNTRY_LVA Country = "LVA" COUNTRY_LBN Country = "LBN" COUNTRY_LSO Country = "LSO" COUNTRY_LBR Country = "LBR" COUNTRY_LBY Country = "LBY" COUNTRY_LIE Country = "LIE" COUNTRY_LTU Country = "LTU" COUNTRY_LUX Country = "LUX" COUNTRY_MAC Country = "MAC" COUNTRY_MKD Country = "MKD" COUNTRY_MDG Country = "MDG" COUNTRY_MWI Country = "MWI" COUNTRY_MYS Country = "MYS" COUNTRY_MDV Country = "MDV" COUNTRY_MLI Country = "MLI" COUNTRY_MLT Country = "MLT" COUNTRY_MHL Country = "MHL" COUNTRY_MTQ Country = "MTQ" COUNTRY_MRT Country = "MRT" COUNTRY_MUS Country = "MUS" COUNTRY_MYT Country = "MYT" COUNTRY_MEX Country = "MEX" COUNTRY_FSM Country = "FSM" COUNTRY_MDA Country = "MDA" COUNTRY_MCO Country = "MCO" COUNTRY_MNG Country = "MNG" COUNTRY_MNE Country = "MNE" COUNTRY_MSR Country = "MSR" COUNTRY_MAR Country = "MAR" COUNTRY_MOZ Country = "MOZ" COUNTRY_MMR Country = "MMR" COUNTRY_NAM Country = "NAM" COUNTRY_NRU Country = "NRU" COUNTRY_NPL Country = "NPL" COUNTRY_NLD Country = "NLD" COUNTRY_NCL Country = "NCL" COUNTRY_NZL Country = "NZL" COUNTRY_NIC Country = "NIC" COUNTRY_NER Country = "NER" COUNTRY_NGA Country = "NGA" COUNTRY_NIU Country = "NIU" COUNTRY_NFK Country = "NFK" COUNTRY_MNP Country = "MNP" COUNTRY_NOR Country = "NOR" COUNTRY_OMN Country = "OMN" COUNTRY_PAK Country = "PAK" COUNTRY_PLW Country = "PLW" COUNTRY_PSE Country = "PSE" COUNTRY_PAN Country = "PAN" COUNTRY_PNG Country = "PNG" COUNTRY_PRY Country = "PRY" COUNTRY_PER Country = "PER" COUNTRY_PHL Country = "PHL" COUNTRY_PCN Country = "PCN" COUNTRY_POL Country = "POL" COUNTRY_PRT Country = "PRT" COUNTRY_PRI Country = "PRI" COUNTRY_QAT Country = "QAT" COUNTRY_REU Country = "REU" COUNTRY_ROU Country = "ROU" COUNTRY_RUS Country = "RUS" COUNTRY_RWA Country = "RWA" COUNTRY_BLM Country = "BLM" COUNTRY_SHN Country = "SHN" COUNTRY_KNA Country = "KNA" COUNTRY_LCA Country = "LCA" COUNTRY_MAF Country = "MAF" COUNTRY_SPM Country = "SPM" COUNTRY_VCT Country = "VCT" COUNTRY_WSM Country = "WSM" COUNTRY_SMR Country = "SMR" COUNTRY_STP Country = "STP" COUNTRY_SAU Country = "SAU" COUNTRY_SEN Country = "SEN" COUNTRY_SRB Country = "SRB" COUNTRY_SYC Country = "SYC" COUNTRY_SLE Country = "SLE" COUNTRY_SGP Country = "SGP" COUNTRY_SXM Country = "SXM" COUNTRY_SVK Country = "SVK" COUNTRY_SVN Country = "SVN" COUNTRY_SLB Country = "SLB" COUNTRY_SOM Country = "SOM" COUNTRY_ZAF Country = "ZAF" COUNTRY_SGS Country = "SGS" COUNTRY_SSD Country = "SSD" COUNTRY_ESP Country = "ESP" COUNTRY_LKA Country = "LKA" COUNTRY_SDN Country = "SDN" COUNTRY_SUR Country = "SUR" COUNTRY_SJM Country = "SJM" COUNTRY_SWZ Country = "SWZ" COUNTRY_SWE Country = "SWE" COUNTRY_CHE Country = "CHE" COUNTRY_SYR Country = "SYR" COUNTRY_TWN Country = "TWN" COUNTRY_TJK Country = "TJK" COUNTRY_TZA Country = "TZA" COUNTRY_THA Country = "THA" COUNTRY_TLS Country = "TLS" COUNTRY_TGO Country = "TGO" COUNTRY_TKL Country = "TKL" COUNTRY_TON Country = "TON" COUNTRY_TTO Country = "TTO" COUNTRY_TUN Country = "TUN" COUNTRY_TUR Country = "TUR" COUNTRY_TKM Country = "TKM" COUNTRY_TCA Country = "TCA" COUNTRY_TUV Country = "TUV" COUNTRY_UGA Country = "UGA" COUNTRY_UKR Country = "UKR" COUNTRY_ARE Country = "ARE" COUNTRY_GBR Country = "GBR" COUNTRY_UMI Country = "UMI" COUNTRY_URY Country = "URY" COUNTRY_UZB Country = "UZB" COUNTRY_VUT Country = "VUT" COUNTRY_VEN Country = "VEN" COUNTRY_VNM Country = "VNM" COUNTRY_VGB Country = "VGB" COUNTRY_VIR Country = "VIR" COUNTRY_WLF Country = "WLF" COUNTRY_ESH Country = "ESH" COUNTRY_YEM Country = "YEM" COUNTRY_ZMB Country = "ZMB" COUNTRY_ZWE Country = "ZWE" )
List of Country
type DiskPartitions ¶ added in v1.5.0
type DiskPartitions struct { // Indicates the device name of the disk of the form /dev/sdX as known by the os e.g. /dev/sda This is the default device that will be used to deploy the OS Image to the host. The default value may be overridden when creating the host by a UUID/NAA/EUI logical volume ID (BootDeviceID). Device string `json:"Device"` Description string `json:"Description"` // StartOffset is the offset from the start of the disk to the first partition, if zero a default of 1 MiB (2048 sectors) will be used, units bytes. StartOffset int64 `json:"StartOffset"` TableType PartitionTable `json:"TableType"` Partitions []Partition `json:"Partitions"` }
DiskPartitions Disk partition to be created on the host.
type Encoding ¶ added in v1.5.0
type Encoding string
Encoding Describes how a file's contents may be encoded.
type ErrorResponse ¶
type ErrorResponse struct { // Description of the error condition Message string `json:"message"` // Optional verbose description of the error condition Details string `json:"details,omitempty"` }
ErrorResponse struct for ErrorResponse
type FileInfo ¶ added in v1.5.0
type FileInfo struct { // Unique ID of this FileInfo. ID string `json:"ID"` // Depending upon the service approach, this is either the mount-path where the file should be placed or the relative URL where it should be served. Path string `json:"Path"` // Size of the files in bytes. FileSize int64 `json:"FileSize"` // Maximum amount of time in seconds to download the Service image. DownloadTimeout int64 `json:"DownloadTimeout"` // The signature (checksum) of the image to download. This ensure the integrity and authenticity of the images downloaded. Signature string `json:"Signature"` Algorithm Algorithm `json:"Algorithm"` // Indicates if the file is compressed and should be expanded using the filename suffix in the Path as a guide. Expand bool `json:"Expand"` // URL of the file that should be returned in REST response or used for display purpose. The file is downloaded from this URL only when SecureURL is not set. DisplayURL string `json:"DisplayURL"` // URL of the file that should be kept secret. If this field is set, it will be used for accessing the file and DisplayURL will be ignored. SecureURL string `json:"SecureURL"` // Indicates if the web server the file is being downloaded from should have the SSL certificate validation bypassed. Useful for downloading from an internal webserver with either self-signed or internal CA issued SSL certificate. SkipSslVerify bool `json:"SkipSslVerify,omitempty"` }
FileInfo Information about the file associated with the OS service image.
type FlavorDesc ¶
type FlavorDesc struct { // Groups flavors together to make finding a specific flavor easier Collection string `json:"Collection"` Banner1 string `json:"Banner1"` Banner2 string `json:"Banner2"` Bullets []string `json:"Bullets"` // URI to more information about the specific machine size or volume flavor InfoLink string `json:"InfoLink"` // Supplemental tooltip text to use in GUIs Tooltip string `json:"Tooltip"` }
FlavorDesc Describes the details of machine size or volume flavor
type GenericOpenAPIError ¶
type GenericOpenAPIError struct {
// contains filtered or unexported fields
}
GenericOpenAPIError Provides access to the body, error and model on returned errors.
func NewGenericOpenAPIError ¶
func NewGenericOpenAPIError(body []byte, error string, model interface{}) GenericOpenAPIError
NewGenericOpenAPIError creates a GenericOpenAPIError from the provided parameters.
func (GenericOpenAPIError) Body ¶
func (e GenericOpenAPIError) Body() []byte
Body returns the raw bytes of the response
func (GenericOpenAPIError) Error ¶
func (e GenericOpenAPIError) Error() string
Error returns non-empty string if there was an error.
func (GenericOpenAPIError) Message ¶
func (e GenericOpenAPIError) Message() string
Message returns the short error message for display purpose If e.model is set and is of type ErrorResponse, then returns the value in ErrorResponse.Message, otherwise, returns the entire response body in string format.
func (GenericOpenAPIError) Model ¶
func (e GenericOpenAPIError) Model() interface{}
Model returns the unpacked model of the error
type HealthStatus ¶
type HealthStatus string
HealthStatus the model 'HealthStatus'
const ( HEALTHSTATUS_OK HealthStatus = "OK" HEALTHSTATUS_WARNING HealthStatus = "Warning" HEALTHSTATUS_CRITICAL HealthStatus = "Critical" HEALTHSTATUS_UNKNOWN HealthStatus = "Unknown" )
List of HealthStatus
type Host ¶
type Host struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` // Time when the resource was created in the database Created time.Time `json:"Created"` // Time when the resource was last modified in the database Modified time.Time `json:"Modified"` Description string `json:"Description"` // The image service identifier used to image the server. ServiceID is one of those listed by the Images array returned as part of the get /available-resources call. ServiceID string `json:"ServiceID"` // Overall flavor of server image used to image the server ServiceFlavor string `json:"ServiceFlavor"` // Version of the ServiceFlavor used to image the server ServiceVersion string `json:"ServiceVersion"` // The location of the machine assigned to the host. LocationID is one of those listed by the LocationInfo array returned as part of the get /available-resources call. LocationID string `json:"LocationID"` // Name of the machine size used to identify and select the machine assigned to the host. MachineSizes are described by the MachineSize array returned by the get /available-resources call. MachineSizeName string `json:"MachineSizeName"` // UniqueID referring to the machine size used to identify and select the machine assigned to the host. MachineSizes are described by the MachineSize array returned by the get /available-resources call. MachineSizeID string `json:"MachineSizeID"` // UniqueID referring to the machine on which this host is running. MachineID string `json:"MachineID"` // IDs of SSH Keys used when configuring the Host SSHKeyIDs []string `json:"SSHKeyIDs"` // Specific SSH keys that were when configuring the host. SSHAuthorizedKeys []string `json:"SSHAuthorizedKeys"` // The list of IDs corresponding to the networks that were provisioned to the host. These networks are among those listed in the Networks array returned by the get /available-resources call. NetworkIDs []string `json:"NetworkIDs"` // The host's default network ID. This needs to be one of the values in the \"NetworkIDs\" list. NetworkForDefaultRoute string `json:"NetworkForDefaultRoute"` // ID of the network selected to be untagged. This needs to be one of the values in the \"NetworkIDs\" list. NetworkUntagged string `json:"NetworkUntagged"` // The list of pre-allocated IP addresses corresponding to the list of NetworkIDs. Pre-allocated IP addresses are optional, but required when updating a host containing Pre-allocated IP addresses. PreAllocatedIPs []string `json:"PreAllocatedIPs"` // The map of Service Network (Provider) ID to Provider MAC address. The Service Network must be a provider network provisioned to this host. Any Service Networks not included here will default to the physical MAC learned during machine discovery. ServiceNetsProviderMAC map[string]string `json:"ServiceNetsProviderMAC"` // User-provided data attached to the image configuration data when the host was provisioned UserData string `json:"UserData"` // User-provided data to represent the identity of the host within an application environment. For example, this could be set to represent the Kubernetes node ID if the host is provisioned as a Kubernetes node. NodeID string `json:"NodeID"` ISCSIConfig *HostIscsiConfig `json:"ISCSIConfig"` // Details describing host network connections Connections []HostConnection `json:"Connections"` // True if the Host has been deleted. Deleted bool `json:"Deleted"` // Describes if the portal is in active communication to the device PortalCommOkay bool `json:"PortalCommOkay"` PowerStatus HostPowerState `json:"PowerStatus"` State HostState `json:"State"` Substate HostSubstate `json:"Substate"` StateTime time.Time `json:"StateTime"` SubstateTime time.Time `json:"SubstateTime"` Progress int64 `json:"Progress"` Alert bool `json:"Alert"` AlertInfo []HostAlertInfo `json:"AlertInfo"` // The current workflow the host is in Workflow string `json:"Workflow"` SummaryStatus HealthStatus `json:"SummaryStatus"` // The map of label name to label value for the resource. Labels map[string]string `json:"Labels"` // FC HBA world wide port names WWPNs []string `json:"WWPNs"` // The ID of the firmware baseline that is installed on the host. FWBaselineID string `json:"FWBaselineID"` // The version of the firmware baseline that is installed on the host. FWBaselineVersion string `json:"FWBaselineVersion"` // The ID of the firmware baseline that is available for the host. This field is only populated when there is a new firmware baseline available. AvailableFWBaselineID string `json:"AvailableFWBaselineID"` // The version of the firmware baseline that is available for the host. This field is only populated when there is a new firmware baseline available. AvailableFWBaselineVersion string `json:"AvailableFWBaselineVersion"` }
Host struct for Host
type HostAlertInfo ¶
type HostAlertInfo struct { // Identifies the type of alert Alert string `json:"Alert"` State HostState `json:"State"` Substate HostSubstate `json:"Substate"` // Provides some detailed description about the Alert Message string `json:"Message"` Time time.Time `json:"Time"` // Used to acknowledge the alert so that the UI can list only unacknowledged alerts Ack bool `json:"Ack"` }
HostAlertInfo struct for HostAlertInfo
type HostAllOf ¶
type HostAllOf struct { Description string `json:"Description"` // The image service identifier used to image the server. ServiceID is one of those listed by the Images array returned as part of the get /available-resources call. ServiceID string `json:"ServiceID"` // Overall flavor of server image used to image the server ServiceFlavor string `json:"ServiceFlavor"` // Version of the ServiceFlavor used to image the server ServiceVersion string `json:"ServiceVersion"` // The location of the machine assigned to the host. LocationID is one of those listed by the LocationInfo array returned as part of the get /available-resources call. LocationID string `json:"LocationID"` // Name of the machine size used to identify and select the machine assigned to the host. MachineSizes are described by the MachineSize array returned by the get /available-resources call. MachineSizeName string `json:"MachineSizeName"` // UniqueID referring to the machine size used to identify and select the machine assigned to the host. MachineSizes are described by the MachineSize array returned by the get /available-resources call. MachineSizeID string `json:"MachineSizeID"` // UniqueID referring to the machine on which this host is running. MachineID string `json:"MachineID"` // IDs of SSH Keys used when configuring the Host SSHKeyIDs []string `json:"SSHKeyIDs"` // Specific SSH keys that were when configuring the host. SSHAuthorizedKeys []string `json:"SSHAuthorizedKeys"` // The list of IDs corresponding to the networks that were provisioned to the host. These networks are among those listed in the Networks array returned by the get /available-resources call. NetworkIDs []string `json:"NetworkIDs"` // The host's default network ID. This needs to be one of the values in the \"NetworkIDs\" list. NetworkForDefaultRoute string `json:"NetworkForDefaultRoute"` // ID of the network selected to be untagged. This needs to be one of the values in the \"NetworkIDs\" list. NetworkUntagged string `json:"NetworkUntagged"` // The list of pre-allocated IP addresses corresponding to the list of NetworkIDs. Pre-allocated IP addresses are optional, but required when updating a host containing Pre-allocated IP addresses. PreAllocatedIPs []string `json:"PreAllocatedIPs"` // The map of Service Network (Provider) ID to Provider MAC address. The Service Network must be a provider network provisioned to this host. Any Service Networks not included here will default to the physical MAC learned during machine discovery. ServiceNetsProviderMAC map[string]string `json:"ServiceNetsProviderMAC"` // User-provided data attached to the image configuration data when the host was provisioned UserData string `json:"UserData"` // User-provided data to represent the identity of the host within an application environment. For example, this could be set to represent the Kubernetes node ID if the host is provisioned as a Kubernetes node. NodeID string `json:"NodeID"` ISCSIConfig *HostIscsiConfig `json:"ISCSIConfig"` // Details describing host network connections Connections []HostConnection `json:"Connections"` // True if the Host has been deleted. Deleted bool `json:"Deleted"` // Describes if the portal is in active communication to the device PortalCommOkay bool `json:"PortalCommOkay"` PowerStatus HostPowerState `json:"PowerStatus"` State HostState `json:"State"` Substate HostSubstate `json:"Substate"` StateTime time.Time `json:"StateTime"` SubstateTime time.Time `json:"SubstateTime"` Progress int64 `json:"Progress"` Alert bool `json:"Alert"` AlertInfo []HostAlertInfo `json:"AlertInfo"` // The current workflow the host is in Workflow string `json:"Workflow"` SummaryStatus HealthStatus `json:"SummaryStatus"` // The map of label name to label value for the resource. Labels map[string]string `json:"Labels"` // FC HBA world wide port names WWPNs []string `json:"WWPNs"` // The ID of the firmware baseline that is installed on the host. FWBaselineID string `json:"FWBaselineID"` // The version of the firmware baseline that is installed on the host. FWBaselineVersion string `json:"FWBaselineVersion"` // The ID of the firmware baseline that is available for the host. This field is only populated when there is a new firmware baseline available. AvailableFWBaselineID string `json:"AvailableFWBaselineID"` // The version of the firmware baseline that is available for the host. This field is only populated when there is a new firmware baseline available. AvailableFWBaselineVersion string `json:"AvailableFWBaselineVersion"` }
HostAllOf struct for HostAllOf
type HostConnection ¶
type HostConnection struct { Name string `json:"Name"` Ports []HostServerPort `json:"Ports"` // Indicates whether the network connection should be a link aggregation group (LAG) HA bool `json:"HA"` // The speed of the physical connection from the server to the top of rack switch Speed string `json:"Speed"` Networks []HostNetworkConnection `json:"Networks"` }
HostConnection struct for HostConnection
type HostIscsiConfig ¶
type HostIscsiConfig struct { // Fully qualified iSCSI intiator name of this host. This is generated when a host is created and the information is pushed to the new host InitiatorName string `json:"InitiatorName"` // CHAP secret as generated by the system when attaching a volume. Visible in VolumeAttachment object. CHAPSecret string `json:"CHAPSecret"` // CHAP user as generated by the system when attaching a volume. Visible in VolumeAttachment object. CHAPUser string `json:"CHAPUser"` ISCSIDiscoveryAddress string `json:"ISCSIDiscoveryAddress"` }
HostIscsiConfig struct for HostIscsiConfig
type HostNetworkConnection ¶
type HostNetworkConnection struct { // Name of the network connection Name string `json:"Name"` // Unique ID corresponding to a network in the local data center NetworkID string `json:"NetworkID"` // IP address for the network connection IP string `json:"IP"` // The IP subnet address Subnet string `json:"Subnet"` Netmask string `json:"Netmask"` // The IP subnet gateway address Gateway string `json:"Gateway"` // List of DNS servers for the IP subnet DNS []string `json:"DNS"` // VLAN ID of the network VLAN int32 `json:"VLAN"` // VNI ID of the network VNI int32 `json:"VNI"` // True if the network is untagged Untagged bool `json:"Untagged"` // Optional web-proxy for external internet access should the IP subnet actually be behind a firewall Proxy string `json:"Proxy"` // Addresses or CIDRs for which proxy requests are not made NoProxy string `json:"NoProxy"` }
HostNetworkConnection struct for HostNetworkConnection
type HostPowerState ¶
type HostPowerState string
HostPowerState Current power status of the underlaying physical server (machine)
const ( HOSTPOWERSTATE_ON HostPowerState = "ON" HOSTPOWERSTATE_OFF HostPowerState = "OFF" HOSTPOWERSTATE_UNKNOWN HostPowerState = "UNKNOWN" )
List of HostPowerState
type HostServerPort ¶
type HostServerPort struct { // Server port name Name string `json:"Name"` // Hardware address for the Ethernet interface (MAC) HWAddr string `json:"HWAddr"` }
HostServerPort struct for HostServerPort
type HostState ¶
type HostState string
HostState Overall host state
const ( HOSTSTATE_EMPTY HostState = "" HOSTSTATE_NEW HostState = "New" HOSTSTATE_DELETING HostState = "Deleting" HOSTSTATE_DELETED HostState = "Deleted" HOSTSTATE_FAILED HostState = "Failed" HOSTSTATE_FORCE_DELETING HostState = "Force Deleting" HOSTSTATE_UPDATING_CONNECTIONS HostState = "Updating Connections" HOSTSTATE_IMAGING HostState = "Imaging" HOSTSTATE_IMAGING_PREP HostState = "Imaging Prep" HOSTSTATE_CONNECTING HostState = "Connecting" HOSTSTATE_BOOTING HostState = "Booting" HOSTSTATE_READY HostState = "Ready" HOSTSTATE_REIMAGING_PREP HostState = "Reimaging Prep" HOSTSTATE_REPLACING HostState = "Replacing" HOSTSTATE_RELEASING HostState = "Releasing" HOSTSTATE_ALLOCATING HostState = "Allocating" HOSTSTATE_MAINTENANCE HostState = "Maintenance" HOSTSTATE_ATTACHING HostState = "Attaching" HOSTSTATE_DETACHING HostState = "Detaching" HOSTSTATE_ISCSI_ATTACHING HostState = "ISCSI Attaching" HOSTSTATE_ALL_DETACHING HostState = "All Detaching" )
List of HostState
type HostSubstate ¶
type HostSubstate string
HostSubstate Host substate within HostState
const ( HOSTSUBSTATE_EMPTY HostSubstate = "" HOSTSUBSTATE_ABORT_DEPLOY HostSubstate = "Abort Deploy" HOSTSUBSTATE_ALLOCATE HostSubstate = "Allocate" HOSTSUBSTATE_ATTACH_VOLUMES HostSubstate = "Attach Volumes" HOSTSUBSTATE_BOOT_SERVICE_OS HostSubstate = "Boot Service-OS" HOSTSUBSTATE_CLEAR_LOG HostSubstate = "Clear Log" HOSTSUBSTATE_COMPLETE HostSubstate = "Complete" HOSTSUBSTATE_CONFIRM_POST_COMPLETE HostSubstate = "Confirm Post Complete" HOSTSUBSTATE_CONNECT HostSubstate = "Connect" HOSTSUBSTATE_CONNECT_PROVISIONING HostSubstate = "Connect Provisioning" HOSTSUBSTATE_DNS_ADD HostSubstate = "DNS Add" HOSTSUBSTATE_DNS_ADD_INIT HostSubstate = "DNS Add Init" HOSTSUBSTATE_DNS_DELETE_INIT HostSubstate = "DNS Delete Init" HOSTSUBSTATE_DNS_DELETE HostSubstate = "DNS Delete" HOSTSUBSTATE_DEPLOY HostSubstate = "Deploy" HOSTSUBSTATE_DETACH_VOLUMES HostSubstate = "Detach Volumes" HOSTSUBSTATE_FAILED HostSubstate = "Failed" HOSTSUBSTATE_IN_MAINTENANCE HostSubstate = "In Maintenance" HOSTSUBSTATE_IN_IMAGING_PREP HostSubstate = "In Imaging Prep" HOSTSUBSTATE_IN_IMAGING_COMPLETE HostSubstate = "In Imaging Complete" HOSTSUBSTATE_INIT HostSubstate = "Init" HOSTSUBSTATE_INIT_ATTACH_VOLUMES HostSubstate = "Init Attach Volumes" HOSTSUBSTATE_INIT_DETACH_VOLUMES HostSubstate = "Init Detach Volumes" HOSTSUBSTATE_INIT_MAINTENANCE HostSubstate = "Init Maintenance" HOSTSUBSTATE_INIT_IMAGING_PREP HostSubstate = "Init Imaging Prep" HOSTSUBSTATE_INIT_IMAGING_COMPLETE HostSubstate = "Init Imaging Complete" HOSTSUBSTATE_INIT_OFF HostSubstate = "Init Off" HOSTSUBSTATE_ISOLATE HostSubstate = "Isolate" HOSTSUBSTATE_POWER_OFF HostSubstate = "Power Off" HOSTSUBSTATE_POWER_ON HostSubstate = "Power On" HOSTSUBSTATE_RELEASE HostSubstate = "Release" HOSTSUBSTATE_RELEASE_WITH_PROBLEM HostSubstate = "Release With Problem" HOSTSUBSTATE_SET_BOOT_DISK HostSubstate = "Set Boot Disk" HOSTSUBSTATE_SNAP_LOG HostSubstate = "Snap Log" HOSTSUBSTATE_SNAP_LOG_OF_FAILURE HostSubstate = "Snap Log of Failure" HOSTSUBSTATE_UPDATE HostSubstate = "Update" )
List of HostSubstate
type HostsAPI ¶
type HostsAPI interface { /* Add Create a new Host Creates a new host object which kicks off the provisioning of a physical server in accordance to the attributes provided for the Host object. Most values for these options must be selected from the set of options provided by the get available-resources API call. The SvcFlavor, SvcVersion, LocationID, SSHKeyIDs, and Network attribute must all be set with appropriate ID values from the available-resources call. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param newHost Defines the configuration of the desired host. See the schema for descriptions of individual attributes. - @param optional nil or *HostsApiAddOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Host */ Add(ctx _context.Context, newHost NewHost, localVarOptionals *HostsApiAddOpts) (Host, *_nethttp.Response, error) /* BootHDD Set HDD boot order on Host by ID Sets a single Host with matching ID to attempt HDD booting. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param hostId ID of Host to set to HDD boot - @param optional nil or *HostsApiBootHDDOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Host */ BootHDD(ctx _context.Context, hostId string, localVarOptionals *HostsApiBootHDDOpts) (Host, *_nethttp.Response, error) /* BootPXE Set PXE boot order on Host by ID Sets a single Host with matching ID to attempt PXE boot when next booting. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param hostId ID of Host to set to PXE boot - @param optional nil or *HostsApiBootPXEOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Host */ BootPXE(ctx _context.Context, hostId string, localVarOptionals *HostsApiBootPXEOpts) (Host, *_nethttp.Response, error) /* Delete Delete a Host Deletes the Host with the matching ID. A host in the 'Ready' state must first be powered-off before a delete will be permitted. Deletes to hosts in other states is permitted regardless of the power state. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param hostId ID of Host to delete - @param optional nil or *HostsApiDeleteOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID */ Delete(ctx _context.Context, hostId string, localVarOptionals *HostsApiDeleteOpts) (*_nethttp.Response, error) /* GetByID Retrieve Host by ID Returns a single Host with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param hostId ID of Host to return - @param optional nil or *HostsApiGetByIDOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Host */ GetByID(ctx _context.Context, hostId string, localVarOptionals *HostsApiGetByIDOpts) (Host, *_nethttp.Response, error) /* List List all Hosts in project Returns an array of all Host objects defined within the project. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param optional nil or *HostsApiListOpts - Optional Parameters: - @param "All" (optional.String) - Includes deleted Host objects in the response when set to \"true\". - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return []Host */ List(ctx _context.Context, localVarOptionals *HostsApiListOpts) ([]Host, *_nethttp.Response, error) /* Maintenance Do maintenance on a Host by ID Do maintenance on a host by executing pre-defined operations. The host must be powered off. The host must also be in the Ready state or in the Failed state and in the Maintenance workflow. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param hostId ID of Host to do maintenance on - @param optional nil or *HostsApiMaintenanceOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Host */ Maintenance(ctx _context.Context, hostId string, localVarOptionals *HostsApiMaintenanceOpts) (Host, *_nethttp.Response, error) /* PowerOff Power off Host by ID Powers off a single Host with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param hostId ID of Host to power off - @param optional nil or *HostsApiPowerOffOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Host */ PowerOff(ctx _context.Context, hostId string, localVarOptionals *HostsApiPowerOffOpts) (Host, *_nethttp.Response, error) /* PowerOn Power on Host by ID Powers on a single Host with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param hostId ID of Host to power on - @param optional nil or *HostsApiPowerOnOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Host */ PowerOn(ctx _context.Context, hostId string, localVarOptionals *HostsApiPowerOnOpts) (Host, *_nethttp.Response, error) /* PowerReset Reset Host by ID Resets a single Host with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param hostId ID of Host to reset - @param optional nil or *HostsApiPowerResetOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Host */ PowerReset(ctx _context.Context, hostId string, localVarOptionals *HostsApiPowerResetOpts) (Host, *_nethttp.Response, error) /* Reimage Reimage Host by ID Re-deploys a host to the same machine. WARNING -- all drives will be erased! Only the Host OS is reinstalled, IP addresses, volumes, etc are not changed. The host must be powered off. The host must also be in the Ready state. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param hostId ID of Host to reimage - @param optional nil or *HostsApiReimageOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Host */ Reimage(ctx _context.Context, hostId string, localVarOptionals *HostsApiReimageOpts) (Host, *_nethttp.Response, error) /* Replace Replace Host by ID Re-deploys a host with a new machine that satisfies the current host settings. WARNING -- all drives will be erased! Only the machine is replaced, IP addresses, volumes, etc are not changed. The host must be powered off. The host must also be in the Ready state or in the Failed state and in the Replace or Maintenace workflow. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param hostId ID of Host to replace - @param optional nil or *HostsApiReplaceOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Host */ Replace(ctx _context.Context, hostId string, localVarOptionals *HostsApiReplaceOpts) (Host, *_nethttp.Response, error) /* Update Update an existing Host Updates the Host with the matching ID. Update is permitted only if the host is in the 'Ready' or 'Connection Updating Failed' state. Only the Host 'Description', 'Networks', 'NetworkForDefaultRoute', 'NetworkUntagged' and 'ISCSIConfig:InitiatorName' can be updated. 'ISCSIConfig:InitiatorName' can be updated only if the host has no volumes attached. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param hostId ID of host to update - @param updateHost Updated Host - @param optional nil or *HostsApiUpdateOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Host */ Update(ctx _context.Context, hostId string, updateHost UpdateHost, localVarOptionals *HostsApiUpdateOpts) (Host, *_nethttp.Response, error) }
HostsAPI defines the client functions provided for Hosts.
type HostsApiAddOpts ¶ added in v1.5.13
HostsApiAddOpts Optional parameters for the method 'Add'
type HostsApiBootHDDOpts ¶ added in v1.5.13
HostsApiBootHDDOpts Optional parameters for the method 'BootHDD'
type HostsApiBootPXEOpts ¶ added in v1.5.13
HostsApiBootPXEOpts Optional parameters for the method 'BootPXE'
type HostsApiDeleteOpts ¶ added in v1.5.13
HostsApiDeleteOpts Optional parameters for the method 'Delete'
type HostsApiGetByIDOpts ¶ added in v1.5.13
HostsApiGetByIDOpts Optional parameters for the method 'GetByID'
type HostsApiListOpts ¶
type HostsApiListOpts struct { All optional.String XRole optional.String XWorkspaceid optional.String }
HostsApiListOpts Optional parameters for the method 'List'
type HostsApiMaintenanceOpts ¶ added in v1.5.13
HostsApiMaintenanceOpts Optional parameters for the method 'Maintenance'
type HostsApiPowerOffOpts ¶ added in v1.5.13
HostsApiPowerOffOpts Optional parameters for the method 'PowerOff'
type HostsApiPowerOnOpts ¶ added in v1.5.13
HostsApiPowerOnOpts Optional parameters for the method 'PowerOn'
type HostsApiPowerResetOpts ¶ added in v1.5.13
HostsApiPowerResetOpts Optional parameters for the method 'PowerReset'
type HostsApiReimageOpts ¶ added in v1.5.13
HostsApiReimageOpts Optional parameters for the method 'Reimage'
type HostsApiReplaceOpts ¶ added in v1.5.13
HostsApiReplaceOpts Optional parameters for the method 'Replace'
type HostsApiService ¶
type HostsApiService service
HostsApiService HostsApi service
func (*HostsApiService) Add ¶
func (a *HostsApiService) Add(ctx _context.Context, newHost NewHost, localVarOptionals *HostsApiAddOpts) (Host, *_nethttp.Response, error)
Add Create a new Host Creates a new host object which kicks off the provisioning of a physical server in accordance to the attributes provided for the Host object. Most values for these options must be selected from the set of options provided by the get available-resources API call. The SvcFlavor, SvcVersion, LocationID, SSHKeyIDs, and Network attribute must all be set with appropriate ID values from the available-resources call. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param newHost Defines the configuration of the desired host. See the schema for descriptions of individual attributes.
- @param optional nil or *HostsApiAddOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Host
func (*HostsApiService) BootHDD ¶
func (a *HostsApiService) BootHDD(ctx _context.Context, hostId string, localVarOptionals *HostsApiBootHDDOpts) (Host, *_nethttp.Response, error)
BootHDD Set HDD boot order on Host by ID Sets a single Host with matching ID to attempt HDD booting. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param hostId ID of Host to set to HDD boot
- @param optional nil or *HostsApiBootHDDOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Host
func (*HostsApiService) BootPXE ¶
func (a *HostsApiService) BootPXE(ctx _context.Context, hostId string, localVarOptionals *HostsApiBootPXEOpts) (Host, *_nethttp.Response, error)
BootPXE Set PXE boot order on Host by ID Sets a single Host with matching ID to attempt PXE boot when next booting. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param hostId ID of Host to set to PXE boot
- @param optional nil or *HostsApiBootPXEOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Host
func (*HostsApiService) Delete ¶
func (a *HostsApiService) Delete(ctx _context.Context, hostId string, localVarOptionals *HostsApiDeleteOpts) (*_nethttp.Response, error)
Delete Delete a Host Deletes the Host with the matching ID. A host in the 'Ready' state must first be powered-off before a delete will be permitted. Deletes to hosts in other states is permitted regardless of the power state. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param hostId ID of Host to delete
- @param optional nil or *HostsApiDeleteOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
func (*HostsApiService) GetByID ¶
func (a *HostsApiService) GetByID(ctx _context.Context, hostId string, localVarOptionals *HostsApiGetByIDOpts) (Host, *_nethttp.Response, error)
GetByID Retrieve Host by ID Returns a single Host with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param hostId ID of Host to return
- @param optional nil or *HostsApiGetByIDOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Host
func (*HostsApiService) List ¶
func (a *HostsApiService) List(ctx _context.Context, localVarOptionals *HostsApiListOpts) ([]Host, *_nethttp.Response, error)
List List all Hosts in project Returns an array of all Host objects defined within the project. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param optional nil or *HostsApiListOpts - Optional Parameters:
- @param "All" (optional.String) - Includes deleted Host objects in the response when set to \"true\".
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return []Host
func (*HostsApiService) Maintenance ¶
func (a *HostsApiService) Maintenance(ctx _context.Context, hostId string, localVarOptionals *HostsApiMaintenanceOpts) (Host, *_nethttp.Response, error)
Maintenance Do maintenance on a Host by ID Do maintenance on a host by executing pre-defined operations. The host must be powered off. The host must also be in the Ready state or in the Failed state and in the Maintenance workflow. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param hostId ID of Host to do maintenance on
- @param optional nil or *HostsApiMaintenanceOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Host
func (*HostsApiService) PowerOff ¶
func (a *HostsApiService) PowerOff(ctx _context.Context, hostId string, localVarOptionals *HostsApiPowerOffOpts) (Host, *_nethttp.Response, error)
PowerOff Power off Host by ID Powers off a single Host with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param hostId ID of Host to power off
- @param optional nil or *HostsApiPowerOffOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Host
func (*HostsApiService) PowerOn ¶
func (a *HostsApiService) PowerOn(ctx _context.Context, hostId string, localVarOptionals *HostsApiPowerOnOpts) (Host, *_nethttp.Response, error)
PowerOn Power on Host by ID Powers on a single Host with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param hostId ID of Host to power on
- @param optional nil or *HostsApiPowerOnOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Host
func (*HostsApiService) PowerReset ¶
func (a *HostsApiService) PowerReset(ctx _context.Context, hostId string, localVarOptionals *HostsApiPowerResetOpts) (Host, *_nethttp.Response, error)
PowerReset Reset Host by ID Resets a single Host with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param hostId ID of Host to reset
- @param optional nil or *HostsApiPowerResetOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Host
func (*HostsApiService) Reimage ¶ added in v1.4.17
func (a *HostsApiService) Reimage(ctx _context.Context, hostId string, localVarOptionals *HostsApiReimageOpts) (Host, *_nethttp.Response, error)
Reimage Reimage Host by ID Re-deploys a host to the same machine. WARNING -- all drives will be erased! Only the Host OS is reinstalled, IP addresses, volumes, etc are not changed. The host must be powered off. The host must also be in the Ready state. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param hostId ID of Host to reimage
- @param optional nil or *HostsApiReimageOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Host
func (*HostsApiService) Replace ¶
func (a *HostsApiService) Replace(ctx _context.Context, hostId string, localVarOptionals *HostsApiReplaceOpts) (Host, *_nethttp.Response, error)
Replace Replace Host by ID Re-deploys a host with a new machine that satisfies the current host settings. WARNING -- all drives will be erased! Only the machine is replaced, IP addresses, volumes, etc are not changed. The host must be powered off. The host must also be in the Ready state or in the Failed state and in the Replace or Maintenace workflow. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param hostId ID of Host to replace
- @param optional nil or *HostsApiReplaceOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Host
func (*HostsApiService) Update ¶
func (a *HostsApiService) Update(ctx _context.Context, hostId string, updateHost UpdateHost, localVarOptionals *HostsApiUpdateOpts) (Host, *_nethttp.Response, error)
Update Update an existing Host Updates the Host with the matching ID. Update is permitted only if the host is in the 'Ready' or 'Connection Updating Failed' state. Only the Host 'Description', 'Networks', 'NetworkForDefaultRoute', 'NetworkUntagged' and 'ISCSIConfig:InitiatorName' can be updated. 'ISCSIConfig:InitiatorName' can be updated only if the host has no volumes attached. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param hostId ID of host to update
- @param updateHost Updated Host
- @param optional nil or *HostsApiUpdateOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Host
type HostsApiUpdateOpts ¶ added in v1.5.13
HostsApiUpdateOpts Optional parameters for the method 'Update'
type IPPoolsAPI ¶
type IPPoolsAPI interface { /* AllocateIPs Allocate IPs from the pool Allocate IPs from the pool If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param ippoolId ID of IP pool to allocate IPs - @param iPAllocation IPs being requested starting from an optional base IP and their usage - @param optional nil or *IppoolsApiAllocateIPsOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return IpPool */ AllocateIPs(ctx _context.Context, ippoolId string, iPAllocation []IpAllocation, localVarOptionals *IppoolsApiAllocateIPsOpts) (IpPool, *_nethttp.Response, error) /* GetByID Retrieve IP pool by ID Returns a single ip pool with matching imaged. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param ippoolId ID of IP pool to return - @param optional nil or *IppoolsApiGetByIDOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return IpPool */ GetByID(ctx _context.Context, ippoolId string, localVarOptionals *IppoolsApiGetByIDOpts) (IpPool, *_nethttp.Response, error) /* List List all ip pools in project Returns an array of all ip pool objects defined within the project. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param optional nil or *IppoolsApiListOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return []IpPool */ List(ctx _context.Context, localVarOptionals *IppoolsApiListOpts) ([]IpPool, *_nethttp.Response, error) /* ReturnIPs Return IPs to the pool Return IPs to the pool. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param ippoolId ID of IP pool to return IPs - @param requestBody IP returned to the pool - @param optional nil or *IppoolsApiReturnIPsOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return IpPool */ ReturnIPs(ctx _context.Context, ippoolId string, requestBody []string, localVarOptionals *IppoolsApiReturnIPsOpts) (IpPool, *_nethttp.Response, error) /* Update Update IP pool by ID Update a single ip pool with matching ID. 'DefaultRoute' can only be updated if ip pool is not currently in-use. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param ippoolId ID of IP pool to update - @param updateIpPool Update IPPool - @param optional nil or *IppoolsApiUpdateOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return IpPool */ Update(ctx _context.Context, ippoolId string, updateIpPool UpdateIpPool, localVarOptionals *IppoolsApiUpdateOpts) (IpPool, *_nethttp.Response, error) }
IPPoolsAPI defines the client functions provided for Ippools.
type IpAllocation ¶
type IpAllocation struct { // An optional base address for the allocation, if not specified first available address from the pool will be the base Base string `json:"Base"` // Number of addresses to allocate starting from the base Count int32 `json:"Count"` // A short description for the allocation Usage string `json:"Usage"` }
IpAllocation struct for IpAllocation
type IpPool ¶
type IpPool struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` // Time when the resource was created in the database Created time.Time `json:"Created"` // Time when the resource was last modified in the database Modified time.Time `json:"Modified"` Description string `json:"Description"` IPVersion IpVer `json:"IPVersion"` // Unique ID of the network associated with the IP pool NetworkID string `json:"NetworkID"` // Base address of the IP pool BaseIP string `json:"BaseIP"` Netmask Netmask `json:"Netmask"` // Default route associated with the IP pool DefaultRoute string `json:"DefaultRoute"` Sources []IpSource `json:"Sources"` UseRecords []UseRecord `json:"UseRecords"` // List of DNS servers for the IP pool DNS []string `json:"DNS"` // Optional web-proxy for external internet access should the pool actually be behind a firewall Proxy string `json:"Proxy"` // Addresses or CIDRs for which proxy requests are not made NoProxy string `json:"NoProxy"` // List of NTP servers for the IP pool NTP []string `json:"NTP"` Pool Pool `json:"Pool"` }
IpPool struct for IpPool
type IpPoolAllOf ¶
type IpPoolAllOf struct { Description string `json:"Description"` IPVersion IpVer `json:"IPVersion"` // Unique ID of the network associated with the IP pool NetworkID string `json:"NetworkID"` // Base address of the IP pool BaseIP string `json:"BaseIP"` Netmask Netmask `json:"Netmask"` // Default route associated with the IP pool DefaultRoute string `json:"DefaultRoute"` Sources []IpSource `json:"Sources"` UseRecords []UseRecord `json:"UseRecords"` // List of DNS servers for the IP pool DNS []string `json:"DNS"` // Optional web-proxy for external internet access should the pool actually be behind a firewall Proxy string `json:"Proxy"` // Addresses or CIDRs for which proxy requests are not made NoProxy string `json:"NoProxy"` // List of NTP servers for the IP pool NTP []string `json:"NTP"` Pool Pool `json:"Pool"` }
IpPoolAllOf struct for IpPoolAllOf
type IpPoolStats ¶
type IpPoolStats struct { // Total number of IPs (pool capacity) Total int32 `json:"Total"` // Number of non allocated IPs Available int32 `json:"Available"` // Number of allocated IPs InUse int32 `json:"InUse"` }
IpPoolStats struct for IpPoolStats
type IpRange ¶
type IpRange struct { // Base address for the IP range Base string `json:"Base"` // Number of IPs to count from the base Count int32 `json:"Count"` // Default route for the IP range DefaultRoute string `json:"DefaultRoute"` Netmask Netmask `json:"Netmask"` // Base address of the Source the IPRange was allocated from SourceBase string `json:"SourceBase"` }
IpRange struct for IpRange
type IpSource ¶
type IpSource struct { // Base address for the IP source Base string `json:"Base"` // Number of IPs to count from the base Count int32 `json:"Count"` }
IpSource struct for IpSource
type IppoolsApiAllocateIPsOpts ¶ added in v1.5.13
IppoolsApiAllocateIPsOpts Optional parameters for the method 'AllocateIPs'
type IppoolsApiGetByIDOpts ¶ added in v1.5.13
IppoolsApiGetByIDOpts Optional parameters for the method 'GetByID'
type IppoolsApiListOpts ¶ added in v1.5.13
IppoolsApiListOpts Optional parameters for the method 'List'
type IppoolsApiReturnIPsOpts ¶ added in v1.5.13
IppoolsApiReturnIPsOpts Optional parameters for the method 'ReturnIPs'
type IppoolsApiService ¶
type IppoolsApiService service
IppoolsApiService IppoolsApi service
func (*IppoolsApiService) AllocateIPs ¶
func (a *IppoolsApiService) AllocateIPs(ctx _context.Context, ippoolId string, iPAllocation []IpAllocation, localVarOptionals *IppoolsApiAllocateIPsOpts) (IpPool, *_nethttp.Response, error)
AllocateIPs Allocate IPs from the pool Allocate IPs from the pool If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param ippoolId ID of IP pool to allocate IPs
- @param iPAllocation IPs being requested starting from an optional base IP and their usage
- @param optional nil or *IppoolsApiAllocateIPsOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return IpPool
func (*IppoolsApiService) GetByID ¶
func (a *IppoolsApiService) GetByID(ctx _context.Context, ippoolId string, localVarOptionals *IppoolsApiGetByIDOpts) (IpPool, *_nethttp.Response, error)
GetByID Retrieve IP pool by ID Returns a single ip pool with matching imaged. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param ippoolId ID of IP pool to return
- @param optional nil or *IppoolsApiGetByIDOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return IpPool
func (*IppoolsApiService) List ¶
func (a *IppoolsApiService) List(ctx _context.Context, localVarOptionals *IppoolsApiListOpts) ([]IpPool, *_nethttp.Response, error)
List List all ip pools in project Returns an array of all ip pool objects defined within the project. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param optional nil or *IppoolsApiListOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return []IpPool
func (*IppoolsApiService) ReturnIPs ¶
func (a *IppoolsApiService) ReturnIPs(ctx _context.Context, ippoolId string, requestBody []string, localVarOptionals *IppoolsApiReturnIPsOpts) (IpPool, *_nethttp.Response, error)
ReturnIPs Return IPs to the pool Return IPs to the pool. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param ippoolId ID of IP pool to return IPs
- @param requestBody IP returned to the pool
- @param optional nil or *IppoolsApiReturnIPsOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return IpPool
func (*IppoolsApiService) Update ¶
func (a *IppoolsApiService) Update(ctx _context.Context, ippoolId string, updateIpPool UpdateIpPool, localVarOptionals *IppoolsApiUpdateOpts) (IpPool, *_nethttp.Response, error)
Update Update IP pool by ID Update a single ip pool with matching ID. 'DefaultRoute' can only be updated if ip pool is not currently in-use. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param ippoolId ID of IP pool to update
- @param updateIpPool Update IPPool
- @param optional nil or *IppoolsApiUpdateOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return IpPool
type IppoolsApiUpdateOpts ¶ added in v1.5.13
IppoolsApiUpdateOpts Optional parameters for the method 'Update'
type IscsiParameters ¶
type IscsiParameters struct { // The IP address of the host in dotted notation. HostIPAddress string `json:"HostIPAddress"` // The full initiator name to be created. The name must be at least 12 characters in length and begin with \"iqn.\". InitiatorName string `json:"InitiatorName"` // CHAPSecret is the Challenge Authentication Protocol secret to be shared between array and initiator. If empty, no CHAP login is enabled; if set it must be a string between 12 and 16 characters. CHAPSecret string `json:"CHAPSecret,omitempty"` // CHAPUserName is the CHAP username to use for CHAP authentication. If CHAPSecret is specified, CHAPUserName must also be specified. CHAPUserName string `json:"CHAPUserName,omitempty"` }
IscsiParameters struct for IscsiParameters
type Limits ¶
type Limits struct { // Maximum number of hosts to allow Hosts int32 `json:"Hosts"` // Maximum number of volumes to allow Volumes int32 `json:"Volumes"` // Maximum capacity to allow in TiB VolumeCapacity int64 `json:"VolumeCapacity"` // Maximum number of private networks to allow PrivateNetworks int32 `json:"PrivateNetworks"` // Map of instance type ID to maximum number of hosts that can be created with that instance type InstanceTypes map[string]int32 `json:"InstanceTypes"` }
Limits struct for Limits
type LocationInfo ¶
type LocationInfo struct { // Unique ID for data center location ID string `json:"ID"` Country Country `json:"Country"` // Region within the indicated country Region string `json:"Region"` // Data center descriptor DataCenter string `json:"DataCenter"` // Indicates whether or not the fabric dedicated for private networks supports VLAN ID. PrivateNetworkVIDSupport bool `json:"PrivateNetworkVIDSupport"` // Indicates whether or not the fabric dedicated for private networks supports VNI ID. PrivateNetworkVNISupport bool `json:"PrivateNetworkVNISupport"` // Unique ID for the controller that manages the data center. ControllerID string `json:"ControllerID"` }
LocationInfo Entry on data center with its location ID and country, region, and data center description strings
type MachineClassifier ¶ added in v1.5.0
type MachineClassifier struct { Name string `json:"Name"` // A list of machine classifier rules. Rules []MachineClassifierRule `json:"Rules"` }
MachineClassifier Describes a classifier via a list of rules.
type MachineClassifierRule ¶ added in v1.5.0
type MachineClassifierRule struct { SubAttributeRules []AttributeRule `json:"SubAttributeRules"` // The machine attribute. Attribute string `json:"Attribute"` // The value for the attribute. Value string `json:"Value"` Operator ClassifierOperator `json:"Operator"` }
MachineClassifierRule Describes a machine classifier rule in form of attribute and subattributes rule.
type MachineInventory ¶
type MachineInventory struct { // Unique ID of the data center location LocationID string `json:"LocationID"` // ID of a MachineSize as listed in the MachineSizes array SizeID string `json:"SizeID"` // The number of machines in inventory with indicated machine size at the indicated location Number int32 `json:"Number"` }
MachineInventory An entry describing the number of machines of a particular machine size at a specific location
type MachineSize ¶
type MachineSize struct { // Unique ID for the machine size offering ID string `json:"ID"` // Typical user-visible name for a machine size offering Name string `json:"Name"` Details FlavorDesc `json:"Details"` }
MachineSize Description of a specific machine size offering
type MachineSizeInfo ¶
type MachineSizeInfo struct { Name string `json:"Name"` ProjectsUsed int32 `json:"ProjectsUsed"` OtherUsed int32 `json:"OtherUsed"` Available int32 `json:"Available"` ID string `json:"ID"` // True if the usage of this machine size is restricted to selected projects, false if the machine size is available to anyone. Restricted bool `json:"Restricted"` }
MachineSizeInfo struct for MachineSizeInfo
type MultiPartFile ¶ added in v1.5.0
MultiPartFile An machine OS service image file.
type Netmask ¶
type Netmask string
Netmask the model 'Netmask'
const ( NETMASK__8 Netmask = "/8" NETMASK__9 Netmask = "/9" NETMASK__10 Netmask = "/10" NETMASK__11 Netmask = "/11" NETMASK__12 Netmask = "/12" NETMASK__13 Netmask = "/13" NETMASK__14 Netmask = "/14" NETMASK__15 Netmask = "/15" NETMASK__16 Netmask = "/16" NETMASK__17 Netmask = "/17" NETMASK__18 Netmask = "/18" NETMASK__19 Netmask = "/19" NETMASK__20 Netmask = "/20" NETMASK__21 Netmask = "/21" NETMASK__22 Netmask = "/22" NETMASK__23 Netmask = "/23" NETMASK__24 Netmask = "/24" NETMASK__25 Netmask = "/25" NETMASK__26 Netmask = "/26" NETMASK__27 Netmask = "/27" NETMASK__28 Netmask = "/28" NETMASK__29 Netmask = "/29" NETMASK__30 Netmask = "/30" NETMASK__31 Netmask = "/31" NETMASK__104 Netmask = "/104" NETMASK__105 Netmask = "/105" NETMASK__106 Netmask = "/106" NETMASK__107 Netmask = "/107" NETMASK__108 Netmask = "/108" NETMASK__109 Netmask = "/109" NETMASK__110 Netmask = "/110" NETMASK__111 Netmask = "/111" NETMASK__112 Netmask = "/112" NETMASK__113 Netmask = "/113" NETMASK__114 Netmask = "/114" NETMASK__115 Netmask = "/115" NETMASK__116 Netmask = "/116" NETMASK__117 Netmask = "/117" NETMASK__118 Netmask = "/118" NETMASK__119 Netmask = "/119" NETMASK__120 Netmask = "/120" NETMASK__121 Netmask = "/121" NETMASK__122 Netmask = "/122" NETMASK__123 Netmask = "/123" NETMASK__124 Netmask = "/124" NETMASK__125 Netmask = "/125" NETMASK__126 Netmask = "/126" NETMASK__127 Netmask = "/127" )
List of Netmask
type Network ¶
type Network struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` // Time when the resource was created in the database Created time.Time `json:"Created"` // Time when the resource was last modified in the database Modified time.Time `json:"Modified"` // The location ID is the data center location of the resource. The LocationID must be one of those provided by the LocationInfo array returned as part of the get /available-resources call. The locations are typically described by country, region, and data center. LocationID string `json:"LocationID"` Description string `json:"Description"` HostUse NetworkHostUse `json:"HostUse"` Purpose NetworkPurpose `json:"Purpose"` IPPoolID string `json:"IPPoolID"` // VLAN ID of the network VLAN int32 `json:"VLAN"` // VNI ID of the network VNI int32 `json:"VNI"` }
Network struct for Network
type NetworkAllOf ¶
type NetworkAllOf struct { // The location ID is the data center location of the resource. The LocationID must be one of those provided by the LocationInfo array returned as part of the get /available-resources call. The locations are typically described by country, region, and data center. LocationID string `json:"LocationID"` Description string `json:"Description"` HostUse NetworkHostUse `json:"HostUse"` Purpose NetworkPurpose `json:"Purpose"` IPPoolID string `json:"IPPoolID"` // VLAN ID of the network VLAN int32 `json:"VLAN"` // VNI ID of the network VNI int32 `json:"VNI"` }
NetworkAllOf struct for NetworkAllOf
type NetworkHostUse ¶
type NetworkHostUse string
NetworkHostUse Indicates whether use of the network is required, default, or optional. If the network is required, any new create host request for that location must include this network among the requested networks. Default and Optional are both optional networks, but imply whether they should show up initially in pre-populated fields in a graphical user interface.
const ( NETWORKHOSTUSE_REQUIRED NetworkHostUse = "Required" NETWORKHOSTUSE_DEFAULT NetworkHostUse = "Default" NETWORKHOSTUSE_OPTIONAL NetworkHostUse = "Optional" )
List of NetworkHostUse
type NetworkPurpose ¶ added in v1.4.2
type NetworkPurpose string
NetworkPurpose Indicates the purpose of the network.
const ( NETWORKPURPOSE_BACKUP NetworkPurpose = "Backup" NETWORKPURPOSE_STORAGE NetworkPurpose = "Storage" NETWORKPURPOSE_VM_KERNEL NetworkPurpose = "vmKernel" NETWORKPURPOSE_VM_NSX_T NetworkPurpose = "vmNSX-T" NETWORKPURPOSE_V_MOTION NetworkPurpose = "vMotion" NETWORKPURPOSE_V_CHA NetworkPurpose = "vCHA" NETWORKPURPOSE_VM_FT NetworkPurpose = "vmFT" NETWORKPURPOSE_I_SCSI_A NetworkPurpose = "iSCSI-A" NETWORKPURPOSE_I_SCSI_B NetworkPurpose = "iSCSI-B" NETWORKPURPOSE_TELEMETRY NetworkPurpose = "Telemetry" NETWORKPURPOSE_EXTERNAL NetworkPurpose = "External" )
List of NetworkPurpose
type NetworksAPI ¶
type NetworksAPI interface { /* Add Add a new network Adds a new network that can be referenced when creating a Host. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param newNetwork Network that is to be added to the project - @param optional nil or *NetworksApiAddOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Network */ Add(ctx _context.Context, newNetwork NewNetwork, localVarOptionals *NetworksApiAddOpts) (Network, *_nethttp.Response, error) /* Delete Delete a network Deletes the network with the matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param networkId ID of network to delete - @param optional nil or *NetworksApiDeleteOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID */ Delete(ctx _context.Context, networkId string, localVarOptionals *NetworksApiDeleteOpts) (*_nethttp.Response, error) /* GetByID Retrieve network by ID. Returns a single network with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param networkId ID of network to return - @param optional nil or *NetworksApiGetByIDOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Network */ GetByID(ctx _context.Context, networkId string, localVarOptionals *NetworksApiGetByIDOpts) (Network, *_nethttp.Response, error) /* List List all networks in project Returns an array of all network objects defined within the project. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param optional nil or *NetworksApiListOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return []Network */ List(ctx _context.Context, localVarOptionals *NetworksApiListOpts) ([]Network, *_nethttp.Response, error) /* Update Update an existing network by ID. Update an existing network by ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param networkId ID of network to update - @param updateNetwork Updated network - @param optional nil or *NetworksApiUpdateOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Network */ Update(ctx _context.Context, networkId string, updateNetwork UpdateNetwork, localVarOptionals *NetworksApiUpdateOpts) (Network, *_nethttp.Response, error) }
NetworksAPI defines the client functions provided for Networks.
type NetworksApiAddOpts ¶ added in v1.5.13
NetworksApiAddOpts Optional parameters for the method 'Add'
type NetworksApiDeleteOpts ¶ added in v1.5.13
NetworksApiDeleteOpts Optional parameters for the method 'Delete'
type NetworksApiGetByIDOpts ¶ added in v1.5.13
NetworksApiGetByIDOpts Optional parameters for the method 'GetByID'
type NetworksApiListOpts ¶ added in v1.5.13
NetworksApiListOpts Optional parameters for the method 'List'
type NetworksApiService ¶
type NetworksApiService service
NetworksApiService NetworksApi service
func (*NetworksApiService) Add ¶
func (a *NetworksApiService) Add(ctx _context.Context, newNetwork NewNetwork, localVarOptionals *NetworksApiAddOpts) (Network, *_nethttp.Response, error)
Add Add a new network Adds a new network that can be referenced when creating a Host. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param newNetwork Network that is to be added to the project
- @param optional nil or *NetworksApiAddOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Network
func (*NetworksApiService) Delete ¶
func (a *NetworksApiService) Delete(ctx _context.Context, networkId string, localVarOptionals *NetworksApiDeleteOpts) (*_nethttp.Response, error)
Delete Delete a network Deletes the network with the matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param networkId ID of network to delete
- @param optional nil or *NetworksApiDeleteOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
func (*NetworksApiService) GetByID ¶
func (a *NetworksApiService) GetByID(ctx _context.Context, networkId string, localVarOptionals *NetworksApiGetByIDOpts) (Network, *_nethttp.Response, error)
GetByID Retrieve network by ID. Returns a single network with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param networkId ID of network to return
- @param optional nil or *NetworksApiGetByIDOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Network
func (*NetworksApiService) List ¶
func (a *NetworksApiService) List(ctx _context.Context, localVarOptionals *NetworksApiListOpts) ([]Network, *_nethttp.Response, error)
List List all networks in project Returns an array of all network objects defined within the project. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param optional nil or *NetworksApiListOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return []Network
func (*NetworksApiService) Update ¶
func (a *NetworksApiService) Update(ctx _context.Context, networkId string, updateNetwork UpdateNetwork, localVarOptionals *NetworksApiUpdateOpts) (Network, *_nethttp.Response, error)
Update Update an existing network by ID. Update an existing network by ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param networkId ID of network to update
- @param updateNetwork Updated network
- @param optional nil or *NetworksApiUpdateOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Network
type NetworksApiUpdateOpts ¶ added in v1.5.13
NetworksApiUpdateOpts Optional parameters for the method 'Update'
type NewHost ¶
type NewHost struct { // The host name used when installing the host operating system. Note that some OS implementations may require the name to be formatted as a fully qualified domain name. Name string `json:"Name"` Description string `json:"Description,omitempty"` // The image service identifier must be identifer of one of the available imaging services provided by the AvailableImage array returned as part of the get /available-resources call. Images are typically described by category (e.g. Linux), flavor (e.g. ubuntu) and version (e.g. 18.04-20190807) ServiceID string `json:"ServiceID"` // The location ID must be one of those provided by the LocationInfo array returned as part of the get /available-resources call. The locations are typically described by country, region, and data center. The location ID must also be one that has sufficient inventory for the selected MachineSize. See the MachineInventory array as returned by the get /available-resources call to select a location that has machines available with the correct machine size. LocationID string `json:"LocationID"` // The machine size ID must be one of those listed in the MachineSizes array returned as part of the get /available-resources call. This array provides the name and detailed description for each machine size. Use the MachineInventory array provided by the get /available-resources call to find a location with an adequate inventory of machines with the desired machine size. MachineSizeID string `json:"MachineSizeID"` // These IDs must correspond to the IDs for SSH keys already created within the context of the project. These SSH keys and those included as SSHAuthorizedKeys will be used together to provision SSH keys when the machine is imaged. SSHKeyIDs []string `json:"SSHKeyIDs"` // The list of IDs corresponding to the networks that will be provisioned to the host. These networks must be among those listed in the Networks array returned by the get /available-resources call. This list must include the ID for any network identified by the HostUseEnum as Required. NetworkIDs []string `json:"NetworkIDs"` // A list of pre-allocated IP addresses to be used for corresponding networks. This array of IP addresses, if present, is in one-to-one correspondence with Networks. PreAllocatedIPs []string `json:"PreAllocatedIPs,omitempty"` // The host's default network ID. This needs to be one of the values in the \"NetworkIDs\" list. NetworkForDefaultRoute string `json:"NetworkForDefaultRoute"` // ID of the network selected to be untagged. This needs to be one of the values in the \"NetworkIDs\" list. NetworkUntagged string `json:"NetworkUntagged,omitempty"` // The list of IDs corresponding to existing, unattached volumes that should be attached to the new host. The volume must be one of those listed in the Volumes array returned by the get /available-resources call. In addition, the volume must be in the visible state and not a part of any current VolumeAttachment (see get volume-attachments) VolumeIDs []string `json:"VolumeIDs,omitempty"` // The map of Service Network (Provider) ID to Provider MAC address. The Service Network must be a provider network provisioned to this host. Any Service Networks not included here will default to the physical MAC learned during machine discovery. ServiceNetsProviderMAC map[string]string `json:"ServiceNetsProviderMAC,omitempty"` // New volumes may be created and connected to the Host when the host is provisioned. The information provided here to create a host is the same as required when doing a post /volumes call NewVolumes []AddVolume `json:"NewVolumes,omitempty"` // User-provided data to be attached to the image configuration data. UserData string `json:"UserData,omitempty"` // User-provided data to represent the identity of the host within an application environment. For example, this could be set to represent the Kubernetes node ID if the host is provisioned as a Kubernetes node. NodeID string `json:"NodeID,omitempty"` // The map of service/user specified label name to label value for this host. Setting service labels is restricted by role. Labels map[string]string `json:"Labels,omitempty"` }
NewHost struct for NewHost
type NewIpPool ¶
type NewIpPool struct { // Name for the IP pool Name string `json:"Name,omitempty"` // Description for the IP pool Description string `json:"Description,omitempty"` IPVersion IpVer `json:"IPVersion"` // Base address of the IP pool BaseIP string `json:"BaseIP"` Netmask Netmask `json:"Netmask"` // Default route associated with the IP pool DefaultRoute string `json:"DefaultRoute,omitempty"` Sources []IpSource `json:"Sources,omitempty"` // List of DNS servers for the IP pool DNS []string `json:"DNS,omitempty"` // Optional web-proxy for external internet access should the pool actually be behind a firewall Proxy string `json:"Proxy,omitempty"` // Addresses or CIDRs for which proxy requests are not made NoProxy string `json:"NoProxy,omitempty"` // List of NTP servers for the IP pool NTP []string `json:"NTP,omitempty"` }
NewIpPool struct for NewIpPool
type NewNetwork ¶
type NewNetwork struct { // Name of the network Name string `json:"Name"` // The location ID is the data center location of the resource. The LocationID must be one of those provided by the LocationInfo array returned as part of the get /available-resources call. The locations are typically described by country, region, and data center. LocationID string `json:"LocationID"` Description string `json:"Description,omitempty"` HostUse NetworkHostUse `json:"HostUse,omitempty"` Purpose NetworkPurpose `json:"Purpose,omitempty"` NewIPPool *NewIpPool `json:"NewIPPool,omitempty"` // Optional VLAN ID of the network. If not specified, it is allocated from reserved pool. VLAN int32 `json:"VLAN,omitempty"` // Optional VNI ID of the network. If not specified, it is allocated from reserved pool if required. VNI int32 `json:"VNI,omitempty"` }
NewNetwork struct for NewNetwork
type NewProject ¶
type NewProject struct { Name string `json:"Name"` Profile Profile `json:"Profile"` Limits Limits `json:"Limits"` // Array listing the permitted site IDs PermittedSites []string `json:"PermittedSites,omitempty"` // Array listing the permitted OS service images. PermittedOSImages []string `json:"PermittedOSImages,omitempty"` // Indicates whether volume replication is enabled for this Project. VolumeReplicationEnabled bool `json:"VolumeReplicationEnabled,omitempty"` }
NewProject struct for NewProject
type NewVolume ¶
type NewVolume struct { Name string `json:"Name"` Description string `json:"Description,omitempty"` // Adds a new volume to the project. This object requires the LocationID and is used when a new volume is created independently from the host creation therefore requiring a specified location. FlavorID string `json:"FlavorID"` // The size of the volume in GiB Capacity int64 `json:"Capacity"` Shareable bool `json:"Shareable,omitempty"` // The location of the volume (and the storage array) LocationID is one of those listed by the LocationInfo array returned as part of the get /available-resources call. Any volumes must be in the same location as their attached Host. LocationID string `json:"LocationID"` // The map of service/user specified label name to label value for this volume. Setting service labels is restricted by role. Labels map[string]string `json:"Labels,omitempty"` // The storage pool is one of those listed by the StoragePools array returned as part of the get /available-resources call that are available to create volumes of the specified flavor and location. StoragePoolID string `json:"StoragePoolID,omitempty"` // The optional volume collection is one of those listed by the VolumeCollections array returned as part of the get /available-resources call VolumeCollectionID string `json:"VolumeCollectionID,omitempty"` }
NewVolume struct for NewVolume
type NewVolumeAttachment ¶
type NewVolumeAttachment struct { // Name for the volume attachment. Must be 128 or fewer printable characters Name string `json:"Name,omitempty"` // Unique ID of the volume attached to the host VolumeID string `json:"VolumeID"` Protocol ProtocolParameters `json:"Protocol"` }
NewVolumeAttachment struct for NewVolumeAttachment
type OpArg ¶ added in v1.5.0
type OpArg struct { Name string `json:"Name"` Value string `json:"Value"` Description string `json:"Description"` Type OpArgType `json:"Type"` // Value of the argument that should be kept secret. SecureValue string `json:"SecureValue"` }
OpArg User operation argument.
type OpArgType ¶ added in v1.5.0
type OpArgType string
OpArgType Defines allowed types for an operation argument.
type OsServiceImage ¶ added in v1.5.0
type OsServiceImage struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` // Time when the resource was created in the database Created time.Time `json:"Created"` // Time when the resource was last modified in the database Modified time.Time `json:"Modified"` // Unique ID of the project that owns this OS service image. ProjectID string `json:"ProjectID"` DownloadHealth OsServiceImageDownloadHealth `json:"DownloadHealth"` Description string `json:"Description"` // A high level classification of the service. Category string `json:"Category"` // An high level description of the OS image type. Flavor string `json:"Flavor"` // A specific version of the service flavor. Version string `json:"Version"` Origin OsServiceImageOrigin `json:"Origin"` // Maximum amount of time in seconds for the service to complete its work. This time includes the amount of time to download the service image if necessary. Timeout int64 `json:"Timeout"` // Device partitioning information. DeviceLayouts []DiskPartitions `json:"DeviceLayouts"` // List of projects allowed to use this OS service image. PermittedProjects []string `json:"PermittedProjects"` // Files and relative information for this OS service image. Files []FileInfo `json:"Files"` // Defines a list of embedded contents to be attached to this OS service image in form of files. Info []PassedInfo `json:"Info"` Approach OsServiceImageApproach `json:"Approach"` AssumedBootMethod BootMethod `json:"AssumedBootMethod"` // Indicates if a LAG needs to be created on the switch connecting the host with this OS service image. NoSwitchLAG bool `json:"NoSwitchLAG"` BondMode BondMode `json:"BondMode"` // Unique id of the firmware baseline to be applied by the firmware update operation in Maintenance Steps and Imaging Prep Steps. FWBaselineID string `json:"FWBaselineID"` UserDefinedSteps UserDefinedSteps `json:"UserDefinedSteps"` // Allows setting of restricted use for this service by machine attributes. If rules are not defined, this OS service image is available to be installed on any machine. Classifiers []MachineClassifier `json:"Classifiers"` }
OsServiceImage struct for OsServiceImage
type OsServiceImageAllOf ¶ added in v1.5.0
type OsServiceImageAllOf struct { // Unique ID of the project that owns this OS service image. ProjectID string `json:"ProjectID"` DownloadHealth OsServiceImageDownloadHealth `json:"DownloadHealth"` Description string `json:"Description"` // A high level classification of the service. Category string `json:"Category"` // An high level description of the OS image type. Flavor string `json:"Flavor"` // A specific version of the service flavor. Version string `json:"Version"` Origin OsServiceImageOrigin `json:"Origin"` // Maximum amount of time in seconds for the service to complete its work. This time includes the amount of time to download the service image if necessary. Timeout int64 `json:"Timeout"` // Device partitioning information. DeviceLayouts []DiskPartitions `json:"DeviceLayouts"` // List of projects allowed to use this OS service image. PermittedProjects []string `json:"PermittedProjects"` // Files and relative information for this OS service image. Files []FileInfo `json:"Files"` // Defines a list of embedded contents to be attached to this OS service image in form of files. Info []PassedInfo `json:"Info"` Approach OsServiceImageApproach `json:"Approach"` AssumedBootMethod BootMethod `json:"AssumedBootMethod"` // Indicates if a LAG needs to be created on the switch connecting the host with this OS service image. NoSwitchLAG bool `json:"NoSwitchLAG"` BondMode BondMode `json:"BondMode"` // Unique id of the firmware baseline to be applied by the firmware update operation in Maintenance Steps and Imaging Prep Steps. FWBaselineID string `json:"FWBaselineID"` UserDefinedSteps UserDefinedSteps `json:"UserDefinedSteps"` // Allows setting of restricted use for this service by machine attributes. If rules are not defined, this OS service image is available to be installed on any machine. Classifiers []MachineClassifier `json:"Classifiers"` }
OsServiceImageAllOf struct for OsServiceImageAllOf
type OsServiceImageApproach ¶ added in v1.5.0
type OsServiceImageApproach string
OsServiceImageApproach Indicates how the service image is installed. The \"Service Client\" approach installs the OS image by booting a GLM service OS, that then runs the GLM Service Client to deploy and setup a TGZ root file system image. The \"Virtual Media\" approach uses an OS .ISO installer image and OS automation files (e.g. kickstart and cloud-init files) mounted over iLO virtual media.
const ( OSSERVICEIMAGEAPPROACH_SVC_CLIENT OsServiceImageApproach = "svc-client" OSSERVICEIMAGEAPPROACH_VMEDIA OsServiceImageApproach = "vmedia" )
List of OSServiceImageApproach
type OsServiceImageDownloadHealth ¶ added in v1.5.26
type OsServiceImageDownloadHealth struct { DetailedDownloadHealth map[string]OsServiceImageDownloadHealthDetails `json:"DetailedDownloadHealth"` DownloadHealthSummary OsServiceImageDownloadHealthSummary `json:"DownloadHealthSummary"` }
OsServiceImageDownloadHealth Provides download health info of the OS service image.
type OsServiceImageDownloadHealthDetails ¶ added in v1.5.26
type OsServiceImageDownloadHealthDetails struct { // Indicates last time this download health has been updated. Changed time.Time `json:"Changed"` Details map[string]OsServiceImageDownloadHealthSummary `json:"Details"` // Indicates the reason for the reported download health status if not OK. Reason string `json:"Reason"` Summary OsServiceImageDownloadHealthSummary `json:"Summary"` }
OsServiceImageDownloadHealthDetails struct for OsServiceImageDownloadHealthDetails
type OsServiceImageDownloadHealthSummary ¶ added in v1.5.26
type OsServiceImageDownloadHealthSummary string
OsServiceImageDownloadHealthSummary Indicates the download health summary of the OS service image.
const ( OSSERVICEIMAGEDOWNLOADHEALTHSUMMARY_OK OsServiceImageDownloadHealthSummary = "OK" OSSERVICEIMAGEDOWNLOADHEALTHSUMMARY_WARNING OsServiceImageDownloadHealthSummary = "Warning" OSSERVICEIMAGEDOWNLOADHEALTHSUMMARY_CRITICAL OsServiceImageDownloadHealthSummary = "Critical" OSSERVICEIMAGEDOWNLOADHEALTHSUMMARY_UNKNOWN OsServiceImageDownloadHealthSummary = "Unknown" )
List of OSServiceImageDownloadHealthSummary
type OsServiceImageOrigin ¶ added in v1.5.0
type OsServiceImageOrigin string
OsServiceImageOrigin Indicates the origin of the OS service image.
const ( OSSERVICEIMAGEORIGIN_HPE OsServiceImageOrigin = "HPE" OSSERVICEIMAGEORIGIN_CUSTOM OsServiceImageOrigin = "Custom" )
List of OSServiceImageOrigin
type Partition ¶ added in v1.5.0
type Partition struct { Type PartitionType `json:"Type"` Formula PartitionFormula `json:"Formula"` // Name is an optional name for the partition, only usable with GPT partition table types. Name string `json:"Name"` // Where to mount the partition, it must be set for partitions that are filesystem types. MountPoint string `json:"MountPoint"` // A partitionID may be explicitly set for the partition and this allows for out-of-order partitions in the table (like VMWare). If zero, sequential partitions are created starting at 1. Gaps in the partition ID numbering is also allowable (VMWare). PartitionID int64 `json:"PartitionID"` // Identify a bootable partition. Bootable bool `json:"Bootable"` // Provide options for the partition's creation. MakeOptions []string `json:"MakeOptions"` // Provide options for the patition mount. If empty, \"defaults\" will be used for filesystem partition types. MountOptions will be placed in the \"options\" field for the partition in /etc/fstab. MountOptions string `json:"MountOptions"` }
Partition It describes a disk partition.
type PartitionFormula ¶ added in v1.5.0
type PartitionFormula struct { // Represents a partition size in MiB. As a special case a size of 0 can be specified that will equate to the remaining space on the disk. Equation string `json:"Equation"` // It causes the value computed by formula execution to be rounded up to MinSize; if MinSize is non-zero. Multipliers like M and G maybe used, e.g. 1M == (1024*1024)bytes. An empty string means zero bytes. If no multiplier is specified M is assumed. MinSize string `json:"MinSize"` // MaxSize causes the value computed by formula execution to be rounded up to MaxSize; if MaxSize is non-zero. Multipliers like M, G and T maybe used, e.g. 1M == (1024*1024)bytes. An empty string means zero bytes. If no multiplier is specified M is assumed. Equations may also be used e.g. 25%disk means MaxSize will cause any partition to never exceed 25% of device capacity. MaxSize string `json:"MaxSize"` }
PartitionFormula It provide partition size information.
type PartitionTable ¶ added in v1.5.0
type PartitionTable string
PartitionTable Defines the type of partition table.
const ( PARTITIONTABLE_GPT PartitionTable = "gpt" PARTITIONTABLE_DOS PartitionTable = "dos" PARTITIONTABLE_SUN PartitionTable = "sun" PARTITIONTABLE_SGI PartitionTable = "sgi" )
List of PartitionTable
type PartitionType ¶ added in v1.5.0
type PartitionType string
PartitionType It defines the available partition types. This should be defined to correspond to target OS known partition types (as known by name on that OS).
const ( PARTITIONTYPE_SWAP PartitionType = "swap" PARTITIONTYPE_EXT2 PartitionType = "ext2" PARTITIONTYPE_EXT3 PartitionType = "ext3" PARTITIONTYPE_EXT4 PartitionType = "ext4" PARTITIONTYPE_XFS PartitionType = "xfs" PARTITIONTYPE_BTRFS PartitionType = "btrfs" PARTITIONTYPE_VFAT PartitionType = "vfat" PARTITIONTYPE_BIOS PartitionType = "bios" PARTITIONTYPE_BASIC PartitionType = "basic" PARTITIONTYPE_LVM PartitionType = "lvm" PARTITIONTYPE_LUKS PartitionType = "luks" PARTITIONTYPE_VMDIAG PartitionType = "vmdiag" PARTITIONTYPE_VMFS PartitionType = "vmfs" )
List of PartitionType
type PassedInfo ¶ added in v1.5.0
type PassedInfo struct { // String encoded with file content. Contents string `json:"Contents"` Encoding Encoding `json:"Encoding"` Templating Templating `json:"Templating"` TemplatingInput TemplatingInfo `json:"TemplatingInput"` Target Target `json:"Target"` // File path and name within location. Path string `json:"Path"` }
PassedInfo Defines embedded contents to be attached to this OS service image if from files.
type Pool ¶
type Pool struct { // List of fragments for the IP pool Fragments []IpRange `json:"Fragments"` Stats IpPoolStats `json:"Stats"` }
Pool struct for Pool
type Profile ¶
type Profile struct { // Name of the Project Team. Must not be empty, maximum 128 printable characters TeamName string `json:"TeamName"` // Optional description of the Project Team, maximum 256 printable characters TeamDesc string `json:"TeamDesc"` // Optional name of the company, maximum 256 printable characters Company string `json:"Company"` // Optional address of the company, maximum 256 printable characters Address string `json:"Address"` // Optional email address of the contact person for the team, maximum 256 printable characters Email string `json:"Email"` // Currently always false EmailVerified bool `json:"EmailVerified"` // Optional phone number of the contact person for the team, maximum 32 printable characters PhoneNumber string `json:"PhoneNumber"` // Currently always false PhoneVerified bool `json:"PhoneVerified"` }
Profile struct for Profile
type Project ¶
type Project struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` // Time when the resource was created in the database Created time.Time `json:"Created"` // Time when the resource was last modified in the database Modified time.Time `json:"Modified"` Profile Profile `json:"Profile"` Limits Limits `json:"Limits"` Resources ProjectResources `json:"Resources"` // Array listing the permitted site IDs PermittedSites []string `json:"PermittedSites"` // Array listing the permitted OS service images. PermittedOSImages []string `json:"PermittedOSImages"` // Indicates whether volume replication is enabled for this Project. VolumeReplicationEnabled bool `json:"VolumeReplicationEnabled"` // ID of the Parent Project (optional). Applicable to GreenLake Platform (GLP) only. ParentID string `json:"ParentID,omitempty"` }
Project struct for Project
type ProjectAllOf ¶
type ProjectAllOf struct { Profile Profile `json:"Profile"` Limits Limits `json:"Limits"` Resources ProjectResources `json:"Resources"` // Array listing the permitted site IDs PermittedSites []string `json:"PermittedSites"` // Array listing the permitted OS service images. PermittedOSImages []string `json:"PermittedOSImages"` // Indicates whether volume replication is enabled for this Project. VolumeReplicationEnabled bool `json:"VolumeReplicationEnabled"` // ID of the Parent Project (optional). Applicable to GreenLake Platform (GLP) only. ParentID string `json:"ParentID,omitempty"` }
ProjectAllOf struct for ProjectAllOf
type ProjectInfo ¶
type ProjectInfo struct { ID string `json:"ID"` Name string `json:"Name"` Description string `json:"Description"` NumHosts int32 `json:"NumHosts"` NumVolumes int32 `json:"NumVolumes"` TotalStorageGB int32 `json:"TotalStorageGB"` Status string `json:"Status"` // Number of project networks NumNetworks int32 `json:"NumNetworks"` SummaryStatus HealthStatus `json:"SummaryStatus"` // Locations where project resources exist Locations []LocationInfo `json:"Locations"` }
ProjectInfo struct for ProjectInfo
type ProjectResources ¶ added in v1.4.6
type ProjectResources struct { // Number of hosts in use Hosts int32 `json:"Hosts"` // Number of volumes in use Volumes int32 `json:"Volumes"` // Volume capacity in use in TiB VolumeCapacity int64 `json:"VolumeCapacity"` // Number of private networks in use PrivateNetworks int32 `json:"PrivateNetworks"` // Number of hosts with the instance type in use InstanceTypes map[string]int32 `json:"InstanceTypes"` }
ProjectResources struct for ProjectResources
type ProjectsAPI ¶
type ProjectsAPI interface { /* Add Create a new project Adds a new Project which creates an isolated space for creating Hosts, Volumes, and private Networks. A project is often aligned to a specific team within an organization or a cluster. If GreenLake Cloud Services IAM issued token is used for authentication, then it is required to pass either 'Space' or 'spaceid' header. When both are set, 'Space' header is ignored. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. Note that a Hoster, BMaaS Access Owner, BMaaS Tenant Owner or Service Platform Owner role is required for this operation. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param newProject NewProject parameters to create a new Project - @param optional nil or *ProjectsApiAddOpts - Optional Parameters: - @param "Space" (optional.String) - GreenLake Cloud Services space name - @param "Spaceid" (optional.String) - GreenLake Cloud Services space ID - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Project */ Add(ctx _context.Context, newProject NewProject, localVarOptionals *ProjectsApiAddOpts) (Project, *_nethttp.Response, error) /* Delete Delete a Project Deletes the Project with the matching ID. Note that a Hoster or BMaaS Access Owner (under GreenLake Cloud Services), or BMaaS Tenant Owner or Service Platform Owner role (under GreenLake Platform) is required for this operation. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param projectId ID of project to delete - @param optional nil or *ProjectsApiDeleteOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID */ Delete(ctx _context.Context, projectId string, localVarOptionals *ProjectsApiDeleteOpts) (*_nethttp.Response, error) /* GetByID Retrieve a project by its ID Returns a single Project object with its matching ID This includes profile information for the project and project limits on resouces like hosts, private networks, volumes, and volume capacity. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param projectId ID of project to return - @param optional nil or *ProjectsApiGetByIDOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Project */ GetByID(ctx _context.Context, projectId string, localVarOptionals *ProjectsApiGetByIDOpts) (Project, *_nethttp.Response, error) /* List List of all Projects within an GLCS space or GLP workspace. Returns an array of all Project objects that have been created. This includes profile information for the project and project limits on resouces like hosts, private networks, volumes, and volume capacity. If GreenLake Cloud Services IAM issued token is used for authentication, then it is required to pass either 'Space' or 'spaceid' header. When both are set, 'Space' header is ignored. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param optional nil or *ProjectsApiListOpts - Optional Parameters: - @param "Spaceid" (optional.String) - GreenLake Cloud Services space ID - @param "Space" (optional.String) - GreenLake Cloud Services space name - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return []Project */ List(ctx _context.Context, localVarOptionals *ProjectsApiListOpts) ([]Project, *_nethttp.Response, error) /* Update Update a project by its ID Updates a project with a matching ID. Only Project 'Name', 'Profile' and 'Limits' can be updated with this operation. Note that a Hoster or BMaaS Access Owner (under GreenLake Cloud Services), or BMaaS Tenant Owner or Service Platform Owner role (under GreenLake Platform) is required for this operation. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param projectId ID of project to update - @param updateProject Project parameters to update an existing Project - @param optional nil or *ProjectsApiUpdateOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Project */ Update(ctx _context.Context, projectId string, updateProject UpdateProject, localVarOptionals *ProjectsApiUpdateOpts) (Project, *_nethttp.Response, error) }
ProjectsAPI defines the client functions provided for Projects.
type ProjectsApiAddOpts ¶
type ProjectsApiAddOpts struct { Space optional.String Spaceid optional.String XRole optional.String XWorkspaceid optional.String }
ProjectsApiAddOpts Optional parameters for the method 'Add'
type ProjectsApiDeleteOpts ¶ added in v1.5.13
ProjectsApiDeleteOpts Optional parameters for the method 'Delete'
type ProjectsApiGetByIDOpts ¶ added in v1.5.13
ProjectsApiGetByIDOpts Optional parameters for the method 'GetByID'
type ProjectsApiListOpts ¶
type ProjectsApiListOpts struct { Spaceid optional.String Space optional.String XRole optional.String XWorkspaceid optional.String }
ProjectsApiListOpts Optional parameters for the method 'List'
type ProjectsApiService ¶
type ProjectsApiService service
ProjectsApiService ProjectsApi service
func (*ProjectsApiService) Add ¶
func (a *ProjectsApiService) Add(ctx _context.Context, newProject NewProject, localVarOptionals *ProjectsApiAddOpts) (Project, *_nethttp.Response, error)
Add Create a new project Adds a new Project which creates an isolated space for creating Hosts, Volumes, and private Networks. A project is often aligned to a specific team within an organization or a cluster. If GreenLake Cloud Services IAM issued token is used for authentication, then it is required to pass either 'Space' or 'spaceid' header. When both are set, 'Space' header is ignored. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. Note that a Hoster, BMaaS Access Owner, BMaaS Tenant Owner or Service Platform Owner role is required for this operation.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param newProject NewProject parameters to create a new Project
- @param optional nil or *ProjectsApiAddOpts - Optional Parameters:
- @param "Space" (optional.String) - GreenLake Cloud Services space name
- @param "Spaceid" (optional.String) - GreenLake Cloud Services space ID
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Project
func (*ProjectsApiService) Delete ¶
func (a *ProjectsApiService) Delete(ctx _context.Context, projectId string, localVarOptionals *ProjectsApiDeleteOpts) (*_nethttp.Response, error)
Delete Delete a Project Deletes the Project with the matching ID. Note that a Hoster or BMaaS Access Owner (under GreenLake Cloud Services), or BMaaS Tenant Owner or Service Platform Owner role (under GreenLake Platform) is required for this operation. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param projectId ID of project to delete
- @param optional nil or *ProjectsApiDeleteOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
func (*ProjectsApiService) GetByID ¶
func (a *ProjectsApiService) GetByID(ctx _context.Context, projectId string, localVarOptionals *ProjectsApiGetByIDOpts) (Project, *_nethttp.Response, error)
GetByID Retrieve a project by its ID Returns a single Project object with its matching ID This includes profile information for the project and project limits on resouces like hosts, private networks, volumes, and volume capacity. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param projectId ID of project to return
- @param optional nil or *ProjectsApiGetByIDOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Project
func (*ProjectsApiService) List ¶
func (a *ProjectsApiService) List(ctx _context.Context, localVarOptionals *ProjectsApiListOpts) ([]Project, *_nethttp.Response, error)
List List of all Projects within an GLCS space or GLP workspace. Returns an array of all Project objects that have been created. This includes profile information for the project and project limits on resouces like hosts, private networks, volumes, and volume capacity. If GreenLake Cloud Services IAM issued token is used for authentication, then it is required to pass either 'Space' or 'spaceid' header. When both are set, 'Space' header is ignored. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param optional nil or *ProjectsApiListOpts - Optional Parameters:
- @param "Spaceid" (optional.String) - GreenLake Cloud Services space ID
- @param "Space" (optional.String) - GreenLake Cloud Services space name
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return []Project
func (*ProjectsApiService) Update ¶
func (a *ProjectsApiService) Update(ctx _context.Context, projectId string, updateProject UpdateProject, localVarOptionals *ProjectsApiUpdateOpts) (Project, *_nethttp.Response, error)
Update Update a project by its ID Updates a project with a matching ID. Only Project 'Name', 'Profile' and 'Limits' can be updated with this operation. Note that a Hoster or BMaaS Access Owner (under GreenLake Cloud Services), or BMaaS Tenant Owner or Service Platform Owner role (under GreenLake Platform) is required for this operation. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param projectId ID of project to update
- @param updateProject Project parameters to update an existing Project
- @param optional nil or *ProjectsApiUpdateOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Project
type ProjectsApiUpdateOpts ¶ added in v1.5.13
ProjectsApiUpdateOpts Optional parameters for the method 'Update'
type ProjectsInfo ¶
type ProjectsInfo struct { Projects []ProjectInfo `json:"Projects"` MachineSizes []MachineSizeInfo `json:"MachineSizes"` VolumeFlavors []VolumeFlavorsInfo `json:"VolumeFlavors"` Summary SummaryInfo `json:"Summary"` }
ProjectsInfo struct for ProjectsInfo
type ProjectsInfoAPI ¶
type ProjectsInfoAPI interface { /* List List of all projects info within an organization or cluster for which user is authorized. Returns an object with information on projects, machine sizes, and volume flavors. The 'Projects' list includes projects authorized for a user, and the 'MachineSizes' and 'VolumeFlavors' list include only those machine sizes and volume flavors permitted for projects. When GreenLake Cloud Services IAM issued token is used for authentication, it is required to pass either 'Space' or 'spaceid' header. When both are set, 'Space' header is ignored. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param optional nil or *ProjectsInfoApiListOpts - Optional Parameters: - @param "Space" (optional.String) - GreenLake Cloud Services space name - @param "Spaceid" (optional.String) - GreenLake Cloud Services space ID - @param "Siteid" (optional.String) - GreenLake site ID - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return ProjectsInfo */ List(ctx _context.Context, localVarOptionals *ProjectsInfoApiListOpts) (ProjectsInfo, *_nethttp.Response, error) }
ProjectsInfoAPI defines the client functions provided for ProjectsInfo.
type ProjectsInfoApiListOpts ¶
type ProjectsInfoApiListOpts struct { Space optional.String Spaceid optional.String Siteid optional.String XRole optional.String XWorkspaceid optional.String }
ProjectsInfoApiListOpts Optional parameters for the method 'List'
type ProjectsInfoApiService ¶
type ProjectsInfoApiService service
ProjectsInfoApiService ProjectsInfoApi service
func (*ProjectsInfoApiService) List ¶
func (a *ProjectsInfoApiService) List(ctx _context.Context, localVarOptionals *ProjectsInfoApiListOpts) (ProjectsInfo, *_nethttp.Response, error)
List List of all projects info within an organization or cluster for which user is authorized. Returns an object with information on projects, machine sizes, and volume flavors. The 'Projects' list includes projects authorized for a user, and the 'MachineSizes' and 'VolumeFlavors' list include only those machine sizes and volume flavors permitted for projects. When GreenLake Cloud Services IAM issued token is used for authentication, it is required to pass either 'Space' or 'spaceid' header. When both are set, 'Space' header is ignored. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param optional nil or *ProjectsInfoApiListOpts - Optional Parameters:
- @param "Space" (optional.String) - GreenLake Cloud Services space name
- @param "Spaceid" (optional.String) - GreenLake Cloud Services space ID
- @param "Siteid" (optional.String) - GreenLake site ID
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return ProjectsInfo
type ProtocolKind ¶
type ProtocolKind string
ProtocolKind The protocol to be used to attach the volume
const ( PROTOCOLKIND_UNKNOWN ProtocolKind = "unknown" PROTOCOLKIND_ISCSI ProtocolKind = "iscsi" PROTOCOLKIND_FC ProtocolKind = "fc" )
List of ProtocolKind
type ProtocolParameters ¶
type ProtocolParameters struct { Protocol ProtocolKind `json:"Protocol,omitempty"` ISCSI IscsiParameters `json:"ISCSI,omitempty"` }
ProtocolParameters struct for ProtocolParameters
type ResourceBase ¶
type ResourceBase struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` // Time when the resource was created in the database Created time.Time `json:"Created"` // Time when the resource was last modified in the database Modified time.Time `json:"Modified"` }
ResourceBase struct for ResourceBase
type ServerConfiguration ¶
type ServerConfiguration struct { Url string Description string Variables map[string]ServerVariable }
ServerConfiguration stores the information about a server
type ServerVariable ¶
ServerVariable stores the information about a server variable
type ServiceServerInfo ¶ added in v1.4.12
type ServiceServerInfo struct { // Service type consuming the resource ServiceType string `json:"ServiceType"` // Allocated number of servers. AllocatedCount int32 `json:"AllocatedCount"` // Total available CPU cores. CoresCapacity int32 `json:"CoresCapacity"` // Total allocated CPU cores. CoresAllocated int32 `json:"CoresAllocated"` // Total available memory in GiB. RAMCapacity float64 `json:"RAMCapacity"` // Total allocated memory in GiB. RAMAllocated float64 `json:"RAMAllocated"` }
ServiceServerInfo Server allocation information for a service type.
type ServiceStorageInfo ¶ added in v1.4.12
type ServiceStorageInfo struct { // Service type consuming the resource ServiceType string `json:"ServiceType"` // Allocated number of volumes. AllocatedCount int32 `json:"AllocatedCount"` // Total capacity of all allocated volumes in TB for a service type. AllocatedCapacity float32 `json:"AllocatedCapacity"` }
ServiceStorageInfo Storage allocation information for service type.
type ServicesAPI ¶ added in v1.5.0
type ServicesAPI interface { /* Add Create a new OS service image Adds a new OS service image that can be referenced during host creation. If GreenLake Cloud Services IAM issued token is used for authentication, then it is required to pass either 'spaceid' header or 'Space' header. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. Note that Hoster or BMaaS Access Owner role is required for this operation. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param fileName - @param optional nil or *ServicesApiAddOpts - Optional Parameters: - @param "Spaceid" (optional.String) - GreenLake Cloud Services space ID - @param "Space" (optional.String) - GreenLake Cloud Services space name - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return OsServiceImage */ Add(ctx _context.Context, fileName *os.File, localVarOptionals *ServicesApiAddOpts) (OsServiceImage, *_nethttp.Response, error) /* Delete Delete an OS service image Deletes the OS service image with the matching ID. Note that Hoster or BMaaS Access Owner role is required for this operation under GreenLake Cloud Services. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param serviceId ID of OS service image to delete - @param optional nil or *ServicesApiDeleteOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID */ Delete(ctx _context.Context, serviceId string, localVarOptionals *ServicesApiDeleteOpts) (*_nethttp.Response, error) /* GetByID Retrieve an OS service image Returns a single OS service image object with its matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param serviceId ID of OS service image to return - @param optional nil or *ServicesApiGetByIDOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return OsServiceImage */ GetByID(ctx _context.Context, serviceId string, localVarOptionals *ServicesApiGetByIDOpts) (OsServiceImage, *_nethttp.Response, error) /* List List of all OS service images within an tenant Returns an array of all OS service images objects that have been created. If GreenLake Cloud Services IAM issued token is used for authentication, then it is required to pass 'spaceid' headers. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param optional nil or *ServicesApiListOpts - Optional Parameters: - @param "Spaceid" (optional.String) - GreenLake Cloud Services space ID - @param "Space" (optional.String) - GreenLake Cloud Services space name - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return []OsServiceImage */ List(ctx _context.Context, localVarOptionals *ServicesApiListOpts) ([]OsServiceImage, *_nethttp.Response, error) /* Update Update an OS service image by its ID Updates an OS service image with a matching ID. Note that Hoster or BMaaS Access Owner role is required for this operation under GreenLake Cloud Services. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param serviceId ID of OS service image to update - @param fileName - @param optional nil or *ServicesApiUpdateOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return OsServiceImage */ Update(ctx _context.Context, serviceId string, fileName *os.File, localVarOptionals *ServicesApiUpdateOpts) (OsServiceImage, *_nethttp.Response, error) /* Updatehealth Trigger a request to update an OS service image health by its ID. Trigger a request to update an OS service image health by its ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param serviceId ID of OS service image. - @param optional nil or *ServicesApiUpdatehealthOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID */ Updatehealth(ctx _context.Context, serviceId string, localVarOptionals *ServicesApiUpdatehealthOpts) (*_nethttp.Response, error) }
ServicesAPI defines the client functions provided for Services.
type ServicesApiAddOpts ¶ added in v1.5.0
type ServicesApiAddOpts struct { Spaceid optional.String Space optional.String XRole optional.String XWorkspaceid optional.String }
ServicesApiAddOpts Optional parameters for the method 'Add'
type ServicesApiDeleteOpts ¶ added in v1.5.13
ServicesApiDeleteOpts Optional parameters for the method 'Delete'
type ServicesApiGetByIDOpts ¶ added in v1.5.13
ServicesApiGetByIDOpts Optional parameters for the method 'GetByID'
type ServicesApiListOpts ¶ added in v1.5.0
type ServicesApiListOpts struct { Spaceid optional.String Space optional.String XRole optional.String XWorkspaceid optional.String }
ServicesApiListOpts Optional parameters for the method 'List'
type ServicesApiService ¶ added in v1.5.0
type ServicesApiService service
ServicesApiService ServicesApi service
func (*ServicesApiService) Add ¶ added in v1.5.0
func (a *ServicesApiService) Add(ctx _context.Context, fileName *os.File, localVarOptionals *ServicesApiAddOpts) (OsServiceImage, *_nethttp.Response, error)
Add Create a new OS service image Adds a new OS service image that can be referenced during host creation. If GreenLake Cloud Services IAM issued token is used for authentication, then it is required to pass either 'spaceid' header or 'Space' header. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. Note that Hoster or BMaaS Access Owner role is required for this operation.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param fileName
- @param optional nil or *ServicesApiAddOpts - Optional Parameters:
- @param "Spaceid" (optional.String) - GreenLake Cloud Services space ID
- @param "Space" (optional.String) - GreenLake Cloud Services space name
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return OsServiceImage
func (*ServicesApiService) Delete ¶ added in v1.5.0
func (a *ServicesApiService) Delete(ctx _context.Context, serviceId string, localVarOptionals *ServicesApiDeleteOpts) (*_nethttp.Response, error)
Delete Delete an OS service image Deletes the OS service image with the matching ID. Note that Hoster or BMaaS Access Owner role is required for this operation under GreenLake Cloud Services. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param serviceId ID of OS service image to delete
- @param optional nil or *ServicesApiDeleteOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
func (*ServicesApiService) GetByID ¶ added in v1.5.0
func (a *ServicesApiService) GetByID(ctx _context.Context, serviceId string, localVarOptionals *ServicesApiGetByIDOpts) (OsServiceImage, *_nethttp.Response, error)
GetByID Retrieve an OS service image Returns a single OS service image object with its matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param serviceId ID of OS service image to return
- @param optional nil or *ServicesApiGetByIDOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return OsServiceImage
func (*ServicesApiService) List ¶ added in v1.5.0
func (a *ServicesApiService) List(ctx _context.Context, localVarOptionals *ServicesApiListOpts) ([]OsServiceImage, *_nethttp.Response, error)
List List of all OS service images within an tenant Returns an array of all OS service images objects that have been created. If GreenLake Cloud Services IAM issued token is used for authentication, then it is required to pass 'spaceid' headers. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param optional nil or *ServicesApiListOpts - Optional Parameters:
- @param "Spaceid" (optional.String) - GreenLake Cloud Services space ID
- @param "Space" (optional.String) - GreenLake Cloud Services space name
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return []OsServiceImage
func (*ServicesApiService) Update ¶ added in v1.5.0
func (a *ServicesApiService) Update(ctx _context.Context, serviceId string, fileName *os.File, localVarOptionals *ServicesApiUpdateOpts) (OsServiceImage, *_nethttp.Response, error)
Update Update an OS service image by its ID Updates an OS service image with a matching ID. Note that Hoster or BMaaS Access Owner role is required for this operation under GreenLake Cloud Services. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param serviceId ID of OS service image to update
- @param fileName
- @param optional nil or *ServicesApiUpdateOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return OsServiceImage
func (*ServicesApiService) Updatehealth ¶ added in v1.5.25
func (a *ServicesApiService) Updatehealth(ctx _context.Context, serviceId string, localVarOptionals *ServicesApiUpdatehealthOpts) (*_nethttp.Response, error)
Updatehealth Trigger a request to update an OS service image health by its ID. Trigger a request to update an OS service image health by its ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param serviceId ID of OS service image.
- @param optional nil or *ServicesApiUpdatehealthOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
type ServicesApiUpdateOpts ¶ added in v1.5.13
ServicesApiUpdateOpts Optional parameters for the method 'Update'
type ServicesApiUpdatehealthOpts ¶ added in v1.5.25
ServicesApiUpdatehealthOpts Optional parameters for the method 'Updatehealth'
type SshKey ¶
type SshKey struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` // Time when the resource was created in the database Created time.Time `json:"Created"` // Time when the resource was last modified in the database Modified time.Time `json:"Modified"` // SSH key value Key string `json:"Key"` }
SshKey struct for SshKey
type SshKeyAllOf ¶
type SshKeyAllOf struct { // SSH key value Key string `json:"Key"` }
SshKeyAllOf struct for SshKeyAllOf
type SshKeyEntry ¶
type SshKeyEntry struct { // Unique ID of the SSH key entry ID string `json:"ID"` // Name or description of the stored SSH key Name string `json:"Name"` // SSH key value Key string `json:"Key"` }
SshKeyEntry An entry listing an SSH key that is available for use when creating HostState
type SshkeysAPI ¶
type SshkeysAPI interface { /* Add Add a new SSH Key Adds a new SSH Key that can be referenced when creating a Host. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param newSshKey SSH Key that is to be added to the project - @param optional nil or *SshkeysApiAddOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return SshKey */ Add(ctx _context.Context, newSshKey NewSshKey, localVarOptionals *SshkeysApiAddOpts) (SshKey, *_nethttp.Response, error) /* Delete Delete an SSH key by ID. Deletes the SSH key with the matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param sshkeyId ID of sshkey to delete - @param optional nil or *SshkeysApiDeleteOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID */ Delete(ctx _context.Context, sshkeyId string, localVarOptionals *SshkeysApiDeleteOpts) (*_nethttp.Response, error) /* GetByID Retrieve SSH Key by ID Returns a single SSH key with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param sshkeyId ID of sshkey to return - @param optional nil or *SshkeysApiGetByIDOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return SshKey */ GetByID(ctx _context.Context, sshkeyId string, localVarOptionals *SshkeysApiGetByIDOpts) (SshKey, *_nethttp.Response, error) /* List List all sshkeys in project Returns an array of all SSHKey objects defined within the project. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param optional nil or *SshkeysApiListOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return []SshKey */ List(ctx _context.Context, localVarOptionals *SshkeysApiListOpts) ([]SshKey, *_nethttp.Response, error) /* Update Update an existing SSH Key by ID. Update a single SSH key with matching ID. Only 'Name' or 'Key' fields can be changed. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param sshkeyId ID of sshkey to update - @param updateSshKey Updated SSH key - @param optional nil or *SshkeysApiUpdateOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return SshKey */ Update(ctx _context.Context, sshkeyId string, updateSshKey UpdateSshKey, localVarOptionals *SshkeysApiUpdateOpts) (SshKey, *_nethttp.Response, error) }
SshkeysAPI defines the client functions provided for Sshkeys.
type SshkeysApiAddOpts ¶ added in v1.5.13
SshkeysApiAddOpts Optional parameters for the method 'Add'
type SshkeysApiDeleteOpts ¶ added in v1.5.13
SshkeysApiDeleteOpts Optional parameters for the method 'Delete'
type SshkeysApiGetByIDOpts ¶ added in v1.5.13
SshkeysApiGetByIDOpts Optional parameters for the method 'GetByID'
type SshkeysApiListOpts ¶ added in v1.5.13
SshkeysApiListOpts Optional parameters for the method 'List'
type SshkeysApiService ¶
type SshkeysApiService service
SshkeysApiService SshkeysApi service
func (*SshkeysApiService) Add ¶
func (a *SshkeysApiService) Add(ctx _context.Context, newSshKey NewSshKey, localVarOptionals *SshkeysApiAddOpts) (SshKey, *_nethttp.Response, error)
Add Add a new SSH Key Adds a new SSH Key that can be referenced when creating a Host. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param newSshKey SSH Key that is to be added to the project
- @param optional nil or *SshkeysApiAddOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return SshKey
func (*SshkeysApiService) Delete ¶
func (a *SshkeysApiService) Delete(ctx _context.Context, sshkeyId string, localVarOptionals *SshkeysApiDeleteOpts) (*_nethttp.Response, error)
Delete Delete an SSH key by ID. Deletes the SSH key with the matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param sshkeyId ID of sshkey to delete
- @param optional nil or *SshkeysApiDeleteOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
func (*SshkeysApiService) GetByID ¶
func (a *SshkeysApiService) GetByID(ctx _context.Context, sshkeyId string, localVarOptionals *SshkeysApiGetByIDOpts) (SshKey, *_nethttp.Response, error)
GetByID Retrieve SSH Key by ID Returns a single SSH key with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param sshkeyId ID of sshkey to return
- @param optional nil or *SshkeysApiGetByIDOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return SshKey
func (*SshkeysApiService) List ¶
func (a *SshkeysApiService) List(ctx _context.Context, localVarOptionals *SshkeysApiListOpts) ([]SshKey, *_nethttp.Response, error)
List List all sshkeys in project Returns an array of all SSHKey objects defined within the project. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param optional nil or *SshkeysApiListOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return []SshKey
func (*SshkeysApiService) Update ¶
func (a *SshkeysApiService) Update(ctx _context.Context, sshkeyId string, updateSshKey UpdateSshKey, localVarOptionals *SshkeysApiUpdateOpts) (SshKey, *_nethttp.Response, error)
Update Update an existing SSH Key by ID. Update a single SSH key with matching ID. Only 'Name' or 'Key' fields can be changed. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param sshkeyId ID of sshkey to update
- @param updateSshKey Updated SSH key
- @param optional nil or *SshkeysApiUpdateOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return SshKey
type SshkeysApiUpdateOpts ¶ added in v1.5.13
SshkeysApiUpdateOpts Optional parameters for the method 'Update'
type StorageInventory ¶
type StorageInventory struct { // Unique ID of a volume flavor as listed in the the VolumeFlavors array FlavorID string `json:"FlavorID"` // Unique ID of a data center location LocationID string `json:"LocationID"` // Total capacity available (in GiB) to create new volumes of the indicated flavor at the indicated location Capacity int64 `json:"Capacity"` // Unique ID of the storage pool as listed in the StoragePools array StoragePoolID string `json:"StoragePoolID"` // IDs of the volume collections for this flavor as listed in the Volume collections array VolumeCollectionIDs []string `json:"VolumeCollectionIDs,omitempty"` }
StorageInventory An entry describing the amount of storage available to create volumes of a specific flavor
type StoragePool ¶ added in v1.5.3
type StoragePool struct { // Storage pool unique ID ID string `json:"ID"` // User-visible name for a storage pool Name string `json:"Name"` // The location ID of the data center where the storage pool exists LocationID string `json:"LocationID,omitempty"` // Total capacity available (in GiB) to create new volumes in the storage pool Capacity int64 `json:"Capacity,omitempty"` }
StoragePool An entry describing a storage pool.
type SummaryInfo ¶
type SummaryInfo struct { // Locations where resources exist for all listed projects Locations []LocationInfo `json:"Locations"` // Number of hosts for all listed projects NumHosts int32 `json:"NumHosts"` // Number of volumes for all listed projects NumVolumes int32 `json:"NumVolumes"` // Total storage for all listed projects TotalStorageGB int32 `json:"TotalStorageGB"` // Number of projects with OK health summary status NumOK int32 `json:"NumOK"` // Number of projects with Warning health summary status NumWarning int32 `json:"NumWarning"` // Number of projects with Critical health summary status NumCritical int32 `json:"NumCritical"` // Number of projects with Unknown health summary status NumUnknown int32 `json:"NumUnknown"` }
SummaryInfo struct for SummaryInfo
type Target ¶ added in v1.5.0
type Target string
Target Indicates where the passed info is expected to land once converted to a file when combined with path.
type Templating ¶ added in v1.5.0
type Templating string
Templating Indicates whether templating is used in contents.
const ( TEMPLATING_NONE Templating = "none" TEMPLATING_GO_TEXT_TEMPLATE Templating = "go-text-template" )
List of Templating
type TemplatingInfo ¶ added in v1.5.0
type TemplatingInfo string
TemplatingInfo It defines the source object and schema used as input to the template. If go text templating is used, then the TemplatingInfo refers to a specific Go struct that would be passed to fill-in the template.
const ( TEMPLATINGINFO_V1 TemplatingInfo = "hostdef-v1" TEMPLATINGINFO_V2 TemplatingInfo = "hostdef-v2" )
List of TemplatingInfo
type UpdateHost ¶ added in v1.5.0
type UpdateHost struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` Description string `json:"Description"` // The list of IDs corresponding to the networks that were provisioned to the host. These networks are among those listed in the Networks array returned by the get /available-resources call. NetworkIDs []string `json:"NetworkIDs"` // The host's default network ID. This needs to be one of the values in the \"NetworkIDs\" list. NetworkForDefaultRoute string `json:"NetworkForDefaultRoute"` // ID of the network selected to be untagged. This needs to be one of the values in the \"NetworkIDs\" list. NetworkUntagged string `json:"NetworkUntagged"` ISCSIConfig *UpdateHostIscsiConfig `json:"ISCSIConfig,omitempty"` // The list of pre-allocated IP addresses corresponding to the list of NetworkIDs. Pre-allocated IP addresses are optional, but required when updating a host containing pre-allocated IP addresses. PreAllocatedIPs []string `json:"PreAllocatedIPs"` // The map of Service Network (Provider) ID to Provider MAC address. The Service Network must be a provider network provisioned to this host. Any Service Networks not included here will default to the physical MAC learned during machine discovery. ServiceNetsProviderMAC map[string]string `json:"ServiceNetsProviderMAC"` // The map of service/user specified label name to label value for this host. Setting service labels is restricted by role. At minimum, this field should be set to the values specified during create. Labels map[string]string `json:"Labels"` }
UpdateHost struct for UpdateHost
type UpdateHostAllOf ¶ added in v1.5.0
type UpdateHostAllOf struct { Description string `json:"Description"` // The list of IDs corresponding to the networks that were provisioned to the host. These networks are among those listed in the Networks array returned by the get /available-resources call. NetworkIDs []string `json:"NetworkIDs"` // The host's default network ID. This needs to be one of the values in the \"NetworkIDs\" list. NetworkForDefaultRoute string `json:"NetworkForDefaultRoute"` // ID of the network selected to be untagged. This needs to be one of the values in the \"NetworkIDs\" list. NetworkUntagged string `json:"NetworkUntagged"` ISCSIConfig *UpdateHostIscsiConfig `json:"ISCSIConfig,omitempty"` // The list of pre-allocated IP addresses corresponding to the list of NetworkIDs. Pre-allocated IP addresses are optional, but required when updating a host containing pre-allocated IP addresses. PreAllocatedIPs []string `json:"PreAllocatedIPs"` // The map of Service Network (Provider) ID to Provider MAC address. The Service Network must be a provider network provisioned to this host. Any Service Networks not included here will default to the physical MAC learned during machine discovery. ServiceNetsProviderMAC map[string]string `json:"ServiceNetsProviderMAC"` // The map of service/user specified label name to label value for this host. Setting service labels is restricted by role. At minimum, this field should be set to the values specified during create. Labels map[string]string `json:"Labels"` }
UpdateHostAllOf struct for UpdateHostAllOf
type UpdateHostIscsiConfig ¶ added in v1.5.0
type UpdateHostIscsiConfig struct { // Fully qualified iSCSI intiator name of this host. This is generated when a host is created and the information is pushed to the new host InitiatorName string `json:"InitiatorName"` // CHAP secret as generated by the system when attaching a volume. Visible in VolumeAttachment object. CHAPSecret string `json:"CHAPSecret,omitempty"` // CHAP user as generated by the system when attaching a volume. Visible in VolumeAttachment object. CHAPUser string `json:"CHAPUser,omitempty"` ISCSIDiscoveryAddress string `json:"ISCSIDiscoveryAddress,omitempty"` }
UpdateHostIscsiConfig struct for UpdateHostIscsiConfig
type UpdateIpPool ¶ added in v1.5.0
type UpdateIpPool struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` Description string `json:"Description"` DefaultRoute string `json:"DefaultRoute"` // List of DNS servers for the IP pool DNS []string `json:"DNS"` // Optional web-proxy for external internet access should the pool actually be behind a firewall Proxy string `json:"Proxy"` // Addresses or CIDRs for which proxy requests are not made NoProxy string `json:"NoProxy"` // List of NTP servers for the IP pool NTP []string `json:"NTP"` }
UpdateIpPool struct for UpdateIpPool
type UpdateIpPoolAllOf ¶ added in v1.5.0
type UpdateIpPoolAllOf struct { Description string `json:"Description"` DefaultRoute string `json:"DefaultRoute"` // List of DNS servers for the IP pool DNS []string `json:"DNS"` // Optional web-proxy for external internet access should the pool actually be behind a firewall Proxy string `json:"Proxy"` // Addresses or CIDRs for which proxy requests are not made NoProxy string `json:"NoProxy"` // List of NTP servers for the IP pool NTP []string `json:"NTP"` }
UpdateIpPoolAllOf struct for UpdateIpPoolAllOf
type UpdateLimits ¶ added in v1.5.0
type UpdateLimits struct { // Maximum number of hosts to allow Hosts int32 `json:"Hosts"` // Maximum number of volumes to allow Volumes int32 `json:"Volumes"` // Maximum capacity to allow in TiB VolumeCapacity int64 `json:"VolumeCapacity"` // Maximum number of private networks to allow PrivateNetworks int32 `json:"PrivateNetworks"` // Map of instance type ID to maximum number of hosts that can be created with that instance type InstanceTypes map[string]int32 `json:"InstanceTypes,omitempty"` }
UpdateLimits struct for UpdateLimits
type UpdateNetwork ¶ added in v1.5.0
type UpdateNetwork struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` Description string `json:"Description"` HostUse NetworkHostUse `json:"HostUse"` Purpose NetworkPurpose `json:"Purpose"` }
UpdateNetwork struct for UpdateNetwork
type UpdateNetworkAllOf ¶ added in v1.5.0
type UpdateNetworkAllOf struct { Description string `json:"Description"` HostUse NetworkHostUse `json:"HostUse"` Purpose NetworkPurpose `json:"Purpose"` }
UpdateNetworkAllOf struct for UpdateNetworkAllOf
type UpdateProfile ¶ added in v1.5.0
type UpdateProfile struct { // Name of the Project Team. Must not be empty, maximum 128 printable characters TeamName string `json:"TeamName"` // Optional description of the Project Team, maximum 256 printable characters TeamDesc string `json:"TeamDesc,omitempty"` // Optional name of the company, maximum 256 printable characters Company string `json:"Company,omitempty"` // Optional address of the company, maximum 256 printable characters Address string `json:"Address,omitempty"` // Optional email address of the contact person for the team, maximum 256 printable characters Email string `json:"Email,omitempty"` // Currently always false EmailVerified bool `json:"EmailVerified,omitempty"` // Optional phone number of the contact person for the team, maximum 32 printable characters PhoneNumber string `json:"PhoneNumber,omitempty"` // Currently always false PhoneVerified bool `json:"PhoneVerified,omitempty"` }
UpdateProfile struct for UpdateProfile
type UpdateProject ¶ added in v1.5.0
type UpdateProject struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` Profile UpdateProfile `json:"Profile"` Limits UpdateLimits `json:"Limits"` // Array listing the permitted OS service images. PermittedOSImages []string `json:"PermittedOSImages"` }
UpdateProject struct for UpdateProject
type UpdateProjectAllOf ¶ added in v1.5.0
type UpdateProjectAllOf struct { Profile UpdateProfile `json:"Profile"` Limits UpdateLimits `json:"Limits"` // Array listing the permitted OS service images. PermittedOSImages []string `json:"PermittedOSImages"` }
UpdateProjectAllOf struct for UpdateProjectAllOf
type UpdateResourceBase ¶ added in v1.5.0
type UpdateResourceBase struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` }
UpdateResourceBase struct for UpdateResourceBase
type UpdateSshKey ¶ added in v1.5.0
type UpdateSshKey struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` // SSH key value Key string `json:"Key"` }
UpdateSshKey struct for UpdateSshKey
type UpdateVolume ¶ added in v1.5.0
type UpdateVolume struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` // The size of the volume in KiB Capacity int64 `json:"Capacity"` // The volume collection the volume is a part of VolumeCollectionID string `json:"VolumeCollectionID,omitempty"` // The map of service/user specified label name to label value for this volume. Setting service labels is restricted by role. At minimum, this field should be set to the values specified during create. Labels map[string]string `json:"Labels"` }
UpdateVolume struct for UpdateVolume
type UpdateVolumeAllOf ¶ added in v1.5.0
type UpdateVolumeAllOf struct { // The size of the volume in KiB Capacity int64 `json:"Capacity"` // The volume collection the volume is a part of VolumeCollectionID string `json:"VolumeCollectionID,omitempty"` // The map of service/user specified label name to label value for this volume. Setting service labels is restricted by role. At minimum, this field should be set to the values specified during create. Labels map[string]string `json:"Labels"` }
UpdateVolumeAllOf struct for UpdateVolumeAllOf
type UseRecord ¶
type UseRecord struct { // Address of the record Base string `json:"Base"` // Unique ID of the host associated with the record HostID string `json:"HostID"` // Unique ID of the rack associated with the record RackID string `json:"RackID"` // Unique ID of the device associated with the record DeviceID string `json:"DeviceID"` // Indicates if the record is used for non Metal scope External bool `json:"External"` // Usage of the record Usage string `json:"Usage"` // User which performed the allocation of the record AllocatedBy string `json:"AllocatedBy"` }
UseRecord struct for UseRecord
type UserDefinedSteps ¶ added in v1.5.0
type UserDefinedSteps struct { // Allows setting operations to be executed before host imaging. If a firmware update operation is defined, Firmware Baseline must be set. ImagingPrepSteps []UserOp `json:"ImagingPrepSteps"` // Allows setting operations to be executed after host imaging. If a firmware update operation is defined, Firmware Baseline must be set. ImagingCompleteSteps []UserOp `json:"ImagingCompleteSteps"` // Allows setting operations to be executed during host maintenance. If a firmware update operation is defined, Firmware Baseline must be set. MaintenanceSteps []UserOp `json:"MaintenanceSteps"` }
UserDefinedSteps Indicates custom operations to be executed within the host life cycle.
type UserOp ¶ added in v1.5.0
type UserOp struct { // Unique ID of this user operation. ID string `json:"ID"` Operation UserOpEnum `json:"Operation"` Description string `json:"Description"` Parameters []OpArg `json:"Parameters"` }
UserOp Describes a user operation.
type UserOpEnum ¶ added in v1.5.0
type UserOpEnum string
UserOpEnum Defines user operation for a machine.
const ( USEROPENUM_RESET_SERVER UserOpEnum = "Reset Server" USEROPENUM_POWER_ON UserOpEnum = "Power On" USEROPENUM_POWER_OFF UserOpEnum = "Power Off" USEROPENUM_BOOT_SERVICE_OS UserOpEnum = "Boot Service OS" USEROPENUM_RE_DISCOVER UserOpEnum = "Re-Discover" USEROPENUM_BURN_IN_SERVER UserOpEnum = "Burn-In Server" USEROPENUM_ERASE_DRIVE UserOpEnum = "Erase Drive" USEROPENUM_UPDATE_FIRMWARE UserOpEnum = "Update Firmware" USEROPENUM_SET_BIOS_PARAMETERS UserOpEnum = "Set BIOS Parameters" USEROPENUM_SET_RAID0_BOOT_VOLUME UserOpEnum = "Set RAID0 Boot Volume" USEROPENUM_SET_RAID1_BOOT_VOLUME UserOpEnum = "Set RAID1 Boot Volume" USEROPENUM_CLEAR_RAID_CONFIGURATION UserOpEnum = "Clear RAID Configuration" USEROPENUM_PAUSE UserOpEnum = "Pause" USEROPENUM_UPDATE_BMC_FIRMWARE UserOpEnum = "Update BMC Firmware" USEROPENUM_DISCOVER UserOpEnum = "Discover" USEROPENUM_UPDATE_BMC_LICENSE UserOpEnum = "Update BMC License" USEROPENUM_UPDATE_SERVER_FW_FROM_ISO UserOpEnum = "Update Server FW from ISO" USEROPENUM_RESET_SERVER_BIOS_TO_FACTORY_DEFAULT UserOpEnum = "Reset Server BIOS to Factory Default" USEROPENUM_CONNECT_L3_UNDERLAY UserOpEnum = "Connect L3 Underlay" USEROPENUM_CONFIGURE_SMART_IO UserOpEnum = "Configure Smart IO" USEROPENUM_CLEAN_UP_CONTROL_PLANE UserOpEnum = "Clean up Control Plane" USEROPENUM_INIT_BMC UserOpEnum = "Init BMC" USEROPENUM_ENCRYPT_BOOT_VOLUME UserOpEnum = "Encrypt Boot Volume" USEROPENUM_CLEAR_BMC_LOGS UserOpEnum = "Clear BMC Logs" )
List of UserOpEnum
type VaStateEnum ¶
type VaStateEnum string
VaStateEnum Current volume attachment state expressed as a string enum value (new, exporting, attaching, ready, detaching, unexporting, deleted, failed)
const ( VASTATEENUM_NEW VaStateEnum = "new" VASTATEENUM_EXPORTING VaStateEnum = "exporting" VASTATEENUM_ATTACHING VaStateEnum = "attaching" VASTATEENUM_READY VaStateEnum = "ready" VASTATEENUM_DETACHING VaStateEnum = "detaching" VASTATEENUM_UNEXPORTING VaStateEnum = "unexporting" VASTATEENUM_DELETED VaStateEnum = "deleted" VASTATEENUM_FAILED VaStateEnum = "failed" )
List of VaStateEnum
type VafsConfig ¶
type VafsConfig struct { // Storage identifier for an array or a SDS StorageID string `json:"StorageID"` // Storage array or SDS user UserName string `json:"UserName"` // SDS token acquired by login into the SDS for a given user. This is required by the FUSE client to mount volumes on host. Ticket string `json:"Ticket"` // Ticket expiry time to help client to refresh the ticket. TicketExpiryTime string `json:"TicketExpiryTime"` }
VafsConfig struct for VafsConfig
type VersionAPI ¶
type VersionAPI interface { /* Get Get api server build version - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). @return Version */ Get(ctx _context.Context) (Version, *_nethttp.Response, error) }
VersionAPI defines the client functions provided for Version.
type VersionApiService ¶
type VersionApiService service
VersionApiService VersionApi service
type Volume ¶
type Volume struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` // Time when the resource was created in the database Created time.Time `json:"Created"` // Time when the resource was last modified in the database Modified time.Time `json:"Modified"` Description string `json:"Description"` // The VolumeFlavorID matching an entry in the VolumeFlavors array returned as part of the get /available-resources call FlavorID string `json:"FlavorID"` // The storage pool ID matching an entry in the StoragePools array returned as part of the get /available-resources call StoragePoolID string `json:"StoragePoolID"` // Name of the storage pool from where the volume is allocated. StoragePoolName string `json:"StoragePoolName"` // The size of the volume in KiB Capacity int64 `json:"Capacity"` // The amount of the volume currently used as reported by the array in KiB CapacityUsed int64 `json:"CapacityUsed"` Shareable bool `json:"Shareable"` // The location of the volume (and the storage array) LocationID is one of those listed by the LocationInfo array returned as part of the get /available-resources call. Any volumes must be in the same location as their attached Host. LocationID string `json:"LocationID"` // Name of the data center where the volume is created on the storage array. DataCenterName string `json:"DataCenterName"` // The optional volume collection ID matching an entry in the VolumeCollections array returned as part of the get /available-resources call VolumeCollectionID string `json:"VolumeCollectionID,omitempty"` State VolumeState `json:"State"` SubState VolumeSubState `json:"SubState"` Status VolumeStatus `json:"Status"` // The map of label name to label value for the resource. Labels map[string]string `json:"Labels"` // Serial number of the volume. WWN string `json:"WWN"` // Indicates whether replication is enabled for this volume. ReplicationEnabled bool `json:"ReplicationEnabled"` // Indicates whether the volume is a native Metal created one or an external one. UnmanagedVolume bool `json:"UnmanagedVolume"` // The site where the remote copy role for the volume is Primary at the time of most recent import. ActiveSite string `json:"ActiveSite"` // The site where the volume was originally created. CreatedSite string `json:"CreatedSite"` // The number of active exports for this volume ExportCount int32 `json:"ExportCount"` }
Volume struct for Volume
type VolumeAllOf ¶
type VolumeAllOf struct { Description string `json:"Description"` // The VolumeFlavorID matching an entry in the VolumeFlavors array returned as part of the get /available-resources call FlavorID string `json:"FlavorID"` // The storage pool ID matching an entry in the StoragePools array returned as part of the get /available-resources call StoragePoolID string `json:"StoragePoolID"` // Name of the storage pool from where the volume is allocated. StoragePoolName string `json:"StoragePoolName"` // The size of the volume in KiB Capacity int64 `json:"Capacity"` // The amount of the volume currently used as reported by the array in KiB CapacityUsed int64 `json:"CapacityUsed"` Shareable bool `json:"Shareable"` // The location of the volume (and the storage array) LocationID is one of those listed by the LocationInfo array returned as part of the get /available-resources call. Any volumes must be in the same location as their attached Host. LocationID string `json:"LocationID"` // Name of the data center where the volume is created on the storage array. DataCenterName string `json:"DataCenterName"` // The optional volume collection ID matching an entry in the VolumeCollections array returned as part of the get /available-resources call VolumeCollectionID string `json:"VolumeCollectionID,omitempty"` State VolumeState `json:"State"` SubState VolumeSubState `json:"SubState"` Status VolumeStatus `json:"Status"` // The map of label name to label value for the resource. Labels map[string]string `json:"Labels"` // Serial number of the volume. WWN string `json:"WWN"` // Indicates whether replication is enabled for this volume. ReplicationEnabled bool `json:"ReplicationEnabled"` // Indicates whether the volume is a native Metal created one or an external one. UnmanagedVolume bool `json:"UnmanagedVolume"` // The site where the remote copy role for the volume is Primary at the time of most recent import. ActiveSite string `json:"ActiveSite"` // The site where the volume was originally created. CreatedSite string `json:"CreatedSite"` // The number of active exports for this volume ExportCount int32 `json:"ExportCount"` }
VolumeAllOf struct for VolumeAllOf
type VolumeAttachHostUuid ¶
type VolumeAttachHostUuid struct { // Unique ID of the Host to attach or detach volume HostID string `json:"HostID"` }
VolumeAttachHostUuid struct for VolumeAttachHostUuid
type VolumeAttachment ¶
type VolumeAttachment struct { // Unique ID for the resource instance as generated by the Metal service ID string `json:"ID"` // Used to determine whether the DB entry has changed since it was last read. This value is updated each time the resource is updated. Client must send this value unchanged for any update operation. ETag string `json:"ETag"` // Common name for the resource instance. Must be 128 or fewer printable characters Name string `json:"Name"` // Time when the resource was created in the database Created time.Time `json:"Created"` // Time when the resource was last modified in the database Modified time.Time `json:"Modified"` // Unique ID of the volume attached to the host VolumeID string `json:"VolumeID"` // Unique ID of the host connected to the volume HostID string `json:"HostID"` // Host IP address for the network connection that connects to the storage array HostIPAddress string `json:"HostIPAddress"` // IQN is the full initiator name used for identification during iSCSI login IQN string `json:"IQN"` // CHAPSecret is the Challenge Authentication Protocol secret to be shared between array and initiator. CHAPSecret string `json:"CHAPSecret"` // CHAPUserName is the CHAP username to use for CHAP authentication CHAPUserName string `json:"CHAPUserName"` // LUN is the Logical Unit Number to be assigned to the volume on export LUN int32 `json:"LUN"` // VolumeTargetIQN is the iQN for the volume, assigned by the array corresponding to the volume VolumeTargetIQN string `json:"VolumeTargetIQN"` // VolumeTargetIPAddress is the IPV4 address of the iSCSI volume export VolumeTargetIPAddress string `json:"VolumeTargetIPAddress"` State VaStateEnum `json:"State"` // File share specific configuration parameters FSConfig *VafsConfig `json:"FSConfig"` AttachProtocol ProtocolKind `json:"AttachProtocol"` // List of FC host port wwpns. WWPNs []string `json:"WWPNs"` }
VolumeAttachment struct for VolumeAttachment
type VolumeAttachmentAllOf ¶
type VolumeAttachmentAllOf struct { // Unique ID of the volume attached to the host VolumeID string `json:"VolumeID"` // Unique ID of the host connected to the volume HostID string `json:"HostID"` // Host IP address for the network connection that connects to the storage array HostIPAddress string `json:"HostIPAddress"` // IQN is the full initiator name used for identification during iSCSI login IQN string `json:"IQN"` // CHAPSecret is the Challenge Authentication Protocol secret to be shared between array and initiator. CHAPSecret string `json:"CHAPSecret"` // CHAPUserName is the CHAP username to use for CHAP authentication CHAPUserName string `json:"CHAPUserName"` // LUN is the Logical Unit Number to be assigned to the volume on export LUN int32 `json:"LUN"` // VolumeTargetIQN is the iQN for the volume, assigned by the array corresponding to the volume VolumeTargetIQN string `json:"VolumeTargetIQN"` // VolumeTargetIPAddress is the IPV4 address of the iSCSI volume export VolumeTargetIPAddress string `json:"VolumeTargetIPAddress"` State VaStateEnum `json:"State"` // File share specific configuration parameters FSConfig *VafsConfig `json:"FSConfig"` AttachProtocol ProtocolKind `json:"AttachProtocol"` // List of FC host port wwpns. WWPNs []string `json:"WWPNs"` }
VolumeAttachmentAllOf struct for VolumeAttachmentAllOf
type VolumeAttachmentsAPI ¶
type VolumeAttachmentsAPI interface { /* Add Create a new VolumeAttachment Adds a new VolumeAttachment which enables a machine to use a volume. Note that this API is for creation of a VolumeAttachment for non-Hosts. A VolumeAttachment resource must be deleted using the 'DELETE /volume-attachments/{attachmentId}' API. For regular hosts, a VolumeAttachment is created via the 'POST /volumes/{volumeId}/attach' API. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param newVolumeAttachment NewVolumeAttachement parameters to create a new VolumeAttachment. - @param optional nil or *VolumeAttachmentsApiAddOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return VolumeAttachment */ Add(ctx _context.Context, newVolumeAttachment NewVolumeAttachment, localVarOptionals *VolumeAttachmentsApiAddOpts) (VolumeAttachment, *_nethttp.Response, error) /* Delete Delete a VolumeAttachment Deletes the VolumeAttachment with the matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param attachmentId ID of VolumeAttachment to delete - @param optional nil or *VolumeAttachmentsApiDeleteOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID */ Delete(ctx _context.Context, attachmentId string, localVarOptionals *VolumeAttachmentsApiDeleteOpts) (*_nethttp.Response, error) /* GetByID Retrieve volume attachment by ID Returns a single volume attachment with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param attachmentId ID of volume attachment to return - @param optional nil or *VolumeAttachmentsApiGetByIDOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return VolumeAttachment */ GetByID(ctx _context.Context, attachmentId string, localVarOptionals *VolumeAttachmentsApiGetByIDOpts) (VolumeAttachment, *_nethttp.Response, error) /* List List all volume attachments in project Returns an array of all VolumeAttachments defined within the project. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param optional nil or *VolumeAttachmentsApiListOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return []VolumeAttachment */ List(ctx _context.Context, localVarOptionals *VolumeAttachmentsApiListOpts) ([]VolumeAttachment, *_nethttp.Response, error) }
VolumeAttachmentsAPI defines the client functions provided for VolumeAttachments.
type VolumeAttachmentsApiAddOpts ¶ added in v1.5.13
VolumeAttachmentsApiAddOpts Optional parameters for the method 'Add'
type VolumeAttachmentsApiDeleteOpts ¶ added in v1.5.13
VolumeAttachmentsApiDeleteOpts Optional parameters for the method 'Delete'
type VolumeAttachmentsApiGetByIDOpts ¶ added in v1.5.13
VolumeAttachmentsApiGetByIDOpts Optional parameters for the method 'GetByID'
type VolumeAttachmentsApiListOpts ¶ added in v1.5.13
VolumeAttachmentsApiListOpts Optional parameters for the method 'List'
type VolumeAttachmentsApiService ¶
type VolumeAttachmentsApiService service
VolumeAttachmentsApiService VolumeAttachmentsApi service
func (*VolumeAttachmentsApiService) Add ¶
func (a *VolumeAttachmentsApiService) Add(ctx _context.Context, newVolumeAttachment NewVolumeAttachment, localVarOptionals *VolumeAttachmentsApiAddOpts) (VolumeAttachment, *_nethttp.Response, error)
Add Create a new VolumeAttachment Adds a new VolumeAttachment which enables a machine to use a volume. Note that this API is for creation of a VolumeAttachment for non-Hosts. A VolumeAttachment resource must be deleted using the 'DELETE /volume-attachments/{attachmentId}' API. For regular hosts, a VolumeAttachment is created via the 'POST /volumes/{volumeId}/attach' API. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param newVolumeAttachment NewVolumeAttachement parameters to create a new VolumeAttachment.
- @param optional nil or *VolumeAttachmentsApiAddOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return VolumeAttachment
func (*VolumeAttachmentsApiService) Delete ¶
func (a *VolumeAttachmentsApiService) Delete(ctx _context.Context, attachmentId string, localVarOptionals *VolumeAttachmentsApiDeleteOpts) (*_nethttp.Response, error)
Delete Delete a VolumeAttachment Deletes the VolumeAttachment with the matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param attachmentId ID of VolumeAttachment to delete
- @param optional nil or *VolumeAttachmentsApiDeleteOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
func (*VolumeAttachmentsApiService) GetByID ¶
func (a *VolumeAttachmentsApiService) GetByID(ctx _context.Context, attachmentId string, localVarOptionals *VolumeAttachmentsApiGetByIDOpts) (VolumeAttachment, *_nethttp.Response, error)
GetByID Retrieve volume attachment by ID Returns a single volume attachment with matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param attachmentId ID of volume attachment to return
- @param optional nil or *VolumeAttachmentsApiGetByIDOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return VolumeAttachment
func (*VolumeAttachmentsApiService) List ¶
func (a *VolumeAttachmentsApiService) List(ctx _context.Context, localVarOptionals *VolumeAttachmentsApiListOpts) ([]VolumeAttachment, *_nethttp.Response, error)
List List all volume attachments in project Returns an array of all VolumeAttachments defined within the project. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param optional nil or *VolumeAttachmentsApiListOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return []VolumeAttachment
type VolumeCollection ¶ added in v1.5.4
type VolumeCollection struct { // The ID of the volume collection resource that can be used while creating a volume ID string `json:"ID"` // The name of the volume collection resource Name string `json:"Name"` // The location ID of the data center where the volume collection resides LocationID string `json:"LocationID"` // The description of the volume collection resource Description string `json:"Description"` // IDs of the storage pools that are valid for this volume collection as listed in the Storage Pools array StoragePoolIDs []string `json:"StoragePoolIDs,omitempty"` }
VolumeCollection Volume collection within a data center location
type VolumeFlavor ¶
type VolumeFlavor struct { // Volume flavor unique ID ID string `json:"ID"` // Typical user-visible name for a volume flavor Name string `json:"Name"` Details FlavorDesc `json:"Details"` }
VolumeFlavor Description of a specific volume flavor offering. A volume flavor will typically refer to a specific level of performance and durability as defined in the Details
type VolumeFlavorsInfo ¶
type VolumeFlavorsInfo struct { Name string `json:"Name"` ProjectsUsed int32 `json:"ProjectsUsed"` OtherUsed int32 `json:"OtherUsed"` Available int32 `json:"Available"` }
VolumeFlavorsInfo struct for VolumeFlavorsInfo
type VolumeInfo ¶
type VolumeInfo struct { // Unique ID for the volume. Referenced if the volume is to be attached to a new Host ID string `json:"ID"` // User-provided name for the volume Name string `json:"Name"` // User-provided description of the volume Description string `json:"Description"` // The ID of the volume flavor requested when creating the volume FlavorID string `json:"FlavorID"` // The ID of the storage pool where volume resides StoragePoolID string `json:"StoragePoolID"` // The size of the volume in KiB Capacity int64 `json:"Capacity"` Shareable bool `json:"Shareable"` // The location ID of the data center where the volume exists LocationID string `json:"LocationID"` // The ID of volume collection of which this volume is a member VolumeCollectionID string `json:"VolumeCollectionID"` // The discovery IP for the iSCSI volume DiscoveryIP string `json:"DiscoveryIP"` // The target IQN for the iSCSI volume TargetIQN string `json:"TargetIQN"` State VolumeState `json:"State"` Status VolumeStatus `json:"Status"` }
VolumeInfo Description of the details about a pre-existing volume
type VolumeState ¶
type VolumeState string
VolumeState Current volume state expressed as a string enum value (new, allocating, allocated, visible, deleting, deleted, failed)
const ( VOLUMESTATE_NEW VolumeState = "new" VOLUMESTATE_ALLOCATING VolumeState = "allocating" VOLUMESTATE_ALLOCATED VolumeState = "allocated" VOLUMESTATE_VISIBLE VolumeState = "visible" VOLUMESTATE_DELETING VolumeState = "deleting" VOLUMESTATE_DELETED VolumeState = "deleted" VOLUMESTATE_FAILED VolumeState = "failed" )
List of VolumeState
type VolumeStatus ¶
type VolumeStatus string
VolumeStatus Current volume status expressed as a string enum values (ok, error, degraded)
const ( VOLUMESTATUS_OK VolumeStatus = "ok" VOLUMESTATUS_ERROR VolumeStatus = "error" VOLUMESTATUS_DEGRADED VolumeStatus = "degraded" )
List of VolumeStatus
type VolumeSubState ¶ added in v1.4.5
type VolumeSubState string
VolumeSubState Current update state of volume expressed as a string enum value (idle, update-requested, updating)
const ( VOLUMESUBSTATE_IDLE VolumeSubState = "idle" VOLUMESUBSTATE_UPDATE_REQUESTED VolumeSubState = "update-requested" VOLUMESUBSTATE_UPDATING VolumeSubState = "updating" )
List of VolumeSubState
type VolumesAPI ¶
type VolumesAPI interface { /* Add Add a new volume Adds a new volume to the project. Volumes may be created separately and then referenced in the create Host call; or volumes may be created directly within the create Host call. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param newVolume Volume that is to be added to the project - @param optional nil or *VolumesApiAddOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Volume */ Add(ctx _context.Context, newVolume NewVolume, localVarOptionals *VolumesApiAddOpts) (Volume, *_nethttp.Response, error) /* Attach Attach existing volume to Host Attaches the indicated volume to a host identified in the requestBody. This attachment will create a VolumeAttachment object that contains details about the connection of the volume and will update the Host with iSCSI configuration information. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param volumeId ID of volume to attach - @param volumeAttachHostUuid Unique ID of the Host to which the volume will be attached - @param optional nil or *VolumesApiAttachOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return VolumeAttachment */ Attach(ctx _context.Context, volumeId string, volumeAttachHostUuid VolumeAttachHostUuid, localVarOptionals *VolumesApiAttachOpts) (VolumeAttachment, *_nethttp.Response, error) /* Delete Delete a volume Deletes the volume with the matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param volumeId ID of volume to delete - @param optional nil or *VolumesApiDeleteOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID */ Delete(ctx _context.Context, volumeId string, localVarOptionals *VolumesApiDeleteOpts) (*_nethttp.Response, error) /* Detach Detach existing volume from Host Detaches the indicated volume from the host identified in the requestBody. This detachment will delete the VolumeAttachment object that contains details about the connection of the volume and will update the Host to remove selected iSCSI configuration information. Note that the HostID is required in the body of the request to ensure that the operation is well understood and that a volume is not accidently being removed from the wrong host. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param volumeId ID of volume to attach - @param volumeAttachHostUuid Unique ID of the Host from which a volume will be detached - @param optional nil or *VolumesApiDetachOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID */ Detach(ctx _context.Context, volumeId string, volumeAttachHostUuid VolumeAttachHostUuid, localVarOptionals *VolumesApiDetachOpts) (*_nethttp.Response, error) /* GetByID Retrieve volume by ID Returns a single volume with matching imaged. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param volumeId ID of volume to return - @param optional nil or *VolumesApiGetByIDOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Volume */ GetByID(ctx _context.Context, volumeId string, localVarOptionals *VolumesApiGetByIDOpts) (Volume, *_nethttp.Response, error) /* List List all volumes in project Returns an array of all volumes defined within the project. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param optional nil or *VolumesApiListOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return []Volume */ List(ctx _context.Context, localVarOptionals *VolumesApiListOpts) ([]Volume, *_nethttp.Response, error) /* Update Update an existing volume Updates volume with matching ID. Update is permitted only when volume is in 'Allocated' or 'Visible' state. Only the Volume 'Capacity' can be updated with a value greater than the existing one to expand the volume. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers. - @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param volumeId ID of volume to return - @param updateVolume Volume object with its ID and Capacity in GiB indicating the expanded size to be specified. - @param optional nil or *VolumesApiUpdateOpts - Optional Parameters: - @param "XRole" (optional.String) - GreenLake Platform role name - @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID @return Volume */ Update(ctx _context.Context, volumeId string, updateVolume UpdateVolume, localVarOptionals *VolumesApiUpdateOpts) (Volume, *_nethttp.Response, error) }
VolumesAPI defines the client functions provided for Volumes.
type VolumesApiAddOpts ¶ added in v1.5.13
VolumesApiAddOpts Optional parameters for the method 'Add'
type VolumesApiAttachOpts ¶ added in v1.5.13
VolumesApiAttachOpts Optional parameters for the method 'Attach'
type VolumesApiDeleteOpts ¶ added in v1.5.13
VolumesApiDeleteOpts Optional parameters for the method 'Delete'
type VolumesApiDetachOpts ¶ added in v1.5.13
VolumesApiDetachOpts Optional parameters for the method 'Detach'
type VolumesApiGetByIDOpts ¶ added in v1.5.13
VolumesApiGetByIDOpts Optional parameters for the method 'GetByID'
type VolumesApiListOpts ¶ added in v1.5.13
VolumesApiListOpts Optional parameters for the method 'List'
type VolumesApiService ¶
type VolumesApiService service
VolumesApiService VolumesApi service
func (*VolumesApiService) Add ¶
func (a *VolumesApiService) Add(ctx _context.Context, newVolume NewVolume, localVarOptionals *VolumesApiAddOpts) (Volume, *_nethttp.Response, error)
Add Add a new volume Adds a new volume to the project. Volumes may be created separately and then referenced in the create Host call; or volumes may be created directly within the create Host call. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param newVolume Volume that is to be added to the project
- @param optional nil or *VolumesApiAddOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Volume
func (*VolumesApiService) Attach ¶
func (a *VolumesApiService) Attach(ctx _context.Context, volumeId string, volumeAttachHostUuid VolumeAttachHostUuid, localVarOptionals *VolumesApiAttachOpts) (VolumeAttachment, *_nethttp.Response, error)
Attach Attach existing volume to Host Attaches the indicated volume to a host identified in the requestBody. This attachment will create a VolumeAttachment object that contains details about the connection of the volume and will update the Host with iSCSI configuration information. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param volumeId ID of volume to attach
- @param volumeAttachHostUuid Unique ID of the Host to which the volume will be attached
- @param optional nil or *VolumesApiAttachOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return VolumeAttachment
func (*VolumesApiService) Delete ¶
func (a *VolumesApiService) Delete(ctx _context.Context, volumeId string, localVarOptionals *VolumesApiDeleteOpts) (*_nethttp.Response, error)
Delete Delete a volume Deletes the volume with the matching ID. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param volumeId ID of volume to delete
- @param optional nil or *VolumesApiDeleteOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
func (*VolumesApiService) Detach ¶
func (a *VolumesApiService) Detach(ctx _context.Context, volumeId string, volumeAttachHostUuid VolumeAttachHostUuid, localVarOptionals *VolumesApiDetachOpts) (*_nethttp.Response, error)
Detach Detach existing volume from Host Detaches the indicated volume from the host identified in the requestBody. This detachment will delete the VolumeAttachment object that contains details about the connection of the volume and will update the Host to remove selected iSCSI configuration information. Note that the HostID is required in the body of the request to ensure that the operation is well understood and that a volume is not accidently being removed from the wrong host. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param volumeId ID of volume to attach
- @param volumeAttachHostUuid Unique ID of the Host from which a volume will be detached
- @param optional nil or *VolumesApiDetachOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
func (*VolumesApiService) GetByID ¶
func (a *VolumesApiService) GetByID(ctx _context.Context, volumeId string, localVarOptionals *VolumesApiGetByIDOpts) (Volume, *_nethttp.Response, error)
GetByID Retrieve volume by ID Returns a single volume with matching imaged. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param volumeId ID of volume to return
- @param optional nil or *VolumesApiGetByIDOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Volume
func (*VolumesApiService) List ¶
func (a *VolumesApiService) List(ctx _context.Context, localVarOptionals *VolumesApiListOpts) ([]Volume, *_nethttp.Response, error)
List List all volumes in project Returns an array of all volumes defined within the project. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param optional nil or *VolumesApiListOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return []Volume
func (*VolumesApiService) Update ¶
func (a *VolumesApiService) Update(ctx _context.Context, volumeId string, updateVolume UpdateVolume, localVarOptionals *VolumesApiUpdateOpts) (Volume, *_nethttp.Response, error)
Update Update an existing volume Updates volume with matching ID. Update is permitted only when volume is in 'Allocated' or 'Visible' state. Only the Volume 'Capacity' can be updated with a value greater than the existing one to expand the volume. If GreenLake Platform IAM issued token is used for authentication, then it is required to pass 'X-Role' and 'X-Workspaceid' headers.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param volumeId ID of volume to return
- @param updateVolume Volume object with its ID and Capacity in GiB indicating the expanded size to be specified.
- @param optional nil or *VolumesApiUpdateOpts - Optional Parameters:
- @param "XRole" (optional.String) - GreenLake Platform role name
- @param "XWorkspaceid" (optional.String) - GreenLake Platform workspace ID
@return Volume
Source Files ¶
- api_allocation.go
- api_available_resources.go
- api_hosts.go
- api_ippools.go
- api_networks.go
- api_projects.go
- api_projects_info.go
- api_services.go
- api_sshkeys.go
- api_version.go
- api_volume_attachments.go
- api_volumes.go
- client.go
- configuration.go
- generic-error.go
- interface_allocation.go
- interface_available_resources.go
- interface_hosts.go
- interface_ippools.go
- interface_networks.go
- interface_projects.go
- interface_projects_info.go
- interface_services.go
- interface_sshkeys.go
- interface_version.go
- interface_volume_attachments.go
- interface_volumes.go
- model_add_volume.go
- model_algorithm.go
- model_allocation.go
- model_allocation_storage.go
- model_attribute_rule.go
- model_available_image.go
- model_available_network.go
- model_available_resources.go
- model_bond_mode.go
- model_boot_method.go
- model_classifier_operator.go
- model_country.go
- model_disk_partitions.go
- model_encoding.go
- model_error_response.go
- model_file_info.go
- model_flavor_desc.go
- model_health_status.go
- model_host.go
- model_host_alert_info.go
- model_host_all_of.go
- model_host_connection.go
- model_host_iscsi_config.go
- model_host_network_connection.go
- model_host_power_state.go
- model_host_server_port.go
- model_host_state.go
- model_host_substate.go
- model_ip_allocation.go
- model_ip_pool.go
- model_ip_pool_all_of.go
- model_ip_pool_stats.go
- model_ip_range.go
- model_ip_source.go
- model_ip_ver.go
- model_iscsi_parameters.go
- model_limits.go
- model_location_info.go
- model_machine_classifier.go
- model_machine_classifier_rule.go
- model_machine_inventory.go
- model_machine_size.go
- model_machine_size_info.go
- model_multi_part_file.go
- model_netmask.go
- model_network.go
- model_network_all_of.go
- model_network_host_use.go
- model_network_purpose.go
- model_new_host.go
- model_new_ip_pool.go
- model_new_network.go
- model_new_project.go
- model_new_ssh_key.go
- model_new_volume.go
- model_new_volume_attachment.go
- model_op_arg.go
- model_op_arg_type.go
- model_os_service_image.go
- model_os_service_image_all_of.go
- model_os_service_image_approach.go
- model_os_service_image_download_health.go
- model_os_service_image_download_health_details.go
- model_os_service_image_download_health_summary.go
- model_os_service_image_origin.go
- model_partition.go
- model_partition_formula.go
- model_partition_table.go
- model_partition_type.go
- model_passed_info.go
- model_pool.go
- model_profile.go
- model_project.go
- model_project_all_of.go
- model_project_info.go
- model_project_resources.go
- model_projects_info.go
- model_protocol_kind.go
- model_protocol_parameters.go
- model_resource_base.go
- model_service_server_info.go
- model_service_storage_info.go
- model_ssh_key.go
- model_ssh_key_all_of.go
- model_ssh_key_entry.go
- model_storage_inventory.go
- model_storage_pool.go
- model_summary_info.go
- model_target.go
- model_templating.go
- model_templating_info.go
- model_update_host.go
- model_update_host_all_of.go
- model_update_host_iscsi_config.go
- model_update_ip_pool.go
- model_update_ip_pool_all_of.go
- model_update_limits.go
- model_update_network.go
- model_update_network_all_of.go
- model_update_profile.go
- model_update_project.go
- model_update_project_all_of.go
- model_update_resource_base.go
- model_update_ssh_key.go
- model_update_volume.go
- model_update_volume_all_of.go
- model_use_record.go
- model_user_defined_steps.go
- model_user_op.go
- model_user_op_enum.go
- model_va_state_enum.go
- model_vafs_config.go
- model_version.go
- model_volume.go
- model_volume_all_of.go
- model_volume_attach_host_uuid.go
- model_volume_attachment.go
- model_volume_attachment_all_of.go
- model_volume_collection.go
- model_volume_flavor.go
- model_volume_flavors_info.go
- model_volume_info.go
- model_volume_state.go
- model_volume_status.go
- model_volume_sub_state.go
- response.go