vaults

package
v0.0.0-...-d823fe1 Latest Latest
Warning

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

Go to latest
Published: Aug 31, 2021 License: Apache-2.0 Imports: 4 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ExtractVaults

func ExtractVaults(r pagination.Page) (*[]Vault, error)

func List

List is a method to obtain the specified CBR vaults according to the vault ID, vault name and so on. This method can also obtain all the CBR vaults through the default parameter settings.

Types

type AssociateResourcesOpts

type AssociateResourcesOpts struct {
	Resources []ResourceCreate `json:"resources" required:"true"`
}

func (AssociateResourcesOpts) ToAssociateResourcesMap

func (opts AssociateResourcesOpts) ToAssociateResourcesMap() (map[string]interface{}, error)

type AssociateResourcesOptsBuilder

type AssociateResourcesOptsBuilder interface {
	ToAssociateResourcesMap() (map[string]interface{}, error)
}

type AssociateResourcesResult

type AssociateResourcesResult struct {
	golangsdk.Result
}

func (AssociateResourcesResult) Extract

func (r AssociateResourcesResult) Extract() ([]string, error)

type Billing

type Billing struct {
	Allocated       int    `json:"allocated"`
	ChargingMode    string `json:"charging_mode"`
	CloudType       string `json:"cloud_type"`
	ConsistentLevel string `json:"consistent_level"`
	ObjectType      string `json:"object_type"`
	OrderID         string `json:"order_id"`
	ProductID       string `json:"product_id"`
	ProtectType     string `json:"protect_type"`
	Size            int    `json:"size"`
	SpecCode        string `json:"spec_code"`
	Status          string `json:"status"`
	StorageUnit     string `json:"storage_unit"`
	Used            int    `json:"used"`
	FrozenScene     string `json:"frozen_scene"`
}

type BillingCreate

type BillingCreate struct {
	ConsistentLevel string                  `json:"consistent_level" required:"true"`
	ObjectType      string                  `json:"object_type" required:"true"`
	ProtectType     string                  `json:"protect_type" required:"true"`
	Size            int                     `json:"size" required:"true"`
	ChargingMode    string                  `json:"charging_mode,omitempty"`
	CloudType       string                  `json:"cloud_type,omitempty"`
	ConsoleURL      string                  `json:"console_url,omitempty"`
	ExtraInfo       *BillingCreateExtraInfo `json:"extra_info,omitempty"`
	PeriodNum       int                     `json:"period_num,omitempty"`
	PeriodType      string                  `json:"period_type,omitempty"`
	IsAutoRenew     bool                    `json:"is_auto_renew,omitempty"`
	IsAutoPay       bool                    `json:"is_auto_pay,omitempty"`
}

type BillingCreateExtraInfo

type BillingCreateExtraInfo struct {
	CombinedOrderECSNum int    `json:"combined_order_ecs_num,omitempty"`
	CombinedOrderID     string `json:"combined_order_id,omitempty"`
}

type BillingUpdate

type BillingUpdate struct {
	Size int `json:"size,omitempty"`
}

type BindPolicyOpts

type BindPolicyOpts struct {
	PolicyID string `json:"policy_id" required:"true"`
}

func (BindPolicyOpts) ToBindPolicyMap

func (opts BindPolicyOpts) ToBindPolicyMap() (map[string]interface{}, error)

type BindPolicyOptsBuilder

type BindPolicyOptsBuilder interface {
	ToBindPolicyMap() (map[string]interface{}, error)
}

type BindPolicyResult

type BindPolicyResult struct {
	golangsdk.Result
}

func BindPolicy

func BindPolicy(client *golangsdk.ServiceClient, vaultID string, opts BindPolicyOptsBuilder) (r BindPolicyResult)

func (BindPolicyResult) Extract

func (r BindPolicyResult) Extract() (*PolicyBinding, error)

type CreateOpts

type CreateOpts struct {
	Billing             *BillingCreate     `json:"billing" required:"true"`
	Name                string             `json:"name" required:"true"`
	Resources           []ResourceCreate   `json:"resources" required:"true"`
	AutoBind            bool               `json:"auto_bind,omitempty"`
	AutoExpand          bool               `json:"auto_expand,omitempty"`
	BackupPolicyID      string             `json:"backup_policy_id,omitempty"`
	BindRules           *VaultBindRules    `json:"bind_rules,omitempty"`
	Description         string             `json:"description,omitempty"`
	EnterpriseProjectID string             `json:"enterprise_project_id,omitempty"`
	Tags                []tags.ResourceTag `json:"tags,omitempty"`
}

func (CreateOpts) ToVaultCreateMap

func (opts CreateOpts) ToVaultCreateMap() (map[string]interface{}, error)

type CreateOptsBuilder

type CreateOptsBuilder interface {
	ToVaultCreateMap() (map[string]interface{}, error)
}

type CreateResult

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

func Create

func Create(client *golangsdk.ServiceClient, opts CreateOptsBuilder) (r CreateResult)

func (CreateResult) Extract

func (r CreateResult) Extract() (*Vault, error)

type DeleteResult

type DeleteResult struct {
	golangsdk.ErrResult
}

func Delete

func Delete(client *golangsdk.ServiceClient, id string) (r DeleteResult)

type DissociateResourcesOpts

type DissociateResourcesOpts struct {
	ResourceIDs []string `json:"resource_ids" required:"true"`
}

func (DissociateResourcesOpts) ToDissociateResourcesMap

func (opts DissociateResourcesOpts) ToDissociateResourcesMap() (map[string]interface{}, error)

type DissociateResourcesOptsBuilder

type DissociateResourcesOptsBuilder interface {
	ToDissociateResourcesMap() (map[string]interface{}, error)
}

type DissociateResourcesResult

type DissociateResourcesResult struct {
	golangsdk.Result
}

func (DissociateResourcesResult) Extract

func (r DissociateResourcesResult) Extract() ([]string, error)

type GetResult

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

func Get

func Get(client *golangsdk.ServiceClient, id string) (r GetResult)

func (GetResult) Extract

func (r GetResult) Extract() (*Vault, error)

type ListOpts

type ListOpts struct {
	CloudType           string `q:"cloud_type"`
	EnterpriseProjectID string `q:"enterprise_project_id"`
	ID                  string `q:"id"`
	Limit               string `q:"limit"`
	Name                string `q:"name"`
	ObjectType          string `q:"object_type"`
	Offset              string `q:"offset"`
	PolicyID            string `q:"policy_id"`
	ProtectType         string `q:"protect_type"`
	ResourceIDs         string `q:"resource_ids"`
	Status              string `q:"status"`
}

func (ListOpts) ToPolicyListQuery

func (opts ListOpts) ToPolicyListQuery() (string, error)

type ListOptsBuilder

type ListOptsBuilder interface {
	ToPolicyListQuery() (string, error)
}

type PolicyBinding

type PolicyBinding struct {
	VaultID  string `json:"vault_id"`
	PolicyID string `json:"policy_id"`
}

type ResourceCreate

type ResourceCreate struct {
	ID        string             `json:"id" required:"true"`
	Type      string             `json:"type" required:"true"`
	Name      string             `json:"name,omitempty"`
	ExtraInfo *ResourceExtraInfo `json:"extra_info,omitempty"`
}

type ResourceExtraInfo

type ResourceExtraInfo struct {
	ExcludeVolumes []string                          `json:"exclude_volumes,omitempty"`
	IncludeVolumes []ResourceExtraInfoIncludeVolumes `json:"include_volumes,omitempty"`
}

type ResourceExtraInfoIncludeVolumes

type ResourceExtraInfoIncludeVolumes struct {
	ID        string `json:"id" required:"true"`
	OSVersion string `json:"os_version,omitempty"`
}

type ResourceResp

type ResourceResp struct {
	ExtraInfo     ResourceExtraInfo `json:"extra_info"`
	ID            string            `json:"id"`
	Name          string            `json:"name"`
	ProtectStatus string            `json:"protect_status"`
	Size          int               `json:"size"`
	Type          string            `json:"type"`
	BackupSize    int               `json:"backup_size"`
	BackupCount   int               `json:"backup_count"`
}

type UnbindPolicyResult

type UnbindPolicyResult struct {
	golangsdk.Result
}

func UnbindPolicy

func UnbindPolicy(client *golangsdk.ServiceClient, vaultID string, opts BindPolicyOptsBuilder) (r UnbindPolicyResult)

func (UnbindPolicyResult) Extract

func (r UnbindPolicyResult) Extract() (*PolicyBinding, error)

type UpdateOpts

type UpdateOpts struct {
	Billing    *BillingUpdate  `json:"billing,omitempty"`
	Name       string          `json:"name,omitempty"`
	AutoBind   *bool           `json:"auto_bind,omitempty"`
	BindRules  *VaultBindRules `json:"bind_rules,omitempty"`
	AutoExpand *bool           `json:"auto_expand,omitempty"`
}

func (UpdateOpts) ToVaultUpdateMap

func (opts UpdateOpts) ToVaultUpdateMap() (map[string]interface{}, error)

type UpdateOptsBuilder

type UpdateOptsBuilder interface {
	ToVaultUpdateMap() (map[string]interface{}, error)
}

type UpdateResult

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

func Update

func Update(client *golangsdk.ServiceClient, id string, opts UpdateOptsBuilder) (r UpdateResult)

func (UpdateResult) Extract

func (r UpdateResult) Extract() (*Vault, error)

type Vault

type Vault struct {
	ID                  string             `json:"id"`
	Name                string             `json:"name"`
	Billing             Billing            `json:"billing"`
	Description         string             `json:"description"`
	ProjectID           string             `json:"project_id"`
	ProviderID          string             `json:"provider_id"`
	Resources           []ResourceResp     `json:"resources"`
	Tags                []tags.ResourceTag `json:"tags"`
	EnterpriseProjectID string             `json:"enterprise_project_id"`
	AutoBind            bool               `json:"auto_bind"`
	BindRules           VaultBindRules     `json:"bind_rules"`
	UserID              string             `json:"user_id"`
	CreatedAt           string             `json:"created_at"`
	AutoExpand          bool               `json:"auto_expand"`
}

type VaultBindRules

type VaultBindRules struct {
	Tags []tags.ResourceTag `json:"tags,omitempty"`
}

type VaultPage

type VaultPage struct {
	pagination.SinglePageBase
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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