import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This resource provides the Private Endpoint resource in Oracle Cloud Infrastructure Data Flow service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/data-flow/latest/PrivateEndpoint * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/dataflow * * Creates a private endpoint to be used by applications. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testPrivateEndpoint = new oci.dataflow.PrivateEndpoint("test_private_endpoint", { * compartmentId: compartmentId, * dnsZones: privateEndpointDnsZones, * subnetId: testSubnet.id, * definedTags: { * "Operations.CostCenter": "42", * }, * description: privateEndpointDescription, * displayName: privateEndpointDisplayName, * freeformTags: { * Department: "Finance", * }, * maxHostCount: Number(privateEndpointMaxHostCount), * nsgIds: privateEndpointNsgIds, * scanDetails: [{ * fqdn: privateEndpointScanDetailsFqdn, * port: privateEndpointScanDetailsPort, * }], * }); * ``` * * ## Note * * When a Private Endpoint resource is created it will be in `INACTIVE` state. When user runs an application using a Private Endpoint resource only then it moves to `ACTIVE` state. Also if there is already a Private Endpoint resource that is in `ACTIVE` state then on running the new application, the new Private Endpoint will be moved to `ACTIVE` state while the old one will be moved to `INACTIVE` state by the service. To update these states in your terraform state file user needs to do a `terraform refresh`. * * ## Import * * PrivateEndpoints can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:DataFlow/privateEndpoint:PrivateEndpoint test_private_endpoint "id" * ``` */ export declare class PrivateEndpoint extends pulumi.CustomResource { /** * Get an existing PrivateEndpoint 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?: PrivateEndpointState, opts?: pulumi.CustomResourceOptions): PrivateEndpoint; /** * Returns true if the given object is an instance of PrivateEndpoint. 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 PrivateEndpoint; /** * (Updatable) The OCID of a compartment. */ readonly compartmentId: pulumi.Output; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}` */ readonly definedTags: pulumi.Output<{ [key: string]: string; }>; /** * (Updatable) A user-friendly description. Avoid entering confidential information. */ readonly description: pulumi.Output; /** * (Updatable) A user-friendly name. It does not have to be unique. Avoid entering confidential information. */ readonly displayName: pulumi.Output; /** * (Updatable) An array of DNS zone names. Example: `[ "app.examplecorp.com", "app.examplecorp2.com" ]` */ readonly dnsZones: pulumi.Output; /** * (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` */ readonly freeformTags: pulumi.Output<{ [key: string]: string; }>; /** * The detailed messages about the lifecycle state. */ readonly lifecycleDetails: pulumi.Output; /** * (Updatable) The maximum number of hosts to be accessed through the private endpoint. This value is used to calculate the relevant CIDR block and should be a multiple of 256. If the value is not a multiple of 256, it is rounded up to the next multiple of 256. For example, 300 is rounded up to 512. */ readonly maxHostCount: pulumi.Output; /** * (Updatable) An array of network security group OCIDs. */ readonly nsgIds: pulumi.Output; /** * The OCID of the user who created the resource. */ readonly ownerPrincipalId: pulumi.Output; /** * The username of the user who created the resource. If the username of the owner does not exist, `null` will be returned and the caller should refer to the ownerPrincipalId value instead. */ readonly ownerUserName: pulumi.Output; /** * (Updatable) An array of fqdn/port pairs used to create private endpoint. Each object is a simple key-value pair with FQDN as key and port number as value. [ { fqdn: "scan1.oracle.com", port: "1521"}, { fqdn: "scan2.oracle.com", port: "1521" } ] */ readonly scanDetails: pulumi.Output; /** * The current state of this private endpoint. */ readonly state: pulumi.Output; /** * The OCID of a subnet. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ readonly subnetId: pulumi.Output; /** * The date and time the resource was created, expressed in [RFC 3339](https://tools.ietf.org/html/rfc3339) timestamp format. Example: `2018-04-03T21:10:29.600Z` */ readonly timeCreated: pulumi.Output; /** * The date and time the resource was updated, expressed in [RFC 3339](https://tools.ietf.org/html/rfc3339) timestamp format. Example: `2018-04-03T21:10:29.600Z` */ readonly timeUpdated: pulumi.Output; /** * Create a PrivateEndpoint 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: PrivateEndpointArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering PrivateEndpoint resources. */ export interface PrivateEndpointState { /** * (Updatable) The OCID of a compartment. */ compartmentId?: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) A user-friendly description. Avoid entering confidential information. */ description?: pulumi.Input; /** * (Updatable) A user-friendly name. It does not have to be unique. Avoid entering confidential information. */ displayName?: pulumi.Input; /** * (Updatable) An array of DNS zone names. Example: `[ "app.examplecorp.com", "app.examplecorp2.com" ]` */ dnsZones?: pulumi.Input[] | undefined>; /** * (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * The detailed messages about the lifecycle state. */ lifecycleDetails?: pulumi.Input; /** * (Updatable) The maximum number of hosts to be accessed through the private endpoint. This value is used to calculate the relevant CIDR block and should be a multiple of 256. If the value is not a multiple of 256, it is rounded up to the next multiple of 256. For example, 300 is rounded up to 512. */ maxHostCount?: pulumi.Input; /** * (Updatable) An array of network security group OCIDs. */ nsgIds?: pulumi.Input[] | undefined>; /** * The OCID of the user who created the resource. */ ownerPrincipalId?: pulumi.Input; /** * The username of the user who created the resource. If the username of the owner does not exist, `null` will be returned and the caller should refer to the ownerPrincipalId value instead. */ ownerUserName?: pulumi.Input; /** * (Updatable) An array of fqdn/port pairs used to create private endpoint. Each object is a simple key-value pair with FQDN as key and port number as value. [ { fqdn: "scan1.oracle.com", port: "1521"}, { fqdn: "scan2.oracle.com", port: "1521" } ] */ scanDetails?: pulumi.Input[] | undefined>; /** * The current state of this private endpoint. */ state?: pulumi.Input; /** * The OCID of a subnet. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ subnetId?: pulumi.Input; /** * The date and time the resource was created, expressed in [RFC 3339](https://tools.ietf.org/html/rfc3339) timestamp format. Example: `2018-04-03T21:10:29.600Z` */ timeCreated?: pulumi.Input; /** * The date and time the resource was updated, expressed in [RFC 3339](https://tools.ietf.org/html/rfc3339) timestamp format. Example: `2018-04-03T21:10:29.600Z` */ timeUpdated?: pulumi.Input; } /** * The set of arguments for constructing a PrivateEndpoint resource. */ export interface PrivateEndpointArgs { /** * (Updatable) The OCID of a compartment. */ compartmentId: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) A user-friendly description. Avoid entering confidential information. */ description?: pulumi.Input; /** * (Updatable) A user-friendly name. It does not have to be unique. Avoid entering confidential information. */ displayName?: pulumi.Input; /** * (Updatable) An array of DNS zone names. Example: `[ "app.examplecorp.com", "app.examplecorp2.com" ]` */ dnsZones: pulumi.Input[]>; /** * (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) The maximum number of hosts to be accessed through the private endpoint. This value is used to calculate the relevant CIDR block and should be a multiple of 256. If the value is not a multiple of 256, it is rounded up to the next multiple of 256. For example, 300 is rounded up to 512. */ maxHostCount?: pulumi.Input; /** * (Updatable) An array of network security group OCIDs. */ nsgIds?: pulumi.Input[] | undefined>; /** * (Updatable) An array of fqdn/port pairs used to create private endpoint. Each object is a simple key-value pair with FQDN as key and port number as value. [ { fqdn: "scan1.oracle.com", port: "1521"}, { fqdn: "scan2.oracle.com", port: "1521" } ] */ scanDetails?: pulumi.Input[] | undefined>; /** * The OCID of a subnet. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ subnetId: pulumi.Input; } //# sourceMappingURL=privateEndpoint.d.ts.map