workenv

package
v0.0.0-...-9dabdb3 Latest Latest
Warning

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

Go to latest
Published: Oct 23, 2017 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Overview

Package implements OCCM Working Environments API.

Package implements OCCM Working Environments API.

Package implements OCCM Working Environments API.

Package implements OCCM Working Environments API.

Package implements OCCM Working Environments API.

Package implements OCCM Working Environments API.

Index

Constants

View Source
const (
	ErrInvalidWorkenvId               = "Invalid working environment ID"
	ErrInvalidVolumeName              = "Invalid volume name"
	ErrInvalidVolumeCreationRequest   = "Invalid volume creation request"
	ErrInvalidVolumeQuoteRequest      = "Invalid volume quote request"
	ErrInvalidVolumeModifyRequest     = "Invalid volume modify request"
	ErrInvalidVolumeMoveRequest       = "Invalid volume move request"
	ErrInvalidVolumeCloneRequest      = "Invalid volume clone request"
	ErrInvalidVolumeTierChangeRequest = "Invalid volume tier change request"
)

Error messages

Variables

This section is empty.

Functions

This section is empty.

Types

type AggregateResponse

type AggregateResponse struct {
	Name              string           `json:"name"`
	AvailableCapacity *Capacity        `json:"availableCapacity"`
	TotalCapacity     *Capacity        `json:"totalCapacity"`
	Volumes           []Volume         `json:"volumes"`
	ProviderVolumes   []ProviderVolume `json:"providerVolumes"`
	Disks             []Disk           `json:"disks"`
	State             string           `json:"state"`
	EncryptionType    string           `json:"encryptionType"`
	EncryptionKeyId   string           `json:"encryptionKeyId"`
	HomeNode          string           `json:"homeNode"`
	OwnerNode         string           `json:"ownerNode"`
	CapacityTier      string           `json:"capacityTier"`
	Root              bool             `json:"root"`
}

Aggregate response wrapper object

func AggregateResponseListFromJSON

func AggregateResponseListFromJSON(data []byte) ([]AggregateResponse, error)

type AzureWorkingEnvironment

type AzureWorkingEnvironment struct {
	PublicId string `json:"publicId"`
	Name     string `json:"name"`
	TenantId string `json:"tenantId"`
	SvmName  string `json:"svmName"`
}

Azure Working Environment object TODO: not a complete list of properties

type CIFSShareInfo

type CIFSShareInfo struct {
	ShareName         string                     `json:"shareName,omitempty"`
	AccessControlList []CIFSShareUserPermissions `json:"accessControlList,omitempty"`
}

CIFS share info wrapper

type CIFSShareUserPermissions

type CIFSShareUserPermissions struct {
	Permission string   `json:"permission,omitempty"`
	Users      []string `json:"users,omitempty"`
}

CIFS user permission wrapper

type Capacity

type Capacity struct {
	Size float64 `json:"size,omitempty"`
	Unit string  `json:"unit,omitempty"`
}

Capacity wrapper object

type ChangeVolumeTierRequest

type ChangeVolumeTierRequest struct {
	AggregateName   string `json:"aggregateName,omitempty"`
	NumOfDisks      int    `json:"numOfDisks,omitempty"`
	NewAggregate    bool   `json:"newAggregate,omitempty"`
	NewDiskTypeName string `json:"newDiskTypeName,omitempty"`
	NewCapacityTier string `json:"newCapacityTier,omitempty"`
	IOPS            int    `json:"iops,omitempty"`
}

Volume tier change request wrapper

type CreateCIFSShareInfoRequest

type CreateCIFSShareInfoRequest struct {
	ShareName     string                   `json:"shareName,omitempty"`
	AccessControl CIFSShareUserPermissions `json:"accessControl,omitempty"`
}

Create CIFS share info request wrapper

type Disk

type Disk struct {
	Name      string `json:"name,omitempty"`
	Position  string `json:"position,omitempty"`
	OwnerNode string `json:"ownerNode,omitempty"`
	Device    string `json:"device,omitempty"`
}

Disk wrapper object

type ExportPolicyInfo

type ExportPolicyInfo struct {
	PolicyType string   `json:"policyType,omitempty"`
	IPs        []string `json:"ips"`
}

Export policy info wrapper

type NamedExportPolicyInfo

type NamedExportPolicyInfo struct {
	Named      string   `json:"name,omitempty"`
	PolicyType string   `json:"policyType,omitempty"`
	IPs        []string `json:"ips,omitempty"`
}

Named export policy info wrapper

type OnPremWorkingEnvironment

type OnPremWorkingEnvironment struct {
	PublicId string `json:"publicId"`
	Name     string `json:"name"`
	TenantId string `json:"tenantId"`
}

OnPrem Working Environment object TODO: not a complete list of properties

type ProviderVolume

type ProviderVolume struct {
	Id         string    `json:"id,omitempty"`
	Name       string    `json:"name,omitempty"`
	Size       *Capacity `json:"size,omitempty"`
	State      string    `json:"state,omitempty"`
	Device     string    `json:"device,omitempty"`
	InstanceId string    `json:"instanceId,omitempty"`
	DiskType   string    `json:"diskType,omitempty"`
	Encryped   bool      `json:"encrypted"`
}

Provider Volume wrapper object

type Volume

type Volume struct {
	Name            string    `json:"name,omitempty"`
	TotalSize       *Capacity `json:"totalSize,omitempty"`
	UsedSize        *Capacity `json:"usedSize,omitempty"`
	ThinProvisioned bool      `json:"thinProvisioned"`
	RootVolume      bool      `json:"rootVolume"`
}

Volume wrapper object

type VolumeCloneRequest

type VolumeCloneRequest struct {
	NewVolumeName  string `json:"newVolumeName,omitempty"`
	ParentSnapshot string `json:"parentSnapshot,omitempty"`
}

Volume clone request wrapper

type VolumeModifyRequest

type VolumeModifyRequest struct {
	SnapshotPolicyName string            `json:"snapshotPolicyName,omitempty"`
	ExportPolicyInfo   *ExportPolicyInfo `json:"exportPolicyInfo,omitempty"`
	ShareInfo          *CIFSShareInfo    `json:"shareInfo,omitempty"`
}

Volume modify request wrapper

type VolumeMoveRequest

type VolumeMoveRequest struct {
	TargetAggregateName   string `json:"targetAggregateName,omitempty"`
	NumOfDisksToAdd       int    `json:"numOfDisksToAdd,omitempty"`
	CreateTargetAggregate bool   `json:"createTargetAggregate,omitempty"`
	NewDiskTypeName       string `json:"newDiskTypeName,omitempty"`
}

Volume move request wrapper

type VolumeResponse

type VolumeResponse struct {
	Name                          string                 `json:"name,omitempty"`
	SvmName                       string                 `json:"svmName,omitempty"`
	AggregateName                 string                 `json:"aggregateName,omitempty"`
	Size                          *Capacity              `json:"size,omitempty"`
	UsedSize                      *Capacity              `json:"usedSize,omitempty"`
	JunctionPath                  string                 `json:"junctionPath,omitempty"`
	MountPoint                    string                 `json:"mountPoint,omitempty"`
	CompressionSpaceSaved         *Capacity              `json:"compressionSpaceSaved,omitempty"`
	DeduplicationSpaceSaved       *Capacity              `json:"deduplicationSpaceSaved,omitempty"`
	ThinProvisioning              bool                   `json:"thinProvisioning"`
	Compression                   bool                   `json:"compression"`
	Deduplication                 bool                   `json:"deduplication"`
	SnapshotPolicy                string                 `json:"snapshotPolicy,omitempty"`
	SecurityStyle                 string                 `json:"securityStyle,omitempty"`
	ExportPolicyInfo              *NamedExportPolicyInfo `json:"exportPolicyInfo,omitempty"`
	ShareNames                    []string               `json:"shareNames,omitempty"`
	ShareInfo                     []CIFSShareInfo        `json:"shareInfo,omitempty"`
	ParentVolumeName              string                 `json:"parentVolumeName,omitempty"`
	RootVolume                    bool                   `json:"rootVolume"`
	State                         string                 `json:"state,omitempty"`
	VolumeType                    string                 `json:"volumeType,omitempty"`
	ParentSnapshot                string                 `json:"parentSnapshot,omitempty"`
	AutoSizeMode                  string                 `json:"autoSizeMode,omitempty"`
	MaxGrowSize                   *Capacity              `json:"maxGrowSize,omitempty"`
	ProviderVolumeType            string                 `json:"providerVolumeType,omitempty"`
	CloneNames                    []string               `json:"cloneNames,omitempty"`
	Moving                        bool                   `json:"moving"`
	PrimaryNoFailoverMountPoint   string                 `json:"primaryNoFailoverMountPoint,omitempty"`
	SecondaryNoFailoverMountPoint string                 `json:"secondaryNoFailoverMountPoint,omitempty"`
	CapacityTier                  string                 `json:"capacityTier,omitempty"`
}

Volume response wrapper

func VolumeResponseListFromJSON

func VolumeResponseListFromJSON(data []byte) ([]VolumeResponse, error)

type VsaWorkingEnvironment

type VsaWorkingEnvironment struct {
	PublicId string `json:"publicId"`
	Name     string `json:"name"`
	TenantId string `json:"tenantId"`
	SvmName  string `json:"svmName"`
	IsHA     bool   `json:"isHA"`
}

VSA Working Environment object TODO: not a complete list of properties

type WorkingEnvironmentAPI

type WorkingEnvironmentAPI struct {
	*client.Client
}

Working environment API

func New

func New(context *client.Context) (*WorkingEnvironmentAPI, error)

New creates a new OCCM Working Environment API client

func (*WorkingEnvironmentAPI) GetWorkingEnvironments

func (api *WorkingEnvironmentAPI) GetWorkingEnvironments() (*WorkingEnvironments, error)

GetWorkingEnvironments retrieves a list of all working environments

type WorkingEnvironmentAPIProto

type WorkingEnvironmentAPIProto interface {
	GetWorkingEnvironments() (*WorkingEnvironments, error)
}

type WorkingEnvironments

type WorkingEnvironments struct {
	VSA    []VsaWorkingEnvironment    `json:"vsaWorkingEnvironments"`
	OnPrem []OnPremWorkingEnvironment `json:"onPremWorkingEnvironments"`
	Azure  []AzureWorkingEnvironment  `json:"azureWorkingEnvironments"`
}

Working Environments wrapper object TODO: not a complete list of properties

func ListFromJSON

func ListFromJSON(data []byte) (*WorkingEnvironments, error)

Directories

Path Synopsis
Package implements OCCM Working Environments API (AWS-HA).
Package implements OCCM Working Environments API (AWS-HA).
Package implements OCCM Working Environments API (VSA).
Package implements OCCM Working Environments API (VSA).

Jump to

Keyboard shortcuts

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