Definitions for @turbot/aws-wellarchitected

wellarchitected

{
"allOf": [
{
"$ref": "turbot#/definitions/service"
},
{
"type": "object",
"properties": {
"name": {
"const": "Well-Architected Tool"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/wellarchitectedAka"
}
},
"title": {
"const": "Well-Architected Tool"
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "All data are valid",
"input": {
"name": "Well-Architected Tool",
"turbot": {
"akas": [
"arn:aws:wellarchitected:us-east-1:123456789012"
],
"title": "Well-Architected Tool",
"custom": {
"aws": {
"accountId": 123456789012
}
}
}
}
},
{
"description": "Invalid - Name does not match",
"input": {
"name": "Well-Architected Tool",
"turbot": {
"akas": [
"arn:aws:wellarchitected:us-east-1:123456789012"
],
"title": "Well-Architected Tool",
"custom": {
"aws": {
"accountId": 123456789012
}
}
}
},
"expected": false
}
]
}
],
".turbot": {
"uri": "tmod:@turbot/aws-wellarchitected#/definitions/wellarchitected",
"modUri": "tmod:@turbot/aws-wellarchitected"
}
}

wellarchitectedAka

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:wellarchitected:[a-z]{2}(-gov)?-[a-z]+-[0-9]{1}:[0-9]{12}",
"tests": [
{
"description": "base",
"input": "arn:aws:wellarchitected:us-east-1:123123123123"
},
{
"description": "invalid service name",
"input": "arn:aws:wellarchitecteds:us-east-1:123123123123",
"expected": false
},
{
"description": "invalid region name",
"input": "arn:aws:wellarchitected:us-eastdk-74381:123456786354",
"expected": false
},
{
"description": "invalid provider name",
"input": "arn:gcp:wellarchitected:us-eastdk-74381:123456786354",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-wellarchitected#/definitions/wellarchitectedAka",
"modUri": "tmod:@turbot/aws-wellarchitected"
}
}

wellArchitectedFramework

{
"type": "object",
"properties": {
"WorkloadId": {
"$ref": "#/definitions/workloadId"
},
"AnswerSummaries": {
"type": "array"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/workloadAka"
}
},
"title": {
"const": "AWS Well-Architected Framework"
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
".turbot": {
"uri": "tmod:@turbot/aws-wellarchitected#/definitions/wellArchitectedFramework",
"modUri": "tmod:@turbot/aws-wellarchitected"
}
}

workload

{
"type": "object",
"properties": {
"WorkloadId": {
"$ref": "#/definitions/workloadId"
},
"WorkloadArn": {
"$ref": "#/definitions/workloadAka"
},
"WorkloadName": {
"$ref": "#/definitions/workloadName"
},
"Description": {
"type": "string"
},
"Environment": {
"$ref": "#/definitions/workloadEnv"
},
"ArchitecturalDesign": {
"type": "string"
},
"ReviewOwner": {
"type": "string"
},
"IsReviewOwnerUpdateAcknowledged": {
"type": "boolean"
},
"IndustryType": {
"type": "string"
},
"Industry": {
"type": "string"
},
"Notes": {
"type": "string"
},
"PillarPriorities": {
"type": "array"
},
"Lenses": {
"type": "array"
},
"Risk": {
"$ref": "#/definitions/workloadRisk"
},
"ImprovementStatus": {
"$ref": "#/definitions/workloadStatus"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/workloadAka"
}
},
"title": {
"$ref": "#/definitions/workloadName"
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"ImprovementStatus": "COMPLETE",
"Name": "test01",
"Arn": "arn:aws:wellarchitected:us-east-1:123456789012:workload/9adb2f4e380e7b9de376410f868cfcfb",
"Environment": "PRODUCTION",
"IndustryType": "InfoTech",
"Risk": "MEDIUM",
"turbot": {
"title": "9adb2f4e380e7b9de376410f868cfcfb",
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-wellarchitected#/definitions/workload",
"modUri": "tmod:@turbot/aws-wellarchitected"
}
}

workloadAka

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:wellarchitected:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:workload/[a-f0-9]{32}$",
"tests": [
{
"description": "Valid - Base case",
"input": "arn:aws:wellarchitected:us-east-1:123456789012:workload/9adb2f4e380e7b9de376410f868cfcfb"
},
{
"description": "Invalid - Malformed resource collection",
"input": "arn:aws:architect:us-east-1:123456789012:work/jugni",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-wellarchitected#/definitions/workloadAka",
"modUri": "tmod:@turbot/aws-wellarchitected"
}
}

workloadEnv

{
"type": "string",
"enum": [
"PRODUCTION",
"PREPRODUCTION"
],
"tests": [
{
"input": "PRODUCTION"
},
{
"description": "invalid - incorrect value provided",
"input": "Test-Environment",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-wellarchitected#/definitions/workloadEnv",
"modUri": "tmod:@turbot/aws-wellarchitected"
}
}

workloadId

{
"type": "string",
"pattern": "^[a-f0-9]{32}$",
"tests": [
{
"input": "9adb2f4e380e7b9de376410f868cfcfb"
},
{
"description": "invalid - too long",
"input": "test01test01test01test01test01test01test01test01test01test01test01test01test01test01teskuwegfugwaeufygwekuyfgawekuyfgaewfu",
"expected": false
},
{
"description": "invalid - empty string",
"input": "",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-wellarchitected#/definitions/workloadId",
"modUri": "tmod:@turbot/aws-wellarchitected"
}
}

workloadName

{
"type": "string",
"pattern": "^.{3,100}$",
"tests": [
{
"input": "this can have spaces"
},
{
"description": "invalid - too long",
"input": "test01test01test01test01test01test01test01test01test01test01test01test01test01test01teskuwegfugwaeufygwekuyfgawekuyfgaewfu",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-wellarchitected#/definitions/workloadName",
"modUri": "tmod:@turbot/aws-wellarchitected"
}
}

workloadRisk

{
"type": "string",
"enum": [
"UNANSWERED",
"HIGH",
"MEDIUM",
"NONE",
"NOT_APPLICABLE"
],
"tests": [
{
"input": "UNANSWERED"
},
{
"description": "invalid - incorrect value provided",
"input": "LOW",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-wellarchitected#/definitions/workloadRisk",
"modUri": "tmod:@turbot/aws-wellarchitected"
}
}

workloadStatus

{
"type": "string",
"enum": [
"NOT_APPLICABLE",
"NOT_STARTED",
"IN_PROGRESS",
"COMPLETE",
"RISK_ACKNOWLEDGED"
],
"tests": [
{
"input": "COMPLETE"
},
{
"description": "invalid - incorrect value provided",
"input": "Enabled",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-wellarchitected#/definitions/workloadStatus",
"modUri": "tmod:@turbot/aws-wellarchitected"
}
}