clc

package module
Version: v0.0.0-...-f62483c Latest Latest
Warning

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

Go to latest
Published: Oct 4, 2016 License: Apache-2.0 Imports: 8 Imported by: 98

README

CLC SDK (for go!) Build Status Coverage Status

Installation

$ go get github.com/CenturyLinkCloud/clc-sdk
$ make deps
$ make test

Configuration

The SDK supports the following helpers for creating your configuration

Reading from the environment

config, _ := api.EnvConfig()

Reading from a file

config, _ := api.FileConfig("./config.json")

Direct configuration

config, _ := api.NewConfig(un, pwd)
// defaults:
config.Alias = "" // resolved on Authentication
config.UserAgent = "CenturyLinkCloud/clc-sdk"
config.BaseURI = "https://api.ctl.io/v2"

Enable http wire tracing with env var DEBUG=on.

Additionally, callers of the SDK should set config.UserAgent to identify to platform appropriately.

Examples

To create a new server

client := clc.New(api.EnvConfig())

server := server.Server{
		Name:           "server",
		CPU:            1,
		MemoryGB:       1,
		GroupID:        "GROUP-ID",
		SourceServerID: "UBUNTU-14-64-TEMPLATE",
		Type:           "standard",
	}

resp, _ := client.Server.Create(server)

Check status of a server build

resp, _ := client.Server.Create(server)

status, _ := client.Status.Get(resp.GetStatusID())

Async polling for complection

resp, _ := client.Server.Create(server)

poll := make(chan *status.Response, 1)
service.Status.Poll(resp.GetStatusID(), poll)

status := <- poll

License

This project is licensed under the Apache License v2.0.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	Server *server.Service
	Status *status.Service
	AA     *aa.Service
	Alert  *alert.Service
	LB     *lb.Service
	Group  *group.Service
	DC     *dc.Service
	// contains filtered or unexported fields
}

func New

func New(config api.Config) *Client

func (*Client) Alias

func (c *Client) Alias(alias string) *Client

func (*Client) Authenticate

func (c *Client) Authenticate() error

Source Files

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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