Deployment Config Args
data class DeploymentConfigArgs(val computePlatform: Output<String>? = null, val deploymentConfigName: Output<String>? = null, val minimumHealthyHosts: Output<DeploymentConfigMinimumHealthyHostsArgs>? = null, val trafficRoutingConfig: Output<DeploymentConfigTrafficRoutingConfigArgs>? = null) : ConvertibleToJava<DeploymentConfigArgs>
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());
}
}
Content copied to clipboard
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());
}
}
Content copied to clipboard
Import
CodeDeploy Deployment Configurations can be imported using the deployment_config_name
, e.g.,
$ pulumi import aws:codedeploy/deploymentConfig:DeploymentConfig example my-deployment-config
Content copied to clipboard
Constructors
Link copied to clipboard
constructor(computePlatform: Output<String>? = null, deploymentConfigName: Output<String>? = null, minimumHealthyHosts: Output<DeploymentConfigMinimumHealthyHostsArgs>? = null, trafficRoutingConfig: Output<DeploymentConfigTrafficRoutingConfigArgs>? = null)
Properties
Link copied to clipboard
The compute platform can be Server
, Lambda
, or ECS
. Default is Server
.
Link copied to clipboard
The name of the deployment config.
Link copied to clipboard
A minimum_healthy_hosts block. Required for Server
compute platform. Minimum Healthy Hosts are documented below.
Link copied to clipboard
A traffic_routing_config block. Traffic Routing Config is documented below.