RUN@cloud uses a layered and extensible architecture. A low-level, infrastructure-aware layer is written in Erlang, which manages server allocation and resource sharing. It's a general purpose layer, which is not tied to a specific runtime. ClickStack runs on top of it and provides runtime specialization. A typical ClickStack will handle the preparation of a Java EE application server, but it could set up a non-JVM-based runtime as well. An application is installed on this runtime. Metadata provides all the required information for each layer to provide adequate resources, and exposes them to the upper layer.
The lower level of the architecture includes GenApp, a low-level process orchestrator written in Erlang. It receives deployment API application commands with metadata on the application to be deployed. Read more about it at http://genapp-docs.cloudbees.com/.
ClickStack executes on top of GenApp. ClickStack is responsible for setting up the runtime environment...