#This is the default configuration for the jclouds command output.
#All entries are prefixed by type.
#headers: The headers that will be displayed by the table.
#expressions: Groovy expressions that are evaluated on the object. The object is noted by its type (e.g. image,node,location etc).
#shortBy: The column that will be used for sorting the table.
#ascending: A boolean that specifies if the order should be ascending or descending.

# Not yet implemented:
# color: The color of each column.


image.headers=[id];[location];[os family];[os version];[status]
image.expressions=image.id;image.location.id;image.operatingSystem.family;image.operatingSystem.version;image.status
image.shortby=[id]
image.ascending=true

node.headers=[id];[location];[hardware];[group];[status]
node.expressions=node.id;node.location.id;node.hardware.id;node.group;node.status

hardware.headers=[id];[ram];[cpu];[cores]
hardware.expressions=hardware.id;hardware.ram;hardware.processors.sum{it.cores*it.speed};hardware.processors.sum{it.cores}
hardware.alignments=left;right;right;right
hardware.shortby=[cpu]
hardware.ascending=true


location.headers=[id];[scope];[description];[parent]
location.expressions=location.id;location.scope;location.description;location.parent.id
location.shortby=[parent]
location.ascending=true

#Chef Commands
cookbook.headers=[id];[name];[version]
cookbook.expressions=cookbook.name;cookbook.cookbookName;cookbook.version
cookbook.shortBy=[name]
cookbook.ascending=true