cpln

package
v1.1.26 Latest Latest
Warning

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

Go to latest
Published: May 14, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const MAX_ATTEMPTS = 10

Variables

This section is empty.

Functions

func ControlPlaneTracingSchema

func ControlPlaneTracingSchema(isExactlyOneOf bool) *schema.Schema

func CustomTagsSchema

func CustomTagsSchema() *schema.Schema

func DeepCopy

func DeepCopy(source interface{}) interface{}

func GeoSchema

func GeoSchema() *schema.Schema

func GetLinkHref added in v1.1.24

func GetLinkHref(links []Link, rel string) *string

func ImageManifestConfigSchemaResource added in v1.1.20

func ImageManifestConfigSchemaResource() *schema.Resource

func ImageSchema added in v1.1.20

func ImageSchema() map[string]*schema.Schema

func ImagesSchema added in v1.1.20

func ImagesSchema() map[string]*schema.Schema

func LightstepSchema

func LightstepSchema(isExactlyOneOf bool) *schema.Schema

func LocationSchema

func LocationSchema() map[string]*schema.Schema

func LocationsSchema

func LocationsSchema() map[string]*schema.Schema

func OtelSchema

func OtelSchema(isExactlyOneOf bool) *schema.Schema

Types

type AWSLogging

type AWSLogging struct {
	Host        *string `json:"host,omitempty"`
	Port        *int    `json:"port,omitempty"`
	Index       *string `json:"index,omitempty"`
	Type        *string `json:"type,omitempty"`
	Credentials *string `json:"credentials,omitempty"`
	Region      *string `json:"region,omitempty"`
}
type AWSPrivateLink struct {
	EndpointServiceName *string `json:"endpointServiceName,omitempty"`
}

AWSPrivateLink - AWSPrivateLink

type Account

type Account struct {
	ID *string `json:"id,omitempty"`
}

type Agent

type Agent struct {
	Base
	Status *AgentStatus `json:"status,omitempty"`
}

Agent - Agent

type AgentBootstrapConfig

type AgentBootstrapConfig struct {
	RegistrationToken *string `json:"registrationToken,omitempty"`
	AgentId           *string `json:"agentId,omitempty"`
	AgentLink         *string `json:"agentLink,omitempty"`
	HubEndpoint       *string `json:"hubEndpoint,omitempty"`
}

type AgentStatus

type AgentStatus struct {
	BootstrapConfig *AgentBootstrapConfig `json:"bootstrapConfig,omitempty"`
}

AgentStatus - AgentStatus

type AuditContext

type AuditContext struct {
	Base
}

type AuthConfig

type AuthConfig struct {
	DomainAutoMembers *[]string `json:"domainAutoMembers,omitempty"`
	SamlOnly          *bool     `json:"samlOnly,omitempty"`
}

AuthConfig - AuthConfig

type AutoScaling

type AutoScaling struct {
	Metric           *string `json:"metric,omitempty"`
	MetricPercentile *string `json:"metricPercentile,omitempty"`
	Target           *int    `json:"target,omitempty"`
	MaxScale         *int    `json:"maxScale,omitempty"`
	MinScale         *int    `json:"minScale,omitempty"`
	MaxConcurrency   *int    `json:"maxConcurrency,omitempty"`
	ScaleToZeroDelay *int    `json:"scaleToZeroDelay,omitempty"`
}

AutoScaling - Auto Scaling Options

type AwsIdentity

type AwsIdentity struct {
	CloudAccountLink *string   `json:"cloudAccountLink,omitempty"`
	PolicyRefs       *[]string `json:"policyRefs,omitempty"`
	// TrustPolicy      *AwsPolicyDocument `json:"trustPolicy,omitempty"`
	RoleName *string `json:"roleName,omitempty"`
}

AwsIdentity - AwsIdentity

type AzureIdentity

type AzureIdentity struct {
	CloudAccountLink *string                `json:"cloudAccountLink,omitempty"`
	RoleAssignments  *[]AzureRoleAssignment `json:"roleAssignments,omitempty"`
}

type AzureRoleAssignment

type AzureRoleAssignment struct {
	Scope *string   `json:"scope,omitempty"`
	Roles *[]string `json:"roles,omitempty"`
}

type Base

type Base struct {
	ID   *string `json:"id,omitempty"`
	Name *string `json:"name,omitempty"`
	Kind *string `json:"kind,omitempty"`
	// Version      *int                    `json:"version,omitempty"`
	Description *string                 `json:"description,omitempty"`
	Tags        *map[string]interface{} `json:"tags,omitempty"`
	TagsReplace *map[string]interface{} `json:"$replace/tags,omitempty"`
	// Created      *string                 `json:"created,omitempty"`
	// LastModified *string                 `json:"lastModified,omitempty"`
	Links *[]Link `json:"links,omitempty"`
}

Base - Control Plane Base Struct

type Binding

type Binding struct {
	Permissions    *[]string `json:"permissions,omitempty"`
	PrincipalLinks *[]string `json:"principalLinks,omitempty"`
}

Binding - Binding

type Client

type Client struct {
	HostURL      string
	Org          string
	HTTPClient   *http.Client
	Token        string
	RefreshToken string
}

Client - Simple API Client

func NewClient

func NewClient(org, host, profile, token, refreshToken *string) (*Client, error)

NewClient - Instantiate a new API Client

func (*Client) AddDomainRoute

func (c *Client) AddDomainRoute(domainName string, domainPort int, route DomainRoute) error

** Domain Route **

func (*Client) AddServiceAccountKey

func (c *Client) AddServiceAccountKey(serviceAccountName, description string) (*ServiceAccountKey, error)

AddServiceAccountKey - Add Service Account Key

func (*Client) CreateAgent

func (c *Client) CreateAgent(agent Agent) (*Agent, int, error)

CreateAgent - Create an Agent

func (*Client) CreateAuditContext

func (c *Client) CreateAuditContext(auditCtx AuditContext) (*AuditContext, int, error)

CreateAuditContext - Create a new Audit Context

func (*Client) CreateCloudAccount

func (c *Client) CreateCloudAccount(cloudaccount CloudAccount) (*CloudAccount, int, error)

CreateCloudAccount - Create an CloudAccount

func (*Client) CreateDomain

func (c *Client) CreateDomain(domain Domain) (*Domain, int, error)

CreateDomain - Create a new Domain

func (*Client) CreateGroup

func (c *Client) CreateGroup(group Group) (*Group, int, error)

CreateGroup - Create a new Group

func (*Client) CreateGvc

func (c *Client) CreateGvc(gvc Gvc) (*Gvc, int, error)

CreateGvc - Create a new GVC

func (*Client) CreateIdentity

func (c *Client) CreateIdentity(identity Identity, gvcName string) (*Identity, int, error)

CreateIdentity - Create an Identity

func (*Client) CreateMk8s added in v1.1.26

func (c *Client) CreateMk8s(mk8s Mk8s) (*Mk8s, int, error)

func (*Client) CreateOrg

func (c *Client) CreateOrg(accountId string, createOrg CreateOrgRequest) (*Org, int, error)

CreateOrg - Create Organization

func (*Client) CreatePolicy

func (c *Client) CreatePolicy(policy Policy) (*Policy, int, error)

CreatePolicy - Create an Policy

func (*Client) CreateResource

func (c *Client) CreateResource(resourceType, id string, resource interface{}) (int, error)

func (*Client) CreateResourceAgent

func (c *Client) CreateResourceAgent(resource Agent) (*Agent, int, error)

func (*Client) CreateSecret

func (c *Client) CreateSecret(secret Secret) (*Secret, int, error)

CreateSecret - Create a new Secret

func (*Client) CreateServiceAccount

func (c *Client) CreateServiceAccount(serviceaccount ServiceAccount) (*ServiceAccount, int, error)

CreateServiceAccount - Create a new Service Account

func (*Client) CreateVolumeSet

func (c *Client) CreateVolumeSet(volumeSet VolumeSet, gvc string) (*VolumeSet, int, error)

func (*Client) CreateWorkload

func (c *Client) CreateWorkload(workload Workload, gvcName string) (*Workload, int, error)

CreateWorkload - Create a new Workload

func (*Client) DeleteAgent

func (c *Client) DeleteAgent(name string) error

DeleteAgent - Delete Agent by name

func (*Client) DeleteCloudAccount

func (c *Client) DeleteCloudAccount(name string) error

DeleteCloudAccount - Delete CloudAccount by name

func (*Client) DeleteDomain

func (c *Client) DeleteDomain(name string) error

DeleteDomain - Delete domain by name

func (*Client) DeleteGroup

func (c *Client) DeleteGroup(name string) error

DeleteGroup - Delete Group by name

func (*Client) DeleteGvc

func (c *Client) DeleteGvc(name string) error

DeleteGvc - Delete GVC by name

func (*Client) DeleteIdentity

func (c *Client) DeleteIdentity(name, gvcName string) error

DeleteIdentity - Delete Identity by name

func (*Client) DeleteMk8s added in v1.1.26

func (c *Client) DeleteMk8s(name string) error

func (*Client) DeletePolicy

func (c *Client) DeletePolicy(name string) error

DeletePolicy - Delete Policy by name

func (*Client) DeleteResource

func (c *Client) DeleteResource(id string) error

func (*Client) DeleteSecret

func (c *Client) DeleteSecret(name string) error

DeleteSecret - Delete secret by name

func (*Client) DeleteServiceAccount

func (c *Client) DeleteServiceAccount(name string) error

DeleteServiceAccount - Delete ServiceAccount by name

func (*Client) DeleteVolumeSet

func (c *Client) DeleteVolumeSet(name string, gvc string) error

func (*Client) DeleteWorkload

func (c *Client) DeleteWorkload(name, gvcName string) error

DeleteWorkload - Delete Workload by name

func (*Client) Get added in v1.1.24

func (c *Client) Get(link string, resource interface{}) (interface{}, int, error)

func (*Client) GetAgent

func (c *Client) GetAgent(name string) (*Agent, int, error)

GetAgent - Get Agent by name

func (*Client) GetAuditContext

func (c *Client) GetAuditContext(name string) (*AuditContext, int, error)

GetAuditContext - Get Audit Context by name

func (*Client) GetBillingNgEndpoint

func (c *Client) GetBillingNgEndpoint() (string, int, error)

func (*Client) GetCloudAccount

func (c *Client) GetCloudAccount(name string) (*CloudAccount, int, error)

GetCloudAccount - Get CloudAccount by name

func (*Client) GetDiscovery

func (c *Client) GetDiscovery() (*Discovery, int, error)

func (*Client) GetDomain

func (c *Client) GetDomain(name string) (*Domain, int, error)

GetDomain - Get Domain by name

func (*Client) GetGroup

func (c *Client) GetGroup(name string) (*Group, int, error)

GetGroup - Get Group by name

func (*Client) GetGvc

func (c *Client) GetGvc(name string) (*Gvc, int, error)

GetGvc - Get GVC by name

func (*Client) GetGvcs

func (c *Client) GetGvcs() (*Gvcs, error)

GetGvcs - Get All Gvcs

func (*Client) GetIdentity

func (c *Client) GetIdentity(name, gvcName string) (*Identity, int, error)

GetIdentity - Get Identity by name

func (*Client) GetImage added in v1.1.20

func (c *Client) GetImage(name string) (*Image, int, error)

func (*Client) GetImagesQuery added in v1.1.23

func (c *Client) GetImagesQuery(query Query) (*ImagesQueryResult, error)

func (*Client) GetLatestImage added in v1.1.23

func (c *Client) GetLatestImage(name string) (*Image, int, error)

func (*Client) GetLocation

func (c *Client) GetLocation(name string) (*Location, int, error)

GetLocation

func (*Client) GetLocations

func (c *Client) GetLocations() (*Locations, error)

GetLocations

func (*Client) GetMk8s added in v1.1.26

func (c *Client) GetMk8s(name string) (*Mk8s, int, error)

func (*Client) GetOrg

func (c *Client) GetOrg() (*Org, int, error)

GetOrg - Get Organization By Name

func (*Client) GetOrgAccount

func (c *Client) GetOrgAccount(orgName string) (*Account, int, error)

func (*Client) GetPolicy

func (c *Client) GetPolicy(name string) (*Policy, int, error)

GetPolicy - Get Policy by name

func (*Client) GetResource

func (c *Client) GetResource(id string, resource interface{}) (interface{}, int, error)

func (*Client) GetSecret

func (c *Client) GetSecret(name string) (*Secret, int, error)

GetSecret - Get secret by name

func (*Client) GetServiceAccount

func (c *Client) GetServiceAccount(name string) (*ServiceAccount, int, error)

GetServiceAccount - Get Service Account by name

func (*Client) GetSpecificOrg

func (c *Client) GetSpecificOrg(name string) (*Org, int, error)

GetSpecificOrg - Get Organization By Name

func (*Client) GetVolumeSet

func (c *Client) GetVolumeSet(name string, gvc string) (*VolumeSet, int, error)

func (*Client) GetWorkload

func (c *Client) GetWorkload(name, gvcName string) (*Workload, int, error)

GetWorkload - Get Workload by name

func (*Client) GetWorkloads

func (c *Client) GetWorkloads(gvcName string) (*[]Workload, int, error)

GetWorkloads - Get Workloads by GVC name

func (*Client) MakeAuthorizationHeader

func (c *Client) MakeAuthorizationHeader() error

MakeAuthorizationHeader creates an authorization header for the given profile.

func (*Client) RemoveDomainRoute

func (c *Client) RemoveDomainRoute(domainName string, domainPort int, prefix string) error

func (*Client) RemoveServiceAccountKey

func (c *Client) RemoveServiceAccountKey(serviceAccountName, keyName string) error

RemoveServiceAccountKey = Remove Service Account Key

func (*Client) UpdateAgent

func (c *Client) UpdateAgent(agent Agent) (*Agent, int, error)

UpdateAgent - Update an Agent

func (*Client) UpdateAuditContext

func (c *Client) UpdateAuditContext(auditCtx AuditContext) (*AuditContext, int, error)

UpdateAuditContext - Update an existing Audit Context

func (*Client) UpdateCloudAccount

func (c *Client) UpdateCloudAccount(cloudaccount CloudAccount) (*CloudAccount, int, error)

UpdateCloudAccount - Update an CloudAccount

func (*Client) UpdateDomain

func (c *Client) UpdateDomain(domain Domain) (*Domain, int, error)

UpdateDomain - Update an existing domain

func (*Client) UpdateDomainRoute

func (c *Client) UpdateDomainRoute(domainName string, domainPort int, route *DomainRoute) error

func (*Client) UpdateGroup

func (c *Client) UpdateGroup(group Group) (*Group, int, error)

UpdateGroup - Update an existing Group

func (*Client) UpdateGvc

func (c *Client) UpdateGvc(gvc Gvc) (*Gvc, int, error)

UpdateGvc - Update an existing GVC

func (*Client) UpdateIdentity

func (c *Client) UpdateIdentity(identity Identity, gvcName string) (*Identity, int, error)

UpdateIdentity - Update an Identity

func (*Client) UpdateLocation added in v1.1.26

func (c *Client) UpdateLocation(location Location) (*Location, int, error)

func (*Client) UpdateMk8s added in v1.1.26

func (c *Client) UpdateMk8s(mk8s Mk8s) (*Mk8s, int, error)

func (*Client) UpdateOrg

func (c *Client) UpdateOrg(org Org) (*Org, int, error)

UpdateOrg - Update Organization

func (*Client) UpdateOrgLogging

func (c *Client) UpdateOrgLogging(extraLogging *[]Logging) (*Org, int, error)

UpdateOrgLogging - Update an existing Org Logging

func (*Client) UpdateOrgTracing

func (c *Client) UpdateOrgTracing(tracing *Tracing) (*Org, int, error)

UpdateOrgLogging - Update an existing Org Tracing

func (*Client) UpdatePolicy

func (c *Client) UpdatePolicy(policy Policy) (*Policy, int, error)

UpdatePolicy - Update an Policy

func (*Client) UpdateResource

func (c *Client) UpdateResource(id string, resource interface{}) (int, error)

func (*Client) UpdateSecret

func (c *Client) UpdateSecret(secret Secret) (*Secret, int, error)

UpdateSecret - Update an existing secret

func (*Client) UpdateServiceAccount

func (c *Client) UpdateServiceAccount(serviceaccount ServiceAccount) (*ServiceAccount, int, error)

UpdateServiceAccount - Update an existing ServiceAccount

func (*Client) UpdateVolumeSet

func (c *Client) UpdateVolumeSet(volumeSet VolumeSet, gvc string) (*VolumeSet, int, error)

func (*Client) UpdateWorkload

func (c *Client) UpdateWorkload(workload Workload, gvcName string) (*Workload, int, error)

UpdateWorkload - Update an existing workload

type CloudAccount

type CloudAccount struct {
	Base
	Provider *string             `json:"provider,omitempty"`
	Data     *CloudAccountConfig `json:"data,omitempty"`
	Status   *CloudAccountStatus `json:"status,omitempty"`
}

CloudAccount - CloudAccount

type CloudAccountConfig

type CloudAccountConfig struct {
	RoleArn    *string `json:"roleArn,omitempty"`
	ProjectId  *string `json:"projectId,omitempty"`
	SecretLink *string `json:"secretLink,omitempty"`
}

CloudAccountConfig - CloudAccountConfig

type CloudAccountStatus

type CloudAccountStatus struct {
	Usable      *bool   `json:"usable,omitempty"`
	LastChecked *string `json:"lastChecked,omitempty"`
	LastError   *string `json:"lastError,omitempty"`
}

CloudAccountStatus - CloudAccountStatus

type CloudWatchLogging added in v1.1.25

type CloudWatchLogging struct {
	Region        *string `json:"region,omitempty"`
	Credentials   *string `json:"credentials,omitempty"`
	RetentionDays *int    `json:"retentionDays,omitempty"`
	GroupName     *string `json:"groupName,omitempty"`
	StreamName    *string `json:"streamName,omitempty"`
}

type ContainerSpec

type ContainerSpec struct {
	Name             *string          `json:"name,omitempty"`
	Image            *string          `json:"image,omitempty"`
	Port             *int             `json:"port,omitempty"`
	Ports            *[]PortSpec      `json:"ports,omitempty"`
	Memory           *string          `json:"memory,omitempty"`
	ReadinessProbe   *HealthCheckSpec `json:"readinessProbe,omitempty"`
	LivenessProbe    *HealthCheckSpec `json:"livenessProbe,omitempty"`
	CPU              *string          `json:"cpu,omitempty"`
	GPU              *GpuResource     `json:"gpu,omitempty"`
	MinCPU           *string          `json:"minCpu,omitempty"`
	MinMemory        *string          `json:"minMemory,omitempty"`
	Env              *[]NameValue     `json:"env,omitempty"`
	Args             *[]string        `json:"args,omitempty"`
	Volumes          *[]VolumeSpec    `json:"volumes,omitempty"`
	Metrics          *Metrics         `json:"metrics,omitempty"`
	Command          *string          `json:"command,omitempty"`
	InheritEnv       *bool            `json:"inheritEnv,omitempty"`
	WorkingDirectory *string          `json:"workingDir,omitempty"`
	LifeCycle        *LifeCycleSpec   `json:"lifecycle,omitempty"`
}

ContainerSpec - Workload Container Definition

type ControlPlaneTracing

type ControlPlaneTracing struct{}

type CoralogixLogging

type CoralogixLogging struct {
	Cluster     *string `json:"cluster,omitempty"`
	Credentials *string `json:"credentials,omitempty"`
	App         *string `json:"app,omitempty"`
	Subsystem   *string `json:"subsystem,omitempty"`
}

CoralogixLogging - CoralogixLogging

type CreateOrgRequest

type CreateOrgRequest struct {
	Org      *Org      `json:"org,omitempty"`
	Invitees *[]string `json:"invitees,omitempty"`
}

type CustomTag

type CustomTag struct {
	Literal *CustomTagValue `json:"literal,omitempty"`
}

type CustomTagValue

type CustomTagValue struct {
	Value *string `json:"value,omitempty"`
}

type DatadogLogging

type DatadogLogging struct {
	Host        *string `json:"host,omitempty"`
	Credentials *string `json:"credentials,omitempty"`
}

DatadogLogging - DatadogLogging

type Discovery

type Discovery struct {
	Firebase  map[string]string `json:"firebase,omitempty"`
	Endpoints map[string]string `json:"endpoints,omitempty"`
}

type DnsConfigRecord

type DnsConfigRecord struct {
	Type  *string `json:"type,omitempty"`
	TTL   *int    `json:"ttl,omitempty"`
	Host  *string `json:"host,omitempty"`
	Value *string `json:"value,omitempty"`
}

type Domain

type Domain struct {
	Base
	Name        *string                 `json:"name,omitempty"`
	Description *string                 `json:"description,omitempty"`
	Tags        *map[string]interface{} `json:"tags,omitempty"`
	Links       *[]Link                 `json:"links,omitempty"`
	Spec        *DomainSpec             `json:"spec,omitempty"`
	SpecReplace *DomainSpec             `json:"$replace/spec,omitempty"`
	Status      *DomainStatus           `json:"status,omitempty"`
}

Domain - Org Defined Domain Name

type DomainAllowOrigin

type DomainAllowOrigin struct {
	Exact *string `json:"exact,omitempty"`
}

type DomainCertificate

type DomainCertificate struct {
	SecretLink *string `json:"secretLink,omitempty"`
}

type DomainCors

type DomainCors struct {
	AllowOrigins     *[]DomainAllowOrigin `json:"allowOrigins,omitempty"`
	AllowMethods     *[]string            `json:"allowMethods,omitempty"`
	AllowHeaders     *[]string            `json:"allowHeaders,omitempty"`
	ExposeHeaders    *[]string            `json:"exposeHeaders,omitempty"`
	MaxAge           *string              `json:"maxAge,omitempty"`
	AllowCredentials *bool                `json:"allowCredentials,omitempty"`
}

type DomainEndpoint

type DomainEndpoint struct {
	URL          *string `json:"url,omitempty"`
	WorkloadLink *string `json:"workloadLink,omitempty"`
}

** Status Related **

type DomainRoute

type DomainRoute struct {
	Prefix        *string `json:"prefix,omitempty"`
	ReplacePrefix *string `json:"replacePrefix,omitempty"`
	WorkloadLink  *string `json:"workloadLink,omitempty"`
	Port          *int    `json:"port,omitempty"`
	HostPrefix    *string `json:"hostPrefix,omitempty"`
}

type DomainSpec

type DomainSpec struct {
	DnsMode        *string           `json:"dnsMode,omitempty"` // Enum: "cname", "ns"
	GvcLink        *string           `json:"gvcLink,omitempty"`
	AcceptAllHosts *bool             `json:"acceptAllHosts,omitempty"`
	Ports          *[]DomainSpecPort `json:"ports,omitempty"`
}

type DomainSpecPort

type DomainSpecPort struct {
	Number   *int           `json:"number,omitempty"`
	Protocol *string        `json:"protocol,omitempty"` // Enum: "http", "http2"
	Routes   *[]DomainRoute `json:"routes,omitempty"`
	Cors     *DomainCors    `json:"cors,omitempty"`
	TLS      *DomainTLS     `json:"tls,omitempty"`
}

** Spec Related **

type DomainStatus

type DomainStatus struct {
	Endpoints   *[]DomainEndpoint       `json:"endPoints,omitempty"`
	Status      *string                 `json:"status,omitempty"`
	Warning     *string                 `json:"warning,omitempty"`
	Locations   *[]DomainStatusLocation `json:"locations,omitempty"`
	Fingerprint *string                 `json:"fingerprint,omitempty"`
	DnsConfig   *[]DnsConfigRecord      `json:"dnsConfig,omitempty"`
}

type DomainStatusLocation

type DomainStatusLocation struct {
	Name              *string `json:"name,omitempty"`
	CertificateStatus *string `json:"certificateStatus,omitempty"`
}

type DomainTLS

type DomainTLS struct {
	MinProtocolVersion *string            `json:"minProtocolVersion,omitempty"` // Enum: "TLSV1_2", "TLSV1_1", "TLSV1_0"
	CipherSuites       *[]string          `json:"cipherSuites,omitempty"`       // Enum: "ECDHE-ECDSA-AES256-GCM-SHA384", "ECDHE-ECDSA-CHACHA20-POLY1305", "ECDHE-ECDSA-AES128-GCM-SHA256", "ECDHE-RSA-AES256-GCM-SHA384", "ECDHE-RSA-CHACHA20-POLY1305", "ECDHE-RSA-AES128-GCM-SHA256", "AES256-GCM-SHA384", "AES128-GCM-SHA256"
	ClientCertificate  *DomainCertificate `json:"clientCertificate,omitempty"`
	ServerCertificate  *DomainCertificate `json:"serverCertificate,omitempty"`
}

type ElasticCloudLogging

type ElasticCloudLogging struct {
	Index       *string `json:"index,omitempty"`
	Type        *string `json:"type,omitempty"`
	Credentials *string `json:"credentials,omitempty"`
	CloudID     *string `json:"cloudId,omitempty"`
}

type ElasticLogging

type ElasticLogging struct {
	AWS          *AWSLogging          `json:"aws,omitempty"`
	ElasticCloud *ElasticCloudLogging `json:"elasticCloud,omitempty"`
	Generic      *GenericLogging      `json:"generic,omitempty"`
}

ElasticLogging - ElasticLogging

type Exec

type Exec struct {
	Command *[]string `json:"command,omitempty"`
}

Exec - Exec

type FirewallOutboundAllowPort

type FirewallOutboundAllowPort struct {
	Protocol *string `json:"protocol,omitempty"`
	Number   *int    `json:"number,omitempty"`
}

type FirewallSpec

type FirewallSpec struct {
	External *FirewallSpecExternal `json:"external,omitempty"`
	Internal *FirewallSpecInternal `json:"internal,omitempty"`
}

FirewallSpec - Firewall Config

type FirewallSpecExternal

type FirewallSpecExternal struct {
	InboundAllowCIDR      *[]string                    `json:"inboundAllowCIDR,omitempty"`
	OutboundAllowCIDR     *[]string                    `json:"outboundAllowCIDR,omitempty"`
	OutboundAllowHostname *[]string                    `json:"outboundAllowHostname,omitempty"`
	OutboundAllowPort     *[]FirewallOutboundAllowPort `json:"outboundAllowPort,omitempty"`
}

FirewallSpecExternal - Firewall Spec External

type FirewallSpecInternal

type FirewallSpecInternal struct {
	InboundAllowType     *string   `json:"inboundAllowType,omitempty"`
	InboundAllowWorkload *[]string `json:"inboundAllowWorkload,omitempty"`
}

FirewallSpecInternal - Firewall Spec Internal

type FluentdLogging added in v1.1.25

type FluentdLogging struct {
	Host *string `json:"host,omitempty"`
	Port *int    `json:"port,omitempty"`
}

type GCPServiceConnect

type GCPServiceConnect struct {
	TargetService *string `json:"targetService,omitempty"`
}

GCPServiceConnect - GCPServiceConnect

type GRPC

type GRPC struct {
	Port *int `json:"port,omitempty"`
}

type GcpBinding

type GcpBinding struct {
	Resource *string   `json:"resource,omitempty"`
	Roles    *[]string `json:"roles,omitempty"`
}

type GcpIdentity

type GcpIdentity struct {
	CloudAccountLink *string       `json:"cloudAccountLink,omitempty"`
	Scopes           *[]string     `json:"scopes,omitempty"`
	ServiceAccount   *string       `json:"serviceAccount,omitempty"`
	Bindings         *[]GcpBinding `json:"bindings,omitempty"`
}

type GenericLogging

type GenericLogging struct {
	Host        *string `json:"host,omitempty"`
	Port        *int    `json:"port,omitempty"`
	Path        *string `json:"path,omitempty"`
	Index       *string `json:"index,omitempty"`
	Type        *string `json:"type,omitempty"`
	Credentials *string `json:"credentials,omitempty"`
}

type GpuResource

type GpuResource struct {
	Nvidia *Nvidia `json:"nvidia,omitempty"`
}

GPU - GPU Settings

type Group

type Group struct {
	Base
	MemberLinks     *[]string        `json:"memberLinks,omitempty"`
	MemberQuery     *Query           `json:"memberQuery,omitempty"`
	IdentityMatcher *IdentityMatcher `json:"identityMatcher,omitempty"`
	Origin          *string          `json:"origin,omitempty"`
}

Group - Control Plane Group

type Gvc

type Gvc struct {
	Base
	Spec        *GvcSpec `json:"spec,omitempty"`
	SpecReplace *GvcSpec `json:"$replace/spec,omitempty"`
	Alias       *string  `json:"alias,omitempty"`
}

Gvc - Global Virtual Cloud

type GvcSidecar

type GvcSidecar struct {
	Envoy *any `json:"envoy,omitempty"`
}

GvcSidecar - GVC Sidecar

type GvcSpec

type GvcSpec struct {
	StaticPlacement *StaticPlacement `json:"staticPlacement,omitempty"`
	PullSecretLinks *[]string        `json:"pullSecretLinks,omitempty"`
	Domain          *string          `json:"domain,omitempty"`
	Tracing         *Tracing         `json:"tracing,omitempty"`
	Sidecar         *GvcSidecar      `json:"sidecar,omitempty"`
	Env             *[]NameValue     `json:"env,omitempty"`
	LoadBalancer    *LoadBalancer    `json:"loadBalancer,omitempty"`
}

GvcSpec - GVC Spec

type Gvcs

type Gvcs struct {
	Kind  string `json:"kind,omitempty"`
	Items []Gvc  `json:"items,omitempty"`
	Links []Link `json:"links,omitempty"`
	Query Query  `json:"query,omitempty"`
}

Gvcs - GVC's

type HTTPGet

type HTTPGet struct {
	Path        *string      `json:"path,omitempty"`
	Port        *int         `json:"port,omitempty"`
	HTTPHeaders *[]NameValue `json:"httpHeaders,omitempty"`
	Scheme      *string      `json:"scheme,omitempty"`
}

HTTPGet - HTTPGet

type HealthCheckSpec

type HealthCheckSpec struct {
	Exec                *Exec      `json:"exec,omitempty"`
	GRPC                *GRPC      `json:"grpc,omitempty"`
	TCPSocket           *TCPSocket `json:"tcpSocket,omitempty"`
	HTTPGet             *HTTPGet   `json:"httpGet,omitempty"`
	InitialDelaySeconds *int       `json:"initialDelaySeconds,omitempty"`
	PeriodSeconds       *int       `json:"periodSeconds,omitempty"`
	TimeoutSeconds      *int       `json:"timeoutSeconds,omitempty"`
	SuccessThreshold    *int       `json:"successThreshold,omitempty"`
	FailureThreshold    *int       `json:"failureThreshold,omitempty"`
}

HealthCheckSpec - Health Check Spec (used my readiness and liveness probes)

type HealthCheckStatus

type HealthCheckStatus struct {
	Active      *bool   `json:"active,omitempty"`
	Success     *bool   `json:"success,omitempty"`
	Code        *int    `json:"code,omitempty"`
	Message     *string `json:"message,omitempty"`
	Failures    *int    `failures:"parentId,omitempty"`
	Successes   *int    `successes:"parentId,omitempty"`
	LastChecked *string `json:"lastChecked,omitempty"`
}

HealthCheckStatus - Health Check Status

type Identity

type Identity struct {
	Base
	Aws                    *AwsIdentity             `json:"aws,omitempty"`
	AwsReplace             *AwsIdentity             `json:"$replace/aws,omitempty"`
	Gcp                    *GcpIdentity             `json:"gcp,omitempty"`
	GcpReplace             *GcpIdentity             `json:"$replace/gcp,omitempty"`
	Azure                  *AzureIdentity           `json:"azure,omitempty"`
	AzureReplace           *AzureIdentity           `json:"$replace/azure,omitempty"`
	Ngs                    *NgsIdentity             `json:"ngs,omitempty"`
	NgsReplace             *NgsIdentity             `json:"$replace/ngs,omitempty"`
	NetworkResources       *[]NetworkResource       `json:"networkResources,omitempty"`
	NativeNetworkResources *[]NativeNetworkResource `json:"nativeNetworkResources,omitempty"`
	Status                 *IdentityStatus          `json:"status,omitempty"`
	Drop                   *[]string                `json:"$drop,omitempty"`
}

Identity - Identity

type IdentityMatcher

type IdentityMatcher struct {
	Expression *string `json:"expression,omitempty"`
	Language   *string `json:"language,omitempty"` // Enum: [ jmespath, javascript ]
}

type IdentityStatus

type IdentityStatus struct {
	ObjectName *string `json:"objectName,omitempty"`
}

type Image added in v1.1.20

type Image struct {
	Base
	LastModified *string        `json:"lastModified,omitempty"`
	Tag          *string        `json:"tag,omitempty"`
	Repository   *string        `json:"repository,omitempty"`
	Digest       *string        `json:"digest,omitempty"`
	Manifest     *ImageManifest `json:"manifest,omitempty"`
}

type ImageManifest added in v1.1.20

type ImageManifest struct {
	Config        *ImageManifestConfig   `json:"config,omitempty"`
	Layers        *[]ImageManifestConfig `json:"layers,omitempty"`
	MediaType     *string                `json:"mediaType,omitempty"`
	SchemaVersion *int                   `json:"schemaVersion,omitempty"`
}

type ImageManifestConfig added in v1.1.20

type ImageManifestConfig struct {
	Size      *int    `json:"size,omitempty"`
	Digest    *string `json:"digest,omitempty"`
	MediaType *string `json:"mediaType,omitempty"`
}

type ImagesQueryResult added in v1.1.24

type ImagesQueryResult struct {
	Kind  string  `json:"kind,omitempty"`
	Items []Image `json:"items,omitempty"`
	Links []Link  `json:"links,omitempty"`
	Query Query   `json:"query,omitempty"`
}

type JobSpec

type JobSpec struct {
	Schedule              *string `json:"schedule,omitempty"`
	ConcurrencyPolicy     *string `json:"concurrencyPolicy,omitempty"` // Enum: [ Forbid, Replace ]
	HistoryLimit          *int    `json:"historyLimit,omitempty"`
	RestartPolicy         *string `json:"restartPolicy,omitempty"` // Enum: [ OnFailure, Never ]
	ActiveDeadlineSeconds *int    `json:"activeDeadlineSeconds,omitempty"`
}

JobSpec - Cronjob

type LifeCycleInner

type LifeCycleInner struct {
	Exec *Exec `json:"exec,omitempty"`
}

LifeCycle - Inner

type LifeCycleSpec

type LifeCycleSpec struct {
	PostStart *LifeCycleInner `json:"postStart,omitempty"`
	PreStop   *LifeCycleInner `json:"preStop,omitempty"`
}

LifeCycle

type LightstepTracing

type LightstepTracing struct {
	Endpoint    *string `json:"endpoint,omitempty"`
	Credentials *string `json:"credentials,omitempty"`
}

LightstepTracing - LightstepTracing

type Link struct {
	Rel  string `json:"rel,omitempty"`
	Href string `json:"href,omitempty"`
}

Link - Link

type LoadBalancer

type LoadBalancer struct {
	Dedicated      *bool `json:"dedicated,omitempty"`
	TrustedProxies *int  `json:"trustedProxies,omitempty"`
}

LoadBalancer - Load Balancer

type Location

type Location struct {
	Base
	Provider *string         `json:"provider,omitempty"`
	Region   *string         `json:"region,omitempty"`
	Spec     *LocationSpec   `json:"spec,omitempty"`
	Status   *LocationStatus `json:"status,omitempty"`
}

Location

type LocationGeo

type LocationGeo struct {
	Lat       *float32 `json:"lat,omitempty"`
	Lon       *float32 `json:"lon,omitempty"`
	Country   *string  `json:"country,omitempty"`
	State     *string  `json:"state,omitempty"`
	City      *string  `json:"city,omitempty"`
	Continent *string  `json:"continent,omitempty"`
}

LocationStatus

type LocationSpec

type LocationSpec struct {
	Enabled *bool `json:"enabled,omitempty"`
}

LocationSpec

type LocationStatus

type LocationStatus struct {
	Geo      *LocationGeo `json:"geo,omitempty"`
	IpRanges *[]string    `json:"ipRanges,omitempty"`
}

LocationStatus

type Locations

type Locations struct {
	Kind     string     `json:"kind,omitempty"`
	ItemKind string     `json:"itemKind,omitempty"`
	Items    []Location `json:"items,omitempty"`
	Links    []Link     `json:"links,omitempty"`
}

Locations

type Logging

type Logging struct {
	S3          *S3Logging          `json:"s3,omitempty"`
	Coralogix   *CoralogixLogging   `json:"coralogix,omitempty"`
	Datadog     *DatadogLogging     `json:"datadog,omitempty"`
	Logzio      *LogzioLogging      `json:"logzio,omitempty"`
	Elastic     *ElasticLogging     `json:"elastic,omitempty"`
	CloudWatch  *CloudWatchLogging  `json:"cloudWatch,omitempty"`
	Fluentd     *FluentdLogging     `json:"fluentd,omitempty"`
	Stackdriver *StackdriverLogging `json:"stackdriver,omitempty"`
	Syslog      *SyslogLogging      `json:"syslog,omitempty"`
}

Logging - Logging

type LogzioLogging

type LogzioLogging struct {
	ListenerHost *string `json:"listenerHost,omitempty"`
	Credentials  *string `json:"credentials,omitempty"`
}

LogzioLogging - LogzioLogging

type Metrics

type Metrics struct {
	Path *string `json:"path,omitempty"`
	Port *int    `json:"port,omitempty"`
}

Metrics - Metrics

type Mk8s added in v1.1.26

type Mk8s struct {
	Base
	Alias       *string     `json:"alias,omitempty"`
	Spec        *Mk8sSpec   `json:"spec,omitempty"`
	SpecReplace *Mk8sSpec   `json:"$replace/spec,omitempty"`
	Status      *Mk8sStatus `json:"status,omitempty"`
}

type Mk8sAutoscalerConfig added in v1.1.26

type Mk8sAutoscalerConfig struct {
	Expander             *[]string `json:"expander,omitempty"`
	UnneededTime         *string   `json:"unneededTime,omitempty"`
	UnreadyTime          *string   `json:"unreadyTime,omitempty"`
	UtilizationThreshold *float64  `json:"utilizationThreshold,omitempty"`
}

type Mk8sAwsAddOnConfig added in v1.1.26

type Mk8sAwsAddOnConfig struct {
	RoleArn *string `json:"roleArn,omitempty"`
}

type Mk8sAwsAddOnStatus added in v1.1.26

type Mk8sAwsAddOnStatus struct {
	TrustPolicy *map[string]interface{} `json:"trustPolicy,omitempty"`
}

type Mk8sAwsAmi added in v1.1.26

type Mk8sAwsAmi struct {
	Recommended *string `json:"recommended,omitempty"`
	Exact       *string `json:"exact,omitempty"`
}

type Mk8sAwsPool added in v1.1.26

type Mk8sAwsPool struct {
	Mk8sGenericPool
	InstanceTypes                       *[]string   `json:"instanceTypes,omitempty"`
	OverrideImage                       *Mk8sAwsAmi `json:"overrideImage,omitempty"`
	BootDiskSize                        *int        `json:"bootDiskSize,omitempty"`
	MinSize                             *int        `json:"minSize,omitempty"`
	MaxSize                             *int        `json:"maxSize,omitempty"`
	OnDemandBaseCapacity                *int        `json:"onDemandBaseCapacity,omitempty"`
	OnDemandPercentageAboveBaseCapacity *int        `json:"onDemandPercentageAboveBaseCapacity,omitempty"`
	SpotAllocationStrategy              *string     `json:"spotAllocationStrategy,omitempty"`
	SubnetIds                           *[]string   `json:"subnetIds,omitempty"`
	ExtraSecurityGroupIds               *[]string   `json:"extraSecurityGroupIds,omitempty"`
}

type Mk8sAwsProvider added in v1.1.26

type Mk8sAwsProvider struct {
	Region               *string               `json:"region,omitempty"`
	SkipCreateRoles      *bool                 `json:"skipCreateRoles,omitempty"`
	Networking           *Mk8sNetworkingConfig `json:"networking,omitempty"`
	PreInstallScript     *string               `json:"preInstallScript,omitempty"`
	Image                *Mk8sAwsAmi           `json:"image,omitempty"`
	DeployRoleArn        *string               `json:"deployRoleArn,omitempty"`
	VpcId                *string               `json:"vpcId,omitempty"`
	KeyPair              *string               `json:"keyPair,omitempty"`
	DiskEncryptionKeyArn *string               `json:"diskEncryptionKeyArn,omitempty"`
	SecurityGroupIds     *[]string             `json:"securityGroupIds,omitempty"`
	NodePools            *[]Mk8sAwsPool        `json:"nodePools,omitempty"`
	Autoscaler           *Mk8sAutoscalerConfig `json:"autoscaler,omitempty"`
}

type Mk8sAwsWorkloadIdentityAddOnStatus added in v1.1.26

type Mk8sAwsWorkloadIdentityAddOnStatus struct {
	OidcProviderConfig *Mk8sOidcProviderConfig `json:"oidcProviderConfig,omitempty"`
	TrustPolicy        *map[string]interface{} `json:"trustPolicy,omitempty"`
}

type Mk8sAzureACRAddOnConfig added in v1.1.26

type Mk8sAzureACRAddOnConfig struct {
	ClientId *string `json:"clientId,omitempty"`
}

type Mk8sAzureWorkloadIdentityAddOnConfig added in v1.1.26

type Mk8sAzureWorkloadIdentityAddOnConfig struct {
	TenantId *string `json:"tenantId,omitempty"`
}

type Mk8sDashboardAddOnStatus added in v1.1.26

type Mk8sDashboardAddOnStatus struct {
	Url *string `json:"url,omitempty"`
}

type Mk8sFirewallRule added in v1.1.26

type Mk8sFirewallRule struct {
	SourceCIDR  *string `json:"sourceCIDR,omitempty"`
	Description *string `json:"description,omitempty"`
}

type Mk8sGenericPool added in v1.1.26

type Mk8sGenericPool struct {
	Name   *string                 `json:"name,omitempty"`
	Labels *map[string]interface{} `json:"labels,omitempty"`
	Taints *[]Mk8sTaint            `json:"taints,omitempty"`
}

type Mk8sGenericProvider added in v1.1.26

type Mk8sGenericProvider struct {
	Location   *string               `json:"location,omitempty"`
	Networking *Mk8sNetworkingConfig `json:"networking,omitempty"`
	NodePools  *[]Mk8sGenericPool    `json:"nodePools,omitempty"`
}

type Mk8sHetznerPool added in v1.1.26

type Mk8sHetznerPool struct {
	Mk8sGenericPool
	ServerType    *string `json:"serverType,omitempty"`
	OverrideImage *string `json:"overrideImage,omitempty"`
	MinSize       *int    `json:"minSize,omitempty"`
	MaxSize       *int    `json:"maxSize,omitempty"`
}

type Mk8sHetznerProvider added in v1.1.26

type Mk8sHetznerProvider struct {
	Region                   *string               `json:"region,omitempty"`
	Networking               *Mk8sNetworkingConfig `json:"networking,omitempty"`
	PreInstallScript         *string               `json:"preInstallScript,omitempty"`
	TokenSecretLink          *string               `json:"tokenSecretLink,omitempty"`
	NetworkId                *string               `json:"networkId,omitempty"`
	FirewallId               *string               `json:"firewallId,omitempty"`
	NodePools                *[]Mk8sHetznerPool    `json:"nodePools,omitempty"`
	DedicatedServerNodePools *[]Mk8sGenericPool    `json:"dedicatedServerNodePools,omitempty"`
	Image                    *string               `json:"image,omitempty"`
	SshKey                   *string               `json:"sshKey,omitempty"`
	Autoscaler               *Mk8sAutoscalerConfig `json:"autoscaler,omitempty"`
}

type Mk8sLambdalabsPool added in v1.1.26

type Mk8sLambdalabsPool struct {
	Mk8sGenericPool
	MinSize      *int    `json:"minSize,omitempty"`
	MaxSize      *int    `json:"maxSize,omitempty"`
	InstanceType *string `json:"instanceType,omitempty"`
}

type Mk8sLambdalabsProvider added in v1.1.26

type Mk8sLambdalabsProvider struct {
	Region             *string               `json:"region,omitempty"`
	TokenSecretLink    *string               `json:"tokenSecretLink,omitempty"`
	NodePools          *[]Mk8sLambdalabsPool `json:"nodePools,omitempty"`
	SshKeys            *[]string             `json:"sshKeys,omitempty"`
	UnmanagedNodePools *[]Mk8sGenericPool    `json:"unmanagedNodePools,omitempty"`
}

type Mk8sLinodePool added in v1.1.26

type Mk8sLinodePool struct {
	Mk8sGenericPool
	ServerType    *string `json:"serverType,omitempty"`
	OverrideImage *string `json:"overrideImage,omitempty"`
	MinSize       *int    `json:"minSize,omitempty"`
	MaxSize       *int    `json:"maxSize,omitempty"`
}

type Mk8sLinodeProvider added in v1.1.26

type Mk8sLinodeProvider struct {
	Region          *string               `json:"region,omitempty"`
	TokenSecretLink *string               `json:"tokenSecretLink,omitempty"`
	VlanCidr        *string               `json:"vlanCidr,omitempty"`
	Firewall        *string               `json:"firewall,omitempty"`
	NodePools       *[]Mk8sLinodePool     `json:"nodePools,omitempty"`
	AuthorizedUsers *[]string             `json:"authorizedUsers,omitempty"`
	Autoscaler      *Mk8sAutoscalerConfig `json:"autoscaler,omitempty"`
}

type Mk8sLogsAddOnConfig added in v1.1.26

type Mk8sLogsAddOnConfig struct {
	AuditEnabled      *bool   `json:"auditEnabled,omitempty"`
	IncludeNamespaces *string `json:"includeNamespaces,omitempty"`
	ExcludeNamespaces *string `json:"excludeNamespaces,omitempty"`
}

type Mk8sLogsAddOnStatus added in v1.1.26

type Mk8sLogsAddOnStatus struct {
	LokiAddress *string `json:"lokiAddress,omitempty"`
}

type Mk8sMetricsAddOnConfig added in v1.1.26

type Mk8sMetricsAddOnConfig struct {
	KubeState       *bool                       `json:"kubeState,omitempty"`
	CoreDns         *bool                       `json:"coreDns,omitempty"`
	Kubelet         *bool                       `json:"kubelet,omitempty"`
	Apiserver       *bool                       `json:"apiserver,omitempty"`
	NodeExporter    *bool                       `json:"nodeExporter,omitempty"`
	Cadvisor        *bool                       `json:"cadvisor,omitempty"`
	ScrapeAnnotated *Mk8sMetricsScrapeAnnotated `json:"scrapeAnnotated,omitempty"`
}

type Mk8sMetricsAddOnStatus added in v1.1.26

type Mk8sMetricsAddOnStatus struct {
	PrometheusEndpoint *string                 `json:"prometheusEndpoint,omitempty"`
	RemoteWriteConfig  *map[string]interface{} `json:"remoteWriteConfig,omitempty"`
}

type Mk8sMetricsScrapeAnnotated added in v1.1.26

type Mk8sMetricsScrapeAnnotated struct {
	IntervalSeconds   *int    `json:"intervalSeconds,omitempty"`
	IncludeNamespaces *string `json:"includeNamespaces,omitempty"`
	ExcludeNamespaces *string `json:"excludeNamespaces,omitempty"`
	RetainLabels      *string `json:"retainLabels,omitempty"`
}

type Mk8sNetworkingConfig added in v1.1.26

type Mk8sNetworkingConfig struct {
	ServiceNetwork *string `json:"serviceNetwork,omitempty"`
	PodNetwork     *string `json:"podNetwork,omitempty"`
}

type Mk8sNonCustomizableAddonConfig added in v1.1.26

type Mk8sNonCustomizableAddonConfig struct{}

type Mk8sNvidiaAddOnConfig added in v1.1.26

type Mk8sNvidiaAddOnConfig struct {
	TaintGPUNodes *bool `json:"taintGPUNodes,omitempty"`
}

type Mk8sOblivusProvider added in v1.1.26

type Mk8sOblivusProvider struct {
	Datacenter         *string            `json:"datacenter,omitempty"`
	TokenSecretLink    *string            `json:"tokenSecretLink,omitempty"`
	UnmanagedNodePools *[]Mk8sGenericPool `json:"unmanagedNodePools,omitempty"`
}

type Mk8sOidcProviderConfig added in v1.1.26

type Mk8sOidcProviderConfig struct {
	ProviderUrl *string `json:"providerUrl,omitempty"`
	Audience    *string `json:"audience,omitempty"`
}

type Mk8sPaperspacePool added in v1.1.26

type Mk8sPaperspacePool struct {
	Mk8sGenericPool
	MinSize     *int    `json:"minSize,omitempty"`
	MaxSize     *int    `json:"maxSize,omitempty"`
	MachineType *string `json:"machineType,omitempty"`
}

type Mk8sPaperspaceProvider added in v1.1.26

type Mk8sPaperspaceProvider struct {
	Region          *string               `json:"region,omitempty"`
	TokenSecretLink *string               `json:"tokenSecretLink,omitempty"`
	SharedDrives    *[]string             `json:"sharedDrives,omitempty"`
	NodePools       *[]Mk8sPaperspacePool `json:"nodePools,omitempty"`
}

type Mk8sProvider added in v1.1.26

type Mk8sProvider struct {
	Generic    *Mk8sGenericProvider    `json:"generic,omitempty"`
	Hetzner    *Mk8sHetznerProvider    `json:"hetzner,omitempty"`
	Aws        *Mk8sAwsProvider        `json:"aws,omitempty"`
	Linode     *Mk8sLinodeProvider     `json:"linode,omitempty"`
	Oblivus    *Mk8sOblivusProvider    `json:"oblivus,omitempty"`
	Lambdalabs *Mk8sLambdalabsProvider `json:"lambdalabs,omitempty"`
	Paperspace *Mk8sPaperspaceProvider `json:"paperspace,omitempty"`
}

type Mk8sSpec added in v1.1.26

type Mk8sSpec struct {
	Version  *string             `json:"version,omitempty"`
	Firewall *[]Mk8sFirewallRule `json:"firewall,omitempty"`
	Provider *Mk8sProvider       `json:"provider,omitempty"`
	AddOns   *Mk8sSpecAddOns     `json:"addOns,omitempty"`
}

type Mk8sSpecAddOns added in v1.1.26

type Mk8sSpecAddOns struct {
	Dashboard             *Mk8sNonCustomizableAddonConfig       `json:"dashboard,omitempty"`
	AzureWorkloadIdentity *Mk8sAzureWorkloadIdentityAddOnConfig `json:"azureWorkloadIdentity,omitempty"`
	AwsWorkloadIdentity   *Mk8sNonCustomizableAddonConfig       `json:"awsWorkloadIdentity,omitempty"`
	LocalPathStorage      *Mk8sNonCustomizableAddonConfig       `json:"localPathStorage,omitempty"`
	Metrics               *Mk8sMetricsAddOnConfig               `json:"metrics,omitempty"`
	Logs                  *Mk8sLogsAddOnConfig                  `json:"logs,omitempty"`
	Nvidia                *Mk8sNvidiaAddOnConfig                `json:"nvidia,omitempty"`
	AwsEFS                *Mk8sAwsAddOnConfig                   `json:"awsEFS,omitempty"`
	AwsECR                *Mk8sAwsAddOnConfig                   `json:"awsECR,omitempty"`
	AwsELB                *Mk8sAwsAddOnConfig                   `json:"awsELB,omitempty"`
	AzureACR              *Mk8sAzureACRAddOnConfig              `json:"azureACR,omitempty"`
}

type Mk8sStatus added in v1.1.26

type Mk8sStatus struct {
	OidcProviderUrl *string           `json:"oidcProviderUrl,omitempty"`
	ServerUrl       *string           `json:"serverUrl,omitempty"`
	HomeLocation    *string           `json:"homeLocation,omitempty"`
	AddOns          *Mk8sStatusAddOns `json:"addOns,omitempty"`
}

type Mk8sStatusAddOns added in v1.1.26

type Mk8sStatusAddOns struct {
	Dashboard           *Mk8sDashboardAddOnStatus           `json:"dashboard,omitempty"`
	AwsWorkloadIdentity *Mk8sAwsWorkloadIdentityAddOnStatus `json:"awsWorkloadIdentity,omitempty"`
	Metrics             *Mk8sMetricsAddOnStatus             `json:"metrics,omitempty"`
	Logs                *Mk8sLogsAddOnStatus                `json:"logs,omitempty"`
	AwsECR              *Mk8sAwsAddOnStatus                 `json:"awsECR,omitempty"`
	AwsEFS              *Mk8sAwsAddOnStatus                 `json:"awsEFS,omitempty"`
	AwsELB              *Mk8sAwsAddOnStatus                 `json:"awsELB,omitempty"`
}

type Mk8sTaint added in v1.1.26

type Mk8sTaint struct {
	Key    *string `json:"key,omitempty"`
	Value  *string `json:"value,omitempty"`
	Effect *string `json:"effect,omitempty"`
}

type NameValue

type NameValue struct {
	Name  *string `json:"name,omitempty"`
	Value *string `json:"value,omitempty"`
}

NameValue - Name/Value Struct

type NativeNetworkResource

type NativeNetworkResource struct {
	Name              *string            `json:"name,omitempty"`
	FQDN              *string            `json:"FQDN,omitempty"`
	Ports             *[]int             `json:"ports,omitempty"`
	AWSPrivateLink    *AWSPrivateLink    `json:"awsPrivateLink,omitempty"`
	GCPServiceConnect *GCPServiceConnect `json:"gcpServiceConnect,omitempty"`
}

NativeNetowrkResource - NativeNetowrkResource

type NetworkResource

type NetworkResource struct {
	Name       *string   `json:"name,omitempty"`
	AgentLink  *string   `json:"agentLink,omitempty"`
	IPs        *[]string `json:"IPs,omitempty"`
	FQDN       *string   `json:"FQDN,omitempty"`
	ResolverIP *string   `json:"resolverIP,omitempty"`
	Ports      *[]int    `json:"ports,omitempty"`
}

NetworkResource - NetworkResource

type NgsIdentity

type NgsIdentity struct {
	CloudAccountLink *string  `json:"cloudAccountLink,omitempty"`
	Pub              *NgsPerm `json:"pub,omitempty"`
	Sub              *NgsPerm `json:"sub,omitempty"`
	Resp             *NgsResp `json:"resp,omitempty"`
	Subs             *int     `json:"subs,omitempty"`
	Data             *int     `json:"data,omitempty"`
	Payload          *int     `json:"payload,omitempty"`
}

type NgsPerm

type NgsPerm struct {
	Allow *[]string `json:"allow,omitempty"`
	Deny  *[]string `json:"deny,omitempty"`
}

type NgsResp

type NgsResp struct {
	Max *int    `json:"max,omitempty"`
	TTL *string `json:"ttl,omitempty"`
}

type Nvidia

type Nvidia struct {
	Model    *string `json:"model,omitempty"`
	Quantity *int    `json:"quantity,omitempty"`
}

type Observability

type Observability struct {
	LogsRetentionDays    *int `json:"logsRetentionDays,omitempty"`
	MetricsRetentionDays *int `json:"metricsRetentionDays,omitempty"`
	TracesRetentionDays  *int `json:"tracesRetentionDays,omitempty"`
}

Observability - Observability

type Options

type Options struct {
	AutoScaling    *AutoScaling `json:"autoscaling,omitempty"`
	CapacityAI     *bool        `json:"capacityAI,omitempty"`
	TimeoutSeconds *int         `json:"timeoutSeconds,omitempty"`
	Debug          *bool        `json:"debug,omitempty"`
	Suspend        *bool        `json:"suspend,omitempty"`
	Location       *string      `json:"location,omitempty"`
}

Options - Options

type Org

type Org struct {
	Base
	Spec        *OrgSpec   `json:"spec,omitempty"`
	SpecReplace *OrgSpec   `json:"$replace/spec,omitempty"`
	Status      *OrgStatus `json:"status,omitempty"`
}

Org - Organization

type OrgSpec

type OrgSpec struct {
	Logging               *Logging       `json:"logging,omitempty"`
	ExtraLogging          *[]Logging     `json:"extraLogging,omitempty"`
	Tracing               *Tracing       `json:"tracing,omitempty"`
	SessionTimeoutSeconds *int           `json:"sessionTimeoutSeconds,omitempty"`
	AuthConfig            *AuthConfig    `json:"authConfig,omitempty"`
	Observability         *Observability `json:"observability,omitempty"`
}

OrgSpec - Organization Spec

type OrgStatus

type OrgStatus struct {
	AccountLink *string `json:"accountLink,omitempty"`
	Active      *bool   `json:"active,omitempty"`
}

OrgStatus - Organization Status

type OtelTelemetry

type OtelTelemetry struct {
	Endpoint *string `json:"endpoint,omitempty"`
}

type Policy

type Policy struct {
	Base
	TargetKind  *string    `json:"targetKind,omitempty"`
	TargetLinks *[]string  `json:"targetLinks"`
	TargetQuery *Query     `json:"targetQuery,omitempty"`
	Target      *string    `json:"target,omitempty"`
	Origin      *string    `json:"origin,omitempty"`
	Bindings    *[]Binding `json:"bindings"`
	Update      bool       `json:"-"`
}

Policy - Policy

func (Policy) MarshalJSON

func (p Policy) MarshalJSON() ([]byte, error)

type PolicyUpdate

type PolicyUpdate struct {
	Base
	TargetKind  *string    `json:"targetKind,omitempty"`
	TargetLinks *[]string  `json:"targetLinks"`
	TargetQuery *Query     `json:"targetQuery"`
	Target      *string    `json:"target"`
	Origin      *string    `json:"origin,omitempty"`
	Bindings    *[]Binding `json:"bindings"`
}

type PortSpec

type PortSpec struct {
	Protocol *string `json:"protocol,omitempty"`
	Number   *int    `json:"number,omitempty"`
}

PortSpec - Ports

type Provider

type Provider struct {
	Otel         *OtelTelemetry       `json:"otel,omitempty"`
	Lightstep    *LightstepTracing    `json:"lightstep,omitempty"`
	ControlPlane *ControlPlaneTracing `json:"controlplane,omitempty"`
}

type Query

type Query struct {
	Kind    *string      `json:"kind,omitempty"`
	Context *interface{} `json:"context,omitempty"`
	Fetch   *string      `json:"fetch,omitempty"`
	Spec    *Spec        `json:"spec,omitempty"`
}

Query - Query

type ReplaceLogging

type ReplaceLogging struct {
	Logging      *Logging   `json:"$replace/logging"`
	ExtraLogging *[]Logging `json:"$replace/extraLogging"`
}

type ReplaceTracing

type ReplaceTracing struct {
	Tracing *Tracing `json:"$replace/tracing"`
}

type ResolvedImage

type ResolvedImage struct {
	Digest    *string                  `json:"digest,omitempty"`
	Manifests *[]ResolvedImageManifest `json:"manifests,omitempty"`
}

type ResolvedImageManifest

type ResolvedImageManifest struct {
	Image     *string             `json:"image,omitempty"`
	MediaType *string             `json:"mediaType,omitempty"`
	Digest    *string             `json:"digest,omitempty"`
	Platform  *map[string]*string `json:"platform,omitempty"`
}

type ResolvedImages

type ResolvedImages struct {
	ResolvedForVersion *int             `json:"resolvedForVersion,omitempty"`
	ResolvedAt         *string          `json:"resolvedAt,omitempty"`
	Images             *[]ResolvedImage `json:"images,omitempty"`
}

type RolloutOptions

type RolloutOptions struct {
	MinReadySeconds        *int    `json:"minReadySeconds,omitempty"`
	MaxUnavailableReplicas *string `json:"maxUnavailableReplicas,omitempty"`
	MaxSurgeReplicas       *string `json:"maxSurgeReplicas,omitempty"`
	ScalingPolicy          *string `json:"scalingPolicy,omitempty"`
}

Rollout Options

type S3Logging

type S3Logging struct {
	Bucket      *string `json:"bucket,omitempty"`
	Region      *string `json:"region,omitempty"`
	Prefix      *string `json:"prefix,omitempty"`
	Credentials *string `json:"credentials,omitempty"`
}

S3Logging - S3Logging

type Secret

type Secret struct {
	Base
	Type        *string      `json:"type,omitempty"`
	Data        *interface{} `json:"data,omitempty"`
	DataReplace *interface{} `json:"$replace/data,omitempty"`
}

Secret - Secret

type SecurityOptions

type SecurityOptions struct {
	FileSystemGroupID *int `json:"filesystemGroupId,omitempty"`
}

Security Options

type ServiceAccount

type ServiceAccount struct {
	Base
	Keys   *[]ServiceAccountKey `json:"keys,omitempty"`
	Origin *string              `json:"origin,omitempty"`
}

ServiceAccount - Service Account

type ServiceAccountKey

type ServiceAccountKey struct {
	Name        string  `json:"name,omitempty"`
	Created     *string `json:"created,omitempty"`
	Key         string  `json:"key,omitempty"`
	Description *string `json:"description,omitempty"`
}

ServiceAccountKey - Service Account Key

type Spec

type Spec struct {
	Match *string `json:"match,omitempty"`
	Terms *[]Term `json:"terms,omitempty"`
}

Spec - Spec

type StackdriverLogging added in v1.1.25

type StackdriverLogging struct {
	Credentials *string `json:"credentials,omitempty"`
	Location    *string `json:"location,omitempty"`
}

type StaticPlacement

type StaticPlacement struct {
	LocationLinks *[]string `json:"locationLinks,omitempty"`
	LocationQuery *Query    `json:"locationQuery,omitempty"`
}

StaticPlacement - Static Placement

type SyslogLogging added in v1.1.26

type SyslogLogging struct {
	Host     *string `json:"host,omitempty"`
	Port     *int    `json:"port,omitempty"`
	Mode     *string `json:"mode,omitempty"`
	Format   *string `json:"format,omitempty"`
	Severity *int    `json:"severity,omitempty"`
}

type TCPSocket

type TCPSocket struct {
	Port *int `json:"port,omitempty"`
}

TCPSocket - TCPSocket

type Term

type Term struct {
	Op       *string `json:"op,omitempty"`
	Property *string `json:"property,omitempty"`
	Rel      *string `json:"rel,omitempty"`
	Tag      *string `json:"tag,omitempty"`
	Value    *string `json:"value,omitempty"`
}

Term - Term

type Tracing

type Tracing struct {
	Sampling   *int                  `json:"sampling,omitempty"`
	Provider   *Provider             `json:"provider,omitempty"`
	CustomTags *map[string]CustomTag `json:"customTags,omitempty"`
}

Tracing - Tracing

type UnixTime

type UnixTime int64

UnixTime represents a Unix timestamp.

const MinRemaining UnixTime = 10 * 60

MinRemaining defines the minimum remaining time before token refresh.

func UnixNow

func UnixNow() UnixTime

UnixNow returns the current Unix time.

type UpdateSpec

type UpdateSpec struct {
	Spec interface{} `json:"spec"`
}

type VolumeSet

type VolumeSet struct {
	Base
	Spec        *VolumeSetSpec   `json:"spec,omitempty"`
	SpecReplace *VolumeSetSpec   `json:"$replace/spec,omitempty"`
	Status      *VolumeSetStatus `json:"status,omitempty"`
}

type VolumeSetScaling

type VolumeSetScaling struct {
	MaxCapacity       *int     `json:"maxCapacity,omitempty"`
	MinFreePercentage *int     `json:"minFreePercentage,omitempty"`
	ScalingFactor     *float64 `json:"scalingFactor,omitempty"`
}

type VolumeSetSnapshots

type VolumeSetSnapshots struct {
	CreateFinalSnapshot *bool   `json:"createFinalSnapshot,omitempty"`
	RetentionDuration   *string `json:"retentionDuration,omitempty"`
	Schedule            *string `json:"schedule,omitempty"`
}

type VolumeSetSpec

type VolumeSetSpec struct {
	InitialCapacity    *int                `json:"initialCapacity,omitempty"`
	PerformanceClass   *string             `json:"performanceClass,omitempty"`
	StorageClassSuffix *string             `json:"storageClassSuffix,omitempty"`
	FileSystemType     *string             `json:"fileSystemType,omitempty"`
	Snapshots          *VolumeSetSnapshots `json:"snapshots,omitempty"`
	AutoScaling        *VolumeSetScaling   `json:"autoscaling,omitempty"`
}

type VolumeSetStatus

type VolumeSetStatus struct {
	ParentID       *string        `json:"parentID,omitempty"`
	UsedByWorkload *string        `json:"usedByWorkload,omitempty"`
	BindingID      *string        `json:"bindingId,omitempty"`
	Locations      *[]interface{} `json:"locations,omitempty"`
}

type VolumeSpec

type VolumeSpec struct {
	Uri            *string `json:"uri,omitempty"`
	RecoveryPolicy *string `json:"recoveryPolicy,omitempty"`
	Path           *string `json:"path,omitempty"`
}

VolumeSpec - Volume Spec

type Workload

type Workload struct {
	Base
	Spec        *WorkloadSpec   `json:"spec,omitempty"`
	SpecReplace *WorkloadSpec   `json:"$replace/spec,omitempty"`
	Status      *WorkloadStatus `json:"status,omitempty"`
}

Workload - GVC Workload

func (Workload) RemoveEmptySlices

func (w Workload) RemoveEmptySlices()

type WorkloadSidecar

type WorkloadSidecar struct {
	Envoy *any `json:"envoy,omitempty"`
}

WorkloadSidecar - Workload Sidecar

type WorkloadSpec

type WorkloadSpec struct {
	Type               *string          `json:"type,omitempty"`
	IdentityLink       *string          `json:"identityLink,omitempty"`
	Containers         *[]ContainerSpec `json:"containers,omitempty"`
	FirewallConfig     *FirewallSpec    `json:"firewallConfig,omitempty"`
	DefaultOptions     *Options         `json:"defaultOptions,omitempty"`
	LocalOptions       *[]Options       `json:"localOptions,omitempty"`
	RolloutOptions     *RolloutOptions  `json:"rolloutOptions,omitempty"`
	Job                *JobSpec         `json:"job,omitempty"`
	SecurityOptions    *SecurityOptions `json:"securityOptions,omitempty"`
	SupportDynamicTags *bool            `json:"supportDynamicTags,omitempty"`
	Sidecar            *WorkloadSidecar `json:"sidecar,omitempty"`
}

WorkloadSpec - Workload Specifications

type WorkloadStatus

type WorkloadStatus struct {
	ParentID            *string            `json:"parentId,omitempty"`
	CanonicalEndpoint   *string            `json:"canonicalEndpoint,omitempty"`
	Endpoint            *string            `json:"endpoint,omitempty"`
	InternalName        *string            `json:"internalName,omitempty"`
	CurrentReplicaCount *int               `json:"currentReplicaCount,omitempty"`
	HealthCheck         *HealthCheckStatus `json:"healthCheck,omitempty"`
	ResolvedImages      *ResolvedImages    `json:"resolvedImages,omitempty"`
}

WorkloadStatus - Workload Status

type Workloads

type Workloads struct {
	Kind     string     `json:"kind,omitempty"`
	ItemKind string     `json:"itemKind,omitempty"`
	Links    []Link     `json:"links,omitempty"`
	Items    []Workload `json:"items,omitempty"`
}

Workloads - GVC Workloads

Jump to

Keyboard shortcuts

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