v20160330

package
v0.0.0-...-4fa61af Latest Latest
Warning

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

Go to latest
Published: Nov 30, 2016 License: MIT Imports: 4 Imported by: 0

Documentation

Overview

Package vlabs stores an experimental api model for acs

Index

Constants

View Source
const (
	// MinAgentCount are the minimum number of agents
	MinAgentCount = 1
	// MaxAgentCount are the maximum number of agents
	MaxAgentCount = 100
)

validation values

View Source
const (
	// APIVersion is the version of this API
	APIVersion = "2016-03-30"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AgentPoolProfile

type AgentPoolProfile struct {
	Name      string `json:"name"`
	Count     int    `json:"count"`
	VMSize    string `json:"vmSize"`
	DNSPrefix string `json:"dnsPrefix"`
	FQDN      string `json:"fqdn,omitempty"`
	OSType    OSType `json:"osType"` // TODO: This field is versioned to "2016-03-30"
	// contains filtered or unexported fields
}

AgentPoolProfile represents configuration of VMs running agent daemons that register with the master and offer resources to host applications in containers.

func (*AgentPoolProfile) GetSubnet

func (a *AgentPoolProfile) GetSubnet() string

GetSubnet returns the read-only subnet for the agent pool

func (*AgentPoolProfile) IsWindows

func (a *AgentPoolProfile) IsWindows() bool

IsWindows returns true if the agent pool is windows

func (*AgentPoolProfile) SetSubnet

func (a *AgentPoolProfile) SetSubnet(subnet string)

SetSubnet sets the read-only subnet for the agent pool

func (*AgentPoolProfile) Validate

func (a *AgentPoolProfile) Validate() error

Validate implements APIObject

type ContainerService

type ContainerService struct {
	ID       string               `json:"id,omitempty"`
	Location string               `json:"location,omitempty"`
	Name     string               `json:"name,omitempty"`
	Plan     ResourcePurchasePlan `json:"plan,omitempty"`
	Tags     map[string]string    `json:"tags,omitempty"`
	Type     string               `json:"type,omitempty"`

	Properties Properties `json:"properties"`
}

ContainerService complies with the ARM model of resource definition in a JSON template.

type DiagnosticsProfile

type DiagnosticsProfile struct {
	VMDiagnostics VMDiagnostics `json:"vmDiagnostics"`
}

DiagnosticsProfile setting to enable/disable capturing diagnostics for VMs hosting container cluster.

type JumpboxProfile

type JumpboxProfile struct {
	OSType    OSType `json:"osType"`
	DNSPrefix string `json:"dnsPrefix"`

	// Jumpbox public endpoint/FQDN with port
	// The format will be FQDN:2376
	// Not used during PUT, returned as part of GET
	FQDN string `json:"fqdn,omitempty"`
}

JumpboxProfile dscribes properties of the jumpbox setup in the ACS container cluster.

type LinuxProfile

type LinuxProfile struct {
	AdminUsername string `json:"adminUsername"`

	SSH struct {
		PublicKeys []struct {
			KeyData string `json:"keyData"`
		} `json:"publicKeys"`
	} `json:"ssh"`
}

LinuxProfile represents the Linux configuration passed to the cluster

func (*LinuxProfile) Validate

func (l *LinuxProfile) Validate() error

Validate implements APIObject

type MasterProfile

type MasterProfile struct {
	Count     int    `json:"count"`
	DNSPrefix string `json:"dnsPrefix"`

	// Master LB public endpoint/FQDN with port
	// The format will be FQDN:2376
	// Not used during PUT, returned as part of GET
	FQDN string `json:"fqdn,omitempty"`
	// contains filtered or unexported fields
}

MasterProfile represents the definition of master cluster

func (*MasterProfile) GetSubnet

func (m *MasterProfile) GetSubnet() string

GetSubnet returns the read-only subnet for the master

func (*MasterProfile) SetSubnet

func (m *MasterProfile) SetSubnet(subnet string)

SetSubnet sets the read-only subnet for the master

func (*MasterProfile) Validate

func (m *MasterProfile) Validate() error

Validate implements APIObject

type OSType

type OSType string

OSType represents OS types of agents

const (
	Windows OSType = "Windows"
	Linux   OSType = "Linux"
)

type OrchestratorProfile

type OrchestratorProfile struct {
	OrchestratorType OrchestratorType `json:"orchestratorType"`
}

OrchestratorProfile contains Orchestrator properties

func (*OrchestratorProfile) Validate

func (o *OrchestratorProfile) Validate() error

Validate implements APIObject

type OrchestratorType

type OrchestratorType string

OrchestratorType defines orchestrators supported by ACS

const (
	Mesos OrchestratorType = "Mesos"
	Swarm OrchestratorType = "Swarm"
	DCOS  OrchestratorType = "DCOS"
)

v20160330 supports orchestrators Mesos, Swarm, DCOS

type Properties

type Properties struct {
	ProvisioningState ProvisioningState `json:"provisioningState"`

	OrchestratorProfile OrchestratorProfile `json:"orchestratorProfile"`

	MasterProfile MasterProfile `json:"masterProfile"`

	AgentPoolProfiles []AgentPoolProfile `json:"agentPoolProfiles"`

	LinuxProfile LinuxProfile `json:"linuxProfile"`

	WindowsProfile WindowsProfile `json:"windowsProfile"`

	// TODO: This field is versioned to "2016-03-30"
	DiagnosticsProfile DiagnosticsProfile `json:"diagnosticsProfile"`

	// JumpboxProfile has made it into the new ACS RP stack for
	// backward compability.
	// TODO: Version this field so that newer versions don't
	// allow jumpbox creation
	JumpboxProfile JumpboxProfile `json:"jumpboxProfile"`
}

Properties is currently incomplete. More fields will be added later.

func (*Properties) HasWindows

func (a *Properties) HasWindows() bool

HasWindows returns true if the cluster contains windows

func (*Properties) Validate

func (a *Properties) Validate() error

Validate implements APIObject

type ProvisioningState

type ProvisioningState string

ProvisioningState represents the current state of container service resource.

const (
	// Creating means ContainerService resource is being created.
	Creating ProvisioningState = "Creating"
	// Updating means an existing ContainerService resource is being updated
	Updating ProvisioningState = "Updating"
	// Failed means resource is in failed state
	Failed ProvisioningState = "Failed"
	// Succeeded means resource created succeeded during last create/update
	Succeeded ProvisioningState = "Succeeded"
	// Deleting means resource is in the process of being deleted
	Deleting ProvisioningState = "Deleting"
	// Migrating means resource is being migrated from one subscription or
	// resource group to another
	Migrating ProvisioningState = "Migrating"
)

type ResourcePurchasePlan

type ResourcePurchasePlan struct {
	Name          string `json:"name,omitempty"`
	Product       string `json:"product,omitempty"`
	PromotionCode string `json:"promotionCode,omitempty"`
	Publisher     string `json:"publisher,omitempty"`
}

ResourcePurchasePlan defines resource plan as required by ARM for billing purposes.

type Subscription

type Subscription struct {
	ID    string
	State SubscriptionState
}

Subscription represents the customer subscription

type SubscriptionState

type SubscriptionState int

SubscriptionState represents the state of the subscription

const (
	// Registered means the subscription is entitled to use the namespace
	Registered SubscriptionState = iota
	// Unregistered means the subscription is not entitled to use the namespace
	Unregistered
	// Suspended means the subscription has been suspended from the system
	Suspended
	// Deleted means the subscription has been deleted
	Deleted
	// Warned means the subscription has been warned
	Warned
)

subscription states

type VMDiagnostics

type VMDiagnostics struct {
	Enabled bool `json:"enabled"`

	// Specifies storage account Uri where Boot Diagnostics (CRP &
	// VMSS BootDiagostics) and VM Diagnostics logs (using Linux
	// Diagnostics Extension) will be stored. Uri will be of standard
	// blob domain. i.e. https://storageaccount.blob.core.windows.net/
	// This field is readonly as ACS RP will create a storage account
	// for the customer.
	StorageURL neturl.URL `json:"storageUrl"`
}

VMDiagnostics contains settings to on/off boot diagnostics collection in RD Host

type WindowsProfile

type WindowsProfile struct {
	AdminUsername string `json:"adminUsername"`

	AdminPassword string `json:"adminPassword"`
}

WindowsProfile represents the Windows configuration passed to the cluster

Jump to

Keyboard shortcuts

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