Packer.Images/scripts/Update-OvfConfiguration.yml
2022-08-23 14:38:03 +02:00

163 lines
3.8 KiB
YAML

DeploymentConfigurations:
- Id: small
Label: 'Ubuntu Server 22.04 [SMALL: 2 vCPU/4GB RAM]'
Description: Ubuntu Server 22.04.x
Size:
CPU: 2
Memory: 4096
- Id: medium
Label: 'Ubuntu Server 22.04 [MEDIUM: 4 vCPU/8GB RAM]'
Description: Ubuntu Server 22.04.x
Size:
CPU: 4
Memory: 8192
DynamicDisks:
- Description: Longhorn persistent storage
UnitSize: GB
Constraints:
Minimum: 100
Maximum: ''
PropertyCategories:
# - Name: 0) Deployment information
# ProductProperties:
# - Key: deployment.type
# Type: string
# Value:
# - small
# - medium
# UserConfigurable: false
- Name: 1) Kubernetes
ProductProperties:
- Key: metacluster.fqdn
Type: string(1..)
Label: Appliance FQDN*
Description: 'Respective subdomains will be available for each component (e.g. storage.example.org); this address should already be configured as a wildcard record within your DNS zone.'
DefaultValue: 'meta.k8s.cluster'
Configurations: '*'
UserConfigurable: true
- Name: 2) Operating System
ProductProperties:
- Key: guestinfo.hostname
Type: string(1..15)
Label: Hostname*
Description: ''
DefaultValue: 'META-NODE-{{ hostname.suffix }}'
Configurations: '*'
UserConfigurable: true
- Key: guestinfo.rootpw
Type: password(7..)
Label: Local root password*
Description: ''
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
- Key: guestinfo.rootsshkey
Type: password(1..)
Label: Local root SSH public key*
Description: This line should start with 'ssh-rsa AAAAB3N'
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
- Name: 3) 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
- 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: '*'
UserConfigurable: true
- Name: 4) Hypervisor
ProductProperties:
- Key: hv.fqdn
Type: string(1..)
Label: vCenter FQDN/IP-address*
Description: The address of the vCenter instance which this bootstrap appliance will interact with for provisioning new VM's.
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
- Key: hv.username
Type: string(1..)
Label: vCenter username*
Description: The username which this bootstrap appliance will authenticate with to the vCenter instance.
DefaultValue: 'administrator@vsphere.local'
Configurations: '*'
UserConfigurable: true
- Key: hv.password
Type: password(1..)
Label: vCenter password ...*
Description: The password which this bootstrap appliance will authenticate with to the vCenter instance.
DefaultValue: ''
Configurations: '*'
UserConfigurable: true
AdvancedOptions:
- Key: appliance.name
Value: "{{ appliance.name }}"
Required: false
- Key: appliance.version
Value: "{{ appliance.version }}"
Required: false
---
Variables:
- Name: hostname.suffix
Expression: |
(-join ((48..57) + (97..122) | Get-Random -Count 5 | % {[char]$_})).ToUpper()
- Name: appliance.name
Expression: |
$Parameter['appliance.name']
- Name: appliance.version
Expression: |
$Parameter['appliance.version']