@pulumi/aws
Version:
A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.
131 lines (130 loc) • 4.37 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
* > **Note:** `aws.alb.Listener` is known as `aws.lb.Listener`. The functionality is identical.
*
* Provides information about a Load Balancer Listener.
*
* This data source can prove useful when a module accepts an LB Listener as an input variable and needs to know the LB it is attached to, or other information specific to the listener in question.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const config = new pulumi.Config();
* const listenerArn = config.require("listenerArn");
* const listener = aws.lb.getListener({
* arn: listenerArn,
* });
* // get listener from load_balancer_arn and port
* const selected = aws.lb.getLoadBalancer({
* name: "default-public",
* });
* const selected443 = selected.then(selected => aws.lb.getListener({
* loadBalancerArn: selected.arn,
* port: 443,
* }));
* ```
*/
export declare function getListener(args?: GetListenerArgs, opts?: pulumi.InvokeOptions): Promise<GetListenerResult>;
/**
* A collection of arguments for invoking getListener.
*/
export interface GetListenerArgs {
/**
* ARN of the listener. Required if `loadBalancerArn` and `port` is not set.
*/
arn?: string;
/**
* ARN of the load balancer. Required if `arn` is not set.
*/
loadBalancerArn?: string;
/**
* Port of the listener. Required if `arn` is not set.
*/
port?: number;
/**
* Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
*/
region?: string;
tags?: {
[key: string]: string;
};
}
/**
* A collection of values returned by getListener.
*/
export interface GetListenerResult {
readonly alpnPolicy: string;
readonly arn: string;
readonly certificateArn: string;
readonly defaultActions: outputs.alb.GetListenerDefaultAction[];
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
readonly loadBalancerArn: string;
readonly mutualAuthentications: outputs.alb.GetListenerMutualAuthentication[];
readonly port: number;
readonly protocol: string;
readonly region: string;
readonly sslPolicy: string;
readonly tags: {
[key: string]: string;
};
}
/**
* > **Note:** `aws.alb.Listener` is known as `aws.lb.Listener`. The functionality is identical.
*
* Provides information about a Load Balancer Listener.
*
* This data source can prove useful when a module accepts an LB Listener as an input variable and needs to know the LB it is attached to, or other information specific to the listener in question.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const config = new pulumi.Config();
* const listenerArn = config.require("listenerArn");
* const listener = aws.lb.getListener({
* arn: listenerArn,
* });
* // get listener from load_balancer_arn and port
* const selected = aws.lb.getLoadBalancer({
* name: "default-public",
* });
* const selected443 = selected.then(selected => aws.lb.getListener({
* loadBalancerArn: selected.arn,
* port: 443,
* }));
* ```
*/
export declare function getListenerOutput(args?: GetListenerOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetListenerResult>;
/**
* A collection of arguments for invoking getListener.
*/
export interface GetListenerOutputArgs {
/**
* ARN of the listener. Required if `loadBalancerArn` and `port` is not set.
*/
arn?: pulumi.Input<string>;
/**
* ARN of the load balancer. Required if `arn` is not set.
*/
loadBalancerArn?: pulumi.Input<string>;
/**
* Port of the listener. Required if `arn` is not set.
*/
port?: pulumi.Input<number>;
/**
* Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
*/
region?: pulumi.Input<string>;
tags?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
}