1. Packages
  2. AWS Native
  3. API Docs
  4. synthetics
  5. Canary

AWS Native is in preview. AWS Classic is fully supported.

AWS Native v0.102.0 published on Tuesday, Apr 16, 2024 by Pulumi

aws-native.synthetics.Canary

Explore with Pulumi AI

aws-native logo

AWS Native is in preview. AWS Classic is fully supported.

AWS Native v0.102.0 published on Tuesday, Apr 16, 2024 by Pulumi

    Resource Type definition for AWS::Synthetics::Canary

    Example Usage

    Example

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AwsNative = Pulumi.AwsNative;
    
    return await Deployment.RunAsync(() => 
    {
        var syntheticsCanary = new AwsNative.Synthetics.Canary("syntheticsCanary", new()
        {
            Name = "samplecanary",
            ExecutionRoleArn = "arn:aws:iam::123456789012:role/my-lambda-execution-role-to-run-canary",
            Code = new AwsNative.Synthetics.Inputs.CanaryCodeArgs
            {
                Handler = "pageLoadBlueprint.handler",
                S3Bucket = "aws-synthetics-code-myaccount-canary1",
                S3Key = "my-script-location",
            },
            ArtifactS3Location = "s3://my-results-bucket",
            RuntimeVersion = "syn-nodejs-puppeteer-3.3",
            Schedule = new AwsNative.Synthetics.Inputs.CanaryScheduleArgs
            {
                Expression = "rate(1 minute)",
                DurationInSeconds = "3600",
            },
            RunConfig = new AwsNative.Synthetics.Inputs.CanaryRunConfigArgs
            {
                TimeoutInSeconds = 60,
            },
            FailureRetentionPeriod = 30,
            SuccessRetentionPeriod = 30,
            Tags = new[]
            {
                new AwsNative.Inputs.TagArgs
                {
                    Key = "key00AtCreate",
                    Value = "value001AtCreate",
                },
            },
            StartCanaryAfterCreation = true,
        });
    
    });
    
    package main
    
    import (
    	awsnative "github.com/pulumi/pulumi-aws-native/sdk/go/aws"
    	"github.com/pulumi/pulumi-aws-native/sdk/go/aws/synthetics"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := synthetics.NewCanary(ctx, "syntheticsCanary", &synthetics.CanaryArgs{
    			Name:             pulumi.String("samplecanary"),
    			ExecutionRoleArn: pulumi.String("arn:aws:iam::123456789012:role/my-lambda-execution-role-to-run-canary"),
    			Code: &synthetics.CanaryCodeArgs{
    				Handler:  pulumi.String("pageLoadBlueprint.handler"),
    				S3Bucket: pulumi.String("aws-synthetics-code-myaccount-canary1"),
    				S3Key:    pulumi.String("my-script-location"),
    			},
    			ArtifactS3Location: pulumi.String("s3://my-results-bucket"),
    			RuntimeVersion:     pulumi.String("syn-nodejs-puppeteer-3.3"),
    			Schedule: &synthetics.CanaryScheduleArgs{
    				Expression:        pulumi.String("rate(1 minute)"),
    				DurationInSeconds: pulumi.String("3600"),
    			},
    			RunConfig: &synthetics.CanaryRunConfigArgs{
    				TimeoutInSeconds: pulumi.Int(60),
    			},
    			FailureRetentionPeriod: pulumi.Int(30),
    			SuccessRetentionPeriod: pulumi.Int(30),
    			Tags: aws.TagArray{
    				&aws.TagArgs{
    					Key:   pulumi.String("key00AtCreate"),
    					Value: pulumi.String("value001AtCreate"),
    				},
    			},
    			StartCanaryAfterCreation: pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    

    Coming soon!

    import pulumi
    import pulumi_aws_native as aws_native
    
    synthetics_canary = aws_native.synthetics.Canary("syntheticsCanary",
        name="samplecanary",
        execution_role_arn="arn:aws:iam::123456789012:role/my-lambda-execution-role-to-run-canary",
        code=aws_native.synthetics.CanaryCodeArgs(
            handler="pageLoadBlueprint.handler",
            s3_bucket="aws-synthetics-code-myaccount-canary1",
            s3_key="my-script-location",
        ),
        artifact_s3_location="s3://my-results-bucket",
        runtime_version="syn-nodejs-puppeteer-3.3",
        schedule=aws_native.synthetics.CanaryScheduleArgs(
            expression="rate(1 minute)",
            duration_in_seconds="3600",
        ),
        run_config=aws_native.synthetics.CanaryRunConfigArgs(
            timeout_in_seconds=60,
        ),
        failure_retention_period=30,
        success_retention_period=30,
        tags=[aws_native.TagArgs(
            key="key00AtCreate",
            value="value001AtCreate",
        )],
        start_canary_after_creation=True)
    
    import * as pulumi from "@pulumi/pulumi";
    import * as aws_native from "@pulumi/aws-native";
    
    const syntheticsCanary = new aws_native.synthetics.Canary("syntheticsCanary", {
        name: "samplecanary",
        executionRoleArn: "arn:aws:iam::123456789012:role/my-lambda-execution-role-to-run-canary",
        code: {
            handler: "pageLoadBlueprint.handler",
            s3Bucket: "aws-synthetics-code-myaccount-canary1",
            s3Key: "my-script-location",
        },
        artifactS3Location: "s3://my-results-bucket",
        runtimeVersion: "syn-nodejs-puppeteer-3.3",
        schedule: {
            expression: "rate(1 minute)",
            durationInSeconds: "3600",
        },
        runConfig: {
            timeoutInSeconds: 60,
        },
        failureRetentionPeriod: 30,
        successRetentionPeriod: 30,
        tags: [{
            key: "key00AtCreate",
            value: "value001AtCreate",
        }],
        startCanaryAfterCreation: true,
    });
    

    Coming soon!

    Example

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AwsNative = Pulumi.AwsNative;
    
    return await Deployment.RunAsync(() => 
    {
        var syntheticsCanary = new AwsNative.Synthetics.Canary("syntheticsCanary", new()
        {
            Name = "samplecanary",
            ExecutionRoleArn = "arn:aws:iam::123456789012:role/my-lambda-execution-role-to-run-canary",
            Code = new AwsNative.Synthetics.Inputs.CanaryCodeArgs
            {
                Handler = "pageLoadBlueprint.handler",
                Script = @"var synthetics = require('Synthetics');
    const log = require('SyntheticsLogger');
    const pageLoadBlueprint = async function () {
    // INSERT URL here
    const URL = ""https://amazon.com"";
    
    let page = await synthetics.getPage();
    const response = await page.goto(URL, {waitUntil: 'domcontentloaded', timeout: 30000});
    //Wait for page to render.
    //Increase or decrease wait time based on endpoint being monitored.
    await page.waitFor(15000);
    await synthetics.takeScreenshot('loaded', 'loaded');
    let pageTitle = await page.title();
    log.info('Page title: ' + pageTitle);
    if (response.status() !== 200) {
         throw ""Failed to load page!"";
    }
    };
    
    exports.handler = async () => {
    return await pageLoadBlueprint();
    };
    ",
            },
            ArtifactS3Location = "s3://my-results-bucket",
            RuntimeVersion = "syn-nodejs-puppeteer-3.3",
            Schedule = new AwsNative.Synthetics.Inputs.CanaryScheduleArgs
            {
                Expression = "rate(1 minute)",
                DurationInSeconds = "3600",
            },
            RunConfig = new AwsNative.Synthetics.Inputs.CanaryRunConfigArgs
            {
                TimeoutInSeconds = 60,
            },
            FailureRetentionPeriod = 30,
            SuccessRetentionPeriod = 30,
            Tags = new[]
            {
                new AwsNative.Inputs.TagArgs
                {
                    Key = "key00AtCreate",
                    Value = "value001AtCreate",
                },
            },
            StartCanaryAfterCreation = false,
        });
    
    });
    
    package main
    
    import (
    	awsnative "github.com/pulumi/pulumi-aws-native/sdk/go/aws"
    	"github.com/pulumi/pulumi-aws-native/sdk/go/aws/synthetics"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := synthetics.NewCanary(ctx, "syntheticsCanary", &synthetics.CanaryArgs{
    			Name:             pulumi.String("samplecanary"),
    			ExecutionRoleArn: pulumi.String("arn:aws:iam::123456789012:role/my-lambda-execution-role-to-run-canary"),
    			Code: &synthetics.CanaryCodeArgs{
    				Handler: pulumi.String("pageLoadBlueprint.handler"),
    				Script: pulumi.String(`var synthetics = require('Synthetics');
    const log = require('SyntheticsLogger');
    const pageLoadBlueprint = async function () {
    // INSERT URL here
    const URL = "https://amazon.com";
    
    let page = await synthetics.getPage();
    const response = await page.goto(URL, {waitUntil: 'domcontentloaded', timeout: 30000});
    //Wait for page to render.
    //Increase or decrease wait time based on endpoint being monitored.
    await page.waitFor(15000);
    await synthetics.takeScreenshot('loaded', 'loaded');
    let pageTitle = await page.title();
    log.info('Page title: ' + pageTitle);
    if (response.status() !== 200) {
         throw "Failed to load page!";
    }
    };
    
    exports.handler = async () => {
    return await pageLoadBlueprint();
    };
    `),
    			},
    			ArtifactS3Location: pulumi.String("s3://my-results-bucket"),
    			RuntimeVersion:     pulumi.String("syn-nodejs-puppeteer-3.3"),
    			Schedule: &synthetics.CanaryScheduleArgs{
    				Expression:        pulumi.String("rate(1 minute)"),
    				DurationInSeconds: pulumi.String("3600"),
    			},
    			RunConfig: &synthetics.CanaryRunConfigArgs{
    				TimeoutInSeconds: pulumi.Int(60),
    			},
    			FailureRetentionPeriod: pulumi.Int(30),
    			SuccessRetentionPeriod: pulumi.Int(30),
    			Tags: aws.TagArray{
    				&aws.TagArgs{
    					Key:   pulumi.String("key00AtCreate"),
    					Value: pulumi.String("value001AtCreate"),
    				},
    			},
    			StartCanaryAfterCreation: pulumi.Bool(false),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    

    Coming soon!

    import pulumi
    import pulumi_aws_native as aws_native
    
    synthetics_canary = aws_native.synthetics.Canary("syntheticsCanary",
        name="samplecanary",
        execution_role_arn="arn:aws:iam::123456789012:role/my-lambda-execution-role-to-run-canary",
        code=aws_native.synthetics.CanaryCodeArgs(
            handler="pageLoadBlueprint.handler",
            script="""var synthetics = require('Synthetics');
    const log = require('SyntheticsLogger');
    const pageLoadBlueprint = async function () {
    // INSERT URL here
    const URL = "https://amazon.com";
    
    let page = await synthetics.getPage();
    const response = await page.goto(URL, {waitUntil: 'domcontentloaded', timeout: 30000});
    //Wait for page to render.
    //Increase or decrease wait time based on endpoint being monitored.
    await page.waitFor(15000);
    await synthetics.takeScreenshot('loaded', 'loaded');
    let pageTitle = await page.title();
    log.info('Page title: ' + pageTitle);
    if (response.status() !== 200) {
         throw "Failed to load page!";
    }
    };
    
    exports.handler = async () => {
    return await pageLoadBlueprint();
    };
    """,
        ),
        artifact_s3_location="s3://my-results-bucket",
        runtime_version="syn-nodejs-puppeteer-3.3",
        schedule=aws_native.synthetics.CanaryScheduleArgs(
            expression="rate(1 minute)",
            duration_in_seconds="3600",
        ),
        run_config=aws_native.synthetics.CanaryRunConfigArgs(
            timeout_in_seconds=60,
        ),
        failure_retention_period=30,
        success_retention_period=30,
        tags=[aws_native.TagArgs(
            key="key00AtCreate",
            value="value001AtCreate",
        )],
        start_canary_after_creation=False)
    
    import * as pulumi from "@pulumi/pulumi";
    import * as aws_native from "@pulumi/aws-native";
    
    const syntheticsCanary = new aws_native.synthetics.Canary("syntheticsCanary", {
        name: "samplecanary",
        executionRoleArn: "arn:aws:iam::123456789012:role/my-lambda-execution-role-to-run-canary",
        code: {
            handler: "pageLoadBlueprint.handler",
            script: `var synthetics = require('Synthetics');
    const log = require('SyntheticsLogger');
    const pageLoadBlueprint = async function () {
    // INSERT URL here
    const URL = "https://amazon.com";
    
    let page = await synthetics.getPage();
    const response = await page.goto(URL, {waitUntil: 'domcontentloaded', timeout: 30000});
    //Wait for page to render.
    //Increase or decrease wait time based on endpoint being monitored.
    await page.waitFor(15000);
    await synthetics.takeScreenshot('loaded', 'loaded');
    let pageTitle = await page.title();
    log.info('Page title: ' + pageTitle);
    if (response.status() !== 200) {
         throw "Failed to load page!";
    }
    };
    
    exports.handler = async () => {
    return await pageLoadBlueprint();
    };
    `,
        },
        artifactS3Location: "s3://my-results-bucket",
        runtimeVersion: "syn-nodejs-puppeteer-3.3",
        schedule: {
            expression: "rate(1 minute)",
            durationInSeconds: "3600",
        },
        runConfig: {
            timeoutInSeconds: 60,
        },
        failureRetentionPeriod: 30,
        successRetentionPeriod: 30,
        tags: [{
            key: "key00AtCreate",
            value: "value001AtCreate",
        }],
        startCanaryAfterCreation: false,
    });
    

    Coming soon!

    Create Canary Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Canary(name: string, args: CanaryArgs, opts?: CustomResourceOptions);
    @overload
    def Canary(resource_name: str,
               args: CanaryArgs,
               opts: Optional[ResourceOptions] = None)
    
    @overload
    def Canary(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               runtime_version: Optional[str] = None,
               artifact_s3_location: Optional[str] = None,
               code: Optional[CanaryCodeArgs] = None,
               schedule: Optional[CanaryScheduleArgs] = None,
               execution_role_arn: Optional[str] = None,
               delete_lambda_resources_on_canary_deletion: Optional[bool] = None,
               name: Optional[str] = None,
               run_config: Optional[CanaryRunConfigArgs] = None,
               failure_retention_period: Optional[int] = None,
               artifact_config: Optional[CanaryArtifactConfigArgs] = None,
               start_canary_after_creation: Optional[bool] = None,
               success_retention_period: Optional[int] = None,
               tags: Optional[Sequence[_root_inputs.TagArgs]] = None,
               visual_reference: Optional[CanaryVisualReferenceArgs] = None,
               vpc_config: Optional[CanaryVpcConfigArgs] = None)
    func NewCanary(ctx *Context, name string, args CanaryArgs, opts ...ResourceOption) (*Canary, error)
    public Canary(string name, CanaryArgs args, CustomResourceOptions? opts = null)
    public Canary(String name, CanaryArgs args)
    public Canary(String name, CanaryArgs args, CustomResourceOptions options)
    
    type: aws-native:synthetics:Canary
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args CanaryArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args CanaryArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args CanaryArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args CanaryArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args CanaryArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

    The following reference example uses placeholder values for all input properties.

    Coming soon!
    
    Coming soon!
    
    Coming soon!
    
    Coming soon!
    
    const canaryResource = new aws_native.synthetics.Canary("canaryResource", {
        runtimeVersion: "string",
        artifactS3Location: "string",
        code: {
            handler: "string",
            s3Bucket: "string",
            s3Key: "string",
            s3ObjectVersion: "string",
            script: "string",
            sourceLocationArn: "string",
        },
        schedule: {
            expression: "string",
            durationInSeconds: "string",
        },
        executionRoleArn: "string",
        deleteLambdaResourcesOnCanaryDeletion: false,
        name: "string",
        runConfig: {
            activeTracing: false,
            environmentVariables: {
                string: "string",
            },
            memoryInMb: 0,
            timeoutInSeconds: 0,
        },
        failureRetentionPeriod: 0,
        artifactConfig: {
            s3Encryption: {
                encryptionMode: "string",
                kmsKeyArn: "string",
            },
        },
        startCanaryAfterCreation: false,
        successRetentionPeriod: 0,
        tags: [{
            key: "string",
            value: "string",
        }],
        visualReference: {
            baseCanaryRunId: "string",
            baseScreenshots: [{
                screenshotName: "string",
                ignoreCoordinates: ["string"],
            }],
        },
        vpcConfig: {
            securityGroupIds: ["string"],
            subnetIds: ["string"],
            vpcId: "string",
        },
    });
    
    Coming soon!
    

    Canary Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Canary resource accepts the following input properties:

    ArtifactS3Location string
    Provide the s3 bucket output location for test results
    Code Pulumi.AwsNative.Synthetics.Inputs.CanaryCode
    Provide the canary script source
    ExecutionRoleArn string
    Lambda Execution role used to run your canaries
    RuntimeVersion string
    Runtime version of Synthetics Library
    Schedule Pulumi.AwsNative.Synthetics.Inputs.CanarySchedule
    Frequency to run your canaries
    ArtifactConfig Pulumi.AwsNative.Synthetics.Inputs.CanaryArtifactConfig
    Provide artifact configuration
    DeleteLambdaResourcesOnCanaryDeletion bool
    Deletes associated lambda resources created by Synthetics if set to True. Default is False
    FailureRetentionPeriod int
    Retention period of failed canary runs represented in number of days
    Name string
    Name of the canary.
    RunConfig Pulumi.AwsNative.Synthetics.Inputs.CanaryRunConfig
    Provide canary run configuration
    StartCanaryAfterCreation bool
    Runs canary if set to True. Default is False
    SuccessRetentionPeriod int
    Retention period of successful canary runs represented in number of days
    Tags List<Pulumi.AwsNative.Inputs.Tag>
    VisualReference Pulumi.AwsNative.Synthetics.Inputs.CanaryVisualReference
    Visual reference configuration for visual testing
    VpcConfig Pulumi.AwsNative.Synthetics.Inputs.CanaryVpcConfig
    Provide VPC Configuration if enabled.
    ArtifactS3Location string
    Provide the s3 bucket output location for test results
    Code CanaryCodeArgs
    Provide the canary script source
    ExecutionRoleArn string
    Lambda Execution role used to run your canaries
    RuntimeVersion string
    Runtime version of Synthetics Library
    Schedule CanaryScheduleArgs
    Frequency to run your canaries
    ArtifactConfig CanaryArtifactConfigArgs
    Provide artifact configuration
    DeleteLambdaResourcesOnCanaryDeletion bool
    Deletes associated lambda resources created by Synthetics if set to True. Default is False
    FailureRetentionPeriod int
    Retention period of failed canary runs represented in number of days
    Name string
    Name of the canary.
    RunConfig CanaryRunConfigArgs
    Provide canary run configuration
    StartCanaryAfterCreation bool
    Runs canary if set to True. Default is False
    SuccessRetentionPeriod int
    Retention period of successful canary runs represented in number of days
    Tags TagArgs
    VisualReference CanaryVisualReferenceArgs
    Visual reference configuration for visual testing
    VpcConfig CanaryVpcConfigArgs
    Provide VPC Configuration if enabled.
    artifactS3Location String
    Provide the s3 bucket output location for test results
    code CanaryCode
    Provide the canary script source
    executionRoleArn String
    Lambda Execution role used to run your canaries
    runtimeVersion String
    Runtime version of Synthetics Library
    schedule CanarySchedule
    Frequency to run your canaries
    artifactConfig CanaryArtifactConfig
    Provide artifact configuration
    deleteLambdaResourcesOnCanaryDeletion Boolean
    Deletes associated lambda resources created by Synthetics if set to True. Default is False
    failureRetentionPeriod Integer
    Retention period of failed canary runs represented in number of days
    name String
    Name of the canary.
    runConfig CanaryRunConfig
    Provide canary run configuration
    startCanaryAfterCreation Boolean
    Runs canary if set to True. Default is False
    successRetentionPeriod Integer
    Retention period of successful canary runs represented in number of days
    tags List<Tag>
    visualReference CanaryVisualReference
    Visual reference configuration for visual testing
    vpcConfig CanaryVpcConfig
    Provide VPC Configuration if enabled.
    artifactS3Location string
    Provide the s3 bucket output location for test results
    code CanaryCode
    Provide the canary script source
    executionRoleArn string
    Lambda Execution role used to run your canaries
    runtimeVersion string
    Runtime version of Synthetics Library
    schedule CanarySchedule
    Frequency to run your canaries
    artifactConfig CanaryArtifactConfig
    Provide artifact configuration
    deleteLambdaResourcesOnCanaryDeletion boolean
    Deletes associated lambda resources created by Synthetics if set to True. Default is False
    failureRetentionPeriod number
    Retention period of failed canary runs represented in number of days
    name string
    Name of the canary.
    runConfig CanaryRunConfig
    Provide canary run configuration
    startCanaryAfterCreation boolean
    Runs canary if set to True. Default is False
    successRetentionPeriod number
    Retention period of successful canary runs represented in number of days
    tags Tag[]
    visualReference CanaryVisualReference
    Visual reference configuration for visual testing
    vpcConfig CanaryVpcConfig
    Provide VPC Configuration if enabled.
    artifact_s3_location str
    Provide the s3 bucket output location for test results
    code CanaryCodeArgs
    Provide the canary script source
    execution_role_arn str
    Lambda Execution role used to run your canaries
    runtime_version str
    Runtime version of Synthetics Library
    schedule CanaryScheduleArgs
    Frequency to run your canaries
    artifact_config CanaryArtifactConfigArgs
    Provide artifact configuration
    delete_lambda_resources_on_canary_deletion bool
    Deletes associated lambda resources created by Synthetics if set to True. Default is False
    failure_retention_period int
    Retention period of failed canary runs represented in number of days
    name str
    Name of the canary.
    run_config CanaryRunConfigArgs
    Provide canary run configuration
    start_canary_after_creation bool
    Runs canary if set to True. Default is False
    success_retention_period int
    Retention period of successful canary runs represented in number of days
    tags Sequence[TagArgs]
    visual_reference CanaryVisualReferenceArgs
    Visual reference configuration for visual testing
    vpc_config CanaryVpcConfigArgs
    Provide VPC Configuration if enabled.
    artifactS3Location String
    Provide the s3 bucket output location for test results
    code Property Map
    Provide the canary script source
    executionRoleArn String
    Lambda Execution role used to run your canaries
    runtimeVersion String
    Runtime version of Synthetics Library
    schedule Property Map
    Frequency to run your canaries
    artifactConfig Property Map
    Provide artifact configuration
    deleteLambdaResourcesOnCanaryDeletion Boolean
    Deletes associated lambda resources created by Synthetics if set to True. Default is False
    failureRetentionPeriod Number
    Retention period of failed canary runs represented in number of days
    name String
    Name of the canary.
    runConfig Property Map
    Provide canary run configuration
    startCanaryAfterCreation Boolean
    Runs canary if set to True. Default is False
    successRetentionPeriod Number
    Retention period of successful canary runs represented in number of days
    tags List<Property Map>
    visualReference Property Map
    Visual reference configuration for visual testing
    vpcConfig Property Map
    Provide VPC Configuration if enabled.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Canary resource produces the following output properties:

    AwsId string
    Id of the canary
    Id string
    The provider-assigned unique ID for this managed resource.
    State string
    State of the canary
    AwsId string
    Id of the canary
    Id string
    The provider-assigned unique ID for this managed resource.
    State string
    State of the canary
    awsId String
    Id of the canary
    id String
    The provider-assigned unique ID for this managed resource.
    state String
    State of the canary
    awsId string
    Id of the canary
    id string
    The provider-assigned unique ID for this managed resource.
    state string
    State of the canary
    aws_id str
    Id of the canary
    id str
    The provider-assigned unique ID for this managed resource.
    state str
    State of the canary
    awsId String
    Id of the canary
    id String
    The provider-assigned unique ID for this managed resource.
    state String
    State of the canary

    Supporting Types

    CanaryArtifactConfig, CanaryArtifactConfigArgs

    S3Encryption Pulumi.AwsNative.Synthetics.Inputs.CanaryS3Encryption
    Encryption configuration for uploading artifacts to S3
    S3Encryption CanaryS3Encryption
    Encryption configuration for uploading artifacts to S3
    s3Encryption CanaryS3Encryption
    Encryption configuration for uploading artifacts to S3
    s3Encryption CanaryS3Encryption
    Encryption configuration for uploading artifacts to S3
    s3_encryption CanaryS3Encryption
    Encryption configuration for uploading artifacts to S3
    s3Encryption Property Map
    Encryption configuration for uploading artifacts to S3

    CanaryBaseScreenshot, CanaryBaseScreenshotArgs

    ScreenshotName string
    Name of the screenshot to be used as base reference for visual testing
    IgnoreCoordinates List<string>
    List of coordinates of rectangles to be ignored during visual testing
    ScreenshotName string
    Name of the screenshot to be used as base reference for visual testing
    IgnoreCoordinates []string
    List of coordinates of rectangles to be ignored during visual testing
    screenshotName String
    Name of the screenshot to be used as base reference for visual testing
    ignoreCoordinates List<String>
    List of coordinates of rectangles to be ignored during visual testing
    screenshotName string
    Name of the screenshot to be used as base reference for visual testing
    ignoreCoordinates string[]
    List of coordinates of rectangles to be ignored during visual testing
    screenshot_name str
    Name of the screenshot to be used as base reference for visual testing
    ignore_coordinates Sequence[str]
    List of coordinates of rectangles to be ignored during visual testing
    screenshotName String
    Name of the screenshot to be used as base reference for visual testing
    ignoreCoordinates List<String>
    List of coordinates of rectangles to be ignored during visual testing

    CanaryCode, CanaryCodeArgs

    Handler string
    S3Bucket string
    S3Key string
    S3ObjectVersion string
    Script string
    SourceLocationArn string
    Handler string
    S3Bucket string
    S3Key string
    S3ObjectVersion string
    Script string
    SourceLocationArn string
    handler String
    s3Bucket String
    s3Key String
    s3ObjectVersion String
    script String
    sourceLocationArn String
    handler string
    s3Bucket string
    s3Key string
    s3ObjectVersion string
    script string
    sourceLocationArn string
    handler String
    s3Bucket String
    s3Key String
    s3ObjectVersion String
    script String
    sourceLocationArn String

    CanaryRunConfig, CanaryRunConfigArgs

    ActiveTracing bool
    Enable active tracing if set to true
    EnvironmentVariables Dictionary<string, string>
    Environment variable key-value pairs.
    MemoryInMb int
    Provide maximum memory available for canary in MB
    TimeoutInSeconds int
    Provide maximum canary timeout per run in seconds
    ActiveTracing bool
    Enable active tracing if set to true
    EnvironmentVariables map[string]string
    Environment variable key-value pairs.
    MemoryInMb int
    Provide maximum memory available for canary in MB
    TimeoutInSeconds int
    Provide maximum canary timeout per run in seconds
    activeTracing Boolean
    Enable active tracing if set to true
    environmentVariables Map<String,String>
    Environment variable key-value pairs.
    memoryInMb Integer
    Provide maximum memory available for canary in MB
    timeoutInSeconds Integer
    Provide maximum canary timeout per run in seconds
    activeTracing boolean
    Enable active tracing if set to true
    environmentVariables {[key: string]: string}
    Environment variable key-value pairs.
    memoryInMb number
    Provide maximum memory available for canary in MB
    timeoutInSeconds number
    Provide maximum canary timeout per run in seconds
    active_tracing bool
    Enable active tracing if set to true
    environment_variables Mapping[str, str]
    Environment variable key-value pairs.
    memory_in_mb int
    Provide maximum memory available for canary in MB
    timeout_in_seconds int
    Provide maximum canary timeout per run in seconds
    activeTracing Boolean
    Enable active tracing if set to true
    environmentVariables Map<String>
    Environment variable key-value pairs.
    memoryInMb Number
    Provide maximum memory available for canary in MB
    timeoutInSeconds Number
    Provide maximum canary timeout per run in seconds

    CanaryS3Encryption, CanaryS3EncryptionArgs

    EncryptionMode string
    Encryption mode for encrypting artifacts when uploading to S3. Valid values: SSE_S3 and SSE_KMS.
    KmsKeyArn string
    KMS key Arn for encrypting artifacts when uploading to S3. You must specify KMS key Arn for SSE_KMS encryption mode only.
    EncryptionMode string
    Encryption mode for encrypting artifacts when uploading to S3. Valid values: SSE_S3 and SSE_KMS.
    KmsKeyArn string
    KMS key Arn for encrypting artifacts when uploading to S3. You must specify KMS key Arn for SSE_KMS encryption mode only.
    encryptionMode String
    Encryption mode for encrypting artifacts when uploading to S3. Valid values: SSE_S3 and SSE_KMS.
    kmsKeyArn String
    KMS key Arn for encrypting artifacts when uploading to S3. You must specify KMS key Arn for SSE_KMS encryption mode only.
    encryptionMode string
    Encryption mode for encrypting artifacts when uploading to S3. Valid values: SSE_S3 and SSE_KMS.
    kmsKeyArn string
    KMS key Arn for encrypting artifacts when uploading to S3. You must specify KMS key Arn for SSE_KMS encryption mode only.
    encryption_mode str
    Encryption mode for encrypting artifacts when uploading to S3. Valid values: SSE_S3 and SSE_KMS.
    kms_key_arn str
    KMS key Arn for encrypting artifacts when uploading to S3. You must specify KMS key Arn for SSE_KMS encryption mode only.
    encryptionMode String
    Encryption mode for encrypting artifacts when uploading to S3. Valid values: SSE_S3 and SSE_KMS.
    kmsKeyArn String
    KMS key Arn for encrypting artifacts when uploading to S3. You must specify KMS key Arn for SSE_KMS encryption mode only.

    CanarySchedule, CanaryScheduleArgs

    CanaryVisualReference, CanaryVisualReferenceArgs

    BaseCanaryRunId string
    Canary run id to be used as base reference for visual testing
    BaseScreenshots List<Pulumi.AwsNative.Synthetics.Inputs.CanaryBaseScreenshot>
    List of screenshots used as base reference for visual testing
    BaseCanaryRunId string
    Canary run id to be used as base reference for visual testing
    BaseScreenshots []CanaryBaseScreenshot
    List of screenshots used as base reference for visual testing
    baseCanaryRunId String
    Canary run id to be used as base reference for visual testing
    baseScreenshots List<CanaryBaseScreenshot>
    List of screenshots used as base reference for visual testing
    baseCanaryRunId string
    Canary run id to be used as base reference for visual testing
    baseScreenshots CanaryBaseScreenshot[]
    List of screenshots used as base reference for visual testing
    base_canary_run_id str
    Canary run id to be used as base reference for visual testing
    base_screenshots Sequence[CanaryBaseScreenshot]
    List of screenshots used as base reference for visual testing
    baseCanaryRunId String
    Canary run id to be used as base reference for visual testing
    baseScreenshots List<Property Map>
    List of screenshots used as base reference for visual testing

    CanaryVpcConfig, CanaryVpcConfigArgs

    SecurityGroupIds List<string>
    SubnetIds List<string>
    VpcId string
    SecurityGroupIds []string
    SubnetIds []string
    VpcId string
    securityGroupIds List<String>
    subnetIds List<String>
    vpcId String
    securityGroupIds string[]
    subnetIds string[]
    vpcId string
    security_group_ids Sequence[str]
    subnet_ids Sequence[str]
    vpc_id str
    securityGroupIds List<String>
    subnetIds List<String>
    vpcId String

    Tag, TagArgs

    Key string
    The key name of the tag
    Value string
    The value of the tag
    Key string
    The key name of the tag
    Value string
    The value of the tag
    key String
    The key name of the tag
    value String
    The value of the tag
    key string
    The key name of the tag
    value string
    The value of the tag
    key str
    The key name of the tag
    value str
    The value of the tag
    key String
    The key name of the tag
    value String
    The value of the tag

    Package Details

    Repository
    AWS Native pulumi/pulumi-aws-native
    License
    Apache-2.0
    aws-native logo

    AWS Native is in preview. AWS Classic is fully supported.

    AWS Native v0.102.0 published on Tuesday, Apr 16, 2024 by Pulumi