formatVersion: 1
inputs:
environment:
type: string
oneOf:
- title: Development
const: D
- title: Lab
const: L
- title: Management
const: M
- title: Production
const: P
- title: Staging
const: S
- title: Testing
const: T
title: Select Environment
description: Specify which environment this VM should be deployed in.
image1:
type: string
oneOf:
- title: Windows Server 2019
const: Windows Server 2019
- title: Windows SQL Server 2019
const: Windows SQL Server 2019
- title: Windows Server 2016
const: Windows Server 2016
- title: Windows SQL Server 2016
const: Windows SQL Server 2016
- title: REDHAT Enterprise Linux 7
const: REDHAT Enterprise Linux 7
- title: SUSE Enterprise Linux 12
const: SUSE Enterprise Linux 12
- title: SUSE Enterprise Linux 15
const: SUSE Enterprise Linux 15
title: Select Image/OS
image2:
type: string
oneOf:
- title: Windows Server 2019
const: Windows Server 2019
- title: Windows SQL Server 2019
const: Windows SQL Server 2019
- title: Windows Server 2016
const: Windows Server 2016
- title: Windows SQL Server 2016
const: Windows SQL Server 2016
- title: REDHAT Enterprise Linux 7
const: REDHAT Enterprise Linux 7
- title: SUSE Enterprise Linux 12
const: SUSE Enterprise Linux 12
- title: SUSE Enterprise Linux 15
const: SUSE Enterprise Linux 15
title: Select Image/OS
image3:
type: string
oneOf:
- title: Windows Server 2019
const: Windows Server 2019
- title: Windows SQL Server 2019
const: Windows SQL Server 2019
- title: Windows Server 2016
const: Windows Server 2016
- title: Windows SQL Server 2016
const: Windows SQL Server 2016
- title: REDHAT Enterprise Linux 7
const: REDHAT Enterprise Linux 7
- title: SUSE Enterprise Linux 12
const: SUSE Enterprise Linux 12
- title: SUSE Enterprise Linux 15
const: SUSE Enterprise Linux 15
title: Select Image/OS
nets1:
type: string
oneOf:
- title: Web Server
const: web
- title: Application Server
const: app
- title: Database Server
const: db
nets2:
type: string
oneOf:
- title: Web Server
const: web
- title: Application Server
const: app
- title: Database Server
const: db
nets3:
type: string
oneOf:
- title: Web Server
const: web
- title: Application Server
const: app
- title: Database Server
const: db
flavor1:
type: string
oneOf:
- title: 'X-Small: 1 vCPU w/ 2GB RAM'
const: 'X-Small: 1 vCPU w/ 2GB RAM'
- title: 'Small: 2 vCPU w/ 4GB RAM'
const: 'Small: 2 vCPU w/ 4GB RAM'
- title: 'Medium: 4 vCPU w/ 8GB RAM'
const: 'Medium: 4 vCPU w/ 8GB RAM'
- title: 'Large: 6 vCPU w/ 12GB RAM'
const: 'Large: 6 vCPU w/ 12GB RAM'
- title: 'X-Large: 8 vCPU w/ 16GB RAM'
const: 'X-Large: 8 vCPU w/ 16GB RAM'
- title: '2X-Large: 12 vCPU w/ 32GB RAM'
const: '2X-Large: 12 vCPU w/ 32GB RAM'
flavor2:
type: string
oneOf:
- title: 'X-Small: 1 vCPU w/ 2GB RAM'
const: 'X-Small: 1 vCPU w/ 2GB RAM'
- title: 'Small: 2 vCPU w/ 4GB RAM'
const: 'Small: 2 vCPU w/ 4GB RAM'
- title: 'Medium: 4 vCPU w/ 8GB RAM'
const: 'Medium: 4 vCPU w/ 8GB RAM'
- title: 'Large: 6 vCPU w/ 12GB RAM'
const: 'Large: 6 vCPU w/ 12GB RAM'
- title: 'X-Large: 8 vCPU w/ 16GB RAM'
const: 'X-Large: 8 vCPU w/ 16GB RAM'
- title: '2X-Large: 12 vCPU w/ 32GB RAM'
const: '2X-Large: 12 vCPU w/ 32GB RAM'
flavor3:
type: string
oneOf:
- title: 'X-Small: 1 vCPU w/ 2GB RAM'
const: 'X-Small: 1 vCPU w/ 2GB RAM'
- title: 'Small: 2 vCPU w/ 4GB RAM'
const: 'Small: 2 vCPU w/ 4GB RAM'
- title: 'Medium: 4 vCPU w/ 8GB RAM'
const: 'Medium: 4 vCPU w/ 8GB RAM'
- title: 'Large: 6 vCPU w/ 12GB RAM'
const: 'Large: 6 vCPU w/ 12GB RAM'
- title: 'X-Large: 8 vCPU w/ 16GB RAM'
const: 'X-Large: 8 vCPU w/ 16GB RAM'
- title: '2X-Large: 12 vCPU w/ 32GB RAM'
const: '2X-Large: 12 vCPU w/ 32GB RAM'
count1:
type: integer
maxItems: 5
count2:
type: integer
maxItems: 5
count3:
type: integer
maxItems: 5
busUnit:
type: string
oneOf:
- title: Corporate Services
const: C
- title: External DMZ
const: E
- title: Lender Services
const: L
- title: Healthcare
const: H
- title: Personal Lines
const: P
- title: Quotit
const: Q
- title: Shared Services
const: S
title: Select Business Unit
description: Specify which Business Unit is associated with this request.
servRole:
type: string
oneOf:
- title: Application
const: AP
- title: Citrix
const: CX
- title: Domain Controller
const: DC
- title: File
const: FL
- title: Messaging
const: ME
- title: Utility
const: UT
title: Select Server Role
description: Specify what the server role/purpose will be.
servRole1:
type: string
oneOf:
- title: Web
const: WE
servRole3:
type: string
oneOf:
- title: Database
const: DB
resources:
Cloud_vSphere_Network_1:
type: Cloud.vSphere.Network
properties:
networkType: existing
name: web
constraints:
- tag: '${"network:" + to_lower(input.nets1)}'
- tag: '${input.environment == "P" ? "env:prod" : "env:nonprod"}'
CLoud_vSphere_Machine_1:
type: Cloud.vSphere.Machine
properties:
image: '${input.image1}'
flavor: '${input.flavor1}'
folderName: 'VRA_Machines/${env.projectName}'
name: null
count: '${input.count1}'
customizationSpec: '${contains(input.image1,"Windows") ? "W2k16w1" : "LinuxOS"}'
busUnit: '${input.busUnit}'
os-image: '${contains(input.image1, "Windows") ?"WV": "LV"}'
environment: '${input.environment}'
servRole: '${input.servRole1}'
networks:
- tags: []
network: '${resource.Cloud_vSphere_Network_1.id}'
assignment: static
assignIPv6Address: false
assignPublicIpAddress: false
Cloud_vSphere_Network_2:
type: Cloud.vSphere.Network
properties:
networkType: existing
name: app
constraints:
- tag: '${"network:" + to_lower(input.nets2)}'
- tag: '${input.environment == "P" ? "env:prod" : "env:nonprod"}'
Cloud_vSphere_Machine_2:
type: Cloud.vSphere.Machine
properties:
image: '${input.image2}'
flavor: '${input.flavor2}'
folderName: 'VRA_Machines/${env.projectName}'
name: null
count: '${input.count2}'
customizationSpec: '${contains(input.image2,"Windows") ? "W2k16w1" : "LinuxOS"}'
busUnit: '${input.busUnit}'
os-image: '${contains(input.image2, "Windows") ?"WV": "LV"}'
environment: '${input.environment}'
servRole: '${input.servRole}'
networks:
- tags: []
network: '${resource.Cloud_vSphere_Network_2.id}'
assignment: static
assignIPv6Address: false
assignPublicIpAddress: false
Cloud_vSphere_Network_3:
type: Cloud.vSphere.Network
properties:
networkType: existing
name: db
constraints:
- tag: '${"network:" + to_lower(input.nets3)}'
- tag: '${input.environment == "P" ? "env:prod" : "env:nonprod"}'
Cloud_vSphere_Machine_3:
type: Cloud.vSphere.Machine
properties:
image: '${input.image3}'
flavor: '${input.flavor3}'
folderName: 'VRA_Machines/${env.projectName}'
name: null
count: '${input.count3}'
customizationSpec: '${contains(input.image3,"Windows") ? "W2k16w1" : "LinuxOS"}'
busUnit: '${input.busUnit}'
os-image: '${contains(input.image3, "Windows") ?"WV": "LV"}'
environment: '${input.environment}'
servRole: '${input.servRole3}'
networks:
- tags: []
network: '${resource.Cloud_vSphere_Network_3.id}'
assignment: static
assignIPv6Address: false
assignPublicIpAddress: false