Package com.pulumi.aws.elb
Class ElbFunctions
- java.lang.Object
-
- com.pulumi.aws.elb.ElbFunctions
-
public final class ElbFunctions extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description ElbFunctions()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static com.pulumi.core.Output<GetHostedZoneIdResult>getHostedZoneId()Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias.static com.pulumi.core.Output<GetHostedZoneIdResult>getHostedZoneId(GetHostedZoneIdArgs args)Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias.static com.pulumi.core.Output<GetHostedZoneIdResult>getHostedZoneId(GetHostedZoneIdArgs args, com.pulumi.deployment.InvokeOptions options)Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias.static com.pulumi.core.Output<GetHostedZoneIdResult>getHostedZoneId(GetHostedZoneIdArgs args, com.pulumi.deployment.InvokeOutputOptions options)Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias.static java.util.concurrent.CompletableFuture<GetHostedZoneIdResult>getHostedZoneIdPlain()Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias.static java.util.concurrent.CompletableFuture<GetHostedZoneIdResult>getHostedZoneIdPlain(GetHostedZoneIdPlainArgs args)Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias.static java.util.concurrent.CompletableFuture<GetHostedZoneIdResult>getHostedZoneIdPlain(GetHostedZoneIdPlainArgs args, com.pulumi.deployment.InvokeOptions options)Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias.static com.pulumi.core.Output<GetLoadBalancerResult>getLoadBalancer(GetLoadBalancerArgs args)Provides information about a "classic" Elastic Load Balancer (ELB).static com.pulumi.core.Output<GetLoadBalancerResult>getLoadBalancer(GetLoadBalancerArgs args, com.pulumi.deployment.InvokeOptions options)Provides information about a "classic" Elastic Load Balancer (ELB).static com.pulumi.core.Output<GetLoadBalancerResult>getLoadBalancer(GetLoadBalancerArgs args, com.pulumi.deployment.InvokeOutputOptions options)Provides information about a "classic" Elastic Load Balancer (ELB).static java.util.concurrent.CompletableFuture<GetLoadBalancerResult>getLoadBalancerPlain(GetLoadBalancerPlainArgs args)Provides information about a "classic" Elastic Load Balancer (ELB).static java.util.concurrent.CompletableFuture<GetLoadBalancerResult>getLoadBalancerPlain(GetLoadBalancerPlainArgs args, com.pulumi.deployment.InvokeOptions options)Provides information about a "classic" Elastic Load Balancer (ELB).static com.pulumi.core.Output<GetServiceAccountResult>getServiceAccount()Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy.static com.pulumi.core.Output<GetServiceAccountResult>getServiceAccount(GetServiceAccountArgs args)Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy.static com.pulumi.core.Output<GetServiceAccountResult>getServiceAccount(GetServiceAccountArgs args, com.pulumi.deployment.InvokeOptions options)Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy.static com.pulumi.core.Output<GetServiceAccountResult>getServiceAccount(GetServiceAccountArgs args, com.pulumi.deployment.InvokeOutputOptions options)Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy.static java.util.concurrent.CompletableFuture<GetServiceAccountResult>getServiceAccountPlain()Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy.static java.util.concurrent.CompletableFuture<GetServiceAccountResult>getServiceAccountPlain(GetServiceAccountPlainArgs args)Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy.static java.util.concurrent.CompletableFuture<GetServiceAccountResult>getServiceAccountPlain(GetServiceAccountPlainArgs args, com.pulumi.deployment.InvokeOptions options)Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy.
-
-
-
Method Detail
-
getHostedZoneId
public static com.pulumi.core.Output<GetHostedZoneIdResult> getHostedZoneId()
Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetHostedZoneIdArgs; import com.pulumi.aws.route53.Record; import com.pulumi.aws.route53.RecordArgs; import com.pulumi.aws.route53.inputs.RecordAliasArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getHostedZoneId(GetHostedZoneIdArgs.builder() .build()); var www = new Record("www", RecordArgs.builder() .aliases(RecordAliasArgs.builder() .name(mainAwsElb.dnsName()) .zoneId(main.id()) .evaluateTargetHealth(true) .build()) .zoneId(primary.zoneId()) .name("example.com") .type("A") .build()); } }
-
getHostedZoneIdPlain
public static java.util.concurrent.CompletableFuture<GetHostedZoneIdResult> getHostedZoneIdPlain()
Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetHostedZoneIdArgs; import com.pulumi.aws.route53.Record; import com.pulumi.aws.route53.RecordArgs; import com.pulumi.aws.route53.inputs.RecordAliasArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getHostedZoneId(GetHostedZoneIdArgs.builder() .build()); var www = new Record("www", RecordArgs.builder() .aliases(RecordAliasArgs.builder() .name(mainAwsElb.dnsName()) .zoneId(main.id()) .evaluateTargetHealth(true) .build()) .zoneId(primary.zoneId()) .name("example.com") .type("A") .build()); } }
-
getHostedZoneId
public static com.pulumi.core.Output<GetHostedZoneIdResult> getHostedZoneId(GetHostedZoneIdArgs args)
Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetHostedZoneIdArgs; import com.pulumi.aws.route53.Record; import com.pulumi.aws.route53.RecordArgs; import com.pulumi.aws.route53.inputs.RecordAliasArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getHostedZoneId(GetHostedZoneIdArgs.builder() .build()); var www = new Record("www", RecordArgs.builder() .aliases(RecordAliasArgs.builder() .name(mainAwsElb.dnsName()) .zoneId(main.id()) .evaluateTargetHealth(true) .build()) .zoneId(primary.zoneId()) .name("example.com") .type("A") .build()); } }
-
getHostedZoneIdPlain
public static java.util.concurrent.CompletableFuture<GetHostedZoneIdResult> getHostedZoneIdPlain(GetHostedZoneIdPlainArgs args)
Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetHostedZoneIdArgs; import com.pulumi.aws.route53.Record; import com.pulumi.aws.route53.RecordArgs; import com.pulumi.aws.route53.inputs.RecordAliasArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getHostedZoneId(GetHostedZoneIdArgs.builder() .build()); var www = new Record("www", RecordArgs.builder() .aliases(RecordAliasArgs.builder() .name(mainAwsElb.dnsName()) .zoneId(main.id()) .evaluateTargetHealth(true) .build()) .zoneId(primary.zoneId()) .name("example.com") .type("A") .build()); } }
-
getHostedZoneId
public static com.pulumi.core.Output<GetHostedZoneIdResult> getHostedZoneId(GetHostedZoneIdArgs args, com.pulumi.deployment.InvokeOptions options)
Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetHostedZoneIdArgs; import com.pulumi.aws.route53.Record; import com.pulumi.aws.route53.RecordArgs; import com.pulumi.aws.route53.inputs.RecordAliasArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getHostedZoneId(GetHostedZoneIdArgs.builder() .build()); var www = new Record("www", RecordArgs.builder() .aliases(RecordAliasArgs.builder() .name(mainAwsElb.dnsName()) .zoneId(main.id()) .evaluateTargetHealth(true) .build()) .zoneId(primary.zoneId()) .name("example.com") .type("A") .build()); } }
-
getHostedZoneId
public static com.pulumi.core.Output<GetHostedZoneIdResult> getHostedZoneId(GetHostedZoneIdArgs args, com.pulumi.deployment.InvokeOutputOptions options)
Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetHostedZoneIdArgs; import com.pulumi.aws.route53.Record; import com.pulumi.aws.route53.RecordArgs; import com.pulumi.aws.route53.inputs.RecordAliasArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getHostedZoneId(GetHostedZoneIdArgs.builder() .build()); var www = new Record("www", RecordArgs.builder() .aliases(RecordAliasArgs.builder() .name(mainAwsElb.dnsName()) .zoneId(main.id()) .evaluateTargetHealth(true) .build()) .zoneId(primary.zoneId()) .name("example.com") .type("A") .build()); } }
-
getHostedZoneIdPlain
public static java.util.concurrent.CompletableFuture<GetHostedZoneIdResult> getHostedZoneIdPlain(GetHostedZoneIdPlainArgs args, com.pulumi.deployment.InvokeOptions options)
Use this data source to get the HostedZoneId of the AWS Elastic Load Balancing HostedZoneId in a given region for the purpose of using in an AWS Route53 Alias. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetHostedZoneIdArgs; import com.pulumi.aws.route53.Record; import com.pulumi.aws.route53.RecordArgs; import com.pulumi.aws.route53.inputs.RecordAliasArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getHostedZoneId(GetHostedZoneIdArgs.builder() .build()); var www = new Record("www", RecordArgs.builder() .aliases(RecordAliasArgs.builder() .name(mainAwsElb.dnsName()) .zoneId(main.id()) .evaluateTargetHealth(true) .build()) .zoneId(primary.zoneId()) .name("example.com") .type("A") .build()); } }
-
getLoadBalancer
public static com.pulumi.core.Output<GetLoadBalancerResult> getLoadBalancer(GetLoadBalancerArgs args)
Provides information about a "classic" Elastic Load Balancer (ELB). See LB Data Source if you are looking for "v2" Application Load Balancer (ALB) or Network Load Balancer (NLB). This data source can prove useful when a module accepts an LB as an input variable and needs to, for example, determine the security groups associated with it, etc. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetLoadBalancerArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var config = ctx.config(); final var lbName = config.get("lbName").orElse(""); final var test = ElbFunctions.getLoadBalancer(GetLoadBalancerArgs.builder() .name(lbName) .build()); } }
-
getLoadBalancerPlain
public static java.util.concurrent.CompletableFuture<GetLoadBalancerResult> getLoadBalancerPlain(GetLoadBalancerPlainArgs args)
Provides information about a "classic" Elastic Load Balancer (ELB). See LB Data Source if you are looking for "v2" Application Load Balancer (ALB) or Network Load Balancer (NLB). This data source can prove useful when a module accepts an LB as an input variable and needs to, for example, determine the security groups associated with it, etc. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetLoadBalancerArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var config = ctx.config(); final var lbName = config.get("lbName").orElse(""); final var test = ElbFunctions.getLoadBalancer(GetLoadBalancerArgs.builder() .name(lbName) .build()); } }
-
getLoadBalancer
public static com.pulumi.core.Output<GetLoadBalancerResult> getLoadBalancer(GetLoadBalancerArgs args, com.pulumi.deployment.InvokeOptions options)
Provides information about a "classic" Elastic Load Balancer (ELB). See LB Data Source if you are looking for "v2" Application Load Balancer (ALB) or Network Load Balancer (NLB). This data source can prove useful when a module accepts an LB as an input variable and needs to, for example, determine the security groups associated with it, etc. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetLoadBalancerArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var config = ctx.config(); final var lbName = config.get("lbName").orElse(""); final var test = ElbFunctions.getLoadBalancer(GetLoadBalancerArgs.builder() .name(lbName) .build()); } }
-
getLoadBalancer
public static com.pulumi.core.Output<GetLoadBalancerResult> getLoadBalancer(GetLoadBalancerArgs args, com.pulumi.deployment.InvokeOutputOptions options)
Provides information about a "classic" Elastic Load Balancer (ELB). See LB Data Source if you are looking for "v2" Application Load Balancer (ALB) or Network Load Balancer (NLB). This data source can prove useful when a module accepts an LB as an input variable and needs to, for example, determine the security groups associated with it, etc. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetLoadBalancerArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var config = ctx.config(); final var lbName = config.get("lbName").orElse(""); final var test = ElbFunctions.getLoadBalancer(GetLoadBalancerArgs.builder() .name(lbName) .build()); } }
-
getLoadBalancerPlain
public static java.util.concurrent.CompletableFuture<GetLoadBalancerResult> getLoadBalancerPlain(GetLoadBalancerPlainArgs args, com.pulumi.deployment.InvokeOptions options)
Provides information about a "classic" Elastic Load Balancer (ELB). See LB Data Source if you are looking for "v2" Application Load Balancer (ALB) or Network Load Balancer (NLB). This data source can prove useful when a module accepts an LB as an input variable and needs to, for example, determine the security groups associated with it, etc. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetLoadBalancerArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var config = ctx.config(); final var lbName = config.get("lbName").orElse(""); final var test = ElbFunctions.getLoadBalancer(GetLoadBalancerArgs.builder() .name(lbName) .build()); } }
-
getServiceAccount
public static com.pulumi.core.Output<GetServiceAccountResult> getServiceAccount()
Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy. > **Note:** For AWS Regions opened since Jakarta (`ap-southeast-3`) in December 2021, AWS [documents that](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) a [service principal name](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-services) should be used instead of an AWS account ID in any relevant IAM policy. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetServiceAccountArgs; import com.pulumi.aws.s3.Bucket; import com.pulumi.aws.s3.BucketArgs; import com.pulumi.aws.s3.BucketAcl; import com.pulumi.aws.s3.BucketAclArgs; import com.pulumi.aws.iam.IamFunctions; import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementPrincipalArgs; import com.pulumi.aws.s3.BucketPolicy; import com.pulumi.aws.s3.BucketPolicyArgs; import com.pulumi.aws.elb.LoadBalancer; import com.pulumi.aws.elb.LoadBalancerArgs; import com.pulumi.aws.elb.inputs.LoadBalancerAccessLogsArgs; import com.pulumi.aws.elb.inputs.LoadBalancerListenerArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getServiceAccount(GetServiceAccountArgs.builder() .build()); var elbLogs = new Bucket("elbLogs", BucketArgs.builder() .bucket("my-elb-tf-test-bucket") .build()); var elbLogsAcl = new BucketAcl("elbLogsAcl", BucketAclArgs.builder() .bucket(elbLogs.id()) .acl("private") .build()); final var allowElbLogging = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder() .statements(GetPolicyDocumentStatementArgs.builder() .principals(GetPolicyDocumentStatementPrincipalArgs.builder() .type("AWS") .identifiers(main.arn()) .build()) .effect("Allow") .actions("s3:PutObject") .resources(elbLogs.arn().applyValue(_arn -> String.format("%s/AWSLogs/*", _arn))) .build()) .build()); var allowElbLoggingBucketPolicy = new BucketPolicy("allowElbLoggingBucketPolicy", BucketPolicyArgs.builder() .bucket(elbLogs.id()) .policy(allowElbLogging.applyValue(_allowElbLogging -> _allowElbLogging.json())) .build()); var bar = new LoadBalancer("bar", LoadBalancerArgs.builder() .accessLogs(LoadBalancerAccessLogsArgs.builder() .bucket(elbLogs.id()) .interval(5) .build()) .listeners(LoadBalancerListenerArgs.builder() .instancePort(8000) .instanceProtocol("http") .lbPort(80) .lbProtocol("http") .build()) .name("my-foobar-elb") .availabilityZones("us-west-2a") .build()); } }
-
getServiceAccountPlain
public static java.util.concurrent.CompletableFuture<GetServiceAccountResult> getServiceAccountPlain()
Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy. > **Note:** For AWS Regions opened since Jakarta (`ap-southeast-3`) in December 2021, AWS [documents that](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) a [service principal name](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-services) should be used instead of an AWS account ID in any relevant IAM policy. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetServiceAccountArgs; import com.pulumi.aws.s3.Bucket; import com.pulumi.aws.s3.BucketArgs; import com.pulumi.aws.s3.BucketAcl; import com.pulumi.aws.s3.BucketAclArgs; import com.pulumi.aws.iam.IamFunctions; import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementPrincipalArgs; import com.pulumi.aws.s3.BucketPolicy; import com.pulumi.aws.s3.BucketPolicyArgs; import com.pulumi.aws.elb.LoadBalancer; import com.pulumi.aws.elb.LoadBalancerArgs; import com.pulumi.aws.elb.inputs.LoadBalancerAccessLogsArgs; import com.pulumi.aws.elb.inputs.LoadBalancerListenerArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getServiceAccount(GetServiceAccountArgs.builder() .build()); var elbLogs = new Bucket("elbLogs", BucketArgs.builder() .bucket("my-elb-tf-test-bucket") .build()); var elbLogsAcl = new BucketAcl("elbLogsAcl", BucketAclArgs.builder() .bucket(elbLogs.id()) .acl("private") .build()); final var allowElbLogging = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder() .statements(GetPolicyDocumentStatementArgs.builder() .principals(GetPolicyDocumentStatementPrincipalArgs.builder() .type("AWS") .identifiers(main.arn()) .build()) .effect("Allow") .actions("s3:PutObject") .resources(elbLogs.arn().applyValue(_arn -> String.format("%s/AWSLogs/*", _arn))) .build()) .build()); var allowElbLoggingBucketPolicy = new BucketPolicy("allowElbLoggingBucketPolicy", BucketPolicyArgs.builder() .bucket(elbLogs.id()) .policy(allowElbLogging.applyValue(_allowElbLogging -> _allowElbLogging.json())) .build()); var bar = new LoadBalancer("bar", LoadBalancerArgs.builder() .accessLogs(LoadBalancerAccessLogsArgs.builder() .bucket(elbLogs.id()) .interval(5) .build()) .listeners(LoadBalancerListenerArgs.builder() .instancePort(8000) .instanceProtocol("http") .lbPort(80) .lbProtocol("http") .build()) .name("my-foobar-elb") .availabilityZones("us-west-2a") .build()); } }
-
getServiceAccount
public static com.pulumi.core.Output<GetServiceAccountResult> getServiceAccount(GetServiceAccountArgs args)
Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy. > **Note:** For AWS Regions opened since Jakarta (`ap-southeast-3`) in December 2021, AWS [documents that](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) a [service principal name](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-services) should be used instead of an AWS account ID in any relevant IAM policy. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetServiceAccountArgs; import com.pulumi.aws.s3.Bucket; import com.pulumi.aws.s3.BucketArgs; import com.pulumi.aws.s3.BucketAcl; import com.pulumi.aws.s3.BucketAclArgs; import com.pulumi.aws.iam.IamFunctions; import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementPrincipalArgs; import com.pulumi.aws.s3.BucketPolicy; import com.pulumi.aws.s3.BucketPolicyArgs; import com.pulumi.aws.elb.LoadBalancer; import com.pulumi.aws.elb.LoadBalancerArgs; import com.pulumi.aws.elb.inputs.LoadBalancerAccessLogsArgs; import com.pulumi.aws.elb.inputs.LoadBalancerListenerArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getServiceAccount(GetServiceAccountArgs.builder() .build()); var elbLogs = new Bucket("elbLogs", BucketArgs.builder() .bucket("my-elb-tf-test-bucket") .build()); var elbLogsAcl = new BucketAcl("elbLogsAcl", BucketAclArgs.builder() .bucket(elbLogs.id()) .acl("private") .build()); final var allowElbLogging = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder() .statements(GetPolicyDocumentStatementArgs.builder() .principals(GetPolicyDocumentStatementPrincipalArgs.builder() .type("AWS") .identifiers(main.arn()) .build()) .effect("Allow") .actions("s3:PutObject") .resources(elbLogs.arn().applyValue(_arn -> String.format("%s/AWSLogs/*", _arn))) .build()) .build()); var allowElbLoggingBucketPolicy = new BucketPolicy("allowElbLoggingBucketPolicy", BucketPolicyArgs.builder() .bucket(elbLogs.id()) .policy(allowElbLogging.applyValue(_allowElbLogging -> _allowElbLogging.json())) .build()); var bar = new LoadBalancer("bar", LoadBalancerArgs.builder() .accessLogs(LoadBalancerAccessLogsArgs.builder() .bucket(elbLogs.id()) .interval(5) .build()) .listeners(LoadBalancerListenerArgs.builder() .instancePort(8000) .instanceProtocol("http") .lbPort(80) .lbProtocol("http") .build()) .name("my-foobar-elb") .availabilityZones("us-west-2a") .build()); } }
-
getServiceAccountPlain
public static java.util.concurrent.CompletableFuture<GetServiceAccountResult> getServiceAccountPlain(GetServiceAccountPlainArgs args)
Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy. > **Note:** For AWS Regions opened since Jakarta (`ap-southeast-3`) in December 2021, AWS [documents that](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) a [service principal name](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-services) should be used instead of an AWS account ID in any relevant IAM policy. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetServiceAccountArgs; import com.pulumi.aws.s3.Bucket; import com.pulumi.aws.s3.BucketArgs; import com.pulumi.aws.s3.BucketAcl; import com.pulumi.aws.s3.BucketAclArgs; import com.pulumi.aws.iam.IamFunctions; import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementPrincipalArgs; import com.pulumi.aws.s3.BucketPolicy; import com.pulumi.aws.s3.BucketPolicyArgs; import com.pulumi.aws.elb.LoadBalancer; import com.pulumi.aws.elb.LoadBalancerArgs; import com.pulumi.aws.elb.inputs.LoadBalancerAccessLogsArgs; import com.pulumi.aws.elb.inputs.LoadBalancerListenerArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getServiceAccount(GetServiceAccountArgs.builder() .build()); var elbLogs = new Bucket("elbLogs", BucketArgs.builder() .bucket("my-elb-tf-test-bucket") .build()); var elbLogsAcl = new BucketAcl("elbLogsAcl", BucketAclArgs.builder() .bucket(elbLogs.id()) .acl("private") .build()); final var allowElbLogging = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder() .statements(GetPolicyDocumentStatementArgs.builder() .principals(GetPolicyDocumentStatementPrincipalArgs.builder() .type("AWS") .identifiers(main.arn()) .build()) .effect("Allow") .actions("s3:PutObject") .resources(elbLogs.arn().applyValue(_arn -> String.format("%s/AWSLogs/*", _arn))) .build()) .build()); var allowElbLoggingBucketPolicy = new BucketPolicy("allowElbLoggingBucketPolicy", BucketPolicyArgs.builder() .bucket(elbLogs.id()) .policy(allowElbLogging.applyValue(_allowElbLogging -> _allowElbLogging.json())) .build()); var bar = new LoadBalancer("bar", LoadBalancerArgs.builder() .accessLogs(LoadBalancerAccessLogsArgs.builder() .bucket(elbLogs.id()) .interval(5) .build()) .listeners(LoadBalancerListenerArgs.builder() .instancePort(8000) .instanceProtocol("http") .lbPort(80) .lbProtocol("http") .build()) .name("my-foobar-elb") .availabilityZones("us-west-2a") .build()); } }
-
getServiceAccount
public static com.pulumi.core.Output<GetServiceAccountResult> getServiceAccount(GetServiceAccountArgs args, com.pulumi.deployment.InvokeOptions options)
Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy. > **Note:** For AWS Regions opened since Jakarta (`ap-southeast-3`) in December 2021, AWS [documents that](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) a [service principal name](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-services) should be used instead of an AWS account ID in any relevant IAM policy. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetServiceAccountArgs; import com.pulumi.aws.s3.Bucket; import com.pulumi.aws.s3.BucketArgs; import com.pulumi.aws.s3.BucketAcl; import com.pulumi.aws.s3.BucketAclArgs; import com.pulumi.aws.iam.IamFunctions; import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementPrincipalArgs; import com.pulumi.aws.s3.BucketPolicy; import com.pulumi.aws.s3.BucketPolicyArgs; import com.pulumi.aws.elb.LoadBalancer; import com.pulumi.aws.elb.LoadBalancerArgs; import com.pulumi.aws.elb.inputs.LoadBalancerAccessLogsArgs; import com.pulumi.aws.elb.inputs.LoadBalancerListenerArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getServiceAccount(GetServiceAccountArgs.builder() .build()); var elbLogs = new Bucket("elbLogs", BucketArgs.builder() .bucket("my-elb-tf-test-bucket") .build()); var elbLogsAcl = new BucketAcl("elbLogsAcl", BucketAclArgs.builder() .bucket(elbLogs.id()) .acl("private") .build()); final var allowElbLogging = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder() .statements(GetPolicyDocumentStatementArgs.builder() .principals(GetPolicyDocumentStatementPrincipalArgs.builder() .type("AWS") .identifiers(main.arn()) .build()) .effect("Allow") .actions("s3:PutObject") .resources(elbLogs.arn().applyValue(_arn -> String.format("%s/AWSLogs/*", _arn))) .build()) .build()); var allowElbLoggingBucketPolicy = new BucketPolicy("allowElbLoggingBucketPolicy", BucketPolicyArgs.builder() .bucket(elbLogs.id()) .policy(allowElbLogging.applyValue(_allowElbLogging -> _allowElbLogging.json())) .build()); var bar = new LoadBalancer("bar", LoadBalancerArgs.builder() .accessLogs(LoadBalancerAccessLogsArgs.builder() .bucket(elbLogs.id()) .interval(5) .build()) .listeners(LoadBalancerListenerArgs.builder() .instancePort(8000) .instanceProtocol("http") .lbPort(80) .lbProtocol("http") .build()) .name("my-foobar-elb") .availabilityZones("us-west-2a") .build()); } }
-
getServiceAccount
public static com.pulumi.core.Output<GetServiceAccountResult> getServiceAccount(GetServiceAccountArgs args, com.pulumi.deployment.InvokeOutputOptions options)
Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy. > **Note:** For AWS Regions opened since Jakarta (`ap-southeast-3`) in December 2021, AWS [documents that](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) a [service principal name](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-services) should be used instead of an AWS account ID in any relevant IAM policy. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetServiceAccountArgs; import com.pulumi.aws.s3.Bucket; import com.pulumi.aws.s3.BucketArgs; import com.pulumi.aws.s3.BucketAcl; import com.pulumi.aws.s3.BucketAclArgs; import com.pulumi.aws.iam.IamFunctions; import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementPrincipalArgs; import com.pulumi.aws.s3.BucketPolicy; import com.pulumi.aws.s3.BucketPolicyArgs; import com.pulumi.aws.elb.LoadBalancer; import com.pulumi.aws.elb.LoadBalancerArgs; import com.pulumi.aws.elb.inputs.LoadBalancerAccessLogsArgs; import com.pulumi.aws.elb.inputs.LoadBalancerListenerArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getServiceAccount(GetServiceAccountArgs.builder() .build()); var elbLogs = new Bucket("elbLogs", BucketArgs.builder() .bucket("my-elb-tf-test-bucket") .build()); var elbLogsAcl = new BucketAcl("elbLogsAcl", BucketAclArgs.builder() .bucket(elbLogs.id()) .acl("private") .build()); final var allowElbLogging = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder() .statements(GetPolicyDocumentStatementArgs.builder() .principals(GetPolicyDocumentStatementPrincipalArgs.builder() .type("AWS") .identifiers(main.arn()) .build()) .effect("Allow") .actions("s3:PutObject") .resources(elbLogs.arn().applyValue(_arn -> String.format("%s/AWSLogs/*", _arn))) .build()) .build()); var allowElbLoggingBucketPolicy = new BucketPolicy("allowElbLoggingBucketPolicy", BucketPolicyArgs.builder() .bucket(elbLogs.id()) .policy(allowElbLogging.applyValue(_allowElbLogging -> _allowElbLogging.json())) .build()); var bar = new LoadBalancer("bar", LoadBalancerArgs.builder() .accessLogs(LoadBalancerAccessLogsArgs.builder() .bucket(elbLogs.id()) .interval(5) .build()) .listeners(LoadBalancerListenerArgs.builder() .instancePort(8000) .instanceProtocol("http") .lbPort(80) .lbProtocol("http") .build()) .name("my-foobar-elb") .availabilityZones("us-west-2a") .build()); } }
-
getServiceAccountPlain
public static java.util.concurrent.CompletableFuture<GetServiceAccountResult> getServiceAccountPlain(GetServiceAccountPlainArgs args, com.pulumi.deployment.InvokeOptions options)
Use this data source to get the Account ID of the [AWS Elastic Load Balancing Service Account](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) in a given region for the purpose of permitting in S3 bucket policy. > **Note:** For AWS Regions opened since Jakarta (`ap-southeast-3`) in December 2021, AWS [documents that](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html#attach-bucket-policy) a [service principal name](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-services) should be used instead of an AWS account ID in any relevant IAM policy. ## Example Usagepackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.ElbFunctions; import com.pulumi.aws.elb.inputs.GetServiceAccountArgs; import com.pulumi.aws.s3.Bucket; import com.pulumi.aws.s3.BucketArgs; import com.pulumi.aws.s3.BucketAcl; import com.pulumi.aws.s3.BucketAclArgs; import com.pulumi.aws.iam.IamFunctions; import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementPrincipalArgs; import com.pulumi.aws.s3.BucketPolicy; import com.pulumi.aws.s3.BucketPolicyArgs; import com.pulumi.aws.elb.LoadBalancer; import com.pulumi.aws.elb.LoadBalancerArgs; import com.pulumi.aws.elb.inputs.LoadBalancerAccessLogsArgs; import com.pulumi.aws.elb.inputs.LoadBalancerListenerArgs; import java.util.ArrayList; import java.util.Arrays; 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) { final var main = ElbFunctions.getServiceAccount(GetServiceAccountArgs.builder() .build()); var elbLogs = new Bucket("elbLogs", BucketArgs.builder() .bucket("my-elb-tf-test-bucket") .build()); var elbLogsAcl = new BucketAcl("elbLogsAcl", BucketAclArgs.builder() .bucket(elbLogs.id()) .acl("private") .build()); final var allowElbLogging = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder() .statements(GetPolicyDocumentStatementArgs.builder() .principals(GetPolicyDocumentStatementPrincipalArgs.builder() .type("AWS") .identifiers(main.arn()) .build()) .effect("Allow") .actions("s3:PutObject") .resources(elbLogs.arn().applyValue(_arn -> String.format("%s/AWSLogs/*", _arn))) .build()) .build()); var allowElbLoggingBucketPolicy = new BucketPolicy("allowElbLoggingBucketPolicy", BucketPolicyArgs.builder() .bucket(elbLogs.id()) .policy(allowElbLogging.applyValue(_allowElbLogging -> _allowElbLogging.json())) .build()); var bar = new LoadBalancer("bar", LoadBalancerArgs.builder() .accessLogs(LoadBalancerAccessLogsArgs.builder() .bucket(elbLogs.id()) .interval(5) .build()) .listeners(LoadBalancerListenerArgs.builder() .instancePort(8000) .instanceProtocol("http") .lbPort(80) .lbProtocol("http") .build()) .name("my-foobar-elb") .availabilityZones("us-west-2a") .build()); } }
-
-