Deployment plan payload

When the deployment plan is executed, the Attini framework will create a payload with a specific data structure that have to be respected for to the Attini types to function.

{
  "output": {
    "deploymentPlanStepName1": {
      "outputName": "String"
    },
    "deploymentPlanStepName2": {
      "outputPath": {
        "outputName": "String"
      }
    }
  },
  "environment": "String",
  "stackParameters": {
    "String": "String"
  },
  "customData": {},
  "deploymentOriginData": {
    "distributionName": "String",
    "deploymentTime": "epochTime",
    "deploymentSource": {
      "deploymentSourcePrefix": "String",
      "deploymentSourceBucket": "String"
    },
    "environment": "String",
    "distributionId": "String",
    "deploymentName": "String",
    "objectIdentifier": "String",
    "stackName": "String",
    "distributionTags": {
      "String": "String"
    },
    "version": "SemanticVersion",
    "samPackaged": "boolean"
  },
  "dependencies": {
    "distributionName": {
        "deploymentSourcePrefix": "String"
    }
  }
}

Specification

output

Type: Map<Map<String,String>> || Map<Map<Map<String,String>>>

This object contains outputs from previous steps. The first key under output references the State name of a previous step.

In simple scenarios, for example an AttiniCfn step, this section will just contain a key: value map from a CloudFormation stack output.

In more complex scenarios, for example AttiniMap step, you might need an extra level in the output data structure. You can then use OutputPath.

environment

Type: String

The current environment.

stackParameters

Type: Map<String,String>>

The parameters for the initDeploy stack.

customData

Type: Map<String,Map<>>

Under this field, you can add whatever data you need and the Attini Framework resources will pass it along. If data is given to the deployment plan state machine input, the input will end up under this field.

deploymentOriginData

Type: deploymentOriginData

This object contains information about the deployment origin data.

distributionName

Type: String

The distribution name.

deploymentTime

Type: String

The time in epoch milliseconds that the Attini distribution was deployed to this environment.

deploymentSource

Type: deploymentSource

A Map containing data needed to find artifacts related to this deployment.

deploymentSourcePrefix

Type: String

The s3 bucket prefix for the distribution files, find more info here: distribution-content.

deploymentSourceBucket

Type: String

The s3 bucket for the distribution files, find more info here: distribution-content.

environment

Type: String

The current environment.

distributionId

Type: String

The distribution id from the attini-config file.

deploymentName

Type: String

An AWS Account and Region unique name for the deployment in the format ${environment}-distributionName.

objectIdentifier

Type: String

The S3 key for the S3 object key and version (distribution) that triggered the deployment.

stackName

Type: String

The name of the init deployment CloudFormation stack name.

distributionTags

Type: Map<String,String>

The distribution tags from the attini-config file.

version

Type: String

The distribution semantic version.

samPackaged

Type: Boolean

If this is true, Attini has done a SAM Package due to a AttiniSam step in the deployment plan.

dependencies

Type: Map<String,Map<String,String>>

If your distribution has a dependency, this data will tell you where to find the output from your dependency’s latest successful deployment.