Files
pulumi-incus/sdk/nodejs/getProfile.ts
2025-04-24 21:09:04 -04:00

143 lines
4.0 KiB
TypeScript
Generated

// *** 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<GetProfileResult> {
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<GetProfileResult> {
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<pulumi.Input<inputs.GetProfileDeviceArgs>[]>;
/**
* **Required** - Name of the profile.
*/
name: pulumi.Input<string>;
/**
* *Optional* - Name of the project where the profile will be stored.
*/
project?: pulumi.Input<string>;
/**
* *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used.
*/
remote?: pulumi.Input<string>;
}