# This is a comment import toto.graph; ## # Facet ## facet VM { installer: iaas; } # Components VM_ec2 { facets: VM; children: cluster-node, mysql; } VM_openstack { facets: VM; children: cluster-node, mysql; } cluster-node { alias: a cluster node; installer: puppet; exports: ip, port, optional-property1, optional_property2; imports: cluster-node.ip (optional), cluster-node.port (optional), mysql.ip, mysql.port; } mysql { alias: a MySQL database; installer: puppet; exports: ip, port; } ## # Normally, instances are defined in another file... ## instance of VM_ec2 { name: VM_; count: 3; my-instance-property: whatever; instance of cluster-node { name: cluster node; # An in-line comment } } instance of VM_openstack { name: VM_database; instance of mysql { name: mysql; } }