genesiscloud

package module
v1.0.0-rc.1 Latest Latest
Warning

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

Go to latest
Published: Jul 11, 2023 License: MPL-2.0 Imports: 11 Imported by: 0

README

Genesis Cloud Go Client

The Genesis Cloud Go client provides the ability to manage each services resources programmatically from scripts or applications.

This repository is licensed under Mozilla Public License 2.0 (no copyleft exception) (see LICENSE.txt).

Maintainers

This client is maintained by Genesis Cloud. If you encounter any problems, feel free to create issues or pull requests.

Requirements

  • Go >= 1.19

Installation

go get github.com/genesiscloud/genesiscloud-go

Getting Started

import "github.com/genesiscloud/genesiscloud-go"

// Generic pointer in Go 1.18+. Alternatively use "k8s.io/utils/pointer"
func pointer[T any](v T) *T {
	return &v
}

client, err := genesiscloud.NewGenesisCloudClient(genesiscloud.ClientConfig{
	Token: os.Getenv("GENESISCLOUD_TOKEN"),
})
if err != nil {
	// ...
}

resp, err := client.ListInstancesWithResponse(ctx, &genesiscloud.ListInstancesParams{
	Page:    pointer(1),
	PerPage: pointer(100),
})
if err != nil {
	// ...
}

Examples

You can find additional examples in the GoDoc or check the examples folder.

GENESISCLOUD_TOKEN="XXXX" go run ./examples/list-instances

Development or update of OpenAPI document

# Update openapi.yaml (./codegen/openapi.yaml)

# Generate code
go generate ./...

Documentation

Overview

Package genesiscloud provides primitives to interact with the openapi HTTP API.

Code generated by github.com/deepmap/oapi-codegen version v1.13.0 DO NOT EDIT.

Package genesiscloud provides primitives to interact with the openapi HTTP API.

Code generated by github.com/deepmap/oapi-codegen version v1.13.0 DO NOT EDIT.

Index

Constants

View Source
const DefaultEndpoint = "https://api.genesiscloud.com"
View Source
const (
	GenesiscloudScopes = "genesiscloud.Scopes"
)

Variables

View Source
var AllComputeV1InstanceTypes = []ComputeV1InstanceType{
	ComputeV1InstanceTypeVcpu12Memory24gDisk80g,
	ComputeV1InstanceTypeVcpu12Memory36gDisk80gNvidia1080ti3,
	ComputeV1InstanceTypeVcpu12Memory36gDisk80gNvidia3060ti3,
	ComputeV1InstanceTypeVcpu12Memory36gDisk80gNvidia30803,
	ComputeV1InstanceTypeVcpu12Memory72gDisk80gNvidia30903,
	ComputeV1InstanceTypeVcpu16Memory32gDisk80g,
	ComputeV1InstanceTypeVcpu16Memory48gDisk80gNvidia1080ti4,
	ComputeV1InstanceTypeVcpu16Memory48gDisk80gNvidia3060ti4,
	ComputeV1InstanceTypeVcpu16Memory48gDisk80gNvidia30804,
	ComputeV1InstanceTypeVcpu16Memory64gDisk80gNvidia30802,
	ComputeV1InstanceTypeVcpu16Memory96gDisk80gNvidia30902,
	ComputeV1InstanceTypeVcpu16Memory96gDisk80gNvidia30904,
	ComputeV1InstanceTypeVcpu20Memory120gDisk80gNvidia30905,
	ComputeV1InstanceTypeVcpu20Memory40gDisk80g,
	ComputeV1InstanceTypeVcpu20Memory60gDisk80gNvidia1080ti5,
	ComputeV1InstanceTypeVcpu20Memory60gDisk80gNvidia3060ti5,
	ComputeV1InstanceTypeVcpu20Memory60gDisk80gNvidia30805,
	ComputeV1InstanceTypeVcpu24Memory144gDisk80gNvidia30903,
	ComputeV1InstanceTypeVcpu24Memory144gDisk80gNvidia30906,
	ComputeV1InstanceTypeVcpu24Memory48gDisk80g,
	ComputeV1InstanceTypeVcpu24Memory72gDisk80gNvidia1080ti6,
	ComputeV1InstanceTypeVcpu24Memory72gDisk80gNvidia3060ti6,
	ComputeV1InstanceTypeVcpu24Memory72gDisk80gNvidia30806,
	ComputeV1InstanceTypeVcpu24Memory96gDisk80gNvidia30803,
	ComputeV1InstanceTypeVcpu28Memory168gDisk80gNvidia30907,
	ComputeV1InstanceTypeVcpu28Memory84gDisk80gNvidia1080ti7,
	ComputeV1InstanceTypeVcpu28Memory84gDisk80gNvidia3060ti7,
	ComputeV1InstanceTypeVcpu28Memory84gDisk80gNvidia30807,
	ComputeV1InstanceTypeVcpu2Memory4gDisk80g,
	ComputeV1InstanceTypeVcpu2Memory8gDisk80gAmdrx4704,
	ComputeV1InstanceTypeVcpu2Memory8gDisk80gAmdrx4705,
	ComputeV1InstanceTypeVcpu2Memory8gDisk80gAmdrx4706,
	ComputeV1InstanceTypeVcpu2Memory8gDisk80gAmdrx4707,
	ComputeV1InstanceTypeVcpu2Memory8gDisk80gAmdrx4708,
	ComputeV1InstanceTypeVcpu32Memory128gDisk80gNvidia30804,
	ComputeV1InstanceTypeVcpu32Memory192gDisk80gNvidia30904,
	ComputeV1InstanceTypeVcpu32Memory192gDisk80gNvidia30908,
	ComputeV1InstanceTypeVcpu32Memory96gDisk80gNvidia1080ti8,
	ComputeV1InstanceTypeVcpu32Memory96gDisk80gNvidia3060ti8,
	ComputeV1InstanceTypeVcpu32Memory96gDisk80gNvidia30808,
	ComputeV1InstanceTypeVcpu4Memory12gDisk80gNvidia1080ti1,
	ComputeV1InstanceTypeVcpu4Memory12gDisk80gNvidia3060ti1,
	ComputeV1InstanceTypeVcpu4Memory12gDisk80gNvidia30801,
	ComputeV1InstanceTypeVcpu4Memory24gDisk80gNvidia30901,
	ComputeV1InstanceTypeVcpu4Memory8gDisk80g,
	ComputeV1InstanceTypeVcpu8Memory16gDisk80g,
	ComputeV1InstanceTypeVcpu8Memory24gDisk80gNvidia1080ti2,
	ComputeV1InstanceTypeVcpu8Memory24gDisk80gNvidia3060ti2,
	ComputeV1InstanceTypeVcpu8Memory24gDisk80gNvidia30802,
	ComputeV1InstanceTypeVcpu8Memory32gDisk80gNvidia30801,
	ComputeV1InstanceTypeVcpu8Memory48gDisk80gNvidia30901,
	ComputeV1InstanceTypeVcpu8Memory48gDisk80gNvidia30902,
}

Functions

func NewCreateInstanceRequest

func NewCreateInstanceRequest(server string, body CreateInstanceJSONRequestBody) (*http.Request, error)

NewCreateInstanceRequest calls the generic CreateInstance builder with application/json body

func NewCreateInstanceRequestWithBody

func NewCreateInstanceRequestWithBody(server string, contentType string, body io.Reader) (*http.Request, error)

NewCreateInstanceRequestWithBody generates requests for CreateInstance with any type of body

func NewCreateSSHKeyRequest

func NewCreateSSHKeyRequest(server string, body CreateSSHKeyJSONRequestBody) (*http.Request, error)

NewCreateSSHKeyRequest calls the generic CreateSSHKey builder with application/json body

func NewCreateSSHKeyRequestWithBody

func NewCreateSSHKeyRequestWithBody(server string, contentType string, body io.Reader) (*http.Request, error)

NewCreateSSHKeyRequestWithBody generates requests for CreateSSHKey with any type of body

func NewCreateSecurityGroupRequest

func NewCreateSecurityGroupRequest(server string, body CreateSecurityGroupJSONRequestBody) (*http.Request, error)

NewCreateSecurityGroupRequest calls the generic CreateSecurityGroup builder with application/json body

func NewCreateSecurityGroupRequestWithBody

func NewCreateSecurityGroupRequestWithBody(server string, contentType string, body io.Reader) (*http.Request, error)

NewCreateSecurityGroupRequestWithBody generates requests for CreateSecurityGroup with any type of body

func NewCreateSnapshotRequest

func NewCreateSnapshotRequest(server string, instanceId string, body CreateSnapshotJSONRequestBody) (*http.Request, error)

NewCreateSnapshotRequest calls the generic CreateSnapshot builder with application/json body

func NewCreateSnapshotRequestWithBody

func NewCreateSnapshotRequestWithBody(server string, instanceId string, contentType string, body io.Reader) (*http.Request, error)

NewCreateSnapshotRequestWithBody generates requests for CreateSnapshot with any type of body

func NewCreateVolumeRequest

func NewCreateVolumeRequest(server string, body CreateVolumeJSONRequestBody) (*http.Request, error)

NewCreateVolumeRequest calls the generic CreateVolume builder with application/json body

func NewCreateVolumeRequestWithBody

func NewCreateVolumeRequestWithBody(server string, contentType string, body io.Reader) (*http.Request, error)

NewCreateVolumeRequestWithBody generates requests for CreateVolume with any type of body

func NewDeleteInstanceRequest

func NewDeleteInstanceRequest(server string, instanceId string) (*http.Request, error)

NewDeleteInstanceRequest generates requests for DeleteInstance

func NewDeleteSSHKeyRequest

func NewDeleteSSHKeyRequest(server string, sshKeyId string) (*http.Request, error)

NewDeleteSSHKeyRequest generates requests for DeleteSSHKey

func NewDeleteSecurityGroupRequest

func NewDeleteSecurityGroupRequest(server string, securityGroupId string) (*http.Request, error)

NewDeleteSecurityGroupRequest generates requests for DeleteSecurityGroup

func NewDeleteSnapshotRequest

func NewDeleteSnapshotRequest(server string, snapshotId string) (*http.Request, error)

NewDeleteSnapshotRequest generates requests for DeleteSnapshot

func NewDeleteVolumeRequest

func NewDeleteVolumeRequest(server string, volumeId string) (*http.Request, error)

NewDeleteVolumeRequest generates requests for DeleteVolume

func NewGetInstanceRequest

func NewGetInstanceRequest(server string, instanceId string) (*http.Request, error)

NewGetInstanceRequest generates requests for GetInstance

func NewGetSSHKeyRequest

func NewGetSSHKeyRequest(server string, sshKeyId string) (*http.Request, error)

NewGetSSHKeyRequest generates requests for GetSSHKey

func NewGetSecurityGroupRequest

func NewGetSecurityGroupRequest(server string, securityGroupId string) (*http.Request, error)

NewGetSecurityGroupRequest generates requests for GetSecurityGroup

func NewGetSnapshotRequest

func NewGetSnapshotRequest(server string, snapshotId string) (*http.Request, error)

NewGetSnapshotRequest generates requests for GetSnapshot

func NewGetVolumeRequest

func NewGetVolumeRequest(server string, volumeId string) (*http.Request, error)

NewGetVolumeRequest generates requests for GetVolume

func NewInstanceActionRequest

func NewInstanceActionRequest(server string, instanceId string, body InstanceActionJSONRequestBody) (*http.Request, error)

NewInstanceActionRequest calls the generic InstanceAction builder with application/json body

func NewInstanceActionRequestWithBody

func NewInstanceActionRequestWithBody(server string, instanceId string, contentType string, body io.Reader) (*http.Request, error)

NewInstanceActionRequestWithBody generates requests for InstanceAction with any type of body

func NewInstanceAvailabilityRequest

func NewInstanceAvailabilityRequest(server string, region ComputeV1Region) (*http.Request, error)

NewInstanceAvailabilityRequest generates requests for InstanceAvailability

func NewListImagesRequest

func NewListImagesRequest(server string, params *ListImagesParams) (*http.Request, error)

NewListImagesRequest generates requests for ListImages

func NewListInstanceActionsRequest

func NewListInstanceActionsRequest(server string, instanceId string) (*http.Request, error)

NewListInstanceActionsRequest generates requests for ListInstanceActions

func NewListInstanceSnapshotsRequest

func NewListInstanceSnapshotsRequest(server string, instanceId string, params *ListInstanceSnapshotsParams) (*http.Request, error)

NewListInstanceSnapshotsRequest generates requests for ListInstanceSnapshots

func NewListInstancesRequest

func NewListInstancesRequest(server string, params *ListInstancesParams) (*http.Request, error)

NewListInstancesRequest generates requests for ListInstances

func NewListSSHKeysRequest

func NewListSSHKeysRequest(server string, params *ListSSHKeysParams) (*http.Request, error)

NewListSSHKeysRequest generates requests for ListSSHKeys

func NewListSecurityGroupsRequest

func NewListSecurityGroupsRequest(server string, params *ListSecurityGroupsParams) (*http.Request, error)

NewListSecurityGroupsRequest generates requests for ListSecurityGroups

func NewListSnapshotsRequest

func NewListSnapshotsRequest(server string, params *ListSnapshotsParams) (*http.Request, error)

NewListSnapshotsRequest generates requests for ListSnapshots

func NewListVolumesRequest

func NewListVolumesRequest(server string, params *ListVolumesParams) (*http.Request, error)

NewListVolumesRequest generates requests for ListVolumes

func NewUpdateInstanceRequest

func NewUpdateInstanceRequest(server string, instanceId string, body UpdateInstanceJSONRequestBody) (*http.Request, error)

NewUpdateInstanceRequest calls the generic UpdateInstance builder with application/json body

func NewUpdateInstanceRequestWithBody

func NewUpdateInstanceRequestWithBody(server string, instanceId string, contentType string, body io.Reader) (*http.Request, error)

NewUpdateInstanceRequestWithBody generates requests for UpdateInstance with any type of body

func NewUpdateSSHKeyRequest

func NewUpdateSSHKeyRequest(server string, sshKeyId string, body UpdateSSHKeyJSONRequestBody) (*http.Request, error)

NewUpdateSSHKeyRequest calls the generic UpdateSSHKey builder with application/json body

func NewUpdateSSHKeyRequestWithBody

func NewUpdateSSHKeyRequestWithBody(server string, sshKeyId string, contentType string, body io.Reader) (*http.Request, error)

NewUpdateSSHKeyRequestWithBody generates requests for UpdateSSHKey with any type of body

func NewUpdateSecurityGroupRequest

func NewUpdateSecurityGroupRequest(server string, securityGroupId string, body UpdateSecurityGroupJSONRequestBody) (*http.Request, error)

NewUpdateSecurityGroupRequest calls the generic UpdateSecurityGroup builder with application/json body

func NewUpdateSecurityGroupRequestWithBody

func NewUpdateSecurityGroupRequestWithBody(server string, securityGroupId string, contentType string, body io.Reader) (*http.Request, error)

NewUpdateSecurityGroupRequestWithBody generates requests for UpdateSecurityGroup with any type of body

func NewUpdateSnapshotRequest

func NewUpdateSnapshotRequest(server string, snapshotId string, body UpdateSnapshotJSONRequestBody) (*http.Request, error)

NewUpdateSnapshotRequest calls the generic UpdateSnapshot builder with application/json body

func NewUpdateSnapshotRequestWithBody

func NewUpdateSnapshotRequestWithBody(server string, snapshotId string, contentType string, body io.Reader) (*http.Request, error)

NewUpdateSnapshotRequestWithBody generates requests for UpdateSnapshot with any type of body

func NewUpdateVolumeRequest

func NewUpdateVolumeRequest(server string, volumeId string, body UpdateVolumeJSONRequestBody) (*http.Request, error)

NewUpdateVolumeRequest calls the generic UpdateVolume builder with application/json body

func NewUpdateVolumeRequestWithBody

func NewUpdateVolumeRequestWithBody(server string, volumeId string, contentType string, body io.Reader) (*http.Request, error)

NewUpdateVolumeRequestWithBody generates requests for UpdateVolume with any type of body

Types

type Client

type Client struct {
	// The endpoint of the server conforming to this interface, with scheme,
	// https://api.deepmap.com for example. This can contain a path relative
	// to the server, such as https://api.deepmap.com/dev-test, and all the
	// paths in the swagger spec will be appended to the server.
	Server string

	// Doer for performing requests, typically a *http.Client with any
	// customized settings, such as certificate chains.
	Client HttpRequestDoer

	// A list of callbacks for modifying requests which are generated before sending over
	// the network.
	RequestEditors []RequestEditorFn
}

Client which conforms to the OpenAPI3 specification for this service.

func NewClient

func NewClient(server string, opts ...ClientOption) (*Client, error)

Creates a new Client, with reasonable defaults

func (*Client) CreateInstance

func (c *Client) CreateInstance(ctx context.Context, body CreateInstanceJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateInstanceWithBody

func (c *Client) CreateInstanceWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateSSHKey

func (c *Client) CreateSSHKey(ctx context.Context, body CreateSSHKeyJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateSSHKeyWithBody

func (c *Client) CreateSSHKeyWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateSecurityGroup

func (c *Client) CreateSecurityGroup(ctx context.Context, body CreateSecurityGroupJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateSecurityGroupWithBody

func (c *Client) CreateSecurityGroupWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateSnapshot

func (c *Client) CreateSnapshot(ctx context.Context, instanceId string, body CreateSnapshotJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateSnapshotWithBody

func (c *Client) CreateSnapshotWithBody(ctx context.Context, instanceId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateVolume

func (c *Client) CreateVolume(ctx context.Context, body CreateVolumeJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateVolumeWithBody

func (c *Client) CreateVolumeWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) DeleteInstance

func (c *Client) DeleteInstance(ctx context.Context, instanceId string, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) DeleteSSHKey

func (c *Client) DeleteSSHKey(ctx context.Context, sshKeyId string, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) DeleteSecurityGroup

func (c *Client) DeleteSecurityGroup(ctx context.Context, securityGroupId string, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) DeleteSnapshot

func (c *Client) DeleteSnapshot(ctx context.Context, snapshotId string, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) DeleteVolume

func (c *Client) DeleteVolume(ctx context.Context, volumeId string, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetInstance

func (c *Client) GetInstance(ctx context.Context, instanceId string, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetSSHKey

func (c *Client) GetSSHKey(ctx context.Context, sshKeyId string, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetSecurityGroup

func (c *Client) GetSecurityGroup(ctx context.Context, securityGroupId string, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetSnapshot

func (c *Client) GetSnapshot(ctx context.Context, snapshotId string, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetVolume

func (c *Client) GetVolume(ctx context.Context, volumeId string, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) InstanceAction

func (c *Client) InstanceAction(ctx context.Context, instanceId string, body InstanceActionJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) InstanceActionWithBody

func (c *Client) InstanceActionWithBody(ctx context.Context, instanceId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) InstanceAvailability

func (c *Client) InstanceAvailability(ctx context.Context, region ComputeV1Region, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListImages

func (c *Client) ListImages(ctx context.Context, params *ListImagesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListInstanceActions

func (c *Client) ListInstanceActions(ctx context.Context, instanceId string, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListInstanceSnapshots

func (c *Client) ListInstanceSnapshots(ctx context.Context, instanceId string, params *ListInstanceSnapshotsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListInstances

func (c *Client) ListInstances(ctx context.Context, params *ListInstancesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListSSHKeys

func (c *Client) ListSSHKeys(ctx context.Context, params *ListSSHKeysParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListSecurityGroups

func (c *Client) ListSecurityGroups(ctx context.Context, params *ListSecurityGroupsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListSnapshots

func (c *Client) ListSnapshots(ctx context.Context, params *ListSnapshotsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListVolumes

func (c *Client) ListVolumes(ctx context.Context, params *ListVolumesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) UpdateInstance

func (c *Client) UpdateInstance(ctx context.Context, instanceId string, body UpdateInstanceJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) UpdateInstanceWithBody

func (c *Client) UpdateInstanceWithBody(ctx context.Context, instanceId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) UpdateSSHKey

func (c *Client) UpdateSSHKey(ctx context.Context, sshKeyId string, body UpdateSSHKeyJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) UpdateSSHKeyWithBody

func (c *Client) UpdateSSHKeyWithBody(ctx context.Context, sshKeyId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) UpdateSecurityGroup

func (c *Client) UpdateSecurityGroup(ctx context.Context, securityGroupId string, body UpdateSecurityGroupJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) UpdateSecurityGroupWithBody

func (c *Client) UpdateSecurityGroupWithBody(ctx context.Context, securityGroupId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) UpdateSnapshot

func (c *Client) UpdateSnapshot(ctx context.Context, snapshotId string, body UpdateSnapshotJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) UpdateSnapshotWithBody

func (c *Client) UpdateSnapshotWithBody(ctx context.Context, snapshotId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) UpdateVolume

func (c *Client) UpdateVolume(ctx context.Context, volumeId string, body UpdateVolumeJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) UpdateVolumeWithBody

func (c *Client) UpdateVolumeWithBody(ctx context.Context, volumeId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

type ClientConfig

type ClientConfig struct {
	Endpoint string
	Token    string
}

type ClientInterface

type ClientInterface interface {
	// InstanceAvailability request
	InstanceAvailability(ctx context.Context, region ComputeV1Region, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListImages request
	ListImages(ctx context.Context, params *ListImagesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListInstances request
	ListInstances(ctx context.Context, params *ListInstancesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreateInstance request with any body
	CreateInstanceWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	CreateInstance(ctx context.Context, body CreateInstanceJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// DeleteInstance request
	DeleteInstance(ctx context.Context, instanceId string, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetInstance request
	GetInstance(ctx context.Context, instanceId string, reqEditors ...RequestEditorFn) (*http.Response, error)

	// UpdateInstance request with any body
	UpdateInstanceWithBody(ctx context.Context, instanceId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	UpdateInstance(ctx context.Context, instanceId string, body UpdateInstanceJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListInstanceActions request
	ListInstanceActions(ctx context.Context, instanceId string, reqEditors ...RequestEditorFn) (*http.Response, error)

	// InstanceAction request with any body
	InstanceActionWithBody(ctx context.Context, instanceId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	InstanceAction(ctx context.Context, instanceId string, body InstanceActionJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListInstanceSnapshots request
	ListInstanceSnapshots(ctx context.Context, instanceId string, params *ListInstanceSnapshotsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreateSnapshot request with any body
	CreateSnapshotWithBody(ctx context.Context, instanceId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	CreateSnapshot(ctx context.Context, instanceId string, body CreateSnapshotJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListSecurityGroups request
	ListSecurityGroups(ctx context.Context, params *ListSecurityGroupsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreateSecurityGroup request with any body
	CreateSecurityGroupWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	CreateSecurityGroup(ctx context.Context, body CreateSecurityGroupJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// DeleteSecurityGroup request
	DeleteSecurityGroup(ctx context.Context, securityGroupId string, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetSecurityGroup request
	GetSecurityGroup(ctx context.Context, securityGroupId string, reqEditors ...RequestEditorFn) (*http.Response, error)

	// UpdateSecurityGroup request with any body
	UpdateSecurityGroupWithBody(ctx context.Context, securityGroupId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	UpdateSecurityGroup(ctx context.Context, securityGroupId string, body UpdateSecurityGroupJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListSnapshots request
	ListSnapshots(ctx context.Context, params *ListSnapshotsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// DeleteSnapshot request
	DeleteSnapshot(ctx context.Context, snapshotId string, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetSnapshot request
	GetSnapshot(ctx context.Context, snapshotId string, reqEditors ...RequestEditorFn) (*http.Response, error)

	// UpdateSnapshot request with any body
	UpdateSnapshotWithBody(ctx context.Context, snapshotId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	UpdateSnapshot(ctx context.Context, snapshotId string, body UpdateSnapshotJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListSSHKeys request
	ListSSHKeys(ctx context.Context, params *ListSSHKeysParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreateSSHKey request with any body
	CreateSSHKeyWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	CreateSSHKey(ctx context.Context, body CreateSSHKeyJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// DeleteSSHKey request
	DeleteSSHKey(ctx context.Context, sshKeyId string, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetSSHKey request
	GetSSHKey(ctx context.Context, sshKeyId string, reqEditors ...RequestEditorFn) (*http.Response, error)

	// UpdateSSHKey request with any body
	UpdateSSHKeyWithBody(ctx context.Context, sshKeyId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	UpdateSSHKey(ctx context.Context, sshKeyId string, body UpdateSSHKeyJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListVolumes request
	ListVolumes(ctx context.Context, params *ListVolumesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreateVolume request with any body
	CreateVolumeWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	CreateVolume(ctx context.Context, body CreateVolumeJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// DeleteVolume request
	DeleteVolume(ctx context.Context, volumeId string, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetVolume request
	GetVolume(ctx context.Context, volumeId string, reqEditors ...RequestEditorFn) (*http.Response, error)

	// UpdateVolume request with any body
	UpdateVolumeWithBody(ctx context.Context, volumeId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	UpdateVolume(ctx context.Context, volumeId string, body UpdateVolumeJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)
}

The interface specification for the client above.

type ClientOption

type ClientOption func(*Client) error

ClientOption allows setting custom parameters during construction

func WithBaseURL

func WithBaseURL(baseURL string) ClientOption

WithBaseURL overrides the baseURL.

func WithHTTPClient

func WithHTTPClient(doer HttpRequestDoer) ClientOption

WithHTTPClient allows overriding the default Doer, which is automatically created using http.Client. This is useful for tests.

func WithRequestEditorFn

func WithRequestEditorFn(fn RequestEditorFn) ClientOption

WithRequestEditorFn allows setting up a callback function, which will be called right before sending the request. This can be used to mutate the request.

type ClientWithResponses

type ClientWithResponses struct {
	ClientInterface
}

ClientWithResponses builds on ClientInterface to offer response payloads

func NewClientWithResponses

func NewClientWithResponses(server string, opts ...ClientOption) (*ClientWithResponses, error)

NewClientWithResponses creates a new ClientWithResponses, which wraps Client with return type handling

func NewGenesisCloudClient

func NewGenesisCloudClient(config ClientConfig, opts ...ClientOption) (*ClientWithResponses, error)

func (*ClientWithResponses) CreateInstanceWithBodyWithResponse

func (c *ClientWithResponses) CreateInstanceWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateInstanceResponse, error)

CreateInstanceWithBodyWithResponse request with arbitrary body returning *CreateInstanceResponse

func (*ClientWithResponses) CreateInstanceWithResponse

func (c *ClientWithResponses) CreateInstanceWithResponse(ctx context.Context, body CreateInstanceJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateInstanceResponse, error)

func (*ClientWithResponses) CreateSSHKeyWithBodyWithResponse

func (c *ClientWithResponses) CreateSSHKeyWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateSSHKeyResponse, error)

CreateSSHKeyWithBodyWithResponse request with arbitrary body returning *CreateSSHKeyResponse

func (*ClientWithResponses) CreateSSHKeyWithResponse

func (c *ClientWithResponses) CreateSSHKeyWithResponse(ctx context.Context, body CreateSSHKeyJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateSSHKeyResponse, error)

func (*ClientWithResponses) CreateSecurityGroupWithBodyWithResponse

func (c *ClientWithResponses) CreateSecurityGroupWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateSecurityGroupResponse, error)

CreateSecurityGroupWithBodyWithResponse request with arbitrary body returning *CreateSecurityGroupResponse

func (*ClientWithResponses) CreateSecurityGroupWithResponse

func (c *ClientWithResponses) CreateSecurityGroupWithResponse(ctx context.Context, body CreateSecurityGroupJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateSecurityGroupResponse, error)

func (*ClientWithResponses) CreateSnapshotWithBodyWithResponse

func (c *ClientWithResponses) CreateSnapshotWithBodyWithResponse(ctx context.Context, instanceId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateSnapshotResponse, error)

CreateSnapshotWithBodyWithResponse request with arbitrary body returning *CreateSnapshotResponse

func (*ClientWithResponses) CreateSnapshotWithResponse

func (c *ClientWithResponses) CreateSnapshotWithResponse(ctx context.Context, instanceId string, body CreateSnapshotJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateSnapshotResponse, error)

func (*ClientWithResponses) CreateVolumeWithBodyWithResponse

func (c *ClientWithResponses) CreateVolumeWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateVolumeResponse, error)

CreateVolumeWithBodyWithResponse request with arbitrary body returning *CreateVolumeResponse

func (*ClientWithResponses) CreateVolumeWithResponse

func (c *ClientWithResponses) CreateVolumeWithResponse(ctx context.Context, body CreateVolumeJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateVolumeResponse, error)

func (*ClientWithResponses) DeleteInstanceWithResponse

func (c *ClientWithResponses) DeleteInstanceWithResponse(ctx context.Context, instanceId string, reqEditors ...RequestEditorFn) (*DeleteInstanceResponse, error)

DeleteInstanceWithResponse request returning *DeleteInstanceResponse

func (*ClientWithResponses) DeleteSSHKeyWithResponse

func (c *ClientWithResponses) DeleteSSHKeyWithResponse(ctx context.Context, sshKeyId string, reqEditors ...RequestEditorFn) (*DeleteSSHKeyResponse, error)

DeleteSSHKeyWithResponse request returning *DeleteSSHKeyResponse

func (*ClientWithResponses) DeleteSecurityGroupWithResponse

func (c *ClientWithResponses) DeleteSecurityGroupWithResponse(ctx context.Context, securityGroupId string, reqEditors ...RequestEditorFn) (*DeleteSecurityGroupResponse, error)

DeleteSecurityGroupWithResponse request returning *DeleteSecurityGroupResponse

func (*ClientWithResponses) DeleteSnapshotWithResponse

func (c *ClientWithResponses) DeleteSnapshotWithResponse(ctx context.Context, snapshotId string, reqEditors ...RequestEditorFn) (*DeleteSnapshotResponse, error)

DeleteSnapshotWithResponse request returning *DeleteSnapshotResponse

func (*ClientWithResponses) DeleteVolumeWithResponse

func (c *ClientWithResponses) DeleteVolumeWithResponse(ctx context.Context, volumeId string, reqEditors ...RequestEditorFn) (*DeleteVolumeResponse, error)

DeleteVolumeWithResponse request returning *DeleteVolumeResponse

func (*ClientWithResponses) GetInstanceWithResponse

func (c *ClientWithResponses) GetInstanceWithResponse(ctx context.Context, instanceId string, reqEditors ...RequestEditorFn) (*GetInstanceResponse, error)

GetInstanceWithResponse request returning *GetInstanceResponse

func (*ClientWithResponses) GetSSHKeyWithResponse

func (c *ClientWithResponses) GetSSHKeyWithResponse(ctx context.Context, sshKeyId string, reqEditors ...RequestEditorFn) (*GetSSHKeyResponse, error)

GetSSHKeyWithResponse request returning *GetSSHKeyResponse

func (*ClientWithResponses) GetSecurityGroupWithResponse

func (c *ClientWithResponses) GetSecurityGroupWithResponse(ctx context.Context, securityGroupId string, reqEditors ...RequestEditorFn) (*GetSecurityGroupResponse, error)

GetSecurityGroupWithResponse request returning *GetSecurityGroupResponse

func (*ClientWithResponses) GetSnapshotWithResponse

func (c *ClientWithResponses) GetSnapshotWithResponse(ctx context.Context, snapshotId string, reqEditors ...RequestEditorFn) (*GetSnapshotResponse, error)

GetSnapshotWithResponse request returning *GetSnapshotResponse

func (*ClientWithResponses) GetVolumeWithResponse

func (c *ClientWithResponses) GetVolumeWithResponse(ctx context.Context, volumeId string, reqEditors ...RequestEditorFn) (*GetVolumeResponse, error)

GetVolumeWithResponse request returning *GetVolumeResponse

func (*ClientWithResponses) InstanceActionWithBodyWithResponse

func (c *ClientWithResponses) InstanceActionWithBodyWithResponse(ctx context.Context, instanceId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*InstanceActionResponse, error)

InstanceActionWithBodyWithResponse request with arbitrary body returning *InstanceActionResponse

func (*ClientWithResponses) InstanceActionWithResponse

func (c *ClientWithResponses) InstanceActionWithResponse(ctx context.Context, instanceId string, body InstanceActionJSONRequestBody, reqEditors ...RequestEditorFn) (*InstanceActionResponse, error)

func (*ClientWithResponses) InstanceAvailabilityWithResponse

func (c *ClientWithResponses) InstanceAvailabilityWithResponse(ctx context.Context, region ComputeV1Region, reqEditors ...RequestEditorFn) (*InstanceAvailabilityResponse, error)

InstanceAvailabilityWithResponse request returning *InstanceAvailabilityResponse

func (*ClientWithResponses) ListImagesWithResponse

func (c *ClientWithResponses) ListImagesWithResponse(ctx context.Context, params *ListImagesParams, reqEditors ...RequestEditorFn) (*ListImagesResponse, error)

ListImagesWithResponse request returning *ListImagesResponse

func (*ClientWithResponses) ListInstanceActionsWithResponse

func (c *ClientWithResponses) ListInstanceActionsWithResponse(ctx context.Context, instanceId string, reqEditors ...RequestEditorFn) (*ListInstanceActionsResponse, error)

ListInstanceActionsWithResponse request returning *ListInstanceActionsResponse

func (*ClientWithResponses) ListInstanceSnapshotsWithResponse

func (c *ClientWithResponses) ListInstanceSnapshotsWithResponse(ctx context.Context, instanceId string, params *ListInstanceSnapshotsParams, reqEditors ...RequestEditorFn) (*ListInstanceSnapshotsResponse, error)

ListInstanceSnapshotsWithResponse request returning *ListInstanceSnapshotsResponse

func (*ClientWithResponses) ListInstancesWithResponse

func (c *ClientWithResponses) ListInstancesWithResponse(ctx context.Context, params *ListInstancesParams, reqEditors ...RequestEditorFn) (*ListInstancesResponse, error)

ListInstancesWithResponse request returning *ListInstancesResponse

func (*ClientWithResponses) ListSSHKeysWithResponse

func (c *ClientWithResponses) ListSSHKeysWithResponse(ctx context.Context, params *ListSSHKeysParams, reqEditors ...RequestEditorFn) (*ListSSHKeysResponse, error)

ListSSHKeysWithResponse request returning *ListSSHKeysResponse

func (*ClientWithResponses) ListSecurityGroupsWithResponse

func (c *ClientWithResponses) ListSecurityGroupsWithResponse(ctx context.Context, params *ListSecurityGroupsParams, reqEditors ...RequestEditorFn) (*ListSecurityGroupsResponse, error)

ListSecurityGroupsWithResponse request returning *ListSecurityGroupsResponse

func (*ClientWithResponses) ListSnapshotsWithResponse

func (c *ClientWithResponses) ListSnapshotsWithResponse(ctx context.Context, params *ListSnapshotsParams, reqEditors ...RequestEditorFn) (*ListSnapshotsResponse, error)

ListSnapshotsWithResponse request returning *ListSnapshotsResponse

func (*ClientWithResponses) ListVolumesWithResponse

func (c *ClientWithResponses) ListVolumesWithResponse(ctx context.Context, params *ListVolumesParams, reqEditors ...RequestEditorFn) (*ListVolumesResponse, error)

ListVolumesWithResponse request returning *ListVolumesResponse

func (*ClientWithResponses) UpdateInstanceWithBodyWithResponse

func (c *ClientWithResponses) UpdateInstanceWithBodyWithResponse(ctx context.Context, instanceId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpdateInstanceResponse, error)

UpdateInstanceWithBodyWithResponse request with arbitrary body returning *UpdateInstanceResponse

func (*ClientWithResponses) UpdateInstanceWithResponse

func (c *ClientWithResponses) UpdateInstanceWithResponse(ctx context.Context, instanceId string, body UpdateInstanceJSONRequestBody, reqEditors ...RequestEditorFn) (*UpdateInstanceResponse, error)

func (*ClientWithResponses) UpdateSSHKeyWithBodyWithResponse

func (c *ClientWithResponses) UpdateSSHKeyWithBodyWithResponse(ctx context.Context, sshKeyId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpdateSSHKeyResponse, error)

UpdateSSHKeyWithBodyWithResponse request with arbitrary body returning *UpdateSSHKeyResponse

func (*ClientWithResponses) UpdateSSHKeyWithResponse

func (c *ClientWithResponses) UpdateSSHKeyWithResponse(ctx context.Context, sshKeyId string, body UpdateSSHKeyJSONRequestBody, reqEditors ...RequestEditorFn) (*UpdateSSHKeyResponse, error)

func (*ClientWithResponses) UpdateSecurityGroupWithBodyWithResponse

func (c *ClientWithResponses) UpdateSecurityGroupWithBodyWithResponse(ctx context.Context, securityGroupId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpdateSecurityGroupResponse, error)

UpdateSecurityGroupWithBodyWithResponse request with arbitrary body returning *UpdateSecurityGroupResponse

func (*ClientWithResponses) UpdateSecurityGroupWithResponse

func (c *ClientWithResponses) UpdateSecurityGroupWithResponse(ctx context.Context, securityGroupId string, body UpdateSecurityGroupJSONRequestBody, reqEditors ...RequestEditorFn) (*UpdateSecurityGroupResponse, error)

func (*ClientWithResponses) UpdateSnapshotWithBodyWithResponse

func (c *ClientWithResponses) UpdateSnapshotWithBodyWithResponse(ctx context.Context, snapshotId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpdateSnapshotResponse, error)

UpdateSnapshotWithBodyWithResponse request with arbitrary body returning *UpdateSnapshotResponse

func (*ClientWithResponses) UpdateSnapshotWithResponse

func (c *ClientWithResponses) UpdateSnapshotWithResponse(ctx context.Context, snapshotId string, body UpdateSnapshotJSONRequestBody, reqEditors ...RequestEditorFn) (*UpdateSnapshotResponse, error)

func (*ClientWithResponses) UpdateVolumeWithBodyWithResponse

func (c *ClientWithResponses) UpdateVolumeWithBodyWithResponse(ctx context.Context, volumeId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpdateVolumeResponse, error)

UpdateVolumeWithBodyWithResponse request with arbitrary body returning *UpdateVolumeResponse

func (*ClientWithResponses) UpdateVolumeWithResponse

func (c *ClientWithResponses) UpdateVolumeWithResponse(ctx context.Context, volumeId string, body UpdateVolumeJSONRequestBody, reqEditors ...RequestEditorFn) (*UpdateVolumeResponse, error)

type ClientWithResponsesInterface

type ClientWithResponsesInterface interface {
	// InstanceAvailability request
	InstanceAvailabilityWithResponse(ctx context.Context, region ComputeV1Region, reqEditors ...RequestEditorFn) (*InstanceAvailabilityResponse, error)

	// ListImages request
	ListImagesWithResponse(ctx context.Context, params *ListImagesParams, reqEditors ...RequestEditorFn) (*ListImagesResponse, error)

	// ListInstances request
	ListInstancesWithResponse(ctx context.Context, params *ListInstancesParams, reqEditors ...RequestEditorFn) (*ListInstancesResponse, error)

	// CreateInstance request with any body
	CreateInstanceWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateInstanceResponse, error)

	CreateInstanceWithResponse(ctx context.Context, body CreateInstanceJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateInstanceResponse, error)

	// DeleteInstance request
	DeleteInstanceWithResponse(ctx context.Context, instanceId string, reqEditors ...RequestEditorFn) (*DeleteInstanceResponse, error)

	// GetInstance request
	GetInstanceWithResponse(ctx context.Context, instanceId string, reqEditors ...RequestEditorFn) (*GetInstanceResponse, error)

	// UpdateInstance request with any body
	UpdateInstanceWithBodyWithResponse(ctx context.Context, instanceId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpdateInstanceResponse, error)

	UpdateInstanceWithResponse(ctx context.Context, instanceId string, body UpdateInstanceJSONRequestBody, reqEditors ...RequestEditorFn) (*UpdateInstanceResponse, error)

	// ListInstanceActions request
	ListInstanceActionsWithResponse(ctx context.Context, instanceId string, reqEditors ...RequestEditorFn) (*ListInstanceActionsResponse, error)

	// InstanceAction request with any body
	InstanceActionWithBodyWithResponse(ctx context.Context, instanceId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*InstanceActionResponse, error)

	InstanceActionWithResponse(ctx context.Context, instanceId string, body InstanceActionJSONRequestBody, reqEditors ...RequestEditorFn) (*InstanceActionResponse, error)

	// ListInstanceSnapshots request
	ListInstanceSnapshotsWithResponse(ctx context.Context, instanceId string, params *ListInstanceSnapshotsParams, reqEditors ...RequestEditorFn) (*ListInstanceSnapshotsResponse, error)

	// CreateSnapshot request with any body
	CreateSnapshotWithBodyWithResponse(ctx context.Context, instanceId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateSnapshotResponse, error)

	CreateSnapshotWithResponse(ctx context.Context, instanceId string, body CreateSnapshotJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateSnapshotResponse, error)

	// ListSecurityGroups request
	ListSecurityGroupsWithResponse(ctx context.Context, params *ListSecurityGroupsParams, reqEditors ...RequestEditorFn) (*ListSecurityGroupsResponse, error)

	// CreateSecurityGroup request with any body
	CreateSecurityGroupWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateSecurityGroupResponse, error)

	CreateSecurityGroupWithResponse(ctx context.Context, body CreateSecurityGroupJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateSecurityGroupResponse, error)

	// DeleteSecurityGroup request
	DeleteSecurityGroupWithResponse(ctx context.Context, securityGroupId string, reqEditors ...RequestEditorFn) (*DeleteSecurityGroupResponse, error)

	// GetSecurityGroup request
	GetSecurityGroupWithResponse(ctx context.Context, securityGroupId string, reqEditors ...RequestEditorFn) (*GetSecurityGroupResponse, error)

	// UpdateSecurityGroup request with any body
	UpdateSecurityGroupWithBodyWithResponse(ctx context.Context, securityGroupId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpdateSecurityGroupResponse, error)

	UpdateSecurityGroupWithResponse(ctx context.Context, securityGroupId string, body UpdateSecurityGroupJSONRequestBody, reqEditors ...RequestEditorFn) (*UpdateSecurityGroupResponse, error)

	// ListSnapshots request
	ListSnapshotsWithResponse(ctx context.Context, params *ListSnapshotsParams, reqEditors ...RequestEditorFn) (*ListSnapshotsResponse, error)

	// DeleteSnapshot request
	DeleteSnapshotWithResponse(ctx context.Context, snapshotId string, reqEditors ...RequestEditorFn) (*DeleteSnapshotResponse, error)

	// GetSnapshot request
	GetSnapshotWithResponse(ctx context.Context, snapshotId string, reqEditors ...RequestEditorFn) (*GetSnapshotResponse, error)

	// UpdateSnapshot request with any body
	UpdateSnapshotWithBodyWithResponse(ctx context.Context, snapshotId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpdateSnapshotResponse, error)

	UpdateSnapshotWithResponse(ctx context.Context, snapshotId string, body UpdateSnapshotJSONRequestBody, reqEditors ...RequestEditorFn) (*UpdateSnapshotResponse, error)

	// ListSSHKeys request
	ListSSHKeysWithResponse(ctx context.Context, params *ListSSHKeysParams, reqEditors ...RequestEditorFn) (*ListSSHKeysResponse, error)

	// CreateSSHKey request with any body
	CreateSSHKeyWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateSSHKeyResponse, error)

	CreateSSHKeyWithResponse(ctx context.Context, body CreateSSHKeyJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateSSHKeyResponse, error)

	// DeleteSSHKey request
	DeleteSSHKeyWithResponse(ctx context.Context, sshKeyId string, reqEditors ...RequestEditorFn) (*DeleteSSHKeyResponse, error)

	// GetSSHKey request
	GetSSHKeyWithResponse(ctx context.Context, sshKeyId string, reqEditors ...RequestEditorFn) (*GetSSHKeyResponse, error)

	// UpdateSSHKey request with any body
	UpdateSSHKeyWithBodyWithResponse(ctx context.Context, sshKeyId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpdateSSHKeyResponse, error)

	UpdateSSHKeyWithResponse(ctx context.Context, sshKeyId string, body UpdateSSHKeyJSONRequestBody, reqEditors ...RequestEditorFn) (*UpdateSSHKeyResponse, error)

	// ListVolumes request
	ListVolumesWithResponse(ctx context.Context, params *ListVolumesParams, reqEditors ...RequestEditorFn) (*ListVolumesResponse, error)

	// CreateVolume request with any body
	CreateVolumeWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateVolumeResponse, error)

	CreateVolumeWithResponse(ctx context.Context, body CreateVolumeJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateVolumeResponse, error)

	// DeleteVolume request
	DeleteVolumeWithResponse(ctx context.Context, volumeId string, reqEditors ...RequestEditorFn) (*DeleteVolumeResponse, error)

	// GetVolume request
	GetVolumeWithResponse(ctx context.Context, volumeId string, reqEditors ...RequestEditorFn) (*GetVolumeResponse, error)

	// UpdateVolume request with any body
	UpdateVolumeWithBodyWithResponse(ctx context.Context, volumeId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpdateVolumeResponse, error)

	UpdateVolumeWithResponse(ctx context.Context, volumeId string, body UpdateVolumeJSONRequestBody, reqEditors ...RequestEditorFn) (*UpdateVolumeResponse, error)
}

ClientWithResponsesInterface is the interface specification for the client with responses above.

type ComputeV1AvailabilityResponse

type ComputeV1AvailabilityResponse struct {
	Availability struct {
		InstanceTypes []struct {
			Available *bool `json:"available,omitempty"`

			// Type The instance type identifier.
			Type *ComputeV1InstanceType `json:"type,omitempty"`
		} `json:"instance_types"`
		Placement string `json:"placement"`

		// Region The region identifier.
		Region ComputeV1Region `json:"region"`
		Type   string          `json:"type"`
	} `json:"availability"`
}

ComputeV1AvailabilityResponse response

type ComputeV1CreateInstanceResponse

type ComputeV1CreateInstanceResponse struct {
	Instance ComputeV1Instance `json:"instance"`
}

ComputeV1CreateInstanceResponse response

type ComputeV1CreateSecurityGroupResponse

type ComputeV1CreateSecurityGroupResponse struct {
	SecurityGroup ComputeV1SecurityGroup `json:"security_group"`
}

ComputeV1CreateSecurityGroupResponse response

type ComputeV1Error

type ComputeV1Error struct {
	// Code The Genesis Cloud error code.
	// Check the [developer documentation](https://developers.com/#error-codes) for more information on error codes.
	Code string `json:"code"`

	// Message An explanation of what went wrong.
	Message string `json:"message"`
}

ComputeV1Error defines model for compute.v1.Error.

type ComputeV1GetInstanceResponse

type ComputeV1GetInstanceResponse struct {
	Instance ComputeV1Instance `json:"instance"`
}

ComputeV1GetInstanceResponse response

type ComputeV1GetSecurityGroupResponse

type ComputeV1GetSecurityGroupResponse struct {
	SecurityGroup ComputeV1SecurityGroup `json:"security_group"`
}

ComputeV1GetSecurityGroupResponse response

type ComputeV1GetSnapshotResponse

type ComputeV1GetSnapshotResponse struct {
	Snapshot ComputeV1Snapshot `json:"snapshot"`
}

ComputeV1GetSnapshotResponse response

type ComputeV1GetVolumeResponse

type ComputeV1GetVolumeResponse struct {
	Volume ComputeV1Volume `json:"volume"`
}

ComputeV1GetVolumeResponse response

type ComputeV1Image

type ComputeV1Image struct {
	CreatedAt Timestamp `json:"created_at"`

	// Id A unique number that can be used to identify and reference a specific image.
	Id ComputeV1ImageId `json:"id"`

	// Name The display name that has been given to an image. This is what is shown in the control panel and is generally a descriptive title for the image in question.
	Name string `json:"name"`

	// Regions The list of regions in which this image can be used in.
	Regions []ComputeV1Region `json:"regions"`

	// Type Describes the kind of image.
	Type ComputeV1ImageType `json:"type"`
}

ComputeV1Image defines model for compute.v1.Image.

type ComputeV1ImageId

type ComputeV1ImageId = string

ComputeV1ImageId A unique number that can be used to identify and reference a specific image.

type ComputeV1ImageType

type ComputeV1ImageType string

ComputeV1ImageType Describes the kind of image.

const (
	ComputeV1ImageTypeBaseOs        ComputeV1ImageType = "base-os"
	ComputeV1ImageTypePreconfigured ComputeV1ImageType = "preconfigured"
	ComputeV1ImageTypeSnapshot      ComputeV1ImageType = "snapshot"
)

Defines values for ComputeV1ImageType.

type ComputeV1Instance

type ComputeV1Instance struct {
	CreatedAt Timestamp `json:"created_at"`

	// Hostname The hostname of your instance.
	Hostname ComputeV1InstanceHostname `json:"hostname"`

	// Id The unique ID of the instance.
	Id string `json:"id"`

	// Image The image of the instance.
	Image struct {
		// Id A unique number that can be used to identify and reference a specific image.
		Id *ComputeV1ImageId `json:"id,omitempty"`

		// Name The image name.
		Name *string `json:"name,omitempty"`
	} `json:"image"`

	// Name The human-readable name set for the instance.
	Name ComputeV1InstanceName `json:"name"`

	// PlacementOption The placement option identifier.
	PlacementOption ComputeV1PlacementOption `json:"placement_option"`

	// PrivateIp The private IPv4 IP-Address (IPv4 address).
	PrivateIp string `json:"private_ip"`

	// PublicIp The public IPv4 IP-Address (IPv4 address).
	PublicIp string `json:"public_ip"`

	// PublicIpType When set to `static`, the instance's public IP will not change between start and stop actions.
	PublicIpType ComputeV1InstancePublicIPType `json:"public_ip_type"`

	// Region The region identifier.
	Region ComputeV1Region `json:"region"`

	// SecurityGroups The security groups of the instance.
	SecurityGroups []struct {
		// Id The security group ID.
		Id *ComputeV1InstanceSecurityGroupId `json:"id,omitempty"`

		// Name The name of the security group.
		Name *string `json:"name,omitempty"`
	} `json:"security_groups"`

	// SshKeys The ssh keys of the instance.
	SshKeys []struct {
		// Id The ssh key ID.
		Id *ComputeV1InstanceSSHKeyId `json:"id,omitempty"`

		// Name The name of the ssh key.
		Name *string `json:"name,omitempty"`
	} `json:"ssh_keys"`

	// Status The instance status
	Status ComputeV1InstanceStatus `json:"status"`

	// Type The instance type identifier.
	Type      ComputeV1InstanceType `json:"type"`
	UpdatedAt Timestamp             `json:"updated_at"`

	// Volumes The volumes of the instance
	Volumes []struct {
		// Id A unique identifier for each volume. This is automatically generated.
		Id *ComputeV1VolumeId `json:"id,omitempty"`

		// Name The volume name.
		Name *string `json:"name,omitempty"`
	} `json:"volumes"`
}

ComputeV1Instance defines model for compute.v1.Instance.

type ComputeV1InstanceAction

type ComputeV1InstanceAction string

ComputeV1InstanceAction defines model for compute.v1.Instance.Action.

const (
	ComputeV1InstanceActionStart ComputeV1InstanceAction = "start"
	ComputeV1InstanceActionStop  ComputeV1InstanceAction = "stop"
)

Defines values for ComputeV1InstanceAction.

type ComputeV1InstanceCreateSnapshotResponse

type ComputeV1InstanceCreateSnapshotResponse struct {
	Snapshot ComputeV1Snapshot `json:"snapshot"`
}

ComputeV1InstanceCreateSnapshotResponse response

type ComputeV1InstanceHostname

type ComputeV1InstanceHostname = string

ComputeV1InstanceHostname The hostname of your instance.

type ComputeV1InstanceIsProtected

type ComputeV1InstanceIsProtected = bool

ComputeV1InstanceIsProtected Specifies if the instance is termination protected. When set to `true`, it"s not possible to destroy the instance until it"s switched to `false`. Set to `true` automatically for long-term billed instances.

type ComputeV1InstanceListActionsResponse

type ComputeV1InstanceListActionsResponse struct {
	Actions []ComputeV1InstanceAction `json:"actions"`
}

ComputeV1InstanceListActionsResponse response

type ComputeV1InstanceName

type ComputeV1InstanceName = string

ComputeV1InstanceName The human-readable name set for the instance.

type ComputeV1InstancePublicIPType

type ComputeV1InstancePublicIPType string

ComputeV1InstancePublicIPType When set to `static`, the instance's public IP will not change between start and stop actions.

const (
	ComputeV1InstancePublicIPTypeDynamic ComputeV1InstancePublicIPType = "dynamic"
	ComputeV1InstancePublicIPTypeStatic  ComputeV1InstancePublicIPType = "static"
)

Defines values for ComputeV1InstancePublicIPType.

type ComputeV1InstanceSSHKeyId

type ComputeV1InstanceSSHKeyId = string

ComputeV1InstanceSSHKeyId The ssh key ID.

type ComputeV1InstanceSecurityGroupId

type ComputeV1InstanceSecurityGroupId = string

ComputeV1InstanceSecurityGroupId The security group ID.

type ComputeV1InstanceSecurityGroupIds

type ComputeV1InstanceSecurityGroupIds = []ComputeV1InstanceSecurityGroupId

ComputeV1InstanceSecurityGroupIds An array of security group ids. **Please Note**: By default the **standard security group** is set if you don"t specify any Security Groups. You can override this behavior by providing a different Security Group.

type ComputeV1InstanceStatus

type ComputeV1InstanceStatus string

ComputeV1InstanceStatus The instance status

const (
	ComputeV1InstanceStatusActive     ComputeV1InstanceStatus = "active"
	ComputeV1InstanceStatusCreating   ComputeV1InstanceStatus = "creating"
	ComputeV1InstanceStatusDeleting   ComputeV1InstanceStatus = "deleting"
	ComputeV1InstanceStatusEnqueued   ComputeV1InstanceStatus = "enqueued"
	ComputeV1InstanceStatusError      ComputeV1InstanceStatus = "error"
	ComputeV1InstanceStatusRestarting ComputeV1InstanceStatus = "restarting"
	ComputeV1InstanceStatusShutoff    ComputeV1InstanceStatus = "shutoff"
	ComputeV1InstanceStatusStarting   ComputeV1InstanceStatus = "starting"
	ComputeV1InstanceStatusStopping   ComputeV1InstanceStatus = "stopping"
)

Defines values for ComputeV1InstanceStatus.

type ComputeV1InstanceType

type ComputeV1InstanceType string

ComputeV1InstanceType The instance type identifier.

const (
	ComputeV1InstanceTypeVcpu12Memory24gDisk80g              ComputeV1InstanceType = "vcpu-12_memory-24g_disk-80g"
	ComputeV1InstanceTypeVcpu12Memory36gDisk80gNvidia1080ti3 ComputeV1InstanceType = "vcpu-12_memory-36g_disk-80g_nvidia1080ti-3"
	ComputeV1InstanceTypeVcpu12Memory36gDisk80gNvidia3060ti3 ComputeV1InstanceType = "vcpu-12_memory-36g_disk-80g_nvidia3060ti-3"
	ComputeV1InstanceTypeVcpu12Memory36gDisk80gNvidia30803   ComputeV1InstanceType = "vcpu-12_memory-36g_disk-80g_nvidia3080-3"
	ComputeV1InstanceTypeVcpu12Memory72gDisk80gNvidia30903   ComputeV1InstanceType = "vcpu-12_memory-72g_disk-80g_nvidia3090-3"
	ComputeV1InstanceTypeVcpu16Memory32gDisk80g              ComputeV1InstanceType = "vcpu-16_memory-32g_disk-80g"
	ComputeV1InstanceTypeVcpu16Memory48gDisk80gNvidia1080ti4 ComputeV1InstanceType = "vcpu-16_memory-48g_disk-80g_nvidia1080ti-4"
	ComputeV1InstanceTypeVcpu16Memory48gDisk80gNvidia3060ti4 ComputeV1InstanceType = "vcpu-16_memory-48g_disk-80g_nvidia3060ti-4"
	ComputeV1InstanceTypeVcpu16Memory48gDisk80gNvidia30804   ComputeV1InstanceType = "vcpu-16_memory-48g_disk-80g_nvidia3080-4"
	ComputeV1InstanceTypeVcpu16Memory64gDisk80gNvidia30802   ComputeV1InstanceType = "vcpu-16_memory-64g_disk-80g_nvidia3080-2"
	ComputeV1InstanceTypeVcpu16Memory96gDisk80gNvidia30902   ComputeV1InstanceType = "vcpu-16_memory-96g_disk-80g_nvidia3090-2"
	ComputeV1InstanceTypeVcpu16Memory96gDisk80gNvidia30904   ComputeV1InstanceType = "vcpu-16_memory-96g_disk-80g_nvidia3090-4"
	ComputeV1InstanceTypeVcpu20Memory120gDisk80gNvidia30905  ComputeV1InstanceType = "vcpu-20_memory-120g_disk-80g_nvidia3090-5"
	ComputeV1InstanceTypeVcpu20Memory40gDisk80g              ComputeV1InstanceType = "vcpu-20_memory-40g_disk-80g"
	ComputeV1InstanceTypeVcpu20Memory60gDisk80gNvidia1080ti5 ComputeV1InstanceType = "vcpu-20_memory-60g_disk-80g_nvidia1080ti-5"
	ComputeV1InstanceTypeVcpu20Memory60gDisk80gNvidia3060ti5 ComputeV1InstanceType = "vcpu-20_memory-60g_disk-80g_nvidia3060ti-5"
	ComputeV1InstanceTypeVcpu20Memory60gDisk80gNvidia30805   ComputeV1InstanceType = "vcpu-20_memory-60g_disk-80g_nvidia3080-5"
	ComputeV1InstanceTypeVcpu24Memory144gDisk80gNvidia30903  ComputeV1InstanceType = "vcpu-24_memory-144g_disk-80g_nvidia3090-3"
	ComputeV1InstanceTypeVcpu24Memory144gDisk80gNvidia30906  ComputeV1InstanceType = "vcpu-24_memory-144g_disk-80g_nvidia3090-6"
	ComputeV1InstanceTypeVcpu24Memory48gDisk80g              ComputeV1InstanceType = "vcpu-24_memory-48g_disk-80g"
	ComputeV1InstanceTypeVcpu24Memory72gDisk80gNvidia1080ti6 ComputeV1InstanceType = "vcpu-24_memory-72g_disk-80g_nvidia1080ti-6"
	ComputeV1InstanceTypeVcpu24Memory72gDisk80gNvidia3060ti6 ComputeV1InstanceType = "vcpu-24_memory-72g_disk-80g_nvidia3060ti-6"
	ComputeV1InstanceTypeVcpu24Memory72gDisk80gNvidia30806   ComputeV1InstanceType = "vcpu-24_memory-72g_disk-80g_nvidia3080-6"
	ComputeV1InstanceTypeVcpu24Memory96gDisk80gNvidia30803   ComputeV1InstanceType = "vcpu-24_memory-96g_disk-80g_nvidia3080-3"
	ComputeV1InstanceTypeVcpu28Memory168gDisk80gNvidia30907  ComputeV1InstanceType = "vcpu-28_memory-168g_disk-80g_nvidia3090-7"
	ComputeV1InstanceTypeVcpu28Memory84gDisk80gNvidia1080ti7 ComputeV1InstanceType = "vcpu-28_memory-84g_disk-80g_nvidia1080ti-7"
	ComputeV1InstanceTypeVcpu28Memory84gDisk80gNvidia3060ti7 ComputeV1InstanceType = "vcpu-28_memory-84g_disk-80g_nvidia3060ti-7"
	ComputeV1InstanceTypeVcpu28Memory84gDisk80gNvidia30807   ComputeV1InstanceType = "vcpu-28_memory-84g_disk-80g_nvidia3080-7"
	ComputeV1InstanceTypeVcpu2Memory4gDisk80g                ComputeV1InstanceType = "vcpu-2_memory-4g_disk-80g"
	ComputeV1InstanceTypeVcpu2Memory8gDisk80gAmdrx4704       ComputeV1InstanceType = "vcpu-2_memory-8g_disk-80g_amdrx470-4"
	ComputeV1InstanceTypeVcpu2Memory8gDisk80gAmdrx4705       ComputeV1InstanceType = "vcpu-2_memory-8g_disk-80g_amdrx470-5"
	ComputeV1InstanceTypeVcpu2Memory8gDisk80gAmdrx4706       ComputeV1InstanceType = "vcpu-2_memory-8g_disk-80g_amdrx470-6"
	ComputeV1InstanceTypeVcpu2Memory8gDisk80gAmdrx4707       ComputeV1InstanceType = "vcpu-2_memory-8g_disk-80g_amdrx470-7"
	ComputeV1InstanceTypeVcpu2Memory8gDisk80gAmdrx4708       ComputeV1InstanceType = "vcpu-2_memory-8g_disk-80g_amdrx470-8"
	ComputeV1InstanceTypeVcpu32Memory128gDisk80gNvidia30804  ComputeV1InstanceType = "vcpu-32_memory-128g_disk-80g_nvidia3080-4"
	ComputeV1InstanceTypeVcpu32Memory192gDisk80gNvidia30904  ComputeV1InstanceType = "vcpu-32_memory-192g_disk-80g_nvidia3090-4"
	ComputeV1InstanceTypeVcpu32Memory192gDisk80gNvidia30908  ComputeV1InstanceType = "vcpu-32_memory-192g_disk-80g_nvidia3090-8"
	ComputeV1InstanceTypeVcpu32Memory96gDisk80gNvidia1080ti8 ComputeV1InstanceType = "vcpu-32_memory-96g_disk-80g_nvidia1080ti-8"
	ComputeV1InstanceTypeVcpu32Memory96gDisk80gNvidia3060ti8 ComputeV1InstanceType = "vcpu-32_memory-96g_disk-80g_nvidia3060ti-8"
	ComputeV1InstanceTypeVcpu32Memory96gDisk80gNvidia30808   ComputeV1InstanceType = "vcpu-32_memory-96g_disk-80g_nvidia3080-8"
	ComputeV1InstanceTypeVcpu4Memory12gDisk80gNvidia1080ti1  ComputeV1InstanceType = "vcpu-4_memory-12g_disk-80g_nvidia1080ti-1"
	ComputeV1InstanceTypeVcpu4Memory12gDisk80gNvidia3060ti1  ComputeV1InstanceType = "vcpu-4_memory-12g_disk-80g_nvidia3060ti-1"
	ComputeV1InstanceTypeVcpu4Memory12gDisk80gNvidia30801    ComputeV1InstanceType = "vcpu-4_memory-12g_disk-80g_nvidia3080-1"
	ComputeV1InstanceTypeVcpu4Memory24gDisk80gNvidia30901    ComputeV1InstanceType = "vcpu-4_memory-24g_disk-80g_nvidia3090-1"
	ComputeV1InstanceTypeVcpu4Memory8gDisk80g                ComputeV1InstanceType = "vcpu-4_memory-8g_disk-80g"
	ComputeV1InstanceTypeVcpu8Memory16gDisk80g               ComputeV1InstanceType = "vcpu-8_memory-16g_disk-80g"
	ComputeV1InstanceTypeVcpu8Memory24gDisk80gNvidia1080ti2  ComputeV1InstanceType = "vcpu-8_memory-24g_disk-80g_nvidia1080ti-2"
	ComputeV1InstanceTypeVcpu8Memory24gDisk80gNvidia3060ti2  ComputeV1InstanceType = "vcpu-8_memory-24g_disk-80g_nvidia3060ti-2"
	ComputeV1InstanceTypeVcpu8Memory24gDisk80gNvidia30802    ComputeV1InstanceType = "vcpu-8_memory-24g_disk-80g_nvidia3080-2"
	ComputeV1InstanceTypeVcpu8Memory32gDisk80gNvidia30801    ComputeV1InstanceType = "vcpu-8_memory-32g_disk-80g_nvidia3080-1"
	ComputeV1InstanceTypeVcpu8Memory48gDisk80gNvidia30901    ComputeV1InstanceType = "vcpu-8_memory-48g_disk-80g_nvidia3090-1"
	ComputeV1InstanceTypeVcpu8Memory48gDisk80gNvidia30902    ComputeV1InstanceType = "vcpu-8_memory-48g_disk-80g_nvidia3090-2"
)

Defines values for ComputeV1InstanceType.

type ComputeV1ListImagesResponse

type ComputeV1ListImagesResponse struct {
	Images     []ComputeV1Image `json:"images"`
	Page       int              `json:"page"`
	PerPage    int              `json:"per_page"`
	TotalCount int              `json:"total_count"`
}

ComputeV1ListImagesResponse response

type ComputeV1ListInstancesResponse

type ComputeV1ListInstancesResponse struct {
	Instances  []ComputeV1Instance `json:"instances"`
	Page       int                 `json:"page"`
	PerPage    int                 `json:"per_page"`
	TotalCount int                 `json:"total_count"`
}

ComputeV1ListInstancesResponse response

type ComputeV1ListSSHKeysResponse

type ComputeV1ListSSHKeysResponse struct {
	Page       int               `json:"page"`
	PerPage    int               `json:"per_page"`
	SshKeys    []ComputeV1SSHKey `json:"ssh_keys"`
	TotalCount int               `json:"total_count"`
}

ComputeV1ListSSHKeysResponse response

type ComputeV1ListSecurityGroupsResponse

type ComputeV1ListSecurityGroupsResponse struct {
	Page           int                      `json:"page"`
	PerPage        int                      `json:"per_page"`
	SecurityGroups []ComputeV1SecurityGroup `json:"security_groups"`
	TotalCount     int                      `json:"total_count"`
}

ComputeV1ListSecurityGroupsResponse response

type ComputeV1ListSnapshotsResponse

type ComputeV1ListSnapshotsResponse struct {
	Page       int                 `json:"page"`
	PerPage    int                 `json:"per_page"`
	Snapshots  []ComputeV1Snapshot `json:"snapshots"`
	TotalCount int                 `json:"total_count"`
}

ComputeV1ListSnapshotsResponse response

type ComputeV1ListVolumesResponse

type ComputeV1ListVolumesResponse struct {
	Page       int               `json:"page"`
	PerPage    int               `json:"per_page"`
	TotalCount int               `json:"total_count"`
	Volumes    []ComputeV1Volume `json:"volumes"`
}

ComputeV1ListVolumesResponse response

type ComputeV1PlacementOption

type ComputeV1PlacementOption string

ComputeV1PlacementOption The placement option identifier.

const (
	ComputeV1PlacementOptionA    ComputeV1PlacementOption = "A"
	ComputeV1PlacementOptionAUTO ComputeV1PlacementOption = "AUTO"
	ComputeV1PlacementOptionB    ComputeV1PlacementOption = "B"
)

Defines values for ComputeV1PlacementOption.

type ComputeV1Region

type ComputeV1Region string

ComputeV1Region The region identifier.

const (
	ComputeV1RegionARCISHAF1  ComputeV1Region = "ARC-IS-HAF-1"
	ComputeV1RegionNORDNOKRS1 ComputeV1Region = "NORD-NO-KRS-1"
)

Defines values for ComputeV1Region.

type ComputeV1SSHKey

type ComputeV1SSHKey struct {
	CreatedAt Timestamp `json:"created_at"`

	// Fingerprint The fingerprint of the SSH key.
	Fingerprint string `json:"fingerprint"`

	// Id A unique identifier for each SSH key. This is automatically generated.
	Id string `json:"id"`

	// Name The human-readable name for the SSH key.
	Name string `json:"name"`

	// Size The length of the SSH key.
	Size int `json:"size"`

	// Type The encryption algorithm type of the SSH key.
	Type string `json:"type"`

	// Value SSH public key.
	Value string `json:"value"`
}

ComputeV1SSHKey defines model for compute.v1.SSHKey.

type ComputeV1SecurityGroup

type ComputeV1SecurityGroup struct {
	CreatedAt Timestamp `json:"created_at"`

	// Description The human-readable description for the security group.
	Description string `json:"description"`

	// Id A unique identifier for each security group. This is automatically generated.
	Id string `json:"id"`

	// Name The human-readable name for the security group.
	Name string `json:"name"`

	// Region The region identifier.
	Region ComputeV1Region              `json:"region"`
	Rules  []ComputeV1SecurityGroupRule `json:"rules"`

	// Status The security group status.
	Status ComputeV1SecurityGroupStatus `json:"status"`
}

ComputeV1SecurityGroup defines model for compute.v1.SecurityGroup.

type ComputeV1SecurityGroupRule

type ComputeV1SecurityGroupRule struct {
	// Direction The direction of the rule.
	Direction ComputeV1SecurityGroupRuleDirection `json:"direction"`

	// PortRangeMax The maximum port number of the rule.
	PortRangeMax *int `json:"port_range_max,omitempty"`

	// PortRangeMin The minimum port number of the rule.
	PortRangeMin *int `json:"port_range_min,omitempty"`

	// Protocol The protocol of the rule.
	Protocol ComputeV1SecurityGroupRuleProtocol `json:"protocol"`
}

ComputeV1SecurityGroupRule defines model for compute.v1.SecurityGroup.Rule.

type ComputeV1SecurityGroupRuleDirection

type ComputeV1SecurityGroupRuleDirection string

ComputeV1SecurityGroupRuleDirection The direction of the rule.

const (
	ComputeV1SecurityGroupRuleDirectionEgress  ComputeV1SecurityGroupRuleDirection = "egress"
	ComputeV1SecurityGroupRuleDirectionIngress ComputeV1SecurityGroupRuleDirection = "ingress"
)

Defines values for ComputeV1SecurityGroupRuleDirection.

type ComputeV1SecurityGroupRuleProtocol

type ComputeV1SecurityGroupRuleProtocol string

ComputeV1SecurityGroupRuleProtocol The protocol of the rule.

const (
	ComputeV1SecurityGroupRuleProtocolAll  ComputeV1SecurityGroupRuleProtocol = "all"
	ComputeV1SecurityGroupRuleProtocolIcmp ComputeV1SecurityGroupRuleProtocol = "icmp"
	ComputeV1SecurityGroupRuleProtocolTcp  ComputeV1SecurityGroupRuleProtocol = "tcp"
	ComputeV1SecurityGroupRuleProtocolUdp  ComputeV1SecurityGroupRuleProtocol = "udp"
)

Defines values for ComputeV1SecurityGroupRuleProtocol.

type ComputeV1SecurityGroupStatus

type ComputeV1SecurityGroupStatus string

ComputeV1SecurityGroupStatus The security group status.

const (
	ComputeV1SecurityGroupStatusCreated  ComputeV1SecurityGroupStatus = "created"
	ComputeV1SecurityGroupStatusCreating ComputeV1SecurityGroupStatus = "creating"
	ComputeV1SecurityGroupStatusDeleting ComputeV1SecurityGroupStatus = "deleting"
	ComputeV1SecurityGroupStatusEnqueued ComputeV1SecurityGroupStatus = "enqueued"
	ComputeV1SecurityGroupStatusError    ComputeV1SecurityGroupStatus = "error"
	ComputeV1SecurityGroupStatusUpdating ComputeV1SecurityGroupStatus = "updating"
)

Defines values for ComputeV1SecurityGroupStatus.

type ComputeV1Snapshot

type ComputeV1Snapshot struct {
	CreatedAt Timestamp `json:"created_at"`

	// Id A unique identifier for each snapshot. This is automatically generated.
	Id string `json:"id"`

	// Name The human-readable name for the snapshot.
	Name string `json:"name"`

	// Region The region identifier.
	Region ComputeV1Region `json:"region"`

	// ResourceId The id of the resource (e.g. instance) that was snapshotted.
	ResourceId string `json:"resource_id"`

	// Size The storage size of this snapshot given in bytes.
	Size *string `json:"size,omitempty"`

	// Status The snapshot status.
	Status ComputeV1SnapshotStatus `json:"status"`
}

ComputeV1Snapshot defines model for compute.v1.Snapshot.

type ComputeV1SnapshotStatus

type ComputeV1SnapshotStatus string

ComputeV1SnapshotStatus The snapshot status.

const (
	ComputeV1SnapshotStatusAvailable    ComputeV1SnapshotStatus = "available"
	ComputeV1SnapshotStatusError        ComputeV1SnapshotStatus = "error"
	ComputeV1SnapshotStatusSnapshotting ComputeV1SnapshotStatus = "snapshotting"
)

Defines values for ComputeV1SnapshotStatus.

type ComputeV1UpdateInstanceResponse

type ComputeV1UpdateInstanceResponse struct {
	Instance ComputeV1Instance `json:"instance"`
}

ComputeV1UpdateInstanceResponse response

type ComputeV1UpdateSecurityGroupResponse

type ComputeV1UpdateSecurityGroupResponse struct {
	SecurityGroup ComputeV1SecurityGroup `json:"security_group"`
}

ComputeV1UpdateSecurityGroupResponse response

type ComputeV1UpdateSnapshotResponse

type ComputeV1UpdateSnapshotResponse struct {
	Snapshot ComputeV1Snapshot `json:"snapshot"`
}

ComputeV1UpdateSnapshotResponse response

type ComputeV1UpdateVolumeResponse

type ComputeV1UpdateVolumeResponse struct {
	Volume ComputeV1Volume `json:"volume"`
}

ComputeV1UpdateVolumeResponse response

type ComputeV1Volume

type ComputeV1Volume struct {
	CreatedAt Timestamp `json:"created_at"`

	// Description The human-readable description for the volume.
	Description string `json:"description"`

	// Id A unique identifier for each volume. This is automatically generated.
	Id ComputeV1VolumeId `json:"id"`

	// Instances The attached instances.
	Instances []struct {
		// Id The id of the attached instance.
		Id *string `json:"id,omitempty"`

		// Name The name of the attached instance.
		Name *string `json:"name,omitempty"`
	} `json:"instances"`

	// Name The human-readable name for the volume.
	Name string `json:"name"`

	// Region The region identifier.
	Region ComputeV1Region `json:"region"`

	// Size The storage size of this volume given in GiB.
	Size   int                   `json:"size"`
	Status ComputeV1VolumeStatus `json:"status"`
}

ComputeV1Volume defines model for compute.v1.Volume.

type ComputeV1VolumeId

type ComputeV1VolumeId = string

ComputeV1VolumeId A unique identifier for each volume. This is automatically generated.

type ComputeV1VolumeStatus

type ComputeV1VolumeStatus string

ComputeV1VolumeStatus defines model for compute.v1.Volume.Status.

const (
	ComputeV1VolumeStatusActive   ComputeV1VolumeStatus = "active"
	ComputeV1VolumeStatusCreating ComputeV1VolumeStatus = "creating"
	ComputeV1VolumeStatusError    ComputeV1VolumeStatus = "error"
)

Defines values for ComputeV1VolumeStatus.

type CreateInstanceJSONBody

type CreateInstanceJSONBody struct {
	// Hostname The hostname of your instance.
	Hostname ComputeV1InstanceHostname `json:"hostname"`

	// Image A unique number that can be used to identify and reference a specific image.
	Image ComputeV1ImageId `json:"image"`

	// IsProtected Specifies if the instance is termination protected.
	// When set to `true`, it"s not possible to destroy the instance until it"s switched to `false`.
	// Set to `true` automatically for long-term billed instances.
	IsProtected *ComputeV1InstanceIsProtected `json:"is_protected,omitempty"`

	// Metadata Option to provide metadata. Currently supported is `startup_script`.
	Metadata *struct {
		// StartupScript A plain text bash script or "cloud-config" file that will be executed after the first instance boot.
		// It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the **NVIDIA GPU driver**.
		// Learn more about [startup scripts and installing the GPU driver](https://support.com/support/solutions/articles/47001122478).
		StartupScript *string `json:"startup_script,omitempty"`
	} `json:"metadata,omitempty"`

	// Name The human-readable name set for the instance.
	Name ComputeV1InstanceName `json:"name"`

	// Password The password to access the instance.
	// Your password must have upper and lower chars, digits and length between 8-72.
	// **Please Note**: Only one of `ssh_keys` or `password` can be provided.
	// Password is less secure - we recommend you use an SSH key-pair.
	Password *string `json:"password,omitempty"`

	// PlacementOption The placement option identifier.
	PlacementOption *ComputeV1PlacementOption `json:"placement_option,omitempty"`

	// PublicIpType When set to `static`, the instance's public IP will not change between start and stop actions.
	PublicIpType *ComputeV1InstancePublicIPType `json:"public_ip_type,omitempty"`

	// Region The region identifier.
	Region *ComputeV1Region `json:"region,omitempty"`

	// SecurityGroups An array of security group ids.
	// **Please Note**: By default the **standard security group** is set if you don"t specify any Security Groups.
	// You can override this behavior by providing a different Security Group.
	SecurityGroups *ComputeV1InstanceSecurityGroupIds `json:"security_groups,omitempty"`

	// SshKeys An array of ssh key ids.
	// This should not be provided if `password` authentication method is desired.
	SshKeys *[]ComputeV1InstanceSSHKeyId `json:"ssh_keys,omitempty"`

	// Type The instance type identifier.
	Type ComputeV1InstanceType `json:"type"`

	// Volumes An array of volume ids.
	Volumes *[]ComputeV1VolumeId `json:"volumes,omitempty"`
}

CreateInstanceJSONBody defines parameters for CreateInstance.

type CreateInstanceJSONRequestBody

type CreateInstanceJSONRequestBody CreateInstanceJSONBody

CreateInstanceJSONRequestBody defines body for CreateInstance for application/json ContentType.

type CreateInstanceResponse

type CreateInstanceResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON201      *ComputeV1CreateInstanceResponse
	JSONDefault  *ComputeV1Error
}

func ParseCreateInstanceResponse

func ParseCreateInstanceResponse(rsp *http.Response) (*CreateInstanceResponse, error)

ParseCreateInstanceResponse parses an HTTP response from a CreateInstanceWithResponse call

func (CreateInstanceResponse) Status

func (r CreateInstanceResponse) Status() string

Status returns HTTPResponse.Status

func (CreateInstanceResponse) StatusCode

func (r CreateInstanceResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type CreateSSHKeyJSONBody

type CreateSSHKeyJSONBody struct {
	// Name The human-readable name for your ssh key.
	Name string `json:"name"`

	// Value SSH public key
	Value string `json:"value"`
}

CreateSSHKeyJSONBody defines parameters for CreateSSHKey.

type CreateSSHKeyJSONRequestBody

type CreateSSHKeyJSONRequestBody CreateSSHKeyJSONBody

CreateSSHKeyJSONRequestBody defines body for CreateSSHKey for application/json ContentType.

type CreateSSHKeyResponse

type CreateSSHKeyResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON201      *ComputeV1SSHKey
	JSONDefault  *ComputeV1Error
}

func ParseCreateSSHKeyResponse

func ParseCreateSSHKeyResponse(rsp *http.Response) (*CreateSSHKeyResponse, error)

ParseCreateSSHKeyResponse parses an HTTP response from a CreateSSHKeyWithResponse call

func (CreateSSHKeyResponse) Status

func (r CreateSSHKeyResponse) Status() string

Status returns HTTPResponse.Status

func (CreateSSHKeyResponse) StatusCode

func (r CreateSSHKeyResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type CreateSecurityGroupJSONBody

type CreateSecurityGroupJSONBody struct {
	// Description he human-readable description set for the security group.
	Description *string `json:"description,omitempty"`

	// Name The human-readable name set for the security group. **Please Note**: `default` and `standard` are not allowed names (reserved words).
	Name string `json:"name"`

	// Region The region identifier.
	Region *ComputeV1Region `json:"region,omitempty"`

	// Rules The list of rules of the security group.
	Rules []ComputeV1SecurityGroupRule `json:"rules"`
}

CreateSecurityGroupJSONBody defines parameters for CreateSecurityGroup.

type CreateSecurityGroupJSONRequestBody

type CreateSecurityGroupJSONRequestBody CreateSecurityGroupJSONBody

CreateSecurityGroupJSONRequestBody defines body for CreateSecurityGroup for application/json ContentType.

type CreateSecurityGroupResponse

type CreateSecurityGroupResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON201      *ComputeV1CreateSecurityGroupResponse
	JSONDefault  *ComputeV1Error
}

func ParseCreateSecurityGroupResponse

func ParseCreateSecurityGroupResponse(rsp *http.Response) (*CreateSecurityGroupResponse, error)

ParseCreateSecurityGroupResponse parses an HTTP response from a CreateSecurityGroupWithResponse call

func (CreateSecurityGroupResponse) Status

Status returns HTTPResponse.Status

func (CreateSecurityGroupResponse) StatusCode

func (r CreateSecurityGroupResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type CreateSnapshotJSONBody

type CreateSnapshotJSONBody struct {
	// Name Name of the snapshot
	Name string `json:"name"`
}

CreateSnapshotJSONBody defines parameters for CreateSnapshot.

type CreateSnapshotJSONRequestBody

type CreateSnapshotJSONRequestBody CreateSnapshotJSONBody

CreateSnapshotJSONRequestBody defines body for CreateSnapshot for application/json ContentType.

type CreateSnapshotResponse

type CreateSnapshotResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON201      *ComputeV1InstanceCreateSnapshotResponse
	JSONDefault  *ComputeV1Error
}

func ParseCreateSnapshotResponse

func ParseCreateSnapshotResponse(rsp *http.Response) (*CreateSnapshotResponse, error)

ParseCreateSnapshotResponse parses an HTTP response from a CreateSnapshotWithResponse call

func (CreateSnapshotResponse) Status

func (r CreateSnapshotResponse) Status() string

Status returns HTTPResponse.Status

func (CreateSnapshotResponse) StatusCode

func (r CreateSnapshotResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type CreateVolumeJSONBody

type CreateVolumeJSONBody struct {
	// Description The human-readable description set for the volume.
	Description string `json:"description"`

	// Name The human-readable name set for the volume.
	Name string `json:"name"`

	// Region The region identifier.
	Region *ComputeV1Region `json:"region,omitempty"`

	// Size The storage size of this volume given in GiB (Min: 1GiB).
	Size int `json:"size"`
}

CreateVolumeJSONBody defines parameters for CreateVolume.

type CreateVolumeJSONRequestBody

type CreateVolumeJSONRequestBody CreateVolumeJSONBody

CreateVolumeJSONRequestBody defines body for CreateVolume for application/json ContentType.

type CreateVolumeResponse

type CreateVolumeResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON201      *ComputeV1GetVolumeResponse
	JSONDefault  *ComputeV1Error
}

func ParseCreateVolumeResponse

func ParseCreateVolumeResponse(rsp *http.Response) (*CreateVolumeResponse, error)

ParseCreateVolumeResponse parses an HTTP response from a CreateVolumeWithResponse call

func (CreateVolumeResponse) Status

func (r CreateVolumeResponse) Status() string

Status returns HTTPResponse.Status

func (CreateVolumeResponse) StatusCode

func (r CreateVolumeResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type DeleteInstanceResponse

type DeleteInstanceResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSONDefault  *ComputeV1Error
}

func ParseDeleteInstanceResponse

func ParseDeleteInstanceResponse(rsp *http.Response) (*DeleteInstanceResponse, error)

ParseDeleteInstanceResponse parses an HTTP response from a DeleteInstanceWithResponse call

func (DeleteInstanceResponse) Status

func (r DeleteInstanceResponse) Status() string

Status returns HTTPResponse.Status

func (DeleteInstanceResponse) StatusCode

func (r DeleteInstanceResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type DeleteSSHKeyResponse

type DeleteSSHKeyResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSONDefault  *ComputeV1Error
}

func ParseDeleteSSHKeyResponse

func ParseDeleteSSHKeyResponse(rsp *http.Response) (*DeleteSSHKeyResponse, error)

ParseDeleteSSHKeyResponse parses an HTTP response from a DeleteSSHKeyWithResponse call

func (DeleteSSHKeyResponse) Status

func (r DeleteSSHKeyResponse) Status() string

Status returns HTTPResponse.Status

func (DeleteSSHKeyResponse) StatusCode

func (r DeleteSSHKeyResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type DeleteSecurityGroupResponse

type DeleteSecurityGroupResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSONDefault  *ComputeV1Error
}

func ParseDeleteSecurityGroupResponse

func ParseDeleteSecurityGroupResponse(rsp *http.Response) (*DeleteSecurityGroupResponse, error)

ParseDeleteSecurityGroupResponse parses an HTTP response from a DeleteSecurityGroupWithResponse call

func (DeleteSecurityGroupResponse) Status

Status returns HTTPResponse.Status

func (DeleteSecurityGroupResponse) StatusCode

func (r DeleteSecurityGroupResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type DeleteSnapshotResponse

type DeleteSnapshotResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSONDefault  *ComputeV1Error
}

func ParseDeleteSnapshotResponse

func ParseDeleteSnapshotResponse(rsp *http.Response) (*DeleteSnapshotResponse, error)

ParseDeleteSnapshotResponse parses an HTTP response from a DeleteSnapshotWithResponse call

func (DeleteSnapshotResponse) Status

func (r DeleteSnapshotResponse) Status() string

Status returns HTTPResponse.Status

func (DeleteSnapshotResponse) StatusCode

func (r DeleteSnapshotResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type DeleteVolumeResponse

type DeleteVolumeResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSONDefault  *ComputeV1Error
}

func ParseDeleteVolumeResponse

func ParseDeleteVolumeResponse(rsp *http.Response) (*DeleteVolumeResponse, error)

ParseDeleteVolumeResponse parses an HTTP response from a DeleteVolumeWithResponse call

func (DeleteVolumeResponse) Status

func (r DeleteVolumeResponse) Status() string

Status returns HTTPResponse.Status

func (DeleteVolumeResponse) StatusCode

func (r DeleteVolumeResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type Error

type Error = ComputeV1Error

Error defines model for Error.

type GetInstanceResponse

type GetInstanceResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1GetInstanceResponse
	JSONDefault  *ComputeV1Error
}

func ParseGetInstanceResponse

func ParseGetInstanceResponse(rsp *http.Response) (*GetInstanceResponse, error)

ParseGetInstanceResponse parses an HTTP response from a GetInstanceWithResponse call

func (GetInstanceResponse) Status

func (r GetInstanceResponse) Status() string

Status returns HTTPResponse.Status

func (GetInstanceResponse) StatusCode

func (r GetInstanceResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetSSHKeyResponse

type GetSSHKeyResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1SSHKey
	JSONDefault  *ComputeV1Error
}

func ParseGetSSHKeyResponse

func ParseGetSSHKeyResponse(rsp *http.Response) (*GetSSHKeyResponse, error)

ParseGetSSHKeyResponse parses an HTTP response from a GetSSHKeyWithResponse call

func (GetSSHKeyResponse) Status

func (r GetSSHKeyResponse) Status() string

Status returns HTTPResponse.Status

func (GetSSHKeyResponse) StatusCode

func (r GetSSHKeyResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetSecurityGroupResponse

type GetSecurityGroupResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1GetSecurityGroupResponse
	JSONDefault  *ComputeV1Error
}

func ParseGetSecurityGroupResponse

func ParseGetSecurityGroupResponse(rsp *http.Response) (*GetSecurityGroupResponse, error)

ParseGetSecurityGroupResponse parses an HTTP response from a GetSecurityGroupWithResponse call

func (GetSecurityGroupResponse) Status

func (r GetSecurityGroupResponse) Status() string

Status returns HTTPResponse.Status

func (GetSecurityGroupResponse) StatusCode

func (r GetSecurityGroupResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetSnapshotResponse

type GetSnapshotResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1GetSnapshotResponse
	JSONDefault  *ComputeV1Error
}

func ParseGetSnapshotResponse

func ParseGetSnapshotResponse(rsp *http.Response) (*GetSnapshotResponse, error)

ParseGetSnapshotResponse parses an HTTP response from a GetSnapshotWithResponse call

func (GetSnapshotResponse) Status

func (r GetSnapshotResponse) Status() string

Status returns HTTPResponse.Status

func (GetSnapshotResponse) StatusCode

func (r GetSnapshotResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetVolumeResponse

type GetVolumeResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1GetVolumeResponse
	JSONDefault  *ComputeV1Error
}

func ParseGetVolumeResponse

func ParseGetVolumeResponse(rsp *http.Response) (*GetVolumeResponse, error)

ParseGetVolumeResponse parses an HTTP response from a GetVolumeWithResponse call

func (GetVolumeResponse) Status

func (r GetVolumeResponse) Status() string

Status returns HTTPResponse.Status

func (GetVolumeResponse) StatusCode

func (r GetVolumeResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type HttpRequestDoer

type HttpRequestDoer interface {
	Do(req *http.Request) (*http.Response, error)
}

Doer performs HTTP requests.

The standard http.Client implements this interface.

type InstanceActionJSONBody

type InstanceActionJSONBody struct {
	Action *ComputeV1InstanceAction `json:"action,omitempty"`
}

InstanceActionJSONBody defines parameters for InstanceAction.

type InstanceActionJSONRequestBody

type InstanceActionJSONRequestBody InstanceActionJSONBody

InstanceActionJSONRequestBody defines body for InstanceAction for application/json ContentType.

type InstanceActionResponse

type InstanceActionResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSONDefault  *ComputeV1Error
}

func ParseInstanceActionResponse

func ParseInstanceActionResponse(rsp *http.Response) (*InstanceActionResponse, error)

ParseInstanceActionResponse parses an HTTP response from a InstanceActionWithResponse call

func (InstanceActionResponse) Status

func (r InstanceActionResponse) Status() string

Status returns HTTPResponse.Status

func (InstanceActionResponse) StatusCode

func (r InstanceActionResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type InstanceAvailabilityResponse

type InstanceAvailabilityResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1AvailabilityResponse
}

func ParseInstanceAvailabilityResponse

func ParseInstanceAvailabilityResponse(rsp *http.Response) (*InstanceAvailabilityResponse, error)

ParseInstanceAvailabilityResponse parses an HTTP response from a InstanceAvailabilityWithResponse call

func (InstanceAvailabilityResponse) Status

Status returns HTTPResponse.Status

func (InstanceAvailabilityResponse) StatusCode

func (r InstanceAvailabilityResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListImagesParams

type ListImagesParams struct {
	Page    *PageQueryParameter    `form:"page,omitempty" json:"page,omitempty"`
	PerPage *PerPageQueryParameter `form:"per_page,omitempty" json:"per_page,omitempty"`
	Type    *ComputeV1ImageType    `form:"type,omitempty" json:"type,omitempty"`
}

ListImagesParams defines parameters for ListImages.

type ListImagesResponse

type ListImagesResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1ListImagesResponse
	JSONDefault  *ComputeV1Error
}

func ParseListImagesResponse

func ParseListImagesResponse(rsp *http.Response) (*ListImagesResponse, error)

ParseListImagesResponse parses an HTTP response from a ListImagesWithResponse call

func (ListImagesResponse) Status

func (r ListImagesResponse) Status() string

Status returns HTTPResponse.Status

func (ListImagesResponse) StatusCode

func (r ListImagesResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListInstanceActionsResponse

type ListInstanceActionsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1InstanceListActionsResponse
	JSONDefault  *ComputeV1Error
}

func ParseListInstanceActionsResponse

func ParseListInstanceActionsResponse(rsp *http.Response) (*ListInstanceActionsResponse, error)

ParseListInstanceActionsResponse parses an HTTP response from a ListInstanceActionsWithResponse call

func (ListInstanceActionsResponse) Status

Status returns HTTPResponse.Status

func (ListInstanceActionsResponse) StatusCode

func (r ListInstanceActionsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListInstanceSnapshotsParams

type ListInstanceSnapshotsParams struct {
	Page    *PageQueryParameter    `form:"page,omitempty" json:"page,omitempty"`
	PerPage *PerPageQueryParameter `form:"per_page,omitempty" json:"per_page,omitempty"`
}

ListInstanceSnapshotsParams defines parameters for ListInstanceSnapshots.

type ListInstanceSnapshotsResponse

type ListInstanceSnapshotsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1ListSnapshotsResponse
	JSONDefault  *ComputeV1Error
}

func ParseListInstanceSnapshotsResponse

func ParseListInstanceSnapshotsResponse(rsp *http.Response) (*ListInstanceSnapshotsResponse, error)

ParseListInstanceSnapshotsResponse parses an HTTP response from a ListInstanceSnapshotsWithResponse call

func (ListInstanceSnapshotsResponse) Status

Status returns HTTPResponse.Status

func (ListInstanceSnapshotsResponse) StatusCode

func (r ListInstanceSnapshotsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListInstancesParams

type ListInstancesParams struct {
	Page    *PageQueryParameter    `form:"page,omitempty" json:"page,omitempty"`
	PerPage *PerPageQueryParameter `form:"per_page,omitempty" json:"per_page,omitempty"`
}

ListInstancesParams defines parameters for ListInstances.

type ListInstancesResponse

type ListInstancesResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1ListInstancesResponse
	JSONDefault  *ComputeV1Error
}

func ParseListInstancesResponse

func ParseListInstancesResponse(rsp *http.Response) (*ListInstancesResponse, error)

ParseListInstancesResponse parses an HTTP response from a ListInstancesWithResponse call

func (ListInstancesResponse) Status

func (r ListInstancesResponse) Status() string

Status returns HTTPResponse.Status

func (ListInstancesResponse) StatusCode

func (r ListInstancesResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListSSHKeysParams

type ListSSHKeysParams struct {
	Page    *PageQueryParameter    `form:"page,omitempty" json:"page,omitempty"`
	PerPage *PerPageQueryParameter `form:"per_page,omitempty" json:"per_page,omitempty"`
}

ListSSHKeysParams defines parameters for ListSSHKeys.

type ListSSHKeysResponse

type ListSSHKeysResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1ListSSHKeysResponse
	JSONDefault  *ComputeV1Error
}

func ParseListSSHKeysResponse

func ParseListSSHKeysResponse(rsp *http.Response) (*ListSSHKeysResponse, error)

ParseListSSHKeysResponse parses an HTTP response from a ListSSHKeysWithResponse call

func (ListSSHKeysResponse) Status

func (r ListSSHKeysResponse) Status() string

Status returns HTTPResponse.Status

func (ListSSHKeysResponse) StatusCode

func (r ListSSHKeysResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListSecurityGroupsParams

type ListSecurityGroupsParams struct {
	Page    *PageQueryParameter    `form:"page,omitempty" json:"page,omitempty"`
	PerPage *PerPageQueryParameter `form:"per_page,omitempty" json:"per_page,omitempty"`
}

ListSecurityGroupsParams defines parameters for ListSecurityGroups.

type ListSecurityGroupsResponse

type ListSecurityGroupsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1ListSecurityGroupsResponse
	JSONDefault  *ComputeV1Error
}

func ParseListSecurityGroupsResponse

func ParseListSecurityGroupsResponse(rsp *http.Response) (*ListSecurityGroupsResponse, error)

ParseListSecurityGroupsResponse parses an HTTP response from a ListSecurityGroupsWithResponse call

func (ListSecurityGroupsResponse) Status

Status returns HTTPResponse.Status

func (ListSecurityGroupsResponse) StatusCode

func (r ListSecurityGroupsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListSnapshotsParams

type ListSnapshotsParams struct {
	Page    *PageQueryParameter    `form:"page,omitempty" json:"page,omitempty"`
	PerPage *PerPageQueryParameter `form:"per_page,omitempty" json:"per_page,omitempty"`
}

ListSnapshotsParams defines parameters for ListSnapshots.

type ListSnapshotsResponse

type ListSnapshotsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1ListSnapshotsResponse
	JSONDefault  *ComputeV1Error
}

func ParseListSnapshotsResponse

func ParseListSnapshotsResponse(rsp *http.Response) (*ListSnapshotsResponse, error)

ParseListSnapshotsResponse parses an HTTP response from a ListSnapshotsWithResponse call

func (ListSnapshotsResponse) Status

func (r ListSnapshotsResponse) Status() string

Status returns HTTPResponse.Status

func (ListSnapshotsResponse) StatusCode

func (r ListSnapshotsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListVolumesParams

type ListVolumesParams struct {
	Page    *PageQueryParameter    `form:"page,omitempty" json:"page,omitempty"`
	PerPage *PerPageQueryParameter `form:"per_page,omitempty" json:"per_page,omitempty"`
}

ListVolumesParams defines parameters for ListVolumes.

type ListVolumesResponse

type ListVolumesResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1ListVolumesResponse
	JSONDefault  *ComputeV1Error
}

func ParseListVolumesResponse

func ParseListVolumesResponse(rsp *http.Response) (*ListVolumesResponse, error)

ParseListVolumesResponse parses an HTTP response from a ListVolumesWithResponse call

func (ListVolumesResponse) Status

func (r ListVolumesResponse) Status() string

Status returns HTTPResponse.Status

func (ListVolumesResponse) StatusCode

func (r ListVolumesResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type PageQueryParameter

type PageQueryParameter = int

PageQueryParameter A positive integer to choose the page to return.

type PerPageQueryParameter

type PerPageQueryParameter = int

PerPageQueryParameter A positive integer lower or equal to 100 to select the number of items to return.

type RequestEditorFn

type RequestEditorFn func(ctx context.Context, req *http.Request) error

RequestEditorFn is the function signature for the RequestEditor callback function

type Timestamp

type Timestamp = time.Time

Timestamp defines model for Timestamp.

type UpdateInstanceJSONBody

type UpdateInstanceJSONBody struct {
	// IsProtected Specifies if the instance is termination protected.
	// When set to `true`, it"s not possible to destroy the instance until it"s switched to `false`.
	// Set to `true` automatically for long-term billed instances.
	IsProtected *ComputeV1InstanceIsProtected `json:"is_protected,omitempty"`

	// Name The human-readable name set for the instance.
	Name *ComputeV1InstanceName `json:"name,omitempty"`

	// SecurityGroups An array of security group ids.
	// **Please Note**: By default the **standard security group** is set if you don"t specify any Security Groups.
	// You can override this behavior by providing a different Security Group.
	SecurityGroups *ComputeV1InstanceSecurityGroupIds `json:"security_groups,omitempty"`

	// Volumes The instance's volumes IDs.
	Volumes *[]ComputeV1VolumeId `json:"volumes,omitempty"`
}

UpdateInstanceJSONBody defines parameters for UpdateInstance.

type UpdateInstanceJSONRequestBody

type UpdateInstanceJSONRequestBody UpdateInstanceJSONBody

UpdateInstanceJSONRequestBody defines body for UpdateInstance for application/json ContentType.

type UpdateInstanceResponse

type UpdateInstanceResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1UpdateInstanceResponse
	JSONDefault  *ComputeV1Error
}

func ParseUpdateInstanceResponse

func ParseUpdateInstanceResponse(rsp *http.Response) (*UpdateInstanceResponse, error)

ParseUpdateInstanceResponse parses an HTTP response from a UpdateInstanceWithResponse call

func (UpdateInstanceResponse) Status

func (r UpdateInstanceResponse) Status() string

Status returns HTTPResponse.Status

func (UpdateInstanceResponse) StatusCode

func (r UpdateInstanceResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type UpdateSSHKeyJSONBody

type UpdateSSHKeyJSONBody struct {
	// Name The new human-readable name for your ssh key.
	Name string `json:"name"`
}

UpdateSSHKeyJSONBody defines parameters for UpdateSSHKey.

type UpdateSSHKeyJSONRequestBody

type UpdateSSHKeyJSONRequestBody UpdateSSHKeyJSONBody

UpdateSSHKeyJSONRequestBody defines body for UpdateSSHKey for application/json ContentType.

type UpdateSSHKeyResponse

type UpdateSSHKeyResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1SSHKey
	JSONDefault  *ComputeV1Error
}

func ParseUpdateSSHKeyResponse

func ParseUpdateSSHKeyResponse(rsp *http.Response) (*UpdateSSHKeyResponse, error)

ParseUpdateSSHKeyResponse parses an HTTP response from a UpdateSSHKeyWithResponse call

func (UpdateSSHKeyResponse) Status

func (r UpdateSSHKeyResponse) Status() string

Status returns HTTPResponse.Status

func (UpdateSSHKeyResponse) StatusCode

func (r UpdateSSHKeyResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type UpdateSecurityGroupJSONBody

type UpdateSecurityGroupJSONBody struct {
	// Description he human-readable description set for the security group.
	Description *string `json:"description,omitempty"`

	// Name The human-readable name set for the security group.
	Name string `json:"name"`

	// Rules The list of rules of the security group.
	Rules []ComputeV1SecurityGroupRule `json:"rules"`
}

UpdateSecurityGroupJSONBody defines parameters for UpdateSecurityGroup.

type UpdateSecurityGroupJSONRequestBody

type UpdateSecurityGroupJSONRequestBody UpdateSecurityGroupJSONBody

UpdateSecurityGroupJSONRequestBody defines body for UpdateSecurityGroup for application/json ContentType.

type UpdateSecurityGroupResponse

type UpdateSecurityGroupResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1UpdateSecurityGroupResponse
	JSONDefault  *ComputeV1Error
}

func ParseUpdateSecurityGroupResponse

func ParseUpdateSecurityGroupResponse(rsp *http.Response) (*UpdateSecurityGroupResponse, error)

ParseUpdateSecurityGroupResponse parses an HTTP response from a UpdateSecurityGroupWithResponse call

func (UpdateSecurityGroupResponse) Status

Status returns HTTPResponse.Status

func (UpdateSecurityGroupResponse) StatusCode

func (r UpdateSecurityGroupResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type UpdateSnapshotJSONBody

type UpdateSnapshotJSONBody struct {
	// Name The new human-readable name for your snapshot.
	Name string `json:"name"`
}

UpdateSnapshotJSONBody defines parameters for UpdateSnapshot.

type UpdateSnapshotJSONRequestBody

type UpdateSnapshotJSONRequestBody UpdateSnapshotJSONBody

UpdateSnapshotJSONRequestBody defines body for UpdateSnapshot for application/json ContentType.

type UpdateSnapshotResponse

type UpdateSnapshotResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1UpdateSnapshotResponse
	JSONDefault  *ComputeV1Error
}

func ParseUpdateSnapshotResponse

func ParseUpdateSnapshotResponse(rsp *http.Response) (*UpdateSnapshotResponse, error)

ParseUpdateSnapshotResponse parses an HTTP response from a UpdateSnapshotWithResponse call

func (UpdateSnapshotResponse) Status

func (r UpdateSnapshotResponse) Status() string

Status returns HTTPResponse.Status

func (UpdateSnapshotResponse) StatusCode

func (r UpdateSnapshotResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type UpdateVolumeJSONBody

type UpdateVolumeJSONBody struct {
	// Description The human-readable description set for the volume.
	Description string `json:"description"`

	// Name The human-readable name set for the volume.
	Name string `json:"name"`
}

UpdateVolumeJSONBody defines parameters for UpdateVolume.

type UpdateVolumeJSONRequestBody

type UpdateVolumeJSONRequestBody UpdateVolumeJSONBody

UpdateVolumeJSONRequestBody defines body for UpdateVolume for application/json ContentType.

type UpdateVolumeResponse

type UpdateVolumeResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ComputeV1UpdateVolumeResponse
	JSONDefault  *ComputeV1Error
}

func ParseUpdateVolumeResponse

func ParseUpdateVolumeResponse(rsp *http.Response) (*UpdateVolumeResponse, error)

ParseUpdateVolumeResponse parses an HTTP response from a UpdateVolumeWithResponse call

func (UpdateVolumeResponse) Status

func (r UpdateVolumeResponse) Status() string

Status returns HTTPResponse.Status

func (UpdateVolumeResponse) StatusCode

func (r UpdateVolumeResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

Directories

Path Synopsis
examples
list-instances command

Jump to

Keyboard shortcuts

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