/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the synthetics-2017-10-11.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.Synthetics.Model { /// /// Container for the parameters to the UpdateCanary operation. /// Updates the configuration of a canary that has already been created. /// /// /// /// You can't use this operation to update the tags of an existing canary. To change the /// tags of an existing canary, use TagResource. /// /// public partial class UpdateCanaryRequest : AmazonSyntheticsRequest { private ArtifactConfigInput _artifactConfig; private string _artifactS3Location; private CanaryCodeInput _code; private string _executionRoleArn; private int? _failureRetentionPeriodInDays; private string _name; private CanaryRunConfigInput _runConfig; private string _runtimeVersion; private CanaryScheduleInput _schedule; private int? _successRetentionPeriodInDays; private VisualReferenceInput _visualReference; private VpcConfigInput _vpcConfig; /// /// Gets and sets the property ArtifactConfig. /// /// A structure that contains the configuration for canary artifacts, including the encryption-at-rest /// settings for artifacts that the canary uploads to Amazon S3. /// /// public ArtifactConfigInput ArtifactConfig { get { return this._artifactConfig; } set { this._artifactConfig = value; } } // Check to see if ArtifactConfig property is set internal bool IsSetArtifactConfig() { return this._artifactConfig != null; } /// /// Gets and sets the property ArtifactS3Location. /// /// The location in Amazon S3 where Synthetics stores artifacts from the test runs of /// this canary. Artifacts include the log file, screenshots, and HAR files. The name /// of the S3 bucket can't include a period (.). /// /// [AWSProperty(Min=1, Max=1024)] public string ArtifactS3Location { get { return this._artifactS3Location; } set { this._artifactS3Location = value; } } // Check to see if ArtifactS3Location property is set internal bool IsSetArtifactS3Location() { return this._artifactS3Location != null; } /// /// Gets and sets the property Code. /// /// A structure that includes the entry point from which the canary should start running /// your script. If the script is stored in an S3 bucket, the bucket name, key, and version /// are also included. /// /// public CanaryCodeInput Code { get { return this._code; } set { this._code = value; } } // Check to see if Code property is set internal bool IsSetCode() { return this._code != null; } /// /// Gets and sets the property ExecutionRoleArn. /// /// The ARN of the IAM role to be used to run the canary. This role must already exist, /// and must include lambda.amazonaws.com as a principal in the trust policy. /// The role must also have the following permissions: /// /// /// [AWSProperty(Min=1, Max=2048)] public string ExecutionRoleArn { get { return this._executionRoleArn; } set { this._executionRoleArn = value; } } // Check to see if ExecutionRoleArn property is set internal bool IsSetExecutionRoleArn() { return this._executionRoleArn != null; } /// /// Gets and sets the property FailureRetentionPeriodInDays. /// /// The number of days to retain data about failed runs of this canary. /// /// [AWSProperty(Min=1, Max=1024)] public int FailureRetentionPeriodInDays { get { return this._failureRetentionPeriodInDays.GetValueOrDefault(); } set { this._failureRetentionPeriodInDays = value; } } // Check to see if FailureRetentionPeriodInDays property is set internal bool IsSetFailureRetentionPeriodInDays() { return this._failureRetentionPeriodInDays.HasValue; } /// /// Gets and sets the property Name. /// /// The name of the canary that you want to update. To find the names of your canaries, /// use DescribeCanaries. /// /// /// /// You cannot change the name of a canary that has already been created. /// /// [AWSProperty(Required=true, Min=1, Max=21)] public string Name { get { return this._name; } set { this._name = value; } } // Check to see if Name property is set internal bool IsSetName() { return this._name != null; } /// /// Gets and sets the property RunConfig. /// /// A structure that contains the timeout value that is used for each individual run of /// the canary. /// /// /// /// The environment variables keys and values are not encrypted. Do not store sensitive /// information in this field. /// /// /// public CanaryRunConfigInput RunConfig { get { return this._runConfig; } set { this._runConfig = value; } } // Check to see if RunConfig property is set internal bool IsSetRunConfig() { return this._runConfig != null; } /// /// Gets and sets the property RuntimeVersion. /// /// Specifies the runtime version to use for the canary. For a list of valid runtime versions /// and for more information about runtime versions, see /// Canary Runtime Versions. /// /// [AWSProperty(Min=1, Max=1024)] public string RuntimeVersion { get { return this._runtimeVersion; } set { this._runtimeVersion = value; } } // Check to see if RuntimeVersion property is set internal bool IsSetRuntimeVersion() { return this._runtimeVersion != null; } /// /// Gets and sets the property Schedule. /// /// A structure that contains information about how often the canary is to run, and when /// these runs are to stop. /// /// public CanaryScheduleInput Schedule { get { return this._schedule; } set { this._schedule = value; } } // Check to see if Schedule property is set internal bool IsSetSchedule() { return this._schedule != null; } /// /// Gets and sets the property SuccessRetentionPeriodInDays. /// /// The number of days to retain data about successful runs of this canary. /// /// [AWSProperty(Min=1, Max=1024)] public int SuccessRetentionPeriodInDays { get { return this._successRetentionPeriodInDays.GetValueOrDefault(); } set { this._successRetentionPeriodInDays = value; } } // Check to see if SuccessRetentionPeriodInDays property is set internal bool IsSetSuccessRetentionPeriodInDays() { return this._successRetentionPeriodInDays.HasValue; } /// /// Gets and sets the property VisualReference. /// /// Defines the screenshots to use as the baseline for comparisons during visual monitoring /// comparisons during future runs of this canary. If you omit this parameter, no changes /// are made to any baseline screenshots that the canary might be using already. /// /// /// /// Visual monitoring is supported only on canaries running the syn-puppeteer-node-3.2 /// runtime or later. For more information, see /// Visual monitoring and /// Visual monitoring blueprint /// /// public VisualReferenceInput VisualReference { get { return this._visualReference; } set { this._visualReference = value; } } // Check to see if VisualReference property is set internal bool IsSetVisualReference() { return this._visualReference != null; } /// /// Gets and sets the property VpcConfig. /// /// If this canary is to test an endpoint in a VPC, this structure contains information /// about the subnet and security groups of the VPC endpoint. For more information, see /// /// Running a Canary in a VPC. /// /// public VpcConfigInput VpcConfig { get { return this._vpcConfig; } set { this._vpcConfig = value; } } // Check to see if VpcConfig property is set internal bool IsSetVpcConfig() { return this._vpcConfig != null; } } }