goss

package module
v0.0.6 Latest Latest
Warning

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

Go to latest
Published: Apr 17, 2020 License: MIT Imports: 5 Imported by: 0

README

API implementation for ScalableSpace products in Go

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	Instances *Instances
	Plans     *Plans
}

func NewClient

func NewClient(baseUrl, apiKey string) *Client

func NewClientFromToken

func NewClientFromToken(apiKey string) *Client

type ConnectionInfo added in v0.0.4

type ConnectionInfo struct {
	MasterHost  string `json:"master_host"`
	ReplicaHost string `json:"replica_host"`
}

type Instance

type Instance struct {
	ID             string         `json:"id"`
	Name           string         `json:"name"`
	Kind           string         `json:"kind"`
	Password       string         `json:"password"`
	State          string         `json:"state"`
	Enabled        bool           `json:"enabled"`
	Whitelist      []string       `json:"whitelist"`
	PlanID         string         `json:"plan_id"`
	LicenseKey     *string        `json:"license_key,omitempty"`
	EvictionPolicy *string        `json:"eviction_policy,omitempty"`
	ConnectionInfo ConnectionInfo `json:"connection_info"`
	CreatedAt      time.Time      `json:"created_at"`
}

type InstanceCreateRequest added in v0.0.4

type InstanceCreateRequest struct {
	Name           string   `json:"name,omitempty"`
	Password       string   `json:"password,omitempty"`
	PlanID         string   `json:"plan_id,omitempty"`
	Whitelist      []string `json:"whitelist,omitempty"`
	LicenseKey     string   `json:"license_key,omitempty"`     // only for keydb-pro
	EvictionPolicy string   `json:"eviction_policy,omitempty"` // only for keydb-pro, redis, keydb
}

type InstanceUpdateRequest added in v0.0.4

type InstanceUpdateRequest struct {
	ID             string   `json:"-"`
	Name           string   `json:"name,omitempty"`
	Password       string   `json:"password,omitempty"`
	PlanID         string   `json:"plan_id,omitempty"`
	Whitelist      []string `json:"whitelist,omitempty"`
	Enabled        *bool    `json:"enabled,omitempty"`
	LicenseKey     string   `json:"license_key,omitempty"`     // only for keydb-pro
	EvictionPolicy string   `json:"eviction_policy,omitempty"` // only for keydb-pro, redis, keydb
}

type Instances

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

func (*Instances) Create

func (s *Instances) Create(instanceCreqteRequest *InstanceCreateRequest) (*Instance, error)

func (*Instances) Delete

func (s *Instances) Delete(id string) error

func (*Instances) Get

func (s *Instances) Get(id string) (*Instance, error)

func (*Instances) List

func (s *Instances) List() ([]*Instance, error)

func (*Instances) Update added in v0.0.4

func (s *Instances) Update(instanceUpdateRequest *InstanceUpdateRequest) (*Instance, error)

type Plan

type Plan struct {
	ID     string  `json:"id"`
	Kind   string  `json:"kind"`
	Name   string  `json:"name"`
	Price  float64 `json:"price"`
	Cloud  string  `json:"cloud"`
	Region string  `json:"region"`
}

type PlanFindRequest added in v0.0.4

type PlanFindRequest struct {
	Kind   string `url:"kind"`
	Name   string `url:"name"`
	Cloud  string `url:"cloud"`
	Region string `url:"region"`
}

type Plans

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

func (*Plans) Find

func (s *Plans) Find(planFindRequest *PlanFindRequest) (*Plan, error)

func (*Plans) Get

func (s *Plans) Get(id string) (*Plan, error)

func (*Plans) List

func (s *Plans) List() ([]*Plan, error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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