Resource Types (XaaS)¶
CloudBolt allows you, the CloudBolt Admin, to define arbitrary types of custom resources that can be created by Blueprints and therefore managed by CloudBolt. This extension of CloudBolt is referred to as “X as a Service”, or XaaS, because it allows CloudBolt’s Catalog to become the primary place to request anything and everything.
To manage the available Resource Types as a CloudBolt Admin, navigate to the Admin > Resource Types (XaaS) page. By default, CloudBolt ships with one out-of-the-box Resource Type, Service, which essentially replaces the old way that Blueprints (optionally) provisioned services. You can add additional Resource Types, edit existing ones, or delete them. Note the optional Plural Label field, which can be used to improve UX in cases where simply adding an “s” to the label would not be grammatical. You can also set an icon to be displayed for the Resource Type or select parameters to be included as additional columns whenever viewing a list of Resources of that type.
When Blueprint managers are creating or editing Blueprints, these defined Resource Types will be presented as options where they can choose what type of Resource their Blueprint should deploy, if any. Blueprints that don’t create Resources are a special case with some restrictions. If a Blueprint has a Resource Type selected, the high-level result of deploying that Blueprint (beyond what’s defined on the Build tab) will be a Resource of that type.
Therefore, the creation, management, and deletion of different types of Resources are essentially defined using Blueprints. When managing a Blueprint, the Build tab describes how Resources of that type are ordered, the Discovery tab describes another way of bringing them into CloudBolt, the Management tab defines actions that can be taken on deployed Resources of that type, and the Teardown tab describes what (uniquely) happens when Resources of that type are deleted. Of course, multiple Blueprints may deploy a particular Resource Type, which essentially allows for sub-Resource Types. For example, a “Storage” Resource Type may have Blueprints for S3 Buckets, NetApp, and more.
Because types of Resources are defined by Blueprints and CloudBolt supports sub-Blueprints, Resources of any type can also be included as build items in other Blueprints. For convenience, the Build tab when managing Blueprints will have a “+<Resource Type>” (e.g., “+Storage”) button for each configured Resource Type that will have options to choose from (assuming you’re not managing a Blueprint that is already used as a sub-Blueprint somewhere else). When that Blueprint that contains Resources as build items is ordered, it will create a parent Resource and sub-Resources of the appropriate types. The details page for a Resource will show if it has sub-Resources or a parent Resource.