DeploymentConfig

class DeploymentConfig : KotlinCustomResource

Provides a CodeDeploy deployment config for an application

Example Usage

Server Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.codedeploy.DeploymentConfig;
import com.pulumi.aws.codedeploy.DeploymentConfigArgs;
import com.pulumi.aws.codedeploy.inputs.DeploymentConfigMinimumHealthyHostsArgs;
import com.pulumi.aws.codedeploy.DeploymentGroup;
import com.pulumi.aws.codedeploy.DeploymentGroupArgs;
import com.pulumi.aws.codedeploy.inputs.DeploymentGroupEc2TagFilterArgs;
import com.pulumi.aws.codedeploy.inputs.DeploymentGroupTriggerConfigurationArgs;
import com.pulumi.aws.codedeploy.inputs.DeploymentGroupAutoRollbackConfigurationArgs;
import com.pulumi.aws.codedeploy.inputs.DeploymentGroupAlarmConfigurationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var fooDeploymentConfig = new DeploymentConfig("fooDeploymentConfig", DeploymentConfigArgs.builder()
.deploymentConfigName("test-deployment-config")
.minimumHealthyHosts(DeploymentConfigMinimumHealthyHostsArgs.builder()
.type("HOST_COUNT")
.value(2)
.build())
.build());
var fooDeploymentGroup = new DeploymentGroup("fooDeploymentGroup", DeploymentGroupArgs.builder()
.appName(aws_codedeploy_app.foo_app().name())
.deploymentGroupName("bar")
.serviceRoleArn(aws_iam_role.foo_role().arn())
.deploymentConfigName(fooDeploymentConfig.id())
.ec2TagFilters(DeploymentGroupEc2TagFilterArgs.builder()
.key("filterkey")
.type("KEY_AND_VALUE")
.value("filtervalue")
.build())
.triggerConfigurations(DeploymentGroupTriggerConfigurationArgs.builder()
.triggerEvents("DeploymentFailure")
.triggerName("foo-trigger")
.triggerTargetArn("foo-topic-arn")
.build())
.autoRollbackConfiguration(DeploymentGroupAutoRollbackConfigurationArgs.builder()
.enabled(true)
.events("DEPLOYMENT_FAILURE")
.build())
.alarmConfiguration(DeploymentGroupAlarmConfigurationArgs.builder()
.alarms("my-alarm-name")
.enabled(true)
.build())
.build());
}
}

Lambda Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.codedeploy.DeploymentConfig;
import com.pulumi.aws.codedeploy.DeploymentConfigArgs;
import com.pulumi.aws.codedeploy.inputs.DeploymentConfigTrafficRoutingConfigArgs;
import com.pulumi.aws.codedeploy.inputs.DeploymentConfigTrafficRoutingConfigTimeBasedLinearArgs;
import com.pulumi.aws.codedeploy.DeploymentGroup;
import com.pulumi.aws.codedeploy.DeploymentGroupArgs;
import com.pulumi.aws.codedeploy.inputs.DeploymentGroupAutoRollbackConfigurationArgs;
import com.pulumi.aws.codedeploy.inputs.DeploymentGroupAlarmConfigurationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var fooDeploymentConfig = new DeploymentConfig("fooDeploymentConfig", DeploymentConfigArgs.builder()
.deploymentConfigName("test-deployment-config")
.computePlatform("Lambda")
.trafficRoutingConfig(DeploymentConfigTrafficRoutingConfigArgs.builder()
.type("TimeBasedLinear")
.timeBasedLinear(DeploymentConfigTrafficRoutingConfigTimeBasedLinearArgs.builder()
.interval(10)
.percentage(10)
.build())
.build())
.build());
var fooDeploymentGroup = new DeploymentGroup("fooDeploymentGroup", DeploymentGroupArgs.builder()
.appName(aws_codedeploy_app.foo_app().name())
.deploymentGroupName("bar")
.serviceRoleArn(aws_iam_role.foo_role().arn())
.deploymentConfigName(fooDeploymentConfig.id())
.autoRollbackConfiguration(DeploymentGroupAutoRollbackConfigurationArgs.builder()
.enabled(true)
.events("DEPLOYMENT_STOP_ON_ALARM")
.build())
.alarmConfiguration(DeploymentGroupAlarmConfigurationArgs.builder()
.alarms("my-alarm-name")
.enabled(true)
.build())
.build());
}
}

Import

CodeDeploy Deployment Configurations can be imported using the deployment_config_name, e.g.,

$ pulumi import aws:codedeploy/deploymentConfig:DeploymentConfig example my-deployment-config

Properties

Link copied to clipboard
val computePlatform: Output<String>?

The compute platform can be Server, Lambda, or ECS. Default is Server.

Link copied to clipboard

The AWS Assigned deployment config id

Link copied to clipboard

The name of the deployment config.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard

A minimum_healthy_hosts block. Required for Server compute platform. Minimum Healthy Hosts are documented below.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

A traffic_routing_config block. Traffic Routing Config is documented below.

Link copied to clipboard
val urn: Output<String>