Dmytro Dovbii 7cb39996f0 Restructure murano-apps repository
Change-Id: I9cdb1e4afcb9929c7b7a5437faaa25d284daefdb
Closes-Bug: #1441644
2015-04-14 09:42:21 +03:00

172 lines
6.0 KiB
YAML

Version: 2
Templates:
masterNode:
?:
type: io.murano.apps.docker.kubernetes.KubernetesMasterNode
instance:
?:
type: io.murano.resources.LinuxMuranoInstance
name: generateHostname($.appConfiguration.unitNamingPattern, 1)
flavor: $.instanceConfiguration.flavor
image: 'ubuntu14.04-x64-kubernetes'
assignFloatingIp: $.appConfiguration.assignFloatingIP
keyname: $.instanceConfiguration.keyPair
availabilityZone: $.instanceConfiguration.availabilityZone
minionNode:
?:
type: io.murano.apps.docker.kubernetes.KubernetesMinionNode
instance:
?:
type: io.murano.resources.LinuxMuranoInstance
name: generateHostname($.appConfiguration.unitNamingPattern, $index + 1)
flavor: $.instanceConfiguration.flavor
image: 'ubuntu14.04-x64-kubernetes'
assignFloatingIp: $.appConfiguration.assignFloatingIP
keyname: $.instanceConfiguration.keyPair
enableMonitoring: $.appConfiguration.enableMonitoring
gatewayNode:
?:
type: io.murano.apps.docker.kubernetes.KubernetesGatewayNode
instance:
?:
type: io.murano.resources.LinuxMuranoInstance
name: generateHostname($.appConfiguration.gatewayNamingPattern, $index)
flavor: $.instanceConfiguration.flavor
image: 'ubuntu14.04-x64-kubernetes'
assignFloatingIp: $.appConfiguration.assignGatewayFloatingIP
keyname: $.instanceConfiguration.keyPair
Application:
?:
type: io.murano.apps.docker.kubernetes.KubernetesCluster
name: $.appConfiguration.name
masterNode: $masterNode
minionNodes: repeat($minionNode, $.appConfiguration.maxMinionCount)
nodeCount: $.appConfiguration.minionCount
gatewayCount: $.appConfiguration.gatewayCount
gatewayNodes: repeat($gatewayNode, $.appConfiguration.maxGatewayCount)
dockerRegistry: $.appConfiguration.dockerRegistry
Forms:
- appConfiguration:
fields:
- name: name
type: string
label: Cluster Name
initial: KubernetesCluster
description: >-
Enter a desired name for the application. Just A-Z, a-z, 0-9, dash and
underline are allowed
- name: minionCount
type: integer
label: Initial/current number of minions
initial: 2
minValue: 1
required: true
description: >-
Select number of minions
- name: maxMinionCount
type: integer
label: Maximum number of minions
initial: 3
required: true
minValue: 1
description: >-
Select maximum number of minions
- name: assignFloatingIP
type: boolean
initial: true
label: Assign floating IP to Kubernetes nodes
description: >-
Check to assign floating IP to Kubernetes nodes
required: false
- name: unitNamingPattern
type: string
initial: 'kube-#'
helpText: \'#\' expands to machine sequence number
required: false
description: >-
For your convenience instance hostname can be specified.
Enter a name or leave blank for random name generation.
regexpValidator: '^(([a-zA-Z0-9#][a-zA-Z0-9-#]*[a-zA-Z0-9#])\.)*([A-Za-z0-9#]|[A-Za-z0-9#][A-Za-z0-9-#]*[A-Za-z0-9#])$'
label: Kubernetes node hostname pattern
- name: enableMonitoring
type: boolean
initial: true
required: false
label: Enable cAdvisor monitoring
description: >-
Enable cAdvisor monitoring
- name: gatewayCount
type: integer
label: Initial/current number of gateway nodes
initial: 1
minValue: 0
required: true
description: >-
External traffic will be routed through gateway nodes.
Increasing gateways count allows to set up complex and HA clusters.
- name: maxGatewayCount
type: integer
label: Maximum number of gateway nodes
initial: 2
required: true
minValue: 0
description: >-
Maximum number of gateway nodes.
Taken into account when performing scalability actions.
- name: assignGatewayFloatingIP
type: boolean
initial: true
label: Assign floating IP to gateway nodes
description: >-
Check to assign floating IP to gateway nodes
required: false
- name: gatewayNamingPattern
type: string
initial: gateway-#
required: false
regexpValidator: '^(([a-zA-Z0-9#][a-zA-Z0-9-#]*[a-zA-Z0-9#])\.)*([A-Za-z0-9#]|[A-Za-z0-9#][A-Za-z0-9-#]*[A-Za-z0-9#])$'
label: Gateway hostname pattern
helpText: \'#\' expands to gateway sequence number
description: >-
Check to assign floating IP to gateway nodes
- name: dockerRegistry
type: string
label: Custom Docker registry URL
description: >-
URL of docker repository mirror to use.
Leave empty to use Docker default.
required: false
- instanceConfiguration:
fields:
- name: title
type: string
required: false
hidden: true
description: Specify some instance parameters on which application would be created.
- name: flavor
type: flavor
label: Instance flavor
description: >-
Select one of the existing flavors. Consider that application performance
depends on this parameter.
required: false
- name: keyPair
type: keypair
label: Key Pair
description: >-
Select the Key Pair to control access to instances. You can login to
instances using this KeyPair after the deployment.
required: false
- name: availabilityZone
type: azone
label: Availability zone
description: Select an availability zone where the application would be installed.
required: false