grid

package
v1.4.6 Latest Latest
Warning

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

Go to latest
Published: Jun 23, 2023 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Operator actions for handling interventions on a grid

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddRequest

type AddRequest struct {
	// Grid (platform) ID
	// Required: true
	GID uint64 `url:"gid" json:"gid" validate:"required"`

	// Name of the location
	// Required: true
	Name string `url:"name" json:"name" validate:"required"`

	// Location code typicly used in dns names
	// Required: true
	LocationCode string `url:"locationcode" json:"locationcode" validate:"required"`
}

Request struct for location code

type ChangeSettingsRequest

type ChangeSettingsRequest struct {
	// Grid (platform) ID
	// Required: true
	GID uint64 `url:"id" json:"id" validate:"required"`

	// Json data of the new settings will override old data
	// Required: true
	Settings string `url:"settings" json:"settings" validate:"required"`
}

Request struct for change grid settings

type CheckVMsRequest

type CheckVMsRequest struct {
	// Grid (platform) ID
	// Required: true
	GID uint64 `url:"gid" json:"gid" validate:"required"`
}

Request struct for check virtual machine

type CreateSystemSpaceRequest

type CreateSystemSpaceRequest struct {
	// Grid (platform) ID
	// Required: true
	GID uint64 `url:"id" json:"id" validate:"required"`

	// Name of the account/cloudspace to be created for the system
	// Required: true
	Name string `url:"name" json:"name" validate:"required"`

	// ID of the specific image
	// Required: true
	ImageID uint64 `url:"imageId" json:"imageId" validate:"required"`

	// Size of base volume
	// Required: true
	BootSize uint64 `url:"bootsize" json:"bootsize" validate:"required"`

	// Data disk size in gigabytes
	// Required: true
	DataDiskSize uint64 `url:"dataDiskSize" json:"dataDiskSize" validate:"required"`

	// ID of the specific size
	// Required: false
	SizeID uint64 `url:"sizeId,omitempty" json:"sizeId,omitempty"`

	// Number of vcpus to provide
	// Required: false
	VCPUS uint64 `url:"vcpus,omitempty" json:"vcpus,omitempty"`

	// Amount of memory to provide
	// Required: false
	Memory uint64 `url:"memory,omitempty" json:"memory,omitempty"`
}

Request struct for create system space

type DiskUsage

type DiskUsage struct {
	// Disk size
	DiskSize float64 `json:"disksize"`

	// Disk size max
	DiskSizeMax float64 `json:"disksizemax"`
}

Disk usage

type ExecuteMaintenanceScriptRequest

type ExecuteMaintenanceScriptRequest struct {
	// Grid (platform) ID
	// Required: true
	GID string `url:"gid" json:"gid" validate:"required"`

	// Type of nodes you want to apply the action on
	// Required: true
	NodesType string `url:"nodestype" json:"nodestype" validate:"required"`

	// The script you want to run
	// Required: true
	Script string `url:"script" json:"script" validate:"required"`
}

Request struct for execute script

type GetBackupRequest

type GetBackupRequest struct {
	// Grid (platform) ID
	// Required: true
	GID uint64 `url:"gid" json:"gid" validate:"required"`
}

Request struct for get backup

type GetDiagnosisRequest

type GetDiagnosisRequest struct {
	// Grid (platform) ID
	// Required: true
	GID uint64 `url:"gid" json:"gid" validate:"required"`
}

Request struct for get platform snapshot with additional diagnosis

type GetRequest

type GetRequest struct {
	// Grid (platform) ID
	// Required: true
	GID uint64 `url:"gridId" json:"gridId" validate:"required"`
}

Request struct for get grid details

type Grid

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

Structure for creating request to grid

func New

func New(client interfaces.Caller) *Grid

Builder for grid endpoints

func (Grid) Add

func (g Grid) Add(ctx context.Context, req AddRequest) (bool, error)

Add location code (e.g. DNS name of this grid)

func (Grid) ChangeSettings

func (g Grid) ChangeSettings(ctx context.Context, req ChangeSettingsRequest) (bool, error)

ChangeSettings changes grid settings

func (Grid) CheckVMs

func (g Grid) CheckVMs(ctx context.Context, req CheckVMsRequest) (bool, error)

CheckVMs run checkvms jumpscript

func (Grid) CreateSystemSpace

func (g Grid) CreateSystemSpace(ctx context.Context, req CreateSystemSpaceRequest) (string, error)

CreateSystemSpace creates system space

func (Grid) ExecuteMaintenanceScript

func (g Grid) ExecuteMaintenanceScript(ctx context.Context, req ExecuteMaintenanceScriptRequest) (bool, error)

ExecuteMaintenanceScript executes maintenance script

func (Grid) Get

func (g Grid) Get(ctx context.Context, req GetRequest) (*RecordGrid, error)

Get gets information about grid by ID

func (Grid) GetBackup

func (g Grid) GetBackup(ctx context.Context, req GetBackupRequest) (string, error)

GetBackup gets platform backup

func (Grid) GetBackupGET

func (g Grid) GetBackupGET(ctx context.Context, req GetBackupRequest) (string, error)

GetBackupGET gets platform backup

func (Grid) GetDiagnosis

func (g Grid) GetDiagnosis(ctx context.Context, req GetDiagnosisRequest) (string, error)

GetDiagnosis get platform snapshot with additional diagnosis info like a logs, etc

func (Grid) GetDiagnosisGET

func (g Grid) GetDiagnosisGET(ctx context.Context, req GetDiagnosisRequest) (string, error)

GetDiagnosisGET get platform snapshot with additional diagnosis info like a logs, etc

func (Grid) List

func (g Grid) List(ctx context.Context, req ListRequest) (ListGrids, error)

List gets list all locations

func (Grid) ListEmails

func (g Grid) ListEmails(ctx context.Context) ([]string, error)

ListEmails returns list of email addresses of users

func (Grid) PurgeLogs

func (g Grid) PurgeLogs(ctx context.Context, req PurgeLogsRequest) (bool, error)

PurgeLogs clear Log and ECO records that are older than the specified age. By default, records older than one week are removed

func (Grid) Rename

func (g Grid) Rename(ctx context.Context, req RenameRequest) (bool, error)

Rename renames a grid

func (Grid) ServicesRestart

func (g Grid) ServicesRestart(ctx context.Context, req ServicesRestartRequest) (bool, error)

ServicesRestart restarts decort services on the node

func (Grid) SetCPUAllocationParameter added in v1.4.0

func (g Grid) SetCPUAllocationParameter(ctx context.Context, req SetCPUAllocationParameterRequest) (bool, error)

SetCPUAllocationParameter sets CPU allocation parameter

func (Grid) SetCPUAllocationRatio

func (g Grid) SetCPUAllocationRatio(ctx context.Context, req SetCPUAllocationRatioRequest) (bool, error)

SetCPUAllocationRatio sets CPU allocation ratio

func (Grid) SetCPUAllocationRatioForVM added in v1.4.0

func (g Grid) SetCPUAllocationRatioForVM(ctx context.Context, req SetCPUAllocationRatioForVMRequest) (bool, error)

SetCPUAllocationRatio sets CPU allocation ratio for computes

func (Grid) SetMemAllocationRatio

func (g Grid) SetMemAllocationRatio(ctx context.Context, req SetMemAllocationRatioRequest) (bool, error)

SetMemAllocationRatio sets memory allocation ratio

func (Grid) Status

func (g Grid) Status(ctx context.Context) (bool, error)

Status check if current environment is active

func (Grid) StatusGET

func (g Grid) StatusGET(ctx context.Context) (bool, error)

StatusGET check if current environment is active

type ListGrids

type ListGrids []RecordGrid

List Grids

func (ListGrids) FilterByID

func (lg ListGrids) FilterByID(id uint64) ListGrids

FilterByID returns ListGrids with specified ID.

func (ListGrids) FilterByLocationCode

func (lg ListGrids) FilterByLocationCode(locationCode string) ListGrids

FilterByLocationCode returns ListGrids with specified LocationCode.

func (ListGrids) FilterByName

func (lg ListGrids) FilterByName(name string) ListGrids

FilterByName returns ListGrids with specified Name.

func (ListGrids) FilterFunc

func (lg ListGrids) FilterFunc(predicate func(RecordGrid) bool) ListGrids

FilterFunc allows filtering ListGrids based on a user-specified predicate.

func (ListGrids) FindOne

func (lg ListGrids) FindOne() RecordGrid

FindOne returns first found RecordGrid. If none was found, returns an empty struct.

func (ListGrids) Serialize

func (lg ListGrids) Serialize(params ...string) (serialization.Serialized, error)

Serialize returns JSON-serialized []byte. Used as a wrapper over json.Marshal and json.MarshalIndent functions.

In order to serialize with indent make sure to follow these guidelines:

  • First argument -> prefix
  • Second argument -> indent

type ListRequest

type ListRequest struct {
	// Page number
	// Required: false
	Page uint64 `url:"page,omitempty" json:"page,omitempty"`

	// Page size
	// Required: false
	Size uint64 `url:"size,omitempty" json:"size,omitempty"`
}

Request struct for get list locations

type PurgeLogsRequest

type PurgeLogsRequest struct {
	// Grid (platform) ID
	// Required: true
	GID uint64 `url:"gid" json:"gid" validate:"required"`

	// Age of the records to remove, e.g. -1h for records older than 1 hour, -1w - one week, etc
	// Required: true
	Age string `url:"age" json:"age" validate:"required"`
}

Request struct for purge logs

type RecordGrid

type RecordGrid struct {
	// Resource information
	Resources Resources `json:"Resources"`

	// Flag
	Flag string `json:"flag"`

	// Grid ID
	GID uint64 `json:"gid"`

	// GUID
	GUID uint64 `json:"guid"`

	// ID
	ID uint64 `json:"id"`

	// Location code
	LocationCode string `json:"locationCode"`

	// Name
	Name string `json:"name"`
}

Detailed information about grid

func (RecordGrid) Serialize

func (rg RecordGrid) Serialize(params ...string) (serialization.Serialized, error)

Serialize returns JSON-serialized []byte. Used as a wrapper over json.Marshal and json.MarshalIndent functions.

In order to serialize with indent make sure to follow these guidelines:

  • First argument -> prefix
  • Second argument -> indent

type RecordResource

type RecordResource struct {
	// Number of CPU
	CPU uint64 `json:"cpu"`

	// Disk size
	DiskSize float64 `json:"disksize"`

	// Disk size max
	DiskSizeMax int64 `json:"disksizemax"`

	// External IPs
	ExtIPs uint64 `json:"extips"`

	// External traffic
	ExtTraffic uint64 `json:"exttraffic"`

	// Number of GPU
	GPU uint64 `json:"gpu"`

	// Number of RAM
	RAM uint64 `json:"ram"`

	// SEPs
	SEPs map[string]map[string]DiskUsage `json:"seps"`
}

Resource details

type RenameRequest

type RenameRequest struct {
	// Grid (platform) ID
	// Required: true
	GID uint64 `url:"gid" json:"gid" validate:"required"`

	// New name
	// Required: true
	Name string `url:"Name" json:"Name" validate:"required"`
}

Request struct for rename grid

type Resources

type Resources struct {
	// Current resources
	Current RecordResource `json:"Current"`

	// Reserved resources
	Reserved RecordResource `json:"Reserved"`
}

Resource information

type ServicesRestartRequest

type ServicesRestartRequest struct {
	// Grid (platform) ID
	// Required: true
	GID uint64 `url:"gid" json:"gid" validate:"required"`

	// Node ID
	// Required: true
	NID uint64 `url:"nid" json:"nid" validate:"required"`
}

Request struct for restart services

type SetCPUAllocationParameterRequest added in v1.4.0

type SetCPUAllocationParameterRequest struct {
	// Grid ID
	// Required: true
	GridID uint64 `url:"gridId" json:"gridId" validate:"required"`

	// CPU allocation parameter.
	// If "strict" VM can't be run if not enough CPU resources.
	// "loose" allow running VM if not enough resources.
	// Required: true
	StrictLoose string `url:"strict_loose" json:"strict_loose" validate:"required,strict_loose"`
}

Request for setting CPU allocation parameter

type SetCPUAllocationRatioForVMRequest added in v1.4.0

type SetCPUAllocationRatioForVMRequest struct {
	// Grid ID
	// Required: true
	GridID uint64 `url:"gridId" json:"gridId" validate:"required"`

	// Default CPU allocation ratio for computes
	// Required: true
	Ratio float64 `url:"ratio" json:"ratio" validate:"required"`
}

Request for setting CPU allocation ratio for computes

type SetCPUAllocationRatioRequest

type SetCPUAllocationRatioRequest struct {
	// Grid (platform) ID
	// Required: true
	GID uint64 `url:"gridId" json:"gridId" validate:"required"`

	// Allocation ratio
	// Required: true
	Ratio float64 `url:"ratio" json:"ratio" validate:"required"`
}

Request struct for set allocation

type SetMemAllocationRatioRequest

type SetMemAllocationRatioRequest struct {
	// Grid (platform) ID
	// Required: true
	GID uint64 `url:"gridId" json:"gridId" validate:"required"`

	// Allocation ratio
	// Required: true
	Ratio float64 `url:"ratio" json:"ratio" validate:"required"`
}

Request struct for set memory allocation

Jump to

Keyboard shortcuts

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