Murano Data Source Driver

This blueprint is to add a data source driver for Murano

Problem description

We need a data source to get the Murano environments and applications related data so that we can define policies during and after application service fulfillment

Proposed change

Add data source driver that integrates Congress with Murano with following data tables.

  • Data Tables

    • murano:objects(object_id, owner_id, type)

      This table holds every MuranoPL object instance in an environment.

      • object_id - uuid of the object as used in Murano

      • owner_id - uuid of the owner object as used in Murano

      • type - string with full type identification as used in Murano (e.g., io.murano.Environment,…)

    • murano:parent-types(id, parent_type)

      This table holds parent types of obj_id object.

      • id - uuid of the object as used in Murano

      • parent_type - string with full type identification of the parent object

      Note that Murano supports multiple inheritance, so there can be several parent types for one object

    • murano:properties(id, name, value)

      This table stores object’s properties. For multiple cardinality properties, there can be number of records here.

      • id - uuid of the object as used in Murano

      • name - property name

      • value - property value

      MuranoPL properties referencing class type (i.e., another object) are stored in murano:relationship. Properties with structure has not direct mapping here - it has to be stored here component by component.

    • murano:relationships(source_id, target_id, name)

      This table stores relationship between objects (i.e., MuranoPL property to class).

      • source_id - uuid of the source object

      • target_id - uuid of the target object

      • name - name of the relationship between source and target object

      For multiple cardinality relationships there is several records in the table.

    • murano:states(id, state)

      This table stores EnvironmentStatus of Murano environment

      • id - uuid of the environment

      • state - the state status of the environment

      The state status will be one of ‘READY’, ‘PENDING’, ‘DEPLOYING’, ‘DEPLOY_FAILURE’, ‘DELETING’, ‘DELETE_FAILURE’.




We will have pre and post deployment policies for Murano applications based on the data tables defined in the driver.

Pre deployment policies will cover policies during application service fulfillment and will leverage the Congress simulate feature.

Post deployment policies will cover monitoring policies on fulfilled service instances.

Policy actions

Actions will be added in the second phase.

Data sources


Data model impact


REST API impact


Security impact


Notifications impact


Other end user impact


Performance impact


Other deployer impact


Developer impact





Work items

  • Implement driver and data tables

  • Implement unit tests

  • Integration tests with Murano

  • Add example policies


Murano API


  • Unit tests

  • Integration tests

  • Tempest tests

Documentation impact

Add new documents in standard documentation location