Expand description
This crate infers the relationships between TOSCA node templates when given a set of node templates and their requirements.
Each TOSCA requirement found on the node templates is encoded as a set of constraints, including:
- node and capability types
- the relationship’s valid_target_types
- node_filter constraints
- node_filter match expressions
solve() will return the nodes that match the requirements associated with a given set of nodes. By default this crate is exposed as a Python extension module and is used by Unfurl, but it can be used by any TOSCA 1.3 processor.
Structs§
- Node field.
- A partial representations of a TOSCA node template (enough for solve())
- A TOSCA value. If a complex value or typed scalar, type_name will be set.
Enums§
- Constraints used in node filters
- Represents the match criteria for a requirement.
- Value of a Node field.
- Simple TOSCA value
Functions§
- Finds missing requirements for the given topology. (Main Python entry point)
Type Aliases§
- Set of CriteriaTerms
- HashMap mapping (source node name, requirement name) pairs to a list of (target node name, capability name) pairs.
- HashMap mapping tosca type names to a list of ancestor types it inherits (including itsself)