This commit is contained in:
2025-12-08 10:47:09 -05:00
parent 136b88ccdc
commit c4445aa92f
109 changed files with 9007 additions and 1219 deletions

View File

@@ -1,4 +1,4 @@
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as utilities from "../utilities";

View File

@@ -1,10 +1,346 @@
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
export interface GetInstanceDevice {
/**
* **Required** - Name of the instance.
*/
name?: string;
/**
* Map of key/value pairs of
* [device properties](https://linuxcontainers.org/incus/docs/main/reference/devices/).
*/
properties?: {[key: string]: string};
/**
* Type of the device Must be one of none, disk, nic,
* unix-char, unix-block, usb, gpu, infiniband, proxy, unix-hotplug, tpm, pci.
*/
type?: string;
}
export interface GetInstanceDeviceArgs {
/**
* **Required** - Name of the instance.
*/
name?: pulumi.Input<string>;
/**
* Map of key/value pairs of
* [device properties](https://linuxcontainers.org/incus/docs/main/reference/devices/).
*/
properties?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;
/**
* Type of the device Must be one of none, disk, nic,
* unix-char, unix-block, usb, gpu, infiniband, proxy, unix-hotplug, tpm, pci.
*/
type?: pulumi.Input<string>;
}
export interface GetNetworkAclEgress {
/**
* Action to perform on rule match.
*/
action: string;
/**
* Description of the rule.
*/
description: string;
/**
* Destination address.
*/
destination: string;
/**
* Destination port.
*/
destinationPort: string;
/**
* ICMP message code (for ICMP protocol).
*/
icmpCode: string;
/**
* Type of ICMP message.
*/
icmpType: string;
/**
* Protocol (e.g., tcp, udp).
*/
protocol: string;
/**
* Source address.
*/
source: string;
/**
* Source port.
*/
sourcePort: string;
/**
* State of the rule.
*/
state: string;
}
export interface GetNetworkAclEgressArgs {
/**
* Action to perform on rule match.
*/
action: pulumi.Input<string>;
/**
* Description of the rule.
*/
description: pulumi.Input<string>;
/**
* Destination address.
*/
destination: pulumi.Input<string>;
/**
* Destination port.
*/
destinationPort: pulumi.Input<string>;
/**
* ICMP message code (for ICMP protocol).
*/
icmpCode: pulumi.Input<string>;
/**
* Type of ICMP message.
*/
icmpType: pulumi.Input<string>;
/**
* Protocol (e.g., tcp, udp).
*/
protocol: pulumi.Input<string>;
/**
* Source address.
*/
source: pulumi.Input<string>;
/**
* Source port.
*/
sourcePort: pulumi.Input<string>;
/**
* State of the rule.
*/
state: pulumi.Input<string>;
}
export interface GetNetworkAclIngress {
/**
* Action to perform on rule match.
*/
action: string;
/**
* Description of the rule.
*/
description: string;
/**
* Destination address.
*/
destination: string;
/**
* Destination port.
*/
destinationPort: string;
/**
* ICMP message code (for ICMP protocol).
*/
icmpCode: string;
/**
* Type of ICMP message.
*/
icmpType: string;
/**
* Protocol (e.g., tcp, udp).
*/
protocol: string;
/**
* Source address.
*/
source: string;
/**
* Source port.
*/
sourcePort: string;
/**
* State of the rule.
*/
state: string;
}
export interface GetNetworkAclIngressArgs {
/**
* Action to perform on rule match.
*/
action: pulumi.Input<string>;
/**
* Description of the rule.
*/
description: pulumi.Input<string>;
/**
* Destination address.
*/
destination: pulumi.Input<string>;
/**
* Destination port.
*/
destinationPort: pulumi.Input<string>;
/**
* ICMP message code (for ICMP protocol).
*/
icmpCode: pulumi.Input<string>;
/**
* Type of ICMP message.
*/
icmpType: pulumi.Input<string>;
/**
* Protocol (e.g., tcp, udp).
*/
protocol: pulumi.Input<string>;
/**
* Source address.
*/
source: pulumi.Input<string>;
/**
* Source port.
*/
sourcePort: pulumi.Input<string>;
/**
* State of the rule.
*/
state: pulumi.Input<string>;
}
export interface GetNetworkForwardPort {
/**
* Description of the forward port.
*/
description: string;
/**
* ListenPort(s) to forward (comma delimited ranges).
*/
listenPort: string;
/**
* Protocol for port forward (either tcp or udp).
*/
protocol: string;
/**
* SNAT controls whether to apply a matching SNAT rule to new outgoing traffic from the target.
*/
snat: boolean;
/**
* Target address to forward ListenPorts to.
*/
targetAddress: string;
/**
* Target port(s) to forward ListenPorts to (allows for many-to-one).
*/
targetPort: string;
}
export interface GetNetworkForwardPortArgs {
/**
* Description of the forward port.
*/
description: pulumi.Input<string>;
/**
* ListenPort(s) to forward (comma delimited ranges).
*/
listenPort: pulumi.Input<string>;
/**
* Protocol for port forward (either tcp or udp).
*/
protocol: pulumi.Input<string>;
/**
* SNAT controls whether to apply a matching SNAT rule to new outgoing traffic from the target.
*/
snat: pulumi.Input<boolean>;
/**
* Target address to forward ListenPorts to.
*/
targetAddress: pulumi.Input<string>;
/**
* Target port(s) to forward ListenPorts to (allows for many-to-one).
*/
targetPort: pulumi.Input<string>;
}
export interface GetNetworkLoadBalancerBackend {
/**
* Description of the load balancer port.
*/
description: string;
/**
* Name of the load balancer backend.
*/
name: string;
/**
* TargetAddress to forward ListenPorts to.
*/
targetAddress: string;
/**
* TargetPort(s) for the forward ListenPorts to (allows for many-to one).
*/
targetPort: string;
}
export interface GetNetworkLoadBalancerBackendArgs {
/**
* Description of the load balancer port.
*/
description: pulumi.Input<string>;
/**
* Name of the load balancer backend.
*/
name: pulumi.Input<string>;
/**
* TargetAddress to forward ListenPorts to.
*/
targetAddress: pulumi.Input<string>;
/**
* TargetPort(s) for the forward ListenPorts to (allows for many-to one).
*/
targetPort: pulumi.Input<string>;
}
export interface GetNetworkLoadBalancerPort {
/**
* Description of the load balancer port.
*/
description: string;
/**
* ListenPort(s) for the load balancer (comma delimited ranges).
*/
listenPort: string;
/**
* Protocol for load balancer (either tcp or udp).
*/
protocol: string;
/**
* TargetBackend backend names to load balance ListenPorts to.
*/
targetBackends: string[];
}
export interface GetNetworkLoadBalancerPortArgs {
/**
* Description of the load balancer port.
*/
description: pulumi.Input<string>;
/**
* ListenPort(s) for the load balancer (comma delimited ranges).
*/
listenPort: pulumi.Input<string>;
/**
* Protocol for load balancer (either tcp or udp).
*/
protocol: pulumi.Input<string>;
/**
* TargetBackend backend names to load balance ListenPorts to.
*/
targetBackends: pulumi.Input<pulumi.Input<string>[]>;
}
export interface GetProfileDevice {
/**
* **Required** - Name of the profile.
@@ -39,6 +375,17 @@ export interface GetProfileDeviceArgs {
type?: pulumi.Input<string>;
}
export interface ImageAlias {
/**
* *Optional* - A description for the alias.
*/
description?: pulumi.Input<string>;
/**
* **Required** - The name of the alias.
*/
name: pulumi.Input<string>;
}
export interface ImageSourceFile {
/**
* **Required** - Either the path of an [unified image](https://linuxcontainers.org/incus/docs/main/reference/image_format/#image-format-unified)
@@ -344,27 +691,27 @@ export interface ProfileDevice {
export interface ProviderRemote {
/**
* The FQDN or IP where the Incus daemon can be contacted. (default = "" (read from lxc config))
* The URL of the Incus host. The default will be the path to the local unix socket, or leaving it as an empty string will use the default socket path.
*/
address?: pulumi.Input<string>;
/**
* Set this remote as default.
* Server authentication type, tls or oidc. ( Only for the `incus` protocol )
*/
default?: pulumi.Input<boolean>;
authenticationType?: pulumi.Input<string>;
/**
* Name of the Incus remote. Required when incusScheme set to https, to enable locating server certificate.
* Name of the Incus remote.
*/
name: pulumi.Input<string>;
/**
* Port Incus Daemon API is listening on. (default = 8443)
* Server protocol ( incus, oci or simplestreams )
*/
port?: pulumi.Input<string>;
protocol?: pulumi.Input<string>;
/**
* Unix (unix) or HTTPs (https). (default = unix)
* Public image server
*/
scheme?: pulumi.Input<string>;
public?: pulumi.Input<boolean>;
/**
* The trust token for the remote.
* The trust token used for initial authentication with the Incus remote.
*/
token?: pulumi.Input<string>;
}

View File

@@ -1,10 +1,212 @@
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
export interface GetClusterMembers {
/**
* Address of the cluster member, that is used for cluster communication.
*/
address: string;
/**
* Architecture of the cluster member (e.g. x86_64, aarch64).
* See [Architectures](https://linuxcontainers.org/incus/docs/main/architectures/)
* for all possible values.
*/
architecture: string;
/**
* Description of the cluster member.
*/
description: string;
/**
* Failure domain of the cluster member.
*/
failureDomain: string;
/**
* A list of groups the cluster member belongs to.
*/
groups: string[];
/**
* A list of roles assigned to the cluster member.
*/
roles: string[];
/**
* Status of the cluster member. Possible values are
* `Online`, `Evacuated`, `Offline`, `Blocked`.
*/
status: string;
}
export interface GetInstanceDevice {
/**
* **Required** - Name of the instance.
*/
name: string;
/**
* Map of key/value pairs of
* [device properties](https://linuxcontainers.org/incus/docs/main/reference/devices/).
*/
properties: {[key: string]: string};
/**
* Type of the device Must be one of none, disk, nic,
* unix-char, unix-block, usb, gpu, infiniband, proxy, unix-hotplug, tpm, pci.
*/
type: string;
}
export interface GetNetworkAclEgress {
/**
* Action to perform on rule match.
*/
action: string;
/**
* Description of the rule.
*/
description: string;
/**
* Destination address.
*/
destination: string;
/**
* Destination port.
*/
destinationPort: string;
/**
* ICMP message code (for ICMP protocol).
*/
icmpCode: string;
/**
* Type of ICMP message.
*/
icmpType: string;
/**
* Protocol (e.g., tcp, udp).
*/
protocol: string;
/**
* Source address.
*/
source: string;
/**
* Source port.
*/
sourcePort: string;
/**
* State of the rule.
*/
state: string;
}
export interface GetNetworkAclIngress {
/**
* Action to perform on rule match.
*/
action: string;
/**
* Description of the rule.
*/
description: string;
/**
* Destination address.
*/
destination: string;
/**
* Destination port.
*/
destinationPort: string;
/**
* ICMP message code (for ICMP protocol).
*/
icmpCode: string;
/**
* Type of ICMP message.
*/
icmpType: string;
/**
* Protocol (e.g., tcp, udp).
*/
protocol: string;
/**
* Source address.
*/
source: string;
/**
* Source port.
*/
sourcePort: string;
/**
* State of the rule.
*/
state: string;
}
export interface GetNetworkForwardPort {
/**
* Description of the forward port.
*/
description: string;
/**
* ListenPort(s) to forward (comma delimited ranges).
*/
listenPort: string;
/**
* Protocol for port forward (either tcp or udp).
*/
protocol: string;
/**
* SNAT controls whether to apply a matching SNAT rule to new outgoing traffic from the target.
*/
snat: boolean;
/**
* Target address to forward ListenPorts to.
*/
targetAddress: string;
/**
* Target port(s) to forward ListenPorts to (allows for many-to-one).
*/
targetPort: string;
}
export interface GetNetworkLoadBalancerBackend {
/**
* Description of the load balancer port.
*/
description: string;
/**
* Name of the load balancer backend.
*/
name: string;
/**
* TargetAddress to forward ListenPorts to.
*/
targetAddress: string;
/**
* TargetPort(s) for the forward ListenPorts to (allows for many-to one).
*/
targetPort: string;
}
export interface GetNetworkLoadBalancerPort {
/**
* Description of the load balancer port.
*/
description: string;
/**
* ListenPort(s) for the load balancer (comma delimited ranges).
*/
listenPort: string;
/**
* Protocol for load balancer (either tcp or udp).
*/
protocol: string;
/**
* TargetBackend backend names to load balance ListenPorts to.
*/
targetBackends: string[];
}
export interface GetProfileDevice {
/**
* **Required** - Name of the profile.
@@ -22,6 +224,17 @@ export interface GetProfileDevice {
type: string;
}
export interface ImageAlias {
/**
* *Optional* - A description for the alias.
*/
description: string;
/**
* **Required** - The name of the alias.
*/
name: string;
}
export interface ImageSourceFile {
/**
* **Required** - Either the path of an [unified image](https://linuxcontainers.org/incus/docs/main/reference/image_format/#image-format-unified)
@@ -271,7 +484,7 @@ export interface NetworkLoadBalancerBackend {
/**
* LB backend target port
*/
targetPort: string;
targetPort?: string;
}
export interface NetworkLoadBalancerPort {
@@ -344,27 +557,27 @@ export interface StorageVolumeSourceVolume {
export namespace config {
export interface Remotes {
/**
* The FQDN or IP where the Incus daemon can be contacted. (default = "" (read from lxc config))
* The URL of the Incus host. The default will be the path to the local unix socket, or leaving it as an empty string will use the default socket path.
*/
address?: string;
/**
* Set this remote as default.
* Server authentication type, tls or oidc. ( Only for the `incus` protocol )
*/
default?: boolean;
authenticationType?: string;
/**
* Name of the Incus remote. Required when incusScheme set to https, to enable locating server certificate.
* Name of the Incus remote.
*/
name: string;
/**
* Port Incus Daemon API is listening on. (default = 8443)
* Server protocol ( incus, oci or simplestreams )
*/
port?: string;
protocol?: string;
/**
* Unix (unix) or HTTPs (https). (default = unix)
* Public image server
*/
scheme?: string;
public?: boolean;
/**
* The trust token for the remote.
* The trust token used for initial authentication with the Incus remote.
*/
token?: string;
}