import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This resource provides the Product License resource in Oracle Cloud Infrastructure License Manager service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/licensemanager/latest/ProductLicense * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/license_manager * * Creates a new product license. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testProductLicense = new oci.licensemanager.ProductLicense("test_product_license", { * compartmentId: compartmentId, * displayName: productLicenseDisplayName, * isVendorOracle: productLicenseIsVendorOracle === "true", * licenseUnit: productLicenseLicenseUnit, * definedTags: { * "foo-namespace.bar-key": "value", * }, * freeformTags: { * "bar-key": "value", * }, * images: [{ * listingId: testListing.id, * packageVersion: productLicenseImagesPackageVersion, * }], * vendorName: productLicenseVendorName, * }); * ``` * * ## Import * * ProductLicenses can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:LicenseManager/productLicense:ProductLicense test_product_license "id" * ``` */ export declare class ProductLicense extends pulumi.CustomResource { /** * Get an existing ProductLicense 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?: ProductLicenseState, opts?: pulumi.CustomResourceOptions): ProductLicense; /** * Returns true if the given object is an instance of ProductLicense. 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 ProductLicense; /** * The number of active license records associated with the product license. */ readonly activeLicenseRecordCount: pulumi.Output; /** * The compartment [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) where product licenses are created. */ readonly compartmentId: pulumi.Output; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` */ readonly definedTags: pulumi.Output<{ [key: string]: string; }>; /** * Name of the product license. */ readonly displayName: pulumi.Output; /** * (Updatable) Simple key-value pair that is applied without any predefined name, type, or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ readonly freeformTags: pulumi.Output<{ [key: string]: string; }>; /** * (Updatable) The image details associated with the product license. */ readonly images: pulumi.Output; /** * Specifies whether or not the product license is oversubscribed. */ readonly isOverSubscribed: pulumi.Output; /** * Specifies if the license unit count is unlimited. */ readonly isUnlimited: pulumi.Output; /** * Specifies if the product license vendor is Oracle or a third party. */ readonly isVendorOracle: pulumi.Output; /** * The product license unit. */ readonly licenseUnit: pulumi.Output; /** * The current product license state. */ readonly state: pulumi.Output; /** * The current product license status. */ readonly status: pulumi.Output; /** * Status description for the current product license status. */ readonly statusDescription: pulumi.Output; /** * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}` */ readonly systemTags: pulumi.Output<{ [key: string]: string; }>; /** * The time the product license was created. An [RFC 3339](https://tools.ietf.org/html/rfc3339)-formatted datetime string. */ readonly timeCreated: pulumi.Output; /** * The time the product license was updated. An [RFC 3339](https://tools.ietf.org/html/rfc3339)-formatted datetime string. */ readonly timeUpdated: pulumi.Output; /** * The total number of licenses available for the product license, calculated by adding up all the license counts for active license records associated with the product license. */ readonly totalActiveLicenseUnitCount: pulumi.Output; /** * The number of license records associated with the product license. */ readonly totalLicenseRecordCount: pulumi.Output; /** * The number of license units consumed. Updated after each allocation run. */ readonly totalLicenseUnitsConsumed: pulumi.Output; /** * The product license vendor name, for example: Microsoft, RHEL, and so on. * * ** 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 vendorName: pulumi.Output; /** * Create a ProductLicense 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: ProductLicenseArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering ProductLicense resources. */ export interface ProductLicenseState { /** * The number of active license records associated with the product license. */ activeLicenseRecordCount?: pulumi.Input; /** * The compartment [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) where product licenses are created. */ compartmentId?: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Name of the product license. */ displayName?: pulumi.Input; /** * (Updatable) Simple key-value pair that is applied without any predefined name, type, or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) The image details associated with the product license. */ images?: pulumi.Input[] | undefined>; /** * Specifies whether or not the product license is oversubscribed. */ isOverSubscribed?: pulumi.Input; /** * Specifies if the license unit count is unlimited. */ isUnlimited?: pulumi.Input; /** * Specifies if the product license vendor is Oracle or a third party. */ isVendorOracle?: pulumi.Input; /** * The product license unit. */ licenseUnit?: pulumi.Input; /** * The current product license state. */ state?: pulumi.Input; /** * The current product license status. */ status?: pulumi.Input; /** * Status description for the current product license status. */ statusDescription?: pulumi.Input; /** * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}` */ systemTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * The time the product license was created. An [RFC 3339](https://tools.ietf.org/html/rfc3339)-formatted datetime string. */ timeCreated?: pulumi.Input; /** * The time the product license was updated. An [RFC 3339](https://tools.ietf.org/html/rfc3339)-formatted datetime string. */ timeUpdated?: pulumi.Input; /** * The total number of licenses available for the product license, calculated by adding up all the license counts for active license records associated with the product license. */ totalActiveLicenseUnitCount?: pulumi.Input; /** * The number of license records associated with the product license. */ totalLicenseRecordCount?: pulumi.Input; /** * The number of license units consumed. Updated after each allocation run. */ totalLicenseUnitsConsumed?: pulumi.Input; /** * The product license vendor name, for example: Microsoft, RHEL, and so on. * * ** 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 */ vendorName?: pulumi.Input; } /** * The set of arguments for constructing a ProductLicense resource. */ export interface ProductLicenseArgs { /** * The compartment [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) where product licenses are created. */ compartmentId: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Name of the product license. */ displayName: pulumi.Input; /** * (Updatable) Simple key-value pair that is applied without any predefined name, type, or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) The image details associated with the product license. */ images?: pulumi.Input[] | undefined>; /** * Specifies if the product license vendor is Oracle or a third party. */ isVendorOracle: pulumi.Input; /** * The product license unit. */ licenseUnit: pulumi.Input; /** * The product license vendor name, for example: Microsoft, RHEL, and so on. * * ** 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 */ vendorName?: pulumi.Input; } //# sourceMappingURL=productLicense.d.ts.map