CloudWatch Synthetics

2 resource kinds. Generated from the operator's CRD schemas.

API Group: aws.konfig.io/v1alpha1

SyntheticsCanary # CLOUD CONTROL · AWS::Synthetics::Canary

SyntheticsCanary manages AWS::Synthetics::Canary through the AWS Cloud Control API.

kubectl get syntheticscanaries · example on GitHub

Example

# SyntheticsCanary — CloudWatch Synthetics
# Full-options example generated from the CRD schema. Optional fields are
# included with sample values; delete what you don't need. Field reference:
# https://konfig-konector.io/docs/synthetics.html#syntheticscanary
apiVersion: aws.konfig.io/v1alpha1
kind: SyntheticsCanary
metadata:
  name: example-syntheticscanary
  namespace: default
spec:
  artifactConfig:
    s3Encryption:
      encryptionMode: example
      kmsKeyArn: arn:aws:iam::123456789012:role/example-role
  artifactS3Location: example
  browserConfigs:
  - browserType: CHROME
  code:
    blueprintTypes:
    - example
    dependencies:
    - reference: example
      type: LambdaLayer
    handler: example
    s3Bucket: example
    s3Key: example
    s3ObjectVersion: '1.0'
    script: example
    sourceLocationArn: arn:aws:iam::123456789012:role/example-role
  deleteLambdaResourcesOnCanaryDeletion: false
  dryRunAndUpdate: false
  executionRoleArn: arn:aws:iam::123456789012:role/example-role
  failureRetentionPeriod: 7
  kmsKeyArn: arn:aws:iam::123456789012:role/example-role
  name: example-syntheticscanary
  providerRef:
    name: example-syntheticscanary
    region: us-east-1
  provisionedResourceCleanup: AUTOMATIC
  replicas:
  - canaryState: example
    kmsKeyArn: arn:aws:iam::123456789012:role/example-role
    lastModified: 1
    location: example
    replicationStatus:
      state: example
    resourcesToReplicateTags:
    - example
    tags:
    - key: example
      value: example
    vpcConfig:
      ipv6AllowedForDualStack: false
      securityGroupIds:
      - example
      subnetIds:
      - example
  resourcesToReplicateTags:
  - example
  runConfig:
    activeTracing: false
    environmentVariables:
      key: value
    ephemeralStorage: 1
    memoryInMB: 1
    timeoutInSeconds: 300
  runtimeVersion: '1.0'
  schedule:
    durationInSeconds: example
    expression: example
    retryConfig:
      maxRetries: 1
  startCanaryAfterCreation: false
  successRetentionPeriod: 7
  tags:
  - key: example
    value: example
  visualReference:
    baseCanaryRunId: example-id
    baseScreenshots:
    - ignoreCoordinates:
      - example
      screenshotName: example-syntheticscanary
    browserType: CHROME
  visualReferences:
  - baseCanaryRunId: example-id
    baseScreenshots:
    - ignoreCoordinates:
      - example
      screenshotName: example-syntheticscanary
    browserType: CHROME
  vpcConfig:
    ipv6AllowedForDualStack: false
    securityGroupIds:
    - example
    subnetIds:
    - example

Spec

FieldTypeRequiredDescription
artifactConfigobject—Provide artifact configuration
artifactConfig.s3Encryptionobject—Encryption configuration for uploading artifacts to S3
artifactConfig.s3Encryption.encryptionModestring—Encryption mode for encrypting artifacts when uploading to S3.
artifactConfig.s3Encryption.kmsKeyArnstring—KMS key Arn for encrypting artifacts when uploading to S3.
artifactS3LocationstringyesProvide the s3 bucket output location for test results
browserConfigsarray<object>—List of browser configurations for the canary
browserConfigs[].browserTypeenumyesAllowed: CHROME, FIREFOX
codeobjectyesProvide the canary script source
code.blueprintTypesarray<string>—
code.dependenciesarray<object>—List of Lambda layers to attach to the canary
code.dependencies[].referencestringyesARN of the Lambda layer
code.dependencies[].typeenum—Type of dependency Allowed: LambdaLayer
code.handlerstring—
code.s3Bucketstring—
code.s3Keystring—
code.s3ObjectVersionstring—
code.scriptstring—
code.sourceLocationArnstring—
deleteLambdaResourcesOnCanaryDeletionboolean—Deletes associated lambda resources created by Synthetics if set to True.
dryRunAndUpdateboolean—Setting to control if UpdateCanary will perform a DryRun and validate it is PASSING before performing the Update.
executionRoleArnstringyesLambda Execution role used to run your canaries
failureRetentionPeriodinteger—Retention period of failed canary runs represented in number of days
kmsKeyArnstring—KMS key ARN for encrypting the canary's Lambda function environment variables at rest.
namestringyesName of the canary.
providerRefobject—ProviderRef selects the AWSProvider (account/region) this resource is reconciled against.
providerRef.namestringyesName of a cluster-scoped AWSProvider.
providerRef.regionstring—Region overrides the provider's region for this resource only.
provisionedResourceCleanupenum—Setting to control if provisioned resources created by Synthetics are deleted alongside the canary. Allowed: AUTOMATIC, OFF
replicasarray<object>—List of replica locations for multi-location canary execution
replicas[].canaryStatestring—State of the replica canary (CREATING, READY, RUNNING, etc.)
replicas[].kmsKeyArnstring—ARN of the KMS key used to encrypt the replica canary's Lambda function environment variables
replicas[].lastModifiednumber—Last modified timestamp of the replica
replicas[].locationstringyesAWS region for the replica (e.g., us-east-1)
replicas[].replicationStatusobject—Replication status for this replica
replicas[].replicationStatus.statestring—Replication state: InProgress, InSync, or Inconsistent
replicas[].resourcesToReplicateTagsarray<string>—Resources to replicate tags to for this replica (e.g., lambda-function)
replicas[].tagsarray<object>—Tags to apply to this replica canary and optionally its Lambda function
replicas[].tags[].keystringyes
replicas[].tags[].valuestringyes
replicas[].vpcConfigobject—VPC configuration for this replica location
replicas[].vpcConfig.ipv6AllowedForDualStackboolean—Allow outbound IPv6 traffic on VPC canaries that are connected to dual-stack subnets if set to true
replicas[].vpcConfig.securityGroupIdsarray<string>yes
replicas[].vpcConfig.subnetIdsarray<string>yes
replicas[].vpcConfig.vpcIdstring—
resourcesToReplicateTagsarray<string>—List of resources which canary tags should be replicated to.
runConfigobject—Provide canary run configuration
runConfig.activeTracingboolean—Enable active tracing if set to true
runConfig.environmentVariablesmap<string>—Environment variable key-value pairs.
runConfig.ephemeralStorageinteger—Provide ephemeralStorage available for canary in MB
runConfig.memoryInMBinteger—Provide maximum memory available for canary in MB
runConfig.timeoutInSecondsinteger—Provide maximum canary timeout per run in seconds
runtimeVersionstringyesRuntime version of Synthetics Library
scheduleobjectyesFrequency to run your canaries
schedule.durationInSecondsstring—
schedule.expressionstringyes
schedule.retryConfigobject—Provide canary auto retry configuration
schedule.retryConfig.maxRetriesintegeryesmaximum times the canary will be retried upon the scheduled run failure
startCanaryAfterCreationboolean—Runs canary if set to True.
successRetentionPeriodinteger—Retention period of successful canary runs represented in number of days
tagsarray<object>—
tags[].keystringyes
tags[].valuestringyes
visualReferenceobject—Visual reference configuration for visual testing
visualReference.baseCanaryRunIdstringyesCanary run id to be used as base reference for visual testing
visualReference.baseScreenshotsarray<object>—List of screenshots used as base reference for visual testing
visualReference.baseScreenshots[].ignoreCoordinatesarray<string>—List of coordinates of rectangles to be ignored during visual testing
visualReference.baseScreenshots[].screenshotNamestringyesName of the screenshot to be used as base reference for visual testing
visualReference.browserTypeenum—Allowed: CHROME, FIREFOX
visualReferencesarray<object>—List of visual references for the canary
visualReferences[].baseCanaryRunIdstringyesCanary run id to be used as base reference for visual testing
visualReferences[].baseScreenshotsarray<object>—List of screenshots used as base reference for visual testing
visualReferences[].baseScreenshots[].ignoreCoordinatesarray<string>—List of coordinates of rectangles to be ignored during visual testing
visualReferences[].baseScreenshots[].screenshotNamestringyesName of the screenshot to be used as base reference for visual testing
visualReferences[].browserTypeenum—Allowed: CHROME, FIREFOX
vpcConfigobject—Provide VPC Configuration if enabled.
vpcConfig.ipv6AllowedForDualStackboolean—Allow outbound IPv6 traffic on VPC canaries that are connected to dual-stack subnets if set to true
vpcConfig.securityGroupIdsarray<string>yes
vpcConfig.subnetIdsarray<string>yes
vpcConfig.vpcIdstring—

Status

FieldTypeRequiredDescription
attemptinteger—Attempt counts failed create/delete requests; it salts the Cloud Control idempotency token so a retry is not served the cached failure.
awsProviderobject—AWSProvider confirms the account and region this resource was reconciled against.
awsProvider.accountIdstring—AccountID the resource lives in.
awsProvider.namestring—Name of the AWSProvider used; empty when the operator's own credentials were used.
awsProvider.regionstring—Region the resource lives in (empty for global services).
conditionsarray<object>—Conditions describe the current state of the resource.
conditions[].lastTransitionTimestringyeslastTransitionTime is the last time the condition transitioned from one status to another.
conditions[].messagestringyesmessage is a human readable message indicating details about the transition.
conditions[].observedGenerationinteger—observedGeneration represents the .metadata.generation that the condition was set based upon.
conditions[].reasonstringyesreason contains a programmatic identifier indicating the reason for the condition's last transition.
conditions[].statusenumyesstatus of the condition, one of True, False, Unknown. Allowed: True, False, Unknown
conditions[].typestringyestype of condition in CamelCase or in foo.example.com/CamelCase.
idstring—Id of the canary Read-only: reported by AWS after creation.
identifierstring—Identifier is the Cloud Control primary identifier of the resource.
lastSyncTimestring—
observedGenerationinteger—
operationstring—Operation is the in-flight operation (CREATE, UPDATE, DELETE).
operationStatusstring—OperationStatus is the last reported operation status.
requestTokenstring—RequestToken tracks an in-flight asynchronous operation.
statestring—State of the canary Read-only: reported by AWS after creation.

SyntheticsGroup # CLOUD CONTROL · AWS::Synthetics::Group

SyntheticsGroup manages AWS::Synthetics::Group through the AWS Cloud Control API.

kubectl get syntheticsgroups · example on GitHub

Example

# SyntheticsGroup — CloudWatch Synthetics
# Full-options example generated from the CRD schema. Optional fields are
# included with sample values; delete what you don't need. Field reference:
# https://konfig-konector.io/docs/synthetics.html#syntheticsgroup
apiVersion: aws.konfig.io/v1alpha1
kind: SyntheticsGroup
metadata:
  name: example-syntheticsgroup
  namespace: default
spec:
  name: example-syntheticsgroup
  providerRef:
    name: example-syntheticsgroup
    region: us-east-1
  resourceArns:
  - example
  tags:
  - key: example
    value: example

Spec

FieldTypeRequiredDescription
namestringyesName of the group.
providerRefobject—ProviderRef selects the AWSProvider (account/region) this resource is reconciled against.
providerRef.namestringyesName of a cluster-scoped AWSProvider.
providerRef.regionstring—Region overrides the provider's region for this resource only.
resourceArnsarray<string>—
tagsarray<object>—
tags[].keystringyes
tags[].valuestringyes

Status

FieldTypeRequiredDescription
attemptinteger—Attempt counts failed create/delete requests; it salts the Cloud Control idempotency token so a retry is not served the cached failure.
awsProviderobject—AWSProvider confirms the account and region this resource was reconciled against.
awsProvider.accountIdstring—AccountID the resource lives in.
awsProvider.namestring—Name of the AWSProvider used; empty when the operator's own credentials were used.
awsProvider.regionstring—Region the resource lives in (empty for global services).
conditionsarray<object>—Conditions describe the current state of the resource.
conditions[].lastTransitionTimestringyeslastTransitionTime is the last time the condition transitioned from one status to another.
conditions[].messagestringyesmessage is a human readable message indicating details about the transition.
conditions[].observedGenerationinteger—observedGeneration represents the .metadata.generation that the condition was set based upon.
conditions[].reasonstringyesreason contains a programmatic identifier indicating the reason for the condition's last transition.
conditions[].statusenumyesstatus of the condition, one of True, False, Unknown. Allowed: True, False, Unknown
conditions[].typestringyestype of condition in CamelCase or in foo.example.com/CamelCase.
idstring—Id of the group.
identifierstring—Identifier is the Cloud Control primary identifier of the resource.
lastSyncTimestring—
observedGenerationinteger—
operationstring—Operation is the in-flight operation (CREATE, UPDATE, DELETE).
operationStatusstring—OperationStatus is the last reported operation status.
requestTokenstring—RequestToken tracks an in-flight asynchronous operation.