# #DeployDB

**Who, what, where and when.**

## Terminology

 * **Artifact**: a singular versioned file which represents an
   iteration of code to be deployed.
 * **Deployment**: taking an artifact, or artifacts, and
   delivering and executing them inside of an environment.
 * **Environment**: a collection of applications and configurations for executing
   services together across a cluster of machines.
 * **Pipeline**: a set of deployments and promotions defining the relationships
   between each environment
 * **Promotion**: a set of criteria for determining whether a deployment is
   suitable to progress to the next environment in the pipeline

## Goals


# #DeployDB

**Who, what, where and when.**

## Terminology

 * **Artifact**: a singular versioned file which represents an
   iteration of code to be deployed.
 * **Deployment**: taking an artifact, or artifacts, and
   delivering and executing them inside of an environment.
 * **Environment**: a collection of applications and configurations for executing
   services together across a cluster of machines.
 * **Pipeline**: a set of deployments and promotions defining the relationships
   between each environment
 * **Promotion**: a set of criteria for determining whether a deployment is
   suitable to progress to the next environment in the pipeline

## Goals/Requirements

 * Provide a single source of truth for:
   * which artifacts have been deployed to which environments
   * the success of a deployment, between the act of deployment and the
     follow-on validation of the artifacts deployed
 * Provide a centralized synchronization point for coordinating deployments
   across environments as defined by a pipeline.
 * *Not* provide redundant functionality already provided by orchestration
   tools such as Rundeck or Jenkins.
 * Intergrate with existing orchestration tools to drive deployments to
   a particular environment
 * Integration points for external tools for:
   * providing verification data around a specific deployment (e.g.
     "Deployment X was verified by Jenkins job <jobname~ build #5")
   * providing deployment start/finish information for environments
   * providing read access to deployment, artifact and environment information
     contained with DeployDB

Add some goals/requirements for deploydb
Add some goals/requirements for deploydb
