Headline:
Ability to create a YAML or JSON file with multiple catalog objects instead of a single object.
Description:
When ordering instances from the catalog you are only able to deploy one instance at a time. Need a feature where we can provide the number of instances we are going to deploy. There is a --payload flag that is available but that also only accepts one file with a single YAML/JSON object. Need the ability to pass multiple files or have one single file with multiple instance objects.
Example/Use case(s):
Currently you are only able to pass one single YAML object per YAML file. The YAML below was created using the morpheus catalog add --curl
command then converting the JSON to YAML.
---
item:
type:
name: Linux
config:
targetGroup: 1
linux8targetLayouts: rhel8.4
linux8targetImage: rhel8.4
IPMode: static
IPAddr: 10.10.10.2
hostname: test
root: '20'
home: '2'
opt: '8'
var: '4'
var_log: '4'
var_log_audit: '4'
var_tmp: '2'
tmp: '2'
targetCloud: 1
context:
Request to be able to pass a file like the one below
---
item:
type:
name: Linux
config1:
targetGroup: 1
linux8targetLayouts: rhel8.4
linux8targetImage: rhel8.4
IPMode: static
IPAddr: 10.10.10.2
hostname: test
root: '20'
home: '2'
opt: '8'
var: '4'
var_log: '4'
var_log_audit: '4'
var_tmp: '2'
tmp: '2'
targetCloud: 1
config2:
targetGroup: 1
linux8targetLayouts: rhel8.4
linux8targetImage: rhel8.4
IPMode: static
IPAddr: 10.10.10.3
hostname: test2
root: '20'
home: '2'
opt: '8'
var: '4'
var_log: '4'
var_log_audit: '4'
var_tmp: '2'
tmp: '2'
targetCloud: 1
config3:
targetGroup: 1
linux8targetLayouts: rhel8.4
linux8targetImage: rhel8.4
IPMode: static
IPAddr: 10.10.10.4
hostname: test3
root: '20'
home: '2'
opt: '8'
var: '4'
var_log: '4'
var_log_audit: '4'
var_tmp: '2'
tmp: '2'
targetCloud: 1
context:
Or pass an array of IP address and have the name be determined based on the amount of IPs. In the example below we would get test-1,test-2 and test-3 for the instance names.
---
item:
type:
name: Linux 8
config:
targetGroup: 1
linux8targetLayouts: rhel8.4
linux8targetImage: rhel8.4
IPMode: static
IPAddr: [10.10.10.2,10.10.10.3,10.10.10.4]
hostname: test
root: '20'
home: '2'
opt: '8'
var: '4'
var_log: '4'
var_log_audit: '4'
var_tmp: '2'
tmp: '2'
targetCloud: 1
context: