Using Dynamic Types with Custom Resources in VMware Aria Automation Automation Assembler
You can expand the functionality of your VMware Aria Automation cloud templates by using dynamic types-based custom resources.
When you create cloud templates in VMware Aria Automation Automation Assembler, you can use different resource types. Examples of resource types include Amazon S3 Buckets, Cloud Agnostics Machines, NSX networks, vSphere Virtual Machines, Microsoft Azure Resource Groups, and others.
You can use VMware Aria Automation Automation Assembler to create custom resources for use cases that are not covered by the preconfigured resource types.
Each custom resource is based on a Automation Orchestrator SDK inventory type and is created by a Automation Orchestrator workflow that has an output which is an instance of your desired SDK type. Primitive types, such as
Properties
, Date
, string
, and number
are not supported for the creation of custom resources. You can add custom resources to your cloud template design canvas for use during you lifecycle extensibility deployments.SDK object types can be differentiated from other property types by the colon (":") used to separate the plug-in name and the type name. For example,
AD:UserGroup
is a SDK object type used to manage Active Directory user groups.For more information on VMware Aria Automation Automation Assembler custom resources, see
How to create custom resource types to use in VMware Aria Automation Automation Assembler cloud templates
in Using and Managing VMware Aria Automation Automation Assembler
.The sample workflows included with the sample package in this guide, contain a generic implementation for basic dynamic types objects. The dynamic types sample code creates the object definition, including the dynamic types namespace, if required. All instance of the defined objects are stored in a custom resource as a JSON string. This approach can help speed up VMware Aria Automation custom resource prototyping with dynamic types.
The current guide includes a use case that demonstrates this functionality with a example based on storing additional metadata related to web servers that are deployed by VMware Aria Automation 8.x. In this use case, you use a dynamic types based custom resource to store information about the website that the deployed web server hosts.
In addition to the example provided below, that demonstrates how you can create dynamic types from scratch, you can also leverage the Dynamic Types plug-in generator version 3 to automatically create a plug-in from a OpenAPI/Swagger definition or from individual HTTP REST GET URLs. To download the plug-in generator, see Dynamic Types plug-in generator version 3.