vRealize Automation Content Service API 7.4

Content Management Service API Specification

What Is the Content Management Service?

You can use the content management service REST API to import and export content, such as blueprints, software components, and other artifacts, from vRealize Automation systems.

vRealize Automation customers often experiment with system artifacts in their development or staging environments. When appropriate, users need to move the artifacts to their production environments or between different tenants.

Increasingly, customers who have adopted the DevOps philosophy have developers who are responsible not only for their application code but for every aspect of how their application is deployed into machines and how the OS and application software is configured. Such development teams generally manage OS and application configurations as human readable text files, often using Domain Specific Language (DSL). Chef, Puppet, and Salt are the most widely used DSLs. Developers use DSLs to manage OS and application configurations almost exactly as they manage their own application code.

For example, they:

  • Check the configurations into source control systems.
  • May have different branches corresponding to development, test, staging, and production deployments of their applications.
  • Diff these branches to see what's different between such deployments and send out diffs of config changes when they send review requests.

This approach solves the key problem of providing full visibility into what's different between different deployments and helps understand why an application works in one deployment but not in another.

The content exported from the content service can be treated as the "as-code" representation of the content artifacts and can be managed using any popular source control systems.

Typical Use Cases

Depending on the type of content that is being processed, an application architect, infrastructure architect, software architect, tenant administrator, or XaaS architect can:

  • Import or export data into an environment.
  • Move content between tenants or environment; for example, moves data from a staging environment to a production environment.
  • An application architect can import/export blueprint data.
  • An infrastructure architect can import/export machine blueprints, application blueprints, and base blueprints.
  • A software architect can import/export software, XaaS blueprints, and application blueprints.
  • An XaaS architect can import/export XaaS blueprints.

An application developer uses the REST API to perform these activities from application code.

Important Notes

  1. Rollback of data is not supported.
  2. We highly recommend that you validate data before importing it.

Two APIs are provided to validate data:

POST /api/packages/validate Validates the content in a zip package.

GET /api/packages/{id}/validate Performs dry run validation of the contents of a package prior to exporting it.

Key Concepts

Content

Content is an artifact or entity or information that provides value for an end-user/audience in specific context. Currently vRealize Automation supports artifacts like composite blueprints, software components, XaaS blueprints, property groups, and property definitions. Individual content artifacts are represented in YAML (YAML Ain't Markup Language) format.

Content Provider

The service/provider that wants to work with the content management service and provide content to it, i.e, manage its content.

Content Type

A type is that contains metadata about the content provider and content itself. such as type information, service type ID, and so on. Usually, this is provided by the content provider. vRealize Automation has built-in content types ready to go for the content artifacts mentioned above.

Domain Specific Language

A domain specific language (DSL) is a special set of words related to a particular task. Some DevOps tools provide DSLs so that engineers can script automation actions using terminology that is directly related to the task at hand.

Additional Information

For more detailed information on using the the API, refer to the vRA Programming Guide.

 

Related Documentation

Related Sample Code

  • vRealize Automation - Content Management Service

    Contributor VMware

    vRealize Automation - Content Management Service You can use the content management service REST API to import and export content, such as blueprints, software components, and other artifacts, from vR ...
    vRealize Automation api_vra_content_management api_vra_composition POSTMAN Collection
    Download

    0 Comments

    Updated 1 year ago