style: format with tabs

This commit is contained in:
2025-12-08 11:14:14 -05:00
parent c4445aa92f
commit 54f0fdb6c9
48 changed files with 7088 additions and 6580 deletions

7
sdk/nodejs/.oxfmtrc.json generated Normal file
View File

@@ -0,0 +1,7 @@
{
"$schema": "./node_modules/oxfmt/configuration_schema.json",
// Use 80 if migrating from Prettier; 100 is the Oxfmt default!
"printWidth": 100,
"useTabs": true,
"tabWidth": 4
}

View File

@@ -10,183 +10,192 @@ import * as utilities from "./utilities";
* Manages an Incus certificate. * Manages an Incus certificate.
*/ */
export class Certificate extends pulumi.CustomResource { export class Certificate extends pulumi.CustomResource {
/** /**
* Get an existing Certificate resource's state with the given name, ID, and optional extra * Get an existing Certificate resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: CertificateState, opts?: pulumi.CustomResourceOptions): Certificate { public static get(
return new Certificate(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: CertificateState,
opts?: pulumi.CustomResourceOptions,
): Certificate {
return new Certificate(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/certificate:Certificate'; public static readonly __pulumiType = "incus:index/certificate:Certificate";
/** /**
* Returns true if the given object is an instance of Certificate. This is designed to work even * Returns true if the given object is an instance of Certificate. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is Certificate { public static isInstance(obj: any): obj is Certificate {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === Certificate.__pulumiType; return obj["__pulumiType"] === Certificate.__pulumiType;
} }
/** /**
* **Required** - The certificate. * **Required** - The certificate.
*/ */
declare public readonly certificate: pulumi.Output<string>; declare public readonly certificate: pulumi.Output<string>;
/** /**
* *Optional* - Description of the certificate. * *Optional* - Description of the certificate.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* The fingerprint of the certificate. * The fingerprint of the certificate.
*/ */
declare public /*out*/ readonly fingerprint: pulumi.Output<string>; declare public readonly /*out*/ fingerprint: pulumi.Output<string>;
/** /**
* **Required** - Name of the certificate. * **Required** - Name of the certificate.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* *Optional* - List of projects to restrict the certificate to. * *Optional* - List of projects to restrict the certificate to.
*/ */
declare public readonly projects: pulumi.Output<string[]>; declare public readonly projects: pulumi.Output<string[]>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* *Optional* - Restrict the certificate to one or more projects. * *Optional* - Restrict the certificate to one or more projects.
*/ */
declare public readonly restricted: pulumi.Output<boolean>; declare public readonly restricted: pulumi.Output<boolean>;
/** /**
* *Optional* - The type of certificate to create. Can be one of: client, * *Optional* - The type of certificate to create. Can be one of: client,
* or metrics. If no type is specified, a client certificate is created. * or metrics. If no type is specified, a client certificate is created.
*/ */
declare public readonly type: pulumi.Output<string>; declare public readonly type: pulumi.Output<string>;
/** /**
* Create a Certificate resource with the given unique name, arguments, and options. * Create a Certificate resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: CertificateArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: CertificateArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: CertificateArgs | CertificateState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: CertificateArgs | CertificateState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as CertificateState | undefined; ) {
resourceInputs["certificate"] = state?.certificate; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["fingerprint"] = state?.fingerprint; if (opts.id) {
resourceInputs["name"] = state?.name; const state = argsOrState as CertificateState | undefined;
resourceInputs["projects"] = state?.projects; resourceInputs["certificate"] = state?.certificate;
resourceInputs["remote"] = state?.remote; resourceInputs["description"] = state?.description;
resourceInputs["restricted"] = state?.restricted; resourceInputs["fingerprint"] = state?.fingerprint;
resourceInputs["type"] = state?.type; resourceInputs["name"] = state?.name;
} else { resourceInputs["projects"] = state?.projects;
const args = argsOrState as CertificateArgs | undefined; resourceInputs["remote"] = state?.remote;
if (args?.certificate === undefined && !opts.urn) { resourceInputs["restricted"] = state?.restricted;
throw new Error("Missing required property 'certificate'"); resourceInputs["type"] = state?.type;
} } else {
if (args?.name === undefined && !opts.urn) { const args = argsOrState as CertificateArgs | undefined;
throw new Error("Missing required property 'name'"); if (args?.certificate === undefined && !opts.urn) {
} throw new Error("Missing required property 'certificate'");
resourceInputs["certificate"] = args?.certificate; }
resourceInputs["description"] = args?.description; if (args?.name === undefined && !opts.urn) {
resourceInputs["name"] = args?.name; throw new Error("Missing required property 'name'");
resourceInputs["projects"] = args?.projects; }
resourceInputs["remote"] = args?.remote; resourceInputs["certificate"] = args?.certificate;
resourceInputs["restricted"] = args?.restricted; resourceInputs["description"] = args?.description;
resourceInputs["type"] = args?.type; resourceInputs["name"] = args?.name;
resourceInputs["fingerprint"] = undefined /*out*/; resourceInputs["projects"] = args?.projects;
} resourceInputs["remote"] = args?.remote;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["restricted"] = args?.restricted;
super(Certificate.__pulumiType, name, resourceInputs, opts); resourceInputs["type"] = args?.type;
} resourceInputs["fingerprint"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(Certificate.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering Certificate resources. * Input properties used for looking up and filtering Certificate resources.
*/ */
export interface CertificateState { export interface CertificateState {
/** /**
* **Required** - The certificate. * **Required** - The certificate.
*/ */
certificate?: pulumi.Input<string>; certificate?: pulumi.Input<string>;
/** /**
* *Optional* - Description of the certificate. * *Optional* - Description of the certificate.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* The fingerprint of the certificate. * The fingerprint of the certificate.
*/ */
fingerprint?: pulumi.Input<string>; fingerprint?: pulumi.Input<string>;
/** /**
* **Required** - Name of the certificate. * **Required** - Name of the certificate.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - List of projects to restrict the certificate to. * *Optional* - List of projects to restrict the certificate to.
*/ */
projects?: pulumi.Input<pulumi.Input<string>[]>; projects?: pulumi.Input<pulumi.Input<string>[]>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Restrict the certificate to one or more projects. * *Optional* - Restrict the certificate to one or more projects.
*/ */
restricted?: pulumi.Input<boolean>; restricted?: pulumi.Input<boolean>;
/** /**
* *Optional* - The type of certificate to create. Can be one of: client, * *Optional* - The type of certificate to create. Can be one of: client,
* or metrics. If no type is specified, a client certificate is created. * or metrics. If no type is specified, a client certificate is created.
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a Certificate resource. * The set of arguments for constructing a Certificate resource.
*/ */
export interface CertificateArgs { export interface CertificateArgs {
/** /**
* **Required** - The certificate. * **Required** - The certificate.
*/ */
certificate: pulumi.Input<string>; certificate: pulumi.Input<string>;
/** /**
* *Optional* - Description of the certificate. * *Optional* - Description of the certificate.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the certificate. * **Required** - Name of the certificate.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - List of projects to restrict the certificate to. * *Optional* - List of projects to restrict the certificate to.
*/ */
projects?: pulumi.Input<pulumi.Input<string>[]>; projects?: pulumi.Input<pulumi.Input<string>[]>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Restrict the certificate to one or more projects. * *Optional* - Restrict the certificate to one or more projects.
*/ */
restricted?: pulumi.Input<boolean>; restricted?: pulumi.Input<boolean>;
/** /**
* *Optional* - The type of certificate to create. Can be one of: client, * *Optional* - The type of certificate to create. Can be one of: client,
* or metrics. If no type is specified, a client certificate is created. * or metrics. If no type is specified, a client certificate is created.
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }

View File

@@ -5,128 +5,137 @@ import * as pulumi from "@pulumi/pulumi";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class ClusterGroup extends pulumi.CustomResource { export class ClusterGroup extends pulumi.CustomResource {
/** /**
* Get an existing ClusterGroup resource's state with the given name, ID, and optional extra * Get an existing ClusterGroup resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ClusterGroupState, opts?: pulumi.CustomResourceOptions): ClusterGroup { public static get(
return new ClusterGroup(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: ClusterGroupState,
opts?: pulumi.CustomResourceOptions,
): ClusterGroup {
return new ClusterGroup(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/clusterGroup:ClusterGroup'; public static readonly __pulumiType = "incus:index/clusterGroup:ClusterGroup";
/** /**
* Returns true if the given object is an instance of ClusterGroup. This is designed to work even * Returns true if the given object is an instance of ClusterGroup. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is ClusterGroup { public static isInstance(obj: any): obj is ClusterGroup {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === ClusterGroup.__pulumiType; return obj["__pulumiType"] === ClusterGroup.__pulumiType;
} }
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [cluster group config settings](https://linuxcontainers.org/incus/docs/main/howto/cluster_groups/#configuration-options). * [cluster group config settings](https://linuxcontainers.org/incus/docs/main/howto/cluster_groups/#configuration-options).
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of the cluster group. * *Optional* - Description of the cluster group.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* **Required** - Name of the cluster group. * **Required** - Name of the cluster group.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* Create a ClusterGroup resource with the given unique name, arguments, and options. * Create a ClusterGroup resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: ClusterGroupArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: ClusterGroupArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: ClusterGroupArgs | ClusterGroupState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: ClusterGroupArgs | ClusterGroupState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as ClusterGroupState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["name"] = state?.name; if (opts.id) {
resourceInputs["remote"] = state?.remote; const state = argsOrState as ClusterGroupState | undefined;
} else { resourceInputs["config"] = state?.config;
const args = argsOrState as ClusterGroupArgs | undefined; resourceInputs["description"] = state?.description;
if (args?.name === undefined && !opts.urn) { resourceInputs["name"] = state?.name;
throw new Error("Missing required property 'name'"); resourceInputs["remote"] = state?.remote;
} } else {
resourceInputs["config"] = args?.config; const args = argsOrState as ClusterGroupArgs | undefined;
resourceInputs["description"] = args?.description; if (args?.name === undefined && !opts.urn) {
resourceInputs["name"] = args?.name; throw new Error("Missing required property 'name'");
resourceInputs["remote"] = args?.remote; }
} resourceInputs["config"] = args?.config;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["description"] = args?.description;
super(ClusterGroup.__pulumiType, name, resourceInputs, opts); resourceInputs["name"] = args?.name;
} resourceInputs["remote"] = args?.remote;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(ClusterGroup.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering ClusterGroup resources. * Input properties used for looking up and filtering ClusterGroup resources.
*/ */
export interface ClusterGroupState { export interface ClusterGroupState {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [cluster group config settings](https://linuxcontainers.org/incus/docs/main/howto/cluster_groups/#configuration-options). * [cluster group config settings](https://linuxcontainers.org/incus/docs/main/howto/cluster_groups/#configuration-options).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the cluster group. * *Optional* - Description of the cluster group.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the cluster group. * **Required** - Name of the cluster group.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a ClusterGroup resource. * The set of arguments for constructing a ClusterGroup resource.
*/ */
export interface ClusterGroupArgs { export interface ClusterGroupArgs {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [cluster group config settings](https://linuxcontainers.org/incus/docs/main/howto/cluster_groups/#configuration-options). * [cluster group config settings](https://linuxcontainers.org/incus/docs/main/howto/cluster_groups/#configuration-options).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the cluster group. * *Optional* - Description of the cluster group.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the cluster group. * **Required** - Name of the cluster group.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

View File

@@ -5,114 +5,123 @@ import * as pulumi from "@pulumi/pulumi";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class ClusterGroupMember extends pulumi.CustomResource { export class ClusterGroupMember extends pulumi.CustomResource {
/** /**
* Get an existing ClusterGroupMember resource's state with the given name, ID, and optional extra * Get an existing ClusterGroupMember resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ClusterGroupMemberState, opts?: pulumi.CustomResourceOptions): ClusterGroupMember { public static get(
return new ClusterGroupMember(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: ClusterGroupMemberState,
opts?: pulumi.CustomResourceOptions,
): ClusterGroupMember {
return new ClusterGroupMember(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/clusterGroupMember:ClusterGroupMember'; public static readonly __pulumiType = "incus:index/clusterGroupMember:ClusterGroupMember";
/** /**
* Returns true if the given object is an instance of ClusterGroupMember. This is designed to work even * Returns true if the given object is an instance of ClusterGroupMember. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is ClusterGroupMember { public static isInstance(obj: any): obj is ClusterGroupMember {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === ClusterGroupMember.__pulumiType; return obj["__pulumiType"] === ClusterGroupMember.__pulumiType;
} }
/** /**
* **Required** - Name of the cluster group. * **Required** - Name of the cluster group.
*/ */
declare public readonly clusterGroup: pulumi.Output<string>; declare public readonly clusterGroup: pulumi.Output<string>;
/** /**
* **Required** - Name of the cluster group member. * **Required** - Name of the cluster group member.
*/ */
declare public readonly member: pulumi.Output<string>; declare public readonly member: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* Create a ClusterGroupMember resource with the given unique name, arguments, and options. * Create a ClusterGroupMember resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: ClusterGroupMemberArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: ClusterGroupMemberArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: ClusterGroupMemberArgs | ClusterGroupMemberState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: ClusterGroupMemberArgs | ClusterGroupMemberState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as ClusterGroupMemberState | undefined; ) {
resourceInputs["clusterGroup"] = state?.clusterGroup; let resourceInputs: pulumi.Inputs = {};
resourceInputs["member"] = state?.member; opts = opts || {};
resourceInputs["remote"] = state?.remote; if (opts.id) {
} else { const state = argsOrState as ClusterGroupMemberState | undefined;
const args = argsOrState as ClusterGroupMemberArgs | undefined; resourceInputs["clusterGroup"] = state?.clusterGroup;
if (args?.clusterGroup === undefined && !opts.urn) { resourceInputs["member"] = state?.member;
throw new Error("Missing required property 'clusterGroup'"); resourceInputs["remote"] = state?.remote;
} } else {
if (args?.member === undefined && !opts.urn) { const args = argsOrState as ClusterGroupMemberArgs | undefined;
throw new Error("Missing required property 'member'"); if (args?.clusterGroup === undefined && !opts.urn) {
} throw new Error("Missing required property 'clusterGroup'");
resourceInputs["clusterGroup"] = args?.clusterGroup; }
resourceInputs["member"] = args?.member; if (args?.member === undefined && !opts.urn) {
resourceInputs["remote"] = args?.remote; throw new Error("Missing required property 'member'");
} }
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["clusterGroup"] = args?.clusterGroup;
super(ClusterGroupMember.__pulumiType, name, resourceInputs, opts); resourceInputs["member"] = args?.member;
} resourceInputs["remote"] = args?.remote;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(ClusterGroupMember.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering ClusterGroupMember resources. * Input properties used for looking up and filtering ClusterGroupMember resources.
*/ */
export interface ClusterGroupMemberState { export interface ClusterGroupMemberState {
/** /**
* **Required** - Name of the cluster group. * **Required** - Name of the cluster group.
*/ */
clusterGroup?: pulumi.Input<string>; clusterGroup?: pulumi.Input<string>;
/** /**
* **Required** - Name of the cluster group member. * **Required** - Name of the cluster group member.
*/ */
member?: pulumi.Input<string>; member?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a ClusterGroupMember resource. * The set of arguments for constructing a ClusterGroupMember resource.
*/ */
export interface ClusterGroupMemberArgs { export interface ClusterGroupMemberArgs {
/** /**
* **Required** - Name of the cluster group. * **Required** - Name of the cluster group.
*/ */
clusterGroup: pulumi.Input<string>; clusterGroup: pulumi.Input<string>;
/** /**
* **Required** - Name of the cluster group member. * **Required** - Name of the cluster group member.
*/ */
member: pulumi.Input<string>; member: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

View File

@@ -14,10 +14,10 @@ const __config = new pulumi.Config("incus");
*/ */
export declare const acceptRemoteCertificate: boolean | undefined; export declare const acceptRemoteCertificate: boolean | undefined;
Object.defineProperty(exports, "acceptRemoteCertificate", { Object.defineProperty(exports, "acceptRemoteCertificate", {
get() { get() {
return __config.getObject<boolean>("acceptRemoteCertificate"); return __config.getObject<boolean>("acceptRemoteCertificate");
}, },
enumerable: true, enumerable: true,
}); });
/** /**
@@ -25,10 +25,10 @@ Object.defineProperty(exports, "acceptRemoteCertificate", {
*/ */
export declare const configDir: string | undefined; export declare const configDir: string | undefined;
Object.defineProperty(exports, "configDir", { Object.defineProperty(exports, "configDir", {
get() { get() {
return __config.get("configDir"); return __config.get("configDir");
}, },
enumerable: true, enumerable: true,
}); });
/** /**
@@ -36,10 +36,10 @@ Object.defineProperty(exports, "configDir", {
*/ */
export declare const defaultRemote: string | undefined; export declare const defaultRemote: string | undefined;
Object.defineProperty(exports, "defaultRemote", { Object.defineProperty(exports, "defaultRemote", {
get() { get() {
return __config.get("defaultRemote"); return __config.get("defaultRemote");
}, },
enumerable: true, enumerable: true,
}); });
/** /**
@@ -47,10 +47,10 @@ Object.defineProperty(exports, "defaultRemote", {
*/ */
export declare const generateClientCertificates: boolean | undefined; export declare const generateClientCertificates: boolean | undefined;
Object.defineProperty(exports, "generateClientCertificates", { Object.defineProperty(exports, "generateClientCertificates", {
get() { get() {
return __config.getObject<boolean>("generateClientCertificates"); return __config.getObject<boolean>("generateClientCertificates");
}, },
enumerable: true, enumerable: true,
}); });
/** /**
@@ -58,10 +58,10 @@ Object.defineProperty(exports, "generateClientCertificates", {
*/ */
export declare const project: string | undefined; export declare const project: string | undefined;
Object.defineProperty(exports, "project", { Object.defineProperty(exports, "project", {
get() { get() {
return __config.get("project"); return __config.get("project");
}, },
enumerable: true, enumerable: true,
}); });
/** /**
@@ -69,9 +69,8 @@ Object.defineProperty(exports, "project", {
*/ */
export declare const remotes: outputs.config.Remotes[] | undefined; export declare const remotes: outputs.config.Remotes[] | undefined;
Object.defineProperty(exports, "remotes", { Object.defineProperty(exports, "remotes", {
get() { get() {
return __config.getObject<outputs.config.Remotes[]>("remotes"); return __config.getObject<outputs.config.Remotes[]>("remotes");
}, },
enumerable: true, enumerable: true,
}); });

View File

@@ -2,7 +2,6 @@
// *** Do not edit by hand unless you're certain you know what you are doing! *** // *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi"; import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output"; import * as outputs from "./types/output";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
@@ -58,43 +57,50 @@ import * as utilities from "./utilities";
* *
* * For non-clustered setups, the `members` attribute will be `null`. * * For non-clustered setups, the `members` attribute will be `null`.
*/ */
export function getCluster(args?: GetClusterArgs, opts?: pulumi.InvokeOptions): Promise<GetClusterResult> { export function getCluster(
args = args || {}; args?: GetClusterArgs,
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); opts?: pulumi.InvokeOptions,
return pulumi.runtime.invoke("incus:index/getCluster:getCluster", { ): Promise<GetClusterResult> {
"remote": args.remote, args = args || {};
}, opts); opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
return pulumi.runtime.invoke(
"incus:index/getCluster:getCluster",
{
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getCluster. * A collection of arguments for invoking getCluster.
*/ */
export interface GetClusterArgs { export interface GetClusterArgs {
/** /**
* *Optional* - The remote for which the Incus cluster information * *Optional* - The remote for which the Incus cluster information
* should be queried. If not provided, the provider's default remote will be used. * should be queried. If not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
} }
/** /**
* A collection of values returned by getCluster. * A collection of values returned by getCluster.
*/ */
export interface GetClusterResult { export interface GetClusterResult {
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
/** /**
* Whether this is a clustered setup. * Whether this is a clustered setup.
*/ */
readonly isClustered: boolean; readonly isClustered: boolean;
/** /**
* A map of cluster members. The key is the member name and the value * A map of cluster members. The key is the member name and the value
* is a member object. See reference below. * is a member object. See reference below.
*/ */
readonly members: {[key: string]: outputs.GetClusterMembers}; readonly members: { [key: string]: outputs.GetClusterMembers };
readonly remote?: string; readonly remote?: string;
} }
/** /**
* ## # incus.getCluster * ## # incus.getCluster
@@ -148,21 +154,28 @@ export interface GetClusterResult {
* *
* * For non-clustered setups, the `members` attribute will be `null`. * * For non-clustered setups, the `members` attribute will be `null`.
*/ */
export function getClusterOutput(args?: GetClusterOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetClusterResult> { export function getClusterOutput(
args = args || {}; args?: GetClusterOutputArgs,
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); opts?: pulumi.InvokeOutputOptions,
return pulumi.runtime.invokeOutput("incus:index/getCluster:getCluster", { ): pulumi.Output<GetClusterResult> {
"remote": args.remote, args = args || {};
}, opts); opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
return pulumi.runtime.invokeOutput(
"incus:index/getCluster:getCluster",
{
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getCluster. * A collection of arguments for invoking getCluster.
*/ */
export interface GetClusterOutputArgs { export interface GetClusterOutputArgs {
/** /**
* *Optional* - The remote for which the Incus cluster information * *Optional* - The remote for which the Incus cluster information
* should be queried. If not provided, the provider's default remote will be used. * should be queried. If not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

194
sdk/nodejs/getImage.ts generated
View File

@@ -24,72 +24,79 @@ import * as utilities from "./utilities";
* }); * });
* ``` * ```
*/ */
export function getImage(args?: GetImageArgs, opts?: pulumi.InvokeOptions): Promise<GetImageResult> { export function getImage(
args = args || {}; args?: GetImageArgs,
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); opts?: pulumi.InvokeOptions,
return pulumi.runtime.invoke("incus:index/getImage:getImage", { ): Promise<GetImageResult> {
"architecture": args.architecture, args = args || {};
"fingerprint": args.fingerprint, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"name": args.name, return pulumi.runtime.invoke(
"project": args.project, "incus:index/getImage:getImage",
"remote": args.remote, {
"type": args.type, architecture: args.architecture,
}, opts); fingerprint: args.fingerprint,
name: args.name,
project: args.project,
remote: args.remote,
type: args.type,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getImage. * A collection of arguments for invoking getImage.
*/ */
export interface GetImageArgs { export interface GetImageArgs {
/** /**
* *Optional* - The image architecture (e.g. x86_64, aarch64). See [Architectures](https://linuxcontainers.org/incus/docs/main/architectures/) for all possible values. * *Optional* - The image architecture (e.g. x86_64, aarch64). See [Architectures](https://linuxcontainers.org/incus/docs/main/architectures/) for all possible values.
*/ */
architecture?: string; architecture?: string;
/** /**
* *Optional* - Fingerprint of the image. * *Optional* - Fingerprint of the image.
*/ */
fingerprint?: string; fingerprint?: string;
/** /**
* *Optional* - Name of the image. * *Optional* - Name of the image.
*/ */
name?: string; name?: string;
/** /**
* *Optional* - Name of the project where the image is stored. * *Optional* - Name of the project where the image is stored.
*/ */
project?: string; project?: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
/** /**
* *Optional* - Type of image. Must be one of `container` or `virtual-machine`. * *Optional* - Type of image. Must be one of `container` or `virtual-machine`.
*/ */
type?: string; type?: string;
} }
/** /**
* A collection of values returned by getImage. * A collection of values returned by getImage.
*/ */
export interface GetImageResult { export interface GetImageResult {
/** /**
* The list of aliases for the image. * The list of aliases for the image.
*/ */
readonly aliases: string[]; readonly aliases: string[];
readonly architecture: string; readonly architecture: string;
/** /**
* The datetime of image creation, in Unix time. * The datetime of image creation, in Unix time.
*/ */
readonly createdAt: number; readonly createdAt: number;
readonly fingerprint: string; readonly fingerprint: string;
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
readonly name?: string; readonly name?: string;
readonly project?: string; readonly project?: string;
readonly remote?: string; readonly remote?: string;
readonly type: string; readonly type: string;
} }
/** /**
* ## # incus.Image * ## # incus.Image
@@ -111,46 +118,53 @@ export interface GetImageResult {
* }); * });
* ``` * ```
*/ */
export function getImageOutput(args?: GetImageOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetImageResult> { export function getImageOutput(
args = args || {}; args?: GetImageOutputArgs,
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); opts?: pulumi.InvokeOutputOptions,
return pulumi.runtime.invokeOutput("incus:index/getImage:getImage", { ): pulumi.Output<GetImageResult> {
"architecture": args.architecture, args = args || {};
"fingerprint": args.fingerprint, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"name": args.name, return pulumi.runtime.invokeOutput(
"project": args.project, "incus:index/getImage:getImage",
"remote": args.remote, {
"type": args.type, architecture: args.architecture,
}, opts); fingerprint: args.fingerprint,
name: args.name,
project: args.project,
remote: args.remote,
type: args.type,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getImage. * A collection of arguments for invoking getImage.
*/ */
export interface GetImageOutputArgs { export interface GetImageOutputArgs {
/** /**
* *Optional* - The image architecture (e.g. x86_64, aarch64). See [Architectures](https://linuxcontainers.org/incus/docs/main/architectures/) for all possible values. * *Optional* - The image architecture (e.g. x86_64, aarch64). See [Architectures](https://linuxcontainers.org/incus/docs/main/architectures/) for all possible values.
*/ */
architecture?: pulumi.Input<string>; architecture?: pulumi.Input<string>;
/** /**
* *Optional* - Fingerprint of the image. * *Optional* - Fingerprint of the image.
*/ */
fingerprint?: pulumi.Input<string>; fingerprint?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the image. * *Optional* - Name of the image.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the image is stored. * *Optional* - Name of the project where the image is stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Type of image. Must be one of `container` or `virtual-machine`. * *Optional* - Type of image. Must be one of `container` or `virtual-machine`.
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }

View File

@@ -24,136 +24,143 @@ import * as utilities from "./utilities";
* export const instanceName = _this.then(_this => _this.name); * export const instanceName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getInstance(args: GetInstanceArgs, opts?: pulumi.InvokeOptions): Promise<GetInstanceResult> { export function getInstance(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetInstanceArgs,
return pulumi.runtime.invoke("incus:index/getInstance:getInstance", { opts?: pulumi.InvokeOptions,
"architecture": args.architecture, ): Promise<GetInstanceResult> {
"description": args.description, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"devices": args.devices, return pulumi.runtime.invoke(
"ephemeral": args.ephemeral, "incus:index/getInstance:getInstance",
"location": args.location, {
"name": args.name, architecture: args.architecture,
"profiles": args.profiles, description: args.description,
"project": args.project, devices: args.devices,
"remote": args.remote, ephemeral: args.ephemeral,
"stateful": args.stateful, location: args.location,
"status": args.status, name: args.name,
"type": args.type, profiles: args.profiles,
}, opts); project: args.project,
remote: args.remote,
stateful: args.stateful,
status: args.status,
type: args.type,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getInstance. * A collection of arguments for invoking getInstance.
*/ */
export interface GetInstanceArgs { export interface GetInstanceArgs {
/** /**
* Architecture name. * Architecture name.
*/ */
architecture?: string; architecture?: string;
/** /**
* Description of the instance. * Description of the instance.
*/ */
description?: string; description?: string;
/** /**
* Device definitions. See reference below. * Device definitions. See reference below.
*/ */
devices?: inputs.GetInstanceDevice[]; devices?: inputs.GetInstanceDevice[];
/** /**
* Whether the instance is ephemeral (deleted on shutdown). * Whether the instance is ephemeral (deleted on shutdown).
*/ */
ephemeral?: boolean; ephemeral?: boolean;
/** /**
* Location of the instance. * Location of the instance.
*/ */
location?: string; location?: string;
/** /**
* **Required** - Name of the instance. * **Required** - Name of the instance.
*/ */
name: string; name: string;
/** /**
* List of profiles applied to the instance. * List of profiles applied to the instance.
*/ */
profiles?: string[]; profiles?: string[];
/** /**
* *Optional* - Name of the project where the instance is be stored. * *Optional* - Name of the project where the instance is be stored.
*/ */
project?: string; project?: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
/** /**
* Whether the instance is stateful. * Whether the instance is stateful.
*/ */
stateful?: boolean; stateful?: boolean;
/** /**
* Status of the instance. * Status of the instance.
*/ */
status?: string; status?: string;
/** /**
* Type of the device Must be one of none, disk, nic, * Type of the device Must be one of none, disk, nic,
* unix-char, unix-block, usb, gpu, infiniband, proxy, unix-hotplug, tpm, pci. * unix-char, unix-block, usb, gpu, infiniband, proxy, unix-hotplug, tpm, pci.
*/ */
type?: string; type?: string;
} }
/** /**
* A collection of values returned by getInstance. * A collection of values returned by getInstance.
*/ */
export interface GetInstanceResult { export interface GetInstanceResult {
/** /**
* Architecture name. * Architecture name.
*/ */
readonly architecture: string; readonly architecture: string;
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
* [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/) * [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/)
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Description of the instance. * Description of the instance.
*/ */
readonly description: string; readonly description: string;
/** /**
* Device definitions. See reference below. * Device definitions. See reference below.
*/ */
readonly devices?: outputs.GetInstanceDevice[]; readonly devices?: outputs.GetInstanceDevice[];
/** /**
* Whether the instance is ephemeral (deleted on shutdown). * Whether the instance is ephemeral (deleted on shutdown).
*/ */
readonly ephemeral: boolean; readonly ephemeral: boolean;
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
/** /**
* Location of the instance. * Location of the instance.
*/ */
readonly location: string; readonly location: string;
/** /**
* Name of the device. * Name of the device.
*/ */
readonly name: string; readonly name: string;
/** /**
* List of profiles applied to the instance. * List of profiles applied to the instance.
*/ */
readonly profiles: string[]; readonly profiles: string[];
readonly project?: string; readonly project?: string;
readonly remote?: string; readonly remote?: string;
/** /**
* Whether the instance is stateful. * Whether the instance is stateful.
*/ */
readonly stateful: boolean; readonly stateful: boolean;
/** /**
* Status of the instance. * Status of the instance.
*/ */
readonly status: string; readonly status: string;
/** /**
* Type of the device Must be one of none, disk, nic, * Type of the device Must be one of none, disk, nic,
* unix-char, unix-block, usb, gpu, infiniband, proxy, unix-hotplug, tpm, pci. * unix-char, unix-block, usb, gpu, infiniband, proxy, unix-hotplug, tpm, pci.
*/ */
readonly type: string; readonly type: string;
} }
/** /**
* ## # incus.Instance * ## # incus.Instance
@@ -173,76 +180,83 @@ export interface GetInstanceResult {
* export const instanceName = _this.then(_this => _this.name); * export const instanceName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getInstanceOutput(args: GetInstanceOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetInstanceResult> { export function getInstanceOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetInstanceOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getInstance:getInstance", { opts?: pulumi.InvokeOutputOptions,
"architecture": args.architecture, ): pulumi.Output<GetInstanceResult> {
"description": args.description, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"devices": args.devices, return pulumi.runtime.invokeOutput(
"ephemeral": args.ephemeral, "incus:index/getInstance:getInstance",
"location": args.location, {
"name": args.name, architecture: args.architecture,
"profiles": args.profiles, description: args.description,
"project": args.project, devices: args.devices,
"remote": args.remote, ephemeral: args.ephemeral,
"stateful": args.stateful, location: args.location,
"status": args.status, name: args.name,
"type": args.type, profiles: args.profiles,
}, opts); project: args.project,
remote: args.remote,
stateful: args.stateful,
status: args.status,
type: args.type,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getInstance. * A collection of arguments for invoking getInstance.
*/ */
export interface GetInstanceOutputArgs { export interface GetInstanceOutputArgs {
/** /**
* Architecture name. * Architecture name.
*/ */
architecture?: pulumi.Input<string>; architecture?: pulumi.Input<string>;
/** /**
* Description of the instance. * Description of the instance.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* Device definitions. See reference below. * Device definitions. See reference below.
*/ */
devices?: pulumi.Input<pulumi.Input<inputs.GetInstanceDeviceArgs>[]>; devices?: pulumi.Input<pulumi.Input<inputs.GetInstanceDeviceArgs>[]>;
/** /**
* Whether the instance is ephemeral (deleted on shutdown). * Whether the instance is ephemeral (deleted on shutdown).
*/ */
ephemeral?: pulumi.Input<boolean>; ephemeral?: pulumi.Input<boolean>;
/** /**
* Location of the instance. * Location of the instance.
*/ */
location?: pulumi.Input<string>; location?: pulumi.Input<string>;
/** /**
* **Required** - Name of the instance. * **Required** - Name of the instance.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* List of profiles applied to the instance. * List of profiles applied to the instance.
*/ */
profiles?: pulumi.Input<pulumi.Input<string>[]>; profiles?: pulumi.Input<pulumi.Input<string>[]>;
/** /**
* *Optional* - Name of the project where the instance is be stored. * *Optional* - Name of the project where the instance is be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* Whether the instance is stateful. * Whether the instance is stateful.
*/ */
stateful?: pulumi.Input<boolean>; stateful?: pulumi.Input<boolean>;
/** /**
* Status of the instance. * Status of the instance.
*/ */
status?: pulumi.Input<string>; status?: pulumi.Input<string>;
/** /**
* Type of the device Must be one of none, disk, nic, * Type of the device Must be one of none, disk, nic,
* unix-char, unix-block, usb, gpu, infiniband, proxy, unix-hotplug, tpm, pci. * unix-char, unix-block, usb, gpu, infiniband, proxy, unix-hotplug, tpm, pci.
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }

286
sdk/nodejs/getNetwork.ts generated
View File

@@ -22,103 +22,110 @@ import * as utilities from "./utilities";
* export const networkName = _this.then(_this => _this.name); * export const networkName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getNetwork(args: GetNetworkArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkResult> { export function getNetwork(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkArgs,
return pulumi.runtime.invoke("incus:index/getNetwork:getNetwork", { opts?: pulumi.InvokeOptions,
"description": args.description, ): Promise<GetNetworkResult> {
"locations": args.locations, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"managed": args.managed, return pulumi.runtime.invoke(
"name": args.name, "incus:index/getNetwork:getNetwork",
"project": args.project, {
"remote": args.remote, description: args.description,
"status": args.status, locations: args.locations,
"target": args.target, managed: args.managed,
"type": args.type, name: args.name,
}, opts); project: args.project,
remote: args.remote,
status: args.status,
target: args.target,
type: args.type,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetwork. * A collection of arguments for invoking getNetwork.
*/ */
export interface GetNetworkArgs { export interface GetNetworkArgs {
/** /**
* Description of the network. * Description of the network.
*/ */
description?: string; description?: string;
/** /**
* Locations of the network. * Locations of the network.
*/ */
locations?: string[]; locations?: string[];
/** /**
* Whether the network is managed by Incus. * Whether the network is managed by Incus.
*/ */
managed?: boolean; managed?: boolean;
/** /**
* **Required** - Name of the network. * **Required** - Name of the network.
*/ */
name: string; name: string;
/** /**
* *Optional* - Name of the project where the network is be stored. * *Optional* - Name of the project where the network is be stored.
*/ */
project?: string; project?: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
/** /**
* Status of the network. * Status of the network.
*/ */
status?: string; status?: string;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: string; target?: string;
/** /**
* Network type. * Network type.
* [network type documentation](https://linuxcontainers.org/incus/docs/main/howto/network_create/#network-types) * [network type documentation](https://linuxcontainers.org/incus/docs/main/howto/network_create/#network-types)
*/ */
type?: string; type?: string;
} }
/** /**
* A collection of values returned by getNetwork. * A collection of values returned by getNetwork.
*/ */
export interface GetNetworkResult { export interface GetNetworkResult {
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
* [network config settings](https://linuxcontainers.org/incus/docs/main/howto/network_create/#network-types) * [network config settings](https://linuxcontainers.org/incus/docs/main/howto/network_create/#network-types)
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Description of the network. * Description of the network.
*/ */
readonly description: string; readonly description: string;
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
/** /**
* Locations of the network. * Locations of the network.
*/ */
readonly locations: string[]; readonly locations: string[];
/** /**
* Whether the network is managed by Incus. * Whether the network is managed by Incus.
*/ */
readonly managed: boolean; readonly managed: boolean;
readonly name: string; readonly name: string;
readonly project?: string; readonly project?: string;
readonly remote?: string; readonly remote?: string;
/** /**
* Status of the network. * Status of the network.
*/ */
readonly status: string; readonly status: string;
readonly target?: string; readonly target?: string;
/** /**
* Network type. * Network type.
* [network type documentation](https://linuxcontainers.org/incus/docs/main/howto/network_create/#network-types) * [network type documentation](https://linuxcontainers.org/incus/docs/main/howto/network_create/#network-types)
*/ */
readonly type: string; readonly type: string;
} }
/** /**
* ## # incus.Network * ## # incus.Network
@@ -138,61 +145,68 @@ export interface GetNetworkResult {
* export const networkName = _this.then(_this => _this.name); * export const networkName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getNetworkOutput(args: GetNetworkOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetNetworkResult> { export function getNetworkOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getNetwork:getNetwork", { opts?: pulumi.InvokeOutputOptions,
"description": args.description, ): pulumi.Output<GetNetworkResult> {
"locations": args.locations, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"managed": args.managed, return pulumi.runtime.invokeOutput(
"name": args.name, "incus:index/getNetwork:getNetwork",
"project": args.project, {
"remote": args.remote, description: args.description,
"status": args.status, locations: args.locations,
"target": args.target, managed: args.managed,
"type": args.type, name: args.name,
}, opts); project: args.project,
remote: args.remote,
status: args.status,
target: args.target,
type: args.type,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetwork. * A collection of arguments for invoking getNetwork.
*/ */
export interface GetNetworkOutputArgs { export interface GetNetworkOutputArgs {
/** /**
* Description of the network. * Description of the network.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* Locations of the network. * Locations of the network.
*/ */
locations?: pulumi.Input<pulumi.Input<string>[]>; locations?: pulumi.Input<pulumi.Input<string>[]>;
/** /**
* Whether the network is managed by Incus. * Whether the network is managed by Incus.
*/ */
managed?: pulumi.Input<boolean>; managed?: pulumi.Input<boolean>;
/** /**
* **Required** - Name of the network. * **Required** - Name of the network.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network is be stored. * *Optional* - Name of the project where the network is be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* Status of the network. * Status of the network.
*/ */
status?: pulumi.Input<string>; status?: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
/** /**
* Network type. * Network type.
* [network type documentation](https://linuxcontainers.org/incus/docs/main/howto/network_create/#network-types) * [network type documentation](https://linuxcontainers.org/incus/docs/main/howto/network_create/#network-types)
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }

View File

@@ -24,76 +24,83 @@ import * as utilities from "./utilities";
* export const networkAclName = _this.then(_this => _this.name); * export const networkAclName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getNetworkAcl(args: GetNetworkAclArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkAclResult> { export function getNetworkAcl(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkAclArgs,
return pulumi.runtime.invoke("incus:index/getNetworkAcl:getNetworkAcl", { opts?: pulumi.InvokeOptions,
"description": args.description, ): Promise<GetNetworkAclResult> {
"egresses": args.egresses, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"ingresses": args.ingresses, return pulumi.runtime.invoke(
"name": args.name, "incus:index/getNetworkAcl:getNetworkAcl",
"project": args.project, {
"remote": args.remote, description: args.description,
}, opts); egresses: args.egresses,
ingresses: args.ingresses,
name: args.name,
project: args.project,
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkAcl. * A collection of arguments for invoking getNetworkAcl.
*/ */
export interface GetNetworkAclArgs { export interface GetNetworkAclArgs {
/** /**
* Description of the rule. * Description of the rule.
*/ */
description?: string; description?: string;
/** /**
* List of egress rules. * List of egress rules.
*/ */
egresses?: inputs.GetNetworkAclEgress[]; egresses?: inputs.GetNetworkAclEgress[];
/** /**
* List of ingress rules. * List of ingress rules.
*/ */
ingresses?: inputs.GetNetworkAclIngress[]; ingresses?: inputs.GetNetworkAclIngress[];
/** /**
* **Required** - Name of the network ACL. * **Required** - Name of the network ACL.
*/ */
name: string; name: string;
/** /**
* *Optional* - Name of the project where the network ACL is be stored. * *Optional* - Name of the project where the network ACL is be stored.
*/ */
project?: string; project?: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
} }
/** /**
* A collection of values returned by getNetworkAcl. * A collection of values returned by getNetworkAcl.
*/ */
export interface GetNetworkAclResult { export interface GetNetworkAclResult {
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Description of the rule. * Description of the rule.
*/ */
readonly description: string; readonly description: string;
/** /**
* List of egress rules. * List of egress rules.
*/ */
readonly egresses: outputs.GetNetworkAclEgress[]; readonly egresses: outputs.GetNetworkAclEgress[];
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
/** /**
* List of ingress rules. * List of ingress rules.
*/ */
readonly ingresses: outputs.GetNetworkAclIngress[]; readonly ingresses: outputs.GetNetworkAclIngress[];
readonly name: string; readonly name: string;
readonly project?: string; readonly project?: string;
readonly remote?: string; readonly remote?: string;
} }
/** /**
* ## # incus.NetworkAcl * ## # incus.NetworkAcl
@@ -113,45 +120,52 @@ export interface GetNetworkAclResult {
* export const networkAclName = _this.then(_this => _this.name); * export const networkAclName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getNetworkAclOutput(args: GetNetworkAclOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetNetworkAclResult> { export function getNetworkAclOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkAclOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getNetworkAcl:getNetworkAcl", { opts?: pulumi.InvokeOutputOptions,
"description": args.description, ): pulumi.Output<GetNetworkAclResult> {
"egresses": args.egresses, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"ingresses": args.ingresses, return pulumi.runtime.invokeOutput(
"name": args.name, "incus:index/getNetworkAcl:getNetworkAcl",
"project": args.project, {
"remote": args.remote, description: args.description,
}, opts); egresses: args.egresses,
ingresses: args.ingresses,
name: args.name,
project: args.project,
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkAcl. * A collection of arguments for invoking getNetworkAcl.
*/ */
export interface GetNetworkAclOutputArgs { export interface GetNetworkAclOutputArgs {
/** /**
* Description of the rule. * Description of the rule.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* List of egress rules. * List of egress rules.
*/ */
egresses?: pulumi.Input<pulumi.Input<inputs.GetNetworkAclEgressArgs>[]>; egresses?: pulumi.Input<pulumi.Input<inputs.GetNetworkAclEgressArgs>[]>;
/** /**
* List of ingress rules. * List of ingress rules.
*/ */
ingresses?: pulumi.Input<pulumi.Input<inputs.GetNetworkAclIngressArgs>[]>; ingresses?: pulumi.Input<pulumi.Input<inputs.GetNetworkAclIngressArgs>[]>;
/** /**
* **Required** - Name of the network ACL. * **Required** - Name of the network ACL.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network ACL is be stored. * *Optional* - Name of the project where the network ACL is be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

View File

@@ -22,67 +22,74 @@ import * as utilities from "./utilities";
* export const networkAddressSetName = _this.then(_this => _this.name); * export const networkAddressSetName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getNetworkAddressSet(args: GetNetworkAddressSetArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkAddressSetResult> { export function getNetworkAddressSet(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkAddressSetArgs,
return pulumi.runtime.invoke("incus:index/getNetworkAddressSet:getNetworkAddressSet", { opts?: pulumi.InvokeOptions,
"addresses": args.addresses, ): Promise<GetNetworkAddressSetResult> {
"description": args.description, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"name": args.name, return pulumi.runtime.invoke(
"project": args.project, "incus:index/getNetworkAddressSet:getNetworkAddressSet",
"remote": args.remote, {
}, opts); addresses: args.addresses,
description: args.description,
name: args.name,
project: args.project,
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkAddressSet. * A collection of arguments for invoking getNetworkAddressSet.
*/ */
export interface GetNetworkAddressSetArgs { export interface GetNetworkAddressSetArgs {
/** /**
* List of network addresses. * List of network addresses.
*/ */
addresses?: string[]; addresses?: string[];
/** /**
* Description of the network address set. * Description of the network address set.
*/ */
description?: string; description?: string;
/** /**
* **Required** - Name of the network address set. * **Required** - Name of the network address set.
*/ */
name: string; name: string;
/** /**
* *Optional* - Name of the project where the network address set is be stored. * *Optional* - Name of the project where the network address set is be stored.
*/ */
project?: string; project?: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
} }
/** /**
* A collection of values returned by getNetworkAddressSet. * A collection of values returned by getNetworkAddressSet.
*/ */
export interface GetNetworkAddressSetResult { export interface GetNetworkAddressSetResult {
/** /**
* List of network addresses. * List of network addresses.
*/ */
readonly addresses: string[]; readonly addresses: string[];
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Description of the network address set. * Description of the network address set.
*/ */
readonly description: string; readonly description: string;
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
readonly name: string; readonly name: string;
readonly project?: string; readonly project?: string;
readonly remote?: string; readonly remote?: string;
} }
/** /**
* ## # incus.NetworkAddressSet * ## # incus.NetworkAddressSet
@@ -102,40 +109,47 @@ export interface GetNetworkAddressSetResult {
* export const networkAddressSetName = _this.then(_this => _this.name); * export const networkAddressSetName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getNetworkAddressSetOutput(args: GetNetworkAddressSetOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetNetworkAddressSetResult> { export function getNetworkAddressSetOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkAddressSetOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getNetworkAddressSet:getNetworkAddressSet", { opts?: pulumi.InvokeOutputOptions,
"addresses": args.addresses, ): pulumi.Output<GetNetworkAddressSetResult> {
"description": args.description, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"name": args.name, return pulumi.runtime.invokeOutput(
"project": args.project, "incus:index/getNetworkAddressSet:getNetworkAddressSet",
"remote": args.remote, {
}, opts); addresses: args.addresses,
description: args.description,
name: args.name,
project: args.project,
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkAddressSet. * A collection of arguments for invoking getNetworkAddressSet.
*/ */
export interface GetNetworkAddressSetOutputArgs { export interface GetNetworkAddressSetOutputArgs {
/** /**
* List of network addresses. * List of network addresses.
*/ */
addresses?: pulumi.Input<pulumi.Input<string>[]>; addresses?: pulumi.Input<pulumi.Input<string>[]>;
/** /**
* Description of the network address set. * Description of the network address set.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the network address set. * **Required** - Name of the network address set.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network address set is be stored. * *Optional* - Name of the project where the network address set is be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

View File

@@ -25,88 +25,95 @@ import * as utilities from "./utilities";
* export const networkForwardListenAddress = _this.then(_this => _this.listenAddress); * export const networkForwardListenAddress = _this.then(_this => _this.listenAddress);
* ``` * ```
*/ */
export function getNetworkForward(args: GetNetworkForwardArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkForwardResult> { export function getNetworkForward(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkForwardArgs,
return pulumi.runtime.invoke("incus:index/getNetworkForward:getNetworkForward", { opts?: pulumi.InvokeOptions,
"description": args.description, ): Promise<GetNetworkForwardResult> {
"listenAddress": args.listenAddress, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"location": args.location, return pulumi.runtime.invoke(
"network": args.network, "incus:index/getNetworkForward:getNetworkForward",
"ports": args.ports, {
"project": args.project, description: args.description,
"remote": args.remote, listenAddress: args.listenAddress,
"target": args.target, location: args.location,
}, opts); network: args.network,
ports: args.ports,
project: args.project,
remote: args.remote,
target: args.target,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkForward. * A collection of arguments for invoking getNetworkForward.
*/ */
export interface GetNetworkForwardArgs { export interface GetNetworkForwardArgs {
/** /**
* Description of the forward port. * Description of the forward port.
*/ */
description?: string; description?: string;
/** /**
* **Required** - Listen Address of the network forward. * **Required** - Listen Address of the network forward.
*/ */
listenAddress: string; listenAddress: string;
/** /**
* Location of the network forward. * Location of the network forward.
*/ */
location?: string; location?: string;
/** /**
* **Required** - Name of the parent network. * **Required** - Name of the parent network.
*/ */
network: string; network: string;
/** /**
* List of ports to forward. * List of ports to forward.
*/ */
ports?: inputs.GetNetworkForwardPort[]; ports?: inputs.GetNetworkForwardPort[];
/** /**
* *Optional* - Name of the project where the network forward is be stored. * *Optional* - Name of the project where the network forward is be stored.
*/ */
project?: string; project?: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: string; target?: string;
} }
/** /**
* A collection of values returned by getNetworkForward. * A collection of values returned by getNetworkForward.
*/ */
export interface GetNetworkForwardResult { export interface GetNetworkForwardResult {
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Description of the forward port. * Description of the forward port.
*/ */
readonly description: string; readonly description: string;
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
readonly listenAddress: string; readonly listenAddress: string;
/** /**
* Location of the network forward. * Location of the network forward.
*/ */
readonly location: string; readonly location: string;
readonly network: string; readonly network: string;
/** /**
* List of ports to forward. * List of ports to forward.
*/ */
readonly ports: outputs.GetNetworkForwardPort[]; readonly ports: outputs.GetNetworkForwardPort[];
readonly project?: string; readonly project?: string;
readonly remote?: string; readonly remote?: string;
readonly target?: string; readonly target?: string;
} }
/** /**
* ## # incus.NetworkForward * ## # incus.NetworkForward
@@ -127,55 +134,62 @@ export interface GetNetworkForwardResult {
* export const networkForwardListenAddress = _this.then(_this => _this.listenAddress); * export const networkForwardListenAddress = _this.then(_this => _this.listenAddress);
* ``` * ```
*/ */
export function getNetworkForwardOutput(args: GetNetworkForwardOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetNetworkForwardResult> { export function getNetworkForwardOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkForwardOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getNetworkForward:getNetworkForward", { opts?: pulumi.InvokeOutputOptions,
"description": args.description, ): pulumi.Output<GetNetworkForwardResult> {
"listenAddress": args.listenAddress, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"location": args.location, return pulumi.runtime.invokeOutput(
"network": args.network, "incus:index/getNetworkForward:getNetworkForward",
"ports": args.ports, {
"project": args.project, description: args.description,
"remote": args.remote, listenAddress: args.listenAddress,
"target": args.target, location: args.location,
}, opts); network: args.network,
ports: args.ports,
project: args.project,
remote: args.remote,
target: args.target,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkForward. * A collection of arguments for invoking getNetworkForward.
*/ */
export interface GetNetworkForwardOutputArgs { export interface GetNetworkForwardOutputArgs {
/** /**
* Description of the forward port. * Description of the forward port.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Listen Address of the network forward. * **Required** - Listen Address of the network forward.
*/ */
listenAddress: pulumi.Input<string>; listenAddress: pulumi.Input<string>;
/** /**
* Location of the network forward. * Location of the network forward.
*/ */
location?: pulumi.Input<string>; location?: pulumi.Input<string>;
/** /**
* **Required** - Name of the parent network. * **Required** - Name of the parent network.
*/ */
network: pulumi.Input<string>; network: pulumi.Input<string>;
/** /**
* List of ports to forward. * List of ports to forward.
*/ */
ports?: pulumi.Input<pulumi.Input<inputs.GetNetworkForwardPortArgs>[]>; ports?: pulumi.Input<pulumi.Input<inputs.GetNetworkForwardPortArgs>[]>;
/** /**
* *Optional* - Name of the project where the network forward is be stored. * *Optional* - Name of the project where the network forward is be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
} }

View File

@@ -22,61 +22,68 @@ import * as utilities from "./utilities";
* export const networkIntegrationName = _this.then(_this => _this.name); * export const networkIntegrationName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getNetworkIntegration(args: GetNetworkIntegrationArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkIntegrationResult> { export function getNetworkIntegration(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkIntegrationArgs,
return pulumi.runtime.invoke("incus:index/getNetworkIntegration:getNetworkIntegration", { opts?: pulumi.InvokeOptions,
"description": args.description, ): Promise<GetNetworkIntegrationResult> {
"name": args.name, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"remote": args.remote, return pulumi.runtime.invoke(
"type": args.type, "incus:index/getNetworkIntegration:getNetworkIntegration",
}, opts); {
description: args.description,
name: args.name,
remote: args.remote,
type: args.type,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkIntegration. * A collection of arguments for invoking getNetworkIntegration.
*/ */
export interface GetNetworkIntegrationArgs { export interface GetNetworkIntegrationArgs {
/** /**
* Description of the network integration. * Description of the network integration.
*/ */
description?: string; description?: string;
/** /**
* **Required** - Name of the network integration. * **Required** - Name of the network integration.
*/ */
name: string; name: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
/** /**
* Integration type. * Integration type.
*/ */
type?: string; type?: string;
} }
/** /**
* A collection of values returned by getNetworkIntegration. * A collection of values returned by getNetworkIntegration.
*/ */
export interface GetNetworkIntegrationResult { export interface GetNetworkIntegrationResult {
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Description of the network integration. * Description of the network integration.
*/ */
readonly description: string; readonly description: string;
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
readonly name: string; readonly name: string;
readonly remote?: string; readonly remote?: string;
/** /**
* Integration type. * Integration type.
*/ */
readonly type: string; readonly type: string;
} }
/** /**
* ## # incus.NetworkIntegration * ## # incus.NetworkIntegration
@@ -96,35 +103,42 @@ export interface GetNetworkIntegrationResult {
* export const networkIntegrationName = _this.then(_this => _this.name); * export const networkIntegrationName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getNetworkIntegrationOutput(args: GetNetworkIntegrationOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetNetworkIntegrationResult> { export function getNetworkIntegrationOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkIntegrationOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getNetworkIntegration:getNetworkIntegration", { opts?: pulumi.InvokeOutputOptions,
"description": args.description, ): pulumi.Output<GetNetworkIntegrationResult> {
"name": args.name, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"remote": args.remote, return pulumi.runtime.invokeOutput(
"type": args.type, "incus:index/getNetworkIntegration:getNetworkIntegration",
}, opts); {
description: args.description,
name: args.name,
remote: args.remote,
type: args.type,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkIntegration. * A collection of arguments for invoking getNetworkIntegration.
*/ */
export interface GetNetworkIntegrationOutputArgs { export interface GetNetworkIntegrationOutputArgs {
/** /**
* Description of the network integration. * Description of the network integration.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the network integration. * **Required** - Name of the network integration.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* Integration type. * Integration type.
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }

View File

@@ -25,91 +25,98 @@ import * as utilities from "./utilities";
* export const networkLoadBalancerListenAddress = _this.then(_this => _this.listenAddress); * export const networkLoadBalancerListenAddress = _this.then(_this => _this.listenAddress);
* ``` * ```
*/ */
export function getNetworkLoadBalancer(args: GetNetworkLoadBalancerArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkLoadBalancerResult> { export function getNetworkLoadBalancer(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkLoadBalancerArgs,
return pulumi.runtime.invoke("incus:index/getNetworkLoadBalancer:getNetworkLoadBalancer", { opts?: pulumi.InvokeOptions,
"backends": args.backends, ): Promise<GetNetworkLoadBalancerResult> {
"description": args.description, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"listenAddress": args.listenAddress, return pulumi.runtime.invoke(
"location": args.location, "incus:index/getNetworkLoadBalancer:getNetworkLoadBalancer",
"network": args.network, {
"ports": args.ports, backends: args.backends,
"project": args.project, description: args.description,
"remote": args.remote, listenAddress: args.listenAddress,
}, opts); location: args.location,
network: args.network,
ports: args.ports,
project: args.project,
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkLoadBalancer. * A collection of arguments for invoking getNetworkLoadBalancer.
*/ */
export interface GetNetworkLoadBalancerArgs { export interface GetNetworkLoadBalancerArgs {
/** /**
* List of load balancer backends. * List of load balancer backends.
*/ */
backends?: inputs.GetNetworkLoadBalancerBackend[]; backends?: inputs.GetNetworkLoadBalancerBackend[];
/** /**
* Description of the load balancer port. * Description of the load balancer port.
*/ */
description?: string; description?: string;
/** /**
* **Required** - Listen Address of the network load balancer. * **Required** - Listen Address of the network load balancer.
*/ */
listenAddress: string; listenAddress: string;
/** /**
* Location of the network load balancer. * Location of the network load balancer.
*/ */
location?: string; location?: string;
/** /**
* **Required** - Name of the parent network. * **Required** - Name of the parent network.
*/ */
network: string; network: string;
/** /**
* List of load balancer ports. * List of load balancer ports.
*/ */
ports?: inputs.GetNetworkLoadBalancerPort[]; ports?: inputs.GetNetworkLoadBalancerPort[];
/** /**
* *Optional* - Name of the project where the network load balancer is be stored. * *Optional* - Name of the project where the network load balancer is be stored.
*/ */
project?: string; project?: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
} }
/** /**
* A collection of values returned by getNetworkLoadBalancer. * A collection of values returned by getNetworkLoadBalancer.
*/ */
export interface GetNetworkLoadBalancerResult { export interface GetNetworkLoadBalancerResult {
/** /**
* List of load balancer backends. * List of load balancer backends.
*/ */
readonly backends: outputs.GetNetworkLoadBalancerBackend[]; readonly backends: outputs.GetNetworkLoadBalancerBackend[];
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Description of the load balancer port. * Description of the load balancer port.
*/ */
readonly description: string; readonly description: string;
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
readonly listenAddress: string; readonly listenAddress: string;
/** /**
* Location of the network load balancer. * Location of the network load balancer.
*/ */
readonly location: string; readonly location: string;
readonly network: string; readonly network: string;
/** /**
* List of load balancer ports. * List of load balancer ports.
*/ */
readonly ports: outputs.GetNetworkLoadBalancerPort[]; readonly ports: outputs.GetNetworkLoadBalancerPort[];
readonly project?: string; readonly project?: string;
readonly remote?: string; readonly remote?: string;
} }
/** /**
* ## # incus.getNetworkLoadBalancer * ## # incus.getNetworkLoadBalancer
@@ -130,55 +137,62 @@ export interface GetNetworkLoadBalancerResult {
* export const networkLoadBalancerListenAddress = _this.then(_this => _this.listenAddress); * export const networkLoadBalancerListenAddress = _this.then(_this => _this.listenAddress);
* ``` * ```
*/ */
export function getNetworkLoadBalancerOutput(args: GetNetworkLoadBalancerOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetNetworkLoadBalancerResult> { export function getNetworkLoadBalancerOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkLoadBalancerOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getNetworkLoadBalancer:getNetworkLoadBalancer", { opts?: pulumi.InvokeOutputOptions,
"backends": args.backends, ): pulumi.Output<GetNetworkLoadBalancerResult> {
"description": args.description, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"listenAddress": args.listenAddress, return pulumi.runtime.invokeOutput(
"location": args.location, "incus:index/getNetworkLoadBalancer:getNetworkLoadBalancer",
"network": args.network, {
"ports": args.ports, backends: args.backends,
"project": args.project, description: args.description,
"remote": args.remote, listenAddress: args.listenAddress,
}, opts); location: args.location,
network: args.network,
ports: args.ports,
project: args.project,
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkLoadBalancer. * A collection of arguments for invoking getNetworkLoadBalancer.
*/ */
export interface GetNetworkLoadBalancerOutputArgs { export interface GetNetworkLoadBalancerOutputArgs {
/** /**
* List of load balancer backends. * List of load balancer backends.
*/ */
backends?: pulumi.Input<pulumi.Input<inputs.GetNetworkLoadBalancerBackendArgs>[]>; backends?: pulumi.Input<pulumi.Input<inputs.GetNetworkLoadBalancerBackendArgs>[]>;
/** /**
* Description of the load balancer port. * Description of the load balancer port.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Listen Address of the network load balancer. * **Required** - Listen Address of the network load balancer.
*/ */
listenAddress: pulumi.Input<string>; listenAddress: pulumi.Input<string>;
/** /**
* Location of the network load balancer. * Location of the network load balancer.
*/ */
location?: pulumi.Input<string>; location?: pulumi.Input<string>;
/** /**
* **Required** - Name of the parent network. * **Required** - Name of the parent network.
*/ */
network: pulumi.Input<string>; network: pulumi.Input<string>;
/** /**
* List of load balancer ports. * List of load balancer ports.
*/ */
ports?: pulumi.Input<pulumi.Input<inputs.GetNetworkLoadBalancerPortArgs>[]>; ports?: pulumi.Input<pulumi.Input<inputs.GetNetworkLoadBalancerPortArgs>[]>;
/** /**
* *Optional* - Name of the project where the network load balancer is be stored. * *Optional* - Name of the project where the network load balancer is be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

View File

@@ -23,109 +23,116 @@ import * as utilities from "./utilities";
* export const networkPeerName = _this.then(_this => _this.name); * export const networkPeerName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getNetworkPeer(args: GetNetworkPeerArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkPeerResult> { export function getNetworkPeer(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkPeerArgs,
return pulumi.runtime.invoke("incus:index/getNetworkPeer:getNetworkPeer", { opts?: pulumi.InvokeOptions,
"description": args.description, ): Promise<GetNetworkPeerResult> {
"name": args.name, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"network": args.network, return pulumi.runtime.invoke(
"project": args.project, "incus:index/getNetworkPeer:getNetworkPeer",
"remote": args.remote, {
"status": args.status, description: args.description,
"targetIntegration": args.targetIntegration, name: args.name,
"targetNetwork": args.targetNetwork, network: args.network,
"targetProject": args.targetProject, project: args.project,
"type": args.type, remote: args.remote,
}, opts); status: args.status,
targetIntegration: args.targetIntegration,
targetNetwork: args.targetNetwork,
targetProject: args.targetProject,
type: args.type,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkPeer. * A collection of arguments for invoking getNetworkPeer.
*/ */
export interface GetNetworkPeerArgs { export interface GetNetworkPeerArgs {
/** /**
* Description of the network peer. * Description of the network peer.
*/ */
description?: string; description?: string;
/** /**
* **Required** - Name of the network peer. * **Required** - Name of the network peer.
*/ */
name: string; name: string;
/** /**
* **Required** - Name of the parent network. * **Required** - Name of the parent network.
*/ */
network: string; network: string;
/** /**
* *Optional* - Name of the project where the network peer is be stored. * *Optional* - Name of the project where the network peer is be stored.
*/ */
project?: string; project?: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
/** /**
* Status of the network peer. * Status of the network peer.
*/ */
status?: string; status?: string;
/** /**
* Target integration for the network peer. * Target integration for the network peer.
*/ */
targetIntegration?: string; targetIntegration?: string;
/** /**
* Target network for the network peer. * Target network for the network peer.
*/ */
targetNetwork?: string; targetNetwork?: string;
/** /**
* Target project for the network peer. * Target project for the network peer.
*/ */
targetProject?: string; targetProject?: string;
/** /**
* Network peer type. * Network peer type.
*/ */
type?: string; type?: string;
} }
/** /**
* A collection of values returned by getNetworkPeer. * A collection of values returned by getNetworkPeer.
*/ */
export interface GetNetworkPeerResult { export interface GetNetworkPeerResult {
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Description of the network peer. * Description of the network peer.
*/ */
readonly description: string; readonly description: string;
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
readonly name: string; readonly name: string;
readonly network: string; readonly network: string;
readonly project?: string; readonly project?: string;
readonly remote?: string; readonly remote?: string;
/** /**
* Status of the network peer. * Status of the network peer.
*/ */
readonly status: string; readonly status: string;
/** /**
* Target integration for the network peer. * Target integration for the network peer.
*/ */
readonly targetIntegration: string; readonly targetIntegration: string;
/** /**
* Target network for the network peer. * Target network for the network peer.
*/ */
readonly targetNetwork: string; readonly targetNetwork: string;
/** /**
* Target project for the network peer. * Target project for the network peer.
*/ */
readonly targetProject: string; readonly targetProject: string;
/** /**
* Network peer type. * Network peer type.
*/ */
readonly type: string; readonly type: string;
} }
/** /**
* ## # incus.NetworkPeer * ## # incus.NetworkPeer
@@ -146,65 +153,72 @@ export interface GetNetworkPeerResult {
* export const networkPeerName = _this.then(_this => _this.name); * export const networkPeerName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getNetworkPeerOutput(args: GetNetworkPeerOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetNetworkPeerResult> { export function getNetworkPeerOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkPeerOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getNetworkPeer:getNetworkPeer", { opts?: pulumi.InvokeOutputOptions,
"description": args.description, ): pulumi.Output<GetNetworkPeerResult> {
"name": args.name, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"network": args.network, return pulumi.runtime.invokeOutput(
"project": args.project, "incus:index/getNetworkPeer:getNetworkPeer",
"remote": args.remote, {
"status": args.status, description: args.description,
"targetIntegration": args.targetIntegration, name: args.name,
"targetNetwork": args.targetNetwork, network: args.network,
"targetProject": args.targetProject, project: args.project,
"type": args.type, remote: args.remote,
}, opts); status: args.status,
targetIntegration: args.targetIntegration,
targetNetwork: args.targetNetwork,
targetProject: args.targetProject,
type: args.type,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkPeer. * A collection of arguments for invoking getNetworkPeer.
*/ */
export interface GetNetworkPeerOutputArgs { export interface GetNetworkPeerOutputArgs {
/** /**
* Description of the network peer. * Description of the network peer.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the network peer. * **Required** - Name of the network peer.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* **Required** - Name of the parent network. * **Required** - Name of the parent network.
*/ */
network: pulumi.Input<string>; network: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network peer is be stored. * *Optional* - Name of the project where the network peer is be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* Status of the network peer. * Status of the network peer.
*/ */
status?: pulumi.Input<string>; status?: pulumi.Input<string>;
/** /**
* Target integration for the network peer. * Target integration for the network peer.
*/ */
targetIntegration?: pulumi.Input<string>; targetIntegration?: pulumi.Input<string>;
/** /**
* Target network for the network peer. * Target network for the network peer.
*/ */
targetNetwork?: pulumi.Input<string>; targetNetwork?: pulumi.Input<string>;
/** /**
* Target project for the network peer. * Target project for the network peer.
*/ */
targetProject?: pulumi.Input<string>; targetProject?: pulumi.Input<string>;
/** /**
* Network peer type. * Network peer type.
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }

View File

@@ -22,58 +22,65 @@ import * as utilities from "./utilities";
* export const networkZoneName = _this.then(_this => _this.name); * export const networkZoneName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getNetworkZone(args: GetNetworkZoneArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkZoneResult> { export function getNetworkZone(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkZoneArgs,
return pulumi.runtime.invoke("incus:index/getNetworkZone:getNetworkZone", { opts?: pulumi.InvokeOptions,
"description": args.description, ): Promise<GetNetworkZoneResult> {
"name": args.name, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"project": args.project, return pulumi.runtime.invoke(
"remote": args.remote, "incus:index/getNetworkZone:getNetworkZone",
}, opts); {
description: args.description,
name: args.name,
project: args.project,
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkZone. * A collection of arguments for invoking getNetworkZone.
*/ */
export interface GetNetworkZoneArgs { export interface GetNetworkZoneArgs {
/** /**
* Description of the network zone. * Description of the network zone.
*/ */
description?: string; description?: string;
/** /**
* **Required** - Name of the network zone. * **Required** - Name of the network zone.
*/ */
name: string; name: string;
/** /**
* *Optional* - Name of the project where the network zone is be stored. * *Optional* - Name of the project where the network zone is be stored.
*/ */
project?: string; project?: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
} }
/** /**
* A collection of values returned by getNetworkZone. * A collection of values returned by getNetworkZone.
*/ */
export interface GetNetworkZoneResult { export interface GetNetworkZoneResult {
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Description of the network zone. * Description of the network zone.
*/ */
readonly description: string; readonly description: string;
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
readonly name: string; readonly name: string;
readonly project?: string; readonly project?: string;
readonly remote?: string; readonly remote?: string;
} }
/** /**
* ## # incus.NetworkZone * ## # incus.NetworkZone
@@ -93,35 +100,42 @@ export interface GetNetworkZoneResult {
* export const networkZoneName = _this.then(_this => _this.name); * export const networkZoneName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getNetworkZoneOutput(args: GetNetworkZoneOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetNetworkZoneResult> { export function getNetworkZoneOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetNetworkZoneOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getNetworkZone:getNetworkZone", { opts?: pulumi.InvokeOutputOptions,
"description": args.description, ): pulumi.Output<GetNetworkZoneResult> {
"name": args.name, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"project": args.project, return pulumi.runtime.invokeOutput(
"remote": args.remote, "incus:index/getNetworkZone:getNetworkZone",
}, opts); {
description: args.description,
name: args.name,
project: args.project,
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getNetworkZone. * A collection of arguments for invoking getNetworkZone.
*/ */
export interface GetNetworkZoneOutputArgs { export interface GetNetworkZoneOutputArgs {
/** /**
* Description of the network zone. * Description of the network zone.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the network zone. * **Required** - Name of the network zone.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network zone is be stored. * *Optional* - Name of the project where the network zone is be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

180
sdk/nodejs/getProfile.ts generated
View File

@@ -24,71 +24,78 @@ import * as utilities from "./utilities";
* export const profileName = _this.then(_this => _this.name); * export const profileName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getProfile(args: GetProfileArgs, opts?: pulumi.InvokeOptions): Promise<GetProfileResult> { export function getProfile(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetProfileArgs,
return pulumi.runtime.invoke("incus:index/getProfile:getProfile", { opts?: pulumi.InvokeOptions,
"description": args.description, ): Promise<GetProfileResult> {
"devices": args.devices, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"name": args.name, return pulumi.runtime.invoke(
"project": args.project, "incus:index/getProfile:getProfile",
"remote": args.remote, {
}, opts); description: args.description,
devices: args.devices,
name: args.name,
project: args.project,
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getProfile. * A collection of arguments for invoking getProfile.
*/ */
export interface GetProfileArgs { export interface GetProfileArgs {
/** /**
* Description of the profile. * Description of the profile.
*/ */
description?: string; description?: string;
/** /**
* Device definitions. See reference below. * Device definitions. See reference below.
*/ */
devices?: inputs.GetProfileDevice[]; devices?: inputs.GetProfileDevice[];
/** /**
* **Required** - Name of the profile. * **Required** - Name of the profile.
*/ */
name: string; name: string;
/** /**
* *Optional* - Name of the project where the profile is be stored. * *Optional* - Name of the project where the profile is be stored.
*/ */
project?: string; project?: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
} }
/** /**
* A collection of values returned by getProfile. * A collection of values returned by getProfile.
*/ */
export interface GetProfileResult { export interface GetProfileResult {
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
* [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/) * [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/)
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Description of the profile. * Description of the profile.
*/ */
readonly description: string; readonly description: string;
/** /**
* Device definitions. See reference below. * Device definitions. See reference below.
*/ */
readonly devices?: outputs.GetProfileDevice[]; readonly devices?: outputs.GetProfileDevice[];
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
/** /**
* Name of the device. * Name of the device.
*/ */
readonly name: string; readonly name: string;
readonly project?: string; readonly project?: string;
readonly remote?: string; readonly remote?: string;
} }
/** /**
* ## # incus.Profile * ## # incus.Profile
@@ -108,40 +115,47 @@ export interface GetProfileResult {
* export const profileName = _this.then(_this => _this.name); * export const profileName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getProfileOutput(args: GetProfileOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetProfileResult> { export function getProfileOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetProfileOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getProfile:getProfile", { opts?: pulumi.InvokeOutputOptions,
"description": args.description, ): pulumi.Output<GetProfileResult> {
"devices": args.devices, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"name": args.name, return pulumi.runtime.invokeOutput(
"project": args.project, "incus:index/getProfile:getProfile",
"remote": args.remote, {
}, opts); description: args.description,
devices: args.devices,
name: args.name,
project: args.project,
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getProfile. * A collection of arguments for invoking getProfile.
*/ */
export interface GetProfileOutputArgs { export interface GetProfileOutputArgs {
/** /**
* Description of the profile. * Description of the profile.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* Device definitions. See reference below. * Device definitions. See reference below.
*/ */
devices?: pulumi.Input<pulumi.Input<inputs.GetProfileDeviceArgs>[]>; devices?: pulumi.Input<pulumi.Input<inputs.GetProfileDeviceArgs>[]>;
/** /**
* **Required** - Name of the profile. * **Required** - Name of the profile.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the profile is be stored. * *Optional* - Name of the project where the profile is be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

124
sdk/nodejs/getProject.ts generated
View File

@@ -21,53 +21,60 @@ import * as utilities from "./utilities";
* export const projectName = _this.then(_this => _this.name); * export const projectName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getProject(args: GetProjectArgs, opts?: pulumi.InvokeOptions): Promise<GetProjectResult> { export function getProject(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetProjectArgs,
return pulumi.runtime.invoke("incus:index/getProject:getProject", { opts?: pulumi.InvokeOptions,
"description": args.description, ): Promise<GetProjectResult> {
"name": args.name, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"remote": args.remote, return pulumi.runtime.invoke(
}, opts); "incus:index/getProject:getProject",
{
description: args.description,
name: args.name,
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getProject. * A collection of arguments for invoking getProject.
*/ */
export interface GetProjectArgs { export interface GetProjectArgs {
/** /**
* Description of the project. * Description of the project.
*/ */
description?: string; description?: string;
/** /**
* **Required** - Name of the project. * **Required** - Name of the project.
*/ */
name: string; name: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
} }
/** /**
* A collection of values returned by getProject. * A collection of values returned by getProject.
*/ */
export interface GetProjectResult { export interface GetProjectResult {
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
* [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/) * [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/)
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Description of the project. * Description of the project.
*/ */
readonly description: string; readonly description: string;
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
readonly name: string; readonly name: string;
readonly remote?: string; readonly remote?: string;
} }
/** /**
* ## # incus.Project * ## # incus.Project
@@ -86,30 +93,37 @@ export interface GetProjectResult {
* export const projectName = _this.then(_this => _this.name); * export const projectName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getProjectOutput(args: GetProjectOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetProjectResult> { export function getProjectOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetProjectOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getProject:getProject", { opts?: pulumi.InvokeOutputOptions,
"description": args.description, ): pulumi.Output<GetProjectResult> {
"name": args.name, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"remote": args.remote, return pulumi.runtime.invokeOutput(
}, opts); "incus:index/getProject:getProject",
{
description: args.description,
name: args.name,
remote: args.remote,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getProject. * A collection of arguments for invoking getProject.
*/ */
export interface GetProjectOutputArgs { export interface GetProjectOutputArgs {
/** /**
* Description of the project. * Description of the project.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the project. * **Required** - Name of the project.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

View File

@@ -23,89 +23,96 @@ import * as utilities from "./utilities";
* export const storageBucketName = _this.then(_this => _this.name); * export const storageBucketName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getStorageBucket(args: GetStorageBucketArgs, opts?: pulumi.InvokeOptions): Promise<GetStorageBucketResult> { export function getStorageBucket(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetStorageBucketArgs,
return pulumi.runtime.invoke("incus:index/getStorageBucket:getStorageBucket", { opts?: pulumi.InvokeOptions,
"description": args.description, ): Promise<GetStorageBucketResult> {
"location": args.location, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"name": args.name, return pulumi.runtime.invoke(
"project": args.project, "incus:index/getStorageBucket:getStorageBucket",
"remote": args.remote, {
"s3Url": args.s3Url, description: args.description,
"storagePool": args.storagePool, location: args.location,
"target": args.target, name: args.name,
}, opts); project: args.project,
remote: args.remote,
s3Url: args.s3Url,
storagePool: args.storagePool,
target: args.target,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getStorageBucket. * A collection of arguments for invoking getStorageBucket.
*/ */
export interface GetStorageBucketArgs { export interface GetStorageBucketArgs {
/** /**
* Description of the storage bucket. * Description of the storage bucket.
*/ */
description?: string; description?: string;
/** /**
* Location of the storage bucket. * Location of the storage bucket.
*/ */
location?: string; location?: string;
/** /**
* **Required** - Name of the storage bucket. * **Required** - Name of the storage bucket.
*/ */
name: string; name: string;
/** /**
* *Optional* - Name of the project where the storage bucket is be stored. * *Optional* - Name of the project where the storage bucket is be stored.
*/ */
project?: string; project?: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
/** /**
* Storage Bucket S3 URL. * Storage Bucket S3 URL.
*/ */
s3Url?: string; s3Url?: string;
/** /**
* **Required** - Name of the parent storage pool. * **Required** - Name of the parent storage pool.
*/ */
storagePool: string; storagePool: string;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: string; target?: string;
} }
/** /**
* A collection of values returned by getStorageBucket. * A collection of values returned by getStorageBucket.
*/ */
export interface GetStorageBucketResult { export interface GetStorageBucketResult {
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
* [storage bucket config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/) * [storage bucket config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/)
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Description of the storage bucket. * Description of the storage bucket.
*/ */
readonly description: string; readonly description: string;
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
/** /**
* Location of the storage bucket. * Location of the storage bucket.
*/ */
readonly location: string; readonly location: string;
readonly name: string; readonly name: string;
readonly project?: string; readonly project?: string;
readonly remote?: string; readonly remote?: string;
/** /**
* Storage Bucket S3 URL. * Storage Bucket S3 URL.
*/ */
readonly s3Url: string; readonly s3Url: string;
readonly storagePool: string; readonly storagePool: string;
readonly target?: string; readonly target?: string;
} }
/** /**
* ## # incus.StorageBucket * ## # incus.StorageBucket
@@ -126,55 +133,62 @@ export interface GetStorageBucketResult {
* export const storageBucketName = _this.then(_this => _this.name); * export const storageBucketName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getStorageBucketOutput(args: GetStorageBucketOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetStorageBucketResult> { export function getStorageBucketOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetStorageBucketOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getStorageBucket:getStorageBucket", { opts?: pulumi.InvokeOutputOptions,
"description": args.description, ): pulumi.Output<GetStorageBucketResult> {
"location": args.location, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"name": args.name, return pulumi.runtime.invokeOutput(
"project": args.project, "incus:index/getStorageBucket:getStorageBucket",
"remote": args.remote, {
"s3Url": args.s3Url, description: args.description,
"storagePool": args.storagePool, location: args.location,
"target": args.target, name: args.name,
}, opts); project: args.project,
remote: args.remote,
s3Url: args.s3Url,
storagePool: args.storagePool,
target: args.target,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getStorageBucket. * A collection of arguments for invoking getStorageBucket.
*/ */
export interface GetStorageBucketOutputArgs { export interface GetStorageBucketOutputArgs {
/** /**
* Description of the storage bucket. * Description of the storage bucket.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* Location of the storage bucket. * Location of the storage bucket.
*/ */
location?: pulumi.Input<string>; location?: pulumi.Input<string>;
/** /**
* **Required** - Name of the storage bucket. * **Required** - Name of the storage bucket.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the storage bucket is be stored. * *Optional* - Name of the project where the storage bucket is be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* Storage Bucket S3 URL. * Storage Bucket S3 URL.
*/ */
s3Url?: pulumi.Input<string>; s3Url?: pulumi.Input<string>;
/** /**
* **Required** - Name of the parent storage pool. * **Required** - Name of the parent storage pool.
*/ */
storagePool: pulumi.Input<string>; storagePool: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
} }

View File

@@ -22,77 +22,84 @@ import * as utilities from "./utilities";
* export const storagePoolName = _this.then(_this => _this.name); * export const storagePoolName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getStoragePool(args: GetStoragePoolArgs, opts?: pulumi.InvokeOptions): Promise<GetStoragePoolResult> { export function getStoragePool(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetStoragePoolArgs,
return pulumi.runtime.invoke("incus:index/getStoragePool:getStoragePool", { opts?: pulumi.InvokeOptions,
"description": args.description, ): Promise<GetStoragePoolResult> {
"driver": args.driver, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"name": args.name, return pulumi.runtime.invoke(
"remote": args.remote, "incus:index/getStoragePool:getStoragePool",
"status": args.status, {
"target": args.target, description: args.description,
}, opts); driver: args.driver,
name: args.name,
remote: args.remote,
status: args.status,
target: args.target,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getStoragePool. * A collection of arguments for invoking getStoragePool.
*/ */
export interface GetStoragePoolArgs { export interface GetStoragePoolArgs {
/** /**
* Description of the storage pool. * Description of the storage pool.
*/ */
description?: string; description?: string;
/** /**
* Storage Pool driver. * Storage Pool driver.
*/ */
driver?: string; driver?: string;
/** /**
* **Required** - Name of the storage pool. * **Required** - Name of the storage pool.
*/ */
name: string; name: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
/** /**
* Status of the storage pool. * Status of the storage pool.
*/ */
status?: string; status?: string;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: string; target?: string;
} }
/** /**
* A collection of values returned by getStoragePool. * A collection of values returned by getStoragePool.
*/ */
export interface GetStoragePoolResult { export interface GetStoragePoolResult {
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
* [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/) * [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/)
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Description of the storage pool. * Description of the storage pool.
*/ */
readonly description: string; readonly description: string;
/** /**
* Storage Pool driver. * Storage Pool driver.
*/ */
readonly driver: string; readonly driver: string;
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
readonly name: string; readonly name: string;
readonly remote?: string; readonly remote?: string;
/** /**
* Status of the storage pool. * Status of the storage pool.
*/ */
readonly status: string; readonly status: string;
readonly target?: string; readonly target?: string;
} }
/** /**
* ## # incus.StoragePool * ## # incus.StoragePool
@@ -112,45 +119,52 @@ export interface GetStoragePoolResult {
* export const storagePoolName = _this.then(_this => _this.name); * export const storagePoolName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getStoragePoolOutput(args: GetStoragePoolOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetStoragePoolResult> { export function getStoragePoolOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetStoragePoolOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getStoragePool:getStoragePool", { opts?: pulumi.InvokeOutputOptions,
"description": args.description, ): pulumi.Output<GetStoragePoolResult> {
"driver": args.driver, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"name": args.name, return pulumi.runtime.invokeOutput(
"remote": args.remote, "incus:index/getStoragePool:getStoragePool",
"status": args.status, {
"target": args.target, description: args.description,
}, opts); driver: args.driver,
name: args.name,
remote: args.remote,
status: args.status,
target: args.target,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getStoragePool. * A collection of arguments for invoking getStoragePool.
*/ */
export interface GetStoragePoolOutputArgs { export interface GetStoragePoolOutputArgs {
/** /**
* Description of the storage pool. * Description of the storage pool.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* Storage Pool driver. * Storage Pool driver.
*/ */
driver?: pulumi.Input<string>; driver?: pulumi.Input<string>;
/** /**
* **Required** - Name of the storage pool. * **Required** - Name of the storage pool.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* Status of the storage pool. * Status of the storage pool.
*/ */
status?: pulumi.Input<string>; status?: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
} }

View File

@@ -24,95 +24,102 @@ import * as utilities from "./utilities";
* export const storageVolumeName = _this.then(_this => _this.name); * export const storageVolumeName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getStorageVolume(args: GetStorageVolumeArgs, opts?: pulumi.InvokeOptions): Promise<GetStorageVolumeResult> { export function getStorageVolume(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetStorageVolumeArgs,
return pulumi.runtime.invoke("incus:index/getStorageVolume:getStorageVolume", { opts?: pulumi.InvokeOptions,
"contentType": args.contentType, ): Promise<GetStorageVolumeResult> {
"description": args.description, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"location": args.location, return pulumi.runtime.invoke(
"name": args.name, "incus:index/getStorageVolume:getStorageVolume",
"project": args.project, {
"remote": args.remote, contentType: args.contentType,
"storagePool": args.storagePool, description: args.description,
"target": args.target, location: args.location,
"type": args.type, name: args.name,
}, opts); project: args.project,
remote: args.remote,
storagePool: args.storagePool,
target: args.target,
type: args.type,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getStorageVolume. * A collection of arguments for invoking getStorageVolume.
*/ */
export interface GetStorageVolumeArgs { export interface GetStorageVolumeArgs {
/** /**
* Storage Volume content type. * Storage Volume content type.
*/ */
contentType?: string; contentType?: string;
/** /**
* Description of the storage volume. * Description of the storage volume.
*/ */
description?: string; description?: string;
/** /**
* Location of the storage volume. * Location of the storage volume.
*/ */
location?: string; location?: string;
/** /**
* **Required** - Name of the storage volume. * **Required** - Name of the storage volume.
*/ */
name: string; name: string;
/** /**
* *Optional* - Name of the project where the storage volume is be stored. * *Optional* - Name of the project where the storage volume is be stored.
*/ */
project?: string; project?: string;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: string; remote?: string;
/** /**
* **Required** - Name of the parent storage pool. * **Required** - Name of the parent storage pool.
*/ */
storagePool: string; storagePool: string;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: string; target?: string;
/** /**
* **Required** - Storage Volume type. * **Required** - Storage Volume type.
*/ */
type: string; type: string;
} }
/** /**
* A collection of values returned by getStorageVolume. * A collection of values returned by getStorageVolume.
*/ */
export interface GetStorageVolumeResult { export interface GetStorageVolumeResult {
/** /**
* Map of key/value pairs of config settings. * Map of key/value pairs of config settings.
* [storage volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/) * [storage volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/)
*/ */
readonly config: {[key: string]: string}; readonly config: { [key: string]: string };
/** /**
* Storage Volume content type. * Storage Volume content type.
*/ */
readonly contentType: string; readonly contentType: string;
/** /**
* Description of the storage volume. * Description of the storage volume.
*/ */
readonly description: string; readonly description: string;
/** /**
* The provider-assigned unique ID for this managed resource. * The provider-assigned unique ID for this managed resource.
*/ */
readonly id: string; readonly id: string;
/** /**
* Location of the storage volume. * Location of the storage volume.
*/ */
readonly location: string; readonly location: string;
readonly name: string; readonly name: string;
readonly project?: string; readonly project?: string;
readonly remote?: string; readonly remote?: string;
readonly storagePool: string; readonly storagePool: string;
readonly target?: string; readonly target?: string;
readonly type: string; readonly type: string;
} }
/** /**
* ## # incus.StorageVolume * ## # incus.StorageVolume
@@ -134,60 +141,67 @@ export interface GetStorageVolumeResult {
* export const storageVolumeName = _this.then(_this => _this.name); * export const storageVolumeName = _this.then(_this => _this.name);
* ``` * ```
*/ */
export function getStorageVolumeOutput(args: GetStorageVolumeOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetStorageVolumeResult> { export function getStorageVolumeOutput(
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); args: GetStorageVolumeOutputArgs,
return pulumi.runtime.invokeOutput("incus:index/getStorageVolume:getStorageVolume", { opts?: pulumi.InvokeOutputOptions,
"contentType": args.contentType, ): pulumi.Output<GetStorageVolumeResult> {
"description": args.description, opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
"location": args.location, return pulumi.runtime.invokeOutput(
"name": args.name, "incus:index/getStorageVolume:getStorageVolume",
"project": args.project, {
"remote": args.remote, contentType: args.contentType,
"storagePool": args.storagePool, description: args.description,
"target": args.target, location: args.location,
"type": args.type, name: args.name,
}, opts); project: args.project,
remote: args.remote,
storagePool: args.storagePool,
target: args.target,
type: args.type,
},
opts,
);
} }
/** /**
* A collection of arguments for invoking getStorageVolume. * A collection of arguments for invoking getStorageVolume.
*/ */
export interface GetStorageVolumeOutputArgs { export interface GetStorageVolumeOutputArgs {
/** /**
* Storage Volume content type. * Storage Volume content type.
*/ */
contentType?: pulumi.Input<string>; contentType?: pulumi.Input<string>;
/** /**
* Description of the storage volume. * Description of the storage volume.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* Location of the storage volume. * Location of the storage volume.
*/ */
location?: pulumi.Input<string>; location?: pulumi.Input<string>;
/** /**
* **Required** - Name of the storage volume. * **Required** - Name of the storage volume.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the storage volume is be stored. * *Optional* - Name of the project where the storage volume is be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource was created. If * *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* **Required** - Name of the parent storage pool. * **Required** - Name of the parent storage pool.
*/ */
storagePool: pulumi.Input<string>; storagePool: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
/** /**
* **Required** - Storage Volume type. * **Required** - Storage Volume type.
*/ */
type: pulumi.Input<string>; type: pulumi.Input<string>;
} }

341
sdk/nodejs/image.ts generated
View File

@@ -57,186 +57,195 @@ import * as utilities from "./utilities";
* * See the Incus [documentation](https://linuxcontainers.org/incus/docs/main/howto/images_remote) for more info on default image remotes. * * See the Incus [documentation](https://linuxcontainers.org/incus/docs/main/howto/images_remote) for more info on default image remotes.
*/ */
export class Image extends pulumi.CustomResource { export class Image extends pulumi.CustomResource {
/** /**
* Get an existing Image resource's state with the given name, ID, and optional extra * Get an existing Image resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ImageState, opts?: pulumi.CustomResourceOptions): Image { public static get(
return new Image(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: ImageState,
opts?: pulumi.CustomResourceOptions,
): Image {
return new Image(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/image:Image'; public static readonly __pulumiType = "incus:index/image:Image";
/** /**
* Returns true if the given object is an instance of Image. This is designed to work even * Returns true if the given object is an instance of Image. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is Image { public static isInstance(obj: any): obj is Image {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === Image.__pulumiType; return obj["__pulumiType"] === Image.__pulumiType;
} }
/** /**
* Image alias * Image alias
*/ */
declare public readonly aliases: pulumi.Output<outputs.ImageAlias[] | undefined>; declare public readonly aliases: pulumi.Output<outputs.ImageAlias[] | undefined>;
/** /**
* The list of aliases that were copied from the * The list of aliases that were copied from the
* `sourceImage`. * `sourceImage`.
*/ */
declare public /*out*/ readonly copiedAliases: pulumi.Output<string[]>; declare public readonly /*out*/ copiedAliases: pulumi.Output<string[]>;
/** /**
* The datetime of image creation, in Unix time. * The datetime of image creation, in Unix time.
*/ */
declare public /*out*/ readonly createdAt: pulumi.Output<number>; declare public readonly /*out*/ createdAt: pulumi.Output<number>;
/** /**
* The unique hash fingperint of the image. * The unique hash fingperint of the image.
*/ */
declare public /*out*/ readonly fingerprint: pulumi.Output<string>; declare public readonly /*out*/ fingerprint: pulumi.Output<string>;
/** /**
* *Optional* - Name of the project where the image will be stored. * *Optional* - Name of the project where the image will be stored.
*/ */
declare public readonly project: pulumi.Output<string | undefined>; declare public readonly project: pulumi.Output<string | undefined>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
declare public /*out*/ readonly resourceId: pulumi.Output<string>; declare public readonly /*out*/ resourceId: pulumi.Output<string>;
/** /**
* *Optional* - The image file from the local file system from which the image will be created. See reference below. * *Optional* - The image file from the local file system from which the image will be created. See reference below.
*/ */
declare public readonly sourceFile: pulumi.Output<outputs.ImageSourceFile | undefined>; declare public readonly sourceFile: pulumi.Output<outputs.ImageSourceFile | undefined>;
/** /**
* *Optional* - The source image from which the image will be created. See reference below. * *Optional* - The source image from which the image will be created. See reference below.
*/ */
declare public readonly sourceImage: pulumi.Output<outputs.ImageSourceImage | undefined>; declare public readonly sourceImage: pulumi.Output<outputs.ImageSourceImage | undefined>;
/** /**
* *Optional* - The source instance from which the image will be created. See reference below. * *Optional* - The source instance from which the image will be created. See reference below.
*/ */
declare public readonly sourceInstance: pulumi.Output<outputs.ImageSourceInstance | undefined>; declare public readonly sourceInstance: pulumi.Output<outputs.ImageSourceInstance | undefined>;
/** /**
* Create a Image resource with the given unique name, arguments, and options. * Create a Image resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args?: ImageArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args?: ImageArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: ImageArgs | ImageState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: ImageArgs | ImageState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as ImageState | undefined; ) {
resourceInputs["aliases"] = state?.aliases; let resourceInputs: pulumi.Inputs = {};
resourceInputs["copiedAliases"] = state?.copiedAliases; opts = opts || {};
resourceInputs["createdAt"] = state?.createdAt; if (opts.id) {
resourceInputs["fingerprint"] = state?.fingerprint; const state = argsOrState as ImageState | undefined;
resourceInputs["project"] = state?.project; resourceInputs["aliases"] = state?.aliases;
resourceInputs["remote"] = state?.remote; resourceInputs["copiedAliases"] = state?.copiedAliases;
resourceInputs["resourceId"] = state?.resourceId; resourceInputs["createdAt"] = state?.createdAt;
resourceInputs["sourceFile"] = state?.sourceFile; resourceInputs["fingerprint"] = state?.fingerprint;
resourceInputs["sourceImage"] = state?.sourceImage; resourceInputs["project"] = state?.project;
resourceInputs["sourceInstance"] = state?.sourceInstance; resourceInputs["remote"] = state?.remote;
} else { resourceInputs["resourceId"] = state?.resourceId;
const args = argsOrState as ImageArgs | undefined; resourceInputs["sourceFile"] = state?.sourceFile;
resourceInputs["aliases"] = args?.aliases; resourceInputs["sourceImage"] = state?.sourceImage;
resourceInputs["project"] = args?.project; resourceInputs["sourceInstance"] = state?.sourceInstance;
resourceInputs["remote"] = args?.remote; } else {
resourceInputs["sourceFile"] = args?.sourceFile; const args = argsOrState as ImageArgs | undefined;
resourceInputs["sourceImage"] = args?.sourceImage; resourceInputs["aliases"] = args?.aliases;
resourceInputs["sourceInstance"] = args?.sourceInstance; resourceInputs["project"] = args?.project;
resourceInputs["copiedAliases"] = undefined /*out*/; resourceInputs["remote"] = args?.remote;
resourceInputs["createdAt"] = undefined /*out*/; resourceInputs["sourceFile"] = args?.sourceFile;
resourceInputs["fingerprint"] = undefined /*out*/; resourceInputs["sourceImage"] = args?.sourceImage;
resourceInputs["resourceId"] = undefined /*out*/; resourceInputs["sourceInstance"] = args?.sourceInstance;
} resourceInputs["copiedAliases"] = undefined /*out*/;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["createdAt"] = undefined /*out*/;
super(Image.__pulumiType, name, resourceInputs, opts); resourceInputs["fingerprint"] = undefined /*out*/;
} resourceInputs["resourceId"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(Image.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering Image resources. * Input properties used for looking up and filtering Image resources.
*/ */
export interface ImageState { export interface ImageState {
/** /**
* Image alias * Image alias
*/ */
aliases?: pulumi.Input<pulumi.Input<inputs.ImageAlias>[]>; aliases?: pulumi.Input<pulumi.Input<inputs.ImageAlias>[]>;
/** /**
* The list of aliases that were copied from the * The list of aliases that were copied from the
* `sourceImage`. * `sourceImage`.
*/ */
copiedAliases?: pulumi.Input<pulumi.Input<string>[]>; copiedAliases?: pulumi.Input<pulumi.Input<string>[]>;
/** /**
* The datetime of image creation, in Unix time. * The datetime of image creation, in Unix time.
*/ */
createdAt?: pulumi.Input<number>; createdAt?: pulumi.Input<number>;
/** /**
* The unique hash fingperint of the image. * The unique hash fingperint of the image.
*/ */
fingerprint?: pulumi.Input<string>; fingerprint?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the image will be stored. * *Optional* - Name of the project where the image will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
resourceId?: pulumi.Input<string>; resourceId?: pulumi.Input<string>;
/** /**
* *Optional* - The image file from the local file system from which the image will be created. See reference below. * *Optional* - The image file from the local file system from which the image will be created. See reference below.
*/ */
sourceFile?: pulumi.Input<inputs.ImageSourceFile>; sourceFile?: pulumi.Input<inputs.ImageSourceFile>;
/** /**
* *Optional* - The source image from which the image will be created. See reference below. * *Optional* - The source image from which the image will be created. See reference below.
*/ */
sourceImage?: pulumi.Input<inputs.ImageSourceImage>; sourceImage?: pulumi.Input<inputs.ImageSourceImage>;
/** /**
* *Optional* - The source instance from which the image will be created. See reference below. * *Optional* - The source instance from which the image will be created. See reference below.
*/ */
sourceInstance?: pulumi.Input<inputs.ImageSourceInstance>; sourceInstance?: pulumi.Input<inputs.ImageSourceInstance>;
} }
/** /**
* The set of arguments for constructing a Image resource. * The set of arguments for constructing a Image resource.
*/ */
export interface ImageArgs { export interface ImageArgs {
/** /**
* Image alias * Image alias
*/ */
aliases?: pulumi.Input<pulumi.Input<inputs.ImageAlias>[]>; aliases?: pulumi.Input<pulumi.Input<inputs.ImageAlias>[]>;
/** /**
* *Optional* - Name of the project where the image will be stored. * *Optional* - Name of the project where the image will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - The image file from the local file system from which the image will be created. See reference below. * *Optional* - The image file from the local file system from which the image will be created. See reference below.
*/ */
sourceFile?: pulumi.Input<inputs.ImageSourceFile>; sourceFile?: pulumi.Input<inputs.ImageSourceFile>;
/** /**
* *Optional* - The source image from which the image will be created. See reference below. * *Optional* - The source image from which the image will be created. See reference below.
*/ */
sourceImage?: pulumi.Input<inputs.ImageSourceImage>; sourceImage?: pulumi.Input<inputs.ImageSourceImage>;
/** /**
* *Optional* - The source instance from which the image will be created. See reference below. * *Optional* - The source instance from which the image will be created. See reference below.
*/ */
sourceInstance?: pulumi.Input<inputs.ImageSourceInstance>; sourceInstance?: pulumi.Input<inputs.ImageSourceInstance>;
} }

329
sdk/nodejs/index.ts generated
View File

@@ -17,88 +17,159 @@ utilities.lazyLoad(exports, ["ClusterGroup"], () => require("./clusterGroup"));
export { ClusterGroupMemberArgs, ClusterGroupMemberState } from "./clusterGroupMember"; export { ClusterGroupMemberArgs, ClusterGroupMemberState } from "./clusterGroupMember";
export type ClusterGroupMember = import("./clusterGroupMember").ClusterGroupMember; export type ClusterGroupMember = import("./clusterGroupMember").ClusterGroupMember;
export const ClusterGroupMember: typeof import("./clusterGroupMember").ClusterGroupMember = null as any; export const ClusterGroupMember: typeof import("./clusterGroupMember").ClusterGroupMember =
null as any;
utilities.lazyLoad(exports, ["ClusterGroupMember"], () => require("./clusterGroupMember")); utilities.lazyLoad(exports, ["ClusterGroupMember"], () => require("./clusterGroupMember"));
export { GetClusterArgs, GetClusterResult, GetClusterOutputArgs } from "./getCluster"; export { GetClusterArgs, GetClusterResult, GetClusterOutputArgs } from "./getCluster";
export const getCluster: typeof import("./getCluster").getCluster = null as any; export const getCluster: typeof import("./getCluster").getCluster = null as any;
export const getClusterOutput: typeof import("./getCluster").getClusterOutput = null as any; export const getClusterOutput: typeof import("./getCluster").getClusterOutput = null as any;
utilities.lazyLoad(exports, ["getCluster","getClusterOutput"], () => require("./getCluster")); utilities.lazyLoad(exports, ["getCluster", "getClusterOutput"], () => require("./getCluster"));
export { GetImageArgs, GetImageResult, GetImageOutputArgs } from "./getImage"; export { GetImageArgs, GetImageResult, GetImageOutputArgs } from "./getImage";
export const getImage: typeof import("./getImage").getImage = null as any; export const getImage: typeof import("./getImage").getImage = null as any;
export const getImageOutput: typeof import("./getImage").getImageOutput = null as any; export const getImageOutput: typeof import("./getImage").getImageOutput = null as any;
utilities.lazyLoad(exports, ["getImage","getImageOutput"], () => require("./getImage")); utilities.lazyLoad(exports, ["getImage", "getImageOutput"], () => require("./getImage"));
export { GetInstanceArgs, GetInstanceResult, GetInstanceOutputArgs } from "./getInstance"; export { GetInstanceArgs, GetInstanceResult, GetInstanceOutputArgs } from "./getInstance";
export const getInstance: typeof import("./getInstance").getInstance = null as any; export const getInstance: typeof import("./getInstance").getInstance = null as any;
export const getInstanceOutput: typeof import("./getInstance").getInstanceOutput = null as any; export const getInstanceOutput: typeof import("./getInstance").getInstanceOutput = null as any;
utilities.lazyLoad(exports, ["getInstance","getInstanceOutput"], () => require("./getInstance")); utilities.lazyLoad(exports, ["getInstance", "getInstanceOutput"], () => require("./getInstance"));
export { GetNetworkArgs, GetNetworkResult, GetNetworkOutputArgs } from "./getNetwork"; export { GetNetworkArgs, GetNetworkResult, GetNetworkOutputArgs } from "./getNetwork";
export const getNetwork: typeof import("./getNetwork").getNetwork = null as any; export const getNetwork: typeof import("./getNetwork").getNetwork = null as any;
export const getNetworkOutput: typeof import("./getNetwork").getNetworkOutput = null as any; export const getNetworkOutput: typeof import("./getNetwork").getNetworkOutput = null as any;
utilities.lazyLoad(exports, ["getNetwork","getNetworkOutput"], () => require("./getNetwork")); utilities.lazyLoad(exports, ["getNetwork", "getNetworkOutput"], () => require("./getNetwork"));
export { GetNetworkAclArgs, GetNetworkAclResult, GetNetworkAclOutputArgs } from "./getNetworkAcl"; export { GetNetworkAclArgs, GetNetworkAclResult, GetNetworkAclOutputArgs } from "./getNetworkAcl";
export const getNetworkAcl: typeof import("./getNetworkAcl").getNetworkAcl = null as any; export const getNetworkAcl: typeof import("./getNetworkAcl").getNetworkAcl = null as any;
export const getNetworkAclOutput: typeof import("./getNetworkAcl").getNetworkAclOutput = null as any; export const getNetworkAclOutput: typeof import("./getNetworkAcl").getNetworkAclOutput =
utilities.lazyLoad(exports, ["getNetworkAcl","getNetworkAclOutput"], () => require("./getNetworkAcl")); null as any;
utilities.lazyLoad(exports, ["getNetworkAcl", "getNetworkAclOutput"], () =>
require("./getNetworkAcl"),
);
export { GetNetworkAddressSetArgs, GetNetworkAddressSetResult, GetNetworkAddressSetOutputArgs } from "./getNetworkAddressSet"; export {
export const getNetworkAddressSet: typeof import("./getNetworkAddressSet").getNetworkAddressSet = null as any; GetNetworkAddressSetArgs,
export const getNetworkAddressSetOutput: typeof import("./getNetworkAddressSet").getNetworkAddressSetOutput = null as any; GetNetworkAddressSetResult,
utilities.lazyLoad(exports, ["getNetworkAddressSet","getNetworkAddressSetOutput"], () => require("./getNetworkAddressSet")); GetNetworkAddressSetOutputArgs,
} from "./getNetworkAddressSet";
export const getNetworkAddressSet: typeof import("./getNetworkAddressSet").getNetworkAddressSet =
null as any;
export const getNetworkAddressSetOutput: typeof import("./getNetworkAddressSet").getNetworkAddressSetOutput =
null as any;
utilities.lazyLoad(exports, ["getNetworkAddressSet", "getNetworkAddressSetOutput"], () =>
require("./getNetworkAddressSet"),
);
export { GetNetworkForwardArgs, GetNetworkForwardResult, GetNetworkForwardOutputArgs } from "./getNetworkForward"; export {
export const getNetworkForward: typeof import("./getNetworkForward").getNetworkForward = null as any; GetNetworkForwardArgs,
export const getNetworkForwardOutput: typeof import("./getNetworkForward").getNetworkForwardOutput = null as any; GetNetworkForwardResult,
utilities.lazyLoad(exports, ["getNetworkForward","getNetworkForwardOutput"], () => require("./getNetworkForward")); GetNetworkForwardOutputArgs,
} from "./getNetworkForward";
export const getNetworkForward: typeof import("./getNetworkForward").getNetworkForward =
null as any;
export const getNetworkForwardOutput: typeof import("./getNetworkForward").getNetworkForwardOutput =
null as any;
utilities.lazyLoad(exports, ["getNetworkForward", "getNetworkForwardOutput"], () =>
require("./getNetworkForward"),
);
export { GetNetworkIntegrationArgs, GetNetworkIntegrationResult, GetNetworkIntegrationOutputArgs } from "./getNetworkIntegration"; export {
export const getNetworkIntegration: typeof import("./getNetworkIntegration").getNetworkIntegration = null as any; GetNetworkIntegrationArgs,
export const getNetworkIntegrationOutput: typeof import("./getNetworkIntegration").getNetworkIntegrationOutput = null as any; GetNetworkIntegrationResult,
utilities.lazyLoad(exports, ["getNetworkIntegration","getNetworkIntegrationOutput"], () => require("./getNetworkIntegration")); GetNetworkIntegrationOutputArgs,
} from "./getNetworkIntegration";
export const getNetworkIntegration: typeof import("./getNetworkIntegration").getNetworkIntegration =
null as any;
export const getNetworkIntegrationOutput: typeof import("./getNetworkIntegration").getNetworkIntegrationOutput =
null as any;
utilities.lazyLoad(exports, ["getNetworkIntegration", "getNetworkIntegrationOutput"], () =>
require("./getNetworkIntegration"),
);
export { GetNetworkLoadBalancerArgs, GetNetworkLoadBalancerResult, GetNetworkLoadBalancerOutputArgs } from "./getNetworkLoadBalancer"; export {
export const getNetworkLoadBalancer: typeof import("./getNetworkLoadBalancer").getNetworkLoadBalancer = null as any; GetNetworkLoadBalancerArgs,
export const getNetworkLoadBalancerOutput: typeof import("./getNetworkLoadBalancer").getNetworkLoadBalancerOutput = null as any; GetNetworkLoadBalancerResult,
utilities.lazyLoad(exports, ["getNetworkLoadBalancer","getNetworkLoadBalancerOutput"], () => require("./getNetworkLoadBalancer")); GetNetworkLoadBalancerOutputArgs,
} from "./getNetworkLoadBalancer";
export const getNetworkLoadBalancer: typeof import("./getNetworkLoadBalancer").getNetworkLoadBalancer =
null as any;
export const getNetworkLoadBalancerOutput: typeof import("./getNetworkLoadBalancer").getNetworkLoadBalancerOutput =
null as any;
utilities.lazyLoad(exports, ["getNetworkLoadBalancer", "getNetworkLoadBalancerOutput"], () =>
require("./getNetworkLoadBalancer"),
);
export { GetNetworkPeerArgs, GetNetworkPeerResult, GetNetworkPeerOutputArgs } from "./getNetworkPeer"; export {
GetNetworkPeerArgs,
GetNetworkPeerResult,
GetNetworkPeerOutputArgs,
} from "./getNetworkPeer";
export const getNetworkPeer: typeof import("./getNetworkPeer").getNetworkPeer = null as any; export const getNetworkPeer: typeof import("./getNetworkPeer").getNetworkPeer = null as any;
export const getNetworkPeerOutput: typeof import("./getNetworkPeer").getNetworkPeerOutput = null as any; export const getNetworkPeerOutput: typeof import("./getNetworkPeer").getNetworkPeerOutput =
utilities.lazyLoad(exports, ["getNetworkPeer","getNetworkPeerOutput"], () => require("./getNetworkPeer")); null as any;
utilities.lazyLoad(exports, ["getNetworkPeer", "getNetworkPeerOutput"], () =>
require("./getNetworkPeer"),
);
export { GetNetworkZoneArgs, GetNetworkZoneResult, GetNetworkZoneOutputArgs } from "./getNetworkZone"; export {
GetNetworkZoneArgs,
GetNetworkZoneResult,
GetNetworkZoneOutputArgs,
} from "./getNetworkZone";
export const getNetworkZone: typeof import("./getNetworkZone").getNetworkZone = null as any; export const getNetworkZone: typeof import("./getNetworkZone").getNetworkZone = null as any;
export const getNetworkZoneOutput: typeof import("./getNetworkZone").getNetworkZoneOutput = null as any; export const getNetworkZoneOutput: typeof import("./getNetworkZone").getNetworkZoneOutput =
utilities.lazyLoad(exports, ["getNetworkZone","getNetworkZoneOutput"], () => require("./getNetworkZone")); null as any;
utilities.lazyLoad(exports, ["getNetworkZone", "getNetworkZoneOutput"], () =>
require("./getNetworkZone"),
);
export { GetProfileArgs, GetProfileResult, GetProfileOutputArgs } from "./getProfile"; export { GetProfileArgs, GetProfileResult, GetProfileOutputArgs } from "./getProfile";
export const getProfile: typeof import("./getProfile").getProfile = null as any; export const getProfile: typeof import("./getProfile").getProfile = null as any;
export const getProfileOutput: typeof import("./getProfile").getProfileOutput = null as any; export const getProfileOutput: typeof import("./getProfile").getProfileOutput = null as any;
utilities.lazyLoad(exports, ["getProfile","getProfileOutput"], () => require("./getProfile")); utilities.lazyLoad(exports, ["getProfile", "getProfileOutput"], () => require("./getProfile"));
export { GetProjectArgs, GetProjectResult, GetProjectOutputArgs } from "./getProject"; export { GetProjectArgs, GetProjectResult, GetProjectOutputArgs } from "./getProject";
export const getProject: typeof import("./getProject").getProject = null as any; export const getProject: typeof import("./getProject").getProject = null as any;
export const getProjectOutput: typeof import("./getProject").getProjectOutput = null as any; export const getProjectOutput: typeof import("./getProject").getProjectOutput = null as any;
utilities.lazyLoad(exports, ["getProject","getProjectOutput"], () => require("./getProject")); utilities.lazyLoad(exports, ["getProject", "getProjectOutput"], () => require("./getProject"));
export { GetStorageBucketArgs, GetStorageBucketResult, GetStorageBucketOutputArgs } from "./getStorageBucket"; export {
GetStorageBucketArgs,
GetStorageBucketResult,
GetStorageBucketOutputArgs,
} from "./getStorageBucket";
export const getStorageBucket: typeof import("./getStorageBucket").getStorageBucket = null as any; export const getStorageBucket: typeof import("./getStorageBucket").getStorageBucket = null as any;
export const getStorageBucketOutput: typeof import("./getStorageBucket").getStorageBucketOutput = null as any; export const getStorageBucketOutput: typeof import("./getStorageBucket").getStorageBucketOutput =
utilities.lazyLoad(exports, ["getStorageBucket","getStorageBucketOutput"], () => require("./getStorageBucket")); null as any;
utilities.lazyLoad(exports, ["getStorageBucket", "getStorageBucketOutput"], () =>
require("./getStorageBucket"),
);
export { GetStoragePoolArgs, GetStoragePoolResult, GetStoragePoolOutputArgs } from "./getStoragePool"; export {
GetStoragePoolArgs,
GetStoragePoolResult,
GetStoragePoolOutputArgs,
} from "./getStoragePool";
export const getStoragePool: typeof import("./getStoragePool").getStoragePool = null as any; export const getStoragePool: typeof import("./getStoragePool").getStoragePool = null as any;
export const getStoragePoolOutput: typeof import("./getStoragePool").getStoragePoolOutput = null as any; export const getStoragePoolOutput: typeof import("./getStoragePool").getStoragePoolOutput =
utilities.lazyLoad(exports, ["getStoragePool","getStoragePoolOutput"], () => require("./getStoragePool")); null as any;
utilities.lazyLoad(exports, ["getStoragePool", "getStoragePoolOutput"], () =>
require("./getStoragePool"),
);
export { GetStorageVolumeArgs, GetStorageVolumeResult, GetStorageVolumeOutputArgs } from "./getStorageVolume"; export {
GetStorageVolumeArgs,
GetStorageVolumeResult,
GetStorageVolumeOutputArgs,
} from "./getStorageVolume";
export const getStorageVolume: typeof import("./getStorageVolume").getStorageVolume = null as any; export const getStorageVolume: typeof import("./getStorageVolume").getStorageVolume = null as any;
export const getStorageVolumeOutput: typeof import("./getStorageVolume").getStorageVolumeOutput = null as any; export const getStorageVolumeOutput: typeof import("./getStorageVolume").getStorageVolumeOutput =
utilities.lazyLoad(exports, ["getStorageVolume","getStorageVolumeOutput"], () => require("./getStorageVolume")); null as any;
utilities.lazyLoad(exports, ["getStorageVolume", "getStorageVolumeOutput"], () =>
require("./getStorageVolume"),
);
export { ImageArgs, ImageState } from "./image"; export { ImageArgs, ImageState } from "./image";
export type Image = import("./image").Image; export type Image = import("./image").Image;
@@ -127,7 +198,8 @@ utilities.lazyLoad(exports, ["NetworkAcl"], () => require("./networkAcl"));
export { NetworkAddressSetArgs, NetworkAddressSetState } from "./networkAddressSet"; export { NetworkAddressSetArgs, NetworkAddressSetState } from "./networkAddressSet";
export type NetworkAddressSet = import("./networkAddressSet").NetworkAddressSet; export type NetworkAddressSet = import("./networkAddressSet").NetworkAddressSet;
export const NetworkAddressSet: typeof import("./networkAddressSet").NetworkAddressSet = null as any; export const NetworkAddressSet: typeof import("./networkAddressSet").NetworkAddressSet =
null as any;
utilities.lazyLoad(exports, ["NetworkAddressSet"], () => require("./networkAddressSet")); utilities.lazyLoad(exports, ["NetworkAddressSet"], () => require("./networkAddressSet"));
export { NetworkForwardArgs, NetworkForwardState } from "./networkForward"; export { NetworkForwardArgs, NetworkForwardState } from "./networkForward";
@@ -137,12 +209,14 @@ utilities.lazyLoad(exports, ["NetworkForward"], () => require("./networkForward"
export { NetworkIntegrationArgs, NetworkIntegrationState } from "./networkIntegration"; export { NetworkIntegrationArgs, NetworkIntegrationState } from "./networkIntegration";
export type NetworkIntegration = import("./networkIntegration").NetworkIntegration; export type NetworkIntegration = import("./networkIntegration").NetworkIntegration;
export const NetworkIntegration: typeof import("./networkIntegration").NetworkIntegration = null as any; export const NetworkIntegration: typeof import("./networkIntegration").NetworkIntegration =
null as any;
utilities.lazyLoad(exports, ["NetworkIntegration"], () => require("./networkIntegration")); utilities.lazyLoad(exports, ["NetworkIntegration"], () => require("./networkIntegration"));
export { NetworkLoadBalancerArgs, NetworkLoadBalancerState } from "./networkLoadBalancer"; export { NetworkLoadBalancerArgs, NetworkLoadBalancerState } from "./networkLoadBalancer";
export type NetworkLoadBalancer = import("./networkLoadBalancer").NetworkLoadBalancer; export type NetworkLoadBalancer = import("./networkLoadBalancer").NetworkLoadBalancer;
export const NetworkLoadBalancer: typeof import("./networkLoadBalancer").NetworkLoadBalancer = null as any; export const NetworkLoadBalancer: typeof import("./networkLoadBalancer").NetworkLoadBalancer =
null as any;
utilities.lazyLoad(exports, ["NetworkLoadBalancer"], () => require("./networkLoadBalancer")); utilities.lazyLoad(exports, ["NetworkLoadBalancer"], () => require("./networkLoadBalancer"));
export { NetworkPeerArgs, NetworkPeerState } from "./networkPeer"; export { NetworkPeerArgs, NetworkPeerState } from "./networkPeer";
@@ -157,7 +231,8 @@ utilities.lazyLoad(exports, ["NetworkZone"], () => require("./networkZone"));
export { NetworkZoneRecordArgs, NetworkZoneRecordState } from "./networkZoneRecord"; export { NetworkZoneRecordArgs, NetworkZoneRecordState } from "./networkZoneRecord";
export type NetworkZoneRecord = import("./networkZoneRecord").NetworkZoneRecord; export type NetworkZoneRecord = import("./networkZoneRecord").NetworkZoneRecord;
export const NetworkZoneRecord: typeof import("./networkZoneRecord").NetworkZoneRecord = null as any; export const NetworkZoneRecord: typeof import("./networkZoneRecord").NetworkZoneRecord =
null as any;
utilities.lazyLoad(exports, ["NetworkZoneRecord"], () => require("./networkZoneRecord")); utilities.lazyLoad(exports, ["NetworkZoneRecord"], () => require("./networkZoneRecord"));
export { ProfileArgs, ProfileState } from "./profile"; export { ProfileArgs, ProfileState } from "./profile";
@@ -198,97 +273,93 @@ export type StorageVolume = import("./storageVolume").StorageVolume;
export const StorageVolume: typeof import("./storageVolume").StorageVolume = null as any; export const StorageVolume: typeof import("./storageVolume").StorageVolume = null as any;
utilities.lazyLoad(exports, ["StorageVolume"], () => require("./storageVolume")); utilities.lazyLoad(exports, ["StorageVolume"], () => require("./storageVolume"));
// Export sub-modules: // Export sub-modules:
import * as config from "./config"; import * as config from "./config";
import * as types from "./types"; import * as types from "./types";
export { export { config, types };
config,
types,
};
const _module = { const _module = {
version: utilities.getVersion(), version: utilities.getVersion(),
construct: (name: string, type: string, urn: string): pulumi.Resource => { construct: (name: string, type: string, urn: string): pulumi.Resource => {
switch (type) { switch (type) {
case "incus:index/certificate:Certificate": case "incus:index/certificate:Certificate":
return new Certificate(name, <any>undefined, { urn }) return new Certificate(name, <any>undefined, { urn });
case "incus:index/clusterGroup:ClusterGroup": case "incus:index/clusterGroup:ClusterGroup":
return new ClusterGroup(name, <any>undefined, { urn }) return new ClusterGroup(name, <any>undefined, { urn });
case "incus:index/clusterGroupMember:ClusterGroupMember": case "incus:index/clusterGroupMember:ClusterGroupMember":
return new ClusterGroupMember(name, <any>undefined, { urn }) return new ClusterGroupMember(name, <any>undefined, { urn });
case "incus:index/image:Image": case "incus:index/image:Image":
return new Image(name, <any>undefined, { urn }) return new Image(name, <any>undefined, { urn });
case "incus:index/instance:Instance": case "incus:index/instance:Instance":
return new Instance(name, <any>undefined, { urn }) return new Instance(name, <any>undefined, { urn });
case "incus:index/instanceSnapshot:InstanceSnapshot": case "incus:index/instanceSnapshot:InstanceSnapshot":
return new InstanceSnapshot(name, <any>undefined, { urn }) return new InstanceSnapshot(name, <any>undefined, { urn });
case "incus:index/network:Network": case "incus:index/network:Network":
return new Network(name, <any>undefined, { urn }) return new Network(name, <any>undefined, { urn });
case "incus:index/networkAcl:NetworkAcl": case "incus:index/networkAcl:NetworkAcl":
return new NetworkAcl(name, <any>undefined, { urn }) return new NetworkAcl(name, <any>undefined, { urn });
case "incus:index/networkAddressSet:NetworkAddressSet": case "incus:index/networkAddressSet:NetworkAddressSet":
return new NetworkAddressSet(name, <any>undefined, { urn }) return new NetworkAddressSet(name, <any>undefined, { urn });
case "incus:index/networkForward:NetworkForward": case "incus:index/networkForward:NetworkForward":
return new NetworkForward(name, <any>undefined, { urn }) return new NetworkForward(name, <any>undefined, { urn });
case "incus:index/networkIntegration:NetworkIntegration": case "incus:index/networkIntegration:NetworkIntegration":
return new NetworkIntegration(name, <any>undefined, { urn }) return new NetworkIntegration(name, <any>undefined, { urn });
case "incus:index/networkLoadBalancer:NetworkLoadBalancer": case "incus:index/networkLoadBalancer:NetworkLoadBalancer":
return new NetworkLoadBalancer(name, <any>undefined, { urn }) return new NetworkLoadBalancer(name, <any>undefined, { urn });
case "incus:index/networkPeer:NetworkPeer": case "incus:index/networkPeer:NetworkPeer":
return new NetworkPeer(name, <any>undefined, { urn }) return new NetworkPeer(name, <any>undefined, { urn });
case "incus:index/networkZone:NetworkZone": case "incus:index/networkZone:NetworkZone":
return new NetworkZone(name, <any>undefined, { urn }) return new NetworkZone(name, <any>undefined, { urn });
case "incus:index/networkZoneRecord:NetworkZoneRecord": case "incus:index/networkZoneRecord:NetworkZoneRecord":
return new NetworkZoneRecord(name, <any>undefined, { urn }) return new NetworkZoneRecord(name, <any>undefined, { urn });
case "incus:index/profile:Profile": case "incus:index/profile:Profile":
return new Profile(name, <any>undefined, { urn }) return new Profile(name, <any>undefined, { urn });
case "incus:index/project:Project": case "incus:index/project:Project":
return new Project(name, <any>undefined, { urn }) return new Project(name, <any>undefined, { urn });
case "incus:index/server:Server": case "incus:index/server:Server":
return new Server(name, <any>undefined, { urn }) return new Server(name, <any>undefined, { urn });
case "incus:index/storageBucket:StorageBucket": case "incus:index/storageBucket:StorageBucket":
return new StorageBucket(name, <any>undefined, { urn }) return new StorageBucket(name, <any>undefined, { urn });
case "incus:index/storageBucketKey:StorageBucketKey": case "incus:index/storageBucketKey:StorageBucketKey":
return new StorageBucketKey(name, <any>undefined, { urn }) return new StorageBucketKey(name, <any>undefined, { urn });
case "incus:index/storagePool:StoragePool": case "incus:index/storagePool:StoragePool":
return new StoragePool(name, <any>undefined, { urn }) return new StoragePool(name, <any>undefined, { urn });
case "incus:index/storageVolume:StorageVolume": case "incus:index/storageVolume:StorageVolume":
return new StorageVolume(name, <any>undefined, { urn }) return new StorageVolume(name, <any>undefined, { urn });
default: default:
throw new Error(`unknown resource type ${type}`); throw new Error(`unknown resource type ${type}`);
} }
}, },
}; };
pulumi.runtime.registerResourceModule("incus", "index/certificate", _module) pulumi.runtime.registerResourceModule("incus", "index/certificate", _module);
pulumi.runtime.registerResourceModule("incus", "index/clusterGroup", _module) pulumi.runtime.registerResourceModule("incus", "index/clusterGroup", _module);
pulumi.runtime.registerResourceModule("incus", "index/clusterGroupMember", _module) pulumi.runtime.registerResourceModule("incus", "index/clusterGroupMember", _module);
pulumi.runtime.registerResourceModule("incus", "index/image", _module) pulumi.runtime.registerResourceModule("incus", "index/image", _module);
pulumi.runtime.registerResourceModule("incus", "index/instance", _module) pulumi.runtime.registerResourceModule("incus", "index/instance", _module);
pulumi.runtime.registerResourceModule("incus", "index/instanceSnapshot", _module) pulumi.runtime.registerResourceModule("incus", "index/instanceSnapshot", _module);
pulumi.runtime.registerResourceModule("incus", "index/network", _module) pulumi.runtime.registerResourceModule("incus", "index/network", _module);
pulumi.runtime.registerResourceModule("incus", "index/networkAcl", _module) pulumi.runtime.registerResourceModule("incus", "index/networkAcl", _module);
pulumi.runtime.registerResourceModule("incus", "index/networkAddressSet", _module) pulumi.runtime.registerResourceModule("incus", "index/networkAddressSet", _module);
pulumi.runtime.registerResourceModule("incus", "index/networkForward", _module) pulumi.runtime.registerResourceModule("incus", "index/networkForward", _module);
pulumi.runtime.registerResourceModule("incus", "index/networkIntegration", _module) pulumi.runtime.registerResourceModule("incus", "index/networkIntegration", _module);
pulumi.runtime.registerResourceModule("incus", "index/networkLoadBalancer", _module) pulumi.runtime.registerResourceModule("incus", "index/networkLoadBalancer", _module);
pulumi.runtime.registerResourceModule("incus", "index/networkPeer", _module) pulumi.runtime.registerResourceModule("incus", "index/networkPeer", _module);
pulumi.runtime.registerResourceModule("incus", "index/networkZone", _module) pulumi.runtime.registerResourceModule("incus", "index/networkZone", _module);
pulumi.runtime.registerResourceModule("incus", "index/networkZoneRecord", _module) pulumi.runtime.registerResourceModule("incus", "index/networkZoneRecord", _module);
pulumi.runtime.registerResourceModule("incus", "index/profile", _module) pulumi.runtime.registerResourceModule("incus", "index/profile", _module);
pulumi.runtime.registerResourceModule("incus", "index/project", _module) pulumi.runtime.registerResourceModule("incus", "index/project", _module);
pulumi.runtime.registerResourceModule("incus", "index/server", _module) pulumi.runtime.registerResourceModule("incus", "index/server", _module);
pulumi.runtime.registerResourceModule("incus", "index/storageBucket", _module) pulumi.runtime.registerResourceModule("incus", "index/storageBucket", _module);
pulumi.runtime.registerResourceModule("incus", "index/storageBucketKey", _module) pulumi.runtime.registerResourceModule("incus", "index/storageBucketKey", _module);
pulumi.runtime.registerResourceModule("incus", "index/storagePool", _module) pulumi.runtime.registerResourceModule("incus", "index/storagePool", _module);
pulumi.runtime.registerResourceModule("incus", "index/storageVolume", _module) pulumi.runtime.registerResourceModule("incus", "index/storageVolume", _module);
pulumi.runtime.registerResourcePackage("incus", { pulumi.runtime.registerResourcePackage("incus", {
version: utilities.getVersion(), version: utilities.getVersion(),
constructProvider: (name: string, type: string, urn: string): pulumi.ProviderResource => { constructProvider: (name: string, type: string, urn: string): pulumi.ProviderResource => {
if (type !== "pulumi:providers:incus") { if (type !== "pulumi:providers:incus") {
throw new Error(`unknown provider type ${type}`); throw new Error(`unknown provider type ${type}`);
} }
return new Provider(name, <any>undefined, { urn }); return new Provider(name, <any>undefined, { urn });
}, },
}); });

707
sdk/nodejs/instance.ts generated
View File

@@ -7,368 +7,379 @@ import * as outputs from "./types/output";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class Instance extends pulumi.CustomResource { export class Instance extends pulumi.CustomResource {
/** /**
* Get an existing Instance resource's state with the given name, ID, and optional extra * Get an existing Instance resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceState, opts?: pulumi.CustomResourceOptions): Instance { public static get(
return new Instance(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: InstanceState,
opts?: pulumi.CustomResourceOptions,
): Instance {
return new Instance(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/instance:Instance'; public static readonly __pulumiType = "incus:index/instance:Instance";
/** /**
* Returns true if the given object is an instance of Instance. This is designed to work even * Returns true if the given object is an instance of Instance. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is Instance { public static isInstance(obj: any): obj is Instance {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === Instance.__pulumiType; return obj["__pulumiType"] === Instance.__pulumiType;
} }
/** /**
* *Optional* - The instance architecture (e.g. x86_64, aarch64). See [Architectures](https://linuxcontainers.org/incus/docs/main/architectures/) for all possible values. * *Optional* - The instance architecture (e.g. x86_64, aarch64). See [Architectures](https://linuxcontainers.org/incus/docs/main/architectures/) for all possible values.
*/ */
declare public readonly architecture: pulumi.Output<string>; declare public readonly architecture: pulumi.Output<string>;
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/). * [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of the instance. * *Optional* - Description of the instance.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* *Optional* - Device definition. See reference below. * *Optional* - Device definition. See reference below.
*/ */
declare public readonly devices: pulumi.Output<outputs.InstanceDevice[] | undefined>; declare public readonly devices: pulumi.Output<outputs.InstanceDevice[] | undefined>;
/** /**
* *Optional* - Boolean indicating if this instance is ephemeral. Defaults to `false`. * *Optional* - Boolean indicating if this instance is ephemeral. Defaults to `false`.
*/ */
declare public readonly ephemeral: pulumi.Output<boolean>; declare public readonly ephemeral: pulumi.Output<boolean>;
/** /**
* *Optional* - File to upload to the instance. See reference below. * *Optional* - File to upload to the instance. See reference below.
*/ */
declare public readonly files: pulumi.Output<outputs.InstanceFile[] | undefined>; declare public readonly files: pulumi.Output<outputs.InstanceFile[] | undefined>;
/** /**
* *Optional* - Base image from which the instance will be created. Must * *Optional* - Base image from which the instance will be created. Must
* specify [an image accessible from the provider remote](https://linuxcontainers.org/incus/docs/main/reference/image_servers/). * specify [an image accessible from the provider remote](https://linuxcontainers.org/incus/docs/main/reference/image_servers/).
*/ */
declare public readonly image: pulumi.Output<string | undefined>; declare public readonly image: pulumi.Output<string | undefined>;
/** /**
* The IPv4 Address of the instance. See Instance Network * The IPv4 Address of the instance. See Instance Network
* Access for more details. * Access for more details.
*/ */
declare public /*out*/ readonly ipv4Address: pulumi.Output<string>; declare public readonly /*out*/ ipv4Address: pulumi.Output<string>;
/** /**
* The IPv6 Address of the instance. See Instance Network * The IPv6 Address of the instance. See Instance Network
* Access for more details. * Access for more details.
*/ */
declare public /*out*/ readonly ipv6Address: pulumi.Output<string>; declare public readonly /*out*/ ipv6Address: pulumi.Output<string>;
/** /**
* The MAC address of the detected NIC. See Instance Network * The MAC address of the detected NIC. See Instance Network
* Access for more details. * Access for more details.
*/ */
declare public /*out*/ readonly macAddress: pulumi.Output<string>; declare public readonly /*out*/ macAddress: pulumi.Output<string>;
/** /**
* **Required** - Name of the instance. * **Required** - Name of the instance.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* *Optional* - List of Incus config profiles to apply to the new * *Optional* - List of Incus config profiles to apply to the new
* instance. Profile `default` will be applied if profiles are not set (are `null`). * instance. Profile `default` will be applied if profiles are not set (are `null`).
* However, if an empty array (`[]`) is set as a value, no profiles will be applied. * However, if an empty array (`[]`) is set as a value, no profiles will be applied.
*/ */
declare public readonly profiles: pulumi.Output<string[]>; declare public readonly profiles: pulumi.Output<string[]>;
/** /**
* *Optional* - Name of the project where the instance will be spawned. * *Optional* - Name of the project where the instance will be spawned.
*/ */
declare public readonly project: pulumi.Output<string>; declare public readonly project: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* *Optional* - Boolean indicating whether the instance should be started (running). Defaults to `true`. * *Optional* - Boolean indicating whether the instance should be started (running). Defaults to `true`.
*/ */
declare public readonly running: pulumi.Output<boolean>; declare public readonly running: pulumi.Output<boolean>;
/** /**
* *Optional* - The souce backup file from which the instance should be restored. For handling of storage pool, see examples. * *Optional* - The souce backup file from which the instance should be restored. For handling of storage pool, see examples.
*/ */
declare public readonly sourceFile: pulumi.Output<string | undefined>; declare public readonly sourceFile: pulumi.Output<string | undefined>;
/** /**
* *Optional* - The source instance from which the instance will be created. See reference below. * *Optional* - The source instance from which the instance will be created. See reference below.
*/ */
declare public readonly sourceInstance: pulumi.Output<outputs.InstanceSourceInstance | undefined>; declare public readonly sourceInstance: pulumi.Output<
/** outputs.InstanceSourceInstance | undefined
* The status of the instance. >;
*/ /**
declare public /*out*/ readonly status: pulumi.Output<string>; * The status of the instance.
/** */
* *Optional* - Specify a target node in a cluster. declare public readonly /*out*/ status: pulumi.Output<string>;
*/ /**
declare public readonly target: pulumi.Output<string>; * *Optional* - Specify a target node in a cluster.
/** */
* *Optional* - Instance type. Can be `container`, or `virtual-machine`. Defaults to `container`. declare public readonly target: pulumi.Output<string>;
*/ /**
declare public readonly type: pulumi.Output<string>; * *Optional* - Instance type. Can be `container`, or `virtual-machine`. Defaults to `container`.
/** */
* *Optional* - WaitFor definition. See reference below. declare public readonly type: pulumi.Output<string>;
* If `running` is set to false or instance is already running (on update), this value has no effect. /**
*/ * *Optional* - WaitFor definition. See reference below.
declare public readonly waitFors: pulumi.Output<outputs.InstanceWaitFor[] | undefined>; * If `running` is set to false or instance is already running (on update), this value has no effect.
*/
declare public readonly waitFors: pulumi.Output<outputs.InstanceWaitFor[] | undefined>;
/** /**
* Create a Instance resource with the given unique name, arguments, and options. * Create a Instance resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: InstanceArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: InstanceArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: InstanceArgs | InstanceState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: InstanceArgs | InstanceState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as InstanceState | undefined; ) {
resourceInputs["architecture"] = state?.architecture; let resourceInputs: pulumi.Inputs = {};
resourceInputs["config"] = state?.config; opts = opts || {};
resourceInputs["description"] = state?.description; if (opts.id) {
resourceInputs["devices"] = state?.devices; const state = argsOrState as InstanceState | undefined;
resourceInputs["ephemeral"] = state?.ephemeral; resourceInputs["architecture"] = state?.architecture;
resourceInputs["files"] = state?.files; resourceInputs["config"] = state?.config;
resourceInputs["image"] = state?.image; resourceInputs["description"] = state?.description;
resourceInputs["ipv4Address"] = state?.ipv4Address; resourceInputs["devices"] = state?.devices;
resourceInputs["ipv6Address"] = state?.ipv6Address; resourceInputs["ephemeral"] = state?.ephemeral;
resourceInputs["macAddress"] = state?.macAddress; resourceInputs["files"] = state?.files;
resourceInputs["name"] = state?.name; resourceInputs["image"] = state?.image;
resourceInputs["profiles"] = state?.profiles; resourceInputs["ipv4Address"] = state?.ipv4Address;
resourceInputs["project"] = state?.project; resourceInputs["ipv6Address"] = state?.ipv6Address;
resourceInputs["remote"] = state?.remote; resourceInputs["macAddress"] = state?.macAddress;
resourceInputs["running"] = state?.running; resourceInputs["name"] = state?.name;
resourceInputs["sourceFile"] = state?.sourceFile; resourceInputs["profiles"] = state?.profiles;
resourceInputs["sourceInstance"] = state?.sourceInstance; resourceInputs["project"] = state?.project;
resourceInputs["status"] = state?.status; resourceInputs["remote"] = state?.remote;
resourceInputs["target"] = state?.target; resourceInputs["running"] = state?.running;
resourceInputs["type"] = state?.type; resourceInputs["sourceFile"] = state?.sourceFile;
resourceInputs["waitFors"] = state?.waitFors; resourceInputs["sourceInstance"] = state?.sourceInstance;
} else { resourceInputs["status"] = state?.status;
const args = argsOrState as InstanceArgs | undefined; resourceInputs["target"] = state?.target;
if (args?.name === undefined && !opts.urn) { resourceInputs["type"] = state?.type;
throw new Error("Missing required property 'name'"); resourceInputs["waitFors"] = state?.waitFors;
} } else {
resourceInputs["architecture"] = args?.architecture; const args = argsOrState as InstanceArgs | undefined;
resourceInputs["config"] = args?.config; if (args?.name === undefined && !opts.urn) {
resourceInputs["description"] = args?.description; throw new Error("Missing required property 'name'");
resourceInputs["devices"] = args?.devices; }
resourceInputs["ephemeral"] = args?.ephemeral; resourceInputs["architecture"] = args?.architecture;
resourceInputs["files"] = args?.files; resourceInputs["config"] = args?.config;
resourceInputs["image"] = args?.image; resourceInputs["description"] = args?.description;
resourceInputs["name"] = args?.name; resourceInputs["devices"] = args?.devices;
resourceInputs["profiles"] = args?.profiles; resourceInputs["ephemeral"] = args?.ephemeral;
resourceInputs["project"] = (args?.project) ?? "default"; resourceInputs["files"] = args?.files;
resourceInputs["remote"] = args?.remote; resourceInputs["image"] = args?.image;
resourceInputs["running"] = args?.running; resourceInputs["name"] = args?.name;
resourceInputs["sourceFile"] = args?.sourceFile; resourceInputs["profiles"] = args?.profiles;
resourceInputs["sourceInstance"] = args?.sourceInstance; resourceInputs["project"] = args?.project ?? "default";
resourceInputs["target"] = args?.target; resourceInputs["remote"] = args?.remote;
resourceInputs["type"] = args?.type; resourceInputs["running"] = args?.running;
resourceInputs["waitFors"] = args?.waitFors; resourceInputs["sourceFile"] = args?.sourceFile;
resourceInputs["ipv4Address"] = undefined /*out*/; resourceInputs["sourceInstance"] = args?.sourceInstance;
resourceInputs["ipv6Address"] = undefined /*out*/; resourceInputs["target"] = args?.target;
resourceInputs["macAddress"] = undefined /*out*/; resourceInputs["type"] = args?.type;
resourceInputs["status"] = undefined /*out*/; resourceInputs["waitFors"] = args?.waitFors;
} resourceInputs["ipv4Address"] = undefined /*out*/;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["ipv6Address"] = undefined /*out*/;
super(Instance.__pulumiType, name, resourceInputs, opts); resourceInputs["macAddress"] = undefined /*out*/;
} resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(Instance.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering Instance resources. * Input properties used for looking up and filtering Instance resources.
*/ */
export interface InstanceState { export interface InstanceState {
/** /**
* *Optional* - The instance architecture (e.g. x86_64, aarch64). See [Architectures](https://linuxcontainers.org/incus/docs/main/architectures/) for all possible values. * *Optional* - The instance architecture (e.g. x86_64, aarch64). See [Architectures](https://linuxcontainers.org/incus/docs/main/architectures/) for all possible values.
*/ */
architecture?: pulumi.Input<string>; architecture?: pulumi.Input<string>;
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/). * [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the instance. * *Optional* - Description of the instance.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* *Optional* - Device definition. See reference below. * *Optional* - Device definition. See reference below.
*/ */
devices?: pulumi.Input<pulumi.Input<inputs.InstanceDevice>[]>; devices?: pulumi.Input<pulumi.Input<inputs.InstanceDevice>[]>;
/** /**
* *Optional* - Boolean indicating if this instance is ephemeral. Defaults to `false`. * *Optional* - Boolean indicating if this instance is ephemeral. Defaults to `false`.
*/ */
ephemeral?: pulumi.Input<boolean>; ephemeral?: pulumi.Input<boolean>;
/** /**
* *Optional* - File to upload to the instance. See reference below. * *Optional* - File to upload to the instance. See reference below.
*/ */
files?: pulumi.Input<pulumi.Input<inputs.InstanceFile>[]>; files?: pulumi.Input<pulumi.Input<inputs.InstanceFile>[]>;
/** /**
* *Optional* - Base image from which the instance will be created. Must * *Optional* - Base image from which the instance will be created. Must
* specify [an image accessible from the provider remote](https://linuxcontainers.org/incus/docs/main/reference/image_servers/). * specify [an image accessible from the provider remote](https://linuxcontainers.org/incus/docs/main/reference/image_servers/).
*/ */
image?: pulumi.Input<string>; image?: pulumi.Input<string>;
/** /**
* The IPv4 Address of the instance. See Instance Network * The IPv4 Address of the instance. See Instance Network
* Access for more details. * Access for more details.
*/ */
ipv4Address?: pulumi.Input<string>; ipv4Address?: pulumi.Input<string>;
/** /**
* The IPv6 Address of the instance. See Instance Network * The IPv6 Address of the instance. See Instance Network
* Access for more details. * Access for more details.
*/ */
ipv6Address?: pulumi.Input<string>; ipv6Address?: pulumi.Input<string>;
/** /**
* The MAC address of the detected NIC. See Instance Network * The MAC address of the detected NIC. See Instance Network
* Access for more details. * Access for more details.
*/ */
macAddress?: pulumi.Input<string>; macAddress?: pulumi.Input<string>;
/** /**
* **Required** - Name of the instance. * **Required** - Name of the instance.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - List of Incus config profiles to apply to the new * *Optional* - List of Incus config profiles to apply to the new
* instance. Profile `default` will be applied if profiles are not set (are `null`). * instance. Profile `default` will be applied if profiles are not set (are `null`).
* However, if an empty array (`[]`) is set as a value, no profiles will be applied. * However, if an empty array (`[]`) is set as a value, no profiles will be applied.
*/ */
profiles?: pulumi.Input<pulumi.Input<string>[]>; profiles?: pulumi.Input<pulumi.Input<string>[]>;
/** /**
* *Optional* - Name of the project where the instance will be spawned. * *Optional* - Name of the project where the instance will be spawned.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Boolean indicating whether the instance should be started (running). Defaults to `true`. * *Optional* - Boolean indicating whether the instance should be started (running). Defaults to `true`.
*/ */
running?: pulumi.Input<boolean>; running?: pulumi.Input<boolean>;
/** /**
* *Optional* - The souce backup file from which the instance should be restored. For handling of storage pool, see examples. * *Optional* - The souce backup file from which the instance should be restored. For handling of storage pool, see examples.
*/ */
sourceFile?: pulumi.Input<string>; sourceFile?: pulumi.Input<string>;
/** /**
* *Optional* - The source instance from which the instance will be created. See reference below. * *Optional* - The source instance from which the instance will be created. See reference below.
*/ */
sourceInstance?: pulumi.Input<inputs.InstanceSourceInstance>; sourceInstance?: pulumi.Input<inputs.InstanceSourceInstance>;
/** /**
* The status of the instance. * The status of the instance.
*/ */
status?: pulumi.Input<string>; status?: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
/** /**
* *Optional* - Instance type. Can be `container`, or `virtual-machine`. Defaults to `container`. * *Optional* - Instance type. Can be `container`, or `virtual-machine`. Defaults to `container`.
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
/** /**
* *Optional* - WaitFor definition. See reference below. * *Optional* - WaitFor definition. See reference below.
* If `running` is set to false or instance is already running (on update), this value has no effect. * If `running` is set to false or instance is already running (on update), this value has no effect.
*/ */
waitFors?: pulumi.Input<pulumi.Input<inputs.InstanceWaitFor>[]>; waitFors?: pulumi.Input<pulumi.Input<inputs.InstanceWaitFor>[]>;
} }
/** /**
* The set of arguments for constructing a Instance resource. * The set of arguments for constructing a Instance resource.
*/ */
export interface InstanceArgs { export interface InstanceArgs {
/** /**
* *Optional* - The instance architecture (e.g. x86_64, aarch64). See [Architectures](https://linuxcontainers.org/incus/docs/main/architectures/) for all possible values. * *Optional* - The instance architecture (e.g. x86_64, aarch64). See [Architectures](https://linuxcontainers.org/incus/docs/main/architectures/) for all possible values.
*/ */
architecture?: pulumi.Input<string>; architecture?: pulumi.Input<string>;
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/). * [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the instance. * *Optional* - Description of the instance.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* *Optional* - Device definition. See reference below. * *Optional* - Device definition. See reference below.
*/ */
devices?: pulumi.Input<pulumi.Input<inputs.InstanceDevice>[]>; devices?: pulumi.Input<pulumi.Input<inputs.InstanceDevice>[]>;
/** /**
* *Optional* - Boolean indicating if this instance is ephemeral. Defaults to `false`. * *Optional* - Boolean indicating if this instance is ephemeral. Defaults to `false`.
*/ */
ephemeral?: pulumi.Input<boolean>; ephemeral?: pulumi.Input<boolean>;
/** /**
* *Optional* - File to upload to the instance. See reference below. * *Optional* - File to upload to the instance. See reference below.
*/ */
files?: pulumi.Input<pulumi.Input<inputs.InstanceFile>[]>; files?: pulumi.Input<pulumi.Input<inputs.InstanceFile>[]>;
/** /**
* *Optional* - Base image from which the instance will be created. Must * *Optional* - Base image from which the instance will be created. Must
* specify [an image accessible from the provider remote](https://linuxcontainers.org/incus/docs/main/reference/image_servers/). * specify [an image accessible from the provider remote](https://linuxcontainers.org/incus/docs/main/reference/image_servers/).
*/ */
image?: pulumi.Input<string>; image?: pulumi.Input<string>;
/** /**
* **Required** - Name of the instance. * **Required** - Name of the instance.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - List of Incus config profiles to apply to the new * *Optional* - List of Incus config profiles to apply to the new
* instance. Profile `default` will be applied if profiles are not set (are `null`). * instance. Profile `default` will be applied if profiles are not set (are `null`).
* However, if an empty array (`[]`) is set as a value, no profiles will be applied. * However, if an empty array (`[]`) is set as a value, no profiles will be applied.
*/ */
profiles?: pulumi.Input<pulumi.Input<string>[]>; profiles?: pulumi.Input<pulumi.Input<string>[]>;
/** /**
* *Optional* - Name of the project where the instance will be spawned. * *Optional* - Name of the project where the instance will be spawned.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Boolean indicating whether the instance should be started (running). Defaults to `true`. * *Optional* - Boolean indicating whether the instance should be started (running). Defaults to `true`.
*/ */
running?: pulumi.Input<boolean>; running?: pulumi.Input<boolean>;
/** /**
* *Optional* - The souce backup file from which the instance should be restored. For handling of storage pool, see examples. * *Optional* - The souce backup file from which the instance should be restored. For handling of storage pool, see examples.
*/ */
sourceFile?: pulumi.Input<string>; sourceFile?: pulumi.Input<string>;
/** /**
* *Optional* - The source instance from which the instance will be created. See reference below. * *Optional* - The source instance from which the instance will be created. See reference below.
*/ */
sourceInstance?: pulumi.Input<inputs.InstanceSourceInstance>; sourceInstance?: pulumi.Input<inputs.InstanceSourceInstance>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
/** /**
* *Optional* - Instance type. Can be `container`, or `virtual-machine`. Defaults to `container`. * *Optional* - Instance type. Can be `container`, or `virtual-machine`. Defaults to `container`.
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
/** /**
* *Optional* - WaitFor definition. See reference below. * *Optional* - WaitFor definition. See reference below.
* If `running` is set to false or instance is already running (on update), this value has no effect. * If `running` is set to false or instance is already running (on update), this value has no effect.
*/ */
waitFors?: pulumi.Input<pulumi.Input<inputs.InstanceWaitFor>[]>; waitFors?: pulumi.Input<pulumi.Input<inputs.InstanceWaitFor>[]>;
} }

View File

@@ -27,160 +27,169 @@ import * as utilities from "./utilities";
* ``` * ```
*/ */
export class InstanceSnapshot extends pulumi.CustomResource { export class InstanceSnapshot extends pulumi.CustomResource {
/** /**
* Get an existing InstanceSnapshot resource's state with the given name, ID, and optional extra * Get an existing InstanceSnapshot resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceSnapshotState, opts?: pulumi.CustomResourceOptions): InstanceSnapshot { public static get(
return new InstanceSnapshot(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: InstanceSnapshotState,
opts?: pulumi.CustomResourceOptions,
): InstanceSnapshot {
return new InstanceSnapshot(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/instanceSnapshot:InstanceSnapshot'; public static readonly __pulumiType = "incus:index/instanceSnapshot:InstanceSnapshot";
/** /**
* Returns true if the given object is an instance of InstanceSnapshot. This is designed to work even * Returns true if the given object is an instance of InstanceSnapshot. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is InstanceSnapshot { public static isInstance(obj: any): obj is InstanceSnapshot {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === InstanceSnapshot.__pulumiType; return obj["__pulumiType"] === InstanceSnapshot.__pulumiType;
} }
/** /**
* The time Incus reported the snapshot was successfully created, * The time Incus reported the snapshot was successfully created,
* in UTC. * in UTC.
*/ */
declare public /*out*/ readonly createdAt: pulumi.Output<number>; declare public readonly /*out*/ createdAt: pulumi.Output<number>;
/** /**
* **Required** - The name of the instance to snapshot. * **Required** - The name of the instance to snapshot.
*/ */
declare public readonly instance: pulumi.Output<string>; declare public readonly instance: pulumi.Output<string>;
/** /**
* **Required** - Name of the snapshot. * **Required** - Name of the snapshot.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* *Optional* - Name of the project where the snapshot will be stored. * *Optional* - Name of the project where the snapshot will be stored.
*/ */
declare public readonly project: pulumi.Output<string>; declare public readonly project: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* *Optional* - Set to `true` to create a stateful snapshot, * *Optional* - Set to `true` to create a stateful snapshot,
* `false` for stateless. Stateful snapshots include runtime state. Defaults to * `false` for stateless. Stateful snapshots include runtime state. Defaults to
* `false`. * `false`.
*/ */
declare public readonly stateful: pulumi.Output<boolean>; declare public readonly stateful: pulumi.Output<boolean>;
/** /**
* Create a InstanceSnapshot resource with the given unique name, arguments, and options. * Create a InstanceSnapshot resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: InstanceSnapshotArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: InstanceSnapshotArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: InstanceSnapshotArgs | InstanceSnapshotState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: InstanceSnapshotArgs | InstanceSnapshotState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as InstanceSnapshotState | undefined; ) {
resourceInputs["createdAt"] = state?.createdAt; let resourceInputs: pulumi.Inputs = {};
resourceInputs["instance"] = state?.instance; opts = opts || {};
resourceInputs["name"] = state?.name; if (opts.id) {
resourceInputs["project"] = state?.project; const state = argsOrState as InstanceSnapshotState | undefined;
resourceInputs["remote"] = state?.remote; resourceInputs["createdAt"] = state?.createdAt;
resourceInputs["stateful"] = state?.stateful; resourceInputs["instance"] = state?.instance;
} else { resourceInputs["name"] = state?.name;
const args = argsOrState as InstanceSnapshotArgs | undefined; resourceInputs["project"] = state?.project;
if (args?.instance === undefined && !opts.urn) { resourceInputs["remote"] = state?.remote;
throw new Error("Missing required property 'instance'"); resourceInputs["stateful"] = state?.stateful;
} } else {
if (args?.name === undefined && !opts.urn) { const args = argsOrState as InstanceSnapshotArgs | undefined;
throw new Error("Missing required property 'name'"); if (args?.instance === undefined && !opts.urn) {
} throw new Error("Missing required property 'instance'");
resourceInputs["instance"] = args?.instance; }
resourceInputs["name"] = args?.name; if (args?.name === undefined && !opts.urn) {
resourceInputs["project"] = (args?.project) ?? "default"; throw new Error("Missing required property 'name'");
resourceInputs["remote"] = args?.remote; }
resourceInputs["stateful"] = args?.stateful; resourceInputs["instance"] = args?.instance;
resourceInputs["createdAt"] = undefined /*out*/; resourceInputs["name"] = args?.name;
} resourceInputs["project"] = args?.project ?? "default";
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["remote"] = args?.remote;
super(InstanceSnapshot.__pulumiType, name, resourceInputs, opts); resourceInputs["stateful"] = args?.stateful;
} resourceInputs["createdAt"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(InstanceSnapshot.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering InstanceSnapshot resources. * Input properties used for looking up and filtering InstanceSnapshot resources.
*/ */
export interface InstanceSnapshotState { export interface InstanceSnapshotState {
/** /**
* The time Incus reported the snapshot was successfully created, * The time Incus reported the snapshot was successfully created,
* in UTC. * in UTC.
*/ */
createdAt?: pulumi.Input<number>; createdAt?: pulumi.Input<number>;
/** /**
* **Required** - The name of the instance to snapshot. * **Required** - The name of the instance to snapshot.
*/ */
instance?: pulumi.Input<string>; instance?: pulumi.Input<string>;
/** /**
* **Required** - Name of the snapshot. * **Required** - Name of the snapshot.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the snapshot will be stored. * *Optional* - Name of the project where the snapshot will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Set to `true` to create a stateful snapshot, * *Optional* - Set to `true` to create a stateful snapshot,
* `false` for stateless. Stateful snapshots include runtime state. Defaults to * `false` for stateless. Stateful snapshots include runtime state. Defaults to
* `false`. * `false`.
*/ */
stateful?: pulumi.Input<boolean>; stateful?: pulumi.Input<boolean>;
} }
/** /**
* The set of arguments for constructing a InstanceSnapshot resource. * The set of arguments for constructing a InstanceSnapshot resource.
*/ */
export interface InstanceSnapshotArgs { export interface InstanceSnapshotArgs {
/** /**
* **Required** - The name of the instance to snapshot. * **Required** - The name of the instance to snapshot.
*/ */
instance: pulumi.Input<string>; instance: pulumi.Input<string>;
/** /**
* **Required** - Name of the snapshot. * **Required** - Name of the snapshot.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the snapshot will be stored. * *Optional* - Name of the project where the snapshot will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Set to `true` to create a stateful snapshot, * *Optional* - Set to `true` to create a stateful snapshot,
* `false` for stateless. Stateful snapshots include runtime state. Defaults to * `false` for stateless. Stateful snapshots include runtime state. Defaults to
* `false`. * `false`.
*/ */
stateful?: pulumi.Input<boolean>; stateful?: pulumi.Input<boolean>;
} }

347
sdk/nodejs/network.ts generated
View File

@@ -5,189 +5,198 @@ import * as pulumi from "@pulumi/pulumi";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class Network extends pulumi.CustomResource { export class Network extends pulumi.CustomResource {
/** /**
* Get an existing Network resource's state with the given name, ID, and optional extra * Get an existing Network resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkState, opts?: pulumi.CustomResourceOptions): Network { public static get(
return new Network(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: NetworkState,
opts?: pulumi.CustomResourceOptions,
): Network {
return new Network(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/network:Network'; public static readonly __pulumiType = "incus:index/network:Network";
/** /**
* Returns true if the given object is an instance of Network. This is designed to work even * Returns true if the given object is an instance of Network. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is Network { public static isInstance(obj: any): obj is Network {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === Network.__pulumiType; return obj["__pulumiType"] === Network.__pulumiType;
} }
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [network config settings](https://linuxcontainers.org/incus/docs/main/networks/). * [network config settings](https://linuxcontainers.org/incus/docs/main/networks/).
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of the network. `description` is mutual exclusive with `target`. The `description` can only be set on cluster level (with `target` not set) or on non-clustered setups. * *Optional* - Description of the network. `description` is mutual exclusive with `target`. The `description` can only be set on cluster level (with `target` not set) or on non-clustered setups.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* Whether or not the network is managed. * Whether or not the network is managed.
*/ */
declare public /*out*/ readonly managed: pulumi.Output<boolean>; declare public readonly /*out*/ managed: pulumi.Output<boolean>;
/** /**
* **Required** - Name of the network. This is usually the device the * **Required** - Name of the network. This is usually the device the
* network will appear as to instances. * network will appear as to instances.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* *Optional* - Name of the project where the network will be created. * *Optional* - Name of the project where the network will be created.
*/ */
declare public readonly project: pulumi.Output<string>; declare public readonly project: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
declare public readonly target: pulumi.Output<string | undefined>; declare public readonly target: pulumi.Output<string | undefined>;
/** /**
* *Optional* - The type of network to create. Can be one of: bridge, * *Optional* - The type of network to create. Can be one of: bridge,
* macvlan, sriov, ovn, or physical. If no type is specified, a bridge network * macvlan, sriov, ovn, or physical. If no type is specified, a bridge network
* is created. * is created.
*/ */
declare public readonly type: pulumi.Output<string>; declare public readonly type: pulumi.Output<string>;
/** /**
* Create a Network resource with the given unique name, arguments, and options. * Create a Network resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: NetworkArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: NetworkArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: NetworkArgs | NetworkState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: NetworkArgs | NetworkState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as NetworkState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["managed"] = state?.managed; if (opts.id) {
resourceInputs["name"] = state?.name; const state = argsOrState as NetworkState | undefined;
resourceInputs["project"] = state?.project; resourceInputs["config"] = state?.config;
resourceInputs["remote"] = state?.remote; resourceInputs["description"] = state?.description;
resourceInputs["target"] = state?.target; resourceInputs["managed"] = state?.managed;
resourceInputs["type"] = state?.type; resourceInputs["name"] = state?.name;
} else { resourceInputs["project"] = state?.project;
const args = argsOrState as NetworkArgs | undefined; resourceInputs["remote"] = state?.remote;
if (args?.name === undefined && !opts.urn) { resourceInputs["target"] = state?.target;
throw new Error("Missing required property 'name'"); resourceInputs["type"] = state?.type;
} } else {
resourceInputs["config"] = args?.config; const args = argsOrState as NetworkArgs | undefined;
resourceInputs["description"] = args?.description; if (args?.name === undefined && !opts.urn) {
resourceInputs["name"] = args?.name; throw new Error("Missing required property 'name'");
resourceInputs["project"] = (args?.project) ?? "default"; }
resourceInputs["remote"] = args?.remote; resourceInputs["config"] = args?.config;
resourceInputs["target"] = args?.target; resourceInputs["description"] = args?.description;
resourceInputs["type"] = args?.type; resourceInputs["name"] = args?.name;
resourceInputs["managed"] = undefined /*out*/; resourceInputs["project"] = args?.project ?? "default";
} resourceInputs["remote"] = args?.remote;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["target"] = args?.target;
super(Network.__pulumiType, name, resourceInputs, opts); resourceInputs["type"] = args?.type;
} resourceInputs["managed"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(Network.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering Network resources. * Input properties used for looking up and filtering Network resources.
*/ */
export interface NetworkState { export interface NetworkState {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [network config settings](https://linuxcontainers.org/incus/docs/main/networks/). * [network config settings](https://linuxcontainers.org/incus/docs/main/networks/).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network. `description` is mutual exclusive with `target`. The `description` can only be set on cluster level (with `target` not set) or on non-clustered setups. * *Optional* - Description of the network. `description` is mutual exclusive with `target`. The `description` can only be set on cluster level (with `target` not set) or on non-clustered setups.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* Whether or not the network is managed. * Whether or not the network is managed.
*/ */
managed?: pulumi.Input<boolean>; managed?: pulumi.Input<boolean>;
/** /**
* **Required** - Name of the network. This is usually the device the * **Required** - Name of the network. This is usually the device the
* network will appear as to instances. * network will appear as to instances.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network will be created. * *Optional* - Name of the project where the network will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
/** /**
* *Optional* - The type of network to create. Can be one of: bridge, * *Optional* - The type of network to create. Can be one of: bridge,
* macvlan, sriov, ovn, or physical. If no type is specified, a bridge network * macvlan, sriov, ovn, or physical. If no type is specified, a bridge network
* is created. * is created.
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a Network resource. * The set of arguments for constructing a Network resource.
*/ */
export interface NetworkArgs { export interface NetworkArgs {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [network config settings](https://linuxcontainers.org/incus/docs/main/networks/). * [network config settings](https://linuxcontainers.org/incus/docs/main/networks/).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network. `description` is mutual exclusive with `target`. The `description` can only be set on cluster level (with `target` not set) or on non-clustered setups. * *Optional* - Description of the network. `description` is mutual exclusive with `target`. The `description` can only be set on cluster level (with `target` not set) or on non-clustered setups.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the network. This is usually the device the * **Required** - Name of the network. This is usually the device the
* network will appear as to instances. * network will appear as to instances.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network will be created. * *Optional* - Name of the project where the network will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
/** /**
* *Optional* - The type of network to create. Can be one of: bridge, * *Optional* - The type of network to create. Can be one of: bridge,
* macvlan, sriov, ovn, or physical. If no type is specified, a bridge network * macvlan, sriov, ovn, or physical. If no type is specified, a bridge network
* is created. * is created.
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }

321
sdk/nodejs/networkAcl.ts generated
View File

@@ -7,176 +7,185 @@ import * as outputs from "./types/output";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class NetworkAcl extends pulumi.CustomResource { export class NetworkAcl extends pulumi.CustomResource {
/** /**
* Get an existing NetworkAcl resource's state with the given name, ID, and optional extra * Get an existing NetworkAcl resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkAclState, opts?: pulumi.CustomResourceOptions): NetworkAcl { public static get(
return new NetworkAcl(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: NetworkAclState,
opts?: pulumi.CustomResourceOptions,
): NetworkAcl {
return new NetworkAcl(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/networkAcl:NetworkAcl'; public static readonly __pulumiType = "incus:index/networkAcl:NetworkAcl";
/** /**
* Returns true if the given object is an instance of NetworkAcl. This is designed to work even * Returns true if the given object is an instance of NetworkAcl. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is NetworkAcl { public static isInstance(obj: any): obj is NetworkAcl {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === NetworkAcl.__pulumiType; return obj["__pulumiType"] === NetworkAcl.__pulumiType;
} }
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* network ACL config settings. * network ACL config settings.
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of the network ACL rule. * *Optional* - Description of the network ACL rule.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* *Optional* - List of network ACL rules for egress traffic. See reference below. * *Optional* - List of network ACL rules for egress traffic. See reference below.
*/ */
declare public readonly egresses: pulumi.Output<outputs.NetworkAclEgress[]>; declare public readonly egresses: pulumi.Output<outputs.NetworkAclEgress[]>;
/** /**
* *Optional* - List of network ACL rules for ingress traffic. See reference below. * *Optional* - List of network ACL rules for ingress traffic. See reference below.
* *
* The network ACL rule supports: * The network ACL rule supports:
*/ */
declare public readonly ingresses: pulumi.Output<outputs.NetworkAclIngress[]>; declare public readonly ingresses: pulumi.Output<outputs.NetworkAclIngress[]>;
/** /**
* **Required** - Name of the network ACL. * **Required** - Name of the network ACL.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* *Optional* - Name of the project where the network ACL will be created. * *Optional* - Name of the project where the network ACL will be created.
*/ */
declare public readonly project: pulumi.Output<string>; declare public readonly project: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* Create a NetworkAcl resource with the given unique name, arguments, and options. * Create a NetworkAcl resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: NetworkAclArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: NetworkAclArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: NetworkAclArgs | NetworkAclState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: NetworkAclArgs | NetworkAclState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as NetworkAclState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["egresses"] = state?.egresses; if (opts.id) {
resourceInputs["ingresses"] = state?.ingresses; const state = argsOrState as NetworkAclState | undefined;
resourceInputs["name"] = state?.name; resourceInputs["config"] = state?.config;
resourceInputs["project"] = state?.project; resourceInputs["description"] = state?.description;
resourceInputs["remote"] = state?.remote; resourceInputs["egresses"] = state?.egresses;
} else { resourceInputs["ingresses"] = state?.ingresses;
const args = argsOrState as NetworkAclArgs | undefined; resourceInputs["name"] = state?.name;
if (args?.name === undefined && !opts.urn) { resourceInputs["project"] = state?.project;
throw new Error("Missing required property 'name'"); resourceInputs["remote"] = state?.remote;
} } else {
resourceInputs["config"] = args?.config; const args = argsOrState as NetworkAclArgs | undefined;
resourceInputs["description"] = args?.description; if (args?.name === undefined && !opts.urn) {
resourceInputs["egresses"] = args?.egresses; throw new Error("Missing required property 'name'");
resourceInputs["ingresses"] = args?.ingresses; }
resourceInputs["name"] = args?.name; resourceInputs["config"] = args?.config;
resourceInputs["project"] = (args?.project) ?? "default"; resourceInputs["description"] = args?.description;
resourceInputs["remote"] = args?.remote; resourceInputs["egresses"] = args?.egresses;
} resourceInputs["ingresses"] = args?.ingresses;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["name"] = args?.name;
super(NetworkAcl.__pulumiType, name, resourceInputs, opts); resourceInputs["project"] = args?.project ?? "default";
} resourceInputs["remote"] = args?.remote;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(NetworkAcl.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering NetworkAcl resources. * Input properties used for looking up and filtering NetworkAcl resources.
*/ */
export interface NetworkAclState { export interface NetworkAclState {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* network ACL config settings. * network ACL config settings.
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network ACL rule. * *Optional* - Description of the network ACL rule.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* *Optional* - List of network ACL rules for egress traffic. See reference below. * *Optional* - List of network ACL rules for egress traffic. See reference below.
*/ */
egresses?: pulumi.Input<pulumi.Input<inputs.NetworkAclEgress>[]>; egresses?: pulumi.Input<pulumi.Input<inputs.NetworkAclEgress>[]>;
/** /**
* *Optional* - List of network ACL rules for ingress traffic. See reference below. * *Optional* - List of network ACL rules for ingress traffic. See reference below.
* *
* The network ACL rule supports: * The network ACL rule supports:
*/ */
ingresses?: pulumi.Input<pulumi.Input<inputs.NetworkAclIngress>[]>; ingresses?: pulumi.Input<pulumi.Input<inputs.NetworkAclIngress>[]>;
/** /**
* **Required** - Name of the network ACL. * **Required** - Name of the network ACL.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network ACL will be created. * *Optional* - Name of the project where the network ACL will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a NetworkAcl resource. * The set of arguments for constructing a NetworkAcl resource.
*/ */
export interface NetworkAclArgs { export interface NetworkAclArgs {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* network ACL config settings. * network ACL config settings.
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network ACL rule. * *Optional* - Description of the network ACL rule.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* *Optional* - List of network ACL rules for egress traffic. See reference below. * *Optional* - List of network ACL rules for egress traffic. See reference below.
*/ */
egresses?: pulumi.Input<pulumi.Input<inputs.NetworkAclEgress>[]>; egresses?: pulumi.Input<pulumi.Input<inputs.NetworkAclEgress>[]>;
/** /**
* *Optional* - List of network ACL rules for ingress traffic. See reference below. * *Optional* - List of network ACL rules for ingress traffic. See reference below.
* *
* The network ACL rule supports: * The network ACL rule supports:
*/ */
ingresses?: pulumi.Input<pulumi.Input<inputs.NetworkAclIngress>[]>; ingresses?: pulumi.Input<pulumi.Input<inputs.NetworkAclIngress>[]>;
/** /**
* **Required** - Name of the network ACL. * **Required** - Name of the network ACL.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network ACL will be created. * *Optional* - Name of the project where the network ACL will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

View File

@@ -53,156 +53,165 @@ import * as utilities from "./utilities";
* ``` * ```
*/ */
export class NetworkAddressSet extends pulumi.CustomResource { export class NetworkAddressSet extends pulumi.CustomResource {
/** /**
* Get an existing NetworkAddressSet resource's state with the given name, ID, and optional extra * Get an existing NetworkAddressSet resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkAddressSetState, opts?: pulumi.CustomResourceOptions): NetworkAddressSet { public static get(
return new NetworkAddressSet(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: NetworkAddressSetState,
opts?: pulumi.CustomResourceOptions,
): NetworkAddressSet {
return new NetworkAddressSet(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/networkAddressSet:NetworkAddressSet'; public static readonly __pulumiType = "incus:index/networkAddressSet:NetworkAddressSet";
/** /**
* Returns true if the given object is an instance of NetworkAddressSet. This is designed to work even * Returns true if the given object is an instance of NetworkAddressSet. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is NetworkAddressSet { public static isInstance(obj: any): obj is NetworkAddressSet {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === NetworkAddressSet.__pulumiType; return obj["__pulumiType"] === NetworkAddressSet.__pulumiType;
} }
/** /**
* **Required** - IP addresses of the address set. * **Required** - IP addresses of the address set.
*/ */
declare public readonly addresses: pulumi.Output<string[]>; declare public readonly addresses: pulumi.Output<string[]>;
/** /**
* *Optional* - Map of key/value pairs of [network address set config settings](https://linuxcontainers.org/incus/docs/main/howto/network_address_sets/#address-set-configuration-options) * *Optional* - Map of key/value pairs of [network address set config settings](https://linuxcontainers.org/incus/docs/main/howto/network_address_sets/#address-set-configuration-options)
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of the network address set. * *Optional* - Description of the network address set.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* **Required** - Name of the network address set. * **Required** - Name of the network address set.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* *Optional* - Name of the project where the network address set will be created. * *Optional* - Name of the project where the network address set will be created.
*/ */
declare public readonly project: pulumi.Output<string | undefined>; declare public readonly project: pulumi.Output<string | undefined>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* Create a NetworkAddressSet resource with the given unique name, arguments, and options. * Create a NetworkAddressSet resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: NetworkAddressSetArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: NetworkAddressSetArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: NetworkAddressSetArgs | NetworkAddressSetState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: NetworkAddressSetArgs | NetworkAddressSetState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as NetworkAddressSetState | undefined; ) {
resourceInputs["addresses"] = state?.addresses; let resourceInputs: pulumi.Inputs = {};
resourceInputs["config"] = state?.config; opts = opts || {};
resourceInputs["description"] = state?.description; if (opts.id) {
resourceInputs["name"] = state?.name; const state = argsOrState as NetworkAddressSetState | undefined;
resourceInputs["project"] = state?.project; resourceInputs["addresses"] = state?.addresses;
resourceInputs["remote"] = state?.remote; resourceInputs["config"] = state?.config;
} else { resourceInputs["description"] = state?.description;
const args = argsOrState as NetworkAddressSetArgs | undefined; resourceInputs["name"] = state?.name;
if (args?.addresses === undefined && !opts.urn) { resourceInputs["project"] = state?.project;
throw new Error("Missing required property 'addresses'"); resourceInputs["remote"] = state?.remote;
} } else {
if (args?.name === undefined && !opts.urn) { const args = argsOrState as NetworkAddressSetArgs | undefined;
throw new Error("Missing required property 'name'"); if (args?.addresses === undefined && !opts.urn) {
} throw new Error("Missing required property 'addresses'");
resourceInputs["addresses"] = args?.addresses; }
resourceInputs["config"] = args?.config; if (args?.name === undefined && !opts.urn) {
resourceInputs["description"] = args?.description; throw new Error("Missing required property 'name'");
resourceInputs["name"] = args?.name; }
resourceInputs["project"] = args?.project; resourceInputs["addresses"] = args?.addresses;
resourceInputs["remote"] = args?.remote; resourceInputs["config"] = args?.config;
} resourceInputs["description"] = args?.description;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["name"] = args?.name;
super(NetworkAddressSet.__pulumiType, name, resourceInputs, opts); resourceInputs["project"] = args?.project;
} resourceInputs["remote"] = args?.remote;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(NetworkAddressSet.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering NetworkAddressSet resources. * Input properties used for looking up and filtering NetworkAddressSet resources.
*/ */
export interface NetworkAddressSetState { export interface NetworkAddressSetState {
/** /**
* **Required** - IP addresses of the address set. * **Required** - IP addresses of the address set.
*/ */
addresses?: pulumi.Input<pulumi.Input<string>[]>; addresses?: pulumi.Input<pulumi.Input<string>[]>;
/** /**
* *Optional* - Map of key/value pairs of [network address set config settings](https://linuxcontainers.org/incus/docs/main/howto/network_address_sets/#address-set-configuration-options) * *Optional* - Map of key/value pairs of [network address set config settings](https://linuxcontainers.org/incus/docs/main/howto/network_address_sets/#address-set-configuration-options)
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network address set. * *Optional* - Description of the network address set.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the network address set. * **Required** - Name of the network address set.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network address set will be created. * *Optional* - Name of the project where the network address set will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a NetworkAddressSet resource. * The set of arguments for constructing a NetworkAddressSet resource.
*/ */
export interface NetworkAddressSetArgs { export interface NetworkAddressSetArgs {
/** /**
* **Required** - IP addresses of the address set. * **Required** - IP addresses of the address set.
*/ */
addresses: pulumi.Input<pulumi.Input<string>[]>; addresses: pulumi.Input<pulumi.Input<string>[]>;
/** /**
* *Optional* - Map of key/value pairs of [network address set config settings](https://linuxcontainers.org/incus/docs/main/howto/network_address_sets/#address-set-configuration-options) * *Optional* - Map of key/value pairs of [network address set config settings](https://linuxcontainers.org/incus/docs/main/howto/network_address_sets/#address-set-configuration-options)
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network address set. * *Optional* - Description of the network address set.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the network address set. * **Required** - Name of the network address set.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network address set will be created. * *Optional* - Name of the project where the network address set will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

View File

@@ -7,179 +7,188 @@ import * as outputs from "./types/output";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class NetworkForward extends pulumi.CustomResource { export class NetworkForward extends pulumi.CustomResource {
/** /**
* Get an existing NetworkForward resource's state with the given name, ID, and optional extra * Get an existing NetworkForward resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkForwardState, opts?: pulumi.CustomResourceOptions): NetworkForward { public static get(
return new NetworkForward(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: NetworkForwardState,
opts?: pulumi.CustomResourceOptions,
): NetworkForward {
return new NetworkForward(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/networkForward:NetworkForward'; public static readonly __pulumiType = "incus:index/networkForward:NetworkForward";
/** /**
* Returns true if the given object is an instance of NetworkForward. This is designed to work even * Returns true if the given object is an instance of NetworkForward. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is NetworkForward { public static isInstance(obj: any): obj is NetworkForward {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === NetworkForward.__pulumiType; return obj["__pulumiType"] === NetworkForward.__pulumiType;
} }
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* network forward config settings. * network forward config settings.
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of port(s) * *Optional* - Description of port(s)
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* **Required** - IP address to listen on. * **Required** - IP address to listen on.
*/ */
declare public readonly listenAddress: pulumi.Output<string>; declare public readonly listenAddress: pulumi.Output<string>;
/** /**
* **Required** - Name of the network. * **Required** - Name of the network.
*/ */
declare public readonly network: pulumi.Output<string>; declare public readonly network: pulumi.Output<string>;
/** /**
* *Optional* - List of port specifications. See reference below. * *Optional* - List of port specifications. See reference below.
* *
* The network forward port supports: * The network forward port supports:
*/ */
declare public readonly ports: pulumi.Output<outputs.NetworkForwardPort[]>; declare public readonly ports: pulumi.Output<outputs.NetworkForwardPort[]>;
/** /**
* *Optional* - Name of the project where the network forward will be created. * *Optional* - Name of the project where the network forward will be created.
*/ */
declare public readonly project: pulumi.Output<string | undefined>; declare public readonly project: pulumi.Output<string | undefined>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* Create a NetworkForward resource with the given unique name, arguments, and options. * Create a NetworkForward resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: NetworkForwardArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: NetworkForwardArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: NetworkForwardArgs | NetworkForwardState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: NetworkForwardArgs | NetworkForwardState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as NetworkForwardState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["listenAddress"] = state?.listenAddress; if (opts.id) {
resourceInputs["network"] = state?.network; const state = argsOrState as NetworkForwardState | undefined;
resourceInputs["ports"] = state?.ports; resourceInputs["config"] = state?.config;
resourceInputs["project"] = state?.project; resourceInputs["description"] = state?.description;
resourceInputs["remote"] = state?.remote; resourceInputs["listenAddress"] = state?.listenAddress;
} else { resourceInputs["network"] = state?.network;
const args = argsOrState as NetworkForwardArgs | undefined; resourceInputs["ports"] = state?.ports;
if (args?.listenAddress === undefined && !opts.urn) { resourceInputs["project"] = state?.project;
throw new Error("Missing required property 'listenAddress'"); resourceInputs["remote"] = state?.remote;
} } else {
if (args?.network === undefined && !opts.urn) { const args = argsOrState as NetworkForwardArgs | undefined;
throw new Error("Missing required property 'network'"); if (args?.listenAddress === undefined && !opts.urn) {
} throw new Error("Missing required property 'listenAddress'");
resourceInputs["config"] = args?.config; }
resourceInputs["description"] = args?.description; if (args?.network === undefined && !opts.urn) {
resourceInputs["listenAddress"] = args?.listenAddress; throw new Error("Missing required property 'network'");
resourceInputs["network"] = args?.network; }
resourceInputs["ports"] = args?.ports; resourceInputs["config"] = args?.config;
resourceInputs["project"] = args?.project; resourceInputs["description"] = args?.description;
resourceInputs["remote"] = args?.remote; resourceInputs["listenAddress"] = args?.listenAddress;
} resourceInputs["network"] = args?.network;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["ports"] = args?.ports;
super(NetworkForward.__pulumiType, name, resourceInputs, opts); resourceInputs["project"] = args?.project;
} resourceInputs["remote"] = args?.remote;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(NetworkForward.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering NetworkForward resources. * Input properties used for looking up and filtering NetworkForward resources.
*/ */
export interface NetworkForwardState { export interface NetworkForwardState {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* network forward config settings. * network forward config settings.
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of port(s) * *Optional* - Description of port(s)
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - IP address to listen on. * **Required** - IP address to listen on.
*/ */
listenAddress?: pulumi.Input<string>; listenAddress?: pulumi.Input<string>;
/** /**
* **Required** - Name of the network. * **Required** - Name of the network.
*/ */
network?: pulumi.Input<string>; network?: pulumi.Input<string>;
/** /**
* *Optional* - List of port specifications. See reference below. * *Optional* - List of port specifications. See reference below.
* *
* The network forward port supports: * The network forward port supports:
*/ */
ports?: pulumi.Input<pulumi.Input<inputs.NetworkForwardPort>[]>; ports?: pulumi.Input<pulumi.Input<inputs.NetworkForwardPort>[]>;
/** /**
* *Optional* - Name of the project where the network forward will be created. * *Optional* - Name of the project where the network forward will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a NetworkForward resource. * The set of arguments for constructing a NetworkForward resource.
*/ */
export interface NetworkForwardArgs { export interface NetworkForwardArgs {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* network forward config settings. * network forward config settings.
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of port(s) * *Optional* - Description of port(s)
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - IP address to listen on. * **Required** - IP address to listen on.
*/ */
listenAddress: pulumi.Input<string>; listenAddress: pulumi.Input<string>;
/** /**
* **Required** - Name of the network. * **Required** - Name of the network.
*/ */
network: pulumi.Input<string>; network: pulumi.Input<string>;
/** /**
* *Optional* - List of port specifications. See reference below. * *Optional* - List of port specifications. See reference below.
* *
* The network forward port supports: * The network forward port supports:
*/ */
ports?: pulumi.Input<pulumi.Input<inputs.NetworkForwardPort>[]>; ports?: pulumi.Input<pulumi.Input<inputs.NetworkForwardPort>[]>;
/** /**
* *Optional* - Name of the project where the network forward will be created. * *Optional* - Name of the project where the network forward will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

View File

@@ -56,156 +56,165 @@ import * as utilities from "./utilities";
* ``` * ```
*/ */
export class NetworkIntegration extends pulumi.CustomResource { export class NetworkIntegration extends pulumi.CustomResource {
/** /**
* Get an existing NetworkIntegration resource's state with the given name, ID, and optional extra * Get an existing NetworkIntegration resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkIntegrationState, opts?: pulumi.CustomResourceOptions): NetworkIntegration { public static get(
return new NetworkIntegration(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: NetworkIntegrationState,
opts?: pulumi.CustomResourceOptions,
): NetworkIntegration {
return new NetworkIntegration(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/networkIntegration:NetworkIntegration'; public static readonly __pulumiType = "incus:index/networkIntegration:NetworkIntegration";
/** /**
* Returns true if the given object is an instance of NetworkIntegration. This is designed to work even * Returns true if the given object is an instance of NetworkIntegration. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is NetworkIntegration { public static isInstance(obj: any): obj is NetworkIntegration {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === NetworkIntegration.__pulumiType; return obj["__pulumiType"] === NetworkIntegration.__pulumiType;
} }
/** /**
* *Optional* - Map of key/value pairs of [network integration config settings](https://linuxcontainers.org/incus/docs/main/howto/network_integrations/) * *Optional* - Map of key/value pairs of [network integration config settings](https://linuxcontainers.org/incus/docs/main/howto/network_integrations/)
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of the network integration. * *Optional* - Description of the network integration.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* **Required** - Name of the network integration. * **Required** - Name of the network integration.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* *Optional* - Name of the project where the network will be created. * *Optional* - Name of the project where the network will be created.
*/ */
declare public readonly project: pulumi.Output<string>; declare public readonly project: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* **Required** - The type of the network integration. Currently, only supports `ovn` type. * **Required** - The type of the network integration. Currently, only supports `ovn` type.
*/ */
declare public readonly type: pulumi.Output<string>; declare public readonly type: pulumi.Output<string>;
/** /**
* Create a NetworkIntegration resource with the given unique name, arguments, and options. * Create a NetworkIntegration resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: NetworkIntegrationArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: NetworkIntegrationArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: NetworkIntegrationArgs | NetworkIntegrationState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: NetworkIntegrationArgs | NetworkIntegrationState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as NetworkIntegrationState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["name"] = state?.name; if (opts.id) {
resourceInputs["project"] = state?.project; const state = argsOrState as NetworkIntegrationState | undefined;
resourceInputs["remote"] = state?.remote; resourceInputs["config"] = state?.config;
resourceInputs["type"] = state?.type; resourceInputs["description"] = state?.description;
} else { resourceInputs["name"] = state?.name;
const args = argsOrState as NetworkIntegrationArgs | undefined; resourceInputs["project"] = state?.project;
if (args?.name === undefined && !opts.urn) { resourceInputs["remote"] = state?.remote;
throw new Error("Missing required property 'name'"); resourceInputs["type"] = state?.type;
} } else {
if (args?.type === undefined && !opts.urn) { const args = argsOrState as NetworkIntegrationArgs | undefined;
throw new Error("Missing required property 'type'"); if (args?.name === undefined && !opts.urn) {
} throw new Error("Missing required property 'name'");
resourceInputs["config"] = args?.config; }
resourceInputs["description"] = args?.description; if (args?.type === undefined && !opts.urn) {
resourceInputs["name"] = args?.name; throw new Error("Missing required property 'type'");
resourceInputs["project"] = (args?.project) ?? "default"; }
resourceInputs["remote"] = args?.remote; resourceInputs["config"] = args?.config;
resourceInputs["type"] = args?.type; resourceInputs["description"] = args?.description;
} resourceInputs["name"] = args?.name;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["project"] = args?.project ?? "default";
super(NetworkIntegration.__pulumiType, name, resourceInputs, opts); resourceInputs["remote"] = args?.remote;
} resourceInputs["type"] = args?.type;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(NetworkIntegration.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering NetworkIntegration resources. * Input properties used for looking up and filtering NetworkIntegration resources.
*/ */
export interface NetworkIntegrationState { export interface NetworkIntegrationState {
/** /**
* *Optional* - Map of key/value pairs of [network integration config settings](https://linuxcontainers.org/incus/docs/main/howto/network_integrations/) * *Optional* - Map of key/value pairs of [network integration config settings](https://linuxcontainers.org/incus/docs/main/howto/network_integrations/)
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network integration. * *Optional* - Description of the network integration.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the network integration. * **Required** - Name of the network integration.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network will be created. * *Optional* - Name of the project where the network will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* **Required** - The type of the network integration. Currently, only supports `ovn` type. * **Required** - The type of the network integration. Currently, only supports `ovn` type.
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a NetworkIntegration resource. * The set of arguments for constructing a NetworkIntegration resource.
*/ */
export interface NetworkIntegrationArgs { export interface NetworkIntegrationArgs {
/** /**
* *Optional* - Map of key/value pairs of [network integration config settings](https://linuxcontainers.org/incus/docs/main/howto/network_integrations/) * *Optional* - Map of key/value pairs of [network integration config settings](https://linuxcontainers.org/incus/docs/main/howto/network_integrations/)
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network integration. * *Optional* - Description of the network integration.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the network integration. * **Required** - Name of the network integration.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network will be created. * *Optional* - Name of the project where the network will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* **Required** - The type of the network integration. Currently, only supports `ovn` type. * **Required** - The type of the network integration. Currently, only supports `ovn` type.
*/ */
type: pulumi.Input<string>; type: pulumi.Input<string>;
} }

View File

@@ -7,127 +7,138 @@ import * as outputs from "./types/output";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class NetworkLoadBalancer extends pulumi.CustomResource { export class NetworkLoadBalancer extends pulumi.CustomResource {
/** /**
* Get an existing NetworkLoadBalancer resource's state with the given name, ID, and optional extra * Get an existing NetworkLoadBalancer resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkLoadBalancerState, opts?: pulumi.CustomResourceOptions): NetworkLoadBalancer { public static get(
return new NetworkLoadBalancer(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: NetworkLoadBalancerState,
opts?: pulumi.CustomResourceOptions,
): NetworkLoadBalancer {
return new NetworkLoadBalancer(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/networkLoadBalancer:NetworkLoadBalancer'; public static readonly __pulumiType = "incus:index/networkLoadBalancer:NetworkLoadBalancer";
/** /**
* Returns true if the given object is an instance of NetworkLoadBalancer. This is designed to work even * Returns true if the given object is an instance of NetworkLoadBalancer. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is NetworkLoadBalancer { public static isInstance(obj: any): obj is NetworkLoadBalancer {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === NetworkLoadBalancer.__pulumiType; return obj["__pulumiType"] === NetworkLoadBalancer.__pulumiType;
} }
/** /**
* Network load balancer backend * Network load balancer backend
*/ */
declare public readonly backends: pulumi.Output<outputs.NetworkLoadBalancerBackend[] | undefined>; declare public readonly backends: pulumi.Output<
declare public readonly config: pulumi.Output<{[key: string]: string}>; outputs.NetworkLoadBalancerBackend[] | undefined
declare public readonly description: pulumi.Output<string>; >;
declare public readonly listenAddress: pulumi.Output<string>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
declare public readonly network: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** declare public readonly listenAddress: pulumi.Output<string>;
* Network load balancer port declare public readonly network: pulumi.Output<string>;
*/ /**
declare public readonly ports: pulumi.Output<outputs.NetworkLoadBalancerPort[] | undefined>; * Network load balancer port
declare public readonly project: pulumi.Output<string | undefined>; */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly ports: pulumi.Output<outputs.NetworkLoadBalancerPort[] | undefined>;
declare public readonly project: pulumi.Output<string | undefined>;
declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* Create a NetworkLoadBalancer resource with the given unique name, arguments, and options. * Create a NetworkLoadBalancer resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: NetworkLoadBalancerArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: NetworkLoadBalancerArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: NetworkLoadBalancerArgs | NetworkLoadBalancerState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: NetworkLoadBalancerArgs | NetworkLoadBalancerState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as NetworkLoadBalancerState | undefined; ) {
resourceInputs["backends"] = state?.backends; let resourceInputs: pulumi.Inputs = {};
resourceInputs["config"] = state?.config; opts = opts || {};
resourceInputs["description"] = state?.description; if (opts.id) {
resourceInputs["listenAddress"] = state?.listenAddress; const state = argsOrState as NetworkLoadBalancerState | undefined;
resourceInputs["network"] = state?.network; resourceInputs["backends"] = state?.backends;
resourceInputs["ports"] = state?.ports; resourceInputs["config"] = state?.config;
resourceInputs["project"] = state?.project; resourceInputs["description"] = state?.description;
resourceInputs["remote"] = state?.remote; resourceInputs["listenAddress"] = state?.listenAddress;
} else { resourceInputs["network"] = state?.network;
const args = argsOrState as NetworkLoadBalancerArgs | undefined; resourceInputs["ports"] = state?.ports;
if (args?.listenAddress === undefined && !opts.urn) { resourceInputs["project"] = state?.project;
throw new Error("Missing required property 'listenAddress'"); resourceInputs["remote"] = state?.remote;
} } else {
if (args?.network === undefined && !opts.urn) { const args = argsOrState as NetworkLoadBalancerArgs | undefined;
throw new Error("Missing required property 'network'"); if (args?.listenAddress === undefined && !opts.urn) {
} throw new Error("Missing required property 'listenAddress'");
resourceInputs["backends"] = args?.backends; }
resourceInputs["config"] = args?.config; if (args?.network === undefined && !opts.urn) {
resourceInputs["description"] = args?.description; throw new Error("Missing required property 'network'");
resourceInputs["listenAddress"] = args?.listenAddress; }
resourceInputs["network"] = args?.network; resourceInputs["backends"] = args?.backends;
resourceInputs["ports"] = args?.ports; resourceInputs["config"] = args?.config;
resourceInputs["project"] = args?.project; resourceInputs["description"] = args?.description;
resourceInputs["remote"] = args?.remote; resourceInputs["listenAddress"] = args?.listenAddress;
} resourceInputs["network"] = args?.network;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["ports"] = args?.ports;
super(NetworkLoadBalancer.__pulumiType, name, resourceInputs, opts); resourceInputs["project"] = args?.project;
} resourceInputs["remote"] = args?.remote;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(NetworkLoadBalancer.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering NetworkLoadBalancer resources. * Input properties used for looking up and filtering NetworkLoadBalancer resources.
*/ */
export interface NetworkLoadBalancerState { export interface NetworkLoadBalancerState {
/** /**
* Network load balancer backend * Network load balancer backend
*/ */
backends?: pulumi.Input<pulumi.Input<inputs.NetworkLoadBalancerBackend>[]>; backends?: pulumi.Input<pulumi.Input<inputs.NetworkLoadBalancerBackend>[]>;
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
listenAddress?: pulumi.Input<string>; listenAddress?: pulumi.Input<string>;
network?: pulumi.Input<string>; network?: pulumi.Input<string>;
/** /**
* Network load balancer port * Network load balancer port
*/ */
ports?: pulumi.Input<pulumi.Input<inputs.NetworkLoadBalancerPort>[]>; ports?: pulumi.Input<pulumi.Input<inputs.NetworkLoadBalancerPort>[]>;
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a NetworkLoadBalancer resource. * The set of arguments for constructing a NetworkLoadBalancer resource.
*/ */
export interface NetworkLoadBalancerArgs { export interface NetworkLoadBalancerArgs {
/** /**
* Network load balancer backend * Network load balancer backend
*/ */
backends?: pulumi.Input<pulumi.Input<inputs.NetworkLoadBalancerBackend>[]>; backends?: pulumi.Input<pulumi.Input<inputs.NetworkLoadBalancerBackend>[]>;
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
listenAddress: pulumi.Input<string>; listenAddress: pulumi.Input<string>;
network: pulumi.Input<string>; network: pulumi.Input<string>;
/** /**
* Network load balancer port * Network load balancer port
*/ */
ports?: pulumi.Input<pulumi.Input<inputs.NetworkLoadBalancerPort>[]>; ports?: pulumi.Input<pulumi.Input<inputs.NetworkLoadBalancerPort>[]>;
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

View File

@@ -51,204 +51,213 @@ import * as utilities from "./utilities";
* ``` * ```
*/ */
export class NetworkPeer extends pulumi.CustomResource { export class NetworkPeer extends pulumi.CustomResource {
/** /**
* Get an existing NetworkPeer resource's state with the given name, ID, and optional extra * Get an existing NetworkPeer resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkPeerState, opts?: pulumi.CustomResourceOptions): NetworkPeer { public static get(
return new NetworkPeer(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: NetworkPeerState,
opts?: pulumi.CustomResourceOptions,
): NetworkPeer {
return new NetworkPeer(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/networkPeer:NetworkPeer'; public static readonly __pulumiType = "incus:index/networkPeer:NetworkPeer";
/** /**
* Returns true if the given object is an instance of NetworkPeer. This is designed to work even * Returns true if the given object is an instance of NetworkPeer. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is NetworkPeer { public static isInstance(obj: any): obj is NetworkPeer {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === NetworkPeer.__pulumiType; return obj["__pulumiType"] === NetworkPeer.__pulumiType;
} }
/** /**
* *Optional* - Configuration options as key/value pairs (only user.* custom keys supported) * *Optional* - Configuration options as key/value pairs (only user.* custom keys supported)
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of the network peering * *Optional* - Description of the network peering
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* **required** - Name of the network peering on the local network * **required** - Name of the network peering on the local network
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* **Required** - Name of the local network. * **Required** - Name of the local network.
*/ */
declare public readonly network: pulumi.Output<string | undefined>; declare public readonly network: pulumi.Output<string | undefined>;
/** /**
* *Optional* - Name of the project where the network is located. * *Optional* - Name of the project where the network is located.
*/ */
declare public readonly project: pulumi.Output<string>; declare public readonly project: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
declare public /*out*/ readonly status: pulumi.Output<string>; declare public readonly /*out*/ status: pulumi.Output<string>;
declare public readonly targetIntegration: pulumi.Output<string>; declare public readonly targetIntegration: pulumi.Output<string>;
/** /**
* **required** - Which network to create a peering with (required at create time for local peers) * **required** - Which network to create a peering with (required at create time for local peers)
*/ */
declare public readonly targetNetwork: pulumi.Output<string>; declare public readonly targetNetwork: pulumi.Output<string>;
/** /**
* *Optional* - Which project the target network exists in (required at create time for local peers) * *Optional* - Which project the target network exists in (required at create time for local peers)
*/ */
declare public readonly targetProject: pulumi.Output<string>; declare public readonly targetProject: pulumi.Output<string>;
/** /**
* *Optional* - Type of network peering * *Optional* - Type of network peering
*/ */
declare public readonly type: pulumi.Output<string>; declare public readonly type: pulumi.Output<string>;
/** /**
* Create a NetworkPeer resource with the given unique name, arguments, and options. * Create a NetworkPeer resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: NetworkPeerArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: NetworkPeerArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: NetworkPeerArgs | NetworkPeerState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: NetworkPeerArgs | NetworkPeerState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as NetworkPeerState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["name"] = state?.name; if (opts.id) {
resourceInputs["network"] = state?.network; const state = argsOrState as NetworkPeerState | undefined;
resourceInputs["project"] = state?.project; resourceInputs["config"] = state?.config;
resourceInputs["remote"] = state?.remote; resourceInputs["description"] = state?.description;
resourceInputs["status"] = state?.status; resourceInputs["name"] = state?.name;
resourceInputs["targetIntegration"] = state?.targetIntegration; resourceInputs["network"] = state?.network;
resourceInputs["targetNetwork"] = state?.targetNetwork; resourceInputs["project"] = state?.project;
resourceInputs["targetProject"] = state?.targetProject; resourceInputs["remote"] = state?.remote;
resourceInputs["type"] = state?.type; resourceInputs["status"] = state?.status;
} else { resourceInputs["targetIntegration"] = state?.targetIntegration;
const args = argsOrState as NetworkPeerArgs | undefined; resourceInputs["targetNetwork"] = state?.targetNetwork;
if (args?.name === undefined && !opts.urn) { resourceInputs["targetProject"] = state?.targetProject;
throw new Error("Missing required property 'name'"); resourceInputs["type"] = state?.type;
} } else {
resourceInputs["config"] = args?.config; const args = argsOrState as NetworkPeerArgs | undefined;
resourceInputs["description"] = args?.description; if (args?.name === undefined && !opts.urn) {
resourceInputs["name"] = args?.name; throw new Error("Missing required property 'name'");
resourceInputs["network"] = args?.network; }
resourceInputs["project"] = (args?.project) ?? "default"; resourceInputs["config"] = args?.config;
resourceInputs["remote"] = args?.remote; resourceInputs["description"] = args?.description;
resourceInputs["targetIntegration"] = args?.targetIntegration; resourceInputs["name"] = args?.name;
resourceInputs["targetNetwork"] = args?.targetNetwork; resourceInputs["network"] = args?.network;
resourceInputs["targetProject"] = args?.targetProject; resourceInputs["project"] = args?.project ?? "default";
resourceInputs["type"] = args?.type; resourceInputs["remote"] = args?.remote;
resourceInputs["status"] = undefined /*out*/; resourceInputs["targetIntegration"] = args?.targetIntegration;
} resourceInputs["targetNetwork"] = args?.targetNetwork;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["targetProject"] = args?.targetProject;
super(NetworkPeer.__pulumiType, name, resourceInputs, opts); resourceInputs["type"] = args?.type;
} resourceInputs["status"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(NetworkPeer.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering NetworkPeer resources. * Input properties used for looking up and filtering NetworkPeer resources.
*/ */
export interface NetworkPeerState { export interface NetworkPeerState {
/** /**
* *Optional* - Configuration options as key/value pairs (only user.* custom keys supported) * *Optional* - Configuration options as key/value pairs (only user.* custom keys supported)
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network peering * *Optional* - Description of the network peering
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **required** - Name of the network peering on the local network * **required** - Name of the network peering on the local network
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* **Required** - Name of the local network. * **Required** - Name of the local network.
*/ */
network?: pulumi.Input<string>; network?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network is located. * *Optional* - Name of the project where the network is located.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
status?: pulumi.Input<string>; status?: pulumi.Input<string>;
targetIntegration?: pulumi.Input<string>; targetIntegration?: pulumi.Input<string>;
/** /**
* **required** - Which network to create a peering with (required at create time for local peers) * **required** - Which network to create a peering with (required at create time for local peers)
*/ */
targetNetwork?: pulumi.Input<string>; targetNetwork?: pulumi.Input<string>;
/** /**
* *Optional* - Which project the target network exists in (required at create time for local peers) * *Optional* - Which project the target network exists in (required at create time for local peers)
*/ */
targetProject?: pulumi.Input<string>; targetProject?: pulumi.Input<string>;
/** /**
* *Optional* - Type of network peering * *Optional* - Type of network peering
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a NetworkPeer resource. * The set of arguments for constructing a NetworkPeer resource.
*/ */
export interface NetworkPeerArgs { export interface NetworkPeerArgs {
/** /**
* *Optional* - Configuration options as key/value pairs (only user.* custom keys supported) * *Optional* - Configuration options as key/value pairs (only user.* custom keys supported)
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network peering * *Optional* - Description of the network peering
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **required** - Name of the network peering on the local network * **required** - Name of the network peering on the local network
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* **Required** - Name of the local network. * **Required** - Name of the local network.
*/ */
network?: pulumi.Input<string>; network?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network is located. * *Optional* - Name of the project where the network is located.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
targetIntegration?: pulumi.Input<string>; targetIntegration?: pulumi.Input<string>;
/** /**
* **required** - Which network to create a peering with (required at create time for local peers) * **required** - Which network to create a peering with (required at create time for local peers)
*/ */
targetNetwork?: pulumi.Input<string>; targetNetwork?: pulumi.Input<string>;
/** /**
* *Optional* - Which project the target network exists in (required at create time for local peers) * *Optional* - Which project the target network exists in (required at create time for local peers)
*/ */
targetProject?: pulumi.Input<string>; targetProject?: pulumi.Input<string>;
/** /**
* *Optional* - Type of network peering * *Optional* - Type of network peering
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }

View File

@@ -5,142 +5,151 @@ import * as pulumi from "@pulumi/pulumi";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class NetworkZone extends pulumi.CustomResource { export class NetworkZone extends pulumi.CustomResource {
/** /**
* Get an existing NetworkZone resource's state with the given name, ID, and optional extra * Get an existing NetworkZone resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkZoneState, opts?: pulumi.CustomResourceOptions): NetworkZone { public static get(
return new NetworkZone(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: NetworkZoneState,
opts?: pulumi.CustomResourceOptions,
): NetworkZone {
return new NetworkZone(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/networkZone:NetworkZone'; public static readonly __pulumiType = "incus:index/networkZone:NetworkZone";
/** /**
* Returns true if the given object is an instance of NetworkZone. This is designed to work even * Returns true if the given object is an instance of NetworkZone. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is NetworkZone { public static isInstance(obj: any): obj is NetworkZone {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === NetworkZone.__pulumiType; return obj["__pulumiType"] === NetworkZone.__pulumiType;
} }
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options). * [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of the network zone. * *Optional* - Description of the network zone.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* **Required** - Name of the network zone. * **Required** - Name of the network zone.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* *Optional* - Name of the project where the network zone will be created. * *Optional* - Name of the project where the network zone will be created.
*/ */
declare public readonly project: pulumi.Output<string>; declare public readonly project: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* Create a NetworkZone resource with the given unique name, arguments, and options. * Create a NetworkZone resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: NetworkZoneArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: NetworkZoneArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: NetworkZoneArgs | NetworkZoneState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: NetworkZoneArgs | NetworkZoneState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as NetworkZoneState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["name"] = state?.name; if (opts.id) {
resourceInputs["project"] = state?.project; const state = argsOrState as NetworkZoneState | undefined;
resourceInputs["remote"] = state?.remote; resourceInputs["config"] = state?.config;
} else { resourceInputs["description"] = state?.description;
const args = argsOrState as NetworkZoneArgs | undefined; resourceInputs["name"] = state?.name;
if (args?.name === undefined && !opts.urn) { resourceInputs["project"] = state?.project;
throw new Error("Missing required property 'name'"); resourceInputs["remote"] = state?.remote;
} } else {
resourceInputs["config"] = args?.config; const args = argsOrState as NetworkZoneArgs | undefined;
resourceInputs["description"] = args?.description; if (args?.name === undefined && !opts.urn) {
resourceInputs["name"] = args?.name; throw new Error("Missing required property 'name'");
resourceInputs["project"] = (args?.project) ?? "default"; }
resourceInputs["remote"] = args?.remote; resourceInputs["config"] = args?.config;
} resourceInputs["description"] = args?.description;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["name"] = args?.name;
super(NetworkZone.__pulumiType, name, resourceInputs, opts); resourceInputs["project"] = args?.project ?? "default";
} resourceInputs["remote"] = args?.remote;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(NetworkZone.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering NetworkZone resources. * Input properties used for looking up and filtering NetworkZone resources.
*/ */
export interface NetworkZoneState { export interface NetworkZoneState {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options). * [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network zone. * *Optional* - Description of the network zone.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the network zone. * **Required** - Name of the network zone.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network zone will be created. * *Optional* - Name of the project where the network zone will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a NetworkZone resource. * The set of arguments for constructing a NetworkZone resource.
*/ */
export interface NetworkZoneArgs { export interface NetworkZoneArgs {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options). * [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network zone. * *Optional* - Description of the network zone.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the network zone. * **Required** - Name of the network zone.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network zone will be created. * *Optional* - Name of the project where the network zone will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

View File

@@ -7,173 +7,182 @@ import * as outputs from "./types/output";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class NetworkZoneRecord extends pulumi.CustomResource { export class NetworkZoneRecord extends pulumi.CustomResource {
/** /**
* Get an existing NetworkZoneRecord resource's state with the given name, ID, and optional extra * Get an existing NetworkZoneRecord resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkZoneRecordState, opts?: pulumi.CustomResourceOptions): NetworkZoneRecord { public static get(
return new NetworkZoneRecord(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: NetworkZoneRecordState,
opts?: pulumi.CustomResourceOptions,
): NetworkZoneRecord {
return new NetworkZoneRecord(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/networkZoneRecord:NetworkZoneRecord'; public static readonly __pulumiType = "incus:index/networkZoneRecord:NetworkZoneRecord";
/** /**
* Returns true if the given object is an instance of NetworkZoneRecord. This is designed to work even * Returns true if the given object is an instance of NetworkZoneRecord. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is NetworkZoneRecord { public static isInstance(obj: any): obj is NetworkZoneRecord {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === NetworkZoneRecord.__pulumiType; return obj["__pulumiType"] === NetworkZoneRecord.__pulumiType;
} }
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options). * [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of the network zone. * *Optional* - Description of the network zone.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* *Optional* - Entry in network zone record - see below. * *Optional* - Entry in network zone record - see below.
*/ */
declare public readonly entries: pulumi.Output<outputs.NetworkZoneRecordEntry[] | undefined>; declare public readonly entries: pulumi.Output<outputs.NetworkZoneRecordEntry[] | undefined>;
/** /**
* **Required** - Name of the network zone record. * **Required** - Name of the network zone record.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* *Optional* - Name of the project where the network zone record will be created. * *Optional* - Name of the project where the network zone record will be created.
*/ */
declare public readonly project: pulumi.Output<string>; declare public readonly project: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* **Required** - Name of the zone to add the entries of this record. * **Required** - Name of the zone to add the entries of this record.
*/ */
declare public readonly zone: pulumi.Output<string>; declare public readonly zone: pulumi.Output<string>;
/** /**
* Create a NetworkZoneRecord resource with the given unique name, arguments, and options. * Create a NetworkZoneRecord resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: NetworkZoneRecordArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: NetworkZoneRecordArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: NetworkZoneRecordArgs | NetworkZoneRecordState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: NetworkZoneRecordArgs | NetworkZoneRecordState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as NetworkZoneRecordState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["entries"] = state?.entries; if (opts.id) {
resourceInputs["name"] = state?.name; const state = argsOrState as NetworkZoneRecordState | undefined;
resourceInputs["project"] = state?.project; resourceInputs["config"] = state?.config;
resourceInputs["remote"] = state?.remote; resourceInputs["description"] = state?.description;
resourceInputs["zone"] = state?.zone; resourceInputs["entries"] = state?.entries;
} else { resourceInputs["name"] = state?.name;
const args = argsOrState as NetworkZoneRecordArgs | undefined; resourceInputs["project"] = state?.project;
if (args?.name === undefined && !opts.urn) { resourceInputs["remote"] = state?.remote;
throw new Error("Missing required property 'name'"); resourceInputs["zone"] = state?.zone;
} } else {
if (args?.zone === undefined && !opts.urn) { const args = argsOrState as NetworkZoneRecordArgs | undefined;
throw new Error("Missing required property 'zone'"); if (args?.name === undefined && !opts.urn) {
} throw new Error("Missing required property 'name'");
resourceInputs["config"] = args?.config; }
resourceInputs["description"] = args?.description; if (args?.zone === undefined && !opts.urn) {
resourceInputs["entries"] = args?.entries; throw new Error("Missing required property 'zone'");
resourceInputs["name"] = args?.name; }
resourceInputs["project"] = (args?.project) ?? "default"; resourceInputs["config"] = args?.config;
resourceInputs["remote"] = args?.remote; resourceInputs["description"] = args?.description;
resourceInputs["zone"] = args?.zone; resourceInputs["entries"] = args?.entries;
} resourceInputs["name"] = args?.name;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["project"] = args?.project ?? "default";
super(NetworkZoneRecord.__pulumiType, name, resourceInputs, opts); resourceInputs["remote"] = args?.remote;
} resourceInputs["zone"] = args?.zone;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(NetworkZoneRecord.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering NetworkZoneRecord resources. * Input properties used for looking up and filtering NetworkZoneRecord resources.
*/ */
export interface NetworkZoneRecordState { export interface NetworkZoneRecordState {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options). * [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network zone. * *Optional* - Description of the network zone.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* *Optional* - Entry in network zone record - see below. * *Optional* - Entry in network zone record - see below.
*/ */
entries?: pulumi.Input<pulumi.Input<inputs.NetworkZoneRecordEntry>[]>; entries?: pulumi.Input<pulumi.Input<inputs.NetworkZoneRecordEntry>[]>;
/** /**
* **Required** - Name of the network zone record. * **Required** - Name of the network zone record.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network zone record will be created. * *Optional* - Name of the project where the network zone record will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* **Required** - Name of the zone to add the entries of this record. * **Required** - Name of the zone to add the entries of this record.
*/ */
zone?: pulumi.Input<string>; zone?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a NetworkZoneRecord resource. * The set of arguments for constructing a NetworkZoneRecord resource.
*/ */
export interface NetworkZoneRecordArgs { export interface NetworkZoneRecordArgs {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options). * [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the network zone. * *Optional* - Description of the network zone.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* *Optional* - Entry in network zone record - see below. * *Optional* - Entry in network zone record - see below.
*/ */
entries?: pulumi.Input<pulumi.Input<inputs.NetworkZoneRecordEntry>[]>; entries?: pulumi.Input<pulumi.Input<inputs.NetworkZoneRecordEntry>[]>;
/** /**
* **Required** - Name of the network zone record. * **Required** - Name of the network zone record.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the network zone record will be created. * *Optional* - Name of the project where the network zone record will be created.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* **Required** - Name of the zone to add the entries of this record. * **Required** - Name of the zone to add the entries of this record.
*/ */
zone: pulumi.Input<string>; zone: pulumi.Input<string>;
} }

View File

@@ -1,29 +1,31 @@
{ {
"name": "@kiterun/incus", "name": "@kiterun/incus",
"version": "1.0.0-alpha.0+dev", "version": "1.0.0-alpha.0+dev",
"description": "A Pulumi package for creating and managing incus cloud resources.", "description": "A Pulumi package for creating and managing incus cloud resources.",
"keywords": [ "keywords": [
"incus", "incus",
"category/cloud", "category/cloud",
"containers", "containers",
"nimbus" "nimbus"
], ],
"homepage": "https://linuxcontainers.org", "homepage": "https://linuxcontainers.org",
"repository": "https://git.kalinow.ski/kiterun/pulumi-incus", "repository": "https://git.kalinow.ski/kiterun/pulumi-incus",
"scripts": { "scripts": {
"build": "tsc" "build": "tsc"
}, },
"dependencies": { "dependencies": {
"@pulumi/pulumi": "^3.142.0" "@pulumi/pulumi": "^3.142.0"
}, },
"devDependencies": { "devDependencies": {
"@types/node": "^18", "@types/node": "^24.10.1",
"typescript": "^5.8.3" "oxfmt": "^0.17.0",
}, "typescript": "^5.8.3"
"pulumi": { },
"resource": true, "pulumi": {
"name": "incus", "resource": true,
"version": "1.0.0-alpha.0+dev", "name": "incus",
"server": "https://git.kalinow.ski/api/packages/kiterun/generic/pulumi-incus/${VERSION}/" "version": "1.0.0-alpha.0+dev",
} "server": "https://git.kalinow.ski/api/packages/kiterun/generic/pulumi-incus/${VERSION}/"
},
"packageManager": "pnpm@10.25.0+sha512.5e82639027af37cf832061bcc6d639c219634488e0f2baebe785028a793de7b525ffcd3f7ff574f5e9860654e098fe852ba8ac5dd5cefe1767d23a020a92f501"
} }

281
sdk/nodejs/profile.ts generated
View File

@@ -7,156 +7,165 @@ import * as outputs from "./types/output";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class Profile extends pulumi.CustomResource { export class Profile extends pulumi.CustomResource {
/** /**
* Get an existing Profile resource's state with the given name, ID, and optional extra * Get an existing Profile resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ProfileState, opts?: pulumi.CustomResourceOptions): Profile { public static get(
return new Profile(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: ProfileState,
opts?: pulumi.CustomResourceOptions,
): Profile {
return new Profile(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/profile:Profile'; public static readonly __pulumiType = "incus:index/profile:Profile";
/** /**
* Returns true if the given object is an instance of Profile. This is designed to work even * Returns true if the given object is an instance of Profile. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is Profile { public static isInstance(obj: any): obj is Profile {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === Profile.__pulumiType; return obj["__pulumiType"] === Profile.__pulumiType;
} }
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/). * [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of the profile. * *Optional* - Description of the profile.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* *Optional* - Device definition. See reference below. * *Optional* - Device definition. See reference below.
*/ */
declare public readonly devices: pulumi.Output<outputs.ProfileDevice[] | undefined>; declare public readonly devices: pulumi.Output<outputs.ProfileDevice[] | undefined>;
/** /**
* **Required** - Name of the profile. * **Required** - Name of the profile.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* *Optional* - Name of the project where the profile will be stored. * *Optional* - Name of the project where the profile will be stored.
*/ */
declare public readonly project: pulumi.Output<string>; declare public readonly project: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* Create a Profile resource with the given unique name, arguments, and options. * Create a Profile resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: ProfileArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: ProfileArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: ProfileArgs | ProfileState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: ProfileArgs | ProfileState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as ProfileState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["devices"] = state?.devices; if (opts.id) {
resourceInputs["name"] = state?.name; const state = argsOrState as ProfileState | undefined;
resourceInputs["project"] = state?.project; resourceInputs["config"] = state?.config;
resourceInputs["remote"] = state?.remote; resourceInputs["description"] = state?.description;
} else { resourceInputs["devices"] = state?.devices;
const args = argsOrState as ProfileArgs | undefined; resourceInputs["name"] = state?.name;
if (args?.name === undefined && !opts.urn) { resourceInputs["project"] = state?.project;
throw new Error("Missing required property 'name'"); resourceInputs["remote"] = state?.remote;
} } else {
resourceInputs["config"] = args?.config; const args = argsOrState as ProfileArgs | undefined;
resourceInputs["description"] = args?.description; if (args?.name === undefined && !opts.urn) {
resourceInputs["devices"] = args?.devices; throw new Error("Missing required property 'name'");
resourceInputs["name"] = args?.name; }
resourceInputs["project"] = (args?.project) ?? "default"; resourceInputs["config"] = args?.config;
resourceInputs["remote"] = args?.remote; resourceInputs["description"] = args?.description;
} resourceInputs["devices"] = args?.devices;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["name"] = args?.name;
super(Profile.__pulumiType, name, resourceInputs, opts); resourceInputs["project"] = args?.project ?? "default";
} resourceInputs["remote"] = args?.remote;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(Profile.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering Profile resources. * Input properties used for looking up and filtering Profile resources.
*/ */
export interface ProfileState { export interface ProfileState {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/). * [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the profile. * *Optional* - Description of the profile.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* *Optional* - Device definition. See reference below. * *Optional* - Device definition. See reference below.
*/ */
devices?: pulumi.Input<pulumi.Input<inputs.ProfileDevice>[]>; devices?: pulumi.Input<pulumi.Input<inputs.ProfileDevice>[]>;
/** /**
* **Required** - Name of the profile. * **Required** - Name of the profile.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the profile will be stored. * *Optional* - Name of the project where the profile will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a Profile resource. * The set of arguments for constructing a Profile resource.
*/ */
export interface ProfileArgs { export interface ProfileArgs {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/). * [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the profile. * *Optional* - Description of the profile.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* *Optional* - Device definition. See reference below. * *Optional* - Device definition. See reference below.
*/ */
devices?: pulumi.Input<pulumi.Input<inputs.ProfileDevice>[]>; devices?: pulumi.Input<pulumi.Input<inputs.ProfileDevice>[]>;
/** /**
* **Required** - Name of the profile. * **Required** - Name of the profile.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the profile will be stored. * *Optional* - Name of the project where the profile will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

247
sdk/nodejs/project.ts generated
View File

@@ -5,139 +5,148 @@ import * as pulumi from "@pulumi/pulumi";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class Project extends pulumi.CustomResource { export class Project extends pulumi.CustomResource {
/** /**
* Get an existing Project resource's state with the given name, ID, and optional extra * Get an existing Project resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ProjectState, opts?: pulumi.CustomResourceOptions): Project { public static get(
return new Project(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: ProjectState,
opts?: pulumi.CustomResourceOptions,
): Project {
return new Project(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/project:Project'; public static readonly __pulumiType = "incus:index/project:Project";
/** /**
* Returns true if the given object is an instance of Project. This is designed to work even * Returns true if the given object is an instance of Project. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is Project { public static isInstance(obj: any): obj is Project {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === Project.__pulumiType; return obj["__pulumiType"] === Project.__pulumiType;
} }
/** /**
* *Optional* - Map of key/value pairs of [project config settings](https://linuxcontainers.org/incus/docs/main/reference/projects/). * *Optional* - Map of key/value pairs of [project config settings](https://linuxcontainers.org/incus/docs/main/reference/projects/).
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of the project. * *Optional* - Description of the project.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* *Optional* - Whether to delete everything the project contains on destroy so that it can be destroyed without any error. * *Optional* - Whether to delete everything the project contains on destroy so that it can be destroyed without any error.
*/ */
declare public readonly forceDestroy: pulumi.Output<boolean>; declare public readonly forceDestroy: pulumi.Output<boolean>;
/** /**
* **Required** - Name of the project. * **Required** - Name of the project.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* Create a Project resource with the given unique name, arguments, and options. * Create a Project resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: ProjectArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: ProjectArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: ProjectArgs | ProjectState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: ProjectArgs | ProjectState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as ProjectState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["forceDestroy"] = state?.forceDestroy; if (opts.id) {
resourceInputs["name"] = state?.name; const state = argsOrState as ProjectState | undefined;
resourceInputs["remote"] = state?.remote; resourceInputs["config"] = state?.config;
} else { resourceInputs["description"] = state?.description;
const args = argsOrState as ProjectArgs | undefined; resourceInputs["forceDestroy"] = state?.forceDestroy;
if (args?.name === undefined && !opts.urn) { resourceInputs["name"] = state?.name;
throw new Error("Missing required property 'name'"); resourceInputs["remote"] = state?.remote;
} } else {
resourceInputs["config"] = args?.config; const args = argsOrState as ProjectArgs | undefined;
resourceInputs["description"] = args?.description; if (args?.name === undefined && !opts.urn) {
resourceInputs["forceDestroy"] = args?.forceDestroy; throw new Error("Missing required property 'name'");
resourceInputs["name"] = args?.name; }
resourceInputs["remote"] = args?.remote; resourceInputs["config"] = args?.config;
} resourceInputs["description"] = args?.description;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["forceDestroy"] = args?.forceDestroy;
super(Project.__pulumiType, name, resourceInputs, opts); resourceInputs["name"] = args?.name;
} resourceInputs["remote"] = args?.remote;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(Project.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering Project resources. * Input properties used for looking up and filtering Project resources.
*/ */
export interface ProjectState { export interface ProjectState {
/** /**
* *Optional* - Map of key/value pairs of [project config settings](https://linuxcontainers.org/incus/docs/main/reference/projects/). * *Optional* - Map of key/value pairs of [project config settings](https://linuxcontainers.org/incus/docs/main/reference/projects/).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the project. * *Optional* - Description of the project.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* *Optional* - Whether to delete everything the project contains on destroy so that it can be destroyed without any error. * *Optional* - Whether to delete everything the project contains on destroy so that it can be destroyed without any error.
*/ */
forceDestroy?: pulumi.Input<boolean>; forceDestroy?: pulumi.Input<boolean>;
/** /**
* **Required** - Name of the project. * **Required** - Name of the project.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a Project resource. * The set of arguments for constructing a Project resource.
*/ */
export interface ProjectArgs { export interface ProjectArgs {
/** /**
* *Optional* - Map of key/value pairs of [project config settings](https://linuxcontainers.org/incus/docs/main/reference/projects/). * *Optional* - Map of key/value pairs of [project config settings](https://linuxcontainers.org/incus/docs/main/reference/projects/).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the project. * *Optional* - Description of the project.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* *Optional* - Whether to delete everything the project contains on destroy so that it can be destroyed without any error. * *Optional* - Whether to delete everything the project contains on destroy so that it can be destroyed without any error.
*/ */
forceDestroy?: pulumi.Input<boolean>; forceDestroy?: pulumi.Input<boolean>;
/** /**
* **Required** - Name of the project. * **Required** - Name of the project.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
} }

175
sdk/nodejs/provider.ts generated
View File

@@ -13,101 +13,108 @@ import * as utilities from "./utilities";
* [documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information. * [documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.
*/ */
export class Provider extends pulumi.ProviderResource { export class Provider extends pulumi.ProviderResource {
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus'; public static readonly __pulumiType = "incus";
/** /**
* Returns true if the given object is an instance of Provider. This is designed to work even * Returns true if the given object is an instance of Provider. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is Provider { public static isInstance(obj: any): obj is Provider {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === "pulumi:providers:" + Provider.__pulumiType; return obj["__pulumiType"] === "pulumi:providers:" + Provider.__pulumiType;
} }
/** /**
* The directory to look for existing Incus configuration. (default = $HOME/.config/incus) * The directory to look for existing Incus configuration. (default = $HOME/.config/incus)
*/ */
declare public readonly configDir: pulumi.Output<string | undefined>; declare public readonly configDir: pulumi.Output<string | undefined>;
/** /**
* The default remote to use when no other remote is defined in a resource. * The default remote to use when no other remote is defined in a resource.
*/ */
declare public readonly defaultRemote: pulumi.Output<string | undefined>; declare public readonly defaultRemote: pulumi.Output<string | undefined>;
/** /**
* The project where project-scoped resources will be created. Can be overridden in individual resources. (default = default) * The project where project-scoped resources will be created. Can be overridden in individual resources. (default = default)
*/ */
declare public readonly project: pulumi.Output<string | undefined>; declare public readonly project: pulumi.Output<string | undefined>;
/** /**
* Create a Provider resource with the given unique name, arguments, and options. * Create a Provider resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args?: ProviderArgs, opts?: pulumi.ResourceOptions) { constructor(name: string, args?: ProviderArgs, opts?: pulumi.ResourceOptions) {
let resourceInputs: pulumi.Inputs = {}; let resourceInputs: pulumi.Inputs = {};
opts = opts || {}; opts = opts || {};
{ {
resourceInputs["acceptRemoteCertificate"] = pulumi.output(args?.acceptRemoteCertificate).apply(JSON.stringify); resourceInputs["acceptRemoteCertificate"] = pulumi
resourceInputs["configDir"] = args?.configDir; .output(args?.acceptRemoteCertificate)
resourceInputs["defaultRemote"] = args?.defaultRemote; .apply(JSON.stringify);
resourceInputs["generateClientCertificates"] = pulumi.output(args?.generateClientCertificates).apply(JSON.stringify); resourceInputs["configDir"] = args?.configDir;
resourceInputs["project"] = args?.project; resourceInputs["defaultRemote"] = args?.defaultRemote;
resourceInputs["remotes"] = pulumi.output(args?.remotes).apply(JSON.stringify); resourceInputs["generateClientCertificates"] = pulumi
} .output(args?.generateClientCertificates)
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); .apply(JSON.stringify);
super(Provider.__pulumiType, name, resourceInputs, opts); resourceInputs["project"] = args?.project;
} resourceInputs["remotes"] = pulumi.output(args?.remotes).apply(JSON.stringify);
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(Provider.__pulumiType, name, resourceInputs, opts);
}
/** /**
* This function returns a Terraform config object with terraform-namecased keys,to be used with the Terraform Module Provider. * This function returns a Terraform config object with terraform-namecased keys,to be used with the Terraform Module Provider.
*/ */
terraformConfig(): pulumi.Output<Provider.TerraformConfigResult> { terraformConfig(): pulumi.Output<Provider.TerraformConfigResult> {
return pulumi.runtime.call("pulumi:providers:incus/terraformConfig", { return pulumi.runtime.call(
"__self__": this, "pulumi:providers:incus/terraformConfig",
}, this); {
} __self__: this,
},
this,
);
}
} }
/** /**
* The set of arguments for constructing a Provider resource. * The set of arguments for constructing a Provider resource.
*/ */
export interface ProviderArgs { export interface ProviderArgs {
/** /**
* Accept the server certificate. * Accept the server certificate.
*/ */
acceptRemoteCertificate?: pulumi.Input<boolean>; acceptRemoteCertificate?: pulumi.Input<boolean>;
/** /**
* The directory to look for existing Incus configuration. (default = $HOME/.config/incus) * The directory to look for existing Incus configuration. (default = $HOME/.config/incus)
*/ */
configDir?: pulumi.Input<string>; configDir?: pulumi.Input<string>;
/** /**
* The default remote to use when no other remote is defined in a resource. * The default remote to use when no other remote is defined in a resource.
*/ */
defaultRemote?: pulumi.Input<string>; defaultRemote?: pulumi.Input<string>;
/** /**
* Automatically generate the Incus client certificates if they don't exist. * Automatically generate the Incus client certificates if they don't exist.
*/ */
generateClientCertificates?: pulumi.Input<boolean>; generateClientCertificates?: pulumi.Input<boolean>;
/** /**
* The project where project-scoped resources will be created. Can be overridden in individual resources. (default = default) * The project where project-scoped resources will be created. Can be overridden in individual resources. (default = default)
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* Incus Remote * Incus Remote
*/ */
remotes?: pulumi.Input<pulumi.Input<inputs.ProviderRemote>[]>; remotes?: pulumi.Input<pulumi.Input<inputs.ProviderRemote>[]>;
} }
export namespace Provider { export namespace Provider {
/** /**
* The results of the Provider.terraformConfig method. * The results of the Provider.terraformConfig method.
*/ */
export interface TerraformConfigResult { export interface TerraformConfigResult {
readonly result: {[key: string]: any}; readonly result: { [key: string]: any };
} }
} }

203
sdk/nodejs/server.ts generated
View File

@@ -5,117 +5,126 @@ import * as pulumi from "@pulumi/pulumi";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class Server extends pulumi.CustomResource { export class Server extends pulumi.CustomResource {
/** /**
* Get an existing Server resource's state with the given name, ID, and optional extra * Get an existing Server resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ServerState, opts?: pulumi.CustomResourceOptions): Server { public static get(
return new Server(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: ServerState,
opts?: pulumi.CustomResourceOptions,
): Server {
return new Server(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/server:Server'; public static readonly __pulumiType = "incus:index/server:Server";
/** /**
* Returns true if the given object is an instance of Server. This is designed to work even * Returns true if the given object is an instance of Server. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is Server { public static isInstance(obj: any): obj is Server {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === Server.__pulumiType; return obj["__pulumiType"] === Server.__pulumiType;
} }
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [server config settings](https://linuxcontainers.org/incus/docs/main/server_config/). * [server config settings](https://linuxcontainers.org/incus/docs/main/server_config/).
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* *Optional* - Specify a target node in a cluster where the config * *Optional* - Specify a target node in a cluster where the config
* options should be applied. This is in particular important for config options * options should be applied. This is in particular important for config options
* with `local` scope. * with `local` scope.
*/ */
declare public readonly target: pulumi.Output<string | undefined>; declare public readonly target: pulumi.Output<string | undefined>;
/** /**
* Create a Server resource with the given unique name, arguments, and options. * Create a Server resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args?: ServerArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args?: ServerArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: ServerArgs | ServerState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: ServerArgs | ServerState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as ServerState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["remote"] = state?.remote; opts = opts || {};
resourceInputs["target"] = state?.target; if (opts.id) {
} else { const state = argsOrState as ServerState | undefined;
const args = argsOrState as ServerArgs | undefined; resourceInputs["config"] = state?.config;
resourceInputs["config"] = args?.config; resourceInputs["remote"] = state?.remote;
resourceInputs["remote"] = args?.remote; resourceInputs["target"] = state?.target;
resourceInputs["target"] = args?.target; } else {
} const args = argsOrState as ServerArgs | undefined;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["config"] = args?.config;
super(Server.__pulumiType, name, resourceInputs, opts); resourceInputs["remote"] = args?.remote;
} resourceInputs["target"] = args?.target;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(Server.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering Server resources. * Input properties used for looking up and filtering Server resources.
*/ */
export interface ServerState { export interface ServerState {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [server config settings](https://linuxcontainers.org/incus/docs/main/server_config/). * [server config settings](https://linuxcontainers.org/incus/docs/main/server_config/).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster where the config * *Optional* - Specify a target node in a cluster where the config
* options should be applied. This is in particular important for config options * options should be applied. This is in particular important for config options
* with `local` scope. * with `local` scope.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a Server resource. * The set of arguments for constructing a Server resource.
*/ */
export interface ServerArgs { export interface ServerArgs {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [server config settings](https://linuxcontainers.org/incus/docs/main/server_config/). * [server config settings](https://linuxcontainers.org/incus/docs/main/server_config/).
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster where the config * *Optional* - Specify a target node in a cluster where the config
* options should be applied. This is in particular important for config options * options should be applied. This is in particular important for config options
* with `local` scope. * with `local` scope.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
} }

View File

@@ -5,200 +5,209 @@ import * as pulumi from "@pulumi/pulumi";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class StorageBucket extends pulumi.CustomResource { export class StorageBucket extends pulumi.CustomResource {
/** /**
* Get an existing StorageBucket resource's state with the given name, ID, and optional extra * Get an existing StorageBucket resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: StorageBucketState, opts?: pulumi.CustomResourceOptions): StorageBucket { public static get(
return new StorageBucket(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: StorageBucketState,
opts?: pulumi.CustomResourceOptions,
): StorageBucket {
return new StorageBucket(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/storageBucket:StorageBucket'; public static readonly __pulumiType = "incus:index/storageBucket:StorageBucket";
/** /**
* Returns true if the given object is an instance of StorageBucket. This is designed to work even * Returns true if the given object is an instance of StorageBucket. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is StorageBucket { public static isInstance(obj: any): obj is StorageBucket {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === StorageBucket.__pulumiType; return obj["__pulumiType"] === StorageBucket.__pulumiType;
} }
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [storage bucket config settings](https://linuxcontainers.org/incus/docs/main/howto/storage_buckets/#configure-storage-bucket-settings). * [storage bucket config settings](https://linuxcontainers.org/incus/docs/main/howto/storage_buckets/#configure-storage-bucket-settings).
* Config settings vary depending on the Storage Pool used. * Config settings vary depending on the Storage Pool used.
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of the storage bucket. * *Optional* - Description of the storage bucket.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* Name of the node where storage bucket was created. It could be useful with Incus in cluster mode. * Name of the node where storage bucket was created. It could be useful with Incus in cluster mode.
*/ */
declare public /*out*/ readonly location: pulumi.Output<string>; declare public readonly /*out*/ location: pulumi.Output<string>;
/** /**
* **Required** - Name of the storage bucket. * **Required** - Name of the storage bucket.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* **Required** - Name of storage pool to host the storage bucket. * **Required** - Name of storage pool to host the storage bucket.
*/ */
declare public readonly pool: pulumi.Output<string>; declare public readonly pool: pulumi.Output<string>;
/** /**
* *Optional* - Name of the project where the storage bucket will be stored. * *Optional* - Name of the project where the storage bucket will be stored.
*/ */
declare public readonly project: pulumi.Output<string>; declare public readonly project: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* *Optional* - Path to a backup file from which the bucket will be created. * *Optional* - Path to a backup file from which the bucket will be created.
*/ */
declare public readonly sourceFile: pulumi.Output<string | undefined>; declare public readonly sourceFile: pulumi.Output<string | undefined>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
declare public readonly target: pulumi.Output<string>; declare public readonly target: pulumi.Output<string>;
/** /**
* Create a StorageBucket resource with the given unique name, arguments, and options. * Create a StorageBucket resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: StorageBucketArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: StorageBucketArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: StorageBucketArgs | StorageBucketState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: StorageBucketArgs | StorageBucketState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as StorageBucketState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["location"] = state?.location; if (opts.id) {
resourceInputs["name"] = state?.name; const state = argsOrState as StorageBucketState | undefined;
resourceInputs["pool"] = state?.pool; resourceInputs["config"] = state?.config;
resourceInputs["project"] = state?.project; resourceInputs["description"] = state?.description;
resourceInputs["remote"] = state?.remote; resourceInputs["location"] = state?.location;
resourceInputs["sourceFile"] = state?.sourceFile; resourceInputs["name"] = state?.name;
resourceInputs["target"] = state?.target; resourceInputs["pool"] = state?.pool;
} else { resourceInputs["project"] = state?.project;
const args = argsOrState as StorageBucketArgs | undefined; resourceInputs["remote"] = state?.remote;
if (args?.name === undefined && !opts.urn) { resourceInputs["sourceFile"] = state?.sourceFile;
throw new Error("Missing required property 'name'"); resourceInputs["target"] = state?.target;
} } else {
if (args?.pool === undefined && !opts.urn) { const args = argsOrState as StorageBucketArgs | undefined;
throw new Error("Missing required property 'pool'"); if (args?.name === undefined && !opts.urn) {
} throw new Error("Missing required property 'name'");
resourceInputs["config"] = args?.config; }
resourceInputs["description"] = args?.description; if (args?.pool === undefined && !opts.urn) {
resourceInputs["name"] = args?.name; throw new Error("Missing required property 'pool'");
resourceInputs["pool"] = args?.pool; }
resourceInputs["project"] = (args?.project) ?? "default"; resourceInputs["config"] = args?.config;
resourceInputs["remote"] = args?.remote; resourceInputs["description"] = args?.description;
resourceInputs["sourceFile"] = args?.sourceFile; resourceInputs["name"] = args?.name;
resourceInputs["target"] = args?.target; resourceInputs["pool"] = args?.pool;
resourceInputs["location"] = undefined /*out*/; resourceInputs["project"] = args?.project ?? "default";
} resourceInputs["remote"] = args?.remote;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["sourceFile"] = args?.sourceFile;
super(StorageBucket.__pulumiType, name, resourceInputs, opts); resourceInputs["target"] = args?.target;
} resourceInputs["location"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(StorageBucket.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering StorageBucket resources. * Input properties used for looking up and filtering StorageBucket resources.
*/ */
export interface StorageBucketState { export interface StorageBucketState {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [storage bucket config settings](https://linuxcontainers.org/incus/docs/main/howto/storage_buckets/#configure-storage-bucket-settings). * [storage bucket config settings](https://linuxcontainers.org/incus/docs/main/howto/storage_buckets/#configure-storage-bucket-settings).
* Config settings vary depending on the Storage Pool used. * Config settings vary depending on the Storage Pool used.
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the storage bucket. * *Optional* - Description of the storage bucket.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* Name of the node where storage bucket was created. It could be useful with Incus in cluster mode. * Name of the node where storage bucket was created. It could be useful with Incus in cluster mode.
*/ */
location?: pulumi.Input<string>; location?: pulumi.Input<string>;
/** /**
* **Required** - Name of the storage bucket. * **Required** - Name of the storage bucket.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* **Required** - Name of storage pool to host the storage bucket. * **Required** - Name of storage pool to host the storage bucket.
*/ */
pool?: pulumi.Input<string>; pool?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the storage bucket will be stored. * *Optional* - Name of the project where the storage bucket will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Path to a backup file from which the bucket will be created. * *Optional* - Path to a backup file from which the bucket will be created.
*/ */
sourceFile?: pulumi.Input<string>; sourceFile?: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a StorageBucket resource. * The set of arguments for constructing a StorageBucket resource.
*/ */
export interface StorageBucketArgs { export interface StorageBucketArgs {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [storage bucket config settings](https://linuxcontainers.org/incus/docs/main/howto/storage_buckets/#configure-storage-bucket-settings). * [storage bucket config settings](https://linuxcontainers.org/incus/docs/main/howto/storage_buckets/#configure-storage-bucket-settings).
* Config settings vary depending on the Storage Pool used. * Config settings vary depending on the Storage Pool used.
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the storage bucket. * *Optional* - Description of the storage bucket.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the storage bucket. * **Required** - Name of the storage bucket.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* **Required** - Name of storage pool to host the storage bucket. * **Required** - Name of storage pool to host the storage bucket.
*/ */
pool: pulumi.Input<string>; pool: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the storage bucket will be stored. * *Optional* - Name of the project where the storage bucket will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Path to a backup file from which the bucket will be created. * *Optional* - Path to a backup file from which the bucket will be created.
*/ */
sourceFile?: pulumi.Input<string>; sourceFile?: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
} }

View File

@@ -5,198 +5,207 @@ import * as pulumi from "@pulumi/pulumi";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class StorageBucketKey extends pulumi.CustomResource { export class StorageBucketKey extends pulumi.CustomResource {
/** /**
* Get an existing StorageBucketKey resource's state with the given name, ID, and optional extra * Get an existing StorageBucketKey resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: StorageBucketKeyState, opts?: pulumi.CustomResourceOptions): StorageBucketKey { public static get(
return new StorageBucketKey(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: StorageBucketKeyState,
opts?: pulumi.CustomResourceOptions,
): StorageBucketKey {
return new StorageBucketKey(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/storageBucketKey:StorageBucketKey'; public static readonly __pulumiType = "incus:index/storageBucketKey:StorageBucketKey";
/** /**
* Returns true if the given object is an instance of StorageBucketKey. This is designed to work even * Returns true if the given object is an instance of StorageBucketKey. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is StorageBucketKey { public static isInstance(obj: any): obj is StorageBucketKey {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === StorageBucketKey.__pulumiType; return obj["__pulumiType"] === StorageBucketKey.__pulumiType;
} }
/** /**
* Access key of the storage bucket key. * Access key of the storage bucket key.
*/ */
declare public /*out*/ readonly accessKey: pulumi.Output<string>; declare public readonly /*out*/ accessKey: pulumi.Output<string>;
/** /**
* *Optional* - Description of the storage bucket key. * *Optional* - Description of the storage bucket key.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* **Required** - Name of the storage bucket key. * **Required** - Name of the storage bucket key.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* **Required** - Name of storage pool to host the storage bucket key. * **Required** - Name of storage pool to host the storage bucket key.
*/ */
declare public readonly pool: pulumi.Output<string>; declare public readonly pool: pulumi.Output<string>;
/** /**
* *Optional* - Name of the project where the storage bucket key will be stored. * *Optional* - Name of the project where the storage bucket key will be stored.
*/ */
declare public readonly project: pulumi.Output<string>; declare public readonly project: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* *Optional* - Name of the role that controls the access rights for the * *Optional* - Name of the role that controls the access rights for the
* key. If not specified, the default role is used, as described in the [official documentation](https://linuxcontainers.org/incus/docs/main/howto/storage_buckets/#manage-storage-bucket-keys). * key. If not specified, the default role is used, as described in the [official documentation](https://linuxcontainers.org/incus/docs/main/howto/storage_buckets/#manage-storage-bucket-keys).
*/ */
declare public readonly role: pulumi.Output<string>; declare public readonly role: pulumi.Output<string>;
/** /**
* Secret key of the storage bucket key. * Secret key of the storage bucket key.
*/ */
declare public /*out*/ readonly secretKey: pulumi.Output<string>; declare public readonly /*out*/ secretKey: pulumi.Output<string>;
/** /**
* **Required** - Name of the storage bucket. * **Required** - Name of the storage bucket.
*/ */
declare public readonly storageBucket: pulumi.Output<string>; declare public readonly storageBucket: pulumi.Output<string>;
/** /**
* Create a StorageBucketKey resource with the given unique name, arguments, and options. * Create a StorageBucketKey resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: StorageBucketKeyArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: StorageBucketKeyArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: StorageBucketKeyArgs | StorageBucketKeyState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: StorageBucketKeyArgs | StorageBucketKeyState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as StorageBucketKeyState | undefined; ) {
resourceInputs["accessKey"] = state?.accessKey; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["name"] = state?.name; if (opts.id) {
resourceInputs["pool"] = state?.pool; const state = argsOrState as StorageBucketKeyState | undefined;
resourceInputs["project"] = state?.project; resourceInputs["accessKey"] = state?.accessKey;
resourceInputs["remote"] = state?.remote; resourceInputs["description"] = state?.description;
resourceInputs["role"] = state?.role; resourceInputs["name"] = state?.name;
resourceInputs["secretKey"] = state?.secretKey; resourceInputs["pool"] = state?.pool;
resourceInputs["storageBucket"] = state?.storageBucket; resourceInputs["project"] = state?.project;
} else { resourceInputs["remote"] = state?.remote;
const args = argsOrState as StorageBucketKeyArgs | undefined; resourceInputs["role"] = state?.role;
if (args?.name === undefined && !opts.urn) { resourceInputs["secretKey"] = state?.secretKey;
throw new Error("Missing required property 'name'"); resourceInputs["storageBucket"] = state?.storageBucket;
} } else {
if (args?.pool === undefined && !opts.urn) { const args = argsOrState as StorageBucketKeyArgs | undefined;
throw new Error("Missing required property 'pool'"); if (args?.name === undefined && !opts.urn) {
} throw new Error("Missing required property 'name'");
if (args?.storageBucket === undefined && !opts.urn) { }
throw new Error("Missing required property 'storageBucket'"); if (args?.pool === undefined && !opts.urn) {
} throw new Error("Missing required property 'pool'");
resourceInputs["description"] = args?.description; }
resourceInputs["name"] = args?.name; if (args?.storageBucket === undefined && !opts.urn) {
resourceInputs["pool"] = args?.pool; throw new Error("Missing required property 'storageBucket'");
resourceInputs["project"] = (args?.project) ?? "default"; }
resourceInputs["remote"] = args?.remote; resourceInputs["description"] = args?.description;
resourceInputs["role"] = args?.role; resourceInputs["name"] = args?.name;
resourceInputs["storageBucket"] = args?.storageBucket; resourceInputs["pool"] = args?.pool;
resourceInputs["accessKey"] = undefined /*out*/; resourceInputs["project"] = args?.project ?? "default";
resourceInputs["secretKey"] = undefined /*out*/; resourceInputs["remote"] = args?.remote;
} resourceInputs["role"] = args?.role;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["storageBucket"] = args?.storageBucket;
const secretOpts = { additionalSecretOutputs: ["accessKey", "secretKey"] }; resourceInputs["accessKey"] = undefined /*out*/;
opts = pulumi.mergeOptions(opts, secretOpts); resourceInputs["secretKey"] = undefined /*out*/;
super(StorageBucketKey.__pulumiType, name, resourceInputs, opts); }
} opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const secretOpts = { additionalSecretOutputs: ["accessKey", "secretKey"] };
opts = pulumi.mergeOptions(opts, secretOpts);
super(StorageBucketKey.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering StorageBucketKey resources. * Input properties used for looking up and filtering StorageBucketKey resources.
*/ */
export interface StorageBucketKeyState { export interface StorageBucketKeyState {
/** /**
* Access key of the storage bucket key. * Access key of the storage bucket key.
*/ */
accessKey?: pulumi.Input<string>; accessKey?: pulumi.Input<string>;
/** /**
* *Optional* - Description of the storage bucket key. * *Optional* - Description of the storage bucket key.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the storage bucket key. * **Required** - Name of the storage bucket key.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* **Required** - Name of storage pool to host the storage bucket key. * **Required** - Name of storage pool to host the storage bucket key.
*/ */
pool?: pulumi.Input<string>; pool?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the storage bucket key will be stored. * *Optional* - Name of the project where the storage bucket key will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the role that controls the access rights for the * *Optional* - Name of the role that controls the access rights for the
* key. If not specified, the default role is used, as described in the [official documentation](https://linuxcontainers.org/incus/docs/main/howto/storage_buckets/#manage-storage-bucket-keys). * key. If not specified, the default role is used, as described in the [official documentation](https://linuxcontainers.org/incus/docs/main/howto/storage_buckets/#manage-storage-bucket-keys).
*/ */
role?: pulumi.Input<string>; role?: pulumi.Input<string>;
/** /**
* Secret key of the storage bucket key. * Secret key of the storage bucket key.
*/ */
secretKey?: pulumi.Input<string>; secretKey?: pulumi.Input<string>;
/** /**
* **Required** - Name of the storage bucket. * **Required** - Name of the storage bucket.
*/ */
storageBucket?: pulumi.Input<string>; storageBucket?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a StorageBucketKey resource. * The set of arguments for constructing a StorageBucketKey resource.
*/ */
export interface StorageBucketKeyArgs { export interface StorageBucketKeyArgs {
/** /**
* *Optional* - Description of the storage bucket key. * *Optional* - Description of the storage bucket key.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the storage bucket key. * **Required** - Name of the storage bucket key.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* **Required** - Name of storage pool to host the storage bucket key. * **Required** - Name of storage pool to host the storage bucket key.
*/ */
pool: pulumi.Input<string>; pool: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the storage bucket key will be stored. * *Optional* - Name of the project where the storage bucket key will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the role that controls the access rights for the * *Optional* - Name of the role that controls the access rights for the
* key. If not specified, the default role is used, as described in the [official documentation](https://linuxcontainers.org/incus/docs/main/howto/storage_buckets/#manage-storage-bucket-keys). * key. If not specified, the default role is used, as described in the [official documentation](https://linuxcontainers.org/incus/docs/main/howto/storage_buckets/#manage-storage-bucket-keys).
*/ */
role?: pulumi.Input<string>; role?: pulumi.Input<string>;
/** /**
* **Required** - Name of the storage bucket. * **Required** - Name of the storage bucket.
*/ */
storageBucket: pulumi.Input<string>; storageBucket: pulumi.Input<string>;
} }

View File

@@ -5,176 +5,185 @@ import * as pulumi from "@pulumi/pulumi";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class StoragePool extends pulumi.CustomResource { export class StoragePool extends pulumi.CustomResource {
/** /**
* Get an existing StoragePool resource's state with the given name, ID, and optional extra * Get an existing StoragePool resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: StoragePoolState, opts?: pulumi.CustomResourceOptions): StoragePool { public static get(
return new StoragePool(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: StoragePoolState,
opts?: pulumi.CustomResourceOptions,
): StoragePool {
return new StoragePool(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/storagePool:StoragePool'; public static readonly __pulumiType = "incus:index/storagePool:StoragePool";
/** /**
* Returns true if the given object is an instance of StoragePool. This is designed to work even * Returns true if the given object is an instance of StoragePool. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is StoragePool { public static isInstance(obj: any): obj is StoragePool {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === StoragePool.__pulumiType; return obj["__pulumiType"] === StoragePool.__pulumiType;
} }
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/). * [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
* Config settings vary from driver to driver. * Config settings vary from driver to driver.
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Description of the storage pool. `description` is mutual exclusive with `target`. The `description` can only be set on cluster level (with `target` not set) or on non-clustered setups. * *Optional* - Description of the storage pool. `description` is mutual exclusive with `target`. The `description` can only be set on cluster level (with `target` not set) or on non-clustered setups.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* **Required** - Storage Pool driver. Must be one of `dir`, `zfs`, `lvm`, `lvmcluster`, `btrfs`, `ceph`, `cephfs`, `cephobject`, `linstor` or `truenas`. * **Required** - Storage Pool driver. Must be one of `dir`, `zfs`, `lvm`, `lvmcluster`, `btrfs`, `ceph`, `cephfs`, `cephobject`, `linstor` or `truenas`.
*/ */
declare public readonly driver: pulumi.Output<string>; declare public readonly driver: pulumi.Output<string>;
/** /**
* **Required** - Name of the storage pool. * **Required** - Name of the storage pool.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* *Optional* - Name of the project where the storage pool will be stored. * *Optional* - Name of the project where the storage pool will be stored.
*/ */
declare public readonly project: pulumi.Output<string>; declare public readonly project: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
declare public readonly target: pulumi.Output<string | undefined>; declare public readonly target: pulumi.Output<string | undefined>;
/** /**
* Create a StoragePool resource with the given unique name, arguments, and options. * Create a StoragePool resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: StoragePoolArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: StoragePoolArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: StoragePoolArgs | StoragePoolState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: StoragePoolArgs | StoragePoolState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as StoragePoolState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["description"] = state?.description; opts = opts || {};
resourceInputs["driver"] = state?.driver; if (opts.id) {
resourceInputs["name"] = state?.name; const state = argsOrState as StoragePoolState | undefined;
resourceInputs["project"] = state?.project; resourceInputs["config"] = state?.config;
resourceInputs["remote"] = state?.remote; resourceInputs["description"] = state?.description;
resourceInputs["target"] = state?.target; resourceInputs["driver"] = state?.driver;
} else { resourceInputs["name"] = state?.name;
const args = argsOrState as StoragePoolArgs | undefined; resourceInputs["project"] = state?.project;
if (args?.driver === undefined && !opts.urn) { resourceInputs["remote"] = state?.remote;
throw new Error("Missing required property 'driver'"); resourceInputs["target"] = state?.target;
} } else {
if (args?.name === undefined && !opts.urn) { const args = argsOrState as StoragePoolArgs | undefined;
throw new Error("Missing required property 'name'"); if (args?.driver === undefined && !opts.urn) {
} throw new Error("Missing required property 'driver'");
resourceInputs["config"] = args?.config; }
resourceInputs["description"] = args?.description; if (args?.name === undefined && !opts.urn) {
resourceInputs["driver"] = args?.driver; throw new Error("Missing required property 'name'");
resourceInputs["name"] = args?.name; }
resourceInputs["project"] = (args?.project) ?? "default"; resourceInputs["config"] = args?.config;
resourceInputs["remote"] = args?.remote; resourceInputs["description"] = args?.description;
resourceInputs["target"] = args?.target; resourceInputs["driver"] = args?.driver;
} resourceInputs["name"] = args?.name;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["project"] = args?.project ?? "default";
super(StoragePool.__pulumiType, name, resourceInputs, opts); resourceInputs["remote"] = args?.remote;
} resourceInputs["target"] = args?.target;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(StoragePool.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering StoragePool resources. * Input properties used for looking up and filtering StoragePool resources.
*/ */
export interface StoragePoolState { export interface StoragePoolState {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/). * [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
* Config settings vary from driver to driver. * Config settings vary from driver to driver.
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the storage pool. `description` is mutual exclusive with `target`. The `description` can only be set on cluster level (with `target` not set) or on non-clustered setups. * *Optional* - Description of the storage pool. `description` is mutual exclusive with `target`. The `description` can only be set on cluster level (with `target` not set) or on non-clustered setups.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Storage Pool driver. Must be one of `dir`, `zfs`, `lvm`, `lvmcluster`, `btrfs`, `ceph`, `cephfs`, `cephobject`, `linstor` or `truenas`. * **Required** - Storage Pool driver. Must be one of `dir`, `zfs`, `lvm`, `lvmcluster`, `btrfs`, `ceph`, `cephfs`, `cephobject`, `linstor` or `truenas`.
*/ */
driver?: pulumi.Input<string>; driver?: pulumi.Input<string>;
/** /**
* **Required** - Name of the storage pool. * **Required** - Name of the storage pool.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the storage pool will be stored. * *Optional* - Name of the project where the storage pool will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a StoragePool resource. * The set of arguments for constructing a StoragePool resource.
*/ */
export interface StoragePoolArgs { export interface StoragePoolArgs {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/). * [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
* Config settings vary from driver to driver. * Config settings vary from driver to driver.
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Description of the storage pool. `description` is mutual exclusive with `target`. The `description` can only be set on cluster level (with `target` not set) or on non-clustered setups. * *Optional* - Description of the storage pool. `description` is mutual exclusive with `target`. The `description` can only be set on cluster level (with `target` not set) or on non-clustered setups.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Storage Pool driver. Must be one of `dir`, `zfs`, `lvm`, `lvmcluster`, `btrfs`, `ceph`, `cephfs`, `cephobject`, `linstor` or `truenas`. * **Required** - Storage Pool driver. Must be one of `dir`, `zfs`, `lvm`, `lvmcluster`, `btrfs`, `ceph`, `cephfs`, `cephobject`, `linstor` or `truenas`.
*/ */
driver: pulumi.Input<string>; driver: pulumi.Input<string>;
/** /**
* **Required** - Name of the storage pool. * **Required** - Name of the storage pool.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the storage pool will be stored. * *Optional* - Name of the project where the storage pool will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
} }

View File

@@ -7,245 +7,256 @@ import * as outputs from "./types/output";
import * as utilities from "./utilities"; import * as utilities from "./utilities";
export class StorageVolume extends pulumi.CustomResource { export class StorageVolume extends pulumi.CustomResource {
/** /**
* Get an existing StorageVolume resource's state with the given name, ID, and optional extra * Get an existing StorageVolume resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup. * properties used to qualify the lookup.
* *
* @param name The _unique_ name of the resulting resource. * @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup. * @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup. * @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource. * @param opts Optional settings to control the behavior of the CustomResource.
*/ */
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: StorageVolumeState, opts?: pulumi.CustomResourceOptions): StorageVolume { public static get(
return new StorageVolume(name, <any>state, { ...opts, id: id }); name: string,
} id: pulumi.Input<pulumi.ID>,
state?: StorageVolumeState,
opts?: pulumi.CustomResourceOptions,
): StorageVolume {
return new StorageVolume(name, <any>state, { ...opts, id: id });
}
/** @internal */ /** @internal */
public static readonly __pulumiType = 'incus:index/storageVolume:StorageVolume'; public static readonly __pulumiType = "incus:index/storageVolume:StorageVolume";
/** /**
* Returns true if the given object is an instance of StorageVolume. This is designed to work even * Returns true if the given object is an instance of StorageVolume. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process. * when multiple copies of the Pulumi SDK have been loaded into the same process.
*/ */
public static isInstance(obj: any): obj is StorageVolume { public static isInstance(obj: any): obj is StorageVolume {
if (obj === undefined || obj === null) { if (obj === undefined || obj === null) {
return false; return false;
} }
return obj['__pulumiType'] === StorageVolume.__pulumiType; return obj["__pulumiType"] === StorageVolume.__pulumiType;
} }
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/). * [volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
* Config settings vary depending on the Storage Pool used. * Config settings vary depending on the Storage Pool used.
*/ */
declare public readonly config: pulumi.Output<{[key: string]: string}>; declare public readonly config: pulumi.Output<{ [key: string]: string }>;
/** /**
* *Optional* - Volume content type (`filesystem` or `block`) * *Optional* - Volume content type (`filesystem` or `block`)
*/ */
declare public readonly contentType: pulumi.Output<string>; declare public readonly contentType: pulumi.Output<string>;
/** /**
* *Optional* - Description of the volume. * *Optional* - Description of the volume.
*/ */
declare public readonly description: pulumi.Output<string>; declare public readonly description: pulumi.Output<string>;
/** /**
* Name of the node where volume was created. It could be useful with Incus in cluster mode. * Name of the node where volume was created. It could be useful with Incus in cluster mode.
*/ */
declare public /*out*/ readonly location: pulumi.Output<string>; declare public readonly /*out*/ location: pulumi.Output<string>;
/** /**
* **Required** - Name of the storage volume. * **Required** - Name of the storage volume.
*/ */
declare public readonly name: pulumi.Output<string>; declare public readonly name: pulumi.Output<string>;
/** /**
* **Required** - Name of storage pool to host the volume. * **Required** - Name of storage pool to host the volume.
*/ */
declare public readonly pool: pulumi.Output<string>; declare public readonly pool: pulumi.Output<string>;
/** /**
* *Optional* - Name of the project where the volume will be stored. * *Optional* - Name of the project where the volume will be stored.
*/ */
declare public readonly project: pulumi.Output<string>; declare public readonly project: pulumi.Output<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
declare public readonly remote: pulumi.Output<string | undefined>; declare public readonly remote: pulumi.Output<string | undefined>;
/** /**
* *Optional* - Path to a backup file from which the volume will be created. * *Optional* - Path to a backup file from which the volume will be created.
*/ */
declare public readonly sourceFile: pulumi.Output<string | undefined>; declare public readonly sourceFile: pulumi.Output<string | undefined>;
/** /**
* *Optional* - The source volume from which the volume will be created. See reference below. * *Optional* - The source volume from which the volume will be created. See reference below.
*/ */
declare public readonly sourceVolume: pulumi.Output<outputs.StorageVolumeSourceVolume | undefined>; declare public readonly sourceVolume: pulumi.Output<
/** outputs.StorageVolumeSourceVolume | undefined
* *Optional* - Specify a target node in a cluster. >;
*/ /**
declare public readonly target: pulumi.Output<string>; * *Optional* - Specify a target node in a cluster.
/** */
* *Optional* - The "type" of volume. The default value is `custom`, declare public readonly target: pulumi.Output<string>;
* which is the type to use for storage volumes attached to instances. /**
*/ * *Optional* - The "type" of volume. The default value is `custom`,
declare public readonly type: pulumi.Output<string>; * which is the type to use for storage volumes attached to instances.
*/
declare public readonly type: pulumi.Output<string>;
/** /**
* Create a StorageVolume resource with the given unique name, arguments, and options. * Create a StorageVolume resource with the given unique name, arguments, and options.
* *
* @param name The _unique_ name of the resource. * @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties. * @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior. * @param opts A bag of options that control this resource's behavior.
*/ */
constructor(name: string, args: StorageVolumeArgs, opts?: pulumi.CustomResourceOptions) constructor(name: string, args: StorageVolumeArgs, opts?: pulumi.CustomResourceOptions);
constructor(name: string, argsOrState?: StorageVolumeArgs | StorageVolumeState, opts?: pulumi.CustomResourceOptions) { constructor(
let resourceInputs: pulumi.Inputs = {}; name: string,
opts = opts || {}; argsOrState?: StorageVolumeArgs | StorageVolumeState,
if (opts.id) { opts?: pulumi.CustomResourceOptions,
const state = argsOrState as StorageVolumeState | undefined; ) {
resourceInputs["config"] = state?.config; let resourceInputs: pulumi.Inputs = {};
resourceInputs["contentType"] = state?.contentType; opts = opts || {};
resourceInputs["description"] = state?.description; if (opts.id) {
resourceInputs["location"] = state?.location; const state = argsOrState as StorageVolumeState | undefined;
resourceInputs["name"] = state?.name; resourceInputs["config"] = state?.config;
resourceInputs["pool"] = state?.pool; resourceInputs["contentType"] = state?.contentType;
resourceInputs["project"] = state?.project; resourceInputs["description"] = state?.description;
resourceInputs["remote"] = state?.remote; resourceInputs["location"] = state?.location;
resourceInputs["sourceFile"] = state?.sourceFile; resourceInputs["name"] = state?.name;
resourceInputs["sourceVolume"] = state?.sourceVolume; resourceInputs["pool"] = state?.pool;
resourceInputs["target"] = state?.target; resourceInputs["project"] = state?.project;
resourceInputs["type"] = state?.type; resourceInputs["remote"] = state?.remote;
} else { resourceInputs["sourceFile"] = state?.sourceFile;
const args = argsOrState as StorageVolumeArgs | undefined; resourceInputs["sourceVolume"] = state?.sourceVolume;
if (args?.name === undefined && !opts.urn) { resourceInputs["target"] = state?.target;
throw new Error("Missing required property 'name'"); resourceInputs["type"] = state?.type;
} } else {
if (args?.pool === undefined && !opts.urn) { const args = argsOrState as StorageVolumeArgs | undefined;
throw new Error("Missing required property 'pool'"); if (args?.name === undefined && !opts.urn) {
} throw new Error("Missing required property 'name'");
resourceInputs["config"] = args?.config; }
resourceInputs["contentType"] = args?.contentType; if (args?.pool === undefined && !opts.urn) {
resourceInputs["description"] = args?.description; throw new Error("Missing required property 'pool'");
resourceInputs["name"] = args?.name; }
resourceInputs["pool"] = args?.pool; resourceInputs["config"] = args?.config;
resourceInputs["project"] = (args?.project) ?? "default"; resourceInputs["contentType"] = args?.contentType;
resourceInputs["remote"] = args?.remote; resourceInputs["description"] = args?.description;
resourceInputs["sourceFile"] = args?.sourceFile; resourceInputs["name"] = args?.name;
resourceInputs["sourceVolume"] = args?.sourceVolume; resourceInputs["pool"] = args?.pool;
resourceInputs["target"] = args?.target; resourceInputs["project"] = args?.project ?? "default";
resourceInputs["type"] = args?.type; resourceInputs["remote"] = args?.remote;
resourceInputs["location"] = undefined /*out*/; resourceInputs["sourceFile"] = args?.sourceFile;
} resourceInputs["sourceVolume"] = args?.sourceVolume;
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); resourceInputs["target"] = args?.target;
super(StorageVolume.__pulumiType, name, resourceInputs, opts); resourceInputs["type"] = args?.type;
} resourceInputs["location"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(StorageVolume.__pulumiType, name, resourceInputs, opts);
}
} }
/** /**
* Input properties used for looking up and filtering StorageVolume resources. * Input properties used for looking up and filtering StorageVolume resources.
*/ */
export interface StorageVolumeState { export interface StorageVolumeState {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/). * [volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
* Config settings vary depending on the Storage Pool used. * Config settings vary depending on the Storage Pool used.
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Volume content type (`filesystem` or `block`) * *Optional* - Volume content type (`filesystem` or `block`)
*/ */
contentType?: pulumi.Input<string>; contentType?: pulumi.Input<string>;
/** /**
* *Optional* - Description of the volume. * *Optional* - Description of the volume.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* Name of the node where volume was created. It could be useful with Incus in cluster mode. * Name of the node where volume was created. It could be useful with Incus in cluster mode.
*/ */
location?: pulumi.Input<string>; location?: pulumi.Input<string>;
/** /**
* **Required** - Name of the storage volume. * **Required** - Name of the storage volume.
*/ */
name?: pulumi.Input<string>; name?: pulumi.Input<string>;
/** /**
* **Required** - Name of storage pool to host the volume. * **Required** - Name of storage pool to host the volume.
*/ */
pool?: pulumi.Input<string>; pool?: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the volume will be stored. * *Optional* - Name of the project where the volume will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Path to a backup file from which the volume will be created. * *Optional* - Path to a backup file from which the volume will be created.
*/ */
sourceFile?: pulumi.Input<string>; sourceFile?: pulumi.Input<string>;
/** /**
* *Optional* - The source volume from which the volume will be created. See reference below. * *Optional* - The source volume from which the volume will be created. See reference below.
*/ */
sourceVolume?: pulumi.Input<inputs.StorageVolumeSourceVolume>; sourceVolume?: pulumi.Input<inputs.StorageVolumeSourceVolume>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
/** /**
* *Optional* - The "type" of volume. The default value is `custom`, * *Optional* - The "type" of volume. The default value is `custom`,
* which is the type to use for storage volumes attached to instances. * which is the type to use for storage volumes attached to instances.
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }
/** /**
* The set of arguments for constructing a StorageVolume resource. * The set of arguments for constructing a StorageVolume resource.
*/ */
export interface StorageVolumeArgs { export interface StorageVolumeArgs {
/** /**
* *Optional* - Map of key/value pairs of * *Optional* - Map of key/value pairs of
* [volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/). * [volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
* Config settings vary depending on the Storage Pool used. * Config settings vary depending on the Storage Pool used.
*/ */
config?: pulumi.Input<{[key: string]: pulumi.Input<string>}>; config?: pulumi.Input<{ [key: string]: pulumi.Input<string> }>;
/** /**
* *Optional* - Volume content type (`filesystem` or `block`) * *Optional* - Volume content type (`filesystem` or `block`)
*/ */
contentType?: pulumi.Input<string>; contentType?: pulumi.Input<string>;
/** /**
* *Optional* - Description of the volume. * *Optional* - Description of the volume.
*/ */
description?: pulumi.Input<string>; description?: pulumi.Input<string>;
/** /**
* **Required** - Name of the storage volume. * **Required** - Name of the storage volume.
*/ */
name: pulumi.Input<string>; name: pulumi.Input<string>;
/** /**
* **Required** - Name of storage pool to host the volume. * **Required** - Name of storage pool to host the volume.
*/ */
pool: pulumi.Input<string>; pool: pulumi.Input<string>;
/** /**
* *Optional* - Name of the project where the volume will be stored. * *Optional* - Name of the project where the volume will be stored.
*/ */
project?: pulumi.Input<string>; project?: pulumi.Input<string>;
/** /**
* *Optional* - The remote in which the resource will be created. If * *Optional* - The remote in which the resource will be created. If
* not provided, the provider's default remote will be used. * not provided, the provider's default remote will be used.
*/ */
remote?: pulumi.Input<string>; remote?: pulumi.Input<string>;
/** /**
* *Optional* - Path to a backup file from which the volume will be created. * *Optional* - Path to a backup file from which the volume will be created.
*/ */
sourceFile?: pulumi.Input<string>; sourceFile?: pulumi.Input<string>;
/** /**
* *Optional* - The source volume from which the volume will be created. See reference below. * *Optional* - The source volume from which the volume will be created. See reference below.
*/ */
sourceVolume?: pulumi.Input<inputs.StorageVolumeSourceVolume>; sourceVolume?: pulumi.Input<inputs.StorageVolumeSourceVolume>;
/** /**
* *Optional* - Specify a target node in a cluster. * *Optional* - Specify a target node in a cluster.
*/ */
target?: pulumi.Input<string>; target?: pulumi.Input<string>;
/** /**
* *Optional* - The "type" of volume. The default value is `custom`, * *Optional* - The "type" of volume. The default value is `custom`,
* which is the type to use for storage volumes attached to instances. * which is the type to use for storage volumes attached to instances.
*/ */
type?: pulumi.Input<string>; type?: pulumi.Input<string>;
} }

122
sdk/nodejs/tsconfig.json generated
View File

@@ -1,63 +1,63 @@
{ {
"compilerOptions": { "compilerOptions": {
"outDir": "bin", "outDir": "bin",
"target": "ES2020", "target": "ES2020",
"module": "commonjs", "module": "commonjs",
"moduleResolution": "node", "moduleResolution": "node",
"declaration": true, "declaration": true,
"sourceMap": true, "sourceMap": true,
"stripInternal": true, "stripInternal": true,
"experimentalDecorators": true, "experimentalDecorators": true,
"noFallthroughCasesInSwitch": true, "noFallthroughCasesInSwitch": true,
"forceConsistentCasingInFileNames": true, "forceConsistentCasingInFileNames": true,
"strict": true "strict": true,
}, },
"files": [ "files": [
"certificate.ts", "certificate.ts",
"clusterGroup.ts", "clusterGroup.ts",
"clusterGroupMember.ts", "clusterGroupMember.ts",
"config/index.ts", "config/index.ts",
"config/vars.ts", "config/vars.ts",
"getCluster.ts", "getCluster.ts",
"getImage.ts", "getImage.ts",
"getInstance.ts", "getInstance.ts",
"getNetwork.ts", "getNetwork.ts",
"getNetworkAcl.ts", "getNetworkAcl.ts",
"getNetworkAddressSet.ts", "getNetworkAddressSet.ts",
"getNetworkForward.ts", "getNetworkForward.ts",
"getNetworkIntegration.ts", "getNetworkIntegration.ts",
"getNetworkLoadBalancer.ts", "getNetworkLoadBalancer.ts",
"getNetworkPeer.ts", "getNetworkPeer.ts",
"getNetworkZone.ts", "getNetworkZone.ts",
"getProfile.ts", "getProfile.ts",
"getProject.ts", "getProject.ts",
"getStorageBucket.ts", "getStorageBucket.ts",
"getStoragePool.ts", "getStoragePool.ts",
"getStorageVolume.ts", "getStorageVolume.ts",
"image.ts", "image.ts",
"index.ts", "index.ts",
"instance.ts", "instance.ts",
"instanceSnapshot.ts", "instanceSnapshot.ts",
"network.ts", "network.ts",
"networkAcl.ts", "networkAcl.ts",
"networkAddressSet.ts", "networkAddressSet.ts",
"networkForward.ts", "networkForward.ts",
"networkIntegration.ts", "networkIntegration.ts",
"networkLoadBalancer.ts", "networkLoadBalancer.ts",
"networkPeer.ts", "networkPeer.ts",
"networkZone.ts", "networkZone.ts",
"networkZoneRecord.ts", "networkZoneRecord.ts",
"profile.ts", "profile.ts",
"project.ts", "project.ts",
"provider.ts", "provider.ts",
"server.ts", "server.ts",
"storageBucket.ts", "storageBucket.ts",
"storageBucketKey.ts", "storageBucketKey.ts",
"storagePool.ts", "storagePool.ts",
"storageVolume.ts", "storageVolume.ts",
"types/index.ts", "types/index.ts",
"types/input.ts", "types/input.ts",
"types/output.ts", "types/output.ts",
"utilities.ts" "utilities.ts",
] ],
} }

View File

@@ -7,7 +7,4 @@ import * as utilities from "../utilities";
import * as input from "./input"; import * as input from "./input";
import * as output from "./output"; import * as output from "./output";
export { export { input, output };
input,
output,
};

1273
sdk/nodejs/types/input.ts generated

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

138
sdk/nodejs/utilities.ts generated
View File

@@ -1,96 +1,102 @@
// *** WARNING: this file was generated by pulumi-language-nodejs. *** // *** WARNING: this file was generated by pulumi-language-nodejs. ***
// *** Do not edit by hand unless you're certain you know what you are doing! *** // *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as runtime from "@pulumi/pulumi/runtime"; import * as runtime from "@pulumi/pulumi/runtime";
import * as pulumi from "@pulumi/pulumi"; import * as pulumi from "@pulumi/pulumi";
export function getEnv(...vars: string[]): string | undefined { export function getEnv(...vars: string[]): string | undefined {
for (const v of vars) { for (const v of vars) {
const value = process.env[v]; const value = process.env[v];
if (value) { if (value) {
return value; return value;
} }
} }
return undefined; return undefined;
} }
export function getEnvBoolean(...vars: string[]): boolean | undefined { export function getEnvBoolean(...vars: string[]): boolean | undefined {
const s = getEnv(...vars); const s = getEnv(...vars);
if (s !== undefined) { if (s !== undefined) {
// NOTE: these values are taken from https://golang.org/src/strconv/atob.go?s=351:391#L1, which is what // NOTE: these values are taken from https://golang.org/src/strconv/atob.go?s=351:391#L1, which is what
// Terraform uses internally when parsing boolean values. // Terraform uses internally when parsing boolean values.
if (["1", "t", "T", "true", "TRUE", "True"].find(v => v === s) !== undefined) { if (["1", "t", "T", "true", "TRUE", "True"].find((v) => v === s) !== undefined) {
return true; return true;
} }
if (["0", "f", "F", "false", "FALSE", "False"].find(v => v === s) !== undefined) { if (["0", "f", "F", "false", "FALSE", "False"].find((v) => v === s) !== undefined) {
return false; return false;
} }
} }
return undefined; return undefined;
} }
export function getEnvNumber(...vars: string[]): number | undefined { export function getEnvNumber(...vars: string[]): number | undefined {
const s = getEnv(...vars); const s = getEnv(...vars);
if (s !== undefined) { if (s !== undefined) {
const f = parseFloat(s); const f = parseFloat(s);
if (!isNaN(f)) { if (!isNaN(f)) {
return f; return f;
} }
} }
return undefined; return undefined;
} }
export function getVersion(): string { export function getVersion(): string {
let version = require('./package.json').version; let version = require("./package.json").version;
// Node allows for the version to be prefixed by a "v", while semver doesn't. // Node allows for the version to be prefixed by a "v", while semver doesn't.
// If there is a v, strip it off. // If there is a v, strip it off.
if (version.indexOf('v') === 0) { if (version.indexOf("v") === 0) {
version = version.slice(1); version = version.slice(1);
} }
return version; return version;
} }
/** @internal */ /** @internal */
export function resourceOptsDefaults(): any { export function resourceOptsDefaults(): any {
return { version: getVersion(), pluginDownloadURL: "https://git.kalinow.ski/api/packages/kiterun/generic/pulumi-incus/${VERSION}/" }; return {
version: getVersion(),
pluginDownloadURL:
"https://git.kalinow.ski/api/packages/kiterun/generic/pulumi-incus/${VERSION}/",
};
} }
/** @internal */ /** @internal */
export function lazyLoad(exports: any, props: string[], loadModule: any) { export function lazyLoad(exports: any, props: string[], loadModule: any) {
for (let property of props) { for (let property of props) {
Object.defineProperty(exports, property, { Object.defineProperty(exports, property, {
enumerable: true, enumerable: true,
get: function() { get: function () {
return loadModule()[property]; return loadModule()[property];
}, },
}); });
} }
} }
/** @internal */ /** @internal */
export async function callAsync<T>( export async function callAsync<T>(
tok: string, tok: string,
props: pulumi.Inputs, props: pulumi.Inputs,
res?: pulumi.Resource, res?: pulumi.Resource,
opts?: {property?: string}, opts?: { property?: string },
): Promise<T> { ): Promise<T> {
const o: any = runtime.call<T>(tok, props, res); const o: any = runtime.call<T>(tok, props, res);
const value = await o.promise(true /*withUnknowns*/); const value = await o.promise(true /*withUnknowns*/);
const isKnown = await o.isKnown; const isKnown = await o.isKnown;
const isSecret = await o.isSecret; const isSecret = await o.isSecret;
const problem: string|undefined = const problem: string | undefined = !isKnown
!isKnown ? "an unknown value" ? "an unknown value"
: isSecret ? "a secret value" : isSecret
: undefined; ? "a secret value"
// Ingoring o.resources silently. They are typically non-empty, r.f() calls include r as a dependency. : undefined;
if (problem) { // Ingoring o.resources silently. They are typically non-empty, r.f() calls include r as a dependency.
throw new Error(`Plain resource method "${tok}" incorrectly returned ${problem}. ` + if (problem) {
"This is an error in the provider, please report this to the provider developer."); throw new Error(
} `Plain resource method "${tok}" incorrectly returned ${problem}. ` +
// Extract a single property if requested. "This is an error in the provider, please report this to the provider developer.",
if (opts && opts.property) { );
return value[opts.property]; }
} // Extract a single property if requested.
return value; if (opts && opts.property) {
return value[opts.property];
}
return value;
} }