Ability to bulk deploy catalog items through Morpheus CLI using multiple YAML/JSON files

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:

@jonathanmier

I believe you were able to solve this with the CLI for catalog. Confirming if this is still an open request.

We would also like to have this feature for instances add functionality.