import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Resource for creating an GCP Autostopping proxy * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as harness from "@pulumi/harness"; * * const test = new harness.autostopping.GcpProxy("test", { * name: "name", * cloudConnectorId: "cloud_connector_id", * region: "region", * vpc: "https://www.googleapis.com/compute/v1/projects/project_id/global/networks/netwok_id", * zone: "zone", * securityGroups: ["http-server"], * machineType: "e2-micro", * subnetId: "https://www.googleapis.com/compute/v1/projects/project_id/regions/region/subnetworks/subnet_name", * apiKey: "", * allocateStaticIp: false, * certificates: { * keySecretId: "projects/project_id/secrets/secret_id/versions/1", * certSecretId: "projects/project_id/secrets/secret_id/versions/1", * }, * deleteCloudResourcesOnDestroy: false, * }); * ``` */ export declare class GcpProxy extends pulumi.CustomResource { /** * Get an existing GcpProxy resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: GcpProxyState, opts?: pulumi.CustomResourceOptions): GcpProxy; /** * Returns true if the given object is an instance of GcpProxy. 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 GcpProxy; /** * Boolean value to indicate if proxy vm needs to have static IP */ readonly allocateStaticIp: pulumi.Output; /** * Harness NG API key */ readonly apiKey: pulumi.Output; readonly certificates: pulumi.Output; /** * Id of the cloud connector */ readonly cloudConnectorId: pulumi.Output; /** * Governs how the proxy entity will be deleted on Terraform destroy. When set to true, the associated VM will be deleted permanently from GCP account. Be fully aware of the consequneces of settting this to true, as the action is irreversible. When set to false, solely the Harness LB representation will be deleted, which leaves the proxy VM in GCP account itself. */ readonly deleteCloudResourcesOnDestroy: pulumi.Output; /** * Unique identifier of the resource */ readonly identifier: pulumi.Output; /** * Machine instance type */ readonly machineType: pulumi.Output; /** * Name of the proxy */ readonly name: pulumi.Output; /** * Private IP address of the proxy */ readonly privateIp: pulumi.Output; /** * Public IP address of the proxy */ readonly publicIp: pulumi.Output; /** * Region in which cloud resources are hosted */ readonly region: pulumi.Output; /** * Security Group to define the security rules that determine the inbound and outbound traffic */ readonly securityGroups: pulumi.Output; /** * VPC in which cloud resources are hosted */ readonly subnetId: pulumi.Output; /** * VPC in which cloud resources are hosted */ readonly vpc: pulumi.Output; /** * Zone in which cloud resources are hosted */ readonly zone: pulumi.Output; /** * Create a GcpProxy 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: GcpProxyArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering GcpProxy resources. */ export interface GcpProxyState { /** * Boolean value to indicate if proxy vm needs to have static IP */ allocateStaticIp?: pulumi.Input; /** * Harness NG API key */ apiKey?: pulumi.Input; certificates?: pulumi.Input; /** * Id of the cloud connector */ cloudConnectorId?: pulumi.Input; /** * Governs how the proxy entity will be deleted on Terraform destroy. When set to true, the associated VM will be deleted permanently from GCP account. Be fully aware of the consequneces of settting this to true, as the action is irreversible. When set to false, solely the Harness LB representation will be deleted, which leaves the proxy VM in GCP account itself. */ deleteCloudResourcesOnDestroy?: pulumi.Input; /** * Unique identifier of the resource */ identifier?: pulumi.Input; /** * Machine instance type */ machineType?: pulumi.Input; /** * Name of the proxy */ name?: pulumi.Input; /** * Private IP address of the proxy */ privateIp?: pulumi.Input; /** * Public IP address of the proxy */ publicIp?: pulumi.Input; /** * Region in which cloud resources are hosted */ region?: pulumi.Input; /** * Security Group to define the security rules that determine the inbound and outbound traffic */ securityGroups?: pulumi.Input[] | undefined>; /** * VPC in which cloud resources are hosted */ subnetId?: pulumi.Input; /** * VPC in which cloud resources are hosted */ vpc?: pulumi.Input; /** * Zone in which cloud resources are hosted */ zone?: pulumi.Input; } /** * The set of arguments for constructing a GcpProxy resource. */ export interface GcpProxyArgs { /** * Boolean value to indicate if proxy vm needs to have static IP */ allocateStaticIp?: pulumi.Input; /** * Harness NG API key */ apiKey: pulumi.Input; certificates?: pulumi.Input; /** * Id of the cloud connector */ cloudConnectorId: pulumi.Input; /** * Governs how the proxy entity will be deleted on Terraform destroy. When set to true, the associated VM will be deleted permanently from GCP account. Be fully aware of the consequneces of settting this to true, as the action is irreversible. When set to false, solely the Harness LB representation will be deleted, which leaves the proxy VM in GCP account itself. */ deleteCloudResourcesOnDestroy: pulumi.Input; /** * Machine instance type */ machineType: pulumi.Input; /** * Name of the proxy */ name?: pulumi.Input; /** * Region in which cloud resources are hosted */ region: pulumi.Input; /** * Security Group to define the security rules that determine the inbound and outbound traffic */ securityGroups?: pulumi.Input[] | undefined>; /** * VPC in which cloud resources are hosted */ subnetId: pulumi.Input; /** * VPC in which cloud resources are hosted */ vpc: pulumi.Input; /** * Zone in which cloud resources are hosted */ zone: pulumi.Input; } //# sourceMappingURL=gcpProxy.d.ts.map