UNPKG

@pulumiverse/cpln

Version:

A Pulumi package for creating and managing Control Plane (cpln) resources.

221 lines (220 loc) 9.61 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * Use this data source to access information about an existing [Global Virtual Cloud (GVC)](https://docs.controlplane.com/reference/gvc) within Control Plane. * * ## Required * * - **name** (String) Name of the GVC. * * ## Outputs * * The following attributes are exported: * * - **cpln_id** (String) The ID, in GUID format, of the GVC. * - **name** (String) Name of the GVC. * - **alias** (String) The alias name of the GVC. * - **description** (String) Description of the GVC. * - **tags** (Map of String) Key-value map of resource tags. * - **self_link** (String) Full link to this resource. Can be referenced by other resources. * - **domain** (String) Custom domain name used by associated workloads. * - **locations** (List of String) A list of [locations](https://docs.controlplane.com/reference/location#current) making up the Global Virtual Cloud. * - **pull_secrets** (List of String) A list of [pull secret](https://docs.controlplane.com/reference/gvc#pull-secrets) names used to authenticate to any private image repository referenced by Workloads within the GVC. * - **lightstep_tracing** (Block List, Max: 1) (see below). * - **otel_tracing** (Block List, Max: 1) (see below). * - **controlplane_tracing** (Block List, Max: 1) (see below). * - **load_balancer** (Block List, Max: 1) (see below). * * <a id="nestedblock--lightstep_tracing"></a> * * ### `lightstepTracing` * * - **sampling** (Int) Sampling percentage. * - **endpoint** (String) Tracing Endpoint Workload. Either the canonical endpoint or the internal endpoint. * - **credentials** (String) Full link to referenced Opaque Secret. * * <a id="nestedblock--otel_tracing"></a> * * ### `otelTracing` * * - **sampling** (Int) Determines what percentage of requests should be traced. * - **endpoint** (String) Tracing Endpoint Workload. Either the canonical endpoint or internal endpoint. * - **custom_tags** (Map of String) Key-value map of custom tags. * * <a id="nestedblock--controlplane_tracing"></a> * * ### `controlplaneTracing` * * - **sampling** (Int) Determines what percentage of requests should be traced. * - **custom_tags** (Map of String) Key-value map of custom tags. * * <a id="nestedblock--load_balancer"></a> * * ### `loadBalancer` * * - **dedicated** (Boolean) Creates a dedicated load balancer in each location and enables additional Domain features: custom ports, protocols and wildcard hostnames. Charges apply for each location. * * - **trusted_proxies** (Int) Controls the address used for request logging and for setting the X-Envoy-External-Address header. If set to 1, then the last address in an existing X-Forwarded-For header will be used in place of the source client IP address. If set to 2, then the second to last address in an existing X-Forwarded-For header will be used in place of the source client IP address. If the XFF header does not have at least two addresses or does not exist then the source client IP address will be used instead. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as cpln from "@pulumiverse/cpln"; * * const gvc = cpln.getGvc({ * name: "gvc-example", * }); * export const gvcId = gvc.then(gvc => gvc.id); * export const gvcLocations = gvc.then(gvc => gvc.locations); * ``` */ export declare function getGvc(args: GetGvcArgs, opts?: pulumi.InvokeOptions): Promise<GetGvcResult>; /** * A collection of arguments for invoking getGvc. */ export interface GetGvcArgs { controlplaneTracing?: inputs.GetGvcControlplaneTracing; /** * @deprecated Selecting a domain on a GVC will be deprecated in the future. Use the 'cpln_domain resource' instead. */ domain?: string; endpointNamingFormat?: string; env?: { [key: string]: string; }; lightstepTracing?: inputs.GetGvcLightstepTracing; loadBalancer?: inputs.GetGvcLoadBalancer; locations?: string[]; name: string; otelTracing?: inputs.GetGvcOtelTracing; pullSecrets?: string[]; sidecar?: inputs.GetGvcSidecar; tags?: { [key: string]: string; }; } /** * A collection of values returned by getGvc. */ export interface GetGvcResult { readonly alias: string; readonly controlplaneTracing?: outputs.GetGvcControlplaneTracing; readonly cplnId: string; readonly description: string; /** * @deprecated Selecting a domain on a GVC will be deprecated in the future. Use the 'cpln_domain resource' instead. */ readonly domain?: string; readonly endpointNamingFormat: string; readonly env?: { [key: string]: string; }; readonly id: string; readonly lightstepTracing?: outputs.GetGvcLightstepTracing; readonly loadBalancer?: outputs.GetGvcLoadBalancer; readonly locations?: string[]; readonly name: string; readonly otelTracing?: outputs.GetGvcOtelTracing; readonly pullSecrets?: string[]; readonly selfLink: string; readonly sidecar?: outputs.GetGvcSidecar; readonly tags: { [key: string]: string; }; } /** * Use this data source to access information about an existing [Global Virtual Cloud (GVC)](https://docs.controlplane.com/reference/gvc) within Control Plane. * * ## Required * * - **name** (String) Name of the GVC. * * ## Outputs * * The following attributes are exported: * * - **cpln_id** (String) The ID, in GUID format, of the GVC. * - **name** (String) Name of the GVC. * - **alias** (String) The alias name of the GVC. * - **description** (String) Description of the GVC. * - **tags** (Map of String) Key-value map of resource tags. * - **self_link** (String) Full link to this resource. Can be referenced by other resources. * - **domain** (String) Custom domain name used by associated workloads. * - **locations** (List of String) A list of [locations](https://docs.controlplane.com/reference/location#current) making up the Global Virtual Cloud. * - **pull_secrets** (List of String) A list of [pull secret](https://docs.controlplane.com/reference/gvc#pull-secrets) names used to authenticate to any private image repository referenced by Workloads within the GVC. * - **lightstep_tracing** (Block List, Max: 1) (see below). * - **otel_tracing** (Block List, Max: 1) (see below). * - **controlplane_tracing** (Block List, Max: 1) (see below). * - **load_balancer** (Block List, Max: 1) (see below). * * <a id="nestedblock--lightstep_tracing"></a> * * ### `lightstepTracing` * * - **sampling** (Int) Sampling percentage. * - **endpoint** (String) Tracing Endpoint Workload. Either the canonical endpoint or the internal endpoint. * - **credentials** (String) Full link to referenced Opaque Secret. * * <a id="nestedblock--otel_tracing"></a> * * ### `otelTracing` * * - **sampling** (Int) Determines what percentage of requests should be traced. * - **endpoint** (String) Tracing Endpoint Workload. Either the canonical endpoint or internal endpoint. * - **custom_tags** (Map of String) Key-value map of custom tags. * * <a id="nestedblock--controlplane_tracing"></a> * * ### `controlplaneTracing` * * - **sampling** (Int) Determines what percentage of requests should be traced. * - **custom_tags** (Map of String) Key-value map of custom tags. * * <a id="nestedblock--load_balancer"></a> * * ### `loadBalancer` * * - **dedicated** (Boolean) Creates a dedicated load balancer in each location and enables additional Domain features: custom ports, protocols and wildcard hostnames. Charges apply for each location. * * - **trusted_proxies** (Int) Controls the address used for request logging and for setting the X-Envoy-External-Address header. If set to 1, then the last address in an existing X-Forwarded-For header will be used in place of the source client IP address. If set to 2, then the second to last address in an existing X-Forwarded-For header will be used in place of the source client IP address. If the XFF header does not have at least two addresses or does not exist then the source client IP address will be used instead. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as cpln from "@pulumiverse/cpln"; * * const gvc = cpln.getGvc({ * name: "gvc-example", * }); * export const gvcId = gvc.then(gvc => gvc.id); * export const gvcLocations = gvc.then(gvc => gvc.locations); * ``` */ export declare function getGvcOutput(args: GetGvcOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetGvcResult>; /** * A collection of arguments for invoking getGvc. */ export interface GetGvcOutputArgs { controlplaneTracing?: pulumi.Input<inputs.GetGvcControlplaneTracingArgs>; /** * @deprecated Selecting a domain on a GVC will be deprecated in the future. Use the 'cpln_domain resource' instead. */ domain?: pulumi.Input<string>; endpointNamingFormat?: pulumi.Input<string>; env?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; lightstepTracing?: pulumi.Input<inputs.GetGvcLightstepTracingArgs>; loadBalancer?: pulumi.Input<inputs.GetGvcLoadBalancerArgs>; locations?: pulumi.Input<pulumi.Input<string>[]>; name: pulumi.Input<string>; otelTracing?: pulumi.Input<inputs.GetGvcOtelTracingArgs>; pullSecrets?: pulumi.Input<pulumi.Input<string>[]>; sidecar?: pulumi.Input<inputs.GetGvcSidecarArgs>; tags?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; }