Github user AviaE commented on a diff in the pull request:
https://github.com/apache/incubator-ariatosca/pull/152#discussion_r121370931
--- Diff: README.md ---
@@ -4,198 +4,111 @@ ARIA
[](https://travis-ci.org/apache/incubator-ariatosca)
[](https://ci.appveyor.com/project/ApacheSoftwareFoundation/incubator-ariatosca/history)
[](https://opensource.org/licenses/Apache-2.0)
+[](https://pypi.python.org/pypi/ariatosca)
+
+
+
+[](https://github.com/apache/incubator-ariatosca/pulls)
+[](https://github.com/apache/incubator-ariatosca/pulls?q=is%3Apr+is%3Aclosed)
-[ARIA](http://ariatosca.org/) is a minimal TOSCA orchestrator, as well as
a platform for building
-TOSCA-based products. Its features can be accessed via a well-documented
Python API.
+[ARIA](http://ariatosca.incubator.apache.org/) is a an open-source,
lightweight, library and CLI for orchestration that open-source projects can
consume to build TOSCA-based orchestration solutions for resources and services
orchestration. It supports NFV and hybrid Cloud scenarios.
-On its own, ARIA provides built-in tools for blueprint validation and for
creating ready-to-run
-service instances.
+ARIA can be utilized by any organization that wants to implement
TOSCA-based orchestration in its solutions, whether a multi-cloud enterprise
application, or an NFV or SDN solution for multiple virtual infrastructure
managers.
-ARIA adheres strictly and meticulously to the
-[TOSCA Simple Profile v1.0 cos01
specification](http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html),
-providing state-of-the-art validation at seven different levels:
+With ARIA, you can utilize TOSCA's cloud portability out-of-the-box, to
test and run your applications, from template to deployment.
-<ol start="0">
-<li>Platform errors. E.g. network, hardware, or even an internal bug in
ARIA (let us know,
- please!).</li>
-<li>Syntax and format errors. E.g. non-compliant YAML, XML, JSON.</li>
-<li>Field validation. E.g. assigning a string where an integer is
expected, using a list instead of
- a dict.</li>
-<li>Relationships between fields within a type. This is "grammar" as it
applies to rules for
- setting the values of fields in relation to each other.</li>
-<li>Relationships between types. E.g. referring to an unknown type,
causing a type inheritance
- loop.</li>
-<li>Topology. These errors happen if requirements and capabilities cannot
be matched in order to
- assemble a valid topology.</li>
-<li>External dependencies. These errors happen if requirement/capability
matching fails due to
- external resources missing, e.g. the lack of a valid virtual machine,
API credentials, etc.
- </li>
-</ol>
-Validation errors include a plain English message and when relevant the
exact location (file, row,
-column) of the data the caused the error.
+Installation
+----------------
-The ARIA API documentation always links to the relevant section of the
specification, and likewise
-we provide an annotated version of the specification that links back to
the API documentation.
+ARIA is [available on PyPI](https://pypi.python.org/pypi/ariatosca).
+ARIA requires Python 2.6/2.7. Python 3+ is not currently supported.
-Quick Start
------------
+ARIA itself is in a `wheel` format compatible with all platforms.
+Some dependencies, however, might require compilation (based on a given
platform), and therefore possibly some system dependencies are required as well.
-You need Python 2.6 or 2.7. Python 3+ is not currently supported.
+On Ubuntu or other Debian-based systems:
-To install, we recommend using [pip](https://pip.pypa.io/) and a
-[virtualenv](https://virtualenv.pypa.io/en/stable/).
+ sudo apt install python-setuptools python-dev build-essential
libssl-dev libffi-dev
-In Debian-based systems:
+On Archlinux:
- sudo apt install python-setuptools
- sudo -H easy_install pip
- sudo -H pip install virtualenv
- virtualenv env
+ sudo pacman -S python-setuptools
-Or in Archlinux-based systems:
- pacman -S python2 python-setuptools python-pip
- pip install virtualenv
- virtualenv env -p $(type -p python2)
+To install ARIA directly from PyPI (using a `wheel`), use:
-To install the latest development snapshot of ARIA:
+ pip install aria
- . env/bin/activate
- pip install
git+http://git-wip-us.apache.org/repos/asf/incubator-ariatosca.git
-To test it, let's create a service instance from a TOSCA blueprint:
+To install ARIA from source, download the source tarball from
[PyPI](https://pypi.python.org/pypi/ariatosca),
+extract it, and then when inside the extracted directory, use:
- aria parse blueprints/tosca/node-cellar/node-cellar.yaml
-
-You can also get it in JSON or YAML formats:
+ pip install .
+
+The source package comes along with relevant examples, documentation,
+`requirements.txt` (for installing specifically the frozen dependencies'
versions with which ARIA was tested) and more.
- aria parse blueprints/tosca/node-cellar/node-cellar.yaml --json
-Or get an overview of the relationship graph:
+<br>
+Note that for the `pip install` commands mentioned above, you must use a
privileged user, or use virtualenv.
- aria parse blueprints/tosca/node-cellar/node-cellar.yaml --graph
-You can provide inputs as JSON, overriding default values provided in the
blueprint
+Getting Started
+---------------
- aria parse blueprints/tosca/node-cellar/node-cellar.yaml
--inputs='{"openstack_credential": {"user": "username"}}'
+This section will describe how to run a simple "Hello World" example.
-Instead of providing them explicitly, you can also provide them in a file
or URL, in either JSON or
-YAML. If you do so, the value must end in ".json" or ".yaml":
+First, provide ARIA with your service-template, naming it
`my-service-template`:
- aria parse blueprints/tosca/node-cellar/node-cellar.yaml
--inputs=blueprints/tosca/node-cellar/inputs.yaml
+ aria service-templates store examples/hello-world/helloworld.yaml
my-service-template
+
+Now create a service based on this service-template, naming it
`my-service`:
+
+ aria services create my-service -t my-service-template
+
+Finally, start an `install` workflow execution on `my-service` like so:
+ aria executions start install -s my-service
-CLI
----
+<br>
+You should now have a simple web-server running on your local machine.
+You can try visiting http://localhost:9090 to view your deployed
application.
-Though ARIA is fully exposed as an API, it also comes with a CLI tool to
allow you to work from the
-shell:
+To uninstall and clean your environment, follow these steps:
- aria parse blueprints/tosca/node-cellar/node-cellar.yaml instance
+ aria executions start uninstall -s my-service
+ aria services delete my-service
+ aria service-templates delete my-service-template
-The `parse` command supports the following directives to create variations
of the default consumer
-chain:
-* `presentation`: emits a colorized textual representation of the Python
presentation classes
- wrapping the blueprint.
-* `model`: emits a colorized textual representation of the complete
service model derived from the
- validated blueprint. This includes all the node templates, with their
requirements satisfied at
- the level of relating to other node templates.
-* `types`: emits a colorized textual representation of the type
hierarchies.
-* `instance`: **this is the default command**; emits a colorized textual
representation of a
- service instance instantiated from the service model. Here the node
templates are each used to
- create one or more nodes, with the appropriate relationships between
them. Note that every time
- you run this consumer, you will get a different set of node IDs. Use
`--graph` to see just the
- node relationship graph.
-
-For all these commands, you can also use `--json` or `--yaml` flags to
emit in those formats.
+Contribution
+------------
-Additionally, The CLI tool lets you specify the complete classname of your
own custom consumer to
-chain at the end of the default consumer chain, after `instance`.
+You are welcome and encouraged to participate and contribute to the ARIA
project.
-Your custom consumer can be an entry point into a powerful TOSCA-based
tool or application, such as
-an orchestrator, a graphical modeling tool, etc.
+Please see our guide to [Contributing to
ARIA](https://cwiki.apache.org/confluence/display/ARIATOSCA/Contributing+to+ARIA).
--- End diff --
This is like the first time that Apache is mentioned. Shouldn't it be
mentioned before?
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---