type: object title: Azure AKS Provider configuration description: >

Defines the configuration required to initialize the provider.

required:

- client_id
- client_secret
- region
- subscription
- tenant

properties:

client_id:
  $id: '#/config/client_id'
  type: string
  title: Service Principal Client ID
  description: >
    The associated client id from the service principal account you are
    using to speak to the Azure API.
  default: ''
  pattern: ^.*$

client_secret:
  $id: '#/config/client_secret'
  type: string
  title: Service Principal Client Secret
  description: >
    The client secret of the service principal being used to provision
    the resources with.
  default: ''
  pattern: ^.*$

region:
  $id: '#/config/region'
  type: string
  title: Azure Compute Region
  description: >
    The geographical region which you wish to build the cluster with.
  default: ''
  examples:
    - uksouth
  pattern: ^.*$

subscription:
  $id: '#/config/subscription'
  type: string
  title: Subsription
  description: >
    The Azure client subscription you are using to provison the resources
    under.
  default: ''
  pattern: ^.*$

tenant:
  $id: '#/config/tenant'
  type: string
  title: Tenant ID
  description: >
    The application tenant id from the application registration / service
    principal you are using. This can be found under the Application
    Registration tab in the Azure portal
  default: ''
  pattern: ^.*$

type: object title: Azure AKS Cluster configuration description: >

Create an Azure AKS managed kubernetes cluster

required:

- machine_type
- services_ipv4_cidr
- ssh_key
- version

properties:

machine_type:
  $id: '#/properties/machine_type'
  tag: default
  type: string
  title: Machine Type
  description: >
    The machine type which the default nodes pool should use.
  examples:
    - Standard_DS2_v2
  pattern: ^(.*)$

services_ipv4_cidr:
  $id: '#/properties/services_ipv4_cidr'
  tag: advanced
  type: string
  title: Cluster Services CIDR
  default: ''
  description: >
    An optional network cidr configured for the cluster services,
    otherwise GCP will decide.
  examples:
    - '10.0.0.0/16'
  pattern: ^(([\d]{1,3}\.){3}[\d]{1,3}\/[\d]{1,2}|)$

ssh_key:
  $id: '#/properties/ssh_key'
  tag: default
  type: string
  title: SSH Public Key
  default: ''
  description: >
    A public ssh key used provision the compute nodes with
  examples:
    - ssh-rsa
  pattern: ^ssh-rsa.*$

version:
  $id: '#/properties/version'
  tag: default
  type: string
  title: Initial Kubernetes Version
  default: '1.14.3'
  description: >
    The initial kubernetes version which the cluster should be
    configured with.
  examples:
    - 1.14.3
  pattern: ^(.*)$