A tool to complete TosKer application description withsuitable Docker Images
Project description
TosKeriser is a tool to complete TosKer applications with suitable Docker Images. The user can specify the software required by each component and the tool complete the specification with a suitable container to run the components.
It was first presented in > A. Brogi, D, Neri, L. Rinaldi, J. Soldani > **From (incomplete) TOSCA specifications to running applications, with Docker.* > Submitted for publication*
If you wish to reuse the tool or the sources contained in this repository, please properly cite the above mentioned paper. Below you can find the BibTex reference:
@misc{TosKeriser, author = {Antonio Brogi and Davide Neri and Luca Rinaldi and Jacopo Soldani}, title = {{F}rom (incomplete) {TOSCA} specifications to running applications, with {D}ocker, note = {{\em [Submitted for publication]}} }
Quick Guide
Installation
In is possible to install TosKeriser by using pip:
# pip install toskeriser
The minimum Python version supported is 2.7.
Example of usage
For instance the following application has a components called server require a set of software (node>=6.2, ruby>2 and any version of wget) and Alpine as Linux distribution.
... server: type: tosker.nodes.Software requirements: - host: node_filter: properties: - supported_sw: - node: 6.2.x - ruby: 2.x - wget: x - os_distribution: alpine ...
After run TosKeriser on this specification, it creates the component server_container and connects the server component to it. It is possible to see that the server_container has all the software required by server and has also Alpine v3.4 as Linux distribution.
... server: type: tosker.nodes.Software requirements: - host: node_filter: properties: - supported_sw: - node: 6.2.x - ruby: 2.x - wget: x - os_distribution: alpine node: server_container ... server_container: type: tosker.nodes.Container properties: supported_sw: node: 6.2.0 ash: 1.24.2 wget: 1.24.2 tar: 1.24.2 bash: 4.3.42 ruby: 2.3.1 httpd: 1.24.2 npm: 3.8.9 git: 2.8.3 erl: '2' unzip: 1.24.2 os_distribution: Alpine Linux v3.4 artifacts: my_image: file: jekyll/jekyll:3.1.6 type: tosker.artifacts.Image repository: docker_hub
More examples can be found in the data/examples folder.
Usage guide
toskerise FILE [COMPONENT..] [OPTIONS] toskerise --help|-h toskerise --version|-v FILE TOSCA YAML file or a CSAR to be completed COMPONENT a list of component to be completed (by default all component are considered) OPTIONS --debug active debug mode -q|--quiet active quiet mode -i|--interactive active interactive mode -f|--force force the update of all containers --constraints=value constraint to give to DockerFinder (e.g. --constraints 'size<=100MB pulls>30 stars>10') --policy=top_rated|size|most_used ordering of the images
License
MIT license
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file TosKeriser-0.2.2.tar.gz
.
File metadata
- Download URL: TosKeriser-0.2.2.tar.gz
- Upload date:
- Size: 17.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 064381fe61a1f09378c36abcdcbd023c1ef9eae41f869d87419efde30f4c353f |
|
MD5 | 86512b7f702c79f00bc9adfd2ca714ed |
|
BLAKE2b-256 | 5a3e3de9df1a6649b9dcfbd22a4562a4b73193f5be3d666585e80d9289b9f303 |
File details
Details for the file TosKeriser-0.2.2-py2.py3-none-any.whl
.
File metadata
- Download URL: TosKeriser-0.2.2-py2.py3-none-any.whl
- Upload date:
- Size: 21.5 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 521ad05ee5e80f24633d861ad26617203b3d72200274cc1df9f446b4c62150f2 |
|
MD5 | 66f377a46fc8e5bb5b7f245cfd7ee833 |
|
BLAKE2b-256 | d72f94848b2878175de5add1d10e5f0b2d916d43f11ec17ec684b5f5736a64a8 |