UNPKG

@pierskarsenbarg/sdm

Version:

A Pulumi package for creating and managing StrongDM cloud resources.

144 lines (143 loc) 4.9 kB
import * as pulumi from "@pulumi/pulumi"; import * as outputs from "./types/output"; /** * Nodes make up the strongDM network, and allow your users to connect securely to your resources. * There are two types of nodes: * 1. **Relay:** creates connectivity to your datasources, while maintaining the egress-only nature of your firewall * 2. **Gateways:** a relay that also listens for connections from strongDM clients * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as sdm from "@pierskarsenbarg/sdm"; * * const gatewayQuery = sdm.getNode({ * tags: { * env: "dev", * region: "us-west", * }, * type: "gateway", * }); * ``` */ export declare function getNode(args?: GetNodeArgs, opts?: pulumi.InvokeOptions): Promise<GetNodeResult>; /** * A collection of arguments for invoking getNode. */ export interface GetNodeArgs { /** * The hostname/port tuple which the gateway daemon will bind to. If not provided on create, set to "0.0.0.0:listen_address_port". */ bindAddress?: string; /** * Unique identifier of the Relay. */ id?: string; /** * The public hostname/port tuple at which the gateway will be accessible to clients. */ listenAddress?: string; /** * Unique human-readable name of the Relay. Node names must include only letters, numbers, and hyphens (no spaces, underscores, or other special characters). Generated if not provided on create. */ name?: string; /** * Tags is a map of key, value pairs. */ tags?: { [key: string]: string; }; /** * a filter to select all items of a certain subtype. See the [filter documentation](https://www.strongdm.com/docs/cli/filters/) for more information. */ type?: string; } /** * A collection of values returned by getNode. */ export interface GetNodeResult { /** * The hostname/port tuple which the gateway daemon will bind to. If not provided on create, set to "0.0.0.0:listen_address_port". */ readonly bindAddress?: string; /** * Unique identifier of the Relay. */ readonly id?: string; /** * a list of strings of ids of data sources that match the given arguments. */ readonly ids: string[]; /** * The public hostname/port tuple at which the gateway will be accessible to clients. */ readonly listenAddress?: string; /** * Unique human-readable name of the Relay. Node names must include only letters, numbers, and hyphens (no spaces, underscores, or other special characters). Generated if not provided on create. */ readonly name?: string; /** * A single element list containing a map, where each key lists one of the following objects: * * gateway: */ readonly nodes: outputs.GetNodeNode[]; /** * Tags is a map of key, value pairs. */ readonly tags?: { [key: string]: string; }; readonly type?: string; } /** * Nodes make up the strongDM network, and allow your users to connect securely to your resources. * There are two types of nodes: * 1. **Relay:** creates connectivity to your datasources, while maintaining the egress-only nature of your firewall * 2. **Gateways:** a relay that also listens for connections from strongDM clients * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as sdm from "@pierskarsenbarg/sdm"; * * const gatewayQuery = sdm.getNode({ * tags: { * env: "dev", * region: "us-west", * }, * type: "gateway", * }); * ``` */ export declare function getNodeOutput(args?: GetNodeOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetNodeResult>; /** * A collection of arguments for invoking getNode. */ export interface GetNodeOutputArgs { /** * The hostname/port tuple which the gateway daemon will bind to. If not provided on create, set to "0.0.0.0:listen_address_port". */ bindAddress?: pulumi.Input<string>; /** * Unique identifier of the Relay. */ id?: pulumi.Input<string>; /** * The public hostname/port tuple at which the gateway will be accessible to clients. */ listenAddress?: pulumi.Input<string>; /** * Unique human-readable name of the Relay. Node names must include only letters, numbers, and hyphens (no spaces, underscores, or other special characters). Generated if not provided on create. */ name?: pulumi.Input<string>; /** * Tags is a map of key, value pairs. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * a filter to select all items of a certain subtype. See the [filter documentation](https://www.strongdm.com/docs/cli/filters/) for more information. */ type?: pulumi.Input<string>; }