DeploymentConfigurations:
- Id: domainmember
  Label: Domain member
  Description: Windows 10 client joined to an Active Directory domain
- Id: standalone
  Label: Stand-alone
  Description: Stand-alone Windows 10 client
PropertyCategories:
- Name: 0) Deployment information
  ProductProperties:
  - Key: deployment.type
    Type: string
    Value:
    - domainmember
    - standalone
    UserConfigurable: false
- Name: 1) Operating System
  ProductProperties:
  - Key: guestinfo.hostname
    Type: string(1..15)
    Label: Hostname*
    Description: '(max length: 15 characters)'
    DefaultValue: ''
    Configurations: '*'
    UserConfigurable: true
  - Key: guestinfo.administratorpw
    Type: password(7..)
    Label: Local administrator password*
    Description: Must meet password complexity rules
    DefaultValue: password
    Configurations:
    - standalone
    UserConfigurable: true
  - Key: guestinfo.ntpserver
    Type: string(1..)
    Label: Time server*
    Description: A comma-separated list of timeservers
    DefaultValue: 0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org
    Configurations:
    - standalone
    UserConfigurable: true
- Name: 2) Networking
  ProductProperties:
  - Key: guestinfo.ipaddress
    Type: ip
    Label: IP Address*
    Description: ''
    DefaultValue: ''
    Configurations: '*'
    UserConfigurable: true
  - Key: guestinfo.prefixlength
    Type: int(8..32)
    Label: Subnet prefix length*
    Description: ''
    DefaultValue: '24'
    Configurations: '*'
    UserConfigurable: true
  - Key: guestinfo.dnsserver
    Type: ip
    Label: DNS server*
    Description: ''
    DefaultValue: ''
    Configurations: '*'
    UserConfigurable: true
  - Key: guestinfo.gateway
    Type: ip
    Label: Gateway*
    Description: ''
    DefaultValue: ''
    Configurations: '*'
    UserConfigurable: true
- Name: 3) Active Directory membership
  ProductProperties:
  - Key: addsconfig.domainname
    Type: string(1..)
    Label: Domain name*
    Description: Must be able to be resolved through provided DNS server
    DefaultValue: example.org
    Configurations:
    - domainmember
    UserConfigurable: true
  - Key: addsconfig.username
    Type: string(1..)
    Label: Domain account username*
    Description: ''
    DefaultValue: username
    Configurations:
    - domainmember
    UserConfigurable: true
  - Key: addsconfig.password
    Type: password(1..)
    Label: Domain account password*
    Description: ''
    DefaultValue: password
    Configurations:
    - domainmember
    UserConfigurable: true
AdvancedOptions:
- Key: appliance.name
  Value: "{{ appliance.name }}"
  Required: false
- Key: appliance.version
  Value: "{{ appliance.version }}"
  Required: false

---
Variables:
- Name: appliance.name
  Expression: |
    $Parameter['appliance.name']
- Name: appliance.version
  Expression: |
    $Parameter['appliance.version']
