import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This data source provides the list of Listings in Oracle Cloud Infrastructure Marketplace service. * * Gets a list of listings from Oracle Cloud Infrastructure Marketplace by searching keywords and * filtering according to listing attributes. * * If you plan to launch an instance from an image listing, you must first subscribe to the listing. When * you launch the instance, you also need to provide the image ID of the listing resource version that you want. * * Subscribing to the listing requires you to first get a signature from the terms of use agreement for the * listing resource version. To get the signature, issue a [GetAppCatalogListingAgreements](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersionAgreements/GetAppCatalogListingAgreements) API call. * The [AppCatalogListingResourceVersionAgreements](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersionAgreements) object, including * its signature, is returned in the response. With the signature for the terms of use agreement for the desired * listing resource version, create a subscription by issuing a * [CreateAppCatalogSubscription](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogSubscription/CreateAppCatalogSubscription) API call. * * To get the image ID to launch an instance, issue a [GetAppCatalogListingResourceVersion](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersion/GetAppCatalogListingResourceVersion) API call. * Lastly, to launch the instance, use the image ID of the listing resource version to issue a [LaunchInstance](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Instance/LaunchInstance) API call. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testListings = oci.marketplace.getListings({ * categories: listingCategory, * compartmentId: compartmentId, * imageId: testImage.id, * isFeatured: listingIsFeatured === "true", * listingId: testListing.id, * listingTypes: listingListingTypes, * names: listingName, * operatingSystems: listingOperatingSystems, * packageType: listingPackageType, * pricings: listingPricing, * publisherId: testPublisher.id, * }); * ``` */ export declare function getListings(args?: GetListingsArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getListings. */ export interface GetListingsArgs { /** * Name of the product category or categories. If you specify multiple categories, then Marketplace returns any listing with one or more matching categories. */ categories?: string[]; /** * The unique identifier for the compartment. It is mandatory when used in non-commercial realms. */ compartmentId?: string; filters?: inputs.Marketplace.GetListingsFilter[]; /** * The image identifier of the listing. */ imageId?: string; /** * Indicates whether to show only featured listings. If this is set to `false` or is omitted, then all listings will be returned. */ isFeatured?: boolean; /** * The unique identifier for the listing. */ listingId?: string; /** * The type of the listing. */ listingTypes?: string[]; /** * The name of the listing. */ names?: string[]; /** * The operating system of the listing. */ operatingSystems?: string[]; /** * A filter to return only packages that match the given package type exactly. */ packageType?: string; /** * Name of the pricing type. If multiple pricing types are provided, then any listing with one or more matching pricing models will be returned. */ pricings?: string[]; /** * Limit results to just this publisher. */ publisherId?: string; } /** * A collection of values returned by getListings. */ export interface GetListingsResult { readonly categories?: string[]; readonly compartmentId?: string; readonly filters?: outputs.Marketplace.GetListingsFilter[]; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; readonly imageId?: string; /** * Indicates whether the listing is included in Featured Listings. */ readonly isFeatured?: boolean; readonly listingId?: string; readonly listingTypes?: string[]; /** * The list of listings. */ readonly listings: outputs.Marketplace.GetListingsListing[]; /** * Text that describes the resource. */ readonly names?: string[]; readonly operatingSystems?: string[]; /** * The listing's package type. */ readonly packageType?: string; readonly pricings?: string[]; readonly publisherId?: string; } /** * This data source provides the list of Listings in Oracle Cloud Infrastructure Marketplace service. * * Gets a list of listings from Oracle Cloud Infrastructure Marketplace by searching keywords and * filtering according to listing attributes. * * If you plan to launch an instance from an image listing, you must first subscribe to the listing. When * you launch the instance, you also need to provide the image ID of the listing resource version that you want. * * Subscribing to the listing requires you to first get a signature from the terms of use agreement for the * listing resource version. To get the signature, issue a [GetAppCatalogListingAgreements](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersionAgreements/GetAppCatalogListingAgreements) API call. * The [AppCatalogListingResourceVersionAgreements](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersionAgreements) object, including * its signature, is returned in the response. With the signature for the terms of use agreement for the desired * listing resource version, create a subscription by issuing a * [CreateAppCatalogSubscription](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogSubscription/CreateAppCatalogSubscription) API call. * * To get the image ID to launch an instance, issue a [GetAppCatalogListingResourceVersion](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersion/GetAppCatalogListingResourceVersion) API call. * Lastly, to launch the instance, use the image ID of the listing resource version to issue a [LaunchInstance](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Instance/LaunchInstance) API call. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testListings = oci.marketplace.getListings({ * categories: listingCategory, * compartmentId: compartmentId, * imageId: testImage.id, * isFeatured: listingIsFeatured === "true", * listingId: testListing.id, * listingTypes: listingListingTypes, * names: listingName, * operatingSystems: listingOperatingSystems, * packageType: listingPackageType, * pricings: listingPricing, * publisherId: testPublisher.id, * }); * ``` */ export declare function getListingsOutput(args?: GetListingsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getListings. */ export interface GetListingsOutputArgs { /** * Name of the product category or categories. If you specify multiple categories, then Marketplace returns any listing with one or more matching categories. */ categories?: pulumi.Input[] | undefined>; /** * The unique identifier for the compartment. It is mandatory when used in non-commercial realms. */ compartmentId?: pulumi.Input; filters?: pulumi.Input[] | undefined>; /** * The image identifier of the listing. */ imageId?: pulumi.Input; /** * Indicates whether to show only featured listings. If this is set to `false` or is omitted, then all listings will be returned. */ isFeatured?: pulumi.Input; /** * The unique identifier for the listing. */ listingId?: pulumi.Input; /** * The type of the listing. */ listingTypes?: pulumi.Input[] | undefined>; /** * The name of the listing. */ names?: pulumi.Input[] | undefined>; /** * The operating system of the listing. */ operatingSystems?: pulumi.Input[] | undefined>; /** * A filter to return only packages that match the given package type exactly. */ packageType?: pulumi.Input; /** * Name of the pricing type. If multiple pricing types are provided, then any listing with one or more matching pricing models will be returned. */ pricings?: pulumi.Input[] | undefined>; /** * Limit results to just this publisher. */ publisherId?: pulumi.Input; } //# sourceMappingURL=getListings.d.ts.map