Work in progress, not ready for general use. For now, see the previous version.
Puccini
Tools for working with TOSCA (Topology and Orchestration Specification for Cloud Applications) and CSAR (Cloud Service Archive).
It comprises:
- Libraries for TOSCA (parsing, validation, compilation) and CSAR (validation, reading, writing)
- Wasm implementations for TOSCA’s built-in functions
- CLI tools based on the above:
puccini-tosca
TOSCA parser, validator, and compiler.
The compilation output is a Floria template, which can be also be instantiated by Puccini in order to test imperative behaviors such as updating properties, attributes, and outputs, and calling operations and notifications.
Puccini’s use of Floria is documented here.
For a Floria-based cloud orchestrator, see Khutulun.
puccini-csar
Can create compliant CSAR files, validate existing ones, extract contained artifacts, and query or modify the metadata.
Supports both tarballs and zip files.
FAQ
Why is it called “Puccini”?
Named after Giacomo Puccini, the composer of the Tosca opera (based on Victorien Sardou’s play, La Tosca), as well as La bohème, Madama Butterfly, and other famous works. The theme here is orchestration, orchestras, composition, and thus operas. Capiche?
How to pronounce “Puccini”?
Usually: “poo-CHEE-nee” (“ch” as in “change”).
For a demonstration of its authentic 19th-century Italian pronunciation see this clip.
License
Like much of the Rust ecosystem, licensed under your choice of either of
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.