@lbrlabs/pulumi-tailscalebastion
Version:
This repo provides a [multi-language](https://www.pulumi.com/blog/pulumiup-pulumi-packages-multi-language-components/) component that creates a [Tailscale](https://tailscale.com/) [Subnet Router](https://tailscale.com/kb/1019/subnets/) in your chosen clou
71 lines (70 loc) • 2.36 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
export declare class Bastion extends pulumi.ComponentResource {
/**
* Returns true if the given object is an instance of Bastion. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is Bastion;
/**
* The SSH private key to access your bastion
*/
readonly privateKey: pulumi.Output<string>;
/**
* The name of the Scaleset that managed the bastion instances
*/
readonly scaleSetName: pulumi.Output<string>;
/**
* Create a Bastion resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: BastionArgs, opts?: pulumi.ComponentResourceOptions);
}
/**
* The set of arguments for constructing a Bastion resource.
*/
export interface BastionArgs {
/**
* Whether to enable SSH access to the bastion.
*/
enableSSH?: pulumi.Input<boolean>;
/**
* Whether the bastion should be highly available.
*/
highAvailability: pulumi.Input<boolean>;
/**
* The Azure instance SKU to use for the bastion.
*/
instanceSku?: pulumi.Input<string>;
/**
* The Azure region you're using.
*/
location: pulumi.Input<string>;
/**
* Settings for configuring this node as a peer relay server.
*/
peerRelaySettings?: pulumi.Input<inputs.PeerRelaySettingsArgs>;
/**
* Whether the bastion should have a public IP.
*/
public?: pulumi.Input<boolean>;
/**
* The Azure resource group to create the bastion in.
*/
resourceGroupName: pulumi.Input<string>;
/**
* The routes you'd like to advertise via tailscale.
*/
routes: pulumi.Input<pulumi.Input<string>[]>;
/**
* The subnet Ids to launch instances in.
*/
subnetId: pulumi.Input<string>;
/**
* The tags to apply to the tailnet device andauth key. This tag should be added to your oauth key and ACL.
*/
tailscaleTags: pulumi.Input<pulumi.Input<string>[]>;
}