// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** * ## # incus.Profile * * Provides information about an Incus profile. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as incus from "@kiterun/incus"; * import * as incus from "@pulumi/incus"; * * const _default = incus.getProfile({ * name: "default", * }); * const d1 = new incus.Instance("d1", { * profiles: [_default.then(_default => _default.name)], * image: "images:debian/12", * name: "d1", * }); * ``` */ export function getProfile(args: GetProfileArgs, opts?: pulumi.InvokeOptions): Promise { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("incus:index/getProfile:getProfile", { "devices": args.devices, "name": args.name, "project": args.project, "remote": args.remote, }, opts); } /** * A collection of arguments for invoking getProfile. */ export interface GetProfileArgs { /** * Device definition. See reference below. */ devices?: inputs.GetProfileDevice[]; /** * **Required** - Name of the profile. */ name: string; /** * *Optional* - Name of the project where the profile will be stored. */ project?: string; /** * *Optional* - The remote in which the resource was created. If * not provided, the provider's default remote will be used. */ remote?: string; } /** * A collection of values returned by getProfile. */ export interface GetProfileResult { /** * Map of key/value pairs of * [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/). */ readonly config: {[key: string]: string}; readonly description: string; /** * Device definition. See reference below. */ readonly devices?: outputs.GetProfileDevice[]; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; /** * Name of the device. */ readonly name: string; readonly project?: string; readonly remote?: string; } /** * ## # incus.Profile * * Provides information about an Incus profile. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as incus from "@kiterun/incus"; * import * as incus from "@pulumi/incus"; * * const _default = incus.getProfile({ * name: "default", * }); * const d1 = new incus.Instance("d1", { * profiles: [_default.then(_default => _default.name)], * image: "images:debian/12", * name: "d1", * }); * ``` */ export function getProfileOutput(args: GetProfileOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("incus:index/getProfile:getProfile", { "devices": args.devices, "name": args.name, "project": args.project, "remote": args.remote, }, opts); } /** * A collection of arguments for invoking getProfile. */ export interface GetProfileOutputArgs { /** * Device definition. See reference below. */ devices?: pulumi.Input[]>; /** * **Required** - Name of the profile. */ name: pulumi.Input; /** * *Optional* - Name of the project where the profile will be stored. */ project?: pulumi.Input; /** * *Optional* - The remote in which the resource was created. If * not provided, the provider's default remote will be used. */ remote?: pulumi.Input; }