Interface CfnDeploymentProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
CfnDeploymentProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:29:57.118Z") @Stability(Stable) public interface CfnDeploymentProps extends software.amazon.jsii.JsiiSerializable
Properties for defining a CfnDeployment.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.greengrassv2.*;
 Object rateIncreaseCriteria;
 CfnDeploymentProps cfnDeploymentProps = CfnDeploymentProps.builder()
         .targetArn("targetArn")
         // the properties below are optional
         .components(Map.of(
                 "componentsKey", ComponentDeploymentSpecificationProperty.builder()
                         .componentVersion("componentVersion")
                         .configurationUpdate(ComponentConfigurationUpdateProperty.builder()
                                 .merge("merge")
                                 .reset(List.of("reset"))
                                 .build())
                         .runWith(ComponentRunWithProperty.builder()
                                 .posixUser("posixUser")
                                 .systemResourceLimits(SystemResourceLimitsProperty.builder()
                                         .cpus(123)
                                         .memory(123)
                                         .build())
                                 .windowsUser("windowsUser")
                                 .build())
                         .build()))
         .deploymentName("deploymentName")
         .deploymentPolicies(DeploymentPoliciesProperty.builder()
                 .componentUpdatePolicy(DeploymentComponentUpdatePolicyProperty.builder()
                         .action("action")
                         .timeoutInSeconds(123)
                         .build())
                 .configurationValidationPolicy(DeploymentConfigurationValidationPolicyProperty.builder()
                         .timeoutInSeconds(123)
                         .build())
                 .failureHandlingPolicy("failureHandlingPolicy")
                 .build())
         .iotJobConfiguration(DeploymentIoTJobConfigurationProperty.builder()
                 .abortConfig(IoTJobAbortConfigProperty.builder()
                         .criteriaList(List.of(IoTJobAbortCriteriaProperty.builder()
                                 .action("action")
                                 .failureType("failureType")
                                 .minNumberOfExecutedThings(123)
                                 .thresholdPercentage(123)
                                 .build()))
                         .build())
                 .jobExecutionsRolloutConfig(IoTJobExecutionsRolloutConfigProperty.builder()
                         .exponentialRate(IoTJobExponentialRolloutRateProperty.builder()
                                 .baseRatePerMinute(123)
                                 .incrementFactor(123)
                                 .rateIncreaseCriteria(rateIncreaseCriteria)
                                 .build())
                         .maximumPerMinute(123)
                         .build())
                 .timeoutConfig(IoTJobTimeoutConfigProperty.builder()
                         .inProgressTimeoutInMinutes(123)
                         .build())
                 .build())
         .parentTargetArn("parentTargetArn")
         .tags(Map.of(
                 "tagsKey", "tags"))
         .build();
 
  • Method Details

    • getTargetArn

      @Stability(Stable) @NotNull String getTargetArn()
      The ARN of the target AWS IoT thing or thing group.
    • getComponents

      @Stability(Stable) @Nullable default Object getComponents()
      The components to deploy.

      This is a dictionary, where each key is the name of a component, and each key's value is the version and configuration to deploy for that component.

    • getDeploymentName

      @Stability(Stable) @Nullable default String getDeploymentName()
      The name of the deployment.
    • getDeploymentPolicies

      @Stability(Stable) @Nullable default Object getDeploymentPolicies()
      The deployment policies for the deployment.

      These policies define how the deployment updates components and handles failure.

    • getIotJobConfiguration

      @Stability(Stable) @Nullable default Object getIotJobConfiguration()
      The job configuration for the deployment configuration.

      The job configuration specifies the rollout, timeout, and stop configurations for the deployment configuration.

    • getParentTargetArn

      @Stability(Stable) @Nullable default String getParentTargetArn()
      The parent deployment's ARN for a subdeployment.
    • getTags

      @Stability(Stable) @Nullable default Map<String,String> getTags()
      Application-specific metadata to attach to the deployment.

      You can use tags in IAM policies to control access to AWS IoT Greengrass resources. You can also use tags to categorize your resources. For more information, see Tag your AWS IoT Greengrass Version 2 resources in the AWS IoT Greengrass V2 Developer Guide .

      This Json property type is processed as a map of key-value pairs. It uses the following format, which is different from most Tags implementations in AWS CloudFormation templates.

       "Tags": { "KeyName0": "value", "KeyName1": "value", "KeyName2": "value"
       }
       
    • builder

      @Stability(Stable) static CfnDeploymentProps.Builder builder()
      Returns:
      a CfnDeploymentProps.Builder of CfnDeploymentProps