import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This resource provides the Publication resource in Oracle Cloud Infrastructure Marketplace service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/marketplace/latest/Publication * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/marketplace * * Creates a publication of the specified listing type with an optional default package. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testPublication = new oci.marketplace.Publication("test_publication", { * compartmentId: compartmentId, * isAgreementAcknowledged: publicationIsAgreementAcknowledged === "true", * listingType: publicationListingType, * name: publicationName, * packageDetails: { * eulas: [{ * eulaType: publicationPackageDetailsEulaEulaType, * licenseText: publicationPackageDetailsEulaLicenseText, * }], * operatingSystem: { * name: publicationPackageDetailsOperatingSystemName, * }, * packageType: publicationPackageDetailsPackageType, * packageVersion: publicationPackageDetailsPackageVersion, * imageId: testImage.id, * }, * shortDescription: publicationShortDescription, * supportContacts: [{ * email: publicationSupportContactsEmail, * name: publicationSupportContactsName, * phone: publicationSupportContactsPhone, * subject: publicationSupportContactsSubject, * }], * definedTags: { * "Operations.CostCenter": "42", * }, * freeformTags: { * Department: "Finance", * }, * longDescription: publicationLongDescription, * }); * ``` * * ## Import * * Publications can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:Marketplace/publication:Publication test_publication "id" * ``` */ export declare class Publication extends pulumi.CustomResource { /** * Get an existing Publication 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?: PublicationState, opts?: pulumi.CustomResourceOptions): Publication; /** * Returns true if the given object is an instance of Publication. 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 Publication; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment where you want to create the publication. */ readonly compartmentId: pulumi.Output; /** * (Updatable) The defined tags associated with this resource, if any. Each key is predefined and scoped to namespaces. 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) The freeform tags associated with this resource, if any. 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 model for upload data for images and icons. */ readonly icons: pulumi.Output; /** * Whether the publisher acknowledged that they have the right and authority to share the contents of the publication and that they accepted the Oracle terms of use agreements required to create a publication. */ readonly isAgreementAcknowledged: pulumi.Output; /** * The publisher category to which the publication belongs. The publisher category informs where the listing appears for use. */ readonly listingType: pulumi.Output; /** * (Updatable) A long description of the publication to use in the listing. */ readonly longDescription: pulumi.Output; /** * (Updatable) The name of the publication, which is also used in the listing. */ readonly name: pulumi.Output; /** * A base object for creating a publication package. */ readonly packageDetails: pulumi.Output; /** * The listing's package type. */ readonly packageType: pulumi.Output; /** * (Updatable) A short description of the publication to use in the listing. */ readonly shortDescription: pulumi.Output; /** * The lifecycle state of the publication. */ readonly state: pulumi.Output; /** * (Updatable) Contact information for getting support from the publisher for the listing. */ readonly supportContacts: pulumi.Output; /** * The list of operating systems supported by the listing. */ readonly supportedOperatingSystems: pulumi.Output; /** * The system tags associated with this resource, if any. The system tags are set by Oracle Cloud Infrastructure services. Each key is predefined and scoped to namespaces. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{orcl-cloud: {free-tier-retain: true}}` */ readonly systemTags: pulumi.Output<{ [key: string]: string; }>; /** * The date and time the publication was created, expressed in [RFC 3339](https://tools.ietf.org/html/rfc3339) timestamp format. Example: `2016-08-25T21:10:29.600Z` */ readonly timeCreated: pulumi.Output; /** * Create a Publication 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: PublicationArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Publication resources. */ export interface PublicationState { /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment where you want to create the publication. */ compartmentId?: pulumi.Input; /** * (Updatable) The defined tags associated with this resource, if any. Each key is predefined and scoped to namespaces. 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) The freeform tags associated with this resource, if any. 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 model for upload data for images and icons. */ icons?: pulumi.Input[] | undefined>; /** * Whether the publisher acknowledged that they have the right and authority to share the contents of the publication and that they accepted the Oracle terms of use agreements required to create a publication. */ isAgreementAcknowledged?: pulumi.Input; /** * The publisher category to which the publication belongs. The publisher category informs where the listing appears for use. */ listingType?: pulumi.Input; /** * (Updatable) A long description of the publication to use in the listing. */ longDescription?: pulumi.Input; /** * (Updatable) The name of the publication, which is also used in the listing. */ name?: pulumi.Input; /** * A base object for creating a publication package. */ packageDetails?: pulumi.Input; /** * The listing's package type. */ packageType?: pulumi.Input; /** * (Updatable) A short description of the publication to use in the listing. */ shortDescription?: pulumi.Input; /** * The lifecycle state of the publication. */ state?: pulumi.Input; /** * (Updatable) Contact information for getting support from the publisher for the listing. */ supportContacts?: pulumi.Input[] | undefined>; /** * The list of operating systems supported by the listing. */ supportedOperatingSystems?: pulumi.Input[] | undefined>; /** * The system tags associated with this resource, if any. The system tags are set by Oracle Cloud Infrastructure services. Each key is predefined and scoped to namespaces. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{orcl-cloud: {free-tier-retain: true}}` */ systemTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * The date and time the publication was created, expressed in [RFC 3339](https://tools.ietf.org/html/rfc3339) timestamp format. Example: `2016-08-25T21:10:29.600Z` */ timeCreated?: pulumi.Input; } /** * The set of arguments for constructing a Publication resource. */ export interface PublicationArgs { /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment where you want to create the publication. */ compartmentId: pulumi.Input; /** * (Updatable) The defined tags associated with this resource, if any. Each key is predefined and scoped to namespaces. 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) The freeform tags associated with this resource, if any. 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>; /** * Whether the publisher acknowledged that they have the right and authority to share the contents of the publication and that they accepted the Oracle terms of use agreements required to create a publication. */ isAgreementAcknowledged: pulumi.Input; /** * The publisher category to which the publication belongs. The publisher category informs where the listing appears for use. */ listingType: pulumi.Input; /** * (Updatable) A long description of the publication to use in the listing. */ longDescription?: pulumi.Input; /** * (Updatable) The name of the publication, which is also used in the listing. */ name?: pulumi.Input; /** * A base object for creating a publication package. */ packageDetails: pulumi.Input; /** * (Updatable) A short description of the publication to use in the listing. */ shortDescription: pulumi.Input; /** * (Updatable) Contact information for getting support from the publisher for the listing. */ supportContacts: pulumi.Input[]>; } //# sourceMappingURL=publication.d.ts.map