Version: 2 Templates: primaryController: ?: type: io.murano.windows.Dummy.PrimaryController host: ?: type: io.murano.services.windows.Host adminPassword: $.serviceConfiguration.adminPassword name: generateHostname($.serviceConfiguration.unitNamingPattern, 1) flavor: $.instanceConfiguration.flavor image: $.instanceConfiguration.osImage availabilityZone: $.instanceConfiguration.availabilityZone secondaryController: ?: type: io.murano.windows.Dummy.SecondaryController host: ?: type: io.murano.services.windows.Host adminPassword: $.serviceConfiguration.adminPassword name: generateHostname($.serviceConfiguration.unitNamingPattern, $index + 1) flavor: $.instanceConfiguration.flavor image: $.instanceConfiguration.osImage Application: ?: type: io.murano.windows.Dummy.Dummy name: $.serviceConfiguration.name primaryController: $primaryController secondaryControllers: repeat($secondaryController, $.serviceConfiguration.dcInstances - 1) Forms: - serviceConfiguration: fields: - name: configuration type: string hidden: true initial: standalone - name: name type: string label: Domain Name description: >- Enter a desired name for a new domain. This name should fit to DNS Domain Name requirements: it should contain only A-Z, a-z, 0-9, (.) and (-) and should not end with a dash. DNS server will be automatically set up on each of the Domain Controller instances. Note: Only first 15 characters or characters before first period is used as NetBIOS name. minLength: 2 maxLength: 255 validators: - expr: regexpValidator: '^([0-9A-Za-z]|[0-9A-Za-z][0-9A-Za-z-]*[0-9A-Za-z])\.[0-9A-Za-z][0-9A-Za-z-]*[0-9A-Za-z]$' message: >- Only letters, numbers and dashes in the middle are allowed. Period characters are allowed only when they are used to delimit the components of domain style names. Single-level domain is not appropriate. Subdomains are not allowed. - expr: regexpValidator: '(^[^.]+$|^[^.]{1,15}\..*$)' message: >- NetBIOS name cannot be shorter than 1 symbol and longer than 15 symbols. - expr: regexpValidator: '(^[^.]+$|^[^.]*\.[^.]{2,63}.*$)' message: >- DNS host name cannot be shorter than 2 symbols and longer than 63 symbols. helpText: >- Just letters, numbers and dashes are allowed. A dot can be used to create subdomains - name: dcInstances type: integer label: Instance Count description: >- You can create several Active Directory instances by setting instance number larger than one. One primary Domain Controller and a few secondary DCs will be created. minValue: 1 maxValue: 100 initial: 1 helpText: Enter an integer value between 1 and 100 - name: adminAccountName type: string label: Account Name initial: Administrator regexpValidator: '^[-\w]+$' errorMessages: invalid: 'Just letters, numbers, underscores and hyphens are allowed.' - name: adminPassword type: password label: Administrator password descriptionTitle: Passwords description: >- Windows requires strong password for service administration. Your password should have at least one letter in each register, a number and a special character. Password length should be a minimum of 7 characters. Once you forget your password you won't be able to operate the service until recovery password would be entered. So it's better for Recovery and Administrator password to be different. - name: recoveryPassword type: password label: Recovery password - name: assignFloatingIP required: false type: floatingip label: Assign Floating IP description: >- Select to true to assign floating IP automatically to Primary DC initial: false required: false widgetMedia: css: {all: ['muranodashboard/css/checkbox.css']} - name: unitNamingPattern type: string label: Hostname template description: >- For your convenience all instance hostnames can be named in the same way. Enter a name and use # character for incrementation. For example, host# turns into host1, host2, etc. Please follow Windows hostname restrictions. 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#])$' # FIXME: does not work for # turning into 2-digit numbers maxLength: 15 helpText: Optional field for a machine hostname template # temporaryHack widgetMedia: js: ['muranodashboard/js/support_placeholder.js'] css: {all: ['muranodashboard/css/support_placeholder.css']} validators: # if unitNamingPattern is given and dcInstances > 1, then '#' should occur in unitNamingPattern - expr: $.serviceConfiguration.dcInstances < 2 or not $.serviceConfiguration.unitNamingPattern.bool() or '#' in $.serviceConfiguration.unitNamingPattern message: Incrementation symbol "#" is required in the Hostname template - instanceConfiguration: fields: - name: title type: string required: false hidden: true descriptionTitle: Instance Configuration description: Specify some instance parameters on which service would be created. - name: flavor type: flavor label: Instance flavor description: >- Select registered in Openstack flavor. Consider that service performance depends on this parameter. required: false - name: osImage type: image imageType: windows label: Instance image description: >- Select valid image for a service. Image should already be prepared and registered in glance. - name: availabilityZone type: azone label: Availability zone description: Select availability zone where service would be installed. required: false