Hi @cory244!
There are many ways to tackle your question, which primarily relies on how you’ve built your Instance Types (if using custom ones) and the virtual images associated with them via layouts and node types or just using the generic technology specific instance types (VMware, AWS, etc.) and choosing the virtual image.
In the example below, I’ll use the VMWARE
instance type, which allows you to choose the virtual image:
When I create an Instance Catalog Item and use the Configuration wizard, I choose the above Instance Type and choose all the other default items I’d want, just as if I was deploying an Instance using Provisioning > Instances > Add
Example:
Once I have my Catalog Item created with the JSON in the CONFIG area, I can now either utilize Forms or Inputs to inject/override the default values. In this example, I’ll use Forms, since it has a field for this already.
If you create a new Form, you can add an Input of “Virtual Image” found under “Provisioning”:
You can attach your Form to your Catalog Item:
Once attached, you can see the Form’s fields to the right side when you are editing your Catalog Item:
I can drag the “Virtual Image” field, into the config to use the value in the config to overwrite values. For example:
-
Before:
-
After:
Note that this particular field does not have the “Auto Inject” option like some other fields may. In those cases, you don’t need to replace the values in the config, just having the field on your Form will do all the work.
There are other places that may also reference the previous virtual image id (5991 in my example above), and for good measure, I usually replace them all but really this is the one that matters for making the change. If you used a custom input (not using the Form like we did), you’d want to make sure your input is providing the ID as the value.
Save the Catalog Item and go to deploy:
As I said in the beginning, there are many ways to achieve this depending on the structure of your Instance Types but this should illustrate how to replace the config values in general too, which would be applicable.
Here are some additional resources:
Hope that helps!