diff --git a/muranodashboard/services3/ActiveDirectory.yaml b/muranodashboard/services3/ActiveDirectory.yaml
new file mode 100644
index 000000000..4c0d148f1
--- /dev/null
+++ b/muranodashboard/services3/ActiveDirectory.yaml
@@ -0,0 +1,127 @@
+name: Active Directory
+type: activeDirectory
+
+description: >-
+ The Active Directory Service
+ includes one primary and optionally a few secondary
+ Domain Controllers, with DNS
+
+unitTemplates:
+ - isMaster: true
+ recoveryPassword: {YAQL: $.serviceConfiguration.recoveryPassword}
+ - isMaster: false
+ recoveryPassword: {YAQL: $.serviceConfiguration.recoveryPassword}
+
+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.
+ attributeNames: [name, domain]
+ minLength: 2
+ maxLength: 255
+ regexpValidator: '^[0-9A-Za-z](?!--)[0-9A-Za-z\-]{0,13}[0-9A-Za-z]\.[0-9A-Za-z][0-9A-Za-z\-]{0,61}[0-9A-Za-z]$'
+ errorMessages:
+ invalid: >-
+ 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.
+ helpText: >-
+ Just letters, numbers and dashes are allowed.
+ A dot can be used to create subdomains
+ - name: dcInstances
+ type: instance
+ 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.
+ attributeNames: units
+ 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
+ attributeNames: false
+ - 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#])$'
+ 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: {YAQL: $.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
+ attributeNames: false
+ 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
diff --git a/muranodashboard/services3/AspNetApp.yaml b/muranodashboard/services3/AspNetApp.yaml
new file mode 100644
index 000000000..5e72f70a6
--- /dev/null
+++ b/muranodashboard/services3/AspNetApp.yaml
@@ -0,0 +1,105 @@
+name: ASP.NET Application
+type: aspNetApp
+
+description: >-
+ The ASP.NET Application Service installs
+ custom application onto one IIS Web Server
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ description: ASP.NET application will be installed onto one IISWeb Server
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
+ underline are allowed.
+ minLength: 2
+ maxLength: 64
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ helpText: Just letters, numbers, underscores and hyphens are allowed.
+ - name: dcInstances
+ type: instance
+ hidden: true
+ attributeNames: units
+ initial: 1
+ - 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.
+ - name: domain
+ type: domain
+ label: Domain
+ required: false
+ description: >-
+ Service can be joined to the Active Directory domain. If you want to
+ create an AD domain create the AD Service first.
+ helpText: Optional field for a domain to which service can be joined
+ - name: repository
+ type: string
+ label: Git repository
+ description: >-
+ URL of a git repository with the application you want to deploy.
+ regexpValidator: '/(\w+://)(.+@)*([\w\d\.]+)(:[\d]+)?/*(.*)/i'
+ errorMessages:
+ invalid: Enter correct git repository url
+ helpText: Enter a valid git repository URL
+ - 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#])$'
+ helpText: Optional field for a machine hostname template
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/support_placeholder.js]
+ css: {all: [muranodashboard/css/support_placeholder.css]}
+ - instanceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ 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
diff --git a/muranodashboard/services3/AspNetAppFarm.yaml b/muranodashboard/services3/AspNetAppFarm.yaml
new file mode 100644
index 000000000..b42972eac
--- /dev/null
+++ b/muranodashboard/services3/AspNetAppFarm.yaml
@@ -0,0 +1,130 @@
+name: ASP.NET Application Web Farm
+type: aspNetAppFarm
+
+description: >-
+ The ASP.NET Farm Service installs a custom application
+ on a load-balanced array of IIS servers
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ description: >-
+ The ASP.NET application will be installed on a number of IIS Web
+ Servers, and load balancing will be configured.
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
+ underline are allowed.
+ minLength: 2
+ maxLength: 64
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ helpText: Just letters, numbers, underscores and hyphens are allowed.
+ - name: username
+ type: string
+ hidden: true
+ initial: Administrator
+ attributeNames: credentials.username
+ - name: adminPassword
+ type: password
+ attributeNames: [adminPassword, credentials.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.
+ - name: domain
+ type: domain
+ label: Domain
+ required: false
+ description: >-
+ Service can be joined to the Active Directory domain. If you want to
+ create an AD domain create the AD Service first.
+ helpText: Optional field for a domain to which service can be joined
+ - name: repository
+ type: string
+ label: Git repository
+ description: >-
+ URL of a git repository with the application you want to deploy.
+ regexpValidator: '/(\w+://)(.+@)*([\w\d\.]+)(:[\d]+)?/*(.*)/i'
+ errorMessages:
+ invalid: Enter correct git repository url
+ helpText: Enter a valid git repository URL
+ - name: dcInstances
+ type: instance
+ label: Instance Count
+ description: >-
+ Several instances with ASP.NET application can be created at one time.
+ attributeNames: units
+ minValue: 2
+ maxValue: 100
+ initial: 2
+ helpText: Enter an integer value between 2 and 100
+ - name: loadBalancerPort
+ type: integer
+ label: Load Balancer port
+ minValue: 1
+ maxValue: 65536
+ initial: 80
+ description: Specify port number where Load Balancer will be running
+ helpText: Enter an integer value from 1 to 65536
+ - 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#])$'
+ 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: {YAQL: 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
+ attributeNames: false
+ 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
diff --git a/muranodashboard/services3/Demo.yaml b/muranodashboard/services3/Demo.yaml
new file mode 100644
index 000000000..ca9905cdc
--- /dev/null
+++ b/muranodashboard/services3/Demo.yaml
@@ -0,0 +1,80 @@
+name: Demo Service
+type: demoService
+
+description: >-
+ Demo Service
+ shows how Murano is working.
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: configuration
+ type: string
+ hidden: true
+ initial: standalone
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ To identify your service in logs please specify a service name
+ - name: dcInstances
+ type: instance
+ label: Instance Count
+ description: >-
+ Murano can provision more then one instance of the service at a time.
+ For a demo scenario only 2 instances are allowed.
+ attributeNames: units
+ minValue: 1
+ maxValue: 2
+ initial: 2
+ helpText: Enter 1 and 2 value
+ - 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#])$'
+ 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: {YAQL: 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
+ attributeNames: false
+ 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: cirros.demo
+ 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
diff --git a/muranodashboard/services3/LinuxApache.yaml b/muranodashboard/services3/LinuxApache.yaml
new file mode 100644
index 000000000..452b36525
--- /dev/null
+++ b/muranodashboard/services3/LinuxApache.yaml
@@ -0,0 +1,77 @@
+name: Linux Apache
+type: linuxApacheService
+
+description: >-
+ Linux Apache Service
+ Demonstrates a linux agent, which installs Apache web server.
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ To identify your service in logs please specify a service name
+ - name: deployApachePHP
+ label: PHP module
+ type: boolean
+ description: >-
+ Add php support into Apache web server.
+ initial: false
+ required: false
+ widgetMedia:
+ css: {all: [muranodashboard/css/checkbox.css]}
+ - name: dcInstances
+ type: instance
+ minValue: 1
+ maxValue: 10
+ attributeNames: [units, instanceCount]
+ initial: 1
+ label: Instance Count
+ description: Several instances with Apache web Service can be created at one time.
+ helpText: Enter an integer value between 1 and 10
+ - name: unitNamingPattern
+ type: string
+ label: Hostname
+ description: >-
+ For your convenience instance hostname can be specified.
+ Enter a name or leave blank for random name generation.
+ 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#])$'
+ helpText: Optional field for a machine hostname
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/support_placeholder.js]
+ css: {all: [muranodashboard/css/support_placeholder.css]}
+ - instanceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ 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: linux
+ 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
diff --git a/muranodashboard/services3/LinuxTelnet.yaml b/muranodashboard/services3/LinuxTelnet.yaml
new file mode 100644
index 000000000..530ca02ad
--- /dev/null
+++ b/muranodashboard/services3/LinuxTelnet.yaml
@@ -0,0 +1,77 @@
+name: Linux Telnet
+type: linuxTelnetService
+
+description: >-
+ Linux Telnet Service
+ Demonstrates a simple linux agent, which installs Telnet if required.
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ description: Telnet service that can be installed at linux
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
+ underline are allowed.
+ minLength: 2
+ maxLength: 64
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ helpText: Just letters, numbers, underscores and hyphens are allowed.
+ - name: dcInstances
+ type: instance
+ hidden: true
+ attributeNames: units
+ initial: 1
+ - name: unitNamingPattern
+ type: string
+ label: Hostname
+ description: >-
+ For your convenience instance hostname can be specified.
+ Enter a name or leave blank for random name generation.
+ 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#])$'
+ helpText: Optional field for a machine hostname
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/support_placeholder.js]
+ css: {all: [muranodashboard/css/support_placeholder.css]}
+ - instanceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ 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: linux
+ 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
diff --git a/muranodashboard/services3/MsSqlServer.yaml b/muranodashboard/services3/MsSqlServer.yaml
new file mode 100644
index 000000000..aef753834
--- /dev/null
+++ b/muranodashboard/services3/MsSqlServer.yaml
@@ -0,0 +1,116 @@
+name: MS SQL Server
+type: msSqlServer
+
+description: >-
+ The MS SQL Service installs an instance of
+ Microsoft SQL Server
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ description: MS SQL Server
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
+ underline are allowed.
+ minLength: 2
+ maxLength: 64
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ helpText: Just letters, numbers, underscores and hyphens are allowed.
+ - name: dcInstances
+ type: instance
+ hidden: true
+ attributeNames: units
+ initial: 1
+ - 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.
+ - name: domain
+ type: domain
+ label: Domain
+ required: false
+ description: >-
+ Service can be joined to the Active Directory domain. If you want to
+ create an AD domain create the AD Service first.
+ helpText: Optional field for a domain to which service can be joined
+ - name: mixedModeAuth
+ type: boolean
+ label: Mixed-mode Authentication
+ initial: true
+ required: false
+ description: >-
+ Mixed authentication mode allows the use of Windows
+ credentials but supplements them with local SQL Server user
+ accounts that the administrator may create and maintain within
+ SQL Server. If this mode is on SA password is required
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/mixed-mode.js]
+ css: {all: [muranodashboard/css/checkbox.css]}
+ - name: saPassword
+ type: password
+ label: SA Password
+ description: Set system administrator password for the MS SQL Server.
+ helpText: SQL server System Administrator account
+ required: {YAQL: $.serviceConfiguration.mixedModeAuth}
+ - 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#])$'
+ helpText: Optional field for a machine hostname template
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/support_placeholder.js]
+ css: {all: [muranodashboard/css/support_placeholder.css]}
+ - instanceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ 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
diff --git a/muranodashboard/services3/WebServer.yaml b/muranodashboard/services3/WebServer.yaml
new file mode 100644
index 000000000..b9f917ea3
--- /dev/null
+++ b/muranodashboard/services3/WebServer.yaml
@@ -0,0 +1,96 @@
+name: Internet Information Services
+type: webServer
+
+description: >-
+ The Internet Information Service
+ sets up an IIS server and joins it into an existing domain
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ description: Standalone IIS Server
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
+ underline are allowed.
+ minLength: 2
+ maxLength: 64
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ helpText: Just letters, numbers, underscores and hyphens are allowed.
+ - name: dcInstances
+ type: instance
+ hidden: true
+ attributeNames: units
+ initial: 1
+ - 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.
+ - name: domain
+ type: domain
+ label: Domain
+ required: false
+ description: >-
+ Service can be joined to the Active Directory domain. If you want to
+ create an AD domain create the AD Service first.
+ helpText: Optional field for a domain to which service can be joined
+ - 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#])$'
+ helpText: Optional field for a machine hostname template
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/support_placeholder.js]
+ css: {all: [muranodashboard/css/support_placeholder.css]}
+ - instanceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ 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
diff --git a/muranodashboard/services3/WebServerFarm.yaml b/muranodashboard/services3/WebServerFarm.yaml
new file mode 100644
index 000000000..9d0d654bc
--- /dev/null
+++ b/muranodashboard/services3/WebServerFarm.yaml
@@ -0,0 +1,117 @@
+name: Internet Information Services Web Farm
+type: webServerFarm
+
+description: >-
+ The IIS Farm Service sets up a load-balanced set of IIS servers
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: title
+ type: string
+ hidden: true
+ required: false
+ attributeNames: false
+ description: A load-balanced array of IIS servers
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
+ underline are allowed.
+ minLength: 2
+ maxLength: 64
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ helpText: Just letters, numbers, underscores and hyphens are allowed.
+ - name: username
+ type: string
+ hidden: true
+ initial: Administrator
+ attributeNames: credentials.username
+ - name: adminPassword
+ type: password
+ attributeNames: [adminPassword, credentials.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.
+ - name: domain
+ type: domain
+ label: Domain
+ required: false
+ description: >-
+ Service can be joined to the Active Directory domain. If you want to
+ create an AD domain create the AD Service first.
+ helpText: Optional field for a domain to which service can be joined
+ - name: dcInstances
+ type: instance
+ minValue: 2
+ maxValue: 100
+ attributeNames: [units, instanceCount]
+ initial: 2
+ label: Instance Count
+ description: Several instances with IIS Service can be created at one time.
+ helpText: Enter an integer value between 2 and 100
+ - name: loadBalancerPort
+ type: integer
+ label: Load Balancer port
+ minValue: 1
+ maxValue: 65536
+ initial: 80
+ description: Specify port number where Load Balancer will be running
+ helpText: Enter an integer value from 1 to 65536
+ - 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#])$'
+ 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: {YAQL: 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
+ attributeNames: false
+ 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
diff --git a/muranodashboard/services5/ActiveDirectory.yaml b/muranodashboard/services5/ActiveDirectory.yaml
new file mode 100644
index 000000000..4c0d148f1
--- /dev/null
+++ b/muranodashboard/services5/ActiveDirectory.yaml
@@ -0,0 +1,127 @@
+name: Active Directory
+type: activeDirectory
+
+description: >-
+ The Active Directory Service
+ includes one primary and optionally a few secondary
+ Domain Controllers, with DNS
+
+unitTemplates:
+ - isMaster: true
+ recoveryPassword: {YAQL: $.serviceConfiguration.recoveryPassword}
+ - isMaster: false
+ recoveryPassword: {YAQL: $.serviceConfiguration.recoveryPassword}
+
+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.
+ attributeNames: [name, domain]
+ minLength: 2
+ maxLength: 255
+ regexpValidator: '^[0-9A-Za-z](?!--)[0-9A-Za-z\-]{0,13}[0-9A-Za-z]\.[0-9A-Za-z][0-9A-Za-z\-]{0,61}[0-9A-Za-z]$'
+ errorMessages:
+ invalid: >-
+ 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.
+ helpText: >-
+ Just letters, numbers and dashes are allowed.
+ A dot can be used to create subdomains
+ - name: dcInstances
+ type: instance
+ 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.
+ attributeNames: units
+ 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
+ attributeNames: false
+ - 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#])$'
+ 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: {YAQL: $.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
+ attributeNames: false
+ 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
diff --git a/muranodashboard/services5/AspNetApp.yaml b/muranodashboard/services5/AspNetApp.yaml
new file mode 100644
index 000000000..5e72f70a6
--- /dev/null
+++ b/muranodashboard/services5/AspNetApp.yaml
@@ -0,0 +1,105 @@
+name: ASP.NET Application
+type: aspNetApp
+
+description: >-
+ The ASP.NET Application Service installs
+ custom application onto one IIS Web Server
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ description: ASP.NET application will be installed onto one IISWeb Server
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
+ underline are allowed.
+ minLength: 2
+ maxLength: 64
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ helpText: Just letters, numbers, underscores and hyphens are allowed.
+ - name: dcInstances
+ type: instance
+ hidden: true
+ attributeNames: units
+ initial: 1
+ - 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.
+ - name: domain
+ type: domain
+ label: Domain
+ required: false
+ description: >-
+ Service can be joined to the Active Directory domain. If you want to
+ create an AD domain create the AD Service first.
+ helpText: Optional field for a domain to which service can be joined
+ - name: repository
+ type: string
+ label: Git repository
+ description: >-
+ URL of a git repository with the application you want to deploy.
+ regexpValidator: '/(\w+://)(.+@)*([\w\d\.]+)(:[\d]+)?/*(.*)/i'
+ errorMessages:
+ invalid: Enter correct git repository url
+ helpText: Enter a valid git repository URL
+ - 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#])$'
+ helpText: Optional field for a machine hostname template
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/support_placeholder.js]
+ css: {all: [muranodashboard/css/support_placeholder.css]}
+ - instanceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ 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
diff --git a/muranodashboard/services5/Demo.yaml b/muranodashboard/services5/Demo.yaml
new file mode 100644
index 000000000..ca9905cdc
--- /dev/null
+++ b/muranodashboard/services5/Demo.yaml
@@ -0,0 +1,80 @@
+name: Demo Service
+type: demoService
+
+description: >-
+ Demo Service
+ shows how Murano is working.
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: configuration
+ type: string
+ hidden: true
+ initial: standalone
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ To identify your service in logs please specify a service name
+ - name: dcInstances
+ type: instance
+ label: Instance Count
+ description: >-
+ Murano can provision more then one instance of the service at a time.
+ For a demo scenario only 2 instances are allowed.
+ attributeNames: units
+ minValue: 1
+ maxValue: 2
+ initial: 2
+ helpText: Enter 1 and 2 value
+ - 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#])$'
+ 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: {YAQL: 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
+ attributeNames: false
+ 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: cirros.demo
+ 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
diff --git a/muranodashboard/services5/LinuxApache.yaml b/muranodashboard/services5/LinuxApache.yaml
new file mode 100644
index 000000000..452b36525
--- /dev/null
+++ b/muranodashboard/services5/LinuxApache.yaml
@@ -0,0 +1,77 @@
+name: Linux Apache
+type: linuxApacheService
+
+description: >-
+ Linux Apache Service
+ Demonstrates a linux agent, which installs Apache web server.
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ To identify your service in logs please specify a service name
+ - name: deployApachePHP
+ label: PHP module
+ type: boolean
+ description: >-
+ Add php support into Apache web server.
+ initial: false
+ required: false
+ widgetMedia:
+ css: {all: [muranodashboard/css/checkbox.css]}
+ - name: dcInstances
+ type: instance
+ minValue: 1
+ maxValue: 10
+ attributeNames: [units, instanceCount]
+ initial: 1
+ label: Instance Count
+ description: Several instances with Apache web Service can be created at one time.
+ helpText: Enter an integer value between 1 and 10
+ - name: unitNamingPattern
+ type: string
+ label: Hostname
+ description: >-
+ For your convenience instance hostname can be specified.
+ Enter a name or leave blank for random name generation.
+ 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#])$'
+ helpText: Optional field for a machine hostname
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/support_placeholder.js]
+ css: {all: [muranodashboard/css/support_placeholder.css]}
+ - instanceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ 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: linux
+ 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
diff --git a/muranodashboard/services5/LinuxTelnet.yaml b/muranodashboard/services5/LinuxTelnet.yaml
new file mode 100644
index 000000000..530ca02ad
--- /dev/null
+++ b/muranodashboard/services5/LinuxTelnet.yaml
@@ -0,0 +1,77 @@
+name: Linux Telnet
+type: linuxTelnetService
+
+description: >-
+ Linux Telnet Service
+ Demonstrates a simple linux agent, which installs Telnet if required.
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ description: Telnet service that can be installed at linux
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
+ underline are allowed.
+ minLength: 2
+ maxLength: 64
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ helpText: Just letters, numbers, underscores and hyphens are allowed.
+ - name: dcInstances
+ type: instance
+ hidden: true
+ attributeNames: units
+ initial: 1
+ - name: unitNamingPattern
+ type: string
+ label: Hostname
+ description: >-
+ For your convenience instance hostname can be specified.
+ Enter a name or leave blank for random name generation.
+ 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#])$'
+ helpText: Optional field for a machine hostname
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/support_placeholder.js]
+ css: {all: [muranodashboard/css/support_placeholder.css]}
+ - instanceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ 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: linux
+ 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
diff --git a/muranodashboard/services5/MsSqlClusterServer.yaml b/muranodashboard/services5/MsSqlClusterServer.yaml
new file mode 100644
index 000000000..d8ef8507f
--- /dev/null
+++ b/muranodashboard/services5/MsSqlClusterServer.yaml
@@ -0,0 +1,236 @@
+name: MS SQL Server Cluster
+type: msSqlClusterServer
+
+description: >-
+ The MS SQL Failover Cluster installs
+ Microsoft SQL Failover Cluster Server
+
+unitTemplates:
+ - isMaster: true
+ isSync: true
+ name: 'node-#'
+ - isMaster: false
+ isSync: true
+ name: 'node-#'
+ - isMaster: false
+ isSync: false
+ name: 'node-#'
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ description: MS SQL Failover Cluster
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
+ underline are allowed.
+ minLength: 2
+ maxLength: 64
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ helpText: 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.
+ - name: externalAD
+ type: boolean
+ label: Active Directory is configured by the System Administrator
+ widgetAttrs: # temporary hack
+ class: external-ad
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/external-ad.js]
+ css: {all: [muranodashboard/css/checkbox.css]}
+ required: false
+ - name: domainAdminUserName
+ type: string
+ label: Active Directory User
+ enabled: {YAQL: $.serviceConfiguration.externalAD}
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ - name: domainAdminPassword
+ type: password
+ label: Active Directory Password
+ enabled: {YAQL: $.serviceConfiguration.externalAD}
+ - name: domain
+ type: domain
+ label: Domain
+ enabled: {YAQL: not $.serviceConfiguration.externalAD}
+ description: >-
+ Service can be joined to the Active Directory domain. If you want to
+ create an AD domain create the AD Service first.
+ helpText: Optional field for a domain to which service can be joined
+ - name: mixedModeAuth
+ type: boolean
+ label: Mixed-mode Authentication
+ initial: true
+ required: false
+ description: >-
+ Mixed authentication mode allows the use of Windows
+ credentials but supplements them with local SQL Server user
+ accounts that the administrator may create and maintain within
+ SQL Server. If this mode is on SA password is required
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/mixed-mode.js]
+ css: {all: [muranodashboard/css/checkbox.css]}
+ - name: saPassword
+ type: password
+ label: SA Password
+ description: Set system administrator password for the MS SQL Server.
+ helpText: SQL server System Administrator account
+ enabled: {YAQL: $.serviceConfiguration.mixedModeAuth}
+ - clusterConfiguration:
+ fields:
+ - name: clusterIp
+ type: clusterip
+ label: Cluster Static IP
+ description: Specify a valid IPv4 fixed IP.
+ - name: clusterName
+ type: string
+ label: Cluster Name
+ helpText: Service name for new SQL Cluster service
+ description: >-
+ Specify a name of a cluster. Just A-Z, a-z, 0-9, dash and underline are allowed.
+ - name: agGroupName
+ type: string
+ label: Availability Group Name
+ helpText: Name of AG during SQL setup
+ regexpValidator: '^[A-Za-z0-9_-]+$'
+ description: >-
+ Specify a name of an AG. Just A-Z, a-z, 0-9, dash and underline are allowed.
+ - name: agListenerName
+ type: string
+ label: Availability Group Listener Name
+ helpText: FQDN name of a new DNS entry for AG Listener endpoint
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ description: >-
+ Specify a name of an AG Listener . Just A-Z, a-z, 0-9, dash and underline are allowed.
+ - name: agListenerIP
+ type: clusterip
+ label: Availability Group Listener IP
+ description: Specify a valid IPv4 fixed IP.
+ - name: sqlServiceUserName
+ type: string
+ label: SQL User Name
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ description: User name that will be created to manage cluster instances.
+ - name: sqlServicePassword
+ type: password
+ label: SQL User Password
+ description: User password that will be created to manage cluster instances.
+ - name: dcInstances
+ type: instance
+ label: Instance Count
+ minValue: 2
+ maxValue: 5
+ initial: 2
+ attributeNames: false
+ helpText: Enter an integer value between 2 and 5
+ description: Microsoft SQL Failover Cluster includes up to 5 instances.
+ - 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#])$'
+ 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: {YAQL: not $.clusterConfiguration.unitNamingPattern.bool() or '#' in $.clusterConfiguration.unitNamingPattern}
+ message: Incrementation symbol "#" is required in the Hostname template
+ # if IP is not valid on its own, it will be empty - the
+ # first check is needed to not emit comparison error when
+ # both IPs are not valid
+ - expr: {YAQL: not $.clusterConfiguration.clusterIP.bool() or $.clusterConfiguration.clusterIP != $.clusterConfiguration.agListenerIP}
+ message: Listener IP and Cluster Static IP should be different
+ - unitsConfiguration:
+ fields:
+ - name: nodes
+ type: table
+ label: Nodes
+ attributeNames: units
+ columns:
+ - columnName: name
+ columnType: label
+ title: Node
+ - columnName: isSync
+ columnType: checkbox
+ title: Sync
+ - columnName: isMaster
+ columnType: radio
+ title: Master
+ initial: {YAQL: $.clusterConfiguration.dcInstances}
+ description: >-
+ Configure cluster instances. Cluster node quantity can be set
+ with 'Add' and 'Remove' buttons. Configure Sync mode by
+ enabling corresponding checkbox. All other nodes will be in
+ Async mode. Just 2 nodes are allowed to be Sync. Also one
+ Master node need to be selected. SQL Failover cluster has
+ limit of 5 instances.
+ - name: databases
+ type: databaselist
+ label: Database list
+ description: >-
+ Specify names for new databases which will be created as part
+ of service installation. Here should come comma-separated list
+ of database names, where each name has the following syntax:
+ first symbol should be latin letter or underscore; subsequent
+ symbols can be latin letter, numeric, underscore, at sign,
+ number sign or dollar sign.
+ helpText: Enter comma separated list of databases that will be created
+ - instanceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ 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
diff --git a/muranodashboard/services5/MsSqlServer.yaml b/muranodashboard/services5/MsSqlServer.yaml
new file mode 100644
index 000000000..aef753834
--- /dev/null
+++ b/muranodashboard/services5/MsSqlServer.yaml
@@ -0,0 +1,116 @@
+name: MS SQL Server
+type: msSqlServer
+
+description: >-
+ The MS SQL Service installs an instance of
+ Microsoft SQL Server
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ description: MS SQL Server
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
+ underline are allowed.
+ minLength: 2
+ maxLength: 64
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ helpText: Just letters, numbers, underscores and hyphens are allowed.
+ - name: dcInstances
+ type: instance
+ hidden: true
+ attributeNames: units
+ initial: 1
+ - 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.
+ - name: domain
+ type: domain
+ label: Domain
+ required: false
+ description: >-
+ Service can be joined to the Active Directory domain. If you want to
+ create an AD domain create the AD Service first.
+ helpText: Optional field for a domain to which service can be joined
+ - name: mixedModeAuth
+ type: boolean
+ label: Mixed-mode Authentication
+ initial: true
+ required: false
+ description: >-
+ Mixed authentication mode allows the use of Windows
+ credentials but supplements them with local SQL Server user
+ accounts that the administrator may create and maintain within
+ SQL Server. If this mode is on SA password is required
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/mixed-mode.js]
+ css: {all: [muranodashboard/css/checkbox.css]}
+ - name: saPassword
+ type: password
+ label: SA Password
+ description: Set system administrator password for the MS SQL Server.
+ helpText: SQL server System Administrator account
+ required: {YAQL: $.serviceConfiguration.mixedModeAuth}
+ - 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#])$'
+ helpText: Optional field for a machine hostname template
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/support_placeholder.js]
+ css: {all: [muranodashboard/css/support_placeholder.css]}
+ - instanceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ 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
diff --git a/muranodashboard/services5/WebServer.yaml b/muranodashboard/services5/WebServer.yaml
new file mode 100644
index 000000000..b9f917ea3
--- /dev/null
+++ b/muranodashboard/services5/WebServer.yaml
@@ -0,0 +1,96 @@
+name: Internet Information Services
+type: webServer
+
+description: >-
+ The Internet Information Service
+ sets up an IIS server and joins it into an existing domain
+
+unitTemplates:
+ - {}
+
+forms:
+ - serviceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ description: Standalone IIS Server
+ - name: name
+ type: string
+ label: Service Name
+ description: >-
+ Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
+ underline are allowed.
+ minLength: 2
+ maxLength: 64
+ regexpValidator: '^[-\w]+$'
+ errorMessages:
+ invalid: Just letters, numbers, underscores and hyphens are allowed.
+ helpText: Just letters, numbers, underscores and hyphens are allowed.
+ - name: dcInstances
+ type: instance
+ hidden: true
+ attributeNames: units
+ initial: 1
+ - 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.
+ - name: domain
+ type: domain
+ label: Domain
+ required: false
+ description: >-
+ Service can be joined to the Active Directory domain. If you want to
+ create an AD domain create the AD Service first.
+ helpText: Optional field for a domain to which service can be joined
+ - 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#])$'
+ helpText: Optional field for a machine hostname template
+ # temporaryHack
+ widgetMedia:
+ js: [muranodashboard/js/support_placeholder.js]
+ css: {all: [muranodashboard/css/support_placeholder.css]}
+ - instanceConfiguration:
+ fields:
+ - name: title
+ type: string
+ required: false
+ hidden: true
+ attributeNames: false
+ 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