Extensibility
2 minute read
This page is a map of the extension points, ordered by effort: import content someone has already written, assemble blueprints, attach actions, and then extend the interface.
Content Library
The Content Library is CloudBolt’s catalog of ready-made content you can download into your instance, including blueprints, actions, rules, recurring jobs, and UI extensions. Much of it is a complete solution you can use as-is, and the rest serves as a worked example. Start here before building anything from scratch.
Blueprints
Blueprints define the services CMP offers and how it creates and manages them, making them the primary way to extend what users can order. A blueprint is composed of items that deploy infrastructure and actions that run your own logic at each stage of the resource’s lifecycle.
To offer a service that CMP has no built-in support for, build an XaaS blueprint. For guidance on writing them, see Develop blueprints.
Actions
Actions are a mechanism for running code inside CMP. Several types are supported, including plugins, remote scripts, and webhooks. What makes actions useful is where they run from:
- On demand, when a user selects it: server actions and resource actions.
- On a schedule: recurring jobs.
- When something happens: rules.
- At a point in a resource’s life: blueprint actions and orchestration actions.
Actions can also replace CMP behavior. For example:
- Generated parameter options: determine a parameter’s options in code.
- Compute Server Rate: substitute your own rate calculation.
- SSO orchestration actions: configure an SSO user automatically upon login.
For how trigger points work and how to write an action, see Orchestration actions.
UI customization
Branding
Branded portals cover the domains, logos, images, and login pages users see. The colors and layout a portal displays come from its theme configuration, which several portals can share. Neither involves code. For customization beyond them, see How to white-label CloudBolt in the support knowledge base.
Extensions
UI extensions, or XUIs, add to the interface: new screens, forms, and components; extra tabs on existing pages; and entire workflows. Download them from the Content Library or write your own.
Writing a UI extension is advanced work. It requires a background in Django, and we recommend contacting CloudBolt Support before starting anything substantial.
CloudBolt Forge
CloudBolt Forge is an open-source GitHub repository where CloudBolt developers share blueprints, actions, and other content. It is a useful reference when you are planning a solution.
Forge content is not part of the CloudBolt product and is not supported. Expect to review and adapt anything before using it.