Skip to content

Commit 86e49dc

Browse files
Latest resource definitions (#170)
1 parent 834ea56 commit 86e49dc

File tree

264 files changed

+24822
-209
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

264 files changed

+24822
-209
lines changed

aws-cloudformation-schema/aws-batch-computeenvironment.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@
33
"description" : "Resource Type definition for AWS::Batch::ComputeEnvironment",
44
"additionalProperties" : false,
55
"properties" : {
6+
"UnmanagedvCpus" : {
7+
"type" : "integer"
8+
},
69
"Type" : {
710
"type" : "string"
811
},

aws-cloudformation-schema/aws-batch-jobdefinition.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@
1212
"NodeProperties" : {
1313
"$ref" : "#/definitions/NodeProperties"
1414
},
15+
"SchedulingPriority" : {
16+
"type" : "integer"
17+
},
1518
"Timeout" : {
1619
"$ref" : "#/definitions/Timeout"
1720
},

aws-cloudformation-schema/aws-batch-jobqueue.json

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,18 @@
1010
"$ref" : "#/definitions/ComputeEnvironmentOrder"
1111
}
1212
},
13-
"Id" : {
14-
"type" : "string"
15-
},
1613
"Priority" : {
1714
"type" : "integer"
1815
},
1916
"State" : {
2017
"type" : "string"
2118
},
19+
"SchedulingPolicyArn" : {
20+
"type" : "string"
21+
},
22+
"Id" : {
23+
"type" : "string"
24+
},
2225
"JobQueueName" : {
2326
"type" : "string"
2427
},
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
{
2+
"typeName" : "AWS::CE::AnomalyMonitor",
3+
"description" : "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. You can use Cost Anomaly Detection by creating monitor.",
4+
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
5+
"definitions" : {
6+
"Arn" : {
7+
"description" : "Monitor ARN",
8+
"type" : "string",
9+
"pattern" : "^arn:aws[-a-z0-9]*:[a-z0-9]+:[-a-z0-9]*:[0-9]{12}:[-a-zA-Z0-9/:_]+$"
10+
}
11+
},
12+
"properties" : {
13+
"MonitorArn" : {
14+
"$ref" : "#/definitions/Arn"
15+
},
16+
"MonitorType" : {
17+
"type" : "string",
18+
"enum" : [ "DIMENSIONAL", "CUSTOM" ]
19+
},
20+
"MonitorName" : {
21+
"description" : "The name of the monitor.",
22+
"type" : "string",
23+
"pattern" : "[\\S\\s]*",
24+
"minLength" : 0,
25+
"maxLength" : 1024
26+
},
27+
"CreationDate" : {
28+
"description" : "The date when the monitor was created. ",
29+
"type" : "string",
30+
"minLength" : 0,
31+
"maxLength" : 40,
32+
"pattern" : "(\\d{4}-\\d{2}-\\d{2})(T\\d{2}:\\d{2}:\\d{2}Z)?"
33+
},
34+
"LastEvaluatedDate" : {
35+
"description" : "The date when the monitor last evaluated for anomalies.",
36+
"type" : "string",
37+
"minLength" : 0,
38+
"maxLength" : 40,
39+
"pattern" : "(\\d{4}-\\d{2}-\\d{2})(T\\d{2}:\\d{2}:\\d{2}Z)?"
40+
},
41+
"LastUpdatedDate" : {
42+
"description" : "The date when the monitor was last updated.",
43+
"type" : "string",
44+
"minLength" : 0,
45+
"maxLength" : 40,
46+
"pattern" : "(\\d{4}-\\d{2}-\\d{2})(T\\d{2}:\\d{2}:\\d{2}Z)?"
47+
},
48+
"MonitorDimension" : {
49+
"description" : "The dimensions to evaluate",
50+
"type" : "string",
51+
"enum" : [ "SERVICE" ]
52+
},
53+
"MonitorSpecification" : {
54+
"type" : "string"
55+
},
56+
"DimensionalValueCount" : {
57+
"description" : "The value for evaluated dimensions.",
58+
"type" : "integer",
59+
"minimum" : 0
60+
}
61+
},
62+
"additionalProperties" : false,
63+
"required" : [ "MonitorName", "MonitorType" ],
64+
"createOnlyProperties" : [ "/properties/MonitorType", "/properties/MonitorDimension", "/properties/MonitorSpecification" ],
65+
"readOnlyProperties" : [ "/properties/MonitorArn", "/properties/CreationDate", "/properties/DimensionValueCount", "/properties/LastEvaluatedDate", "/properties/LastUpdatedDate", "/properties/DimensionalValueCount" ],
66+
"primaryIdentifier" : [ "/properties/MonitorArn" ],
67+
"handlers" : {
68+
"create" : {
69+
"permissions" : [ "ce:CreateAnomalyMonitor" ]
70+
},
71+
"read" : {
72+
"permissions" : [ "ce:GetAnomalyMonitors" ]
73+
},
74+
"update" : {
75+
"permissions" : [ "ce:UpdateAnomalyMonitor" ]
76+
},
77+
"delete" : {
78+
"permissions" : [ "ce:DeleteAnomalyMonitor" ]
79+
},
80+
"list" : {
81+
"permissions" : [ "ce:GetAnomalyMonitors" ]
82+
}
83+
}
84+
}
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
{
2+
"typeName" : "AWS::CE::AnomalySubscription",
3+
"description" : "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. Create subscription to be notified",
4+
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git",
5+
"definitions" : {
6+
"Arn" : {
7+
"description" : "Subscription ARN",
8+
"type" : "string",
9+
"pattern" : "^arn:aws[-a-z0-9]*:[a-z0-9]+:[-a-z0-9]*:[0-9]{12}:[-a-zA-Z0-9/:_]+$"
10+
},
11+
"Subscriber" : {
12+
"type" : "object",
13+
"properties" : {
14+
"Address" : {
15+
"type" : "string",
16+
"pattern" : "(^[a-zA-Z0-9.!#$%&'*+=?^_‘{|}~-]+@[a-zA-Z0-9_-]+(\\.[a-zA-Z0-9_-]+)+$)|(^arn:(aws[a-zA-Z-]*):sns:[a-zA-Z0-9-]+:[0-9]{12}:[a-zA-Z0-9_-]+$)"
17+
},
18+
"Status" : {
19+
"type" : "string",
20+
"enum" : [ "CONFIRMED", "DECLINED" ]
21+
},
22+
"Type" : {
23+
"type" : "string",
24+
"enum" : [ "EMAIL", "SNS" ]
25+
}
26+
},
27+
"required" : [ "Address", "Type" ],
28+
"additionalProperties" : false
29+
}
30+
},
31+
"properties" : {
32+
"SubscriptionArn" : {
33+
"$ref" : "#/definitions/Arn"
34+
},
35+
"SubscriptionName" : {
36+
"description" : "The name of the subscription.",
37+
"type" : "string",
38+
"pattern" : "[\\S\\s]*",
39+
"minLength" : 0,
40+
"maxLength" : 1024
41+
},
42+
"AccountId" : {
43+
"description" : "The accountId",
44+
"type" : "string",
45+
"minLength" : 0,
46+
"maxLength" : 1024
47+
},
48+
"MonitorArnList" : {
49+
"description" : "A list of cost anomaly monitors.",
50+
"type" : "array",
51+
"insertionOrder" : false,
52+
"items" : {
53+
"$ref" : "#/definitions/Arn"
54+
}
55+
},
56+
"Subscribers" : {
57+
"description" : "A list of subscriber",
58+
"type" : "array",
59+
"insertionOrder" : false,
60+
"items" : {
61+
"$ref" : "#/definitions/Subscriber"
62+
}
63+
},
64+
"Threshold" : {
65+
"description" : "The dollar value that triggers a notification if the threshold is exceeded. ",
66+
"type" : "number",
67+
"minimum" : 0
68+
},
69+
"Frequency" : {
70+
"description" : "The frequency at which anomaly reports are sent over email. ",
71+
"type" : "string",
72+
"enum" : [ "DAILY", "IMMEDIATE", "WEEKLY" ]
73+
}
74+
},
75+
"additionalProperties" : false,
76+
"required" : [ "MonitorArnList", "Subscribers", "Threshold", "Frequency", "SubscriptionName" ],
77+
"readOnlyProperties" : [ "/properties/SubscriptionArn", "/properties/AccountId", "/properties/Subscribers/*/Status" ],
78+
"primaryIdentifier" : [ "/properties/SubscriptionArn" ],
79+
"handlers" : {
80+
"create" : {
81+
"permissions" : [ "ce:CreateAnomalySubscription" ]
82+
},
83+
"read" : {
84+
"permissions" : [ "ce:GetAnomalySubscriptions" ]
85+
},
86+
"update" : {
87+
"permissions" : [ "ce:UpdateAnomalySubscription" ]
88+
},
89+
"delete" : {
90+
"permissions" : [ "ce:DeleteAnomalySubscription" ]
91+
},
92+
"list" : {
93+
"permissions" : [ "ce:GetAnomalySubscriptions" ]
94+
}
95+
}
96+
}
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
{
2+
"typeName" : "AWS::CUR::ReportDefinition",
3+
"description" : "The AWS::CUR::ReportDefinition resource creates a Cost & Usage Report with user-defined settings. You can use this resource to define settings like time granularity (hourly, daily, monthly), file format (Parquet, CSV), and S3 bucket for delivery of these reports.",
4+
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-cur.git",
5+
"properties" : {
6+
"ReportName" : {
7+
"description" : "The name of the report that you want to create. The name must be unique, is case sensitive, and can't include spaces.",
8+
"type" : "string",
9+
"minLength" : 1,
10+
"maxLength" : 256,
11+
"pattern" : "[0-9A-Za-z!\\-_.*\\'()]+"
12+
},
13+
"TimeUnit" : {
14+
"description" : "The granularity of the line items in the report.",
15+
"type" : "string",
16+
"enum" : [ "HOURLY", "DAILY", "MONTHLY" ]
17+
},
18+
"Format" : {
19+
"description" : "The format that AWS saves the report in.",
20+
"type" : "string",
21+
"enum" : [ "textORcsv", "Parquet" ]
22+
},
23+
"Compression" : {
24+
"description" : "The compression format that AWS uses for the report.",
25+
"type" : "string",
26+
"enum" : [ "ZIP", "GZIP", "Parquet" ]
27+
},
28+
"AdditionalSchemaElements" : {
29+
"description" : "A list of strings that indicate additional content that Amazon Web Services includes in the report, such as individual resource IDs.",
30+
"type" : "array",
31+
"default" : [ ],
32+
"items" : {
33+
"description" : "Whether or not AWS includes resource IDs in the report.",
34+
"type" : "string",
35+
"enum" : [ "RESOURCES" ]
36+
}
37+
},
38+
"S3Bucket" : {
39+
"description" : "The S3 bucket where AWS delivers the report.",
40+
"type" : "string",
41+
"minLength" : 1,
42+
"maxLength" : 256,
43+
"pattern" : "[A-Za-z0-9_\\.\\-]+"
44+
},
45+
"S3Prefix" : {
46+
"description" : "The prefix that AWS adds to the report name when AWS delivers the report. Your prefix can't include spaces.",
47+
"type" : "string",
48+
"minLength" : 1,
49+
"maxLength" : 256,
50+
"pattern" : "[0-9A-Za-z!\\-_.*\\'()/]*"
51+
},
52+
"S3Region" : {
53+
"description" : "The region of the S3 bucket that AWS delivers the report into.",
54+
"type" : "string"
55+
},
56+
"AdditionalArtifacts" : {
57+
"description" : "A list of manifests that you want Amazon Web Services to create for this report.",
58+
"type" : "array",
59+
"default" : [ ],
60+
"items" : {
61+
"description" : "The types of manifest that you want AWS to create for this report.",
62+
"type" : "string",
63+
"enum" : [ "REDSHIFT", "QUICKSIGHT", "ATHENA" ]
64+
}
65+
},
66+
"RefreshClosedReports" : {
67+
"description" : "Whether you want Amazon Web Services to update your reports after they have been finalized if Amazon Web Services detects charges related to previous months. These charges can include refunds, credits, or support fees.",
68+
"type" : "boolean"
69+
},
70+
"ReportVersioning" : {
71+
"description" : "Whether you want Amazon Web Services to overwrite the previous version of each report or to deliver the report in addition to the previous versions.",
72+
"type" : "string",
73+
"enum" : [ "CREATE_NEW_REPORT", "OVERWRITE_REPORT" ]
74+
},
75+
"BillingViewArn" : {
76+
"description" : "The Amazon resource name of the billing view. You can get this value by using the billing view service public APIs.",
77+
"type" : "string",
78+
"default" : null,
79+
"pattern" : "(arn:aws(-cn)?:billing::[0-9]{12}:billingview/)?[a-zA-Z0-9_\\+=\\.\\-@].{1,30}",
80+
"minLength" : 1,
81+
"maxLength" : 128
82+
}
83+
},
84+
"additionalProperties" : false,
85+
"required" : [ "ReportName", "TimeUnit", "Format", "Compression", "S3Bucket", "S3Prefix", "S3Region", "RefreshClosedReports", "ReportVersioning" ],
86+
"createOnlyProperties" : [ "/properties/ReportName", "/properties/AdditionalSchemaElements", "/properties/TimeUnit", "/properties/ReportVersioning", "/properties/BillingViewArn" ],
87+
"primaryIdentifier" : [ "/properties/ReportName" ],
88+
"handlers" : {
89+
"create" : {
90+
"permissions" : [ "cur:PutReportDefinition" ]
91+
},
92+
"read" : {
93+
"permissions" : [ "cur:DescribeReportDefinitions" ]
94+
},
95+
"update" : {
96+
"permissions" : [ "cur:DescribeReportDefinitions", "cur:ModifyReportDefinition" ]
97+
},
98+
"delete" : {
99+
"permissions" : [ "cur:DescribeReportDefinitions", "cur:DeleteReportDefinition" ]
100+
},
101+
"list" : {
102+
"permissions" : [ "cur:DescribeReportDefinitions" ]
103+
}
104+
}
105+
}

0 commit comments

Comments
 (0)