Proxy Default Target Group
    Provides a resource to manage an RDS DB proxy default target group resource. The aws.rds.ProxyDefaultTargetGroup behaves differently from normal resources, in that the provider does not create or destroy this resource, since it implicitly exists as part of an RDS DB Proxy. On the provider resource creation it is automatically imported and on resource destruction, the provider performs no actions in RDS.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.rds.Proxy("example", {
    name: "example",
    debugLogging: false,
    engineFamily: "MYSQL",
    idleClientTimeout: 1800,
    requireTls: true,
    roleArn: exampleAwsIamRole.arn,
    vpcSecurityGroupIds: [exampleAwsSecurityGroup.id],
    vpcSubnetIds: [exampleAwsSubnet.id],
    auths: [{
        authScheme: "SECRETS",
        description: "example",
        iamAuth: "DISABLED",
        secretArn: exampleAwsSecretsmanagerSecret.arn,
    }],
    tags: {
        Name: "example",
        Key: "value",
    },
});
const exampleProxyDefaultTargetGroup = new aws.rds.ProxyDefaultTargetGroup("example", {
    dbProxyName: example.name,
    connectionPoolConfig: {
        connectionBorrowTimeout: 120,
        initQuery: "SET x=1, y=2",
        maxConnectionsPercent: 100,
        maxIdleConnectionsPercent: 50,
        sessionPinningFilters: ["EXCLUDE_VARIABLE_SETS"],
    },
});Content copied to clipboard
import pulumi
import pulumi_aws as aws
example = aws.rds.Proxy("example",
    name="example",
    debug_logging=False,
    engine_family="MYSQL",
    idle_client_timeout=1800,
    require_tls=True,
    role_arn=example_aws_iam_role["arn"],
    vpc_security_group_ids=[example_aws_security_group["id"]],
    vpc_subnet_ids=[example_aws_subnet["id"]],
    auths=[aws.rds.ProxyAuthArgs(
        auth_scheme="SECRETS",
        description="example",
        iam_auth="DISABLED",
        secret_arn=example_aws_secretsmanager_secret["arn"],
    )],
    tags={
        "Name": "example",
        "Key": "value",
    })
example_proxy_default_target_group = aws.rds.ProxyDefaultTargetGroup("example",
    db_proxy_name=example.name,
    connection_pool_config=aws.rds.ProxyDefaultTargetGroupConnectionPoolConfigArgs(
        connection_borrow_timeout=120,
        init_query="SET x=1, y=2",
        max_connections_percent=100,
        max_idle_connections_percent=50,
        session_pinning_filters=["EXCLUDE_VARIABLE_SETS"],
    ))Content copied to clipboard
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
    var example = new Aws.Rds.Proxy("example", new()
    {
        Name = "example",
        DebugLogging = false,
        EngineFamily = "MYSQL",
        IdleClientTimeout = 1800,
        RequireTls = true,
        RoleArn = exampleAwsIamRole.Arn,
        VpcSecurityGroupIds = new[]
        {
            exampleAwsSecurityGroup.Id,
        },
        VpcSubnetIds = new[]
        {
            exampleAwsSubnet.Id,
        },
        Auths = new[]
        {
            new Aws.Rds.Inputs.ProxyAuthArgs
            {
                AuthScheme = "SECRETS",
                Description = "example",
                IamAuth = "DISABLED",
                SecretArn = exampleAwsSecretsmanagerSecret.Arn,
            },
        },
        Tags =
        {
            { "Name", "example" },
            { "Key", "value" },
        },
    });
    var exampleProxyDefaultTargetGroup = new Aws.Rds.ProxyDefaultTargetGroup("example", new()
    {
        DbProxyName = example.Name,
        ConnectionPoolConfig = new Aws.Rds.Inputs.ProxyDefaultTargetGroupConnectionPoolConfigArgs
        {
            ConnectionBorrowTimeout = 120,
            InitQuery = "SET x=1, y=2",
            MaxConnectionsPercent = 100,
            MaxIdleConnectionsPercent = 50,
            SessionPinningFilters = new[]
            {
                "EXCLUDE_VARIABLE_SETS",
            },
        },
    });
});Content copied to clipboard
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/rds"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := rds.NewProxy(ctx, "example", &rds.ProxyArgs{
			Name:              pulumi.String("example"),
			DebugLogging:      pulumi.Bool(false),
			EngineFamily:      pulumi.String("MYSQL"),
			IdleClientTimeout: pulumi.Int(1800),
			RequireTls:        pulumi.Bool(true),
			RoleArn:           pulumi.Any(exampleAwsIamRole.Arn),
			VpcSecurityGroupIds: pulumi.StringArray{
				exampleAwsSecurityGroup.Id,
			},
			VpcSubnetIds: pulumi.StringArray{
				exampleAwsSubnet.Id,
			},
			Auths: rds.ProxyAuthArray{
				&rds.ProxyAuthArgs{
					AuthScheme:  pulumi.String("SECRETS"),
					Description: pulumi.String("example"),
					IamAuth:     pulumi.String("DISABLED"),
					SecretArn:   pulumi.Any(exampleAwsSecretsmanagerSecret.Arn),
				},
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example"),
				"Key":  pulumi.String("value"),
			},
		})
		if err != nil {
			return err
		}
		_, err = rds.NewProxyDefaultTargetGroup(ctx, "example", &rds.ProxyDefaultTargetGroupArgs{
			DbProxyName: example.Name,
			ConnectionPoolConfig: &rds.ProxyDefaultTargetGroupConnectionPoolConfigArgs{
				ConnectionBorrowTimeout:   pulumi.Int(120),
				InitQuery:                 pulumi.String("SET x=1, y=2"),
				MaxConnectionsPercent:     pulumi.Int(100),
				MaxIdleConnectionsPercent: pulumi.Int(50),
				SessionPinningFilters: pulumi.StringArray{
					pulumi.String("EXCLUDE_VARIABLE_SETS"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.rds.Proxy;
import com.pulumi.aws.rds.ProxyArgs;
import com.pulumi.aws.rds.inputs.ProxyAuthArgs;
import com.pulumi.aws.rds.ProxyDefaultTargetGroup;
import com.pulumi.aws.rds.ProxyDefaultTargetGroupArgs;
import com.pulumi.aws.rds.inputs.ProxyDefaultTargetGroupConnectionPoolConfigArgs;
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 example = new Proxy("example", ProxyArgs.builder()
            .name("example")
            .debugLogging(false)
            .engineFamily("MYSQL")
            .idleClientTimeout(1800)
            .requireTls(true)
            .roleArn(exampleAwsIamRole.arn())
            .vpcSecurityGroupIds(exampleAwsSecurityGroup.id())
            .vpcSubnetIds(exampleAwsSubnet.id())
            .auths(ProxyAuthArgs.builder()
                .authScheme("SECRETS")
                .description("example")
                .iamAuth("DISABLED")
                .secretArn(exampleAwsSecretsmanagerSecret.arn())
                .build())
            .tags(Map.ofEntries(
                Map.entry("Name", "example"),
                Map.entry("Key", "value")
            ))
            .build());
        var exampleProxyDefaultTargetGroup = new ProxyDefaultTargetGroup("exampleProxyDefaultTargetGroup", ProxyDefaultTargetGroupArgs.builder()
            .dbProxyName(example.name())
            .connectionPoolConfig(ProxyDefaultTargetGroupConnectionPoolConfigArgs.builder()
                .connectionBorrowTimeout(120)
                .initQuery("SET x=1, y=2")
                .maxConnectionsPercent(100)
                .maxIdleConnectionsPercent(50)
                .sessionPinningFilters("EXCLUDE_VARIABLE_SETS")
                .build())
            .build());
    }
}Content copied to clipboard
resources:
  example:
    type: aws:rds:Proxy
    properties:
      name: example
      debugLogging: false
      engineFamily: MYSQL
      idleClientTimeout: 1800
      requireTls: true
      roleArn: ${exampleAwsIamRole.arn}
      vpcSecurityGroupIds:
        - ${exampleAwsSecurityGroup.id}
      vpcSubnetIds:
        - ${exampleAwsSubnet.id}
      auths:
        - authScheme: SECRETS
          description: example
          iamAuth: DISABLED
          secretArn: ${exampleAwsSecretsmanagerSecret.arn}
      tags:
        Name: example
        Key: value
  exampleProxyDefaultTargetGroup:
    type: aws:rds:ProxyDefaultTargetGroup
    name: example
    properties:
      dbProxyName: ${example.name}
      connectionPoolConfig:
        connectionBorrowTimeout: 120
        initQuery: SET x=1, y=2
        maxConnectionsPercent: 100
        maxIdleConnectionsPercent: 50
        sessionPinningFilters:
          - EXCLUDE_VARIABLE_SETSContent copied to clipboard
Import
Using pulumi import, import DB proxy default target groups using the db_proxy_name. For example:
$ pulumi import aws:rds/proxyDefaultTargetGroup:ProxyDefaultTargetGroup example exampleContent copied to clipboard