import * as pulumi from "@pulumi/pulumi"; /** * This data source provides details about a specific Private Ip resource in Oracle Cloud Infrastructure Core service. * * Gets the specified private IP. You must specify the object's [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). * Alternatively, you can get the object by using * [ListPrivateIps](https://docs.cloud.oracle.com/iaas/api/#/en/iaas/latest/PrivateIp/ListPrivateIps) * with the private IP address (for example, 10.0.3.3) and subnet [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testPrivateIp = oci.core.getPrivateIp({ * privateIpId: testPrivateIpOciCorePrivateIp.id, * }); * ``` */ export declare function getPrivateIp(args: GetPrivateIpArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getPrivateIp. */ export interface GetPrivateIpArgs { /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the private IP or IPv6. */ privateIpId: string; } /** * A collection of values returned by getPrivateIp. */ export interface GetPrivateIpResult { /** * The private IP's availability domain. This attribute will be null if this is a *secondary* private IP assigned to a VNIC that is in a *regional* subnet. Example: `Uocm:PHX-AD-1` */ readonly availabilityDomain: string; /** * The secondary IPv4 CIDR prefix length. */ readonly cidrPrefixLength: number; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment containing the private IP. */ readonly compartmentId: string; /** * 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: { [key: string]: string; }; /** * A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. */ readonly displayName: string; /** * 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: { [key: string]: string; }; /** * The hostname for the private IP. Used for DNS. The value is the hostname portion of the private IP's fully qualified domain name (FQDN) (for example, `bminstance1` in FQDN `bminstance1.subnet123.vcn1.oraclevcn.com`). Must be unique across all VNICs in the subnet and comply with [RFC 952](https://tools.ietf.org/html/rfc952) and [RFC 1123](https://tools.ietf.org/html/rfc1123). */ readonly hostnameLabel: string; /** * The private IP's Oracle ID ([OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm)). */ readonly id: string; /** * The private IP address of the `privateIp` object. The address is within the CIDR of the VNIC's subnet. */ readonly ipAddress: string; /** * State of the IP address. If an IP address is assigned to a VNIC it is ASSIGNED, otherwise it is AVAILABLE. */ readonly ipState: string; /** * Ipv4 Subnet CIDR specified whn creating the PrivateIP. */ readonly ipv4subnetCidrAtCreation: string; /** * Whether this private IP is the primary one on the VNIC. Primary private IPs are unassigned and deleted automatically when the VNIC is terminated. Example: `true` */ readonly isPrimary: boolean; readonly isReserved: boolean; /** * Lifetime of the IP address. There are two types of IPv6 IPs: * * Ephemeral * * Reserved */ readonly lifetime: string; readonly privateIpId: string; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the route table the IP address or VNIC will use. For more information, see [Source Based Routing](https://docs.oracle.com/iaas/Content/Network/Tasks/managingroutetables.htm#Overview_of_Routing_for_Your_VCN__source_routing). */ readonly routeTableId: string; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the subnet the VNIC is in. */ readonly subnetId: string; /** * The date and time the private IP was created, in the format defined by [RFC3339](https://tools.ietf.org/html/rfc3339). Example: `2016-08-25T21:10:29.600Z` */ readonly timeCreated: string; /** * Applicable only if the `PrivateIp` object is being used with a VLAN as part of the Oracle Cloud VMware Solution. The `vlanId` is the [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VLAN. See [Vlan](https://docs.cloud.oracle.com/iaas/api/#/en/iaas/latest/Vlan). */ readonly vlanId: string; /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VNIC the private IP is assigned to. The VNIC and private IP must be in the same subnet. However, if the `PrivateIp` object is being used with a VLAN as part of the Oracle Cloud VMware Solution, the `vnicId` is null. */ readonly vnicId: string; } /** * This data source provides details about a specific Private Ip resource in Oracle Cloud Infrastructure Core service. * * Gets the specified private IP. You must specify the object's [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). * Alternatively, you can get the object by using * [ListPrivateIps](https://docs.cloud.oracle.com/iaas/api/#/en/iaas/latest/PrivateIp/ListPrivateIps) * with the private IP address (for example, 10.0.3.3) and subnet [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testPrivateIp = oci.core.getPrivateIp({ * privateIpId: testPrivateIpOciCorePrivateIp.id, * }); * ``` */ export declare function getPrivateIpOutput(args: GetPrivateIpOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getPrivateIp. */ export interface GetPrivateIpOutputArgs { /** * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the private IP or IPv6. */ privateIpId: pulumi.Input; } //# sourceMappingURL=getPrivateIp.d.ts.map