Skip to main content

compute.appvia.io/v2beta1

Package v2beta1 contains API Schema definitions for the compute v2beta1 API group

Exported Resource Types

Cluster

Cluster is the schema for cluster definitions in Wayfinder

FieldDescription

apiVersion
string

compute.appvia.io/v2beta1

kind
string

Cluster
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
ClusterSpec
allocation
ResourceAllocation

Allocation describes which workspaces can use this cluster.

cloudAccessConfigRef
CloudAccessConfigReference

CloudAccessConfigRef is a reference to the cloud access configuration to use when building the cluster

cloudResourceName

string

CloudResourceName specifies the name of the cluster in the cloud Can be left blank so that the name is derived from the wayfinder workspace and resource name

plan

string

Plan refers to the original plan the cluster was created from

stage

string

Stage is the name of the stage for this cluster

secretRef
Kubernetes core/v1.SecretReference

SecretRef is a reference to an existing secret containing an administrative access token for this cluster. Required only for clusters which are not created by Wayfinder.

ClusterShared
ClusterShared

(Members of ClusterShared are embedded into this type.)

status
ClusterStatus
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

authProxyEndpoint

string

AuthProxyEndpoint is the endpoint of the legacy authentication proxy for this cluster. Will only be populated if the legacy authentication proxy is deployed.

kubeProxyEndpoint

string

KubeProxyEndpoint is the endpoint of the kube proxy for this cluster

authProxyCertificate

string

AuthProxyCertificate is the certificate of the auth proxy endpoint

caCertificate

string

CaCertificate is the base64 encoded cluster certificate

kubeApiEndpoint

string

KubeAPIEndpoint is the kubernetes API endpoint url

clusterNetwork
ClusterNetworkStatus

Network contains the network configuration used by this cluster

providerStatus
ProviderStatus

ProviderStatus is provider specific data with types

version

string

Version is the kubernetes version of the cluster

dnsZones

[]string

DNSZones is a list of Wayfinder-managed DNS zones which are currently available in this cluster with ExternalDNS. This will be populated if the DNSReady condition is true.

expires
Kubernetes meta/v1.Time

Expires is the timestamp after which the cluster should automatically be removed. The populated value should be time at which the cluster is created, plus duration defined in Spec.Expires

deployedChartsImage

string

DeployedChartsImage will be set, once the cluster is in condition HelmReady, to indicate which version of the charts image is deployed and active in this cluster

deployedAuthProxyImage

string

DeployedAuthProxyImage will be set, once the cluster is in condition AuthProxyReady, to indicate which version of the auth proxy image is deployed and active in this cluster

deployedResourceHashes
[]DeployedResourceHash

DeployedResourceHashes is set to a hash of the resources deployed into the cluster so we can re-apply if the resources change but quickly no-op if they have not.

metrics
Metrics

Metrics is a list of metrics for this cluster

ClusterPlan

ClusterPlan is the Schema for the plans API

FieldDescription

apiVersion
string

compute.appvia.io/v2beta1

kind
string

ClusterPlan
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
ClusterPlanSpec
PlanSpec
PlanSpec

(Members of PlanSpec are embedded into this type.)

summary

string

Summary provides a short title summary for the cluster plan It should describe a cluster in terms that are meaningful for developers: e.g. a cluster with very large nodes suitable for memory intensive applications

template
ClusterTemplate

Template are the key+value pairs describing a cluster configuration

packages
[]PackageRef

This requires the ‘package_templating’ feature flag to be enabled. Packages is the list of packages to deploy on this cluster, in order. Specifying packages via the plan will disable the legacy ‘label targeting’ behaviour for packages on this cluster, so you must specify all packages you wish to be deployed here.

status
ClusterPlanStatus
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

clusterNetwork
ClusterNetworkStatus

ClusterNetwork describes the network that will be created from this plan

ContainerRegistry

ContainerRegistry is the container registry type

FieldDescription

apiVersion
string

compute.appvia.io/v2beta1

kind
string

ContainerRegistry
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
ContainerRegistrySpec
target
ContainerRegistryTarget

Target contains targeting information for this registry

provider

string

Provider defines which provider to use to create this registry

providerDetails
ContainerRegistryProviderDetails

ProviderDetails provides additional fields which can be used for provider specific data needed to provision this registry

status
ContainerRegistryStatus
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

RoutingStatus
RoutingStatus

(Members of RoutingStatus are embedded into this type.)

pullSecret
Kubernetes core/v1.SecretReference

PullSecret is a reference to the imagePullSecret

GlobalContainerRegistry

GlobalContainerRegistry is the global container registry type

FieldDescription

apiVersion
string

compute.appvia.io/v2beta1

kind
string

GlobalContainerRegistry
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
ContainerRegistrySpec
target
ContainerRegistryTarget

Target contains targeting information for this registry

provider

string

Provider defines which provider to use to create this registry

providerDetails
ContainerRegistryProviderDetails

ProviderDetails provides additional fields which can be used for provider specific data needed to provision this registry

status
ContainerRegistryStatus
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

RoutingStatus
RoutingStatus

(Members of RoutingStatus are embedded into this type.)

pullSecret
Kubernetes core/v1.SecretReference

PullSecret is a reference to the imagePullSecret

KubernetesUpdate

KubernetesUpdate is the schema for Kubernetes version updates to clusters

FieldDescription

apiVersion
string

compute.appvia.io/v2beta1

kind
string

KubernetesUpdate
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
KubernetesUpdateSpec
UpdateSpec
UpdateSpec

(Members of UpdateSpec are embedded into this type.)

targetKubernetesVersion

string

TargetKubernetesVersion is the specific Kubernetes version to use for the new node pool spec - Normally be an increment of the current, existing Kubernetes version - should satisfy the rules of the Kubernetes versioning scheme as per https://kubernetes.io/docs/setup/release/version-skew-policy/

status
KubernetesUpdateStatus
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

startTime
Kubernetes meta/v1.Time

StartTime is the time the update was started Is used to estimate the percentage complete time

estimatedPercentageComplete

int

EstimatedPercentageComplete is the estimated percentage complete of the update - Based on the time from StartTime and a test of actual updates

NamespaceClaim

NamespaceClaim is the Schema for the namespaceclaims API

FieldDescription

apiVersion
string

compute.appvia.io/v2beta1

kind
string

NamespaceClaim
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
NamespaceClaimSpec
cluster
Ownership

Cluster is the cluster the namespace resides

name

string

Name is the name of the namespace to create

annotations

map[string]string

Annotations is a series of annotations on the namespace

labels

map[string]string

Labels is a series of labels for the namespace

resourceDefaults
LimitRangeDefault

ResourceDefaults provide defaults for workloads (to prevent initial constraint violations) Not set directly or managed by owners (as only maximum values taken so should not conflict)

status
NamespaceClaimStatus
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

Status is the status of the namespace

appliedConstraints
Constraints

AppliedConstraints details any applicable constraints applied to this namespace by the cluster owner

packageValues
[]PackageValue

PackageValues are values present in packages that a user may need to construct manifests.

dnsZones

[]string

DNSZones are the zones associated with the namespace

NodePool

Nodepool is the schema for cluster nodepool definitions in Wayfinder

FieldDescription

apiVersion
string

compute.appvia.io/v2beta1

kind
string

NodePool
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
NodePoolSpec
logicalName

string

LogicalName is the internally unique name of the NodePool (not in cloud) - Should always be consistent with a single name entry in a Cluster or NodePoolUpdate - Has to be unique across all nodepools on the Cluster spec - Will NOT always match the name of the NodePool in cloud - Should be treated as an immutable field

cloudResourceName

string

CloudResourceName is the name of the cloud resource - should not be set by the client - set by the NodePool mutate if empty - set by the NodePoolUpdate controller depending on the update type

description

string

Description provides an optional description to the node pool

diskSize

int64

DiskSize is the amount of disk space to assign to the nodes in MBs

autoscaling
AutoScalingOptions

Autoscaling indicates the node pool should autoscale

expires
Kubernetes meta/v1.Time

Expires provides a time for automatic expiration of the cluster

image

string

Image is the image we should use on the instances of this pool

labels

map[string]string

Labels is a collection of label placed on to the nodepool

maxPodsPerNode

int64

MaxPodsPerNode controls how many pods can be scheduled onto each node in this pool

machine

string

Machine is the instance type of the nodes in the pool

providerDetails
NodePoolProviderDetails

ProviderDetails provides any cloud specific options for this nodepool

size

int64

Size is initial size if autoscaling defined - or the effective size if no autoscaling is enabled

spot
SpotInstancesOptions

Spot if defines enables nodepool to use spot instances

taints
[]NodeTaint

Taints defines a collection scheduling taints placed on the nodepool

channel

string

Channel describes the channel a NodePool follows If specified on a cluster, must be identical to the channel on the cluster

version

string

Version is the specified version of kubernetes on the node pool This cannot be set by a client if a channel is also specified Will be set by the NodePoolUpdate controller on actual nodepools if a channel is specified

zones

[]string

Zones defines a list of cloud specific availability zones where the nodes are permitted to run

defaultUpdateOptions
NodePoolUpdateOptions

DefaultUpdateOptions defines how this nodepool can be upgraded - Used by the cluster controller to generate NodePoolUpdates based on spec changes - Ignored when a NodePoolUpdate is created directly

status
NodePoolStatus
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

name

string

Name is the name of the node pool

details

string

Details is message from the provider about the node pool

providerStatus
ProvisioningState

ProvisioningState is provisioning state of the nodePool

nodeCount

int

NodeCount is the number of nodes in the node pool

nodeCountReady

int

NodeCountReady is the number of nodes in the node pool which are ready

NodePoolUpdate

NodePoolUpdate is the schema for cluster nodepool replacement definitions in Wayfinder

FieldDescription

apiVersion
string

compute.appvia.io/v2beta1

kind
string

NodePoolUpdate
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
NodePoolUpdateSpec
UpdateSpec
UpdateSpec

(Members of UpdateSpec are embedded into this type.)

newSpec
NodePoolSpec

NewSpec is the desired spec of the existing (if updated) or new node pool (if replaced)

options
NodePoolUpdateOptions

Options are the options for the update or replacement strategy

nodePoolToUpdate

string

NodePoolToUpdate is the reference to the NodePool metadata.Name to be updated / replaced

targetKubernetesVersion

string

TargetKubernetesVersion is the specific Kubernetes version to use for the new node pool spec - Only valid when a channel is also specified - Normally be an increment of the current, existing NodePool version - Not be greater than the cluster version

status
NodePoolUpdateStatus
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

originalNodePool
OriginalNodePoolStatus

OriginalNodePool is the status of the node pool being updated / replaced

estimatedPercentageComplete

int

EstimatedPercentageComplete is the estimated percentage complete of the node pool update This will vary per provider and update strategy and cluster usage

QuotaLimit

QuotaLimit is the schema for QuotaLimit

FieldDescription

apiVersion
string

compute.appvia.io/v2beta1

kind
string

QuotaLimit
metadata
Kubernetes meta/v1.ObjectMeta

Refer to the Kubernetes API documentation for the fields of the metadata field.

spec
QuotaLimitSpec
name

string

TemplateName is the immutable name to track the tempate that was used Would normally specify a QuotaLimit “size” for a tenant

constraints
Constraints

Constraints are for providing management of resource constraints to workloads - Typically only managed by cluster owners to provide hard resource constraints - Used to prevent noisy neigbor issues in a multi-tenanted environment

namespaceClaim
Ownership

NamespaceClaim is the reference for a specific namespace claim that resulted in this object

status
QuotaLimitStatus
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

Status is the status of the QuotaLimit

Internal Resource Types

AKSClusterStatus

(Appears on: ProviderStatus)

AKSClusterStatus is used to hold any thing related to the AKS clusters

FieldDescription
infraResourceGroupName

string

InfraResourceGroupName is the resource group that AKS manages

clusterPrincipalId

string

ClusterPrincipalID is the cluster principal in Azure This is required for assigning permission to the AKS cluster in Azure

AKSNodePoolSpec

(Appears on: NodePoolProviderDetails)

AKSNodePoolSpec represents a node pool within a AKS cluster

FieldDescription
mode

string

Mode is the type of the node pool. System node pools serve the primary purpose of hosting critical system pods such as CoreDNS and tunnelfront. User node pools serve the primary purpose of hosting your application pods.

AKSNodePoolSpotInstances

(Appears on: SpotInstancesOptions)

AKSNodePoolSpotInstances are the options for spot instances in Azure

FieldDescription
maxSpotPrice

string

MaxSpotPrice is the maximum price willing to pay for an spot instance billed in microdollars. The figure is optional and needless to say only relevant when the nodepool is made of spot instances

AKSSpec

(Appears on: ClusterProviderDetails)

AKSSpec defines the desired state of an AKS cluster

FieldDescription
linuxProfile
LinuxProfile

LinuxProfile is the configuration for Linux VMs

skuTier

string

SKUTier is the Uptime SLA that should be used for the AKS cluster. “Free”, “Standard” or “Premium”. The legacy tier “Paid” is also supported and will be treated as “Standard” as per https://learn.microsoft.com/en-us/azure/aks/free-standard-pricing-tiers. In this API version, the default if no value supplied is “Free”. In the next API version this will be a required field, so you are encouraged to set it now.

windowsProfile
WindowsProfile

WindowsProfile is the configuration for Windows VMs

resourceGroupOverride

string

ResourceGroupOverride will specify a resource group when required

infraResourceGroupOverride

string

InfraResourceGroupOverride will specify a resource group to use for nodes useful when we want to reclaim a cluster

nodeOSUpgradeChannel

github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/containerservice/armcontainerservice/v4.NodeOSUpgradeChannel

NodeOSUpgradeChannel is the strategy for node level OS security updates

outboundType
OutboundType

OutboundType defines the outbound connectivity for the cluster. N.B. only the values “loadBalancer” (default) and “userDefinedRouting” are supported

privatelinkDNSZoneVNetLinks

[]string

PrivatelinkDNSZoneVNetLinks are full Azure resource IDs of vNets to link the Azure-created privatelink DNS zone to. This is only applicable when spec.enablePrivateCluster is true, and is ONLY required if you have configured custom DNS resolvers in your cluster network plan (spec.providerDetails.azure.dnsResolverIPAddresses). When using custom DNS resolvers this MUST be set to a vNet where those resolvers can resolve the DNS. Without this, the cluster will not build successfully.

createUserAssignedIdentity

bool

CreateUserAssignedIdentity will generate a new MSI for the cluster and grant it Contributor access to the cluster’s resource group. FEATURE STATUS: ALPHA This property is not yet fully tested/supported and may change or be removed.

Authentication

Authentication provides options to the authentication module

FieldDescription
disableInline

bool

DisableInline indicates if we disable inline authorization

AuthorizedNetwork

(Appears on: Networking)

AuthorizedNetwork provides a definition for the authorized networks

FieldDescription
name

string

Name provides a descriptive name for this network

cidr

string

CIDR is the network range associated to this network

AutoScalingOptions

(Appears on: NodePoolSpec, OriginalNodePoolStatus)

AutoScalingOptions define the options per cloud provider for autoscaling

FieldDescription
enabled

bool

Enabled indicates the node pool to use autoscaling

minSize

int64

MinSize is minimum number of nodes if autoscaling is enabled

maxSize

int64

MaxSize is the maximum number of nodes if autoscaling is enabled

CloudWatchLogging

(Appears on: EKSSpec)

CloudWatchLogging defines the control plane logging options

FieldDescription
api

bool

API will enable logging for the Kubernetes API server

audit

bool

Audit will enable logging for the Kubernetes audit

authenticator

bool

Authenticator will enable logging for the Kubernetes authentication

controllerManager

bool

ControllerManager will enable logging for the Kubernetes controller manager

scheduler

bool

Scheduler will enable logging for the Kubernetes scheduler component

ClusterMetric

(Appears on: Metrics)

ClusterMetric defines a metric for a cluster

FieldDescription
name

string

Name is the name of the metric

cpu

string

CPU is the CPU usage

memory

string

Memory is the memory usage

pods

string

Pods is the number of pods

ClusterNetworkStatus

(Appears on: ClusterPlanStatus)

FieldDescription
exampleNetwork
ClusterNetworkDetail

ExampleNetwork describes a cluster network that will be created from this plan

networkCapacity
ClusterNetworkCapacities

NetworkCapacity describes the capacity to build a network from this plan

ClusterPlanSpec

(Appears on: ClusterPlan)

ClusterPlanSpec defines the desired state of Plan

FieldDescription
PlanSpec
PlanSpec

(Members of PlanSpec are embedded into this type.)

summary

string

Summary provides a short title summary for the cluster plan It should describe a cluster in terms that are meaningful for developers: e.g. a cluster with very large nodes suitable for memory intensive applications

template
ClusterTemplate

Template are the key+value pairs describing a cluster configuration

packages
[]PackageRef

This requires the ‘package_templating’ feature flag to be enabled. Packages is the list of packages to deploy on this cluster, in order. Specifying packages via the plan will disable the legacy ‘label targeting’ behaviour for packages on this cluster, so you must specify all packages you wish to be deployed here.

ClusterPlanStatus

(Appears on: ClusterPlan)

ClusterPlanStatus defines the observed state of Plan

FieldDescription
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

clusterNetwork
ClusterNetworkStatus

ClusterNetwork describes the network that will be created from this plan

ClusterProviderDetails

(Appears on: ClusterShared)

ClusterProviderDetails defines the parameters for cloud specific options - i.e options which cannot be consolidated as they are too specific to the chosen cloud vendor

FieldDescription
type
ProviderType
aks
AKSSpec

AKS defines the cloud specific options for AKS clusters

eks
EKSSpec

EKS defines a cloud specific options for EKS clusters

gke
GKESpec

GKE is the provider specification for their clusters

unmanaged
UnmanagedSpec

Unmanaged provides the specification for unmanagement cluster

ClusterQuotaLimits

(Appears on: ClusterShared)

ClusterQuotaLimits defines templates for QuotaLimits for a cluster

FieldDescription
templates
[]QuotaLimitTemplate

Templates provide initial defaults for Quotas and Limits for allocated namespaces used when a cluster is allocated to other workspaces to control ResourceQuotas and LimitRanges These values will result in a one time creation of: - a new cluster workspace QuotaLimit object for “constraints” per workspace (with a namespace claim) - a tenant workspace QuotaLimit object for namespace defaults per workspace Required if a cluster is allocated for any tenant workspaces

default

string

Default specifies the default template name to use e.g. “Small” A specific template can be specified with labels on NamespaceClaim objects Required if a cluster is allocated for any tenant workspaces

ClusterShared

(Appears on: ClusterSpec, ClusterTemplate)

ClusterShared provides the fields that exist on both the ClusterPlan and Cluster spec

FieldDescription
channel

string

Channel describes the channel a cluster follows. On create, you must populate either channel or version, but not both.

description

string

Description provides a short summary to the use of the cluster

enableAutoUpgrade

bool

EnableAutoUpgrade indicates wayfinder should handle any upgrades for the clusters

enablePrivateCluster

bool

EnablePrivateCluster indicates the cluster should be made private

expires
Kubernetes meta/v1.Duration

Expires provides the duration (TTL) before automatic expiration of the cluster

maintenance
MaintenanceWindow

Maintenance provides the details around the maintenance window

networking
Networking

Networking provides the details around the cluster networking options

nodePools
[]NodePoolSpec

NodePools is a collection of node pools associated to the cluster

provider

string

Provider refers to the cluster type (e.g. AKS, GKE, EKS)

providerDetails
ClusterProviderDetails

ProviderDetails defines cloud specific cluster options

security
Security

Security contains security settings for the cluster

region

string

Region is the region you want the cluster to reside

quotaLimits
ClusterQuotaLimits

QuotaLimits provide defaults for quotas and limits which are critical for multi-tenancy

version

string

Version is the kubernetes version to use. On create, you must populate either Channel or Version, but not both.

ClusterSpec

(Appears on: Cluster)

ClusterSpec defines the desired state of a cluster

FieldDescription
allocation
ResourceAllocation

Allocation describes which workspaces can use this cluster.

cloudAccessConfigRef
CloudAccessConfigReference

CloudAccessConfigRef is a reference to the cloud access configuration to use when building the cluster

cloudResourceName

string

CloudResourceName specifies the name of the cluster in the cloud Can be left blank so that the name is derived from the wayfinder workspace and resource name

plan

string

Plan refers to the original plan the cluster was created from

stage

string

Stage is the name of the stage for this cluster

secretRef
Kubernetes core/v1.SecretReference

SecretRef is a reference to an existing secret containing an administrative access token for this cluster. Required only for clusters which are not created by Wayfinder.

ClusterShared
ClusterShared

(Members of ClusterShared are embedded into this type.)

ClusterStatus

(Appears on: Cluster)

ClusterStatus defines the observed state of a cluster

FieldDescription
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

authProxyEndpoint

string

AuthProxyEndpoint is the endpoint of the legacy authentication proxy for this cluster. Will only be populated if the legacy authentication proxy is deployed.

kubeProxyEndpoint

string

KubeProxyEndpoint is the endpoint of the kube proxy for this cluster

authProxyCertificate

string

AuthProxyCertificate is the certificate of the auth proxy endpoint

caCertificate

string

CaCertificate is the base64 encoded cluster certificate

kubeApiEndpoint

string

KubeAPIEndpoint is the kubernetes API endpoint url

clusterNetwork
ClusterNetworkStatus

Network contains the network configuration used by this cluster

providerStatus
ProviderStatus

ProviderStatus is provider specific data with types

version

string

Version is the kubernetes version of the cluster

dnsZones

[]string

DNSZones is a list of Wayfinder-managed DNS zones which are currently available in this cluster with ExternalDNS. This will be populated if the DNSReady condition is true.

expires
Kubernetes meta/v1.Time

Expires is the timestamp after which the cluster should automatically be removed. The populated value should be time at which the cluster is created, plus duration defined in Spec.Expires

deployedChartsImage

string

DeployedChartsImage will be set, once the cluster is in condition HelmReady, to indicate which version of the charts image is deployed and active in this cluster

deployedAuthProxyImage

string

DeployedAuthProxyImage will be set, once the cluster is in condition AuthProxyReady, to indicate which version of the auth proxy image is deployed and active in this cluster

deployedResourceHashes
[]DeployedResourceHash

DeployedResourceHashes is set to a hash of the resources deployed into the cluster so we can re-apply if the resources change but quickly no-op if they have not.

metrics
Metrics

Metrics is a list of metrics for this cluster

ClusterTemplate

(Appears on: ClusterPlanSpec)

FieldDescription
ClusterShared
ClusterShared

(Members of ClusterShared are embedded into this type.)

clusterLabels

map[string]string

ClusterLabels provide a set of labels which will be set on any cluster built from this plan

Constraints

(Appears on: NamespaceClaimStatus, QuotaLimitSpec, QuotaLimitTemplate)

Constraints controlling a namespace by an owner

FieldDescription
hardQuota
ResourceList

QuotaHard are applied as ResourceQuota objects to all namespaces for a tenant of that type There are the maximun resource usage in total for a namespace e.g.: hardQuota: requests.cpu: “1” requests.memory: “1Gi” limit.cpu: “2”

limitRanges
[]LimitRangeConstraint

LimitRanges (in the context of constraints) are applied as LimitRanges (using Max) These are the largest values that can be used by a single resource in a namespace They will prevent workloads from using up all resources on a single node

ContainerRegistryProviderDetails

(Appears on: ContainerRegistrySpec)

ContainerRegistryProviderDetails provides parameters that are specific to a particular type of Container Registry

FieldDescription
type
ContainerRegistryType
unmanaged
UnmanagedContainerRegistryParameters
(Optional)

Unmanaged holds parameters specific to an Unmanaged container registries.

ContainerRegistrySpec

(Appears on: ContainerRegistry, GlobalContainerRegistry)

ContainerRegistrySpec defines the specification of a container registry

FieldDescription
target
ContainerRegistryTarget

Target contains targeting information for this registry

provider

string

Provider defines which provider to use to create this registry

providerDetails
ContainerRegistryProviderDetails

ProviderDetails provides additional fields which can be used for provider specific data needed to provision this registry

ContainerRegistryStatus

(Appears on: ContainerRegistry, GlobalContainerRegistry)

ContainerRegistryStatus defines the status of a container registry

FieldDescription
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

RoutingStatus
RoutingStatus

(Members of RoutingStatus are embedded into this type.)

pullSecret
Kubernetes core/v1.SecretReference

PullSecret is a reference to the imagePullSecret

ContainerRegistryTarget

(Appears on: ContainerRegistrySpec)

ContainerRegistryTarget is the targeting specification for this registry

FieldDescription
cluster
Kubernetes meta/v1.LabelSelector

Cluster specifies the cluster(s) this registry should be made available to

namespace
Kubernetes meta/v1.LabelSelector

Namespace specifies the Namespace(s) this registry should be made available to

ContainerRegistryType

(string alias) (Appears on: ContainerRegistryProviderDetails)

ContainerRegistryType represents the concrete type of a Container Registry to provide

ValueDescription
"Unmanaged"

ContainerRegistryTypeUnmanaged is the type for unmanaged registries

DeployedResourceHash

(Appears on: ClusterStatus)

DeployedResourceHash provides a hash for a deployed resource (e.g. the auth proxy or helm controller) so we can quickly no-op if the hash is unchanged

FieldDescription
name

string

Name is the name of the resource

hash

string

Hash is the computed hash of the resources last applied

lastApplied
Kubernetes meta/v1.Time

LastApplied is the last time the resource was applied

errors

[]string

Errors from pods or events related to failed deployments

EKSClusterStatus

(Appears on: ProviderStatus)

EKSClusterStatus is used to hold any thing related to the EKS clusters

FieldDescription
oidc

string

OIDC is the url for the OIDC endpoint

encryption
EKSEncryptionStatus

Encryption shows the status of the EKS secrets encryption for this cluster

EKSEncryption

(Appears on: EKSSpec)

EKSEncryption defines the configuration of EKS encryption

FieldDescription
secretsEncryptionEnabled

bool

SecretsEncryptionEnabled will enable EKS secrets encryption. This will generate a new KMS key for the cluster and configure the cluster to use that KMS key for envelope encryption of secrets.

EKSEncryptionStatus

(Appears on: EKSClusterStatus)

EKSEncryptionStatus defines the status of the encryption

FieldDescription
kmsKeyID

string

KMSKeyID is the ARN of the KMS key in use for EKS encryption

kmsKeyAlias

string

KMSKeyAlias is the alias of the KMS key in use for EKS encryption

kmsKeyStatus
Status

KMSKeyStatus describes the provisioning state of the KMS key used for EKS encryption

ready

bool

Ready indicates that secrets encryption has been enabled and is healthy

EKSNodePoolSpec

(Appears on: NodePoolProviderDetails)

EKSNodePoolSpec defines the desired state of EKSCluster

FieldDescription
ami

string

AMI is a custom image we should use for this nodepool

eC2SSHKey

string

EC2SSHKey is the Amazon EC2 SSH key that provides access for SSH communication with the worker nodes in the managed node group https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html

sshSourceSecurityGroups

[]string

SSHSourceSecurityGroups is the security groups that are allowed SSH access (port 22) to the worker nodes

userData

string

UserData for the launch configuration

EKSNodePoolSpotInstances

(Appears on: SpotInstancesOptions)

EKSNodePoolSpotInstances defined the options for EKS spot instances

FieldDescription
additionalInstanceTypes

[]string

AdditionalInstanceTypes provides an additional list of instances to use when spot instances is enabled

EKSSpec

(Appears on: ClusterProviderDetails)

EKSSpec defines the desired state of EKSCluster

FieldDescription
adminARNs

[]string

AdminARNs is the list of roles or users to be granted access to the EKS K8s API

cloudWatchLogging
CloudWatchLogging

CloudWatchLogging allows all control plane logging to be enabled

enableEndpointPrivate

bool

EnableEndpointPrivate indicates the EKS endpoint should be private and non-public facing

securityGroupIDs

[]string

SecurityGroupIds is a list of security group IDs

encryption
EKSEncryption

Encryption controls the encryption configuration of the cluster. ALPHA: This feature is under development

GKESpec

(Appears on: ClusterProviderDetails)

GKESpec defines the additional options for a GKE cluster

FieldDescription
enableHorizontalPodAutoscaler

bool

The Horizontal Pod Autoscaler changes the shape of your Kubernetes workload by automatically increasing or decreasing the number of Pods in response to the workload’s CPU or memory consumption, or in response to custom metrics reported from within Kubernetes or external metrics from sources outside of your cluster.

enableHTTPLoadBalancer

bool

EnableHTTPLoadBalancer indicates if the cluster should be configured with the GKE ingress controller. When enabled GKE will autodiscover your ingress resources and provision load balancer on your behalf.

enableShieldedNodes

bool

EnableShieldedNodes indicates we should enable the shielded nodes options in GKE. This protects against a variety of attacks by hardening the underlying GKE node against rootkits and bootkits.

enableStackDriverLogging

bool

EnableStackDriverLogging indicates if Stackdriver logging should be enabled for the cluster

enableStackDriverMetrics

bool

EnableStackDriverMetrics indicates if Stackdriver metrics should be enabled for the cluster

masterIPV4Cidr

string

TODO: always derive this off the network when it exists MasterIPV4Cidr is network range used when private networking is enabled. This is the peering subnet used to to GKE master api layer. Note, this must be unique within the network.

GlobalOrScopedContainerRegistry

GlobalOrScopedContainterRegistry provides a common interface for global or workspace-scoped Container Regigistries

KubernetesUpdateSpec

(Appears on: KubernetesUpdate)

KubernetesUpdateSpec defines an update to the kubernetes version

FieldDescription
UpdateSpec
UpdateSpec

(Members of UpdateSpec are embedded into this type.)

targetKubernetesVersion

string

TargetKubernetesVersion is the specific Kubernetes version to use for the new node pool spec - Normally be an increment of the current, existing Kubernetes version - should satisfy the rules of the Kubernetes versioning scheme as per https://kubernetes.io/docs/setup/release/version-skew-policy/

KubernetesUpdateStatus

(Appears on: KubernetesUpdate)

KubernetesUpdateStatus defines the observed state of an update

FieldDescription
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

startTime
Kubernetes meta/v1.Time

StartTime is the time the update was started Is used to estimate the percentage complete time

estimatedPercentageComplete

int

EstimatedPercentageComplete is the estimated percentage complete of the update - Based on the time from StartTime and a test of actual updates

LimitRangeConstraint

(Appears on: Constraints)

LimitRangeConstraint provides constraining Limits to be applied to a managed namespace Managed by tenant

FieldDescription
type
Kubernetes core/v1.LimitType

Type of resource that this limit applies to.

max
ResourceList
(Optional)

Max usage constraints on this kind by resource name.

maxLimitRequestRatio
ResourceList
(Optional)

MaxLimitRequestRatio if specified, the named resource must have a request and limit that are both non-zero where limit divided by request is less than or equal to the enumerated value; this represents the max burst for the named resource.

LimitRangeDefault

(Appears on: NamespaceClaimSpec, QuotaLimitTemplate)

LimitRangeDefault provides defaults for pod container and volumes Managed by a tenant with understanding of the workloads involved

FieldDescription
type
Kubernetes core/v1.LimitType

Type of resource that this limit applies to.

default
ResourceList
(Optional)

Default resource requirement limit value by resource name if resource limit is omitted.

defaultRequest
ResourceList
(Optional)

DefaultRequest is the default resource requirement request value by resource name if resource request is omitted.

LinuxProfile

(Appears on: AKSSpec)

LinuxProfile is the configuration for Linux VMs

FieldDescription
adminUsername

string

AdminUsername is the admin username for Linux VMs

sshPublicKeys

[]string

SSHPublicKeys is a list of public SSH keys to allow to connect to the Linux VMs

MaintenanceWindow

(Appears on: ClusterShared)

MaintenanceWindow defines the maintenance window

FieldDescription
windowStart

string

WindowStart is the time we can perform updates and upgrades, represented in 24h format e.g. “15:00”

Metrics

(Appears on: ClusterStatus)

FieldDescription
lastChecked
Kubernetes meta/v1.Time

LastChecked identifies when the metrics of the cluster was last checked.

metrics
[]ClusterMetric

Metrics are the metrics of the cluster

NamespaceClaimSpec

(Appears on: NamespaceClaim)

NamespaceClaimSpec defines the desired state of NamespaceClaim

FieldDescription
cluster
Ownership

Cluster is the cluster the namespace resides

name

string

Name is the name of the namespace to create

annotations

map[string]string

Annotations is a series of annotations on the namespace

labels

map[string]string

Labels is a series of labels for the namespace

resourceDefaults
LimitRangeDefault

ResourceDefaults provide defaults for workloads (to prevent initial constraint violations) Not set directly or managed by owners (as only maximum values taken so should not conflict)

NamespaceClaimStatus

(Appears on: NamespaceClaim)

NamespaceClaimStatus defines the observed state of NamespaceClaim

FieldDescription
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

Status is the status of the namespace

appliedConstraints
Constraints

AppliedConstraints details any applicable constraints applied to this namespace by the cluster owner

packageValues
[]PackageValue

PackageValues are values present in packages that a user may need to construct manifests.

dnsZones

[]string

DNSZones are the zones associated with the namespace

NetworkRange

NetworkRange defines a network block

FieldDescription
type

string

Type defines the type of network

cidr

string

CIDR defines the network range

Networking

(Appears on: ClusterShared)

Networking defines the structure for all the internal network parameters These are not used to create a network, but to configure the cluster

FieldDescription
authorizedNetworks
[]AuthorizedNetwork

AuthorizedNetworks is a collection of authorized networks which is permitted to speak to our authentication proxy

authorizedMasterNetworks
[]AuthorizedNetwork

AuthorizedMasterNetworks is a collection of authorized networks which is permitted to speak to the cloud kubernetes API, default to all if not provided.

networkProvider

string

NetworkProvider defines a network cni provider for the cluster

networkPlan

string

NetworkPlan defines the network plan for the cluster If the network plan is not provided, a networkRef must be provided instead Required on cluster plans

networkRef
Ownership

NetworkRef is reference to a network where the cluster should reside

aksServicesNetwork

string

AKSServicesNetwork is the CIDR to use as a service network on an Azure AKS cluster. This is not a routable ‘real’ network on Azure, but the value specified must not overlap with any IP ranges which may be routable in the network in which the cluster is created. It is valid for this range to be the same on multiple AKS clusters. This will become required for AKS clusters in a future release.

NodePoolCloudUpdateStrategy

(string alias) (Appears on: NodePoolUpdateOptions)

NodePoolReplacementStrategy is the CloudSupported NodePoolUpdate update in place strategy Only “CloudDefault” is supported now https://appviakore.atlassian.net/browse/WF-2131 will introduce None (e.g. only replacement)

ValueDescription
"CloudDefault"

NodePoolCloudUpdateStrategyCloudDefault will defer to the cloud provider mechanism for updating

"None"

NodePoolCloudUpdateStrategyNone will disable cloud provider updates Only the replacement strategy options are then used

NodePoolProviderDetails

(Appears on: NodePoolSpec)

NodePoolProviderDetails defines the parameters for cloud specific options - i.e options which cannot be consolidated as they are too specific to the chosen cloud vendor

FieldDescription
type
ProviderType
aks
AKSNodePoolSpec

AKS defines the cloud specific options for AKS clusters

eks
EKSNodePoolSpec

EKS defines a cloud specific options for EKS clusters

unmanaged
UnmanagedNodePoolSpec

Unmanaged provides the specification for unmanaged cluster

NodePoolReplacementStrategy

(string alias) (Appears on: NodePoolUpdateOptions)

NodePoolReplacementStrategy is the update strategy type for a NodePoolUpdate Only “None” is supported now https://appviakore.atlassian.net/browse/WF-2131 will introduce NewReplacement

ValueDescription
"NewReplacement"

NodePoolReplacementStrategyNewReplacement will create a new node pool and migrate workloads to it - will drain and delete the old NodePool nodes, one at a time

"None"

NodePoolReplacementStrategyNone signifies we do not manage replacement NodePools We need to validate fields that are not supported by the cloud provider

NodePoolSpec

(Appears on: NodePool, ClusterShared, NodePoolUpdateSpec)

NodePool defines a node pool in kubernetes

FieldDescription
logicalName

string

LogicalName is the internally unique name of the NodePool (not in cloud) - Should always be consistent with a single name entry in a Cluster or NodePoolUpdate - Has to be unique across all nodepools on the Cluster spec - Will NOT always match the name of the NodePool in cloud - Should be treated as an immutable field

cloudResourceName

string

CloudResourceName is the name of the cloud resource - should not be set by the client - set by the NodePool mutate if empty - set by the NodePoolUpdate controller depending on the update type

description

string

Description provides an optional description to the node pool

diskSize

int64

DiskSize is the amount of disk space to assign to the nodes in MBs

autoscaling
AutoScalingOptions

Autoscaling indicates the node pool should autoscale

expires
Kubernetes meta/v1.Time

Expires provides a time for automatic expiration of the cluster

image

string

Image is the image we should use on the instances of this pool

labels

map[string]string

Labels is a collection of label placed on to the nodepool

maxPodsPerNode

int64

MaxPodsPerNode controls how many pods can be scheduled onto each node in this pool

machine

string

Machine is the instance type of the nodes in the pool

providerDetails
NodePoolProviderDetails

ProviderDetails provides any cloud specific options for this nodepool

size

int64

Size is initial size if autoscaling defined - or the effective size if no autoscaling is enabled

spot
SpotInstancesOptions

Spot if defines enables nodepool to use spot instances

taints
[]NodeTaint

Taints defines a collection scheduling taints placed on the nodepool

channel

string

Channel describes the channel a NodePool follows If specified on a cluster, must be identical to the channel on the cluster

version

string

Version is the specified version of kubernetes on the node pool This cannot be set by a client if a channel is also specified Will be set by the NodePoolUpdate controller on actual nodepools if a channel is specified

zones

[]string

Zones defines a list of cloud specific availability zones where the nodes are permitted to run

defaultUpdateOptions
NodePoolUpdateOptions

DefaultUpdateOptions defines how this nodepool can be upgraded - Used by the cluster controller to generate NodePoolUpdates based on spec changes - Ignored when a NodePoolUpdate is created directly

NodePoolStatus

(Appears on: NodePool)

FieldDescription
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

name

string

Name is the name of the node pool

details

string

Details is message from the provider about the node pool

providerStatus
ProvisioningState

ProvisioningState is provisioning state of the nodePool

nodeCount

int

NodeCount is the number of nodes in the node pool

nodeCountReady

int

NodeCountReady is the number of nodes in the node pool which are ready

NodePoolUpdateNewReplacementConfig

(Appears on: NodePoolUpdateOptions)

NodePoolUpdateNewReplacementConfig are the options for a replacement strategy Not used yet - see https://appviakore.atlassian.net/browse/WF-2131

FieldDescription
nodeDrainTimeOut
Kubernetes meta/v1.Duration

NodeDrainTimeOut is the delay to wait for a node to drain before force deleting it After this delay and then the node will be force deleted

NodePoolUpdateOptions

(Appears on: NodePoolSpec, NodePoolUpdateSpec)

NodePoolUpdateOptions are all the options for updating or replacing a NodePool

FieldDescription
replacementStrategy
NodePoolReplacementStrategy

ReplacementStrategy is how node pools can get replaced when required

cloudUpdateStrategy
NodePoolCloudUpdateStrategy

CloudUpdateStrategy is how the cloud provider can update the node pool (if at all)

newReplacementConfig
NodePoolUpdateNewReplacementConfig

NewReplacementConfig specifies how to create a new node pool and migrate workloads to it

NodePoolUpdateSpec

(Appears on: NodePoolUpdate)

NodePoolUpdateSpec defines a node pool update or replacement in kubernetes

FieldDescription
UpdateSpec
UpdateSpec

(Members of UpdateSpec are embedded into this type.)

newSpec
NodePoolSpec

NewSpec is the desired spec of the existing (if updated) or new node pool (if replaced)

options
NodePoolUpdateOptions

Options are the options for the update or replacement strategy

nodePoolToUpdate

string

NodePoolToUpdate is the reference to the NodePool metadata.Name to be updated / replaced

targetKubernetesVersion

string

TargetKubernetesVersion is the specific Kubernetes version to use for the new node pool spec - Only valid when a channel is also specified - Normally be an increment of the current, existing NodePool version - Not be greater than the cluster version

NodePoolUpdateStatus

(Appears on: NodePoolUpdate)

NodePoolUpdateStatus defines the observed state of NodePoolUpdate

FieldDescription
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

originalNodePool
OriginalNodePoolStatus

OriginalNodePool is the status of the node pool being updated / replaced

estimatedPercentageComplete

int

EstimatedPercentageComplete is the estimated percentage complete of the node pool update This will vary per provider and update strategy and cluster usage

NodeStatus

(Appears on: OriginalNodePoolStatus)

NodeStatus is the migration status of a node in a node pool

FieldDescription
name

string

Name is the name of the node

drainStartTime
Kubernetes meta/v1.Time

DrainStartTime is the time that the node draining was initiated This is used along with the NodeDrainTimeOut to determine if the node should be force deleted

drained

bool

Drained is true if the node has been successfully drained (ready for deletion)

migrated

bool

Migrated is true if the node has been successfully migrated to the new node pool

kubeletVersion

string

KubeletVersion is the K8s version of the node

machineID

string

MachineID is the K8s version of the node

NodeTaint

(Appears on: NodePoolSpec)

NodeTaint is the structure of a taint on a nodepool https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/

FieldDescription
key

string

Key provides the key definition for this tainer

value

string

Value is arbitrary value for this taint to compare

effect

string

Effect is desired action on the taint

OriginalNodePoolStatus

(Appears on: NodePoolUpdateStatus)

OriginalNodePoolStatus is the status of a node pool being updated / replaced

FieldDescription
nodes
map[string]*github.com/appvia/wayfinder/tmpcrdref/pkg/apis/compute/v2beta1.NodeStatus

Nodes provide the information about the nodes to migrate stored by name

originalAutoScalingOptions
AutoScalingOptions

OriginalAutoScalingOptions are the auto scaling options for the node pool before we started migrating

autoscalingDisabled

bool

AutoscalingDisabled is true if the autoscaling has been disabled

deleted

bool

Deleted indicates if the old node pool has been deleted

cordoned

bool

Cordoned indicates if the NodePool has been cordoned yet

drainStartTime
Kubernetes meta/v1.Time

DrainStartTime is the time the node pool started draining

migratedNodes

int

MigratedNodes is the number of old nodes migrated to the new node pool

migrated

bool

Migrated indicates if the Workloads have been migrated to the new node pool

size

int64

Size is the size of the old NodePool

OutboundType

(string alias) (Appears on: AKSSpec)

ValueDescription
"loadBalancer"

OutboundTypeLoadBalancer - The load balancer is used for egress through an AKS assigned public IP. This supports Kubernetes services of type ‘loadBalancer’. For more information see outbound type loadbalancer.

"managedNATGateway"

OutboundTypeManagedNATGateway - The AKS-managed NAT gateway is used for egress.

"userAssignedNATGateway"

OutboundTypeUserAssignedNATGateway - The user-assigned NAT gateway associated to the cluster subnet is used for egress. This is an advanced scenario and requires proper network configuration.

"userDefinedRouting"

OutboundTypeUserDefinedRouting - Egress paths must be defined by the user. This is an advanced scenario and requires proper network configuration. For more information see outbound type userDefinedRouting.

PackageValue

(Appears on: NamespaceClaimStatus)

PackageValue represents a value in a package release

FieldDescription
name

string

Name is the name of the value field

description

string

Description is an explanation of value’s significance/usage

value

string

Value is a representation of the value

PodSecurityStandard

(Appears on: Security)

PodSecurityStandard defines the Pod Security Standard options

FieldDescription
enabled

bool

Enabled indicates the addons is enabled

defaultProfile

string

DefaultProfile is the default profile to use for the cluster wayfinder managed namespaces

allowed

[]string

AllowedProfiles is a list of profiles that are allowed to be used in the cluster

ProviderStatus

(Appears on: ClusterStatus)

ProviderStatus is a broken down status per provider for the cluster - i.e. outputs from the clusters which are specific to the clouds

FieldDescription
eks
EKSClusterStatus

EKS is the provider status for AWS

aks
AKSClusterStatus

AKS is the provider status for Azure

ProviderType

(string alias) (Appears on: ClusterProviderDetails, NodePoolProviderDetails)

ProviderType represents the concrete type of account that a CloudAccount represents

ProvisioningState

(string alias) (Appears on: NodePoolStatus)

ValueDescription
"Provisioning"

ProvisioningStateCreating is the state when the node pool is being created

"Degraded"

ProvisioningStateDegraded is the state when the node pool is degraded

"Deleting"

ProvisioningStateDeleting is the state when the node pool is being deleted

"Failed"

ProvisioningStateFailed is the state when the node pool is failed

"Succeeded"

ProvisioningStateSucceeded is the state when the node pool is created

"Unknown"

ProvisioningStateUnknown is the state when the node pool is unknown

"Updating"

ProvisioningStateUpdating is the state when the node pool is being updated

QuotaLimitSpec

(Appears on: QuotaLimit)

QuotaLimitSpec provide the default ResourceQuota and LimitRange settings. They can be applied to all namespaces for a workspace Optionally they can relate to specific namespaces only

FieldDescription
name

string

TemplateName is the immutable name to track the tempate that was used Would normally specify a QuotaLimit “size” for a tenant

constraints
Constraints

Constraints are for providing management of resource constraints to workloads - Typically only managed by cluster owners to provide hard resource constraints - Used to prevent noisy neigbor issues in a multi-tenanted environment

namespaceClaim
Ownership

NamespaceClaim is the reference for a specific namespace claim that resulted in this object

QuotaLimitStatus

(Appears on: QuotaLimit)

QuotaLimitStatus provides the status of a QuotaLimit object

FieldDescription
CommonStatus
CommonStatus

(Members of CommonStatus are embedded into this type.)

Status is the status of the QuotaLimit

QuotaLimitTemplate

(Appears on: ClusterQuotaLimits)

QuotaLimitTemplate provides template values on clusters and plans

FieldDescription
name

string

TemplateName is the immutable name to track the tempate that was used Would normally specify a QuotaLimit “size” for a tenant

constraints
Constraints

Constraints are for providing management of resource constraints to workloads - Typically only managed by cluster owners to provide hard resource constraints - Used to prevent noisy neigbor issues in a multi-tenanted environment

resourceDefaults
[]LimitRangeDefault

ResourceDefaults provide defaults for workloads (to prevent initial constraint violations) Not set directly or managed by owners (as only maximum values taken so should not conflict)

Security

(Appears on: ClusterShared)

Security defines the security options for a cluster

FieldDescription
podSecurityStandard
PodSecurityStandard

PodSecurityStandard indicates we want to use the pod security standard

SpotInstancesOptions

(Appears on: NodePoolSpec)

SpotInstancesOptions defines the options for spot instances

FieldDescription
enabled

bool

Enabled indicates the node pool should use spots

aks
AKSNodePoolSpotInstances

AKS defines the options for AKS spot instances

eks
EKSNodePoolSpotInstances

EKS provides additional options for EKS

UnmanagedContainerRegistryParameters

(Appears on: ContainerRegistryProviderDetails)

UnmanagedContainerRegistryParameters

UnmanagedNodePoolSpec

(Appears on: NodePoolProviderDetails)

UnmanagedNodePoolSpec defines the spec for an unmanaged nodepool

UnmanagedSpec

(Appears on: ClusterProviderDetails)

UnmanagedSpec defines the spec for unmanaged cluster

WindowsProfile

(Appears on: AKSSpec)

WindowsProfile is the configuration for Windows VMs

FieldDescription
adminPassword

string

AdminPassword is the admin password for Windows VMs

adminUsername

string

AdminUsername is the admin username for Windows VMs