aws-sdk-synthetics 1.61.0 → 1.63.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '08be1bc1b91f7e1fe5247853fbf80799e4746e574ca8983ed33d0daf26939c9f'
4
- data.tar.gz: bedfc4f21bdbc97693834346141a557a84a8d5974330c3427e97e68a4ea00234
3
+ metadata.gz: a6e2e604c8e69e90705a06f9a523205968bb637ade37e418bde59b995ded9961
4
+ data.tar.gz: fa0764ec1e04f4f56e570edbe7ee5858958fe2de39f8e964830d57a911c86f57
5
5
  SHA512:
6
- metadata.gz: bd6a55cc142f52be6e4626a07bd4bcff5010664cd8284c90c3ad78322ea145c5702c1d9638f71c8a91c934af6a23b5e3477202080a436b21db401ffa2974051c
7
- data.tar.gz: 58b79bbcd33fc71e75199dde846719d39285274de8e5fa7aa63282cf9fd6fdf0c78348f2a3f8333fab792dd09eb1e1f7e6691d8bdd2228b7089ea34e97dceff2
6
+ metadata.gz: b838784f6f386ed4f86280ae4ca3d4ea71a2de5f8df8735b52363284e86e6540e2212fd81372f859ae54c1316069a461514e5f9f765f598755f9b3dcb2088784
7
+ data.tar.gz: 8038523fce046a99fc49bf96a177a6907468e19935c2f94f8a17f615cdaf0b5958213293729ca622aa5ed4b71dd609c950949e91c1922a7355b55f00848bcc7b
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.63.0 (2025-05-07)
5
+ ------------------
6
+
7
+ * Feature - Add support to test a canary update by invoking a dry run of a canary. This behavior can be used via the new StartCanaryDryRun API along with new fields in UpdateCanary to apply dry run changes. Also includes changes in GetCanary and GetCanaryRuns to support retrieving dry run configurations.
8
+
9
+ 1.62.0 (2025-05-01)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.61.0 (2025-02-18)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.61.0
1
+ 1.63.0
@@ -580,19 +580,37 @@ module Aws::Synthetics
580
580
  # A structure that contains the configuration for individual canary
581
581
  # runs, such as timeout value and environment variables.
582
582
  #
583
- # The environment variables keys and values are not encrypted. Do not
584
- # store sensitive information in this field.
583
+ # Environment variable keys and values are encrypted at rest using
584
+ # Amazon Web Services owned KMS keys. However, the environment variables
585
+ # are not encrypted on the client side. Do not store sensitive
586
+ # information in them.
585
587
  #
586
588
  # @option params [Integer] :success_retention_period_in_days
587
589
  # The number of days to retain data about successful runs of this
588
590
  # canary. If you omit this field, the default of 31 days is used. The
589
591
  # valid range is 1 to 455 days.
590
592
  #
593
+ # This setting affects the range of information returned by
594
+ # [GetCanaryRuns][1], as well as the range of information displayed in
595
+ # the Synthetics console.
596
+ #
597
+ #
598
+ #
599
+ # [1]: https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_GetCanaryRuns.html
600
+ #
591
601
  # @option params [Integer] :failure_retention_period_in_days
592
602
  # The number of days to retain data about failed runs of this canary. If
593
603
  # you omit this field, the default of 31 days is used. The valid range
594
604
  # is 1 to 455 days.
595
605
  #
606
+ # This setting affects the range of information returned by
607
+ # [GetCanaryRuns][1], as well as the range of information displayed in
608
+ # the Synthetics console.
609
+ #
610
+ #
611
+ #
612
+ # [1]: https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_GetCanaryRuns.html
613
+ #
596
614
  # @option params [required, String] :runtime_version
597
615
  # Specifies the runtime version to use for the canary. For a list of
598
616
  # valid runtime versions and more information about runtime versions,
@@ -740,6 +758,8 @@ module Aws::Synthetics
740
758
  # resp.canary.tags["TagKey"] #=> String
741
759
  # resp.canary.artifact_config.s3_encryption.encryption_mode #=> String, one of "SSE_S3", "SSE_KMS"
742
760
  # resp.canary.artifact_config.s3_encryption.kms_key_arn #=> String
761
+ # resp.canary.dry_run_config.dry_run_id #=> String
762
+ # resp.canary.dry_run_config.last_dry_run_execution_status #=> String
743
763
  #
744
764
  # @see http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/CreateCanary AWS API Documentation
745
765
  #
@@ -1022,6 +1042,8 @@ module Aws::Synthetics
1022
1042
  # resp.canaries[0].tags["TagKey"] #=> String
1023
1043
  # resp.canaries[0].artifact_config.s3_encryption.encryption_mode #=> String, one of "SSE_S3", "SSE_KMS"
1024
1044
  # resp.canaries[0].artifact_config.s3_encryption.kms_key_arn #=> String
1045
+ # resp.canaries[0].dry_run_config.dry_run_id #=> String
1046
+ # resp.canaries[0].dry_run_config.last_dry_run_execution_status #=> String
1025
1047
  # resp.next_token #=> String
1026
1048
  #
1027
1049
  # @see http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DescribeCanaries AWS API Documentation
@@ -1107,6 +1129,7 @@ module Aws::Synthetics
1107
1129
  # resp.canaries_last_run[0].last_run.timeline.started #=> Time
1108
1130
  # resp.canaries_last_run[0].last_run.timeline.completed #=> Time
1109
1131
  # resp.canaries_last_run[0].last_run.artifact_s3_location #=> String
1132
+ # resp.canaries_last_run[0].last_run.dry_run_config.dry_run_id #=> String
1110
1133
  # resp.next_token #=> String
1111
1134
  #
1112
1135
  # @see http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/DescribeCanariesLastRun AWS API Documentation
@@ -1207,6 +1230,10 @@ module Aws::Synthetics
1207
1230
  # @option params [required, String] :name
1208
1231
  # The name of the canary that you want details for.
1209
1232
  #
1233
+ # @option params [String] :dry_run_id
1234
+ # The DryRunId associated with an existing canary’s dry run. You can use
1235
+ # this DryRunId to retrieve information about the dry run.
1236
+ #
1210
1237
  # @return [Types::GetCanaryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1211
1238
  #
1212
1239
  # * {Types::GetCanaryResponse#canary #canary} => Types::Canary
@@ -1215,6 +1242,7 @@ module Aws::Synthetics
1215
1242
  #
1216
1243
  # resp = client.get_canary({
1217
1244
  # name: "CanaryName", # required
1245
+ # dry_run_id: "UUID",
1218
1246
  # })
1219
1247
  #
1220
1248
  # @example Response structure
@@ -1257,6 +1285,8 @@ module Aws::Synthetics
1257
1285
  # resp.canary.tags["TagKey"] #=> String
1258
1286
  # resp.canary.artifact_config.s3_encryption.encryption_mode #=> String, one of "SSE_S3", "SSE_KMS"
1259
1287
  # resp.canary.artifact_config.s3_encryption.kms_key_arn #=> String
1288
+ # resp.canary.dry_run_config.dry_run_id #=> String
1289
+ # resp.canary.dry_run_config.last_dry_run_execution_status #=> String
1260
1290
  #
1261
1291
  # @see http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/GetCanary AWS API Documentation
1262
1292
  #
@@ -1282,6 +1312,23 @@ module Aws::Synthetics
1282
1312
  # you use the `GetCanaryRuns` operation. If you omit this parameter, the
1283
1313
  # default of 100 is used.
1284
1314
  #
1315
+ # @option params [String] :dry_run_id
1316
+ # The DryRunId associated with an existing canary’s dry run. You can use
1317
+ # this DryRunId to retrieve information about the dry run.
1318
+ #
1319
+ # @option params [String] :run_type
1320
+ # * When you provide `RunType=CANARY_RUN` and `dryRunId`, you will get
1321
+ # an exception
1322
+ #
1323
+ # * When a value is not provided for `RunType`, the default value is
1324
+ # `CANARY_RUN`
1325
+ #
1326
+ # * When `CANARY_RUN` is provided, all canary runs excluding dry runs
1327
+ # are returned
1328
+ #
1329
+ # * When `DRY_RUN` is provided, all dry runs excluding canary runs are
1330
+ # returned
1331
+ #
1285
1332
  # @return [Types::GetCanaryRunsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1286
1333
  #
1287
1334
  # * {Types::GetCanaryRunsResponse#canary_runs #canary_runs} => Array<Types::CanaryRun>
@@ -1295,6 +1342,8 @@ module Aws::Synthetics
1295
1342
  # name: "CanaryName", # required
1296
1343
  # next_token: "Token",
1297
1344
  # max_results: 1,
1345
+ # dry_run_id: "UUID",
1346
+ # run_type: "CANARY_RUN", # accepts CANARY_RUN, DRY_RUN
1298
1347
  # })
1299
1348
  #
1300
1349
  # @example Response structure
@@ -1308,6 +1357,7 @@ module Aws::Synthetics
1308
1357
  # resp.canary_runs[0].timeline.started #=> Time
1309
1358
  # resp.canary_runs[0].timeline.completed #=> Time
1310
1359
  # resp.canary_runs[0].artifact_s3_location #=> String
1360
+ # resp.canary_runs[0].dry_run_config.dry_run_id #=> String
1311
1361
  # resp.next_token #=> String
1312
1362
  #
1313
1363
  # @see http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/GetCanaryRuns AWS API Documentation
@@ -1562,6 +1612,198 @@ module Aws::Synthetics
1562
1612
  req.send_request(options)
1563
1613
  end
1564
1614
 
1615
+ # Use this operation to start a dry run for a canary that has already
1616
+ # been created
1617
+ #
1618
+ # @option params [required, String] :name
1619
+ # The name of the canary that you want to dry run. To find canary names,
1620
+ # use [DescribeCanaries][1].
1621
+ #
1622
+ #
1623
+ #
1624
+ # [1]: https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DescribeCanaries.html
1625
+ #
1626
+ # @option params [Types::CanaryCodeInput] :code
1627
+ # Use this structure to input your script code for the canary. This
1628
+ # structure contains the Lambda handler with the location where the
1629
+ # canary should start running the script. If the script is stored in an
1630
+ # S3 bucket, the bucket name, key, and version are also included. If the
1631
+ # script was passed into the canary directly, the script code is
1632
+ # contained in the value of `Zipfile`.
1633
+ #
1634
+ # If you are uploading your canary scripts with an Amazon S3 bucket,
1635
+ # your zip file should include your script in a certain folder
1636
+ # structure.
1637
+ #
1638
+ # * For Node.js canaries, the folder structure must be
1639
+ # `nodejs/node_modules/myCanaryFilename.js ` For more information, see
1640
+ # [Packaging your Node.js canary files][1]
1641
+ #
1642
+ # * For Python canaries, the folder structure must be
1643
+ # `python/myCanaryFilename.py ` or
1644
+ # `python/myFolder/myCanaryFilename.py ` For more information, see
1645
+ # [Packaging your Python canary files][2]
1646
+ #
1647
+ #
1648
+ #
1649
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_WritingCanary_Nodejs.html#CloudWatch_Synthetics_Canaries_package
1650
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_WritingCanary_Python.html#CloudWatch_Synthetics_Canaries_WritingCanary_Python_package
1651
+ #
1652
+ # @option params [String] :runtime_version
1653
+ # Specifies the runtime version to use for the canary. For a list of
1654
+ # valid runtime versions and for more information about runtime
1655
+ # versions, see [ Canary Runtime Versions][1].
1656
+ #
1657
+ #
1658
+ #
1659
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Library.html
1660
+ #
1661
+ # @option params [Types::CanaryRunConfigInput] :run_config
1662
+ # A structure that contains input information for a canary run.
1663
+ #
1664
+ # @option params [Types::VpcConfigInput] :vpc_config
1665
+ # If this canary is to test an endpoint in a VPC, this structure
1666
+ # contains information about the subnets and security groups of the VPC
1667
+ # endpoint. For more information, see [ Running a Canary in a VPC][1].
1668
+ #
1669
+ #
1670
+ #
1671
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_VPC.html
1672
+ #
1673
+ # @option params [String] :execution_role_arn
1674
+ # The ARN of the IAM role to be used to run the canary. This role must
1675
+ # already exist, and must include `lambda.amazonaws.com` as a principal
1676
+ # in the trust policy. The role must also have the following
1677
+ # permissions:
1678
+ #
1679
+ # @option params [Integer] :success_retention_period_in_days
1680
+ # The number of days to retain data on the failed runs for this canary.
1681
+ # The valid range is 1 to 455 days.
1682
+ #
1683
+ # This setting affects the range of information returned by
1684
+ # [GetCanaryRuns][1], as well as the range of information displayed in
1685
+ # the Synthetics console.
1686
+ #
1687
+ #
1688
+ #
1689
+ # [1]: https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_GetCanaryRuns.html
1690
+ #
1691
+ # @option params [Integer] :failure_retention_period_in_days
1692
+ # The number of days to retain data on the failed runs for this canary.
1693
+ # The valid range is 1 to 455 days.
1694
+ #
1695
+ # This setting affects the range of information returned by
1696
+ # [GetCanaryRuns][1], as well as the range of information displayed in
1697
+ # the Synthetics console.
1698
+ #
1699
+ #
1700
+ #
1701
+ # [1]: https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_GetCanaryRuns.html
1702
+ #
1703
+ # @option params [Types::VisualReferenceInput] :visual_reference
1704
+ # An object that specifies what screenshots to use as a baseline for
1705
+ # visual monitoring by this canary. It can optionally also specify parts
1706
+ # of the screenshots to ignore during the visual monitoring comparison.
1707
+ #
1708
+ # Visual monitoring is supported only on canaries running the
1709
+ # **syn-puppeteer-node-3.2** runtime or later. For more information, see
1710
+ # [ Visual monitoring][1] and [ Visual monitoring blueprint][2]
1711
+ #
1712
+ #
1713
+ #
1714
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Library_SyntheticsLogger_VisualTesting.html
1715
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Blueprints_VisualTesting.html
1716
+ #
1717
+ # @option params [String] :artifact_s3_location
1718
+ # The location in Amazon S3 where Synthetics stores artifacts from the
1719
+ # test runs of this canary. Artifacts include the log file, screenshots,
1720
+ # and HAR files. The name of the Amazon S3 bucket can't include a
1721
+ # period (.).
1722
+ #
1723
+ # @option params [Types::ArtifactConfigInput] :artifact_config
1724
+ # A structure that contains the configuration for canary artifacts,
1725
+ # including the encryption-at-rest settings for artifacts that the
1726
+ # canary uploads to Amazon S3.
1727
+ #
1728
+ # @option params [String] :provisioned_resource_cleanup
1729
+ # Specifies whether to also delete the Lambda functions and layers used
1730
+ # by this canary when the canary is deleted. If the value of this
1731
+ # parameter is `AUTOMATIC`, it means that the Lambda functions and
1732
+ # layers will be deleted when the canary is deleted.
1733
+ #
1734
+ # If the value of this parameter is `OFF`, then the value of the
1735
+ # `DeleteLambda` parameter of the [DeleteCanary][1] operation determines
1736
+ # whether the Lambda functions and layers will be deleted.
1737
+ #
1738
+ #
1739
+ #
1740
+ # [1]: https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DeleteCanary.html
1741
+ #
1742
+ # @return [Types::StartCanaryDryRunResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1743
+ #
1744
+ # * {Types::StartCanaryDryRunResponse#dry_run_config #dry_run_config} => Types::DryRunConfigOutput
1745
+ #
1746
+ # @example Request syntax with placeholder values
1747
+ #
1748
+ # resp = client.start_canary_dry_run({
1749
+ # name: "CanaryName", # required
1750
+ # code: {
1751
+ # s3_bucket: "String",
1752
+ # s3_key: "String",
1753
+ # s3_version: "String",
1754
+ # zip_file: "data",
1755
+ # handler: "CodeHandler", # required
1756
+ # },
1757
+ # runtime_version: "String",
1758
+ # run_config: {
1759
+ # timeout_in_seconds: 1,
1760
+ # memory_in_mb: 1,
1761
+ # active_tracing: false,
1762
+ # environment_variables: {
1763
+ # "EnvironmentVariableName" => "EnvironmentVariableValue",
1764
+ # },
1765
+ # },
1766
+ # vpc_config: {
1767
+ # subnet_ids: ["SubnetId"],
1768
+ # security_group_ids: ["SecurityGroupId"],
1769
+ # ipv_6_allowed_for_dual_stack: false,
1770
+ # },
1771
+ # execution_role_arn: "RoleArn",
1772
+ # success_retention_period_in_days: 1,
1773
+ # failure_retention_period_in_days: 1,
1774
+ # visual_reference: {
1775
+ # base_screenshots: [
1776
+ # {
1777
+ # screenshot_name: "String", # required
1778
+ # ignore_coordinates: ["BaseScreenshotConfigIgnoreCoordinate"],
1779
+ # },
1780
+ # ],
1781
+ # base_canary_run_id: "String", # required
1782
+ # },
1783
+ # artifact_s3_location: "String",
1784
+ # artifact_config: {
1785
+ # s3_encryption: {
1786
+ # encryption_mode: "SSE_S3", # accepts SSE_S3, SSE_KMS
1787
+ # kms_key_arn: "KmsKeyArn",
1788
+ # },
1789
+ # },
1790
+ # provisioned_resource_cleanup: "AUTOMATIC", # accepts AUTOMATIC, OFF
1791
+ # })
1792
+ #
1793
+ # @example Response structure
1794
+ #
1795
+ # resp.dry_run_config.dry_run_id #=> String
1796
+ # resp.dry_run_config.last_dry_run_execution_status #=> String
1797
+ #
1798
+ # @see http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/StartCanaryDryRun AWS API Documentation
1799
+ #
1800
+ # @overload start_canary_dry_run(params = {})
1801
+ # @param [Hash] params ({})
1802
+ def start_canary_dry_run(params = {}, options = {})
1803
+ req = build_request(:start_canary_dry_run, params)
1804
+ req.send_request(options)
1805
+ end
1806
+
1565
1807
  # Stops the canary to prevent all future runs. If the canary is
1566
1808
  # currently running,the run that is in progress completes on its own,
1567
1809
  # publishes metrics, and uploads artifacts, but it is not recorded in
@@ -1684,6 +1926,12 @@ module Aws::Synthetics
1684
1926
  # canary. To change the tags of an existing canary, use
1685
1927
  # [TagResource][1].
1686
1928
  #
1929
+ # <note markdown="1"> When you use the `dryRunId` field when updating a canary, the only
1930
+ # other field you can provide is the `Schedule`. Adding any other field
1931
+ # will thrown an exception.
1932
+ #
1933
+ # </note>
1934
+ #
1687
1935
  #
1688
1936
  #
1689
1937
  # [1]: https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_TagResource.html
@@ -1740,16 +1988,34 @@ module Aws::Synthetics
1740
1988
  # A structure that contains the timeout value that is used for each
1741
1989
  # individual run of the canary.
1742
1990
  #
1743
- # The environment variables keys and values are not encrypted. Do not
1744
- # store sensitive information in this field.
1991
+ # Environment variable keys and values are encrypted at rest using
1992
+ # Amazon Web Services owned KMS keys. However, the environment variables
1993
+ # are not encrypted on the client side. Do not store sensitive
1994
+ # information in them.
1745
1995
  #
1746
1996
  # @option params [Integer] :success_retention_period_in_days
1747
1997
  # The number of days to retain data about successful runs of this
1748
1998
  # canary.
1749
1999
  #
2000
+ # This setting affects the range of information returned by
2001
+ # [GetCanaryRuns][1], as well as the range of information displayed in
2002
+ # the Synthetics console.
2003
+ #
2004
+ #
2005
+ #
2006
+ # [1]: https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_GetCanaryRuns.html
2007
+ #
1750
2008
  # @option params [Integer] :failure_retention_period_in_days
1751
2009
  # The number of days to retain data about failed runs of this canary.
1752
2010
  #
2011
+ # This setting affects the range of information returned by
2012
+ # [GetCanaryRuns][1], as well as the range of information displayed in
2013
+ # the Synthetics console.
2014
+ #
2015
+ #
2016
+ #
2017
+ # [1]: https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_GetCanaryRuns.html
2018
+ #
1753
2019
  # @option params [Types::VpcConfigInput] :vpc_config
1754
2020
  # If this canary is to test an endpoint in a VPC, this structure
1755
2021
  # contains information about the subnet and security groups of the VPC
@@ -1796,6 +2062,16 @@ module Aws::Synthetics
1796
2062
  #
1797
2063
  # [1]: https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_DeleteCanary.html
1798
2064
  #
2065
+ # @option params [String] :dry_run_id
2066
+ # Update the existing canary using the updated configurations from the
2067
+ # DryRun associated with the DryRunId.
2068
+ #
2069
+ # <note markdown="1"> When you use the `dryRunId` field when updating a canary, the only
2070
+ # other field you can provide is the `Schedule`. Adding any other field
2071
+ # will thrown an exception.
2072
+ #
2073
+ # </note>
2074
+ #
1799
2075
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1800
2076
  #
1801
2077
  # @example Request syntax with placeholder values
@@ -1847,6 +2123,7 @@ module Aws::Synthetics
1847
2123
  # },
1848
2124
  # },
1849
2125
  # provisioned_resource_cleanup: "AUTOMATIC", # accepts AUTOMATIC, OFF
2126
+ # dry_run_id: "UUID",
1850
2127
  # })
1851
2128
  #
1852
2129
  # @see http://docs.aws.amazon.com/goto/WebAPI/synthetics-2017-10-11/UpdateCanary AWS API Documentation
@@ -1876,7 +2153,7 @@ module Aws::Synthetics
1876
2153
  tracer: tracer
1877
2154
  )
1878
2155
  context[:gem_name] = 'aws-sdk-synthetics'
1879
- context[:gem_version] = '1.61.0'
2156
+ context[:gem_version] = '1.63.0'
1880
2157
  Seahorse::Client::Request.new(handlers, context)
1881
2158
  end
1882
2159
 
@@ -14,6 +14,7 @@ module Aws::Synthetics
14
14
 
15
15
  include Seahorse::Model
16
16
 
17
+ AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
17
18
  ArtifactConfigInput = Shapes::StructureShape.new(name: 'ArtifactConfigInput')
18
19
  ArtifactConfigOutput = Shapes::StructureShape.new(name: 'ArtifactConfigOutput')
19
20
  AssociateResourceRequest = Shapes::StructureShape.new(name: 'AssociateResourceRequest')
@@ -30,6 +31,7 @@ module Aws::Synthetics
30
31
  CanaryArn = Shapes::StringShape.new(name: 'CanaryArn')
31
32
  CanaryCodeInput = Shapes::StructureShape.new(name: 'CanaryCodeInput')
32
33
  CanaryCodeOutput = Shapes::StructureShape.new(name: 'CanaryCodeOutput')
34
+ CanaryDryRunConfigOutput = Shapes::StructureShape.new(name: 'CanaryDryRunConfigOutput')
33
35
  CanaryLastRun = Shapes::StructureShape.new(name: 'CanaryLastRun')
34
36
  CanaryName = Shapes::StringShape.new(name: 'CanaryName')
35
37
  CanaryRun = Shapes::StructureShape.new(name: 'CanaryRun')
@@ -66,6 +68,7 @@ module Aws::Synthetics
66
68
  DescribeRuntimeVersionsResponse = Shapes::StructureShape.new(name: 'DescribeRuntimeVersionsResponse')
67
69
  DisassociateResourceRequest = Shapes::StructureShape.new(name: 'DisassociateResourceRequest')
68
70
  DisassociateResourceResponse = Shapes::StructureShape.new(name: 'DisassociateResourceResponse')
71
+ DryRunConfigOutput = Shapes::StructureShape.new(name: 'DryRunConfigOutput')
69
72
  EncryptionMode = Shapes::StringShape.new(name: 'EncryptionMode')
70
73
  EnvironmentVariableName = Shapes::StringShape.new(name: 'EnvironmentVariableName')
71
74
  EnvironmentVariableValue = Shapes::StringShape.new(name: 'EnvironmentVariableValue')
@@ -112,12 +115,15 @@ module Aws::Synthetics
112
115
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
113
116
  ResourceToTag = Shapes::StringShape.new(name: 'ResourceToTag')
114
117
  RoleArn = Shapes::StringShape.new(name: 'RoleArn')
118
+ RunType = Shapes::StringShape.new(name: 'RunType')
115
119
  RuntimeVersion = Shapes::StructureShape.new(name: 'RuntimeVersion')
116
120
  RuntimeVersionList = Shapes::ListShape.new(name: 'RuntimeVersionList')
117
121
  S3EncryptionConfig = Shapes::StructureShape.new(name: 'S3EncryptionConfig')
118
122
  SecurityGroupId = Shapes::StringShape.new(name: 'SecurityGroupId')
119
123
  SecurityGroupIds = Shapes::ListShape.new(name: 'SecurityGroupIds')
120
124
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
125
+ StartCanaryDryRunRequest = Shapes::StructureShape.new(name: 'StartCanaryDryRunRequest')
126
+ StartCanaryDryRunResponse = Shapes::StructureShape.new(name: 'StartCanaryDryRunResponse')
121
127
  StartCanaryRequest = Shapes::StructureShape.new(name: 'StartCanaryRequest')
122
128
  StartCanaryResponse = Shapes::StructureShape.new(name: 'StartCanaryResponse')
123
129
  StopCanaryRequest = Shapes::StructureShape.new(name: 'StopCanaryRequest')
@@ -148,6 +154,9 @@ module Aws::Synthetics
148
154
  VpcId = Shapes::StringShape.new(name: 'VpcId')
149
155
  boolean = Shapes::BooleanShape.new(name: 'boolean')
150
156
 
157
+ AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
158
+ AccessDeniedException.struct_class = Types::AccessDeniedException
159
+
151
160
  ArtifactConfigInput.add_member(:s3_encryption, Shapes::ShapeRef.new(shape: S3EncryptionConfig, location_name: "S3Encryption"))
152
161
  ArtifactConfigInput.struct_class = Types::ArtifactConfigInput
153
162
 
@@ -193,6 +202,7 @@ module Aws::Synthetics
193
202
  Canary.add_member(:provisioned_resource_cleanup, Shapes::ShapeRef.new(shape: ProvisionedResourceCleanupSetting, location_name: "ProvisionedResourceCleanup"))
194
203
  Canary.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
195
204
  Canary.add_member(:artifact_config, Shapes::ShapeRef.new(shape: ArtifactConfigOutput, location_name: "ArtifactConfig"))
205
+ Canary.add_member(:dry_run_config, Shapes::ShapeRef.new(shape: DryRunConfigOutput, location_name: "DryRunConfig"))
196
206
  Canary.struct_class = Types::Canary
197
207
 
198
208
  CanaryCodeInput.add_member(:s3_bucket, Shapes::ShapeRef.new(shape: String, location_name: "S3Bucket"))
@@ -206,6 +216,9 @@ module Aws::Synthetics
206
216
  CanaryCodeOutput.add_member(:handler, Shapes::ShapeRef.new(shape: String, location_name: "Handler"))
207
217
  CanaryCodeOutput.struct_class = Types::CanaryCodeOutput
208
218
 
219
+ CanaryDryRunConfigOutput.add_member(:dry_run_id, Shapes::ShapeRef.new(shape: UUID, location_name: "DryRunId"))
220
+ CanaryDryRunConfigOutput.struct_class = Types::CanaryDryRunConfigOutput
221
+
209
222
  CanaryLastRun.add_member(:canary_name, Shapes::ShapeRef.new(shape: CanaryName, location_name: "CanaryName"))
210
223
  CanaryLastRun.add_member(:last_run, Shapes::ShapeRef.new(shape: CanaryRun, location_name: "LastRun"))
211
224
  CanaryLastRun.struct_class = Types::CanaryLastRun
@@ -215,6 +228,7 @@ module Aws::Synthetics
215
228
  CanaryRun.add_member(:status, Shapes::ShapeRef.new(shape: CanaryRunStatus, location_name: "Status"))
216
229
  CanaryRun.add_member(:timeline, Shapes::ShapeRef.new(shape: CanaryRunTimeline, location_name: "Timeline"))
217
230
  CanaryRun.add_member(:artifact_s3_location, Shapes::ShapeRef.new(shape: String, location_name: "ArtifactS3Location"))
231
+ CanaryRun.add_member(:dry_run_config, Shapes::ShapeRef.new(shape: CanaryDryRunConfigOutput, location_name: "DryRunConfig"))
218
232
  CanaryRun.struct_class = Types::CanaryRun
219
233
 
220
234
  CanaryRunConfigInput.add_member(:timeout_in_seconds, Shapes::ShapeRef.new(shape: MaxFifteenMinutesInSeconds, location_name: "TimeoutInSeconds"))
@@ -334,10 +348,15 @@ module Aws::Synthetics
334
348
 
335
349
  DisassociateResourceResponse.struct_class = Types::DisassociateResourceResponse
336
350
 
351
+ DryRunConfigOutput.add_member(:dry_run_id, Shapes::ShapeRef.new(shape: UUID, location_name: "DryRunId"))
352
+ DryRunConfigOutput.add_member(:last_dry_run_execution_status, Shapes::ShapeRef.new(shape: String, location_name: "LastDryRunExecutionStatus"))
353
+ DryRunConfigOutput.struct_class = Types::DryRunConfigOutput
354
+
337
355
  EnvironmentVariablesMap.key = Shapes::ShapeRef.new(shape: EnvironmentVariableName)
338
356
  EnvironmentVariablesMap.value = Shapes::ShapeRef.new(shape: EnvironmentVariableValue)
339
357
 
340
358
  GetCanaryRequest.add_member(:name, Shapes::ShapeRef.new(shape: CanaryName, required: true, location: "uri", location_name: "name"))
359
+ GetCanaryRequest.add_member(:dry_run_id, Shapes::ShapeRef.new(shape: UUID, location: "querystring", location_name: "dryRunId"))
341
360
  GetCanaryRequest.struct_class = Types::GetCanaryRequest
342
361
 
343
362
  GetCanaryResponse.add_member(:canary, Shapes::ShapeRef.new(shape: Canary, location_name: "Canary"))
@@ -346,6 +365,8 @@ module Aws::Synthetics
346
365
  GetCanaryRunsRequest.add_member(:name, Shapes::ShapeRef.new(shape: CanaryName, required: true, location: "uri", location_name: "name"))
347
366
  GetCanaryRunsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
348
367
  GetCanaryRunsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxSize100, location_name: "MaxResults"))
368
+ GetCanaryRunsRequest.add_member(:dry_run_id, Shapes::ShapeRef.new(shape: UUID, location_name: "DryRunId"))
369
+ GetCanaryRunsRequest.add_member(:run_type, Shapes::ShapeRef.new(shape: RunType, location_name: "RunType"))
349
370
  GetCanaryRunsRequest.struct_class = Types::GetCanaryRunsRequest
350
371
 
351
372
  GetCanaryRunsResponse.add_member(:canary_runs, Shapes::ShapeRef.new(shape: CanaryRuns, location_name: "CanaryRuns"))
@@ -439,6 +460,23 @@ module Aws::Synthetics
439
460
  ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
440
461
  ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
441
462
 
463
+ StartCanaryDryRunRequest.add_member(:name, Shapes::ShapeRef.new(shape: CanaryName, required: true, location: "uri", location_name: "name"))
464
+ StartCanaryDryRunRequest.add_member(:code, Shapes::ShapeRef.new(shape: CanaryCodeInput, location_name: "Code"))
465
+ StartCanaryDryRunRequest.add_member(:runtime_version, Shapes::ShapeRef.new(shape: String, location_name: "RuntimeVersion"))
466
+ StartCanaryDryRunRequest.add_member(:run_config, Shapes::ShapeRef.new(shape: CanaryRunConfigInput, location_name: "RunConfig"))
467
+ StartCanaryDryRunRequest.add_member(:vpc_config, Shapes::ShapeRef.new(shape: VpcConfigInput, location_name: "VpcConfig"))
468
+ StartCanaryDryRunRequest.add_member(:execution_role_arn, Shapes::ShapeRef.new(shape: RoleArn, location_name: "ExecutionRoleArn"))
469
+ StartCanaryDryRunRequest.add_member(:success_retention_period_in_days, Shapes::ShapeRef.new(shape: MaxSize1024, location_name: "SuccessRetentionPeriodInDays"))
470
+ StartCanaryDryRunRequest.add_member(:failure_retention_period_in_days, Shapes::ShapeRef.new(shape: MaxSize1024, location_name: "FailureRetentionPeriodInDays"))
471
+ StartCanaryDryRunRequest.add_member(:visual_reference, Shapes::ShapeRef.new(shape: VisualReferenceInput, location_name: "VisualReference"))
472
+ StartCanaryDryRunRequest.add_member(:artifact_s3_location, Shapes::ShapeRef.new(shape: String, location_name: "ArtifactS3Location"))
473
+ StartCanaryDryRunRequest.add_member(:artifact_config, Shapes::ShapeRef.new(shape: ArtifactConfigInput, location_name: "ArtifactConfig"))
474
+ StartCanaryDryRunRequest.add_member(:provisioned_resource_cleanup, Shapes::ShapeRef.new(shape: ProvisionedResourceCleanupSetting, location_name: "ProvisionedResourceCleanup"))
475
+ StartCanaryDryRunRequest.struct_class = Types::StartCanaryDryRunRequest
476
+
477
+ StartCanaryDryRunResponse.add_member(:dry_run_config, Shapes::ShapeRef.new(shape: DryRunConfigOutput, location_name: "DryRunConfig"))
478
+ StartCanaryDryRunResponse.struct_class = Types::StartCanaryDryRunResponse
479
+
442
480
  StartCanaryRequest.add_member(:name, Shapes::ShapeRef.new(shape: CanaryName, required: true, location: "uri", location_name: "name"))
443
481
  StartCanaryRequest.struct_class = Types::StartCanaryRequest
444
482
 
@@ -486,6 +524,7 @@ module Aws::Synthetics
486
524
  UpdateCanaryRequest.add_member(:artifact_s3_location, Shapes::ShapeRef.new(shape: String, location_name: "ArtifactS3Location"))
487
525
  UpdateCanaryRequest.add_member(:artifact_config, Shapes::ShapeRef.new(shape: ArtifactConfigInput, location_name: "ArtifactConfig"))
488
526
  UpdateCanaryRequest.add_member(:provisioned_resource_cleanup, Shapes::ShapeRef.new(shape: ProvisionedResourceCleanupSetting, location_name: "ProvisionedResourceCleanup"))
527
+ UpdateCanaryRequest.add_member(:dry_run_id, Shapes::ShapeRef.new(shape: UUID, location_name: "DryRunId"))
489
528
  UpdateCanaryRequest.struct_class = Types::UpdateCanaryRequest
490
529
 
491
530
  UpdateCanaryResponse.struct_class = Types::UpdateCanaryResponse
@@ -768,6 +807,19 @@ module Aws::Synthetics
768
807
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
769
808
  end)
770
809
 
810
+ api.add_operation(:start_canary_dry_run, Seahorse::Model::Operation.new.tap do |o|
811
+ o.name = "StartCanaryDryRun"
812
+ o.http_method = "POST"
813
+ o.http_request_uri = "/canary/{name}/dry-run/start"
814
+ o.input = Shapes::ShapeRef.new(shape: StartCanaryDryRunRequest)
815
+ o.output = Shapes::ShapeRef.new(shape: StartCanaryDryRunResponse)
816
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
817
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
818
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
819
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
820
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
821
+ end)
822
+
771
823
  api.add_operation(:stop_canary, Seahorse::Model::Operation.new.tap do |o|
772
824
  o.name = "StopCanary"
773
825
  o.http_method = "POST"
@@ -817,6 +869,7 @@ module Aws::Synthetics
817
869
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
818
870
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
819
871
  o.errors << Shapes::ShapeRef.new(shape: RequestEntityTooLargeException)
872
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
820
873
  end)
821
874
  end
822
875
 
@@ -27,6 +27,7 @@ module Aws::Synthetics
27
27
  # See {Seahorse::Client::RequestContext} for more information.
28
28
  #
29
29
  # ## Error Classes
30
+ # * {AccessDeniedException}
30
31
  # * {BadRequestException}
31
32
  # * {ConflictException}
32
33
  # * {InternalFailureException}
@@ -44,6 +45,21 @@ module Aws::Synthetics
44
45
 
45
46
  extend Aws::Errors::DynamicErrors
46
47
 
48
+ class AccessDeniedException < ServiceError
49
+
50
+ # @param [Seahorse::Client::RequestContext] context
51
+ # @param [String] message
52
+ # @param [Aws::Synthetics::Types::AccessDeniedException] data
53
+ def initialize(context, message, data = Aws::EmptyStructure.new)
54
+ super(context, message, data)
55
+ end
56
+
57
+ # @return [String]
58
+ def message
59
+ @message || @data[:message]
60
+ end
61
+ end
62
+
47
63
  class BadRequestException < ServiceError
48
64
 
49
65
  # @param [Seahorse::Client::RequestContext] context