import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../types/output"; /** * Use this data source to get the ID of an OpenStack Load Balancer pool. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * * const pool1 = openstack.loadbalancer.getPoolV2({ * name: "pool_1", * }); * ``` */ export declare function getPoolV2(args?: GetPoolV2Args, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getPoolV2. */ export interface GetPoolV2Args { /** * The load balancing algorithm to distribute traffic to the * pool's members. */ lbMethod?: string; /** * The ID of the load balancer associated with * the requested pool. */ loadbalancerId?: string; /** * The name of the pool. Exactly one of `name`, `poolId` * is required to be set. */ name?: string; /** * The ID of the pool. Exactly one of `name`, `poolId` * is required to be set. */ poolId?: string; /** * The protocol of the requested pool. */ protocol?: string; /** * The region in which to obtain the V2 Load Balancer * client. If omitted, the `region` argument of the provider is used. */ region?: string; /** * A set of tags applied to the loadbalancer's pool. The * loadbalancer' pool will be returned if it has all of the specified tags. */ tags?: string[]; } /** * A collection of values returned by getPoolV2. */ export interface GetPoolV2Result { /** * The administrative state of the Pool, which is up (true) * or down (false). */ readonly adminStateUp: boolean; /** * A list of ALPN protocols. */ readonly alpnProtocols: string[]; /** * The reference of the key manager service secret * containing a PEM format CA certificate bundle for tlsEnabled pools. */ readonly caTlsContainerRef: string; /** * The reference of the key manager service secret * containing a PEM format CA revocation list file for tlsEnabled pools. */ readonly crlContainerRef: string; /** * The description of the pool. */ readonly description: string; /** * The ID of associated health monitor. */ readonly healthmonitorId: string; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; /** * The load-balancer algorithm, which is round-robin, * least-connections, and so on. */ readonly lbMethod: string; /** * A list of listeners objects IDs. */ readonly listeners: outputs.loadbalancer.GetPoolV2Listener[]; readonly loadbalancerId: string; /** * A list of load balancer objects IDs. */ readonly loadbalancers: outputs.loadbalancer.GetPoolV2Loadbalancer[]; /** * A list of member objects IDs. */ readonly members: outputs.loadbalancer.GetPoolV2Member[]; /** * The name of the pool. */ readonly name: string; /** * The operating status of the pool. */ readonly operatingStatus: string; readonly poolId: string; /** * The owner (project/tenant) ID of the pool. */ readonly projectId: string; /** * The protocol to loadbalance. */ readonly protocol: string; /** * The provisioning status of the pool. */ readonly provisioningStatus: string; readonly region: string; /** * Indicates whether connections in the same session * will be processed by the same Pool member or not. */ readonly sessionPersistences: outputs.loadbalancer.GetPoolV2SessionPersistence[]; /** * Tags is a list of resource tags. */ readonly tags: string[]; /** * List of ciphers in OpenSSL format (colon-separated). */ readonly tlsCiphers: string; /** * The reference to the key manager service secret * containing a PKCS12 format certificate/key bundle for tlsEnabled pools for * TLS client authentication to the member servers. */ readonly tlsContainerRef: string; /** * When true connections to backend member servers will use * TLS encryption. */ readonly tlsEnabled: boolean; /** * A list of TLS protocol versions. */ readonly tlsVersions: string[]; } /** * Use this data source to get the ID of an OpenStack Load Balancer pool. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * * const pool1 = openstack.loadbalancer.getPoolV2({ * name: "pool_1", * }); * ``` */ export declare function getPoolV2Output(args?: GetPoolV2OutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getPoolV2. */ export interface GetPoolV2OutputArgs { /** * The load balancing algorithm to distribute traffic to the * pool's members. */ lbMethod?: pulumi.Input; /** * The ID of the load balancer associated with * the requested pool. */ loadbalancerId?: pulumi.Input; /** * The name of the pool. Exactly one of `name`, `poolId` * is required to be set. */ name?: pulumi.Input; /** * The ID of the pool. Exactly one of `name`, `poolId` * is required to be set. */ poolId?: pulumi.Input; /** * The protocol of the requested pool. */ protocol?: pulumi.Input; /** * The region in which to obtain the V2 Load Balancer * client. If omitted, the `region` argument of the provider is used. */ region?: pulumi.Input; /** * A set of tags applied to the loadbalancer's pool. The * loadbalancer' pool will be returned if it has all of the specified tags. */ tags?: pulumi.Input[]>; }