Deployment Model

This chapter provides an introduction to the deployment model of ARA.

View our short introductory video:

Core Entities

The deployment model for ARA consists of the following entities:

Entity Short Description Topic

Application

&

Components

An Application entity is the main container of the deployment model and typically consists of multiple components. As an example, your application may consist of two components, a web application and a database component. Each application component utilizes a specific technology such as Apache Tomcat or a Microsoft SQL database. The application entity also includes component-related workflows to install, upgrade or remove application components.

Working with Applications
Workflow

Workflows are used to carry out physical deployments. A workflow describes all necessary steps for a deployment of your application. As your application consists of different components, the top level of the workflow (Application Workflow) represents your application architecture and Component Workflows are used to deploy the individual components. You can define your Component Workflow quickly with pre-defined Actions.

Working With Workflows
Environment

An environment consists of deployment targets which represent your endpoints. Different environments are used for different phases in the software delivery cycle, for example Development, QA, Staging, Production. An environment is typically set up once and used by several applications.

Working with Environments
Deployment Target

A Deployment Target is an endpoint where you deploy your application component(s) to. All endpoint related parameters, e.g. port numbers, IP addresses and directories are typically related to the deployment target and can be configured there. The execution itself will be handled by the assigned operating system agent.

Working with Deployment Targets
Deployment Profile

A Deployment Profile links an application to one specific environment. Typically it’s an intersection between the application components and the environment deployment targets, e.g. Tomcat application components will be mapped to the Tomcat deployment target. The deployment profile is used during the deployment execution and defines where to deploy to.

Working with Deployment Profiles
Package

A Package is an instance (a version, a revision, a tag, …) of your application and defines the content which you want to deploy. Here you decide if you want to deploy the entire application or just a few specified components.

Working with Packages

For a quick start, run the application wizard as described in Working with Applications.

Deployment Overview

This overview aims to present the entities described before in a logical sequence, namely what to deploy, where to deploy and finally how to deploy:

  1. What to deploy:
  2. Where to deploy:
  3. How to deploy:

Recommended Design Sequence

This is the order in which your entity should be designed:

  1. Creating Applications from the Applications List
  2. Creating Components
  3. Creating an Application Workflow
  4. Creating Login Objects
  5. Creating Environments
  6. Creating Deployment Targets
  7. Creating Deployment Profiles
  8. Creating Packages Packages should be created at the end, as this is the only entity that requires creation for each release and version of the application.