wip: init go provider
This commit is contained in:
@@ -2,7 +2,7 @@ VERSION 0.8
|
||||
|
||||
# tfgen builds the tfgen binary and nodejs TypeScript SDK
|
||||
tfgen:
|
||||
FROM golang:1.24.2
|
||||
FROM golang:1.25.4
|
||||
WORKDIR /go/src/git.kalinow.ski/nimbus/pulumi-incus/provider
|
||||
ENV WORKING_DIR=/go/src/git.kalinow.ski/nimbus/pulumi-incus
|
||||
# ENV PULUMI_HOME=$(WORKING_DIR)/.pulumi
|
||||
@@ -13,9 +13,9 @@ tfgen:
|
||||
ENV PULUMI_HOME=${WORKING_DIR}/.pulumi
|
||||
ENV PATH=${WORKING_DIR}/.pulumi/bin:$PATH
|
||||
RUN curl -fsSL https://get.pulumi.com | HOME=${WORKING_DIR} sh -s -- --version "$(cat .pulumi/version)"
|
||||
RUN pulumi plugin install converter terraform 1.0.16
|
||||
RUN pulumi plugin install converter terraform 1.2.4
|
||||
RUN go mod download
|
||||
ENV PROVIDER_VERSION=1.0.0-beta.1
|
||||
ENV PROVIDER_VERSION=1.0.0-beta.2
|
||||
ENV LDFLAGS_PROJ_VERSION="-X git.kalinow.ski/nimbus/pulumi-incus/provider/pkg/version.Version=${PROVIDER_VERSION}"
|
||||
ENV PULUMI_CONVERT=1
|
||||
ENV PULUMI_CONVERT_EXAMPLES_CACHE_DIR=/go/src/git.kalinow.ski/nimbus/pulumi-incus/provider/.pulumi/examples-cache
|
||||
@@ -35,7 +35,7 @@ tfgen:
|
||||
|
||||
# nodejs builds the nodejs SDK using the generated tfgen file
|
||||
nodejs:
|
||||
FROM node:23-bookworm
|
||||
FROM node:24-bookworm
|
||||
WORKDIR /root/sdk/nodejs
|
||||
RUN corepack enable pnpm
|
||||
COPY scripts/clean-package-json.js /bin
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
import * as pulumi from "@pulumi/pulumi";
|
||||
import * as incus from "@kiterun/incus";
|
||||
|
||||
const resource = new incus.Instance("instance1", {
|
||||
name: "instance1",
|
||||
image: "images:ubuntu/22.04",
|
||||
image: "images:ubuntu/24.04",
|
||||
project: "default",
|
||||
config: {
|
||||
"limits.cpu": "4",
|
||||
|
||||
@@ -1,13 +1,16 @@
|
||||
{
|
||||
"name": "basic",
|
||||
"devDependencies": {
|
||||
"@types/node": "^18.19.87"
|
||||
"@types/node": "^24.1.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@kiterun/incus": "1.0.0-beta.1",
|
||||
"@pulumi/pulumi": "^3.165.0"
|
||||
"@pulumi/pulumi": "^3.186.0"
|
||||
},
|
||||
"pnpm": {
|
||||
"overrides": {}
|
||||
"overrides": {
|
||||
"@kiterun/incus": "link:../../sdk/nodejs/bin"
|
||||
}
|
||||
},
|
||||
"packageManager": "pnpm@10.23.0+sha512.21c4e5698002ade97e4efe8b8b4a89a8de3c85a37919f957e7a0f30f38fbc5bbdd05980ffe29179b2fb6e6e691242e098d945d1601772cad0fef5fb6411e2a4b"
|
||||
}
|
||||
|
||||
@@ -1,19 +1,16 @@
|
||||
module git.kalinow.ski/nimbus/pulumi-incus/provider
|
||||
|
||||
go 1.23.7
|
||||
|
||||
toolchain go1.24.2
|
||||
go 1.25.5
|
||||
|
||||
replace github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20250221232320-8d4cfd37a3cd
|
||||
|
||||
replace github.com/lxc/terraform-provider-incus/shim => ./shim
|
||||
|
||||
require (
|
||||
github.com/lxc/terraform-provider-incus/shim v0.0.0-00010101000000-000000000000
|
||||
github.com/lxc/terraform-provider-incus/shim v1.0.0
|
||||
github.com/pulumi/pulumi-terraform-bridge/v3 v3.106.0
|
||||
github.com/pulumi/pulumi/pkg/v3 v3.160.0
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.160.0
|
||||
|
||||
)
|
||||
|
||||
require (
|
||||
|
||||
@@ -1,49 +1,73 @@
|
||||
module github.com/lxc/terraform-provider-incus/shim
|
||||
|
||||
go 1.23.7
|
||||
go 1.25.5
|
||||
|
||||
require github.com/hashicorp/terraform-plugin-sdk/v2 v2.36.1 // indirect
|
||||
require github.com/hashicorp/terraform-plugin-sdk/v2 v2.38.1 // indirect
|
||||
|
||||
require (
|
||||
github.com/hashicorp/terraform-plugin-framework v1.14.1
|
||||
github.com/lxc/terraform-provider-incus v0.3.1
|
||||
github.com/hashicorp/terraform-plugin-framework v1.16.1
|
||||
github.com/lxc/terraform-provider-incus v1.0.1
|
||||
)
|
||||
|
||||
require (
|
||||
github.com/AdaLogics/go-fuzz-headers v0.0.0-20240806141605-e8a1dd7889d6 // indirect
|
||||
github.com/apex/log v1.9.0 // indirect
|
||||
github.com/blang/semver/v4 v4.0.0 // indirect
|
||||
github.com/containerd/log v0.1.0 // indirect
|
||||
github.com/containerd/platforms v0.2.1 // indirect
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.7 // indirect
|
||||
github.com/cyphar/filepath-securejoin v0.6.1 // indirect
|
||||
github.com/docker/go-units v0.5.0 // indirect
|
||||
github.com/fatih/color v1.18.0 // indirect
|
||||
github.com/go-jose/go-jose/v4 v4.0.5 // indirect
|
||||
github.com/go-logr/logr v1.4.2 // indirect
|
||||
github.com/flosch/pongo2/v6 v6.0.0 // indirect
|
||||
github.com/go-jose/go-jose/v4 v4.1.3 // indirect
|
||||
github.com/go-logr/logr v1.4.3 // indirect
|
||||
github.com/go-logr/stdr v1.2.2 // indirect
|
||||
github.com/google/uuid v1.6.0 // indirect
|
||||
github.com/gorilla/securecookie v1.1.2 // indirect
|
||||
github.com/gorilla/websocket v1.5.3 // indirect
|
||||
github.com/hashicorp/go-hclog v1.6.3 // indirect
|
||||
github.com/hashicorp/go-version v1.7.0 // indirect
|
||||
github.com/hashicorp/terraform-plugin-framework-validators v0.17.0 // indirect
|
||||
github.com/hashicorp/terraform-plugin-go v0.26.0 // indirect
|
||||
github.com/hashicorp/go-version v1.8.0 // indirect
|
||||
github.com/hashicorp/terraform-plugin-framework-validators v0.19.0 // indirect
|
||||
github.com/hashicorp/terraform-plugin-go v0.29.0 // indirect
|
||||
github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect
|
||||
github.com/klauspost/compress v1.18.1 // indirect
|
||||
github.com/klauspost/pgzip v1.2.6 // indirect
|
||||
github.com/kr/fs v0.1.0 // indirect
|
||||
github.com/lxc/incus/v6 v6.11.0 // indirect
|
||||
github.com/lxc/incus/v6 v6.19.1 // indirect
|
||||
github.com/mattn/go-colorable v0.1.14 // indirect
|
||||
github.com/mattn/go-isatty v0.0.20 // indirect
|
||||
github.com/mitchellh/go-homedir v1.1.0 // indirect
|
||||
github.com/mitchellh/go-testing-interface v1.14.1 // indirect
|
||||
github.com/moby/sys/user v0.4.0 // indirect
|
||||
github.com/moby/sys/userns v0.1.0 // indirect
|
||||
github.com/muhlemmer/gu v0.3.1 // indirect
|
||||
github.com/pkg/sftp v1.13.9 // indirect
|
||||
github.com/opencontainers/go-digest v1.0.0 // indirect
|
||||
github.com/opencontainers/image-spec v1.1.1 // indirect
|
||||
github.com/opencontainers/runtime-spec v1.3.0 // indirect
|
||||
github.com/opencontainers/umoci v0.6.0 // indirect
|
||||
github.com/pkg/errors v0.9.1 // indirect
|
||||
github.com/pkg/sftp v1.13.10 // indirect
|
||||
github.com/pkg/xattr v0.4.12 // indirect
|
||||
github.com/rootless-containers/proto/go-proto v0.0.0-20230421021042-4cd87ebadd67 // indirect
|
||||
github.com/russross/blackfriday/v2 v2.1.0 // indirect
|
||||
github.com/sirupsen/logrus v1.9.3 // indirect
|
||||
github.com/urfave/cli v1.22.17 // indirect
|
||||
github.com/vbatts/go-mtree v0.6.1-0.20250911112631-8307d76bc1b9 // indirect
|
||||
github.com/vmihailenco/msgpack/v5 v5.4.1 // indirect
|
||||
github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect
|
||||
github.com/zitadel/logging v0.6.2 // indirect
|
||||
github.com/zitadel/oidc/v3 v3.37.0 // indirect
|
||||
github.com/zitadel/oidc/v3 v3.45.0 // indirect
|
||||
github.com/zitadel/schema v1.3.1 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
|
||||
go.opentelemetry.io/otel v1.35.0 // indirect
|
||||
go.opentelemetry.io/otel/metric v1.35.0 // indirect
|
||||
go.opentelemetry.io/otel/trace v1.35.0 // indirect
|
||||
golang.org/x/crypto v0.36.0 // indirect
|
||||
golang.org/x/oauth2 v0.28.0 // indirect
|
||||
golang.org/x/sys v0.31.0 // indirect
|
||||
golang.org/x/term v0.30.0 // indirect
|
||||
golang.org/x/text v0.23.0 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
|
||||
go.opentelemetry.io/otel v1.38.0 // indirect
|
||||
go.opentelemetry.io/otel/metric v1.38.0 // indirect
|
||||
go.opentelemetry.io/otel/trace v1.38.0 // indirect
|
||||
golang.org/x/crypto v0.45.0 // indirect
|
||||
golang.org/x/oauth2 v0.33.0 // indirect
|
||||
golang.org/x/sys v0.38.0 // indirect
|
||||
golang.org/x/term v0.37.0 // indirect
|
||||
golang.org/x/text v0.31.0 // indirect
|
||||
google.golang.org/protobuf v1.36.10 // indirect
|
||||
gopkg.in/yaml.v2 v2.4.0 // indirect
|
||||
)
|
||||
|
||||
@@ -1,38 +1,69 @@
|
||||
github.com/AdaLogics/go-fuzz-headers v0.0.0-20240806141605-e8a1dd7889d6 h1:He8afgbRMd7mFxO99hRNu+6tazq8nFF9lIwo9JFroBk=
|
||||
github.com/AdaLogics/go-fuzz-headers v0.0.0-20240806141605-e8a1dd7889d6/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8=
|
||||
github.com/BurntSushi/toml v1.5.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho=
|
||||
github.com/ProtonMail/go-crypto v1.1.6 h1:ZcV+Ropw6Qn0AX9brlQLAUXfqLBc7Bl+f/DmNxpLfdw=
|
||||
github.com/ProtonMail/go-crypto v1.1.6/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE=
|
||||
github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo=
|
||||
github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558=
|
||||
github.com/apex/log v1.9.0 h1:FHtw/xuaM8AgmvDDTI9fiwoAL25Sq2cxojnZICUU8l0=
|
||||
github.com/apex/log v1.9.0/go.mod h1:m82fZlWIuiWzWP04XCTXmnX0xRkYYbCdYn8jbJeLBEA=
|
||||
github.com/apex/logs v1.0.0/go.mod h1:XzxuLZ5myVHDy9SAmYpamKKRNApGj54PfYLcFrXqDwo=
|
||||
github.com/aphistic/golf v0.0.0-20180712155816-02c07f170c5a/go.mod h1:3NqKYiepwy8kCu4PNA+aP7WUV72eXWJeP9/r3/K9aLE=
|
||||
github.com/aphistic/sweet v0.2.0/go.mod h1:fWDlIh/isSE9n6EPsRmC0det+whmX6dJid3stzu0Xys=
|
||||
github.com/apparentlymart/go-textseg/v15 v15.0.0 h1:uYvfpb3DyLSCGWnctWKGj857c6ew1u1fNQOlOtuGxQY=
|
||||
github.com/apparentlymart/go-textseg/v15 v15.0.0/go.mod h1:K8XmNZdhEBkdlyDdvbmmsvpAG721bKi0joRfFdHIWJ4=
|
||||
github.com/bmatcuk/doublestar/v4 v4.8.1 h1:54Bopc5c2cAvhLRAzqOGCYHYyhcDHsFF4wWIR5wKP38=
|
||||
github.com/bmatcuk/doublestar/v4 v4.8.1/go.mod h1:xBQ8jztBU6kakFMg+8WGxn0c6z1fTSPVIjEY1Wr7jzc=
|
||||
github.com/cloudflare/circl v1.6.0 h1:cr5JKic4HI+LkINy2lg3W2jF8sHCVTBncJr5gIIq7qk=
|
||||
github.com/cloudflare/circl v1.6.0/go.mod h1:uddAzsPgqdMAYatqJ0lsjX1oECcQLIlRpzZh3pJrofs=
|
||||
github.com/aws/aws-sdk-go v1.20.6/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
|
||||
github.com/aybabtme/rgbterm v0.0.0-20170906152045-cc83f3b3ce59/go.mod h1:q/89r3U2H7sSsE2t6Kca0lfwTK8JdoNGS/yzM/4iH5I=
|
||||
github.com/blang/semver/v4 v4.0.0 h1:1PFHFE6yCCTv8C1TeyNNarDzntLi7wMI5i/pzqYIsAM=
|
||||
github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ=
|
||||
github.com/bmatcuk/doublestar/v4 v4.9.1 h1:X8jg9rRZmJd4yRy7ZeNDRnM+T3ZfHv15JiBJ/avrEXE=
|
||||
github.com/bmatcuk/doublestar/v4 v4.9.1/go.mod h1:xBQ8jztBU6kakFMg+8WGxn0c6z1fTSPVIjEY1Wr7jzc=
|
||||
github.com/cloudflare/circl v1.6.1 h1:zqIqSPIndyBh1bjLVVDHMPpVKqp8Su/V+6MeDzzQBQ0=
|
||||
github.com/cloudflare/circl v1.6.1/go.mod h1:uddAzsPgqdMAYatqJ0lsjX1oECcQLIlRpzZh3pJrofs=
|
||||
github.com/containerd/log v0.1.0 h1:TCJt7ioM2cr/tfR8GPbGf9/VRAX8D2B4PjzCpfX540I=
|
||||
github.com/containerd/log v0.1.0/go.mod h1:VRRf09a7mHDIRezVKTRCrOq78v577GXq3bSa3EhrzVo=
|
||||
github.com/containerd/platforms v0.2.1 h1:zvwtM3rz2YHPQsF2CHYM8+KtB5dvhISiXh5ZpSBQv6A=
|
||||
github.com/containerd/platforms v0.2.1/go.mod h1:XHCb+2/hzowdiut9rkudds9bE5yJ7npe7dG/wG+uFPw=
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.7 h1:zbFlGlXEAKlwXpmvle3d8Oe3YnkKIK4xSRTd3sHPnBo=
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.7/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
|
||||
github.com/cyphar/filepath-securejoin v0.6.1 h1:5CeZ1jPXEiYt3+Z6zqprSAgSWiggmpVyciv8syjIpVE=
|
||||
github.com/cyphar/filepath-securejoin v0.6.1/go.mod h1:A8hd4EnAeyujCJRrICiOWqjS1AX0a9kM5XL+NwKoYSc=
|
||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
|
||||
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4=
|
||||
github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=
|
||||
github.com/dustinkirkland/golang-petname v0.0.0-20240428194347-eebcea082ee0 h1:aYo8nnk3ojoQkP5iErif5Xxv0Mo0Ga/FR5+ffl/7+Nk=
|
||||
github.com/dustinkirkland/golang-petname v0.0.0-20240428194347-eebcea082ee0/go.mod h1:8AuBTZBRSFqEYBPYULd+NN474/zZBLP+6WeT5S9xlAc=
|
||||
github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
|
||||
github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk=
|
||||
github.com/fatih/color v1.18.0 h1:S8gINlzdQ840/4pfAwic/ZE0djQEH3wM94VfqLTZcOM=
|
||||
github.com/fatih/color v1.18.0/go.mod h1:4FelSpRwEGDpQ12mAdzqdOukCy4u8WUtOY6lkT/6HfU=
|
||||
github.com/go-chi/chi/v5 v5.2.1 h1:KOIHODQj58PmL80G2Eak4WdvUzjSJSm0vG72crDCqb8=
|
||||
github.com/go-chi/chi/v5 v5.2.1/go.mod h1:L2yAIGWB3H+phAw1NxKwWM+7eUH/lU8pOMm5hHcoops=
|
||||
github.com/go-jose/go-jose/v4 v4.0.5 h1:M6T8+mKZl/+fNNuFHvGIzDz7BTLQPIounk/b9dw3AaE=
|
||||
github.com/go-jose/go-jose/v4 v4.0.5/go.mod h1:s3P1lRrkT8igV8D9OjyL4WRyHvjB6a4JSllnOrmmBOA=
|
||||
github.com/flosch/pongo2/v6 v6.0.0 h1:lsGru8IAzHgIAw6H2m4PCyleO58I40ow6apih0WprMU=
|
||||
github.com/flosch/pongo2/v6 v6.0.0/go.mod h1:CuDpFm47R0uGGE7z13/tTlt1Y6zdxvr2RLT5LJhsHEU=
|
||||
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
|
||||
github.com/go-chi/chi/v5 v5.2.3 h1:WQIt9uxdsAbgIYgid+BpYc+liqQZGMHRaUwp0JUcvdE=
|
||||
github.com/go-chi/chi/v5 v5.2.3/go.mod h1:L2yAIGWB3H+phAw1NxKwWM+7eUH/lU8pOMm5hHcoops=
|
||||
github.com/go-jose/go-jose/v4 v4.1.3 h1:CVLmWDhDVRa6Mi/IgCgaopNosCaHz7zrMeF9MlZRkrs=
|
||||
github.com/go-jose/go-jose/v4 v4.1.3/go.mod h1:x4oUasVrzR7071A4TnHLGSPpNOm2a21K9Kf04k1rs08=
|
||||
github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=
|
||||
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
|
||||
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
|
||||
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI=
|
||||
github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
|
||||
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
|
||||
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
||||
github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
||||
github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
|
||||
github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek=
|
||||
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
|
||||
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
|
||||
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
||||
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
||||
github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0=
|
||||
github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/gorilla/securecookie v1.1.2 h1:YCIWL56dvtr73r6715mJs5ZvhtnY73hBvEF8kXD8ePA=
|
||||
@@ -51,62 +82,78 @@ github.com/hashicorp/go-hclog v1.6.3 h1:Qr2kF+eVWjTiYmU7Y31tYlP1h0q/X3Nl3tPGdaB1
|
||||
github.com/hashicorp/go-hclog v1.6.3/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M=
|
||||
github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo=
|
||||
github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM=
|
||||
github.com/hashicorp/go-plugin v1.6.3 h1:xgHB+ZUSYeuJi96WtxEjzi23uh7YQpznjGh0U0UUrwg=
|
||||
github.com/hashicorp/go-plugin v1.6.3/go.mod h1:MRobyh+Wc/nYy1V4KAXUiYfzxoYhs7V1mlH1Z7iY2h0=
|
||||
github.com/hashicorp/go-plugin v1.7.0 h1:YghfQH/0QmPNc/AZMTFE3ac8fipZyZECHdDPshfk+mA=
|
||||
github.com/hashicorp/go-plugin v1.7.0/go.mod h1:BExt6KEaIYx804z8k4gRzRLEvxKVb+kn0NMcihqOqb8=
|
||||
github.com/hashicorp/go-retryablehttp v0.7.7 h1:C8hUCYzor8PIfXHa4UrZkU4VvK8o9ISHxT2Q8+VepXU=
|
||||
github.com/hashicorp/go-retryablehttp v0.7.7/go.mod h1:pkQpWZeYWskR+D1tR2O5OcBFOxfA7DoAO6xtkuQnHTk=
|
||||
github.com/hashicorp/go-uuid v1.0.3 h1:2gKiV6YVmrJ1i2CKKa9obLvRieoRGviZFL26PcT/Co8=
|
||||
github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro=
|
||||
github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY=
|
||||
github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
|
||||
github.com/hashicorp/hc-install v0.9.1 h1:gkqTfE3vVbafGQo6VZXcy2v5yoz2bE0+nhZXruCuODQ=
|
||||
github.com/hashicorp/hc-install v0.9.1/go.mod h1:pWWvN/IrfeBK4XPeXXYkL6EjMufHkCK5DvwxeLKuBf0=
|
||||
github.com/hashicorp/hcl/v2 v2.23.0 h1:Fphj1/gCylPxHutVSEOf2fBOh1VE4AuLV7+kbJf3qos=
|
||||
github.com/hashicorp/hcl/v2 v2.23.0/go.mod h1:62ZYHrXgPoX8xBnzl8QzbWq4dyDsDtfCRgIq1rbJEvA=
|
||||
github.com/hashicorp/go-version v1.8.0 h1:KAkNb1HAiZd1ukkxDFGmokVZe1Xy9HG6NUp+bPle2i4=
|
||||
github.com/hashicorp/go-version v1.8.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
|
||||
github.com/hashicorp/hc-install v0.9.2 h1:v80EtNX4fCVHqzL9Lg/2xkp62bbvQMnvPQ0G+OmtO24=
|
||||
github.com/hashicorp/hc-install v0.9.2/go.mod h1:XUqBQNnuT4RsxoxiM9ZaUk0NX8hi2h+Lb6/c0OZnC/I=
|
||||
github.com/hashicorp/hcl/v2 v2.24.0 h1:2QJdZ454DSsYGoaE6QheQZjtKZSUs9Nh2izTWiwQxvE=
|
||||
github.com/hashicorp/hcl/v2 v2.24.0/go.mod h1:oGoO1FIQYfn/AgyOhlg9qLC6/nOJPX3qGbkZpYAcqfM=
|
||||
github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y=
|
||||
github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64=
|
||||
github.com/hashicorp/terraform-exec v0.22.0 h1:G5+4Sz6jYZfRYUCg6eQgDsqTzkNXV+fP8l+uRmZHj64=
|
||||
github.com/hashicorp/terraform-exec v0.22.0/go.mod h1:bjVbsncaeh8jVdhttWYZuBGj21FcYw6Ia/XfHcNO7lQ=
|
||||
github.com/hashicorp/terraform-json v0.24.0 h1:rUiyF+x1kYawXeRth6fKFm/MdfBS6+lW4NbeATsYz8Q=
|
||||
github.com/hashicorp/terraform-json v0.24.0/go.mod h1:Nfj5ubo9xbu9uiAoZVBsNOjvNKB66Oyrvtit74kC7ow=
|
||||
github.com/hashicorp/terraform-plugin-framework v1.14.1 h1:jaT1yvU/kEKEsxnbrn4ZHlgcxyIfjvZ41BLdlLk52fY=
|
||||
github.com/hashicorp/terraform-plugin-framework v1.14.1/go.mod h1:xNUKmvTs6ldbwTuId5euAtg37dTxuyj3LHS3uj7BHQ4=
|
||||
github.com/hashicorp/terraform-plugin-framework-validators v0.17.0 h1:0uYQcqqgW3BMyyve07WJgpKorXST3zkpzvrOnf3mpbg=
|
||||
github.com/hashicorp/terraform-plugin-framework-validators v0.17.0/go.mod h1:VwdfgE/5Zxm43flraNa0VjcvKQOGVrcO4X8peIri0T0=
|
||||
github.com/hashicorp/terraform-plugin-go v0.26.0 h1:cuIzCv4qwigug3OS7iKhpGAbZTiypAfFQmw8aE65O2M=
|
||||
github.com/hashicorp/terraform-plugin-go v0.26.0/go.mod h1:+CXjuLDiFgqR+GcrM5a2E2Kal5t5q2jb0E3D57tTdNY=
|
||||
github.com/hashicorp/terraform-exec v0.23.1 h1:diK5NSSDXDKqHEOIQefBMu9ny+FhzwlwV0xgUTB7VTo=
|
||||
github.com/hashicorp/terraform-exec v0.23.1/go.mod h1:e4ZEg9BJDRaSalGm2z8vvrPONt0XWG0/tXpmzYTf+dM=
|
||||
github.com/hashicorp/terraform-json v0.27.1 h1:zWhEracxJW6lcjt/JvximOYyc12pS/gaKSy/wzzE7nY=
|
||||
github.com/hashicorp/terraform-json v0.27.1/go.mod h1:GzPLJ1PLdUG5xL6xn1OXWIjteQRT2CNT9o/6A9mi9hE=
|
||||
github.com/hashicorp/terraform-plugin-framework v1.16.1 h1:1+zwFm3MEqd/0K3YBB2v9u9DtyYHyEuhVOfeIXbteWA=
|
||||
github.com/hashicorp/terraform-plugin-framework v1.16.1/go.mod h1:0xFOxLy5lRzDTayc4dzK/FakIgBhNf/lC4499R9cV4Y=
|
||||
github.com/hashicorp/terraform-plugin-framework-validators v0.19.0 h1:Zz3iGgzxe/1XBkooZCewS0nJAaCFPFPHdNJd8FgE4Ow=
|
||||
github.com/hashicorp/terraform-plugin-framework-validators v0.19.0/go.mod h1:GBKTNGbGVJohU03dZ7U8wHqc2zYnMUawgCN+gC0itLc=
|
||||
github.com/hashicorp/terraform-plugin-go v0.29.0 h1:1nXKl/nSpaYIUBU1IG/EsDOX0vv+9JxAltQyDMpq5mU=
|
||||
github.com/hashicorp/terraform-plugin-go v0.29.0/go.mod h1:vYZbIyvxyy0FWSmDHChCqKvI40cFTDGSb3D8D70i9GM=
|
||||
github.com/hashicorp/terraform-plugin-log v0.9.0 h1:i7hOA+vdAItN1/7UrfBqBwvYPQ9TFvymaRGZED3FCV0=
|
||||
github.com/hashicorp/terraform-plugin-log v0.9.0/go.mod h1:rKL8egZQ/eXSyDqzLUuwUYLVdlYeamldAHSxjUFADow=
|
||||
github.com/hashicorp/terraform-plugin-sdk/v2 v2.36.1 h1:WNMsTLkZf/3ydlgsuXePa3jvZFwAJhruxTxP/c1Viuw=
|
||||
github.com/hashicorp/terraform-plugin-sdk/v2 v2.36.1/go.mod h1:P6o64QS97plG44iFzSM6rAn6VJIC/Sy9a9IkEtl79K4=
|
||||
github.com/hashicorp/terraform-plugin-testing v1.12.0 h1:tpIe+T5KBkA1EO6aT704SPLedHUo55RenguLHcaSBdI=
|
||||
github.com/hashicorp/terraform-plugin-testing v1.12.0/go.mod h1:jbDQUkT9XRjAh1Bvyufq+PEH1Xs4RqIdpOQumSgSXBM=
|
||||
github.com/hashicorp/terraform-registry-address v0.2.4 h1:JXu/zHB2Ymg/TGVCRu10XqNa4Sh2bWcqCNyKWjnCPJA=
|
||||
github.com/hashicorp/terraform-registry-address v0.2.4/go.mod h1:tUNYTVyCtU4OIGXXMDp7WNcJ+0W1B4nmstVDgHMjfAU=
|
||||
github.com/hashicorp/terraform-plugin-sdk/v2 v2.38.1 h1:mlAq/OrMlg04IuJT7NpefI1wwtdpWudnEmjuQs04t/4=
|
||||
github.com/hashicorp/terraform-plugin-sdk/v2 v2.38.1/go.mod h1:GQhpKVvvuwzD79e8/NZ+xzj+ZpWovdPAe8nfV/skwNU=
|
||||
github.com/hashicorp/terraform-plugin-testing v1.13.3 h1:QLi/khB8Z0a5L54AfPrHukFpnwsGL8cwwswj4RZduCo=
|
||||
github.com/hashicorp/terraform-plugin-testing v1.13.3/go.mod h1:WHQ9FDdiLoneey2/QHpGM/6SAYf4A7AZazVg7230pLE=
|
||||
github.com/hashicorp/terraform-registry-address v0.4.0 h1:S1yCGomj30Sao4l5BMPjTGZmCNzuv7/GDTDX99E9gTk=
|
||||
github.com/hashicorp/terraform-registry-address v0.4.0/go.mod h1:LRS1Ay0+mAiRkUyltGT+UHWkIqTFvigGn/LbMshfflE=
|
||||
github.com/hashicorp/terraform-svchost v0.1.1 h1:EZZimZ1GxdqFRinZ1tpJwVxxt49xc/S52uzrw4x0jKQ=
|
||||
github.com/hashicorp/terraform-svchost v0.1.1/go.mod h1:mNsjQfZyf/Jhz35v6/0LWcv26+X7JPS+buii2c9/ctc=
|
||||
github.com/hashicorp/yamux v0.1.2 h1:XtB8kyFOyHXYVFnwT5C3+Bdo8gArse7j2AQ0DA0Uey8=
|
||||
github.com/hashicorp/yamux v0.1.2/go.mod h1:C+zze2n6e/7wshOZep2A70/aQU6QBRWJO/G6FT1wIns=
|
||||
github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
|
||||
github.com/jeremija/gosubmit v0.2.8 h1:mmSITBz9JxVtu8eqbN+zmmwX7Ij2RidQxhcwRVI4wqA=
|
||||
github.com/jeremija/gosubmit v0.2.8/go.mod h1:Ui+HS073lCFREXBbdfrJzMB57OI/bdxTiLtrDHHhFPI=
|
||||
github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k=
|
||||
github.com/jpillora/backoff v0.0.0-20180909062703-3050d21c67d7/go.mod h1:2iMrUgbbvHEiQClaW2NsSzMyGHqN+rDFqY705q49KG0=
|
||||
github.com/klauspost/compress v1.18.1 h1:bcSGx7UbpBqMChDtsF28Lw6v/G94LPrrbMbdC3JH2co=
|
||||
github.com/klauspost/compress v1.18.1/go.mod h1:ZQFFVG+MdnR0P+l6wpXgIL4NTtwiKIdBnrBd8Nrxr+0=
|
||||
github.com/klauspost/pgzip v1.2.6 h1:8RXeL5crjEUFnR2/Sn6GJNWtSQ3Dk8pq4CL3jvdDyjU=
|
||||
github.com/klauspost/pgzip v1.2.6/go.mod h1:Ch1tH69qFZu15pkjo5kYi6mth2Zzwzt50oCQKQE9RUs=
|
||||
github.com/kr/fs v0.1.0 h1:Jskdu9ieNAYnjxsi0LbQp1ulIKZV1LAFgK1tWhpZgl8=
|
||||
github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg=
|
||||
github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc=
|
||||
github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
|
||||
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
|
||||
github.com/lxc/incus/v6 v6.11.0 h1:p+O5XFZ4K61A6h7tH74+KlPC+f8NPMqw59i9mH1W1oM=
|
||||
github.com/lxc/incus/v6 v6.11.0/go.mod h1:nuqbxYAx0brbbRho062fXnpQv3viEo37wnJlfnKEHqU=
|
||||
github.com/lxc/terraform-provider-incus v0.3.1 h1:JIslQ3efXoaL8LqIUu4RdfLM0cgn4ofLuGhon4s8gB4=
|
||||
github.com/lxc/terraform-provider-incus v0.3.1/go.mod h1:e67wjHqKsKQByukxI1kInYcYJEJpW+WqvHsmOkTyVII=
|
||||
github.com/lxc/incus/v6 v6.19.1 h1:p5RKNY8iGb+C9ud2pPwHKNBk/8eGyrT6xisZPGSx3DU=
|
||||
github.com/lxc/incus/v6 v6.19.1/go.mod h1:huGl4lNtU6dVDiBldgxdRE1tazIygpV69DCV/22mJa8=
|
||||
github.com/lxc/terraform-provider-incus v1.0.1 h1:DhkFVDCnYLCS1QgFCTZdyBAwABlZ9aWffbA1lJiOeao=
|
||||
github.com/lxc/terraform-provider-incus v1.0.1/go.mod h1:GlRQlBvayauVGcuQMFJ3dxgXIEGDerWGnHgUhQ8ULIA=
|
||||
github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ=
|
||||
github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
|
||||
github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
|
||||
github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4=
|
||||
github.com/mattn/go-colorable v0.1.14 h1:9A9LHSqF/7dyVVX6g0U9cwm9pG3kP9gSzcuIPHPsaIE=
|
||||
github.com/mattn/go-colorable v0.1.14/go.mod h1:6LmQG8QLFO4G5z1gPvYEzlUgJ2wF+stgPZH1UqBm1s8=
|
||||
github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
|
||||
github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
|
||||
github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
|
||||
github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94=
|
||||
github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
|
||||
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
|
||||
github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b/go.mod h1:01TrycV0kFyexm33Z7vhZRXopbI8J3TDReVlkTgMUxE=
|
||||
github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw=
|
||||
github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s=
|
||||
github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y=
|
||||
@@ -119,154 +166,161 @@ github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyua
|
||||
github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
|
||||
github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ=
|
||||
github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw=
|
||||
github.com/moby/sys/user v0.4.0 h1:jhcMKit7SA80hivmFJcbB1vqmw//wU61Zdui2eQXuMs=
|
||||
github.com/moby/sys/user v0.4.0/go.mod h1:bG+tYYYJgaMtRKgEmuueC0hJEAZWwtIbZTB+85uoHjs=
|
||||
github.com/moby/sys/userns v0.1.0 h1:tVLXkFOxVu9A64/yh59slHVv9ahO9UIev4JZusOLG/g=
|
||||
github.com/moby/sys/userns v0.1.0/go.mod h1:IHUYgu/kao6N8YZlp9Cf444ySSvCmDlmzUcYfDHOl28=
|
||||
github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 h1:RWengNIwukTxcDr9M+97sNutRR1RKhG96O6jWumTTnw=
|
||||
github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826/go.mod h1:TaXosZuwdSHYgviHp1DAtfrULt5eUgsSMsZf+YrPgl8=
|
||||
github.com/muhlemmer/gu v0.3.1 h1:7EAqmFrW7n3hETvuAdmFmn4hS8W+z3LgKtrnow+YzNM=
|
||||
github.com/muhlemmer/gu v0.3.1/go.mod h1:YHtHR+gxM+bKEIIs7Hmi9sPT3ZDUvTN/i88wQpZkrdM=
|
||||
github.com/muhlemmer/httpforwarded v0.1.0 h1:x4DLrzXdliq8mprgUMR0olDvHGkou5BJsK/vWUetyzY=
|
||||
github.com/muhlemmer/httpforwarded v0.1.0/go.mod h1:yo9czKedo2pdZhoXe+yDkGVbU0TJ0q9oQ90BVoDEtw0=
|
||||
github.com/oklog/run v1.1.0 h1:GEenZ1cK0+q0+wsJew9qUg/DyD8k3JzYsZAi5gYi2mA=
|
||||
github.com/oklog/run v1.1.0/go.mod h1:sVPdnTZT1zYwAJeCMu2Th4T21pA3FPOQRfWjQlk7DVU=
|
||||
github.com/pkg/sftp v1.13.9 h1:4NGkvGudBL7GteO3m6qnaQ4pC0Kvf0onSVc9gR3EWBw=
|
||||
github.com/pkg/sftp v1.13.9/go.mod h1:OBN7bVXdstkFFN/gdnHPUb5TE8eb8G1Rp9wCItqjkkA=
|
||||
github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
|
||||
github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
|
||||
github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U=
|
||||
github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM=
|
||||
github.com/opencontainers/image-spec v1.1.1 h1:y0fUlFfIZhPF1W537XOLg0/fcx6zcHCJwooC2xJA040=
|
||||
github.com/opencontainers/image-spec v1.1.1/go.mod h1:qpqAh3Dmcf36wStyyWU+kCeDgrGnAve2nCC8+7h8Q0M=
|
||||
github.com/opencontainers/runtime-spec v1.3.0 h1:YZupQUdctfhpZy3TM39nN9Ika5CBWT5diQ8ibYCRkxg=
|
||||
github.com/opencontainers/runtime-spec v1.3.0/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0=
|
||||
github.com/opencontainers/umoci v0.6.0 h1:Dsm4beJpglN5y2E2EUSZZcNey4Ml4+nKepvwLQwgIec=
|
||||
github.com/opencontainers/umoci v0.6.0/go.mod h1:2DS3cxVN9pRJGYaCK5mnmmwVKV5vd9r6HIYAV0IvdbI=
|
||||
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
|
||||
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
github.com/pkg/sftp v1.13.10 h1:+5FbKNTe5Z9aspU88DPIKJ9z2KZoaGCu6Sr6kKR/5mU=
|
||||
github.com/pkg/sftp v1.13.10/go.mod h1:bJ1a7uDhrX/4OII+agvy28lzRvQrmIQuaHrcI1HbeGA=
|
||||
github.com/pkg/xattr v0.4.12 h1:rRTkSyFNTRElv6pkA3zpjHpQ90p/OdHQC1GmGh1aTjM=
|
||||
github.com/pkg/xattr v0.4.12/go.mod h1:di8WF84zAKk8jzR1UBTEWh9AUlIZZ7M/JNt8e9B6ktU=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
|
||||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII=
|
||||
github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o=
|
||||
github.com/rogpeppe/fastuuid v1.1.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ=
|
||||
github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ=
|
||||
github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc=
|
||||
github.com/rootless-containers/proto/go-proto v0.0.0-20230421021042-4cd87ebadd67 h1:58jvc5cZ+hGKidQ4Z37/+rj9eQxRRjOOsqNEwPSZXR4=
|
||||
github.com/rootless-containers/proto/go-proto v0.0.0-20230421021042-4cd87ebadd67/go.mod h1:LLjEAc6zmycfeN7/1fxIphWQPjHpTt7ElqT7eVf8e4A=
|
||||
github.com/rs/cors v1.11.1 h1:eU3gRzXLRK57F5rKMGMZURNdIG4EoAmX8k94r9wXWHA=
|
||||
github.com/rs/cors v1.11.1/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU=
|
||||
github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk=
|
||||
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo=
|
||||
github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ=
|
||||
github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
|
||||
github.com/smartystreets/assertions v1.0.0/go.mod h1:kHHU4qYBaI3q23Pp3VPrmWhuIUrLW/7eUrw0BU5VaoM=
|
||||
github.com/smartystreets/go-aws-auth v0.0.0-20180515143844-0c1422d1fdb9/go.mod h1:SnhjPscd9TpLiy1LpzGSKh3bXCfxxXuqd9xmQJy3slM=
|
||||
github.com/smartystreets/gunit v1.0.0/go.mod h1:qwPWnhz6pn0NnRBP++URONOVyNkPyr4SauJk4cUOwJs=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
|
||||
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
|
||||
github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
|
||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||
github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||
github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals=
|
||||
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
|
||||
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
|
||||
github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
|
||||
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
|
||||
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
|
||||
github.com/tj/assert v0.0.0-20171129193455-018094318fb0/go.mod h1:mZ9/Rh9oLWpLLDRpvE+3b7gP/C2YyLFYxNmcLnPTMe0=
|
||||
github.com/tj/assert v0.0.3 h1:Df/BlaZ20mq6kuai7f5z2TvPFiwC3xaWJSDQNiIS3Rk=
|
||||
github.com/tj/assert v0.0.3/go.mod h1:Ne6X72Q+TB1AteidzQncjw9PabbMp4PBMZ1k+vd1Pvk=
|
||||
github.com/tj/go-buffer v1.1.0/go.mod h1:iyiJpfFcR2B9sXu7KvjbT9fpM4mOelRSDTbntVj52Uc=
|
||||
github.com/tj/go-elastic v0.0.0-20171221160941-36157cbbebc2/go.mod h1:WjeM0Oo1eNAjXGDx2yma7uG2XoyRZTq1uv3M/o7imD0=
|
||||
github.com/tj/go-kinesis v0.0.0-20171128231115-08b17f58cb1b/go.mod h1:/yhzCV0xPfx6jb1bBgRFjl5lytqVqZXEaeqWP8lTEao=
|
||||
github.com/tj/go-spin v1.1.0/go.mod h1:Mg1mzmePZm4dva8Qz60H2lHwmJ2loum4VIrLgVnKwh4=
|
||||
github.com/urfave/cli v1.22.17 h1:SYzXoiPfQjHBbkYxbew5prZHS1TOLT3ierW8SYLqtVQ=
|
||||
github.com/urfave/cli v1.22.17/go.mod h1:b0ht0aqgH/6pBYzzxURyrM4xXNgsoT/n2ZzwQiEhNVo=
|
||||
github.com/vbatts/go-mtree v0.6.1-0.20250911112631-8307d76bc1b9 h1:R6l9BtUe83abUGu1YKGkfa17wMMFLt6mhHVQ8MxpfRE=
|
||||
github.com/vbatts/go-mtree v0.6.1-0.20250911112631-8307d76bc1b9/go.mod h1:W7bcG9PCn6lFY+ljGlZxx9DONkxL3v8a7HyN+PrSrjA=
|
||||
github.com/vmihailenco/msgpack v4.0.4+incompatible h1:dSLoQfGFAo3F6OoNhwUmLwVgaUXK79GlxNBwueZn0xI=
|
||||
github.com/vmihailenco/msgpack v4.0.4+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk=
|
||||
github.com/vmihailenco/msgpack/v5 v5.4.1 h1:cQriyiUvjTwOHg8QZaPihLWeRAAVoCpE00IUPn0Bjt8=
|
||||
github.com/vmihailenco/msgpack/v5 v5.4.1/go.mod h1:GaZTsDaehaPpQVyxrf5mtQlH+pc21PIudVV/E3rRQok=
|
||||
github.com/vmihailenco/tagparser/v2 v2.0.0 h1:y09buUbR+b5aycVFQs/g70pqKVZNBmxwAhO7/IwNM9g=
|
||||
github.com/vmihailenco/tagparser/v2 v2.0.0/go.mod h1:Wri+At7QHww0WTrCBeu4J6bNtoV6mEfg5OIWRZA9qds=
|
||||
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
|
||||
github.com/zclconf/go-cty v1.16.2 h1:LAJSwc3v81IRBZyUVQDUdZ7hs3SYs9jv0eZJDWHD/70=
|
||||
github.com/zclconf/go-cty v1.16.2/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE=
|
||||
github.com/zclconf/go-cty v1.17.0 h1:seZvECve6XX4tmnvRzWtJNHdscMtYEx5R7bnnVyd/d0=
|
||||
github.com/zclconf/go-cty v1.17.0/go.mod h1:wqFzcImaLTI6A5HfsRwB0nj5n0MRZFwmey8YoFPPs3U=
|
||||
github.com/zitadel/logging v0.6.2 h1:MW2kDDR0ieQynPZ0KIZPrh9ote2WkxfBif5QoARDQcU=
|
||||
github.com/zitadel/logging v0.6.2/go.mod h1:z6VWLWUkJpnNVDSLzrPSQSQyttysKZ6bCRongw0ROK4=
|
||||
github.com/zitadel/oidc/v3 v3.37.0 h1:nYATWlnP7f18XiAbw6upUruBaqfB1kUrXrSTf1EYGO8=
|
||||
github.com/zitadel/oidc/v3 v3.37.0/go.mod h1:/xDan4OUQhguJ4Ur73OOJrtugvR164OMnidXP9xfVNw=
|
||||
github.com/zitadel/oidc/v3 v3.45.0 h1:SaVJ2kdcJi/zdEWWlAns+81VxmfdYX4E+2mWFVIH7Ec=
|
||||
github.com/zitadel/oidc/v3 v3.45.0/go.mod h1:UeK0iVOoqfMuDVgSfv56BqTz8YQC2M+tGRIXZ7Ii3VY=
|
||||
github.com/zitadel/schema v1.3.1 h1:QT3kwiRIRXXLVAs6gCK/u044WmUVh6IlbLXUsn6yRQU=
|
||||
github.com/zitadel/schema v1.3.1/go.mod h1:071u7D2LQacy1HAN+YnMd/mx1qVE2isb0Mjeqg46xnU=
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA=
|
||||
go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A=
|
||||
go.opentelemetry.io/otel v1.35.0 h1:xKWKPxrxB6OtMCbmMY021CqC45J+3Onta9MqjhnusiQ=
|
||||
go.opentelemetry.io/otel v1.35.0/go.mod h1:UEqy8Zp11hpkUrL73gSlELM0DupHoiq72dR+Zqel/+Y=
|
||||
go.opentelemetry.io/otel/metric v1.35.0 h1:0znxYu2SNyuMSQT4Y9WDWej0VpcsxkuklLa4/siN90M=
|
||||
go.opentelemetry.io/otel/metric v1.35.0/go.mod h1:nKVFgxBZ2fReX6IlyW28MgZojkoAkJGaE8CpgeAU3oE=
|
||||
go.opentelemetry.io/otel/trace v1.35.0 h1:dPpEfJu1sDIqruz7BHFG3c7528f6ddfSWfFDVt/xgMs=
|
||||
go.opentelemetry.io/otel/trace v1.35.0/go.mod h1:WUk7DtFp1Aw2MkvqGdwiXYDZZNvA/1J8o6xRXLrIkyc=
|
||||
go.opentelemetry.io/auto/sdk v1.2.1 h1:jXsnJ4Lmnqd11kwkBV2LgLoFMZKizbCi5fNZ/ipaZ64=
|
||||
go.opentelemetry.io/auto/sdk v1.2.1/go.mod h1:KRTj+aOaElaLi+wW1kO/DZRXwkF4C5xPbEe3ZiIhN7Y=
|
||||
go.opentelemetry.io/otel v1.38.0 h1:RkfdswUDRimDg0m2Az18RKOsnI8UDzppJAtj01/Ymk8=
|
||||
go.opentelemetry.io/otel v1.38.0/go.mod h1:zcmtmQ1+YmQM9wrNsTGV/q/uyusom3P8RxwExxkZhjM=
|
||||
go.opentelemetry.io/otel/metric v1.38.0 h1:Kl6lzIYGAh5M159u9NgiRkmoMKjvbsKtYRwgfrA6WpA=
|
||||
go.opentelemetry.io/otel/metric v1.38.0/go.mod h1:kB5n/QoRM8YwmUahxvI3bO34eVtQf2i4utNVLr9gEmI=
|
||||
go.opentelemetry.io/otel/trace v1.38.0 h1:Fxk5bKrDZJUH+AMyyIXGcFAPah0oRcT+LuNtJrmcNLE=
|
||||
go.opentelemetry.io/otel/trace v1.38.0/go.mod h1:j1P9ivuFsTceSWe1oY+EeW3sc+Pp42sO++GHkg4wwhs=
|
||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
||||
golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc=
|
||||
golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
|
||||
golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8=
|
||||
golang.org/x/crypto v0.31.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk=
|
||||
golang.org/x/crypto v0.36.0 h1:AnAEvhDddvBdpY+uR+MyHmuZzzNqXSe/GvuDeob5L34=
|
||||
golang.org/x/crypto v0.36.0/go.mod h1:Y4J0ReaxCR1IMaabaSMugxJES1EpwhBHhv2bDHklZvc=
|
||||
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
|
||||
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
|
||||
golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
|
||||
golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
||||
golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
||||
golang.org/x/mod v0.24.0 h1:ZfthKaKaT4NrhGVZHO1/WDTwGES4De8KtWO0SIbNJMU=
|
||||
golang.org/x/mod v0.24.0/go.mod h1:IXM97Txy2VM4PJ3gI61r1YEk/gAj6zAHN3AdZt6S9Ww=
|
||||
golang.org/x/crypto v0.0.0-20190426145343-a29dc8fdc734/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
||||
golang.org/x/crypto v0.45.0 h1:jMBrvKuj23MTlT0bQEOBcAE0mjg8mK9RXFhRH6nyF3Q=
|
||||
golang.org/x/crypto v0.45.0/go.mod h1:XTGrrkGJve7CYK7J8PEww4aY7gM3qMCElcJQ8n8JdX4=
|
||||
golang.org/x/mod v0.30.0 h1:fDEXFVZ/fmCKProc/yAXXUijritrDzahmwwefnjoPFk=
|
||||
golang.org/x/mod v0.30.0/go.mod h1:lAsf5O2EvJeSFMiBxXDki7sCgAxEUcZHXoXMKT4GJKc=
|
||||
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
||||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
|
||||
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
|
||||
golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
|
||||
golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
|
||||
golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk=
|
||||
golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44=
|
||||
golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM=
|
||||
golang.org/x/net v0.38.0 h1:vRMAPTMaeGqVhG5QyLJHqNDwecKTomGeqbnfZyKlBI8=
|
||||
golang.org/x/net v0.38.0/go.mod h1:ivrbrMbzFq5J41QOQh0siUuly180yBYtLp+CKbEaFx8=
|
||||
golang.org/x/oauth2 v0.28.0 h1:CrgCKl8PPAVtLnU3c+EDw6x11699EWlsDeWNWKdIOkc=
|
||||
golang.org/x/oauth2 v0.28.0/go.mod h1:onh5ek6nERTohokkhCD/y2cV4Do3fxFHFuAejCkRWT8=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
|
||||
golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
|
||||
golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
|
||||
golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
|
||||
golang.org/x/sync v0.12.0 h1:MHc5BpPuC30uJk597Ri8TV3CNZcTLu6B6z4lJy+g6Jw=
|
||||
golang.org/x/sync v0.12.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
|
||||
golang.org/x/net v0.47.0 h1:Mx+4dIFzqraBXUugkia1OOvlD6LemFo1ALMHjrXDOhY=
|
||||
golang.org/x/net v0.47.0/go.mod h1:/jNxtkgq5yWUGYkaZGqo27cfGZ1c5Nen03aYrrKpVRU=
|
||||
golang.org/x/oauth2 v0.33.0 h1:4Q+qn+E5z8gPRJfmRy7C2gGG3T4jIprK6aSYgTXGRpo=
|
||||
golang.org/x/oauth2 v0.33.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA=
|
||||
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=
|
||||
golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
||||
golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220408201424-a24fb2fb8a0f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220503163025-988cb79eb6c6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
|
||||
golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
|
||||
golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
|
||||
golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik=
|
||||
golang.org/x/sys v0.31.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/telemetry v0.0.0-20240228155512-f48c80bd79b2/go.mod h1:TeRTkGYfJXctD9OcfyVLyj2J3IxLnKwHJR8f4D8a3YE=
|
||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
|
||||
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
|
||||
golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo=
|
||||
golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU=
|
||||
golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk=
|
||||
golang.org/x/term v0.20.0/go.mod h1:8UkIAJTvZgivsXaD6/pH6U9ecQzZ45awqEOzuCvwpFY=
|
||||
golang.org/x/term v0.27.0/go.mod h1:iMsnZpn0cago0GOrHO2+Y7u7JPn5AylBrcoWkElMTSM=
|
||||
golang.org/x/term v0.30.0 h1:PQ39fJZ+mfadBm0y5WlL4vlM7Sx1Hgf13sMIY2+QS9Y=
|
||||
golang.org/x/term v0.30.0/go.mod h1:NYYFdzHoI5wRh/h5tDMdMqCqPJZEuNqVR5xJLd/n67g=
|
||||
golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
|
||||
golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
||||
golang.org/x/term v0.37.0 h1:8EGAD0qCmHYZg6J17DvsMy9/wJ7/D/4pV/wfnld5lTU=
|
||||
golang.org/x/term v0.37.0/go.mod h1:5pB4lxRNYYVZuTLmy8oR2BH8dflOR+IbTYFD8fi3254=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
|
||||
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
|
||||
golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
|
||||
golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
|
||||
golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
|
||||
golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
|
||||
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
|
||||
golang.org/x/text v0.23.0 h1:D71I7dUrlY+VX0gQShAThNGHFxZ13dGLBHQLVl1mJlY=
|
||||
golang.org/x/text v0.23.0/go.mod h1:/BLNzu4aZCJ1+kcD0DNRotWKage4q2rGVAg4o22unh4=
|
||||
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
|
||||
golang.org/x/text v0.31.0 h1:aC8ghyu4JhP8VojJ2lEHBnochRno1sgL6nEi9WGFGMM=
|
||||
golang.org/x/text v0.31.0/go.mod h1:tKRAlv61yKIjGGHX/4tP1LTbc13YSec1pxVEWXzfoeM=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
|
||||
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
|
||||
golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58=
|
||||
golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk=
|
||||
golang.org/x/tools v0.31.0 h1:0EedkvKDbh+qistFTd0Bcwe/YLh4vHwWEkiI0toFIBU=
|
||||
golang.org/x/tools v0.31.0/go.mod h1:naFTU+Cev749tSJRXJlna0T3WxKvb1kWEx15xA4SdmQ=
|
||||
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/tools v0.39.0 h1:ik4ho21kwuQln40uelmciQPp9SipgNDdrafrYA4TmQQ=
|
||||
golang.org/x/tools v0.39.0/go.mod h1:JnefbkDPyD8UU2kI5fuf8ZX4/yUeh9W877ZeBONxUqQ=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
google.golang.org/appengine v1.6.8 h1:IhEN5q69dyKagZPYMSdIjS2HqprW324FRQZJcGqPAsM=
|
||||
google.golang.org/appengine v1.6.8/go.mod h1:1jJ3jBArFh5pcgW8gCtRJnepW8FzD1V44FJffLiz/Ds=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463 h1:e0AIkUUhxyBKh6ssZNrAMeqhA7RKUj42346d1y02i2g=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250324211829-b45e905df463/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.71.0 h1:kF77BGdPTQ4/JZWMlb9VpJ5pa25aqvVqogsxNHHdeBg=
|
||||
google.golang.org/grpc v1.71.0/go.mod h1:H0GRtasmQOh9LkFoCPDu3ZrwUtD1YGE+b2vYBYd/8Ec=
|
||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20251124214823-79d6a2a48846 h1:Wgl1rcDNThT+Zn47YyCXOXyX/COgMTIdhJ717F0l4xk=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20251124214823-79d6a2a48846/go.mod h1:7i2o+ce6H/6BluujYR+kqX3GKH+dChPTQU19wjRPiGk=
|
||||
google.golang.org/grpc v1.77.0 h1:wVVY6/8cGA6vvffn+wWK5ToddbgdU3d8MNENr4evgXM=
|
||||
google.golang.org/grpc v1.77.0/go.mod h1:z0BY1iVj0q8E1uSQCjL9cppRj+gnZjzDnzV0dHhrNig=
|
||||
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
|
||||
google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
|
||||
google.golang.org/protobuf v1.36.10 h1:AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aOOE=
|
||||
google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
||||
gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys=
|
||||
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=
|
||||
gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
|
||||
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
|
||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
gopkg.in/yaml.v3 v3.0.0-20200605160147-a5ece683394c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
|
||||
6
sdk/go.mod
generated
6
sdk/go.mod
generated
@@ -1,8 +1,6 @@
|
||||
module github.com/pulumi/pulumi-xyz/sdk
|
||||
module git.kalinow.ski/nimbus/pulumi-incus/sdk
|
||||
|
||||
go 1.22
|
||||
|
||||
toolchain go1.22.11
|
||||
go 1.25.4
|
||||
|
||||
require (
|
||||
github.com/blang/semver v3.5.1+incompatible
|
||||
|
||||
0
sdk/go/Pulumi.yaml
generated
Normal file
0
sdk/go/Pulumi.yaml
generated
Normal file
334
sdk/go/incus/certificate.go
generated
Normal file
334
sdk/go/incus/certificate.go
generated
Normal file
@@ -0,0 +1,334 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"errors"
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
// ## # Certificate
|
||||
//
|
||||
// Manages an Incus certificate.
|
||||
type Certificate struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// **Required** - The certificate.
|
||||
Certificate pulumi.StringOutput `pulumi:"certificate"`
|
||||
// *Optional* - Description of the certificate.
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// The fingerprint of the certificate.
|
||||
Fingerprint pulumi.StringOutput `pulumi:"fingerprint"`
|
||||
// **Required** - Name of the certificate.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// *Optional* - List of projects to restrict the certificate to.
|
||||
Projects pulumi.StringArrayOutput `pulumi:"projects"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
// *Optional* - Restrict the certificate to one or more projects.
|
||||
Restricted pulumi.BoolOutput `pulumi:"restricted"`
|
||||
// *Optional* - The type of certificate to create. Can be one of: client,
|
||||
// or metrics. If no type is specified, a client certificate is created.
|
||||
Type pulumi.StringOutput `pulumi:"type"`
|
||||
}
|
||||
|
||||
// NewCertificate registers a new resource with the given unique name, arguments, and options.
|
||||
func NewCertificate(ctx *pulumi.Context,
|
||||
name string, args *CertificateArgs, opts ...pulumi.ResourceOption) (*Certificate, error) {
|
||||
if args == nil {
|
||||
return nil, errors.New("missing one or more required arguments")
|
||||
}
|
||||
|
||||
if args.Certificate == nil {
|
||||
return nil, errors.New("invalid value for required argument 'Certificate'")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource Certificate
|
||||
err := ctx.RegisterResource("incus:index/certificate:Certificate", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetCertificate gets an existing Certificate resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetCertificate(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *CertificateState, opts ...pulumi.ResourceOption) (*Certificate, error) {
|
||||
var resource Certificate
|
||||
err := ctx.ReadResource("incus:index/certificate:Certificate", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering Certificate resources.
|
||||
type certificateState struct {
|
||||
// **Required** - The certificate.
|
||||
Certificate *string `pulumi:"certificate"`
|
||||
// *Optional* - Description of the certificate.
|
||||
Description *string `pulumi:"description"`
|
||||
// The fingerprint of the certificate.
|
||||
Fingerprint *string `pulumi:"fingerprint"`
|
||||
// **Required** - Name of the certificate.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - List of projects to restrict the certificate to.
|
||||
Projects []string `pulumi:"projects"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Restrict the certificate to one or more projects.
|
||||
Restricted *bool `pulumi:"restricted"`
|
||||
// *Optional* - The type of certificate to create. Can be one of: client,
|
||||
// or metrics. If no type is specified, a client certificate is created.
|
||||
Type *string `pulumi:"type"`
|
||||
}
|
||||
|
||||
type CertificateState struct {
|
||||
// **Required** - The certificate.
|
||||
Certificate pulumi.StringPtrInput
|
||||
// *Optional* - Description of the certificate.
|
||||
Description pulumi.StringPtrInput
|
||||
// The fingerprint of the certificate.
|
||||
Fingerprint pulumi.StringPtrInput
|
||||
// **Required** - Name of the certificate.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - List of projects to restrict the certificate to.
|
||||
Projects pulumi.StringArrayInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Restrict the certificate to one or more projects.
|
||||
Restricted pulumi.BoolPtrInput
|
||||
// *Optional* - The type of certificate to create. Can be one of: client,
|
||||
// or metrics. If no type is specified, a client certificate is created.
|
||||
Type pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (CertificateState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*certificateState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type certificateArgs struct {
|
||||
// **Required** - The certificate.
|
||||
Certificate string `pulumi:"certificate"`
|
||||
// *Optional* - Description of the certificate.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the certificate.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - List of projects to restrict the certificate to.
|
||||
Projects []string `pulumi:"projects"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Restrict the certificate to one or more projects.
|
||||
Restricted *bool `pulumi:"restricted"`
|
||||
// *Optional* - The type of certificate to create. Can be one of: client,
|
||||
// or metrics. If no type is specified, a client certificate is created.
|
||||
Type *string `pulumi:"type"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a Certificate resource.
|
||||
type CertificateArgs struct {
|
||||
// **Required** - The certificate.
|
||||
Certificate pulumi.StringInput
|
||||
// *Optional* - Description of the certificate.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the certificate.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - List of projects to restrict the certificate to.
|
||||
Projects pulumi.StringArrayInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Restrict the certificate to one or more projects.
|
||||
Restricted pulumi.BoolPtrInput
|
||||
// *Optional* - The type of certificate to create. Can be one of: client,
|
||||
// or metrics. If no type is specified, a client certificate is created.
|
||||
Type pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (CertificateArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*certificateArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type CertificateInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToCertificateOutput() CertificateOutput
|
||||
ToCertificateOutputWithContext(ctx context.Context) CertificateOutput
|
||||
}
|
||||
|
||||
func (*Certificate) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Certificate)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *Certificate) ToCertificateOutput() CertificateOutput {
|
||||
return i.ToCertificateOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *Certificate) ToCertificateOutputWithContext(ctx context.Context) CertificateOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(CertificateOutput)
|
||||
}
|
||||
|
||||
// CertificateArrayInput is an input type that accepts CertificateArray and CertificateArrayOutput values.
|
||||
// You can construct a concrete instance of `CertificateArrayInput` via:
|
||||
//
|
||||
// CertificateArray{ CertificateArgs{...} }
|
||||
type CertificateArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToCertificateArrayOutput() CertificateArrayOutput
|
||||
ToCertificateArrayOutputWithContext(context.Context) CertificateArrayOutput
|
||||
}
|
||||
|
||||
type CertificateArray []CertificateInput
|
||||
|
||||
func (CertificateArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*Certificate)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i CertificateArray) ToCertificateArrayOutput() CertificateArrayOutput {
|
||||
return i.ToCertificateArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i CertificateArray) ToCertificateArrayOutputWithContext(ctx context.Context) CertificateArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(CertificateArrayOutput)
|
||||
}
|
||||
|
||||
// CertificateMapInput is an input type that accepts CertificateMap and CertificateMapOutput values.
|
||||
// You can construct a concrete instance of `CertificateMapInput` via:
|
||||
//
|
||||
// CertificateMap{ "key": CertificateArgs{...} }
|
||||
type CertificateMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToCertificateMapOutput() CertificateMapOutput
|
||||
ToCertificateMapOutputWithContext(context.Context) CertificateMapOutput
|
||||
}
|
||||
|
||||
type CertificateMap map[string]CertificateInput
|
||||
|
||||
func (CertificateMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*Certificate)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i CertificateMap) ToCertificateMapOutput() CertificateMapOutput {
|
||||
return i.ToCertificateMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i CertificateMap) ToCertificateMapOutputWithContext(ctx context.Context) CertificateMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(CertificateMapOutput)
|
||||
}
|
||||
|
||||
type CertificateOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (CertificateOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Certificate)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o CertificateOutput) ToCertificateOutput() CertificateOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o CertificateOutput) ToCertificateOutputWithContext(ctx context.Context) CertificateOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// **Required** - The certificate.
|
||||
func (o CertificateOutput) Certificate() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Certificate) pulumi.StringOutput { return v.Certificate }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the certificate.
|
||||
func (o CertificateOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Certificate) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// The fingerprint of the certificate.
|
||||
func (o CertificateOutput) Fingerprint() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Certificate) pulumi.StringOutput { return v.Fingerprint }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the certificate.
|
||||
func (o CertificateOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Certificate) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - List of projects to restrict the certificate to.
|
||||
func (o CertificateOutput) Projects() pulumi.StringArrayOutput {
|
||||
return o.ApplyT(func(v *Certificate) pulumi.StringArrayOutput { return v.Projects }).(pulumi.StringArrayOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o CertificateOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *Certificate) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Restrict the certificate to one or more projects.
|
||||
func (o CertificateOutput) Restricted() pulumi.BoolOutput {
|
||||
return o.ApplyT(func(v *Certificate) pulumi.BoolOutput { return v.Restricted }).(pulumi.BoolOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The type of certificate to create. Can be one of: client,
|
||||
// or metrics. If no type is specified, a client certificate is created.
|
||||
func (o CertificateOutput) Type() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Certificate) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
type CertificateArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (CertificateArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*Certificate)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o CertificateArrayOutput) ToCertificateArrayOutput() CertificateArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o CertificateArrayOutput) ToCertificateArrayOutputWithContext(ctx context.Context) CertificateArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o CertificateArrayOutput) Index(i pulumi.IntInput) CertificateOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Certificate {
|
||||
return vs[0].([]*Certificate)[vs[1].(int)]
|
||||
}).(CertificateOutput)
|
||||
}
|
||||
|
||||
type CertificateMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (CertificateMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*Certificate)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o CertificateMapOutput) ToCertificateMapOutput() CertificateMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o CertificateMapOutput) ToCertificateMapOutputWithContext(ctx context.Context) CertificateMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o CertificateMapOutput) MapIndex(k pulumi.StringInput) CertificateOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Certificate {
|
||||
return vs[0].(map[string]*Certificate)[vs[1].(string)]
|
||||
}).(CertificateOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*CertificateInput)(nil)).Elem(), &Certificate{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*CertificateArrayInput)(nil)).Elem(), CertificateArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*CertificateMapInput)(nil)).Elem(), CertificateMap{})
|
||||
pulumi.RegisterOutputType(CertificateOutput{})
|
||||
pulumi.RegisterOutputType(CertificateArrayOutput{})
|
||||
pulumi.RegisterOutputType(CertificateMapOutput{})
|
||||
}
|
||||
265
sdk/go/incus/clusterGroup.go
generated
Normal file
265
sdk/go/incus/clusterGroup.go
generated
Normal file
@@ -0,0 +1,265 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type ClusterGroup struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [cluster group config settings](https://linuxcontainers.org/incus/docs/main/howto/cluster_groups/#configuration-options).
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// **Required** - Name of the cluster group.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// NewClusterGroup registers a new resource with the given unique name, arguments, and options.
|
||||
func NewClusterGroup(ctx *pulumi.Context,
|
||||
name string, args *ClusterGroupArgs, opts ...pulumi.ResourceOption) (*ClusterGroup, error) {
|
||||
if args == nil {
|
||||
args = &ClusterGroupArgs{}
|
||||
}
|
||||
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource ClusterGroup
|
||||
err := ctx.RegisterResource("incus:index/clusterGroup:ClusterGroup", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetClusterGroup gets an existing ClusterGroup resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetClusterGroup(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *ClusterGroupState, opts ...pulumi.ResourceOption) (*ClusterGroup, error) {
|
||||
var resource ClusterGroup
|
||||
err := ctx.ReadResource("incus:index/clusterGroup:ClusterGroup", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering ClusterGroup resources.
|
||||
type clusterGroupState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [cluster group config settings](https://linuxcontainers.org/incus/docs/main/howto/cluster_groups/#configuration-options).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the cluster group.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
type ClusterGroupState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [cluster group config settings](https://linuxcontainers.org/incus/docs/main/howto/cluster_groups/#configuration-options).
|
||||
Config pulumi.StringMapInput
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the cluster group.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (ClusterGroupState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*clusterGroupState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type clusterGroupArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [cluster group config settings](https://linuxcontainers.org/incus/docs/main/howto/cluster_groups/#configuration-options).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the cluster group.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a ClusterGroup resource.
|
||||
type ClusterGroupArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [cluster group config settings](https://linuxcontainers.org/incus/docs/main/howto/cluster_groups/#configuration-options).
|
||||
Config pulumi.StringMapInput
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the cluster group.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (ClusterGroupArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*clusterGroupArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type ClusterGroupInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToClusterGroupOutput() ClusterGroupOutput
|
||||
ToClusterGroupOutputWithContext(ctx context.Context) ClusterGroupOutput
|
||||
}
|
||||
|
||||
func (*ClusterGroup) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**ClusterGroup)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *ClusterGroup) ToClusterGroupOutput() ClusterGroupOutput {
|
||||
return i.ToClusterGroupOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *ClusterGroup) ToClusterGroupOutputWithContext(ctx context.Context) ClusterGroupOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ClusterGroupOutput)
|
||||
}
|
||||
|
||||
// ClusterGroupArrayInput is an input type that accepts ClusterGroupArray and ClusterGroupArrayOutput values.
|
||||
// You can construct a concrete instance of `ClusterGroupArrayInput` via:
|
||||
//
|
||||
// ClusterGroupArray{ ClusterGroupArgs{...} }
|
||||
type ClusterGroupArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToClusterGroupArrayOutput() ClusterGroupArrayOutput
|
||||
ToClusterGroupArrayOutputWithContext(context.Context) ClusterGroupArrayOutput
|
||||
}
|
||||
|
||||
type ClusterGroupArray []ClusterGroupInput
|
||||
|
||||
func (ClusterGroupArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*ClusterGroup)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i ClusterGroupArray) ToClusterGroupArrayOutput() ClusterGroupArrayOutput {
|
||||
return i.ToClusterGroupArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i ClusterGroupArray) ToClusterGroupArrayOutputWithContext(ctx context.Context) ClusterGroupArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ClusterGroupArrayOutput)
|
||||
}
|
||||
|
||||
// ClusterGroupMapInput is an input type that accepts ClusterGroupMap and ClusterGroupMapOutput values.
|
||||
// You can construct a concrete instance of `ClusterGroupMapInput` via:
|
||||
//
|
||||
// ClusterGroupMap{ "key": ClusterGroupArgs{...} }
|
||||
type ClusterGroupMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToClusterGroupMapOutput() ClusterGroupMapOutput
|
||||
ToClusterGroupMapOutputWithContext(context.Context) ClusterGroupMapOutput
|
||||
}
|
||||
|
||||
type ClusterGroupMap map[string]ClusterGroupInput
|
||||
|
||||
func (ClusterGroupMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*ClusterGroup)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i ClusterGroupMap) ToClusterGroupMapOutput() ClusterGroupMapOutput {
|
||||
return i.ToClusterGroupMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i ClusterGroupMap) ToClusterGroupMapOutputWithContext(ctx context.Context) ClusterGroupMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ClusterGroupMapOutput)
|
||||
}
|
||||
|
||||
type ClusterGroupOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ClusterGroupOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**ClusterGroup)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ClusterGroupOutput) ToClusterGroupOutput() ClusterGroupOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ClusterGroupOutput) ToClusterGroupOutputWithContext(ctx context.Context) ClusterGroupOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [cluster group config settings](https://linuxcontainers.org/incus/docs/main/howto/cluster_groups/#configuration-options).
|
||||
func (o ClusterGroupOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *ClusterGroup) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
func (o ClusterGroupOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *ClusterGroup) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the cluster group.
|
||||
func (o ClusterGroupOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *ClusterGroup) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o ClusterGroupOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *ClusterGroup) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
type ClusterGroupArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ClusterGroupArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*ClusterGroup)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ClusterGroupArrayOutput) ToClusterGroupArrayOutput() ClusterGroupArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ClusterGroupArrayOutput) ToClusterGroupArrayOutputWithContext(ctx context.Context) ClusterGroupArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ClusterGroupArrayOutput) Index(i pulumi.IntInput) ClusterGroupOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ClusterGroup {
|
||||
return vs[0].([]*ClusterGroup)[vs[1].(int)]
|
||||
}).(ClusterGroupOutput)
|
||||
}
|
||||
|
||||
type ClusterGroupMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ClusterGroupMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*ClusterGroup)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ClusterGroupMapOutput) ToClusterGroupMapOutput() ClusterGroupMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ClusterGroupMapOutput) ToClusterGroupMapOutputWithContext(ctx context.Context) ClusterGroupMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ClusterGroupMapOutput) MapIndex(k pulumi.StringInput) ClusterGroupOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ClusterGroup {
|
||||
return vs[0].(map[string]*ClusterGroup)[vs[1].(string)]
|
||||
}).(ClusterGroupOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ClusterGroupInput)(nil)).Elem(), &ClusterGroup{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ClusterGroupArrayInput)(nil)).Elem(), ClusterGroupArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ClusterGroupMapInput)(nil)).Elem(), ClusterGroupMap{})
|
||||
pulumi.RegisterOutputType(ClusterGroupOutput{})
|
||||
pulumi.RegisterOutputType(ClusterGroupArrayOutput{})
|
||||
pulumi.RegisterOutputType(ClusterGroupMapOutput{})
|
||||
}
|
||||
257
sdk/go/incus/clusterGroupAssignment.go
generated
Normal file
257
sdk/go/incus/clusterGroupAssignment.go
generated
Normal file
@@ -0,0 +1,257 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"errors"
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type ClusterGroupAssignment struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// **Required** - Name of the cluster group.
|
||||
ClusterGroup pulumi.StringOutput `pulumi:"clusterGroup"`
|
||||
// **Required** - Name of the cluster group member.
|
||||
Member pulumi.StringOutput `pulumi:"member"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// NewClusterGroupAssignment registers a new resource with the given unique name, arguments, and options.
|
||||
func NewClusterGroupAssignment(ctx *pulumi.Context,
|
||||
name string, args *ClusterGroupAssignmentArgs, opts ...pulumi.ResourceOption) (*ClusterGroupAssignment, error) {
|
||||
if args == nil {
|
||||
return nil, errors.New("missing one or more required arguments")
|
||||
}
|
||||
|
||||
if args.ClusterGroup == nil {
|
||||
return nil, errors.New("invalid value for required argument 'ClusterGroup'")
|
||||
}
|
||||
if args.Member == nil {
|
||||
return nil, errors.New("invalid value for required argument 'Member'")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource ClusterGroupAssignment
|
||||
err := ctx.RegisterResource("incus:index/clusterGroupAssignment:ClusterGroupAssignment", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetClusterGroupAssignment gets an existing ClusterGroupAssignment resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetClusterGroupAssignment(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *ClusterGroupAssignmentState, opts ...pulumi.ResourceOption) (*ClusterGroupAssignment, error) {
|
||||
var resource ClusterGroupAssignment
|
||||
err := ctx.ReadResource("incus:index/clusterGroupAssignment:ClusterGroupAssignment", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering ClusterGroupAssignment resources.
|
||||
type clusterGroupAssignmentState struct {
|
||||
// **Required** - Name of the cluster group.
|
||||
ClusterGroup *string `pulumi:"clusterGroup"`
|
||||
// **Required** - Name of the cluster group member.
|
||||
Member *string `pulumi:"member"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
type ClusterGroupAssignmentState struct {
|
||||
// **Required** - Name of the cluster group.
|
||||
ClusterGroup pulumi.StringPtrInput
|
||||
// **Required** - Name of the cluster group member.
|
||||
Member pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (ClusterGroupAssignmentState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*clusterGroupAssignmentState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type clusterGroupAssignmentArgs struct {
|
||||
// **Required** - Name of the cluster group.
|
||||
ClusterGroup string `pulumi:"clusterGroup"`
|
||||
// **Required** - Name of the cluster group member.
|
||||
Member string `pulumi:"member"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a ClusterGroupAssignment resource.
|
||||
type ClusterGroupAssignmentArgs struct {
|
||||
// **Required** - Name of the cluster group.
|
||||
ClusterGroup pulumi.StringInput
|
||||
// **Required** - Name of the cluster group member.
|
||||
Member pulumi.StringInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (ClusterGroupAssignmentArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*clusterGroupAssignmentArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type ClusterGroupAssignmentInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToClusterGroupAssignmentOutput() ClusterGroupAssignmentOutput
|
||||
ToClusterGroupAssignmentOutputWithContext(ctx context.Context) ClusterGroupAssignmentOutput
|
||||
}
|
||||
|
||||
func (*ClusterGroupAssignment) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**ClusterGroupAssignment)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *ClusterGroupAssignment) ToClusterGroupAssignmentOutput() ClusterGroupAssignmentOutput {
|
||||
return i.ToClusterGroupAssignmentOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *ClusterGroupAssignment) ToClusterGroupAssignmentOutputWithContext(ctx context.Context) ClusterGroupAssignmentOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ClusterGroupAssignmentOutput)
|
||||
}
|
||||
|
||||
// ClusterGroupAssignmentArrayInput is an input type that accepts ClusterGroupAssignmentArray and ClusterGroupAssignmentArrayOutput values.
|
||||
// You can construct a concrete instance of `ClusterGroupAssignmentArrayInput` via:
|
||||
//
|
||||
// ClusterGroupAssignmentArray{ ClusterGroupAssignmentArgs{...} }
|
||||
type ClusterGroupAssignmentArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToClusterGroupAssignmentArrayOutput() ClusterGroupAssignmentArrayOutput
|
||||
ToClusterGroupAssignmentArrayOutputWithContext(context.Context) ClusterGroupAssignmentArrayOutput
|
||||
}
|
||||
|
||||
type ClusterGroupAssignmentArray []ClusterGroupAssignmentInput
|
||||
|
||||
func (ClusterGroupAssignmentArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*ClusterGroupAssignment)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i ClusterGroupAssignmentArray) ToClusterGroupAssignmentArrayOutput() ClusterGroupAssignmentArrayOutput {
|
||||
return i.ToClusterGroupAssignmentArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i ClusterGroupAssignmentArray) ToClusterGroupAssignmentArrayOutputWithContext(ctx context.Context) ClusterGroupAssignmentArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ClusterGroupAssignmentArrayOutput)
|
||||
}
|
||||
|
||||
// ClusterGroupAssignmentMapInput is an input type that accepts ClusterGroupAssignmentMap and ClusterGroupAssignmentMapOutput values.
|
||||
// You can construct a concrete instance of `ClusterGroupAssignmentMapInput` via:
|
||||
//
|
||||
// ClusterGroupAssignmentMap{ "key": ClusterGroupAssignmentArgs{...} }
|
||||
type ClusterGroupAssignmentMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToClusterGroupAssignmentMapOutput() ClusterGroupAssignmentMapOutput
|
||||
ToClusterGroupAssignmentMapOutputWithContext(context.Context) ClusterGroupAssignmentMapOutput
|
||||
}
|
||||
|
||||
type ClusterGroupAssignmentMap map[string]ClusterGroupAssignmentInput
|
||||
|
||||
func (ClusterGroupAssignmentMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*ClusterGroupAssignment)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i ClusterGroupAssignmentMap) ToClusterGroupAssignmentMapOutput() ClusterGroupAssignmentMapOutput {
|
||||
return i.ToClusterGroupAssignmentMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i ClusterGroupAssignmentMap) ToClusterGroupAssignmentMapOutputWithContext(ctx context.Context) ClusterGroupAssignmentMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ClusterGroupAssignmentMapOutput)
|
||||
}
|
||||
|
||||
type ClusterGroupAssignmentOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ClusterGroupAssignmentOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**ClusterGroupAssignment)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ClusterGroupAssignmentOutput) ToClusterGroupAssignmentOutput() ClusterGroupAssignmentOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ClusterGroupAssignmentOutput) ToClusterGroupAssignmentOutputWithContext(ctx context.Context) ClusterGroupAssignmentOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// **Required** - Name of the cluster group.
|
||||
func (o ClusterGroupAssignmentOutput) ClusterGroup() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *ClusterGroupAssignment) pulumi.StringOutput { return v.ClusterGroup }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the cluster group member.
|
||||
func (o ClusterGroupAssignmentOutput) Member() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *ClusterGroupAssignment) pulumi.StringOutput { return v.Member }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o ClusterGroupAssignmentOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *ClusterGroupAssignment) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
type ClusterGroupAssignmentArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ClusterGroupAssignmentArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*ClusterGroupAssignment)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ClusterGroupAssignmentArrayOutput) ToClusterGroupAssignmentArrayOutput() ClusterGroupAssignmentArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ClusterGroupAssignmentArrayOutput) ToClusterGroupAssignmentArrayOutputWithContext(ctx context.Context) ClusterGroupAssignmentArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ClusterGroupAssignmentArrayOutput) Index(i pulumi.IntInput) ClusterGroupAssignmentOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ClusterGroupAssignment {
|
||||
return vs[0].([]*ClusterGroupAssignment)[vs[1].(int)]
|
||||
}).(ClusterGroupAssignmentOutput)
|
||||
}
|
||||
|
||||
type ClusterGroupAssignmentMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ClusterGroupAssignmentMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*ClusterGroupAssignment)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ClusterGroupAssignmentMapOutput) ToClusterGroupAssignmentMapOutput() ClusterGroupAssignmentMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ClusterGroupAssignmentMapOutput) ToClusterGroupAssignmentMapOutputWithContext(ctx context.Context) ClusterGroupAssignmentMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ClusterGroupAssignmentMapOutput) MapIndex(k pulumi.StringInput) ClusterGroupAssignmentOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ClusterGroupAssignment {
|
||||
return vs[0].(map[string]*ClusterGroupAssignment)[vs[1].(string)]
|
||||
}).(ClusterGroupAssignmentOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ClusterGroupAssignmentInput)(nil)).Elem(), &ClusterGroupAssignment{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ClusterGroupAssignmentArrayInput)(nil)).Elem(), ClusterGroupAssignmentArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ClusterGroupAssignmentMapInput)(nil)).Elem(), ClusterGroupAssignmentMap{})
|
||||
pulumi.RegisterOutputType(ClusterGroupAssignmentOutput{})
|
||||
pulumi.RegisterOutputType(ClusterGroupAssignmentArrayOutput{})
|
||||
pulumi.RegisterOutputType(ClusterGroupAssignmentMapOutput{})
|
||||
}
|
||||
38
sdk/go/incus/config/config.go
generated
Normal file
38
sdk/go/incus/config/config.go
generated
Normal file
@@ -0,0 +1,38 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package config
|
||||
|
||||
import (
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
|
||||
)
|
||||
|
||||
var _ = internal.GetEnvOrDefault
|
||||
|
||||
// Accept the server certificate.
|
||||
func GetAcceptRemoteCertificate(ctx *pulumi.Context) bool {
|
||||
return config.GetBool(ctx, "incus:acceptRemoteCertificate")
|
||||
}
|
||||
|
||||
// The directory to look for existing Incus configuration. (default = $HOME/.config/incus)
|
||||
func GetConfigDir(ctx *pulumi.Context) string {
|
||||
return config.Get(ctx, "incus:configDir")
|
||||
}
|
||||
|
||||
// Automatically generate the Incus client certificates if they don't exist.
|
||||
func GetGenerateClientCertificates(ctx *pulumi.Context) bool {
|
||||
return config.GetBool(ctx, "incus:generateClientCertificates")
|
||||
}
|
||||
|
||||
// The project where project-scoped resources will be created. Can be overridden in individual resources. (default =
|
||||
// default)
|
||||
func GetProject(ctx *pulumi.Context) string {
|
||||
return config.Get(ctx, "incus:project")
|
||||
}
|
||||
|
||||
// Incus Remote
|
||||
func GetRemotes(ctx *pulumi.Context) string {
|
||||
return config.Get(ctx, "incus:remotes")
|
||||
}
|
||||
163
sdk/go/incus/config/pulumiTypes.go
generated
Normal file
163
sdk/go/incus/config/pulumiTypes.go
generated
Normal file
@@ -0,0 +1,163 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package config
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
var _ = internal.GetEnvOrDefault
|
||||
|
||||
type Remotes struct {
|
||||
// The FQDN or IP where the Incus daemon can be contacted. (default = "" (read from lxc config))
|
||||
Address *string `pulumi:"address"`
|
||||
// Set this remote as default.
|
||||
Default *bool `pulumi:"default"`
|
||||
// Name of the Incus remote. Required when incusScheme set to https, to enable locating server certificate.
|
||||
Name string `pulumi:"name"`
|
||||
// Port Incus Daemon API is listening on. (default = 8443)
|
||||
Port *string `pulumi:"port"`
|
||||
// Unix (unix) or HTTPs (https). (default = unix)
|
||||
Scheme *string `pulumi:"scheme"`
|
||||
// The trust token for the remote.
|
||||
Token *string `pulumi:"token"`
|
||||
}
|
||||
|
||||
// RemotesInput is an input type that accepts RemotesArgs and RemotesOutput values.
|
||||
// You can construct a concrete instance of `RemotesInput` via:
|
||||
//
|
||||
// RemotesArgs{...}
|
||||
type RemotesInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToRemotesOutput() RemotesOutput
|
||||
ToRemotesOutputWithContext(context.Context) RemotesOutput
|
||||
}
|
||||
|
||||
type RemotesArgs struct {
|
||||
// The FQDN or IP where the Incus daemon can be contacted. (default = "" (read from lxc config))
|
||||
Address pulumi.StringPtrInput `pulumi:"address"`
|
||||
// Set this remote as default.
|
||||
Default pulumi.BoolPtrInput `pulumi:"default"`
|
||||
// Name of the Incus remote. Required when incusScheme set to https, to enable locating server certificate.
|
||||
Name pulumi.StringInput `pulumi:"name"`
|
||||
// Port Incus Daemon API is listening on. (default = 8443)
|
||||
Port pulumi.StringPtrInput `pulumi:"port"`
|
||||
// Unix (unix) or HTTPs (https). (default = unix)
|
||||
Scheme pulumi.StringPtrInput `pulumi:"scheme"`
|
||||
// The trust token for the remote.
|
||||
Token pulumi.StringPtrInput `pulumi:"token"`
|
||||
}
|
||||
|
||||
func (RemotesArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*Remotes)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i RemotesArgs) ToRemotesOutput() RemotesOutput {
|
||||
return i.ToRemotesOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i RemotesArgs) ToRemotesOutputWithContext(ctx context.Context) RemotesOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(RemotesOutput)
|
||||
}
|
||||
|
||||
// RemotesArrayInput is an input type that accepts RemotesArray and RemotesArrayOutput values.
|
||||
// You can construct a concrete instance of `RemotesArrayInput` via:
|
||||
//
|
||||
// RemotesArray{ RemotesArgs{...} }
|
||||
type RemotesArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToRemotesArrayOutput() RemotesArrayOutput
|
||||
ToRemotesArrayOutputWithContext(context.Context) RemotesArrayOutput
|
||||
}
|
||||
|
||||
type RemotesArray []RemotesInput
|
||||
|
||||
func (RemotesArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]Remotes)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i RemotesArray) ToRemotesArrayOutput() RemotesArrayOutput {
|
||||
return i.ToRemotesArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i RemotesArray) ToRemotesArrayOutputWithContext(ctx context.Context) RemotesArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(RemotesArrayOutput)
|
||||
}
|
||||
|
||||
type RemotesOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (RemotesOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*Remotes)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o RemotesOutput) ToRemotesOutput() RemotesOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o RemotesOutput) ToRemotesOutputWithContext(ctx context.Context) RemotesOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// The FQDN or IP where the Incus daemon can be contacted. (default = "" (read from lxc config))
|
||||
func (o RemotesOutput) Address() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v Remotes) *string { return v.Address }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// Set this remote as default.
|
||||
func (o RemotesOutput) Default() pulumi.BoolPtrOutput {
|
||||
return o.ApplyT(func(v Remotes) *bool { return v.Default }).(pulumi.BoolPtrOutput)
|
||||
}
|
||||
|
||||
// Name of the Incus remote. Required when incusScheme set to https, to enable locating server certificate.
|
||||
func (o RemotesOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v Remotes) string { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// Port Incus Daemon API is listening on. (default = 8443)
|
||||
func (o RemotesOutput) Port() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v Remotes) *string { return v.Port }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// Unix (unix) or HTTPs (https). (default = unix)
|
||||
func (o RemotesOutput) Scheme() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v Remotes) *string { return v.Scheme }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// The trust token for the remote.
|
||||
func (o RemotesOutput) Token() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v Remotes) *string { return v.Token }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
type RemotesArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (RemotesArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]Remotes)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o RemotesArrayOutput) ToRemotesArrayOutput() RemotesArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o RemotesArrayOutput) ToRemotesArrayOutputWithContext(ctx context.Context) RemotesArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o RemotesArrayOutput) Index(i pulumi.IntInput) RemotesOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) Remotes {
|
||||
return vs[0].([]Remotes)[vs[1].(int)]
|
||||
}).(RemotesOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*RemotesInput)(nil)).Elem(), RemotesArgs{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*RemotesArrayInput)(nil)).Elem(), RemotesArray{})
|
||||
pulumi.RegisterOutputType(RemotesOutput{})
|
||||
pulumi.RegisterOutputType(RemotesArrayOutput{})
|
||||
}
|
||||
2
sdk/go/incus/doc.go
generated
Normal file
2
sdk/go/incus/doc.go
generated
Normal file
@@ -0,0 +1,2 @@
|
||||
// A Pulumi package for creating and managing incus cloud resources.
|
||||
package incus
|
||||
179
sdk/go/incus/getImage.go
generated
Normal file
179
sdk/go/incus/getImage.go
generated
Normal file
@@ -0,0 +1,179 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
// ## # Image
|
||||
//
|
||||
// Provides information about an Incus image.
|
||||
//
|
||||
// ## Example Usage
|
||||
//
|
||||
// ```go
|
||||
// package main
|
||||
//
|
||||
// import (
|
||||
//
|
||||
// "git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus"
|
||||
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
//
|
||||
// )
|
||||
//
|
||||
// func main() {
|
||||
// pulumi.Run(func(ctx *pulumi.Context) error {
|
||||
// debianCustom, err := incus.LookupImage(ctx, &incus.LookupImageArgs{
|
||||
// Name: pulumi.StringRef("debian_custom"),
|
||||
// }, nil)
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// _, err = incus.NewInstance(ctx, "d1", &incus.InstanceArgs{
|
||||
// Image: pulumi.String(debianCustom.Fingerprint),
|
||||
// Name: pulumi.String("d1"),
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
// })
|
||||
// }
|
||||
//
|
||||
// ```
|
||||
func LookupImage(ctx *pulumi.Context, args *LookupImageArgs, opts ...pulumi.InvokeOption) (*LookupImageResult, error) {
|
||||
opts = internal.PkgInvokeDefaultOpts(opts)
|
||||
var rv LookupImageResult
|
||||
err := ctx.Invoke("incus:index/getImage:getImage", args, &rv, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &rv, nil
|
||||
}
|
||||
|
||||
// A collection of arguments for invoking getImage.
|
||||
type LookupImageArgs struct {
|
||||
// *Optional* - The image architecture (e.g. x86_64, aarch64). See [Architectures](https://linuxcontainers.org/incus/docs/main/architectures/) for all possible values.
|
||||
Architecture *string `pulumi:"architecture"`
|
||||
// *Optional* - Fingerprint of the image.
|
||||
Fingerprint *string `pulumi:"fingerprint"`
|
||||
// *Optional* - Name of the image.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the image is stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource was created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Type of image. Must be one of `container` or `virtual-machine`.
|
||||
Type *string `pulumi:"type"`
|
||||
}
|
||||
|
||||
// A collection of values returned by getImage.
|
||||
type LookupImageResult struct {
|
||||
// The list of aliases for the image.
|
||||
Aliases []string `pulumi:"aliases"`
|
||||
Architecture string `pulumi:"architecture"`
|
||||
// The datetime of image creation, in Unix time.
|
||||
CreatedAt int `pulumi:"createdAt"`
|
||||
Fingerprint string `pulumi:"fingerprint"`
|
||||
// The provider-assigned unique ID for this managed resource.
|
||||
Id string `pulumi:"id"`
|
||||
Name *string `pulumi:"name"`
|
||||
Project *string `pulumi:"project"`
|
||||
Remote *string `pulumi:"remote"`
|
||||
Type string `pulumi:"type"`
|
||||
}
|
||||
|
||||
func LookupImageOutput(ctx *pulumi.Context, args LookupImageOutputArgs, opts ...pulumi.InvokeOption) LookupImageResultOutput {
|
||||
return pulumi.ToOutputWithContext(ctx.Context(), args).
|
||||
ApplyT(func(v interface{}) (LookupImageResultOutput, error) {
|
||||
args := v.(LookupImageArgs)
|
||||
options := pulumi.InvokeOutputOptions{InvokeOptions: internal.PkgInvokeDefaultOpts(opts)}
|
||||
return ctx.InvokeOutput("incus:index/getImage:getImage", args, LookupImageResultOutput{}, options).(LookupImageResultOutput), nil
|
||||
}).(LookupImageResultOutput)
|
||||
}
|
||||
|
||||
// A collection of arguments for invoking getImage.
|
||||
type LookupImageOutputArgs struct {
|
||||
// *Optional* - The image architecture (e.g. x86_64, aarch64). See [Architectures](https://linuxcontainers.org/incus/docs/main/architectures/) for all possible values.
|
||||
Architecture pulumi.StringPtrInput `pulumi:"architecture"`
|
||||
// *Optional* - Fingerprint of the image.
|
||||
Fingerprint pulumi.StringPtrInput `pulumi:"fingerprint"`
|
||||
// *Optional* - Name of the image.
|
||||
Name pulumi.StringPtrInput `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the image is stored.
|
||||
Project pulumi.StringPtrInput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource was created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput `pulumi:"remote"`
|
||||
// *Optional* - Type of image. Must be one of `container` or `virtual-machine`.
|
||||
Type pulumi.StringPtrInput `pulumi:"type"`
|
||||
}
|
||||
|
||||
func (LookupImageOutputArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*LookupImageArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
// A collection of values returned by getImage.
|
||||
type LookupImageResultOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (LookupImageResultOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*LookupImageResult)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o LookupImageResultOutput) ToLookupImageResultOutput() LookupImageResultOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o LookupImageResultOutput) ToLookupImageResultOutputWithContext(ctx context.Context) LookupImageResultOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// The list of aliases for the image.
|
||||
func (o LookupImageResultOutput) Aliases() pulumi.StringArrayOutput {
|
||||
return o.ApplyT(func(v LookupImageResult) []string { return v.Aliases }).(pulumi.StringArrayOutput)
|
||||
}
|
||||
|
||||
func (o LookupImageResultOutput) Architecture() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v LookupImageResult) string { return v.Architecture }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// The datetime of image creation, in Unix time.
|
||||
func (o LookupImageResultOutput) CreatedAt() pulumi.IntOutput {
|
||||
return o.ApplyT(func(v LookupImageResult) int { return v.CreatedAt }).(pulumi.IntOutput)
|
||||
}
|
||||
|
||||
func (o LookupImageResultOutput) Fingerprint() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v LookupImageResult) string { return v.Fingerprint }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// The provider-assigned unique ID for this managed resource.
|
||||
func (o LookupImageResultOutput) Id() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v LookupImageResult) string { return v.Id }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
func (o LookupImageResultOutput) Name() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v LookupImageResult) *string { return v.Name }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
func (o LookupImageResultOutput) Project() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v LookupImageResult) *string { return v.Project }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
func (o LookupImageResultOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v LookupImageResult) *string { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
func (o LookupImageResultOutput) Type() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v LookupImageResult) string { return v.Type }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterOutputType(LookupImageResultOutput{})
|
||||
}
|
||||
168
sdk/go/incus/getProfile.go
generated
Normal file
168
sdk/go/incus/getProfile.go
generated
Normal file
@@ -0,0 +1,168 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
// ## # Profile
|
||||
//
|
||||
// Provides information about an Incus profile.
|
||||
//
|
||||
// ## Example Usage
|
||||
//
|
||||
// ```go
|
||||
// package main
|
||||
//
|
||||
// import (
|
||||
//
|
||||
// "git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus"
|
||||
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
//
|
||||
// )
|
||||
//
|
||||
// func main() {
|
||||
// pulumi.Run(func(ctx *pulumi.Context) error {
|
||||
// _default, err := incus.LookupProfile(ctx, &incus.LookupProfileArgs{
|
||||
// Name: "default",
|
||||
// }, nil)
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// _, err = incus.NewInstance(ctx, "d1", &incus.InstanceArgs{
|
||||
// Profiles: pulumi.StringArray{
|
||||
// pulumi.String(_default.Name),
|
||||
// },
|
||||
// Image: pulumi.String("images:debian/12"),
|
||||
// Name: pulumi.String("d1"),
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
// })
|
||||
// }
|
||||
//
|
||||
// ```
|
||||
func LookupProfile(ctx *pulumi.Context, args *LookupProfileArgs, opts ...pulumi.InvokeOption) (*LookupProfileResult, error) {
|
||||
opts = internal.PkgInvokeDefaultOpts(opts)
|
||||
var rv LookupProfileResult
|
||||
err := ctx.Invoke("incus:index/getProfile:getProfile", args, &rv, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &rv, nil
|
||||
}
|
||||
|
||||
// A collection of arguments for invoking getProfile.
|
||||
type LookupProfileArgs struct {
|
||||
// Device definition. See reference below.
|
||||
Devices []GetProfileDevice `pulumi:"devices"`
|
||||
// **Required** - Name of the profile.
|
||||
Name string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the profile will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource was created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// A collection of values returned by getProfile.
|
||||
type LookupProfileResult struct {
|
||||
// Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
Description string `pulumi:"description"`
|
||||
// Device definition. See reference below.
|
||||
Devices []GetProfileDevice `pulumi:"devices"`
|
||||
// The provider-assigned unique ID for this managed resource.
|
||||
Id string `pulumi:"id"`
|
||||
// Name of the device.
|
||||
Name string `pulumi:"name"`
|
||||
Project *string `pulumi:"project"`
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
func LookupProfileOutput(ctx *pulumi.Context, args LookupProfileOutputArgs, opts ...pulumi.InvokeOption) LookupProfileResultOutput {
|
||||
return pulumi.ToOutputWithContext(ctx.Context(), args).
|
||||
ApplyT(func(v interface{}) (LookupProfileResultOutput, error) {
|
||||
args := v.(LookupProfileArgs)
|
||||
options := pulumi.InvokeOutputOptions{InvokeOptions: internal.PkgInvokeDefaultOpts(opts)}
|
||||
return ctx.InvokeOutput("incus:index/getProfile:getProfile", args, LookupProfileResultOutput{}, options).(LookupProfileResultOutput), nil
|
||||
}).(LookupProfileResultOutput)
|
||||
}
|
||||
|
||||
// A collection of arguments for invoking getProfile.
|
||||
type LookupProfileOutputArgs struct {
|
||||
// Device definition. See reference below.
|
||||
Devices GetProfileDeviceArrayInput `pulumi:"devices"`
|
||||
// **Required** - Name of the profile.
|
||||
Name pulumi.StringInput `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the profile will be stored.
|
||||
Project pulumi.StringPtrInput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource was created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput `pulumi:"remote"`
|
||||
}
|
||||
|
||||
func (LookupProfileOutputArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*LookupProfileArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
// A collection of values returned by getProfile.
|
||||
type LookupProfileResultOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (LookupProfileResultOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*LookupProfileResult)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o LookupProfileResultOutput) ToLookupProfileResultOutput() LookupProfileResultOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o LookupProfileResultOutput) ToLookupProfileResultOutputWithContext(ctx context.Context) LookupProfileResultOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
func (o LookupProfileResultOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v LookupProfileResult) map[string]string { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
func (o LookupProfileResultOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v LookupProfileResult) string { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// Device definition. See reference below.
|
||||
func (o LookupProfileResultOutput) Devices() GetProfileDeviceArrayOutput {
|
||||
return o.ApplyT(func(v LookupProfileResult) []GetProfileDevice { return v.Devices }).(GetProfileDeviceArrayOutput)
|
||||
}
|
||||
|
||||
// The provider-assigned unique ID for this managed resource.
|
||||
func (o LookupProfileResultOutput) Id() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v LookupProfileResult) string { return v.Id }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// Name of the device.
|
||||
func (o LookupProfileResultOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v LookupProfileResult) string { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
func (o LookupProfileResultOutput) Project() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v LookupProfileResult) *string { return v.Project }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
func (o LookupProfileResultOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v LookupProfileResult) *string { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterOutputType(LookupProfileResultOutput{})
|
||||
}
|
||||
156
sdk/go/incus/getProject.go
generated
Normal file
156
sdk/go/incus/getProject.go
generated
Normal file
@@ -0,0 +1,156 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
// ## # Project
|
||||
//
|
||||
// Provides information about an Incus project.
|
||||
//
|
||||
// ## Example Usage
|
||||
//
|
||||
// ```go
|
||||
// package main
|
||||
//
|
||||
// import (
|
||||
//
|
||||
// "git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus"
|
||||
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
//
|
||||
// )
|
||||
//
|
||||
// func main() {
|
||||
// pulumi.Run(func(ctx *pulumi.Context) error {
|
||||
// _default, err := incus.LookupProject(ctx, &incus.LookupProjectArgs{
|
||||
// Name: "default",
|
||||
// }, nil)
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// _, err = incus.NewInstance(ctx, "d1", &incus.InstanceArgs{
|
||||
// Project: pulumi.String(_default.Name),
|
||||
// Image: pulumi.String("images:debian/12"),
|
||||
// Name: pulumi.String("d1"),
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
// })
|
||||
// }
|
||||
//
|
||||
// ```
|
||||
func LookupProject(ctx *pulumi.Context, args *LookupProjectArgs, opts ...pulumi.InvokeOption) (*LookupProjectResult, error) {
|
||||
opts = internal.PkgInvokeDefaultOpts(opts)
|
||||
var rv LookupProjectResult
|
||||
err := ctx.Invoke("incus:index/getProject:getProject", args, &rv, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &rv, nil
|
||||
}
|
||||
|
||||
// A collection of arguments for invoking getProject.
|
||||
type LookupProjectArgs struct {
|
||||
// Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// Description of the project.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the project.
|
||||
Name string `pulumi:"name"`
|
||||
// *Optional* - The remote in which the resource was created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// A collection of values returned by getProject.
|
||||
type LookupProjectResult struct {
|
||||
// Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// Description of the project.
|
||||
Description string `pulumi:"description"`
|
||||
// The provider-assigned unique ID for this managed resource.
|
||||
Id string `pulumi:"id"`
|
||||
Name string `pulumi:"name"`
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
func LookupProjectOutput(ctx *pulumi.Context, args LookupProjectOutputArgs, opts ...pulumi.InvokeOption) LookupProjectResultOutput {
|
||||
return pulumi.ToOutputWithContext(ctx.Context(), args).
|
||||
ApplyT(func(v interface{}) (LookupProjectResultOutput, error) {
|
||||
args := v.(LookupProjectArgs)
|
||||
options := pulumi.InvokeOutputOptions{InvokeOptions: internal.PkgInvokeDefaultOpts(opts)}
|
||||
return ctx.InvokeOutput("incus:index/getProject:getProject", args, LookupProjectResultOutput{}, options).(LookupProjectResultOutput), nil
|
||||
}).(LookupProjectResultOutput)
|
||||
}
|
||||
|
||||
// A collection of arguments for invoking getProject.
|
||||
type LookupProjectOutputArgs struct {
|
||||
// Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config pulumi.StringMapInput `pulumi:"config"`
|
||||
// Description of the project.
|
||||
Description pulumi.StringPtrInput `pulumi:"description"`
|
||||
// **Required** - Name of the project.
|
||||
Name pulumi.StringInput `pulumi:"name"`
|
||||
// *Optional* - The remote in which the resource was created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput `pulumi:"remote"`
|
||||
}
|
||||
|
||||
func (LookupProjectOutputArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*LookupProjectArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
// A collection of values returned by getProject.
|
||||
type LookupProjectResultOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (LookupProjectResultOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*LookupProjectResult)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o LookupProjectResultOutput) ToLookupProjectResultOutput() LookupProjectResultOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o LookupProjectResultOutput) ToLookupProjectResultOutputWithContext(ctx context.Context) LookupProjectResultOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
func (o LookupProjectResultOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v LookupProjectResult) map[string]string { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// Description of the project.
|
||||
func (o LookupProjectResultOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v LookupProjectResult) string { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// The provider-assigned unique ID for this managed resource.
|
||||
func (o LookupProjectResultOutput) Id() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v LookupProjectResult) string { return v.Id }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
func (o LookupProjectResultOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v LookupProjectResult) string { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
func (o LookupProjectResultOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v LookupProjectResult) *string { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterOutputType(LookupProjectResultOutput{})
|
||||
}
|
||||
389
sdk/go/incus/image.go
generated
Normal file
389
sdk/go/incus/image.go
generated
Normal file
@@ -0,0 +1,389 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
// ## # Image
|
||||
//
|
||||
// Manages a locally-stored Incus image.
|
||||
//
|
||||
// ## Example Usage
|
||||
//
|
||||
// ```go
|
||||
// package main
|
||||
//
|
||||
// import (
|
||||
//
|
||||
// "git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus"
|
||||
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
//
|
||||
// )
|
||||
//
|
||||
// func main() {
|
||||
// pulumi.Run(func(ctx *pulumi.Context) error {
|
||||
// alpine, err := incus.NewImage(ctx, "alpine", &incus.ImageArgs{
|
||||
// SourceImage: &incus.ImageSourceImageArgs{
|
||||
// Remote: pulumi.String("images"),
|
||||
// Name: pulumi.String("alpine/edge"),
|
||||
// },
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// _, err = incus.NewInstance(ctx, "test1", &incus.InstanceArgs{
|
||||
// Name: pulumi.String("test1"),
|
||||
// Image: alpine.Fingerprint,
|
||||
// Ephemeral: pulumi.Bool(false),
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
// })
|
||||
// }
|
||||
//
|
||||
// ```
|
||||
//
|
||||
// ## Notes
|
||||
//
|
||||
// * See the Incus [documentation](https://linuxcontainers.org/incus/docs/main/howto/images_remote) for more info on default image remotes.
|
||||
type Image struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - A list of aliases to assign to the image after
|
||||
// pulling.
|
||||
Aliases pulumi.StringArrayOutput `pulumi:"aliases"`
|
||||
// The list of aliases that were copied from the
|
||||
// `sourceImage`.
|
||||
CopiedAliases pulumi.StringArrayOutput `pulumi:"copiedAliases"`
|
||||
// The datetime of image creation, in Unix time.
|
||||
CreatedAt pulumi.IntOutput `pulumi:"createdAt"`
|
||||
// The unique hash fingperint of the image.
|
||||
Fingerprint pulumi.StringOutput `pulumi:"fingerprint"`
|
||||
// *Optional* - Name of the project where the image will be stored.
|
||||
Project pulumi.StringPtrOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
ResourceId pulumi.StringOutput `pulumi:"resourceId"`
|
||||
// *Optional* - The image file from the local file system from which the image will be created. See reference below.
|
||||
SourceFile ImageSourceFilePtrOutput `pulumi:"sourceFile"`
|
||||
// *Optional* - The source image from which the image will be created. See reference below.
|
||||
SourceImage ImageSourceImagePtrOutput `pulumi:"sourceImage"`
|
||||
// *Optional* - The source instance from which the image will be created. See reference below.
|
||||
SourceInstance ImageSourceInstancePtrOutput `pulumi:"sourceInstance"`
|
||||
}
|
||||
|
||||
// NewImage registers a new resource with the given unique name, arguments, and options.
|
||||
func NewImage(ctx *pulumi.Context,
|
||||
name string, args *ImageArgs, opts ...pulumi.ResourceOption) (*Image, error) {
|
||||
if args == nil {
|
||||
args = &ImageArgs{}
|
||||
}
|
||||
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource Image
|
||||
err := ctx.RegisterResource("incus:index/image:Image", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetImage gets an existing Image resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetImage(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *ImageState, opts ...pulumi.ResourceOption) (*Image, error) {
|
||||
var resource Image
|
||||
err := ctx.ReadResource("incus:index/image:Image", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering Image resources.
|
||||
type imageState struct {
|
||||
// *Optional* - A list of aliases to assign to the image after
|
||||
// pulling.
|
||||
Aliases []string `pulumi:"aliases"`
|
||||
// The list of aliases that were copied from the
|
||||
// `sourceImage`.
|
||||
CopiedAliases []string `pulumi:"copiedAliases"`
|
||||
// The datetime of image creation, in Unix time.
|
||||
CreatedAt *int `pulumi:"createdAt"`
|
||||
// The unique hash fingperint of the image.
|
||||
Fingerprint *string `pulumi:"fingerprint"`
|
||||
// *Optional* - Name of the project where the image will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
ResourceId *string `pulumi:"resourceId"`
|
||||
// *Optional* - The image file from the local file system from which the image will be created. See reference below.
|
||||
SourceFile *ImageSourceFile `pulumi:"sourceFile"`
|
||||
// *Optional* - The source image from which the image will be created. See reference below.
|
||||
SourceImage *ImageSourceImage `pulumi:"sourceImage"`
|
||||
// *Optional* - The source instance from which the image will be created. See reference below.
|
||||
SourceInstance *ImageSourceInstance `pulumi:"sourceInstance"`
|
||||
}
|
||||
|
||||
type ImageState struct {
|
||||
// *Optional* - A list of aliases to assign to the image after
|
||||
// pulling.
|
||||
Aliases pulumi.StringArrayInput
|
||||
// The list of aliases that were copied from the
|
||||
// `sourceImage`.
|
||||
CopiedAliases pulumi.StringArrayInput
|
||||
// The datetime of image creation, in Unix time.
|
||||
CreatedAt pulumi.IntPtrInput
|
||||
// The unique hash fingperint of the image.
|
||||
Fingerprint pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the image will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
ResourceId pulumi.StringPtrInput
|
||||
// *Optional* - The image file from the local file system from which the image will be created. See reference below.
|
||||
SourceFile ImageSourceFilePtrInput
|
||||
// *Optional* - The source image from which the image will be created. See reference below.
|
||||
SourceImage ImageSourceImagePtrInput
|
||||
// *Optional* - The source instance from which the image will be created. See reference below.
|
||||
SourceInstance ImageSourceInstancePtrInput
|
||||
}
|
||||
|
||||
func (ImageState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*imageState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type imageArgs struct {
|
||||
// *Optional* - A list of aliases to assign to the image after
|
||||
// pulling.
|
||||
Aliases []string `pulumi:"aliases"`
|
||||
// *Optional* - Name of the project where the image will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - The image file from the local file system from which the image will be created. See reference below.
|
||||
SourceFile *ImageSourceFile `pulumi:"sourceFile"`
|
||||
// *Optional* - The source image from which the image will be created. See reference below.
|
||||
SourceImage *ImageSourceImage `pulumi:"sourceImage"`
|
||||
// *Optional* - The source instance from which the image will be created. See reference below.
|
||||
SourceInstance *ImageSourceInstance `pulumi:"sourceInstance"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a Image resource.
|
||||
type ImageArgs struct {
|
||||
// *Optional* - A list of aliases to assign to the image after
|
||||
// pulling.
|
||||
Aliases pulumi.StringArrayInput
|
||||
// *Optional* - Name of the project where the image will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - The image file from the local file system from which the image will be created. See reference below.
|
||||
SourceFile ImageSourceFilePtrInput
|
||||
// *Optional* - The source image from which the image will be created. See reference below.
|
||||
SourceImage ImageSourceImagePtrInput
|
||||
// *Optional* - The source instance from which the image will be created. See reference below.
|
||||
SourceInstance ImageSourceInstancePtrInput
|
||||
}
|
||||
|
||||
func (ImageArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*imageArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type ImageInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToImageOutput() ImageOutput
|
||||
ToImageOutputWithContext(ctx context.Context) ImageOutput
|
||||
}
|
||||
|
||||
func (*Image) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Image)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *Image) ToImageOutput() ImageOutput {
|
||||
return i.ToImageOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *Image) ToImageOutputWithContext(ctx context.Context) ImageOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ImageOutput)
|
||||
}
|
||||
|
||||
// ImageArrayInput is an input type that accepts ImageArray and ImageArrayOutput values.
|
||||
// You can construct a concrete instance of `ImageArrayInput` via:
|
||||
//
|
||||
// ImageArray{ ImageArgs{...} }
|
||||
type ImageArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToImageArrayOutput() ImageArrayOutput
|
||||
ToImageArrayOutputWithContext(context.Context) ImageArrayOutput
|
||||
}
|
||||
|
||||
type ImageArray []ImageInput
|
||||
|
||||
func (ImageArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*Image)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i ImageArray) ToImageArrayOutput() ImageArrayOutput {
|
||||
return i.ToImageArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i ImageArray) ToImageArrayOutputWithContext(ctx context.Context) ImageArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ImageArrayOutput)
|
||||
}
|
||||
|
||||
// ImageMapInput is an input type that accepts ImageMap and ImageMapOutput values.
|
||||
// You can construct a concrete instance of `ImageMapInput` via:
|
||||
//
|
||||
// ImageMap{ "key": ImageArgs{...} }
|
||||
type ImageMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToImageMapOutput() ImageMapOutput
|
||||
ToImageMapOutputWithContext(context.Context) ImageMapOutput
|
||||
}
|
||||
|
||||
type ImageMap map[string]ImageInput
|
||||
|
||||
func (ImageMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*Image)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i ImageMap) ToImageMapOutput() ImageMapOutput {
|
||||
return i.ToImageMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i ImageMap) ToImageMapOutputWithContext(ctx context.Context) ImageMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ImageMapOutput)
|
||||
}
|
||||
|
||||
type ImageOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ImageOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Image)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ImageOutput) ToImageOutput() ImageOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ImageOutput) ToImageOutputWithContext(ctx context.Context) ImageOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - A list of aliases to assign to the image after
|
||||
// pulling.
|
||||
func (o ImageOutput) Aliases() pulumi.StringArrayOutput {
|
||||
return o.ApplyT(func(v *Image) pulumi.StringArrayOutput { return v.Aliases }).(pulumi.StringArrayOutput)
|
||||
}
|
||||
|
||||
// The list of aliases that were copied from the
|
||||
// `sourceImage`.
|
||||
func (o ImageOutput) CopiedAliases() pulumi.StringArrayOutput {
|
||||
return o.ApplyT(func(v *Image) pulumi.StringArrayOutput { return v.CopiedAliases }).(pulumi.StringArrayOutput)
|
||||
}
|
||||
|
||||
// The datetime of image creation, in Unix time.
|
||||
func (o ImageOutput) CreatedAt() pulumi.IntOutput {
|
||||
return o.ApplyT(func(v *Image) pulumi.IntOutput { return v.CreatedAt }).(pulumi.IntOutput)
|
||||
}
|
||||
|
||||
// The unique hash fingperint of the image.
|
||||
func (o ImageOutput) Fingerprint() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Image) pulumi.StringOutput { return v.Fingerprint }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the image will be stored.
|
||||
func (o ImageOutput) Project() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *Image) pulumi.StringPtrOutput { return v.Project }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o ImageOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *Image) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
func (o ImageOutput) ResourceId() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Image) pulumi.StringOutput { return v.ResourceId }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The image file from the local file system from which the image will be created. See reference below.
|
||||
func (o ImageOutput) SourceFile() ImageSourceFilePtrOutput {
|
||||
return o.ApplyT(func(v *Image) ImageSourceFilePtrOutput { return v.SourceFile }).(ImageSourceFilePtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The source image from which the image will be created. See reference below.
|
||||
func (o ImageOutput) SourceImage() ImageSourceImagePtrOutput {
|
||||
return o.ApplyT(func(v *Image) ImageSourceImagePtrOutput { return v.SourceImage }).(ImageSourceImagePtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The source instance from which the image will be created. See reference below.
|
||||
func (o ImageOutput) SourceInstance() ImageSourceInstancePtrOutput {
|
||||
return o.ApplyT(func(v *Image) ImageSourceInstancePtrOutput { return v.SourceInstance }).(ImageSourceInstancePtrOutput)
|
||||
}
|
||||
|
||||
type ImageArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ImageArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*Image)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ImageArrayOutput) ToImageArrayOutput() ImageArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ImageArrayOutput) ToImageArrayOutputWithContext(ctx context.Context) ImageArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ImageArrayOutput) Index(i pulumi.IntInput) ImageOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Image {
|
||||
return vs[0].([]*Image)[vs[1].(int)]
|
||||
}).(ImageOutput)
|
||||
}
|
||||
|
||||
type ImageMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ImageMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*Image)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ImageMapOutput) ToImageMapOutput() ImageMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ImageMapOutput) ToImageMapOutputWithContext(ctx context.Context) ImageMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ImageMapOutput) MapIndex(k pulumi.StringInput) ImageOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Image {
|
||||
return vs[0].(map[string]*Image)[vs[1].(string)]
|
||||
}).(ImageOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ImageInput)(nil)).Elem(), &Image{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ImageArrayInput)(nil)).Elem(), ImageArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ImageMapInput)(nil)).Elem(), ImageMap{})
|
||||
pulumi.RegisterOutputType(ImageOutput{})
|
||||
pulumi.RegisterOutputType(ImageArrayOutput{})
|
||||
pulumi.RegisterOutputType(ImageMapOutput{})
|
||||
}
|
||||
199
sdk/go/incus/init.go
generated
Normal file
199
sdk/go/incus/init.go
generated
Normal file
@@ -0,0 +1,199 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/blang/semver"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type module struct {
|
||||
version semver.Version
|
||||
}
|
||||
|
||||
func (m *module) Version() semver.Version {
|
||||
return m.version
|
||||
}
|
||||
|
||||
func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi.Resource, err error) {
|
||||
switch typ {
|
||||
case "incus:index/certificate:Certificate":
|
||||
r = &Certificate{}
|
||||
case "incus:index/clusterGroup:ClusterGroup":
|
||||
r = &ClusterGroup{}
|
||||
case "incus:index/clusterGroupAssignment:ClusterGroupAssignment":
|
||||
r = &ClusterGroupAssignment{}
|
||||
case "incus:index/image:Image":
|
||||
r = &Image{}
|
||||
case "incus:index/instance:Instance":
|
||||
r = &Instance{}
|
||||
case "incus:index/instanceSnapshot:InstanceSnapshot":
|
||||
r = &InstanceSnapshot{}
|
||||
case "incus:index/network:Network":
|
||||
r = &Network{}
|
||||
case "incus:index/networkAcl:NetworkAcl":
|
||||
r = &NetworkAcl{}
|
||||
case "incus:index/networkForward:NetworkForward":
|
||||
r = &NetworkForward{}
|
||||
case "incus:index/networkIntegration:NetworkIntegration":
|
||||
r = &NetworkIntegration{}
|
||||
case "incus:index/networkLoadBalancer:NetworkLoadBalancer":
|
||||
r = &NetworkLoadBalancer{}
|
||||
case "incus:index/networkPeer:NetworkPeer":
|
||||
r = &NetworkPeer{}
|
||||
case "incus:index/networkZone:NetworkZone":
|
||||
r = &NetworkZone{}
|
||||
case "incus:index/networkZoneRecord:NetworkZoneRecord":
|
||||
r = &NetworkZoneRecord{}
|
||||
case "incus:index/profile:Profile":
|
||||
r = &Profile{}
|
||||
case "incus:index/project:Project":
|
||||
r = &Project{}
|
||||
case "incus:index/storageBucket:StorageBucket":
|
||||
r = &StorageBucket{}
|
||||
case "incus:index/storageBucketKey:StorageBucketKey":
|
||||
r = &StorageBucketKey{}
|
||||
case "incus:index/storagePool:StoragePool":
|
||||
r = &StoragePool{}
|
||||
case "incus:index/storageVolume:StorageVolume":
|
||||
r = &StorageVolume{}
|
||||
default:
|
||||
return nil, fmt.Errorf("unknown resource type: %s", typ)
|
||||
}
|
||||
|
||||
err = ctx.RegisterResource(typ, name, nil, r, pulumi.URN_(urn))
|
||||
return
|
||||
}
|
||||
|
||||
type pkg struct {
|
||||
version semver.Version
|
||||
}
|
||||
|
||||
func (p *pkg) Version() semver.Version {
|
||||
return p.version
|
||||
}
|
||||
|
||||
func (p *pkg) ConstructProvider(ctx *pulumi.Context, name, typ, urn string) (pulumi.ProviderResource, error) {
|
||||
if typ != "pulumi:providers:incus" {
|
||||
return nil, fmt.Errorf("unknown provider type: %s", typ)
|
||||
}
|
||||
|
||||
r := &Provider{}
|
||||
err := ctx.RegisterResource(typ, name, nil, r, pulumi.URN_(urn))
|
||||
return r, err
|
||||
}
|
||||
|
||||
func init() {
|
||||
version, err := internal.PkgVersion()
|
||||
if err != nil {
|
||||
version = semver.Version{Major: 1}
|
||||
}
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/certificate",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/clusterGroup",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/clusterGroupAssignment",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/image",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/instance",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/instanceSnapshot",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/network",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/networkAcl",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/networkForward",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/networkIntegration",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/networkLoadBalancer",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/networkPeer",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/networkZone",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/networkZoneRecord",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/profile",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/project",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/storageBucket",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/storageBucketKey",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/storagePool",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourceModule(
|
||||
"incus",
|
||||
"index/storageVolume",
|
||||
&module{version},
|
||||
)
|
||||
pulumi.RegisterResourcePackage(
|
||||
"incus",
|
||||
&pkg{version},
|
||||
)
|
||||
}
|
||||
534
sdk/go/incus/instance.go
generated
Normal file
534
sdk/go/incus/instance.go
generated
Normal file
@@ -0,0 +1,534 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type Instance struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
// *Optional* - Description of the instance.
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// *Optional* - Device definition. See reference below.
|
||||
Devices InstanceDeviceArrayOutput `pulumi:"devices"`
|
||||
// *Optional* - Boolean indicating if this instance is ephemeral. Defaults to `false`.
|
||||
Ephemeral pulumi.BoolOutput `pulumi:"ephemeral"`
|
||||
// *Optional* - File to upload to the instance. See reference below.
|
||||
Files InstanceFileArrayOutput `pulumi:"files"`
|
||||
// *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/).
|
||||
Image pulumi.StringPtrOutput `pulumi:"image"`
|
||||
// The IPv4 Address of the instance. See Instance Network
|
||||
// Access for more details.
|
||||
Ipv4Address pulumi.StringOutput `pulumi:"ipv4Address"`
|
||||
// The IPv6 Address of the instance. See Instance Network
|
||||
// Access for more details.
|
||||
Ipv6Address pulumi.StringOutput `pulumi:"ipv6Address"`
|
||||
// The MAC address of the detected NIC. See Instance Network
|
||||
// Access for more details.
|
||||
MacAddress pulumi.StringOutput `pulumi:"macAddress"`
|
||||
// **Required** - Name of the instance.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// *Optional* - List of Incus config profiles to apply to the new
|
||||
// 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.
|
||||
Profiles pulumi.StringArrayOutput `pulumi:"profiles"`
|
||||
// *Optional* - Name of the project where the instance will be spawned.
|
||||
Project pulumi.StringOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
// *Optional* - Boolean indicating whether the instance should be started (running). Defaults to `true`.
|
||||
Running pulumi.BoolOutput `pulumi:"running"`
|
||||
// *Optional* - The souce backup file from which the instance should be restored. For handling of storage pool, see examples.
|
||||
SourceFile pulumi.StringPtrOutput `pulumi:"sourceFile"`
|
||||
// *Optional* - The source instance from which the instance will be created. See reference below.
|
||||
SourceInstance InstanceSourceInstancePtrOutput `pulumi:"sourceInstance"`
|
||||
// The status of the instance.
|
||||
Status pulumi.StringOutput `pulumi:"status"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringOutput `pulumi:"target"`
|
||||
// *Optional* - Instance type. Can be `container`, or `virtual-machine`. Defaults to `container`.
|
||||
Type pulumi.StringOutput `pulumi:"type"`
|
||||
// *Optional* - WaitFor definition. See reference below.
|
||||
// If `running` is set to false or instance is already running (on update), this value has no effect.
|
||||
WaitFors InstanceWaitForArrayOutput `pulumi:"waitFors"`
|
||||
}
|
||||
|
||||
// NewInstance registers a new resource with the given unique name, arguments, and options.
|
||||
func NewInstance(ctx *pulumi.Context,
|
||||
name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error) {
|
||||
if args == nil {
|
||||
args = &InstanceArgs{}
|
||||
}
|
||||
|
||||
if args.Project == nil {
|
||||
args.Project = pulumi.StringPtr("default")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource Instance
|
||||
err := ctx.RegisterResource("incus:index/instance:Instance", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetInstance gets an existing Instance resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetInstance(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error) {
|
||||
var resource Instance
|
||||
err := ctx.ReadResource("incus:index/instance:Instance", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering Instance resources.
|
||||
type instanceState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the instance.
|
||||
Description *string `pulumi:"description"`
|
||||
// *Optional* - Device definition. See reference below.
|
||||
Devices []InstanceDevice `pulumi:"devices"`
|
||||
// *Optional* - Boolean indicating if this instance is ephemeral. Defaults to `false`.
|
||||
Ephemeral *bool `pulumi:"ephemeral"`
|
||||
// *Optional* - File to upload to the instance. See reference below.
|
||||
Files []InstanceFile `pulumi:"files"`
|
||||
// *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/).
|
||||
Image *string `pulumi:"image"`
|
||||
// The IPv4 Address of the instance. See Instance Network
|
||||
// Access for more details.
|
||||
Ipv4Address *string `pulumi:"ipv4Address"`
|
||||
// The IPv6 Address of the instance. See Instance Network
|
||||
// Access for more details.
|
||||
Ipv6Address *string `pulumi:"ipv6Address"`
|
||||
// The MAC address of the detected NIC. See Instance Network
|
||||
// Access for more details.
|
||||
MacAddress *string `pulumi:"macAddress"`
|
||||
// **Required** - Name of the instance.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - List of Incus config profiles to apply to the new
|
||||
// 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.
|
||||
Profiles []string `pulumi:"profiles"`
|
||||
// *Optional* - Name of the project where the instance will be spawned.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Boolean indicating whether the instance should be started (running). Defaults to `true`.
|
||||
Running *bool `pulumi:"running"`
|
||||
// *Optional* - The souce backup file from which the instance should be restored. For handling of storage pool, see examples.
|
||||
SourceFile *string `pulumi:"sourceFile"`
|
||||
// *Optional* - The source instance from which the instance will be created. See reference below.
|
||||
SourceInstance *InstanceSourceInstance `pulumi:"sourceInstance"`
|
||||
// The status of the instance.
|
||||
Status *string `pulumi:"status"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target *string `pulumi:"target"`
|
||||
// *Optional* - Instance type. Can be `container`, or `virtual-machine`. Defaults to `container`.
|
||||
Type *string `pulumi:"type"`
|
||||
// *Optional* - WaitFor definition. See reference below.
|
||||
// If `running` is set to false or instance is already running (on update), this value has no effect.
|
||||
WaitFors []InstanceWaitFor `pulumi:"waitFors"`
|
||||
}
|
||||
|
||||
type InstanceState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the instance.
|
||||
Description pulumi.StringPtrInput
|
||||
// *Optional* - Device definition. See reference below.
|
||||
Devices InstanceDeviceArrayInput
|
||||
// *Optional* - Boolean indicating if this instance is ephemeral. Defaults to `false`.
|
||||
Ephemeral pulumi.BoolPtrInput
|
||||
// *Optional* - File to upload to the instance. See reference below.
|
||||
Files InstanceFileArrayInput
|
||||
// *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/).
|
||||
Image pulumi.StringPtrInput
|
||||
// The IPv4 Address of the instance. See Instance Network
|
||||
// Access for more details.
|
||||
Ipv4Address pulumi.StringPtrInput
|
||||
// The IPv6 Address of the instance. See Instance Network
|
||||
// Access for more details.
|
||||
Ipv6Address pulumi.StringPtrInput
|
||||
// The MAC address of the detected NIC. See Instance Network
|
||||
// Access for more details.
|
||||
MacAddress pulumi.StringPtrInput
|
||||
// **Required** - Name of the instance.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - List of Incus config profiles to apply to the new
|
||||
// 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.
|
||||
Profiles pulumi.StringArrayInput
|
||||
// *Optional* - Name of the project where the instance will be spawned.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Boolean indicating whether the instance should be started (running). Defaults to `true`.
|
||||
Running pulumi.BoolPtrInput
|
||||
// *Optional* - The souce backup file from which the instance should be restored. For handling of storage pool, see examples.
|
||||
SourceFile pulumi.StringPtrInput
|
||||
// *Optional* - The source instance from which the instance will be created. See reference below.
|
||||
SourceInstance InstanceSourceInstancePtrInput
|
||||
// The status of the instance.
|
||||
Status pulumi.StringPtrInput
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringPtrInput
|
||||
// *Optional* - Instance type. Can be `container`, or `virtual-machine`. Defaults to `container`.
|
||||
Type pulumi.StringPtrInput
|
||||
// *Optional* - WaitFor definition. See reference below.
|
||||
// If `running` is set to false or instance is already running (on update), this value has no effect.
|
||||
WaitFors InstanceWaitForArrayInput
|
||||
}
|
||||
|
||||
func (InstanceState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*instanceState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type instanceArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the instance.
|
||||
Description *string `pulumi:"description"`
|
||||
// *Optional* - Device definition. See reference below.
|
||||
Devices []InstanceDevice `pulumi:"devices"`
|
||||
// *Optional* - Boolean indicating if this instance is ephemeral. Defaults to `false`.
|
||||
Ephemeral *bool `pulumi:"ephemeral"`
|
||||
// *Optional* - File to upload to the instance. See reference below.
|
||||
Files []InstanceFile `pulumi:"files"`
|
||||
// *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/).
|
||||
Image *string `pulumi:"image"`
|
||||
// **Required** - Name of the instance.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - List of Incus config profiles to apply to the new
|
||||
// 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.
|
||||
Profiles []string `pulumi:"profiles"`
|
||||
// *Optional* - Name of the project where the instance will be spawned.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Boolean indicating whether the instance should be started (running). Defaults to `true`.
|
||||
Running *bool `pulumi:"running"`
|
||||
// *Optional* - The souce backup file from which the instance should be restored. For handling of storage pool, see examples.
|
||||
SourceFile *string `pulumi:"sourceFile"`
|
||||
// *Optional* - The source instance from which the instance will be created. See reference below.
|
||||
SourceInstance *InstanceSourceInstance `pulumi:"sourceInstance"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target *string `pulumi:"target"`
|
||||
// *Optional* - Instance type. Can be `container`, or `virtual-machine`. Defaults to `container`.
|
||||
Type *string `pulumi:"type"`
|
||||
// *Optional* - WaitFor definition. See reference below.
|
||||
// If `running` is set to false or instance is already running (on update), this value has no effect.
|
||||
WaitFors []InstanceWaitFor `pulumi:"waitFors"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a Instance resource.
|
||||
type InstanceArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the instance.
|
||||
Description pulumi.StringPtrInput
|
||||
// *Optional* - Device definition. See reference below.
|
||||
Devices InstanceDeviceArrayInput
|
||||
// *Optional* - Boolean indicating if this instance is ephemeral. Defaults to `false`.
|
||||
Ephemeral pulumi.BoolPtrInput
|
||||
// *Optional* - File to upload to the instance. See reference below.
|
||||
Files InstanceFileArrayInput
|
||||
// *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/).
|
||||
Image pulumi.StringPtrInput
|
||||
// **Required** - Name of the instance.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - List of Incus config profiles to apply to the new
|
||||
// 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.
|
||||
Profiles pulumi.StringArrayInput
|
||||
// *Optional* - Name of the project where the instance will be spawned.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Boolean indicating whether the instance should be started (running). Defaults to `true`.
|
||||
Running pulumi.BoolPtrInput
|
||||
// *Optional* - The souce backup file from which the instance should be restored. For handling of storage pool, see examples.
|
||||
SourceFile pulumi.StringPtrInput
|
||||
// *Optional* - The source instance from which the instance will be created. See reference below.
|
||||
SourceInstance InstanceSourceInstancePtrInput
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringPtrInput
|
||||
// *Optional* - Instance type. Can be `container`, or `virtual-machine`. Defaults to `container`.
|
||||
Type pulumi.StringPtrInput
|
||||
// *Optional* - WaitFor definition. See reference below.
|
||||
// If `running` is set to false or instance is already running (on update), this value has no effect.
|
||||
WaitFors InstanceWaitForArrayInput
|
||||
}
|
||||
|
||||
func (InstanceArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*instanceArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type InstanceInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToInstanceOutput() InstanceOutput
|
||||
ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
|
||||
}
|
||||
|
||||
func (*Instance) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Instance)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *Instance) ToInstanceOutput() InstanceOutput {
|
||||
return i.ToInstanceOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(InstanceOutput)
|
||||
}
|
||||
|
||||
// InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values.
|
||||
// You can construct a concrete instance of `InstanceArrayInput` via:
|
||||
//
|
||||
// InstanceArray{ InstanceArgs{...} }
|
||||
type InstanceArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToInstanceArrayOutput() InstanceArrayOutput
|
||||
ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput
|
||||
}
|
||||
|
||||
type InstanceArray []InstanceInput
|
||||
|
||||
func (InstanceArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*Instance)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput {
|
||||
return i.ToInstanceArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(InstanceArrayOutput)
|
||||
}
|
||||
|
||||
// InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values.
|
||||
// You can construct a concrete instance of `InstanceMapInput` via:
|
||||
//
|
||||
// InstanceMap{ "key": InstanceArgs{...} }
|
||||
type InstanceMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToInstanceMapOutput() InstanceMapOutput
|
||||
ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput
|
||||
}
|
||||
|
||||
type InstanceMap map[string]InstanceInput
|
||||
|
||||
func (InstanceMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*Instance)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput {
|
||||
return i.ToInstanceMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(InstanceMapOutput)
|
||||
}
|
||||
|
||||
type InstanceOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (InstanceOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Instance)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o InstanceOutput) ToInstanceOutput() InstanceOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
func (o InstanceOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the instance.
|
||||
func (o InstanceOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Device definition. See reference below.
|
||||
func (o InstanceOutput) Devices() InstanceDeviceArrayOutput {
|
||||
return o.ApplyT(func(v *Instance) InstanceDeviceArrayOutput { return v.Devices }).(InstanceDeviceArrayOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Boolean indicating if this instance is ephemeral. Defaults to `false`.
|
||||
func (o InstanceOutput) Ephemeral() pulumi.BoolOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.BoolOutput { return v.Ephemeral }).(pulumi.BoolOutput)
|
||||
}
|
||||
|
||||
// *Optional* - File to upload to the instance. See reference below.
|
||||
func (o InstanceOutput) Files() InstanceFileArrayOutput {
|
||||
return o.ApplyT(func(v *Instance) InstanceFileArrayOutput { return v.Files }).(InstanceFileArrayOutput)
|
||||
}
|
||||
|
||||
// *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/).
|
||||
func (o InstanceOutput) Image() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringPtrOutput { return v.Image }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// The IPv4 Address of the instance. See Instance Network
|
||||
// Access for more details.
|
||||
func (o InstanceOutput) Ipv4Address() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.Ipv4Address }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// The IPv6 Address of the instance. See Instance Network
|
||||
// Access for more details.
|
||||
func (o InstanceOutput) Ipv6Address() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.Ipv6Address }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// The MAC address of the detected NIC. See Instance Network
|
||||
// Access for more details.
|
||||
func (o InstanceOutput) MacAddress() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.MacAddress }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the instance.
|
||||
func (o InstanceOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - List of Incus config profiles to apply to the new
|
||||
// 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.
|
||||
func (o InstanceOutput) Profiles() pulumi.StringArrayOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringArrayOutput { return v.Profiles }).(pulumi.StringArrayOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the instance will be spawned.
|
||||
func (o InstanceOutput) Project() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o InstanceOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Boolean indicating whether the instance should be started (running). Defaults to `true`.
|
||||
func (o InstanceOutput) Running() pulumi.BoolOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.BoolOutput { return v.Running }).(pulumi.BoolOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The souce backup file from which the instance should be restored. For handling of storage pool, see examples.
|
||||
func (o InstanceOutput) SourceFile() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringPtrOutput { return v.SourceFile }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The source instance from which the instance will be created. See reference below.
|
||||
func (o InstanceOutput) SourceInstance() InstanceSourceInstancePtrOutput {
|
||||
return o.ApplyT(func(v *Instance) InstanceSourceInstancePtrOutput { return v.SourceInstance }).(InstanceSourceInstancePtrOutput)
|
||||
}
|
||||
|
||||
// The status of the instance.
|
||||
func (o InstanceOutput) Status() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
func (o InstanceOutput) Target() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.Target }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Instance type. Can be `container`, or `virtual-machine`. Defaults to `container`.
|
||||
func (o InstanceOutput) Type() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - WaitFor definition. See reference below.
|
||||
// If `running` is set to false or instance is already running (on update), this value has no effect.
|
||||
func (o InstanceOutput) WaitFors() InstanceWaitForArrayOutput {
|
||||
return o.ApplyT(func(v *Instance) InstanceWaitForArrayOutput { return v.WaitFors }).(InstanceWaitForArrayOutput)
|
||||
}
|
||||
|
||||
type InstanceArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (InstanceArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*Instance)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o InstanceArrayOutput) Index(i pulumi.IntInput) InstanceOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Instance {
|
||||
return vs[0].([]*Instance)[vs[1].(int)]
|
||||
}).(InstanceOutput)
|
||||
}
|
||||
|
||||
type InstanceMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (InstanceMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*Instance)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o InstanceMapOutput) MapIndex(k pulumi.StringInput) InstanceOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Instance {
|
||||
return vs[0].(map[string]*Instance)[vs[1].(string)]
|
||||
}).(InstanceOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*InstanceInput)(nil)).Elem(), &Instance{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*InstanceArrayInput)(nil)).Elem(), InstanceArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*InstanceMapInput)(nil)).Elem(), InstanceMap{})
|
||||
pulumi.RegisterOutputType(InstanceOutput{})
|
||||
pulumi.RegisterOutputType(InstanceArrayOutput{})
|
||||
pulumi.RegisterOutputType(InstanceMapOutput{})
|
||||
}
|
||||
352
sdk/go/incus/instanceSnapshot.go
generated
Normal file
352
sdk/go/incus/instanceSnapshot.go
generated
Normal file
@@ -0,0 +1,352 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"errors"
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
// ## # InstanceSnapshot
|
||||
//
|
||||
// Manages a snapshot of an Incus instance.
|
||||
//
|
||||
// ## Example Usage
|
||||
//
|
||||
// ```go
|
||||
// package main
|
||||
//
|
||||
// import (
|
||||
//
|
||||
// "git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus"
|
||||
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
//
|
||||
// )
|
||||
//
|
||||
// func main() {
|
||||
// pulumi.Run(func(ctx *pulumi.Context) error {
|
||||
// instance, err := incus.NewInstance(ctx, "instance", &incus.InstanceArgs{
|
||||
// Name: pulumi.String("my-instance"),
|
||||
// Image: pulumi.String("ubuntu"),
|
||||
// Ephemeral: pulumi.Bool(false),
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// _, err = incus.NewInstanceSnapshot(ctx, "snap1", &incus.InstanceSnapshotArgs{
|
||||
// Name: pulumi.String("my-snapshot-1"),
|
||||
// Instance: instance.Name,
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
// })
|
||||
// }
|
||||
//
|
||||
// ```
|
||||
type InstanceSnapshot struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// The time Incus reported the snapshot was successfully created,
|
||||
// in UTC.
|
||||
CreatedAt pulumi.IntOutput `pulumi:"createdAt"`
|
||||
// **Required** - The name of the instance to snapshot.
|
||||
Instance pulumi.StringOutput `pulumi:"instance"`
|
||||
// **Required** - Name of the snapshot.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the snapshot will be stored.
|
||||
Project pulumi.StringOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
// *Optional* - Set to `true` to create a stateful snapshot,
|
||||
// `false` for stateless. Stateful snapshots include runtime state. Defaults to
|
||||
// `false`.
|
||||
Stateful pulumi.BoolOutput `pulumi:"stateful"`
|
||||
}
|
||||
|
||||
// NewInstanceSnapshot registers a new resource with the given unique name, arguments, and options.
|
||||
func NewInstanceSnapshot(ctx *pulumi.Context,
|
||||
name string, args *InstanceSnapshotArgs, opts ...pulumi.ResourceOption) (*InstanceSnapshot, error) {
|
||||
if args == nil {
|
||||
return nil, errors.New("missing one or more required arguments")
|
||||
}
|
||||
|
||||
if args.Instance == nil {
|
||||
return nil, errors.New("invalid value for required argument 'Instance'")
|
||||
}
|
||||
if args.Project == nil {
|
||||
args.Project = pulumi.StringPtr("default")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource InstanceSnapshot
|
||||
err := ctx.RegisterResource("incus:index/instanceSnapshot:InstanceSnapshot", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetInstanceSnapshot gets an existing InstanceSnapshot resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetInstanceSnapshot(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *InstanceSnapshotState, opts ...pulumi.ResourceOption) (*InstanceSnapshot, error) {
|
||||
var resource InstanceSnapshot
|
||||
err := ctx.ReadResource("incus:index/instanceSnapshot:InstanceSnapshot", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering InstanceSnapshot resources.
|
||||
type instanceSnapshotState struct {
|
||||
// The time Incus reported the snapshot was successfully created,
|
||||
// in UTC.
|
||||
CreatedAt *int `pulumi:"createdAt"`
|
||||
// **Required** - The name of the instance to snapshot.
|
||||
Instance *string `pulumi:"instance"`
|
||||
// **Required** - Name of the snapshot.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the snapshot will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Set to `true` to create a stateful snapshot,
|
||||
// `false` for stateless. Stateful snapshots include runtime state. Defaults to
|
||||
// `false`.
|
||||
Stateful *bool `pulumi:"stateful"`
|
||||
}
|
||||
|
||||
type InstanceSnapshotState struct {
|
||||
// The time Incus reported the snapshot was successfully created,
|
||||
// in UTC.
|
||||
CreatedAt pulumi.IntPtrInput
|
||||
// **Required** - The name of the instance to snapshot.
|
||||
Instance pulumi.StringPtrInput
|
||||
// **Required** - Name of the snapshot.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the snapshot will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Set to `true` to create a stateful snapshot,
|
||||
// `false` for stateless. Stateful snapshots include runtime state. Defaults to
|
||||
// `false`.
|
||||
Stateful pulumi.BoolPtrInput
|
||||
}
|
||||
|
||||
func (InstanceSnapshotState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*instanceSnapshotState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type instanceSnapshotArgs struct {
|
||||
// **Required** - The name of the instance to snapshot.
|
||||
Instance string `pulumi:"instance"`
|
||||
// **Required** - Name of the snapshot.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the snapshot will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Set to `true` to create a stateful snapshot,
|
||||
// `false` for stateless. Stateful snapshots include runtime state. Defaults to
|
||||
// `false`.
|
||||
Stateful *bool `pulumi:"stateful"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a InstanceSnapshot resource.
|
||||
type InstanceSnapshotArgs struct {
|
||||
// **Required** - The name of the instance to snapshot.
|
||||
Instance pulumi.StringInput
|
||||
// **Required** - Name of the snapshot.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the snapshot will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Set to `true` to create a stateful snapshot,
|
||||
// `false` for stateless. Stateful snapshots include runtime state. Defaults to
|
||||
// `false`.
|
||||
Stateful pulumi.BoolPtrInput
|
||||
}
|
||||
|
||||
func (InstanceSnapshotArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*instanceSnapshotArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type InstanceSnapshotInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToInstanceSnapshotOutput() InstanceSnapshotOutput
|
||||
ToInstanceSnapshotOutputWithContext(ctx context.Context) InstanceSnapshotOutput
|
||||
}
|
||||
|
||||
func (*InstanceSnapshot) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**InstanceSnapshot)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *InstanceSnapshot) ToInstanceSnapshotOutput() InstanceSnapshotOutput {
|
||||
return i.ToInstanceSnapshotOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *InstanceSnapshot) ToInstanceSnapshotOutputWithContext(ctx context.Context) InstanceSnapshotOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(InstanceSnapshotOutput)
|
||||
}
|
||||
|
||||
// InstanceSnapshotArrayInput is an input type that accepts InstanceSnapshotArray and InstanceSnapshotArrayOutput values.
|
||||
// You can construct a concrete instance of `InstanceSnapshotArrayInput` via:
|
||||
//
|
||||
// InstanceSnapshotArray{ InstanceSnapshotArgs{...} }
|
||||
type InstanceSnapshotArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToInstanceSnapshotArrayOutput() InstanceSnapshotArrayOutput
|
||||
ToInstanceSnapshotArrayOutputWithContext(context.Context) InstanceSnapshotArrayOutput
|
||||
}
|
||||
|
||||
type InstanceSnapshotArray []InstanceSnapshotInput
|
||||
|
||||
func (InstanceSnapshotArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*InstanceSnapshot)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i InstanceSnapshotArray) ToInstanceSnapshotArrayOutput() InstanceSnapshotArrayOutput {
|
||||
return i.ToInstanceSnapshotArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i InstanceSnapshotArray) ToInstanceSnapshotArrayOutputWithContext(ctx context.Context) InstanceSnapshotArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(InstanceSnapshotArrayOutput)
|
||||
}
|
||||
|
||||
// InstanceSnapshotMapInput is an input type that accepts InstanceSnapshotMap and InstanceSnapshotMapOutput values.
|
||||
// You can construct a concrete instance of `InstanceSnapshotMapInput` via:
|
||||
//
|
||||
// InstanceSnapshotMap{ "key": InstanceSnapshotArgs{...} }
|
||||
type InstanceSnapshotMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToInstanceSnapshotMapOutput() InstanceSnapshotMapOutput
|
||||
ToInstanceSnapshotMapOutputWithContext(context.Context) InstanceSnapshotMapOutput
|
||||
}
|
||||
|
||||
type InstanceSnapshotMap map[string]InstanceSnapshotInput
|
||||
|
||||
func (InstanceSnapshotMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*InstanceSnapshot)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i InstanceSnapshotMap) ToInstanceSnapshotMapOutput() InstanceSnapshotMapOutput {
|
||||
return i.ToInstanceSnapshotMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i InstanceSnapshotMap) ToInstanceSnapshotMapOutputWithContext(ctx context.Context) InstanceSnapshotMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(InstanceSnapshotMapOutput)
|
||||
}
|
||||
|
||||
type InstanceSnapshotOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (InstanceSnapshotOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**InstanceSnapshot)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o InstanceSnapshotOutput) ToInstanceSnapshotOutput() InstanceSnapshotOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o InstanceSnapshotOutput) ToInstanceSnapshotOutputWithContext(ctx context.Context) InstanceSnapshotOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// The time Incus reported the snapshot was successfully created,
|
||||
// in UTC.
|
||||
func (o InstanceSnapshotOutput) CreatedAt() pulumi.IntOutput {
|
||||
return o.ApplyT(func(v *InstanceSnapshot) pulumi.IntOutput { return v.CreatedAt }).(pulumi.IntOutput)
|
||||
}
|
||||
|
||||
// **Required** - The name of the instance to snapshot.
|
||||
func (o InstanceSnapshotOutput) Instance() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *InstanceSnapshot) pulumi.StringOutput { return v.Instance }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the snapshot.
|
||||
func (o InstanceSnapshotOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *InstanceSnapshot) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the snapshot will be stored.
|
||||
func (o InstanceSnapshotOutput) Project() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *InstanceSnapshot) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o InstanceSnapshotOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *InstanceSnapshot) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Set to `true` to create a stateful snapshot,
|
||||
// `false` for stateless. Stateful snapshots include runtime state. Defaults to
|
||||
// `false`.
|
||||
func (o InstanceSnapshotOutput) Stateful() pulumi.BoolOutput {
|
||||
return o.ApplyT(func(v *InstanceSnapshot) pulumi.BoolOutput { return v.Stateful }).(pulumi.BoolOutput)
|
||||
}
|
||||
|
||||
type InstanceSnapshotArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (InstanceSnapshotArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*InstanceSnapshot)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o InstanceSnapshotArrayOutput) ToInstanceSnapshotArrayOutput() InstanceSnapshotArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o InstanceSnapshotArrayOutput) ToInstanceSnapshotArrayOutputWithContext(ctx context.Context) InstanceSnapshotArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o InstanceSnapshotArrayOutput) Index(i pulumi.IntInput) InstanceSnapshotOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *InstanceSnapshot {
|
||||
return vs[0].([]*InstanceSnapshot)[vs[1].(int)]
|
||||
}).(InstanceSnapshotOutput)
|
||||
}
|
||||
|
||||
type InstanceSnapshotMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (InstanceSnapshotMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*InstanceSnapshot)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o InstanceSnapshotMapOutput) ToInstanceSnapshotMapOutput() InstanceSnapshotMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o InstanceSnapshotMapOutput) ToInstanceSnapshotMapOutputWithContext(ctx context.Context) InstanceSnapshotMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o InstanceSnapshotMapOutput) MapIndex(k pulumi.StringInput) InstanceSnapshotOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *InstanceSnapshot {
|
||||
return vs[0].(map[string]*InstanceSnapshot)[vs[1].(string)]
|
||||
}).(InstanceSnapshotOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*InstanceSnapshotInput)(nil)).Elem(), &InstanceSnapshot{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*InstanceSnapshotArrayInput)(nil)).Elem(), InstanceSnapshotArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*InstanceSnapshotMapInput)(nil)).Elem(), InstanceSnapshotMap{})
|
||||
pulumi.RegisterOutputType(InstanceSnapshotOutput{})
|
||||
pulumi.RegisterOutputType(InstanceSnapshotArrayOutput{})
|
||||
pulumi.RegisterOutputType(InstanceSnapshotMapOutput{})
|
||||
}
|
||||
184
sdk/go/incus/internal/pulumiUtilities.go
generated
Normal file
184
sdk/go/incus/internal/pulumiUtilities.go
generated
Normal file
@@ -0,0 +1,184 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package internal
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"os"
|
||||
"reflect"
|
||||
"regexp"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"github.com/blang/semver"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
import (
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/internals"
|
||||
)
|
||||
|
||||
type envParser func(v string) interface{}
|
||||
|
||||
func ParseEnvBool(v string) interface{} {
|
||||
b, err := strconv.ParseBool(v)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return b
|
||||
}
|
||||
|
||||
func ParseEnvInt(v string) interface{} {
|
||||
i, err := strconv.ParseInt(v, 0, 0)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return int(i)
|
||||
}
|
||||
|
||||
func ParseEnvFloat(v string) interface{} {
|
||||
f, err := strconv.ParseFloat(v, 64)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
return f
|
||||
}
|
||||
|
||||
func ParseEnvStringArray(v string) interface{} {
|
||||
var result pulumi.StringArray
|
||||
for _, item := range strings.Split(v, ";") {
|
||||
result = append(result, pulumi.String(item))
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
func GetEnvOrDefault(def interface{}, parser envParser, vars ...string) interface{} {
|
||||
for _, v := range vars {
|
||||
if value, ok := os.LookupEnv(v); ok {
|
||||
if parser != nil {
|
||||
return parser(value)
|
||||
}
|
||||
return value
|
||||
}
|
||||
}
|
||||
return def
|
||||
}
|
||||
|
||||
// PkgVersion uses reflection to determine the version of the current package.
|
||||
// If a version cannot be determined, v1 will be assumed. The second return
|
||||
// value is always nil.
|
||||
func PkgVersion() (semver.Version, error) {
|
||||
// emptyVersion defaults to v0.0.0
|
||||
if !SdkVersion.Equals(semver.Version{}) {
|
||||
return SdkVersion, nil
|
||||
}
|
||||
type sentinal struct{}
|
||||
pkgPath := reflect.TypeOf(sentinal{}).PkgPath()
|
||||
re := regexp.MustCompile("^.*/pulumi-incus/sdk(/v\\d+)?")
|
||||
if match := re.FindStringSubmatch(pkgPath); match != nil {
|
||||
vStr := match[1]
|
||||
if len(vStr) == 0 { // If the version capture group was empty, default to v1.
|
||||
return semver.Version{Major: 1}, nil
|
||||
}
|
||||
return semver.MustParse(fmt.Sprintf("%s.0.0", vStr[2:])), nil
|
||||
}
|
||||
return semver.Version{Major: 1}, nil
|
||||
}
|
||||
|
||||
// isZero is a null safe check for if a value is it's types zero value.
|
||||
func IsZero(v interface{}) bool {
|
||||
if v == nil {
|
||||
return true
|
||||
}
|
||||
return reflect.ValueOf(v).IsZero()
|
||||
}
|
||||
|
||||
func CallPlain(
|
||||
ctx *pulumi.Context,
|
||||
tok string,
|
||||
args pulumi.Input,
|
||||
output pulumi.Output,
|
||||
self pulumi.Resource,
|
||||
property string,
|
||||
resultPtr reflect.Value,
|
||||
errorPtr *error,
|
||||
opts ...pulumi.InvokeOption,
|
||||
) {
|
||||
res, err := callPlainInner(ctx, tok, args, output, self, opts...)
|
||||
if err != nil {
|
||||
*errorPtr = err
|
||||
return
|
||||
}
|
||||
|
||||
v := reflect.ValueOf(res)
|
||||
|
||||
// extract res.property field if asked to do so
|
||||
if property != "" {
|
||||
v = v.FieldByName("Res")
|
||||
}
|
||||
|
||||
// return by setting the result pointer; this style of returns shortens the generated code without generics
|
||||
resultPtr.Elem().Set(v)
|
||||
}
|
||||
|
||||
func callPlainInner(
|
||||
ctx *pulumi.Context,
|
||||
tok string,
|
||||
args pulumi.Input,
|
||||
output pulumi.Output,
|
||||
self pulumi.Resource,
|
||||
opts ...pulumi.InvokeOption,
|
||||
) (any, error) {
|
||||
o, err := ctx.Call(tok, args, output, self, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
outputData, err := internals.UnsafeAwaitOutput(ctx.Context(), o)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// Ingoring deps silently. They are typically non-empty, r.f() calls include r as a dependency.
|
||||
known := outputData.Known
|
||||
value := outputData.Value
|
||||
secret := outputData.Secret
|
||||
|
||||
problem := ""
|
||||
if !known {
|
||||
problem = "an unknown value"
|
||||
} else if secret {
|
||||
problem = "a secret value"
|
||||
}
|
||||
|
||||
if problem != "" {
|
||||
return nil, fmt.Errorf("Plain resource method %q incorrectly returned %s. "+
|
||||
"This is an error in the provider, please report this to the provider developer.",
|
||||
tok, problem)
|
||||
}
|
||||
|
||||
return value, nil
|
||||
}
|
||||
|
||||
// PkgResourceDefaultOpts provides package level defaults to pulumi.OptionResource.
|
||||
func PkgResourceDefaultOpts(opts []pulumi.ResourceOption) []pulumi.ResourceOption {
|
||||
defaults := []pulumi.ResourceOption{}
|
||||
defaults = append(defaults, pulumi.PluginDownloadURL("https://git.kalinow.ski/api/packages/kiterun/generic/pulumi-incus/${VERSION}/"))
|
||||
version := semver.MustParse("1.0.0-alpha.0+dev")
|
||||
if !version.Equals(semver.Version{}) {
|
||||
defaults = append(defaults, pulumi.Version(version.String()))
|
||||
}
|
||||
return append(defaults, opts...)
|
||||
}
|
||||
|
||||
// PkgInvokeDefaultOpts provides package level defaults to pulumi.OptionInvoke.
|
||||
func PkgInvokeDefaultOpts(opts []pulumi.InvokeOption) []pulumi.InvokeOption {
|
||||
defaults := []pulumi.InvokeOption{}
|
||||
defaults = append(defaults, pulumi.PluginDownloadURL("https://git.kalinow.ski/api/packages/kiterun/generic/pulumi-incus/${VERSION}/"))
|
||||
version := semver.MustParse("1.0.0-alpha.0+dev")
|
||||
if !version.Equals(semver.Version{}) {
|
||||
defaults = append(defaults, pulumi.Version(version.String()))
|
||||
}
|
||||
return append(defaults, opts...)
|
||||
}
|
||||
11
sdk/go/incus/internal/pulumiVersion.go
generated
Normal file
11
sdk/go/incus/internal/pulumiVersion.go
generated
Normal file
@@ -0,0 +1,11 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package internal
|
||||
|
||||
import (
|
||||
"github.com/blang/semver"
|
||||
)
|
||||
|
||||
var SdkVersion semver.Version = semver.Version{}
|
||||
var pluginDownloadURL string = ""
|
||||
348
sdk/go/incus/network.go
generated
Normal file
348
sdk/go/incus/network.go
generated
Normal file
@@ -0,0 +1,348 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type Network struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network config settings](https://linuxcontainers.org/incus/docs/main/networks/).
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
// *Optional* - Description of the network.
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// Whether or not the network is managed.
|
||||
Managed pulumi.BoolOutput `pulumi:"managed"`
|
||||
// **Required** - Name of the network. This is usually the device the
|
||||
// network will appear as to instances.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network will be created.
|
||||
Project pulumi.StringOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringPtrOutput `pulumi:"target"`
|
||||
// *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
|
||||
// is created.
|
||||
Type pulumi.StringOutput `pulumi:"type"`
|
||||
}
|
||||
|
||||
// NewNetwork registers a new resource with the given unique name, arguments, and options.
|
||||
func NewNetwork(ctx *pulumi.Context,
|
||||
name string, args *NetworkArgs, opts ...pulumi.ResourceOption) (*Network, error) {
|
||||
if args == nil {
|
||||
args = &NetworkArgs{}
|
||||
}
|
||||
|
||||
if args.Project == nil {
|
||||
args.Project = pulumi.StringPtr("default")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource Network
|
||||
err := ctx.RegisterResource("incus:index/network:Network", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetNetwork gets an existing Network resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetNetwork(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *NetworkState, opts ...pulumi.ResourceOption) (*Network, error) {
|
||||
var resource Network
|
||||
err := ctx.ReadResource("incus:index/network:Network", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering Network resources.
|
||||
type networkState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network config settings](https://linuxcontainers.org/incus/docs/main/networks/).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the network.
|
||||
Description *string `pulumi:"description"`
|
||||
// Whether or not the network is managed.
|
||||
Managed *bool `pulumi:"managed"`
|
||||
// **Required** - Name of the network. This is usually the device the
|
||||
// network will appear as to instances.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network will be created.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target *string `pulumi:"target"`
|
||||
// *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
|
||||
// is created.
|
||||
Type *string `pulumi:"type"`
|
||||
}
|
||||
|
||||
type NetworkState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network config settings](https://linuxcontainers.org/incus/docs/main/networks/).
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the network.
|
||||
Description pulumi.StringPtrInput
|
||||
// Whether or not the network is managed.
|
||||
Managed pulumi.BoolPtrInput
|
||||
// **Required** - Name of the network. This is usually the device the
|
||||
// network will appear as to instances.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the network will be created.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringPtrInput
|
||||
// *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
|
||||
// is created.
|
||||
Type pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type networkArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network config settings](https://linuxcontainers.org/incus/docs/main/networks/).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the network.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the network. This is usually the device the
|
||||
// network will appear as to instances.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network will be created.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target *string `pulumi:"target"`
|
||||
// *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
|
||||
// is created.
|
||||
Type *string `pulumi:"type"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a Network resource.
|
||||
type NetworkArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network config settings](https://linuxcontainers.org/incus/docs/main/networks/).
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the network.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the network. This is usually the device the
|
||||
// network will appear as to instances.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the network will be created.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringPtrInput
|
||||
// *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
|
||||
// is created.
|
||||
Type pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type NetworkInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkOutput() NetworkOutput
|
||||
ToNetworkOutputWithContext(ctx context.Context) NetworkOutput
|
||||
}
|
||||
|
||||
func (*Network) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Network)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *Network) ToNetworkOutput() NetworkOutput {
|
||||
return i.ToNetworkOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *Network) ToNetworkOutputWithContext(ctx context.Context) NetworkOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkOutput)
|
||||
}
|
||||
|
||||
// NetworkArrayInput is an input type that accepts NetworkArray and NetworkArrayOutput values.
|
||||
// You can construct a concrete instance of `NetworkArrayInput` via:
|
||||
//
|
||||
// NetworkArray{ NetworkArgs{...} }
|
||||
type NetworkArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkArrayOutput() NetworkArrayOutput
|
||||
ToNetworkArrayOutputWithContext(context.Context) NetworkArrayOutput
|
||||
}
|
||||
|
||||
type NetworkArray []NetworkInput
|
||||
|
||||
func (NetworkArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*Network)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkArray) ToNetworkArrayOutput() NetworkArrayOutput {
|
||||
return i.ToNetworkArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkArray) ToNetworkArrayOutputWithContext(ctx context.Context) NetworkArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkArrayOutput)
|
||||
}
|
||||
|
||||
// NetworkMapInput is an input type that accepts NetworkMap and NetworkMapOutput values.
|
||||
// You can construct a concrete instance of `NetworkMapInput` via:
|
||||
//
|
||||
// NetworkMap{ "key": NetworkArgs{...} }
|
||||
type NetworkMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkMapOutput() NetworkMapOutput
|
||||
ToNetworkMapOutputWithContext(context.Context) NetworkMapOutput
|
||||
}
|
||||
|
||||
type NetworkMap map[string]NetworkInput
|
||||
|
||||
func (NetworkMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*Network)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkMap) ToNetworkMapOutput() NetworkMapOutput {
|
||||
return i.ToNetworkMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkMap) ToNetworkMapOutputWithContext(ctx context.Context) NetworkMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkMapOutput)
|
||||
}
|
||||
|
||||
type NetworkOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Network)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkOutput) ToNetworkOutput() NetworkOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkOutput) ToNetworkOutputWithContext(ctx context.Context) NetworkOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network config settings](https://linuxcontainers.org/incus/docs/main/networks/).
|
||||
func (o NetworkOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *Network) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the network.
|
||||
func (o NetworkOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Network) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// Whether or not the network is managed.
|
||||
func (o NetworkOutput) Managed() pulumi.BoolOutput {
|
||||
return o.ApplyT(func(v *Network) pulumi.BoolOutput { return v.Managed }).(pulumi.BoolOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the network. This is usually the device the
|
||||
// network will appear as to instances.
|
||||
func (o NetworkOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Network) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the network will be created.
|
||||
func (o NetworkOutput) Project() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Network) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o NetworkOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *Network) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
func (o NetworkOutput) Target() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *Network) pulumi.StringPtrOutput { return v.Target }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *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
|
||||
// is created.
|
||||
func (o NetworkOutput) Type() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Network) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
type NetworkArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*Network)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkArrayOutput) ToNetworkArrayOutput() NetworkArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkArrayOutput) ToNetworkArrayOutputWithContext(ctx context.Context) NetworkArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkArrayOutput) Index(i pulumi.IntInput) NetworkOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Network {
|
||||
return vs[0].([]*Network)[vs[1].(int)]
|
||||
}).(NetworkOutput)
|
||||
}
|
||||
|
||||
type NetworkMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*Network)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkMapOutput) ToNetworkMapOutput() NetworkMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkMapOutput) ToNetworkMapOutputWithContext(ctx context.Context) NetworkMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkMapOutput) MapIndex(k pulumi.StringInput) NetworkOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Network {
|
||||
return vs[0].(map[string]*Network)[vs[1].(string)]
|
||||
}).(NetworkOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkInput)(nil)).Elem(), &Network{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkArrayInput)(nil)).Elem(), NetworkArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkMapInput)(nil)).Elem(), NetworkMap{})
|
||||
pulumi.RegisterOutputType(NetworkOutput{})
|
||||
pulumi.RegisterOutputType(NetworkArrayOutput{})
|
||||
pulumi.RegisterOutputType(NetworkMapOutput{})
|
||||
}
|
||||
331
sdk/go/incus/networkAcl.go
generated
Normal file
331
sdk/go/incus/networkAcl.go
generated
Normal file
@@ -0,0 +1,331 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type NetworkAcl struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// network ACL config settings.
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
// *Optional* - Description of the network ACL rule.
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// *Optional* - List of network ACL rules for egress traffic. See reference below.
|
||||
Egresses NetworkAclEgressArrayOutput `pulumi:"egresses"`
|
||||
// *Optional* - List of network ACL rules for ingress traffic. See reference below.
|
||||
//
|
||||
// The network ACL rule supports:
|
||||
Ingresses NetworkAclIngressArrayOutput `pulumi:"ingresses"`
|
||||
// **Required** - Name of the network ACL.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network ACL will be created.
|
||||
Project pulumi.StringOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// NewNetworkAcl registers a new resource with the given unique name, arguments, and options.
|
||||
func NewNetworkAcl(ctx *pulumi.Context,
|
||||
name string, args *NetworkAclArgs, opts ...pulumi.ResourceOption) (*NetworkAcl, error) {
|
||||
if args == nil {
|
||||
args = &NetworkAclArgs{}
|
||||
}
|
||||
|
||||
if args.Project == nil {
|
||||
args.Project = pulumi.StringPtr("default")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource NetworkAcl
|
||||
err := ctx.RegisterResource("incus:index/networkAcl:NetworkAcl", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetNetworkAcl gets an existing NetworkAcl resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetNetworkAcl(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *NetworkAclState, opts ...pulumi.ResourceOption) (*NetworkAcl, error) {
|
||||
var resource NetworkAcl
|
||||
err := ctx.ReadResource("incus:index/networkAcl:NetworkAcl", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering NetworkAcl resources.
|
||||
type networkAclState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// network ACL config settings.
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the network ACL rule.
|
||||
Description *string `pulumi:"description"`
|
||||
// *Optional* - List of network ACL rules for egress traffic. See reference below.
|
||||
Egresses []NetworkAclEgress `pulumi:"egresses"`
|
||||
// *Optional* - List of network ACL rules for ingress traffic. See reference below.
|
||||
//
|
||||
// The network ACL rule supports:
|
||||
Ingresses []NetworkAclIngress `pulumi:"ingresses"`
|
||||
// **Required** - Name of the network ACL.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network ACL will be created.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
type NetworkAclState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// network ACL config settings.
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the network ACL rule.
|
||||
Description pulumi.StringPtrInput
|
||||
// *Optional* - List of network ACL rules for egress traffic. See reference below.
|
||||
Egresses NetworkAclEgressArrayInput
|
||||
// *Optional* - List of network ACL rules for ingress traffic. See reference below.
|
||||
//
|
||||
// The network ACL rule supports:
|
||||
Ingresses NetworkAclIngressArrayInput
|
||||
// **Required** - Name of the network ACL.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the network ACL will be created.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkAclState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkAclState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type networkAclArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// network ACL config settings.
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the network ACL rule.
|
||||
Description *string `pulumi:"description"`
|
||||
// *Optional* - List of network ACL rules for egress traffic. See reference below.
|
||||
Egresses []NetworkAclEgress `pulumi:"egresses"`
|
||||
// *Optional* - List of network ACL rules for ingress traffic. See reference below.
|
||||
//
|
||||
// The network ACL rule supports:
|
||||
Ingresses []NetworkAclIngress `pulumi:"ingresses"`
|
||||
// **Required** - Name of the network ACL.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network ACL will be created.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a NetworkAcl resource.
|
||||
type NetworkAclArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// network ACL config settings.
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the network ACL rule.
|
||||
Description pulumi.StringPtrInput
|
||||
// *Optional* - List of network ACL rules for egress traffic. See reference below.
|
||||
Egresses NetworkAclEgressArrayInput
|
||||
// *Optional* - List of network ACL rules for ingress traffic. See reference below.
|
||||
//
|
||||
// The network ACL rule supports:
|
||||
Ingresses NetworkAclIngressArrayInput
|
||||
// **Required** - Name of the network ACL.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the network ACL will be created.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkAclArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkAclArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type NetworkAclInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkAclOutput() NetworkAclOutput
|
||||
ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput
|
||||
}
|
||||
|
||||
func (*NetworkAcl) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkAcl)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *NetworkAcl) ToNetworkAclOutput() NetworkAclOutput {
|
||||
return i.ToNetworkAclOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *NetworkAcl) ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkAclOutput)
|
||||
}
|
||||
|
||||
// NetworkAclArrayInput is an input type that accepts NetworkAclArray and NetworkAclArrayOutput values.
|
||||
// You can construct a concrete instance of `NetworkAclArrayInput` via:
|
||||
//
|
||||
// NetworkAclArray{ NetworkAclArgs{...} }
|
||||
type NetworkAclArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkAclArrayOutput() NetworkAclArrayOutput
|
||||
ToNetworkAclArrayOutputWithContext(context.Context) NetworkAclArrayOutput
|
||||
}
|
||||
|
||||
type NetworkAclArray []NetworkAclInput
|
||||
|
||||
func (NetworkAclArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkAcl)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkAclArray) ToNetworkAclArrayOutput() NetworkAclArrayOutput {
|
||||
return i.ToNetworkAclArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkAclArray) ToNetworkAclArrayOutputWithContext(ctx context.Context) NetworkAclArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkAclArrayOutput)
|
||||
}
|
||||
|
||||
// NetworkAclMapInput is an input type that accepts NetworkAclMap and NetworkAclMapOutput values.
|
||||
// You can construct a concrete instance of `NetworkAclMapInput` via:
|
||||
//
|
||||
// NetworkAclMap{ "key": NetworkAclArgs{...} }
|
||||
type NetworkAclMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkAclMapOutput() NetworkAclMapOutput
|
||||
ToNetworkAclMapOutputWithContext(context.Context) NetworkAclMapOutput
|
||||
}
|
||||
|
||||
type NetworkAclMap map[string]NetworkAclInput
|
||||
|
||||
func (NetworkAclMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkAcl)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkAclMap) ToNetworkAclMapOutput() NetworkAclMapOutput {
|
||||
return i.ToNetworkAclMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkAclMap) ToNetworkAclMapOutputWithContext(ctx context.Context) NetworkAclMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkAclMapOutput)
|
||||
}
|
||||
|
||||
type NetworkAclOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkAclOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkAcl)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkAclOutput) ToNetworkAclOutput() NetworkAclOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkAclOutput) ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// network ACL config settings.
|
||||
func (o NetworkAclOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *NetworkAcl) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the network ACL rule.
|
||||
func (o NetworkAclOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkAcl) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - List of network ACL rules for egress traffic. See reference below.
|
||||
func (o NetworkAclOutput) Egresses() NetworkAclEgressArrayOutput {
|
||||
return o.ApplyT(func(v *NetworkAcl) NetworkAclEgressArrayOutput { return v.Egresses }).(NetworkAclEgressArrayOutput)
|
||||
}
|
||||
|
||||
// *Optional* - List of network ACL rules for ingress traffic. See reference below.
|
||||
//
|
||||
// The network ACL rule supports:
|
||||
func (o NetworkAclOutput) Ingresses() NetworkAclIngressArrayOutput {
|
||||
return o.ApplyT(func(v *NetworkAcl) NetworkAclIngressArrayOutput { return v.Ingresses }).(NetworkAclIngressArrayOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the network ACL.
|
||||
func (o NetworkAclOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkAcl) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the network ACL will be created.
|
||||
func (o NetworkAclOutput) Project() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkAcl) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o NetworkAclOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *NetworkAcl) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
type NetworkAclArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkAclArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkAcl)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkAclArrayOutput) ToNetworkAclArrayOutput() NetworkAclArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkAclArrayOutput) ToNetworkAclArrayOutputWithContext(ctx context.Context) NetworkAclArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkAclArrayOutput) Index(i pulumi.IntInput) NetworkAclOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *NetworkAcl {
|
||||
return vs[0].([]*NetworkAcl)[vs[1].(int)]
|
||||
}).(NetworkAclOutput)
|
||||
}
|
||||
|
||||
type NetworkAclMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkAclMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkAcl)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkAclMapOutput) ToNetworkAclMapOutput() NetworkAclMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkAclMapOutput) ToNetworkAclMapOutputWithContext(ctx context.Context) NetworkAclMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkAclMapOutput) MapIndex(k pulumi.StringInput) NetworkAclOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *NetworkAcl {
|
||||
return vs[0].(map[string]*NetworkAcl)[vs[1].(string)]
|
||||
}).(NetworkAclOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkAclInput)(nil)).Elem(), &NetworkAcl{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkAclArrayInput)(nil)).Elem(), NetworkAclArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkAclMapInput)(nil)).Elem(), NetworkAclMap{})
|
||||
pulumi.RegisterOutputType(NetworkAclOutput{})
|
||||
pulumi.RegisterOutputType(NetworkAclArrayOutput{})
|
||||
pulumi.RegisterOutputType(NetworkAclMapOutput{})
|
||||
}
|
||||
335
sdk/go/incus/networkForward.go
generated
Normal file
335
sdk/go/incus/networkForward.go
generated
Normal file
@@ -0,0 +1,335 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"errors"
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type NetworkForward struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// network forward config settings.
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
// *Optional* - Description of port(s)
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// **Required** - IP address to listen on.
|
||||
ListenAddress pulumi.StringOutput `pulumi:"listenAddress"`
|
||||
// **Required** - Name of the network.
|
||||
Network pulumi.StringOutput `pulumi:"network"`
|
||||
// *Optional* - List of port specifications. See reference below.
|
||||
//
|
||||
// The network forward port supports:
|
||||
Ports NetworkForwardPortArrayOutput `pulumi:"ports"`
|
||||
// *Optional* - Name of the project where the network forward will be created.
|
||||
Project pulumi.StringPtrOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// NewNetworkForward registers a new resource with the given unique name, arguments, and options.
|
||||
func NewNetworkForward(ctx *pulumi.Context,
|
||||
name string, args *NetworkForwardArgs, opts ...pulumi.ResourceOption) (*NetworkForward, error) {
|
||||
if args == nil {
|
||||
return nil, errors.New("missing one or more required arguments")
|
||||
}
|
||||
|
||||
if args.ListenAddress == nil {
|
||||
return nil, errors.New("invalid value for required argument 'ListenAddress'")
|
||||
}
|
||||
if args.Network == nil {
|
||||
return nil, errors.New("invalid value for required argument 'Network'")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource NetworkForward
|
||||
err := ctx.RegisterResource("incus:index/networkForward:NetworkForward", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetNetworkForward gets an existing NetworkForward resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetNetworkForward(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *NetworkForwardState, opts ...pulumi.ResourceOption) (*NetworkForward, error) {
|
||||
var resource NetworkForward
|
||||
err := ctx.ReadResource("incus:index/networkForward:NetworkForward", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering NetworkForward resources.
|
||||
type networkForwardState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// network forward config settings.
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of port(s)
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - IP address to listen on.
|
||||
ListenAddress *string `pulumi:"listenAddress"`
|
||||
// **Required** - Name of the network.
|
||||
Network *string `pulumi:"network"`
|
||||
// *Optional* - List of port specifications. See reference below.
|
||||
//
|
||||
// The network forward port supports:
|
||||
Ports []NetworkForwardPort `pulumi:"ports"`
|
||||
// *Optional* - Name of the project where the network forward will be created.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
type NetworkForwardState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// network forward config settings.
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of port(s)
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - IP address to listen on.
|
||||
ListenAddress pulumi.StringPtrInput
|
||||
// **Required** - Name of the network.
|
||||
Network pulumi.StringPtrInput
|
||||
// *Optional* - List of port specifications. See reference below.
|
||||
//
|
||||
// The network forward port supports:
|
||||
Ports NetworkForwardPortArrayInput
|
||||
// *Optional* - Name of the project where the network forward will be created.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkForwardState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkForwardState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type networkForwardArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// network forward config settings.
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of port(s)
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - IP address to listen on.
|
||||
ListenAddress string `pulumi:"listenAddress"`
|
||||
// **Required** - Name of the network.
|
||||
Network string `pulumi:"network"`
|
||||
// *Optional* - List of port specifications. See reference below.
|
||||
//
|
||||
// The network forward port supports:
|
||||
Ports []NetworkForwardPort `pulumi:"ports"`
|
||||
// *Optional* - Name of the project where the network forward will be created.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a NetworkForward resource.
|
||||
type NetworkForwardArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// network forward config settings.
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of port(s)
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - IP address to listen on.
|
||||
ListenAddress pulumi.StringInput
|
||||
// **Required** - Name of the network.
|
||||
Network pulumi.StringInput
|
||||
// *Optional* - List of port specifications. See reference below.
|
||||
//
|
||||
// The network forward port supports:
|
||||
Ports NetworkForwardPortArrayInput
|
||||
// *Optional* - Name of the project where the network forward will be created.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkForwardArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkForwardArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type NetworkForwardInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkForwardOutput() NetworkForwardOutput
|
||||
ToNetworkForwardOutputWithContext(ctx context.Context) NetworkForwardOutput
|
||||
}
|
||||
|
||||
func (*NetworkForward) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkForward)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *NetworkForward) ToNetworkForwardOutput() NetworkForwardOutput {
|
||||
return i.ToNetworkForwardOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *NetworkForward) ToNetworkForwardOutputWithContext(ctx context.Context) NetworkForwardOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkForwardOutput)
|
||||
}
|
||||
|
||||
// NetworkForwardArrayInput is an input type that accepts NetworkForwardArray and NetworkForwardArrayOutput values.
|
||||
// You can construct a concrete instance of `NetworkForwardArrayInput` via:
|
||||
//
|
||||
// NetworkForwardArray{ NetworkForwardArgs{...} }
|
||||
type NetworkForwardArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkForwardArrayOutput() NetworkForwardArrayOutput
|
||||
ToNetworkForwardArrayOutputWithContext(context.Context) NetworkForwardArrayOutput
|
||||
}
|
||||
|
||||
type NetworkForwardArray []NetworkForwardInput
|
||||
|
||||
func (NetworkForwardArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkForward)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkForwardArray) ToNetworkForwardArrayOutput() NetworkForwardArrayOutput {
|
||||
return i.ToNetworkForwardArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkForwardArray) ToNetworkForwardArrayOutputWithContext(ctx context.Context) NetworkForwardArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkForwardArrayOutput)
|
||||
}
|
||||
|
||||
// NetworkForwardMapInput is an input type that accepts NetworkForwardMap and NetworkForwardMapOutput values.
|
||||
// You can construct a concrete instance of `NetworkForwardMapInput` via:
|
||||
//
|
||||
// NetworkForwardMap{ "key": NetworkForwardArgs{...} }
|
||||
type NetworkForwardMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkForwardMapOutput() NetworkForwardMapOutput
|
||||
ToNetworkForwardMapOutputWithContext(context.Context) NetworkForwardMapOutput
|
||||
}
|
||||
|
||||
type NetworkForwardMap map[string]NetworkForwardInput
|
||||
|
||||
func (NetworkForwardMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkForward)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkForwardMap) ToNetworkForwardMapOutput() NetworkForwardMapOutput {
|
||||
return i.ToNetworkForwardMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkForwardMap) ToNetworkForwardMapOutputWithContext(ctx context.Context) NetworkForwardMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkForwardMapOutput)
|
||||
}
|
||||
|
||||
type NetworkForwardOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkForwardOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkForward)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkForwardOutput) ToNetworkForwardOutput() NetworkForwardOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkForwardOutput) ToNetworkForwardOutputWithContext(ctx context.Context) NetworkForwardOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// network forward config settings.
|
||||
func (o NetworkForwardOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *NetworkForward) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of port(s)
|
||||
func (o NetworkForwardOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkForward) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - IP address to listen on.
|
||||
func (o NetworkForwardOutput) ListenAddress() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkForward) pulumi.StringOutput { return v.ListenAddress }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the network.
|
||||
func (o NetworkForwardOutput) Network() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkForward) pulumi.StringOutput { return v.Network }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - List of port specifications. See reference below.
|
||||
//
|
||||
// The network forward port supports:
|
||||
func (o NetworkForwardOutput) Ports() NetworkForwardPortArrayOutput {
|
||||
return o.ApplyT(func(v *NetworkForward) NetworkForwardPortArrayOutput { return v.Ports }).(NetworkForwardPortArrayOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the network forward will be created.
|
||||
func (o NetworkForwardOutput) Project() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *NetworkForward) pulumi.StringPtrOutput { return v.Project }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o NetworkForwardOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *NetworkForward) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
type NetworkForwardArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkForwardArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkForward)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkForwardArrayOutput) ToNetworkForwardArrayOutput() NetworkForwardArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkForwardArrayOutput) ToNetworkForwardArrayOutputWithContext(ctx context.Context) NetworkForwardArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkForwardArrayOutput) Index(i pulumi.IntInput) NetworkForwardOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *NetworkForward {
|
||||
return vs[0].([]*NetworkForward)[vs[1].(int)]
|
||||
}).(NetworkForwardOutput)
|
||||
}
|
||||
|
||||
type NetworkForwardMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkForwardMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkForward)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkForwardMapOutput) ToNetworkForwardMapOutput() NetworkForwardMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkForwardMapOutput) ToNetworkForwardMapOutputWithContext(ctx context.Context) NetworkForwardMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkForwardMapOutput) MapIndex(k pulumi.StringInput) NetworkForwardOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *NetworkForward {
|
||||
return vs[0].(map[string]*NetworkForward)[vs[1].(string)]
|
||||
}).(NetworkForwardOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkForwardInput)(nil)).Elem(), &NetworkForward{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkForwardArrayInput)(nil)).Elem(), NetworkForwardArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkForwardMapInput)(nil)).Elem(), NetworkForwardMap{})
|
||||
pulumi.RegisterOutputType(NetworkForwardOutput{})
|
||||
pulumi.RegisterOutputType(NetworkForwardArrayOutput{})
|
||||
pulumi.RegisterOutputType(NetworkForwardMapOutput{})
|
||||
}
|
||||
387
sdk/go/incus/networkIntegration.go
generated
Normal file
387
sdk/go/incus/networkIntegration.go
generated
Normal file
@@ -0,0 +1,387 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"errors"
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
// ## # NetworkIntegration
|
||||
//
|
||||
// Manage integrations between the local Incus deployment and remote networks hosted on Incus or other platforms. Currently available only for [OVN networks](https://linuxcontainers.org/incus/docs/main/reference/network_ovn/#network-ovn).
|
||||
//
|
||||
// ## Basic Example
|
||||
//
|
||||
// ```go
|
||||
// package main
|
||||
//
|
||||
// import (
|
||||
//
|
||||
// "git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus"
|
||||
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
//
|
||||
// )
|
||||
//
|
||||
// func main() {
|
||||
// pulumi.Run(func(ctx *pulumi.Context) error {
|
||||
// _, err := incus.NewNetworkIntegration(ctx, "this", &incus.NetworkIntegrationArgs{
|
||||
// Name: pulumi.String("ovn-region"),
|
||||
// Type: pulumi.String("ovn"),
|
||||
// Config: pulumi.StringMap{
|
||||
// "ovn.northbound_connection": pulumi.String("tcp:[192.0.2.12]:6645,tcp:[192.0.3.13]:6645,tcp:[192.0.3.14]:6645"),
|
||||
// "ovn.southbound_connection": pulumi.String("tcp:[192.0.2.12]:6646,tcp:[192.0.3.13]:6646,tcp:[192.0.3.14]:6646"),
|
||||
// },
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
// })
|
||||
// }
|
||||
//
|
||||
// ```
|
||||
//
|
||||
// ## Peer Example
|
||||
//
|
||||
// ```go
|
||||
// package main
|
||||
//
|
||||
// import (
|
||||
//
|
||||
// "git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus"
|
||||
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
//
|
||||
// )
|
||||
//
|
||||
// func main() {
|
||||
// pulumi.Run(func(ctx *pulumi.Context) error {
|
||||
// _default, err := incus.NewNetwork(ctx, "default", &incus.NetworkArgs{
|
||||
// Name: pulumi.String("default"),
|
||||
// Type: pulumi.String("ovn"),
|
||||
// Config: pulumi.StringMap{
|
||||
// "ipv4.address": pulumi.String("192.168.2.0/24"),
|
||||
// "ipv4.nat": pulumi.String("true"),
|
||||
// },
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// this, err := incus.NewNetworkIntegration(ctx, "this", &incus.NetworkIntegrationArgs{
|
||||
// Name: pulumi.String("ovn-region"),
|
||||
// Type: pulumi.String("ovn"),
|
||||
// Config: pulumi.StringMap{
|
||||
// "ovn.northbound_connection": pulumi.String("tcp:[192.0.2.12]:6645,tcp:[192.0.3.13]:6645,tcp:[192.0.3.14]:6645"),
|
||||
// "ovn.southbound_connection": pulumi.String("tcp:[192.0.2.12]:6646,tcp:[192.0.3.13]:6646,tcp:[192.0.3.14]:6646"),
|
||||
// },
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// _, err = incus.NewNetworkPeer(ctx, "this", &incus.NetworkPeerArgs{
|
||||
// Name: pulumi.String("ovn-peer"),
|
||||
// Network: _default.Name,
|
||||
// TargetIntegration: this.Name,
|
||||
// Type: pulumi.String("remote"),
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
// })
|
||||
// }
|
||||
//
|
||||
// ```
|
||||
type NetworkIntegration struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Map of key/value pairs of [network integration config settings](https://linuxcontainers.org/incus/docs/main/howto/network_integrations/)
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
// *Optional* - Description of the network integration.
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// **Required** - Name of the network integration.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network will be created.
|
||||
Project pulumi.StringOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
// **Required** - The type of the network integration. Currently, only supports `ovn` type.
|
||||
Type pulumi.StringOutput `pulumi:"type"`
|
||||
}
|
||||
|
||||
// NewNetworkIntegration registers a new resource with the given unique name, arguments, and options.
|
||||
func NewNetworkIntegration(ctx *pulumi.Context,
|
||||
name string, args *NetworkIntegrationArgs, opts ...pulumi.ResourceOption) (*NetworkIntegration, error) {
|
||||
if args == nil {
|
||||
return nil, errors.New("missing one or more required arguments")
|
||||
}
|
||||
|
||||
if args.Type == nil {
|
||||
return nil, errors.New("invalid value for required argument 'Type'")
|
||||
}
|
||||
if args.Project == nil {
|
||||
args.Project = pulumi.StringPtr("default")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource NetworkIntegration
|
||||
err := ctx.RegisterResource("incus:index/networkIntegration:NetworkIntegration", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetNetworkIntegration gets an existing NetworkIntegration resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetNetworkIntegration(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *NetworkIntegrationState, opts ...pulumi.ResourceOption) (*NetworkIntegration, error) {
|
||||
var resource NetworkIntegration
|
||||
err := ctx.ReadResource("incus:index/networkIntegration:NetworkIntegration", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering NetworkIntegration resources.
|
||||
type networkIntegrationState struct {
|
||||
// *Optional* - Map of key/value pairs of [network integration config settings](https://linuxcontainers.org/incus/docs/main/howto/network_integrations/)
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the network integration.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the network integration.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network will be created.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// **Required** - The type of the network integration. Currently, only supports `ovn` type.
|
||||
Type *string `pulumi:"type"`
|
||||
}
|
||||
|
||||
type NetworkIntegrationState struct {
|
||||
// *Optional* - Map of key/value pairs of [network integration config settings](https://linuxcontainers.org/incus/docs/main/howto/network_integrations/)
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the network integration.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the network integration.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the network will be created.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// **Required** - The type of the network integration. Currently, only supports `ovn` type.
|
||||
Type pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkIntegrationState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkIntegrationState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type networkIntegrationArgs struct {
|
||||
// *Optional* - Map of key/value pairs of [network integration config settings](https://linuxcontainers.org/incus/docs/main/howto/network_integrations/)
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the network integration.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the network integration.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network will be created.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// **Required** - The type of the network integration. Currently, only supports `ovn` type.
|
||||
Type string `pulumi:"type"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a NetworkIntegration resource.
|
||||
type NetworkIntegrationArgs struct {
|
||||
// *Optional* - Map of key/value pairs of [network integration config settings](https://linuxcontainers.org/incus/docs/main/howto/network_integrations/)
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the network integration.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the network integration.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the network will be created.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// **Required** - The type of the network integration. Currently, only supports `ovn` type.
|
||||
Type pulumi.StringInput
|
||||
}
|
||||
|
||||
func (NetworkIntegrationArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkIntegrationArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type NetworkIntegrationInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkIntegrationOutput() NetworkIntegrationOutput
|
||||
ToNetworkIntegrationOutputWithContext(ctx context.Context) NetworkIntegrationOutput
|
||||
}
|
||||
|
||||
func (*NetworkIntegration) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkIntegration)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *NetworkIntegration) ToNetworkIntegrationOutput() NetworkIntegrationOutput {
|
||||
return i.ToNetworkIntegrationOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *NetworkIntegration) ToNetworkIntegrationOutputWithContext(ctx context.Context) NetworkIntegrationOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkIntegrationOutput)
|
||||
}
|
||||
|
||||
// NetworkIntegrationArrayInput is an input type that accepts NetworkIntegrationArray and NetworkIntegrationArrayOutput values.
|
||||
// You can construct a concrete instance of `NetworkIntegrationArrayInput` via:
|
||||
//
|
||||
// NetworkIntegrationArray{ NetworkIntegrationArgs{...} }
|
||||
type NetworkIntegrationArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkIntegrationArrayOutput() NetworkIntegrationArrayOutput
|
||||
ToNetworkIntegrationArrayOutputWithContext(context.Context) NetworkIntegrationArrayOutput
|
||||
}
|
||||
|
||||
type NetworkIntegrationArray []NetworkIntegrationInput
|
||||
|
||||
func (NetworkIntegrationArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkIntegration)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkIntegrationArray) ToNetworkIntegrationArrayOutput() NetworkIntegrationArrayOutput {
|
||||
return i.ToNetworkIntegrationArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkIntegrationArray) ToNetworkIntegrationArrayOutputWithContext(ctx context.Context) NetworkIntegrationArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkIntegrationArrayOutput)
|
||||
}
|
||||
|
||||
// NetworkIntegrationMapInput is an input type that accepts NetworkIntegrationMap and NetworkIntegrationMapOutput values.
|
||||
// You can construct a concrete instance of `NetworkIntegrationMapInput` via:
|
||||
//
|
||||
// NetworkIntegrationMap{ "key": NetworkIntegrationArgs{...} }
|
||||
type NetworkIntegrationMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkIntegrationMapOutput() NetworkIntegrationMapOutput
|
||||
ToNetworkIntegrationMapOutputWithContext(context.Context) NetworkIntegrationMapOutput
|
||||
}
|
||||
|
||||
type NetworkIntegrationMap map[string]NetworkIntegrationInput
|
||||
|
||||
func (NetworkIntegrationMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkIntegration)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkIntegrationMap) ToNetworkIntegrationMapOutput() NetworkIntegrationMapOutput {
|
||||
return i.ToNetworkIntegrationMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkIntegrationMap) ToNetworkIntegrationMapOutputWithContext(ctx context.Context) NetworkIntegrationMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkIntegrationMapOutput)
|
||||
}
|
||||
|
||||
type NetworkIntegrationOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkIntegrationOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkIntegration)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkIntegrationOutput) ToNetworkIntegrationOutput() NetworkIntegrationOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkIntegrationOutput) ToNetworkIntegrationOutputWithContext(ctx context.Context) NetworkIntegrationOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Map of key/value pairs of [network integration config settings](https://linuxcontainers.org/incus/docs/main/howto/network_integrations/)
|
||||
func (o NetworkIntegrationOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *NetworkIntegration) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the network integration.
|
||||
func (o NetworkIntegrationOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkIntegration) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the network integration.
|
||||
func (o NetworkIntegrationOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkIntegration) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the network will be created.
|
||||
func (o NetworkIntegrationOutput) Project() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkIntegration) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o NetworkIntegrationOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *NetworkIntegration) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// **Required** - The type of the network integration. Currently, only supports `ovn` type.
|
||||
func (o NetworkIntegrationOutput) Type() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkIntegration) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
type NetworkIntegrationArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkIntegrationArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkIntegration)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkIntegrationArrayOutput) ToNetworkIntegrationArrayOutput() NetworkIntegrationArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkIntegrationArrayOutput) ToNetworkIntegrationArrayOutputWithContext(ctx context.Context) NetworkIntegrationArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkIntegrationArrayOutput) Index(i pulumi.IntInput) NetworkIntegrationOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *NetworkIntegration {
|
||||
return vs[0].([]*NetworkIntegration)[vs[1].(int)]
|
||||
}).(NetworkIntegrationOutput)
|
||||
}
|
||||
|
||||
type NetworkIntegrationMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkIntegrationMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkIntegration)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkIntegrationMapOutput) ToNetworkIntegrationMapOutput() NetworkIntegrationMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkIntegrationMapOutput) ToNetworkIntegrationMapOutputWithContext(ctx context.Context) NetworkIntegrationMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkIntegrationMapOutput) MapIndex(k pulumi.StringInput) NetworkIntegrationOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *NetworkIntegration {
|
||||
return vs[0].(map[string]*NetworkIntegration)[vs[1].(string)]
|
||||
}).(NetworkIntegrationOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkIntegrationInput)(nil)).Elem(), &NetworkIntegration{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkIntegrationArrayInput)(nil)).Elem(), NetworkIntegrationArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkIntegrationMapInput)(nil)).Elem(), NetworkIntegrationMap{})
|
||||
pulumi.RegisterOutputType(NetworkIntegrationOutput{})
|
||||
pulumi.RegisterOutputType(NetworkIntegrationArrayOutput{})
|
||||
pulumi.RegisterOutputType(NetworkIntegrationMapOutput{})
|
||||
}
|
||||
290
sdk/go/incus/networkLoadBalancer.go
generated
Normal file
290
sdk/go/incus/networkLoadBalancer.go
generated
Normal file
@@ -0,0 +1,290 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"errors"
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type NetworkLoadBalancer struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// Network load balancer backend
|
||||
Backends NetworkLoadBalancerBackendArrayOutput `pulumi:"backends"`
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
ListenAddress pulumi.StringOutput `pulumi:"listenAddress"`
|
||||
Network pulumi.StringOutput `pulumi:"network"`
|
||||
// Network load balancer port
|
||||
Ports NetworkLoadBalancerPortArrayOutput `pulumi:"ports"`
|
||||
Project pulumi.StringPtrOutput `pulumi:"project"`
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// NewNetworkLoadBalancer registers a new resource with the given unique name, arguments, and options.
|
||||
func NewNetworkLoadBalancer(ctx *pulumi.Context,
|
||||
name string, args *NetworkLoadBalancerArgs, opts ...pulumi.ResourceOption) (*NetworkLoadBalancer, error) {
|
||||
if args == nil {
|
||||
return nil, errors.New("missing one or more required arguments")
|
||||
}
|
||||
|
||||
if args.ListenAddress == nil {
|
||||
return nil, errors.New("invalid value for required argument 'ListenAddress'")
|
||||
}
|
||||
if args.Network == nil {
|
||||
return nil, errors.New("invalid value for required argument 'Network'")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource NetworkLoadBalancer
|
||||
err := ctx.RegisterResource("incus:index/networkLoadBalancer:NetworkLoadBalancer", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetNetworkLoadBalancer gets an existing NetworkLoadBalancer resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetNetworkLoadBalancer(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *NetworkLoadBalancerState, opts ...pulumi.ResourceOption) (*NetworkLoadBalancer, error) {
|
||||
var resource NetworkLoadBalancer
|
||||
err := ctx.ReadResource("incus:index/networkLoadBalancer:NetworkLoadBalancer", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering NetworkLoadBalancer resources.
|
||||
type networkLoadBalancerState struct {
|
||||
// Network load balancer backend
|
||||
Backends []NetworkLoadBalancerBackend `pulumi:"backends"`
|
||||
Config map[string]string `pulumi:"config"`
|
||||
Description *string `pulumi:"description"`
|
||||
ListenAddress *string `pulumi:"listenAddress"`
|
||||
Network *string `pulumi:"network"`
|
||||
// Network load balancer port
|
||||
Ports []NetworkLoadBalancerPort `pulumi:"ports"`
|
||||
Project *string `pulumi:"project"`
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
type NetworkLoadBalancerState struct {
|
||||
// Network load balancer backend
|
||||
Backends NetworkLoadBalancerBackendArrayInput
|
||||
Config pulumi.StringMapInput
|
||||
Description pulumi.StringPtrInput
|
||||
ListenAddress pulumi.StringPtrInput
|
||||
Network pulumi.StringPtrInput
|
||||
// Network load balancer port
|
||||
Ports NetworkLoadBalancerPortArrayInput
|
||||
Project pulumi.StringPtrInput
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkLoadBalancerState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkLoadBalancerState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type networkLoadBalancerArgs struct {
|
||||
// Network load balancer backend
|
||||
Backends []NetworkLoadBalancerBackend `pulumi:"backends"`
|
||||
Config map[string]string `pulumi:"config"`
|
||||
Description *string `pulumi:"description"`
|
||||
ListenAddress string `pulumi:"listenAddress"`
|
||||
Network string `pulumi:"network"`
|
||||
// Network load balancer port
|
||||
Ports []NetworkLoadBalancerPort `pulumi:"ports"`
|
||||
Project *string `pulumi:"project"`
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a NetworkLoadBalancer resource.
|
||||
type NetworkLoadBalancerArgs struct {
|
||||
// Network load balancer backend
|
||||
Backends NetworkLoadBalancerBackendArrayInput
|
||||
Config pulumi.StringMapInput
|
||||
Description pulumi.StringPtrInput
|
||||
ListenAddress pulumi.StringInput
|
||||
Network pulumi.StringInput
|
||||
// Network load balancer port
|
||||
Ports NetworkLoadBalancerPortArrayInput
|
||||
Project pulumi.StringPtrInput
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkLoadBalancerArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkLoadBalancerArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type NetworkLoadBalancerInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkLoadBalancerOutput() NetworkLoadBalancerOutput
|
||||
ToNetworkLoadBalancerOutputWithContext(ctx context.Context) NetworkLoadBalancerOutput
|
||||
}
|
||||
|
||||
func (*NetworkLoadBalancer) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkLoadBalancer)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *NetworkLoadBalancer) ToNetworkLoadBalancerOutput() NetworkLoadBalancerOutput {
|
||||
return i.ToNetworkLoadBalancerOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *NetworkLoadBalancer) ToNetworkLoadBalancerOutputWithContext(ctx context.Context) NetworkLoadBalancerOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkLoadBalancerOutput)
|
||||
}
|
||||
|
||||
// NetworkLoadBalancerArrayInput is an input type that accepts NetworkLoadBalancerArray and NetworkLoadBalancerArrayOutput values.
|
||||
// You can construct a concrete instance of `NetworkLoadBalancerArrayInput` via:
|
||||
//
|
||||
// NetworkLoadBalancerArray{ NetworkLoadBalancerArgs{...} }
|
||||
type NetworkLoadBalancerArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkLoadBalancerArrayOutput() NetworkLoadBalancerArrayOutput
|
||||
ToNetworkLoadBalancerArrayOutputWithContext(context.Context) NetworkLoadBalancerArrayOutput
|
||||
}
|
||||
|
||||
type NetworkLoadBalancerArray []NetworkLoadBalancerInput
|
||||
|
||||
func (NetworkLoadBalancerArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkLoadBalancer)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkLoadBalancerArray) ToNetworkLoadBalancerArrayOutput() NetworkLoadBalancerArrayOutput {
|
||||
return i.ToNetworkLoadBalancerArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkLoadBalancerArray) ToNetworkLoadBalancerArrayOutputWithContext(ctx context.Context) NetworkLoadBalancerArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkLoadBalancerArrayOutput)
|
||||
}
|
||||
|
||||
// NetworkLoadBalancerMapInput is an input type that accepts NetworkLoadBalancerMap and NetworkLoadBalancerMapOutput values.
|
||||
// You can construct a concrete instance of `NetworkLoadBalancerMapInput` via:
|
||||
//
|
||||
// NetworkLoadBalancerMap{ "key": NetworkLoadBalancerArgs{...} }
|
||||
type NetworkLoadBalancerMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkLoadBalancerMapOutput() NetworkLoadBalancerMapOutput
|
||||
ToNetworkLoadBalancerMapOutputWithContext(context.Context) NetworkLoadBalancerMapOutput
|
||||
}
|
||||
|
||||
type NetworkLoadBalancerMap map[string]NetworkLoadBalancerInput
|
||||
|
||||
func (NetworkLoadBalancerMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkLoadBalancer)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkLoadBalancerMap) ToNetworkLoadBalancerMapOutput() NetworkLoadBalancerMapOutput {
|
||||
return i.ToNetworkLoadBalancerMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkLoadBalancerMap) ToNetworkLoadBalancerMapOutputWithContext(ctx context.Context) NetworkLoadBalancerMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkLoadBalancerMapOutput)
|
||||
}
|
||||
|
||||
type NetworkLoadBalancerOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkLoadBalancerOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkLoadBalancer)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerOutput) ToNetworkLoadBalancerOutput() NetworkLoadBalancerOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerOutput) ToNetworkLoadBalancerOutputWithContext(ctx context.Context) NetworkLoadBalancerOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// Network load balancer backend
|
||||
func (o NetworkLoadBalancerOutput) Backends() NetworkLoadBalancerBackendArrayOutput {
|
||||
return o.ApplyT(func(v *NetworkLoadBalancer) NetworkLoadBalancerBackendArrayOutput { return v.Backends }).(NetworkLoadBalancerBackendArrayOutput)
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *NetworkLoadBalancer) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkLoadBalancer) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerOutput) ListenAddress() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkLoadBalancer) pulumi.StringOutput { return v.ListenAddress }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerOutput) Network() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkLoadBalancer) pulumi.StringOutput { return v.Network }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// Network load balancer port
|
||||
func (o NetworkLoadBalancerOutput) Ports() NetworkLoadBalancerPortArrayOutput {
|
||||
return o.ApplyT(func(v *NetworkLoadBalancer) NetworkLoadBalancerPortArrayOutput { return v.Ports }).(NetworkLoadBalancerPortArrayOutput)
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerOutput) Project() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *NetworkLoadBalancer) pulumi.StringPtrOutput { return v.Project }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *NetworkLoadBalancer) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
type NetworkLoadBalancerArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkLoadBalancerArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkLoadBalancer)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerArrayOutput) ToNetworkLoadBalancerArrayOutput() NetworkLoadBalancerArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerArrayOutput) ToNetworkLoadBalancerArrayOutputWithContext(ctx context.Context) NetworkLoadBalancerArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerArrayOutput) Index(i pulumi.IntInput) NetworkLoadBalancerOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *NetworkLoadBalancer {
|
||||
return vs[0].([]*NetworkLoadBalancer)[vs[1].(int)]
|
||||
}).(NetworkLoadBalancerOutput)
|
||||
}
|
||||
|
||||
type NetworkLoadBalancerMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkLoadBalancerMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkLoadBalancer)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerMapOutput) ToNetworkLoadBalancerMapOutput() NetworkLoadBalancerMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerMapOutput) ToNetworkLoadBalancerMapOutputWithContext(ctx context.Context) NetworkLoadBalancerMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkLoadBalancerMapOutput) MapIndex(k pulumi.StringInput) NetworkLoadBalancerOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *NetworkLoadBalancer {
|
||||
return vs[0].(map[string]*NetworkLoadBalancer)[vs[1].(string)]
|
||||
}).(NetworkLoadBalancerOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkLoadBalancerInput)(nil)).Elem(), &NetworkLoadBalancer{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkLoadBalancerArrayInput)(nil)).Elem(), NetworkLoadBalancerArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkLoadBalancerMapInput)(nil)).Elem(), NetworkLoadBalancerMap{})
|
||||
pulumi.RegisterOutputType(NetworkLoadBalancerOutput{})
|
||||
pulumi.RegisterOutputType(NetworkLoadBalancerArrayOutput{})
|
||||
pulumi.RegisterOutputType(NetworkLoadBalancerMapOutput{})
|
||||
}
|
||||
427
sdk/go/incus/networkPeer.go
generated
Normal file
427
sdk/go/incus/networkPeer.go
generated
Normal file
@@ -0,0 +1,427 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
// ## # NetworkPeer
|
||||
//
|
||||
// Incus allows creating peer routing relationships between two OVN networks. Using this method, traffic between the two
|
||||
// networks can go directly from one OVN network to the other and thus stays within the OVN subsystem, rather than transiting
|
||||
// through the uplink network.
|
||||
//
|
||||
// > The peer resource is exclusively compatible with OVN (Open Virtual Network).
|
||||
//
|
||||
// For more information, please refer to [How to create peer routing relationships](https://linuxcontainers.org/incus/docs/main/howto/network_ovn_peers/)
|
||||
// in the official Incus documentation.
|
||||
//
|
||||
// ## Example Usage
|
||||
//
|
||||
// ```go
|
||||
// package main
|
||||
//
|
||||
// import (
|
||||
//
|
||||
// "git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus"
|
||||
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
//
|
||||
// )
|
||||
//
|
||||
// func main() {
|
||||
// pulumi.Run(func(ctx *pulumi.Context) error {
|
||||
// lan0, err := incus.NewNetwork(ctx, "lan0", &incus.NetworkArgs{
|
||||
// Name: pulumi.String("lan0"),
|
||||
// Type: pulumi.String("ovn"),
|
||||
// Config: pulumi.StringMap{},
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// lan1, err := incus.NewNetwork(ctx, "lan1", &incus.NetworkArgs{
|
||||
// Name: pulumi.String("lan1"),
|
||||
// Type: pulumi.String("ovn"),
|
||||
// Config: pulumi.StringMap{},
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// _, err = incus.NewNetworkPeer(ctx, "lan0_lan1", &incus.NetworkPeerArgs{
|
||||
// Name: pulumi.String("lab0-lan1"),
|
||||
// Description: pulumi.String("A meaningful description"),
|
||||
// Network: lan0.Name,
|
||||
// Project: pulumi.String("default"),
|
||||
// TargetNetwork: lan1.Name,
|
||||
// TargetProject: pulumi.String("default"),
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// _, err = incus.NewNetworkPeer(ctx, "lan1_lan0", &incus.NetworkPeerArgs{
|
||||
// Name: pulumi.String("lab1-lan0"),
|
||||
// Description: pulumi.String("A meaningful description"),
|
||||
// Network: lan1.Name,
|
||||
// Project: pulumi.String("default"),
|
||||
// TargetNetwork: lan0.Name,
|
||||
// TargetProject: pulumi.String("default"),
|
||||
// })
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
// })
|
||||
// }
|
||||
//
|
||||
// ```
|
||||
type NetworkPeer struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Configuration options as key/value pairs (only user.* custom keys supported)
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
// *Optional* - Description of the network peering
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// **required** - Name of the network peering on the local network
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// **Required** - Name of the local network.
|
||||
Network pulumi.StringPtrOutput `pulumi:"network"`
|
||||
// *Optional* - Name of the project where the network is located.
|
||||
Project pulumi.StringOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
Status pulumi.StringOutput `pulumi:"status"`
|
||||
TargetIntegration pulumi.StringOutput `pulumi:"targetIntegration"`
|
||||
// **required** - Which network to create a peering with (required at create time for local peers)
|
||||
TargetNetwork pulumi.StringOutput `pulumi:"targetNetwork"`
|
||||
// *Optional* - Which project the target network exists in (required at create time for local peers)
|
||||
TargetProject pulumi.StringOutput `pulumi:"targetProject"`
|
||||
// *Optional* - Type of network peering
|
||||
Type pulumi.StringOutput `pulumi:"type"`
|
||||
}
|
||||
|
||||
// NewNetworkPeer registers a new resource with the given unique name, arguments, and options.
|
||||
func NewNetworkPeer(ctx *pulumi.Context,
|
||||
name string, args *NetworkPeerArgs, opts ...pulumi.ResourceOption) (*NetworkPeer, error) {
|
||||
if args == nil {
|
||||
args = &NetworkPeerArgs{}
|
||||
}
|
||||
|
||||
if args.Project == nil {
|
||||
args.Project = pulumi.StringPtr("default")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource NetworkPeer
|
||||
err := ctx.RegisterResource("incus:index/networkPeer:NetworkPeer", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetNetworkPeer gets an existing NetworkPeer resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetNetworkPeer(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *NetworkPeerState, opts ...pulumi.ResourceOption) (*NetworkPeer, error) {
|
||||
var resource NetworkPeer
|
||||
err := ctx.ReadResource("incus:index/networkPeer:NetworkPeer", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering NetworkPeer resources.
|
||||
type networkPeerState struct {
|
||||
// *Optional* - Configuration options as key/value pairs (only user.* custom keys supported)
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the network peering
|
||||
Description *string `pulumi:"description"`
|
||||
// **required** - Name of the network peering on the local network
|
||||
Name *string `pulumi:"name"`
|
||||
// **Required** - Name of the local network.
|
||||
Network *string `pulumi:"network"`
|
||||
// *Optional* - Name of the project where the network is located.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
Status *string `pulumi:"status"`
|
||||
TargetIntegration *string `pulumi:"targetIntegration"`
|
||||
// **required** - Which network to create a peering with (required at create time for local peers)
|
||||
TargetNetwork *string `pulumi:"targetNetwork"`
|
||||
// *Optional* - Which project the target network exists in (required at create time for local peers)
|
||||
TargetProject *string `pulumi:"targetProject"`
|
||||
// *Optional* - Type of network peering
|
||||
Type *string `pulumi:"type"`
|
||||
}
|
||||
|
||||
type NetworkPeerState struct {
|
||||
// *Optional* - Configuration options as key/value pairs (only user.* custom keys supported)
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the network peering
|
||||
Description pulumi.StringPtrInput
|
||||
// **required** - Name of the network peering on the local network
|
||||
Name pulumi.StringPtrInput
|
||||
// **Required** - Name of the local network.
|
||||
Network pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the network is located.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
Status pulumi.StringPtrInput
|
||||
TargetIntegration pulumi.StringPtrInput
|
||||
// **required** - Which network to create a peering with (required at create time for local peers)
|
||||
TargetNetwork pulumi.StringPtrInput
|
||||
// *Optional* - Which project the target network exists in (required at create time for local peers)
|
||||
TargetProject pulumi.StringPtrInput
|
||||
// *Optional* - Type of network peering
|
||||
Type pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkPeerState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkPeerState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type networkPeerArgs struct {
|
||||
// *Optional* - Configuration options as key/value pairs (only user.* custom keys supported)
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the network peering
|
||||
Description *string `pulumi:"description"`
|
||||
// **required** - Name of the network peering on the local network
|
||||
Name *string `pulumi:"name"`
|
||||
// **Required** - Name of the local network.
|
||||
Network *string `pulumi:"network"`
|
||||
// *Optional* - Name of the project where the network is located.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
TargetIntegration *string `pulumi:"targetIntegration"`
|
||||
// **required** - Which network to create a peering with (required at create time for local peers)
|
||||
TargetNetwork *string `pulumi:"targetNetwork"`
|
||||
// *Optional* - Which project the target network exists in (required at create time for local peers)
|
||||
TargetProject *string `pulumi:"targetProject"`
|
||||
// *Optional* - Type of network peering
|
||||
Type *string `pulumi:"type"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a NetworkPeer resource.
|
||||
type NetworkPeerArgs struct {
|
||||
// *Optional* - Configuration options as key/value pairs (only user.* custom keys supported)
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the network peering
|
||||
Description pulumi.StringPtrInput
|
||||
// **required** - Name of the network peering on the local network
|
||||
Name pulumi.StringPtrInput
|
||||
// **Required** - Name of the local network.
|
||||
Network pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the network is located.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
TargetIntegration pulumi.StringPtrInput
|
||||
// **required** - Which network to create a peering with (required at create time for local peers)
|
||||
TargetNetwork pulumi.StringPtrInput
|
||||
// *Optional* - Which project the target network exists in (required at create time for local peers)
|
||||
TargetProject pulumi.StringPtrInput
|
||||
// *Optional* - Type of network peering
|
||||
Type pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkPeerArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkPeerArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type NetworkPeerInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkPeerOutput() NetworkPeerOutput
|
||||
ToNetworkPeerOutputWithContext(ctx context.Context) NetworkPeerOutput
|
||||
}
|
||||
|
||||
func (*NetworkPeer) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkPeer)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *NetworkPeer) ToNetworkPeerOutput() NetworkPeerOutput {
|
||||
return i.ToNetworkPeerOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *NetworkPeer) ToNetworkPeerOutputWithContext(ctx context.Context) NetworkPeerOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkPeerOutput)
|
||||
}
|
||||
|
||||
// NetworkPeerArrayInput is an input type that accepts NetworkPeerArray and NetworkPeerArrayOutput values.
|
||||
// You can construct a concrete instance of `NetworkPeerArrayInput` via:
|
||||
//
|
||||
// NetworkPeerArray{ NetworkPeerArgs{...} }
|
||||
type NetworkPeerArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkPeerArrayOutput() NetworkPeerArrayOutput
|
||||
ToNetworkPeerArrayOutputWithContext(context.Context) NetworkPeerArrayOutput
|
||||
}
|
||||
|
||||
type NetworkPeerArray []NetworkPeerInput
|
||||
|
||||
func (NetworkPeerArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkPeer)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkPeerArray) ToNetworkPeerArrayOutput() NetworkPeerArrayOutput {
|
||||
return i.ToNetworkPeerArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkPeerArray) ToNetworkPeerArrayOutputWithContext(ctx context.Context) NetworkPeerArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkPeerArrayOutput)
|
||||
}
|
||||
|
||||
// NetworkPeerMapInput is an input type that accepts NetworkPeerMap and NetworkPeerMapOutput values.
|
||||
// You can construct a concrete instance of `NetworkPeerMapInput` via:
|
||||
//
|
||||
// NetworkPeerMap{ "key": NetworkPeerArgs{...} }
|
||||
type NetworkPeerMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkPeerMapOutput() NetworkPeerMapOutput
|
||||
ToNetworkPeerMapOutputWithContext(context.Context) NetworkPeerMapOutput
|
||||
}
|
||||
|
||||
type NetworkPeerMap map[string]NetworkPeerInput
|
||||
|
||||
func (NetworkPeerMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkPeer)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkPeerMap) ToNetworkPeerMapOutput() NetworkPeerMapOutput {
|
||||
return i.ToNetworkPeerMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkPeerMap) ToNetworkPeerMapOutputWithContext(ctx context.Context) NetworkPeerMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkPeerMapOutput)
|
||||
}
|
||||
|
||||
type NetworkPeerOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkPeerOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkPeer)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkPeerOutput) ToNetworkPeerOutput() NetworkPeerOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkPeerOutput) ToNetworkPeerOutputWithContext(ctx context.Context) NetworkPeerOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Configuration options as key/value pairs (only user.* custom keys supported)
|
||||
func (o NetworkPeerOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *NetworkPeer) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the network peering
|
||||
func (o NetworkPeerOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkPeer) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **required** - Name of the network peering on the local network
|
||||
func (o NetworkPeerOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkPeer) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the local network.
|
||||
func (o NetworkPeerOutput) Network() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *NetworkPeer) pulumi.StringPtrOutput { return v.Network }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the network is located.
|
||||
func (o NetworkPeerOutput) Project() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkPeer) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o NetworkPeerOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *NetworkPeer) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
func (o NetworkPeerOutput) Status() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkPeer) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
func (o NetworkPeerOutput) TargetIntegration() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkPeer) pulumi.StringOutput { return v.TargetIntegration }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **required** - Which network to create a peering with (required at create time for local peers)
|
||||
func (o NetworkPeerOutput) TargetNetwork() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkPeer) pulumi.StringOutput { return v.TargetNetwork }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Which project the target network exists in (required at create time for local peers)
|
||||
func (o NetworkPeerOutput) TargetProject() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkPeer) pulumi.StringOutput { return v.TargetProject }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Type of network peering
|
||||
func (o NetworkPeerOutput) Type() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkPeer) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
type NetworkPeerArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkPeerArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkPeer)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkPeerArrayOutput) ToNetworkPeerArrayOutput() NetworkPeerArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkPeerArrayOutput) ToNetworkPeerArrayOutputWithContext(ctx context.Context) NetworkPeerArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkPeerArrayOutput) Index(i pulumi.IntInput) NetworkPeerOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *NetworkPeer {
|
||||
return vs[0].([]*NetworkPeer)[vs[1].(int)]
|
||||
}).(NetworkPeerOutput)
|
||||
}
|
||||
|
||||
type NetworkPeerMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkPeerMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkPeer)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkPeerMapOutput) ToNetworkPeerMapOutput() NetworkPeerMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkPeerMapOutput) ToNetworkPeerMapOutputWithContext(ctx context.Context) NetworkPeerMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkPeerMapOutput) MapIndex(k pulumi.StringInput) NetworkPeerOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *NetworkPeer {
|
||||
return vs[0].(map[string]*NetworkPeer)[vs[1].(string)]
|
||||
}).(NetworkPeerOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkPeerInput)(nil)).Elem(), &NetworkPeer{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkPeerArrayInput)(nil)).Elem(), NetworkPeerArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkPeerMapInput)(nil)).Elem(), NetworkPeerMap{})
|
||||
pulumi.RegisterOutputType(NetworkPeerOutput{})
|
||||
pulumi.RegisterOutputType(NetworkPeerArrayOutput{})
|
||||
pulumi.RegisterOutputType(NetworkPeerMapOutput{})
|
||||
}
|
||||
289
sdk/go/incus/networkZone.go
generated
Normal file
289
sdk/go/incus/networkZone.go
generated
Normal file
@@ -0,0 +1,289 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type NetworkZone struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
// *Optional* - Description of the network zone.
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// **Required** - Name of the network zone.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network zone will be created.
|
||||
Project pulumi.StringOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// NewNetworkZone registers a new resource with the given unique name, arguments, and options.
|
||||
func NewNetworkZone(ctx *pulumi.Context,
|
||||
name string, args *NetworkZoneArgs, opts ...pulumi.ResourceOption) (*NetworkZone, error) {
|
||||
if args == nil {
|
||||
args = &NetworkZoneArgs{}
|
||||
}
|
||||
|
||||
if args.Project == nil {
|
||||
args.Project = pulumi.StringPtr("default")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource NetworkZone
|
||||
err := ctx.RegisterResource("incus:index/networkZone:NetworkZone", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetNetworkZone gets an existing NetworkZone resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetNetworkZone(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *NetworkZoneState, opts ...pulumi.ResourceOption) (*NetworkZone, error) {
|
||||
var resource NetworkZone
|
||||
err := ctx.ReadResource("incus:index/networkZone:NetworkZone", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering NetworkZone resources.
|
||||
type networkZoneState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the network zone.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the network zone.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network zone will be created.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
type NetworkZoneState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the network zone.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the network zone.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the network zone will be created.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkZoneState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkZoneState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type networkZoneArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the network zone.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the network zone.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network zone will be created.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a NetworkZone resource.
|
||||
type NetworkZoneArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the network zone.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the network zone.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the network zone will be created.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkZoneArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkZoneArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type NetworkZoneInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkZoneOutput() NetworkZoneOutput
|
||||
ToNetworkZoneOutputWithContext(ctx context.Context) NetworkZoneOutput
|
||||
}
|
||||
|
||||
func (*NetworkZone) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkZone)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *NetworkZone) ToNetworkZoneOutput() NetworkZoneOutput {
|
||||
return i.ToNetworkZoneOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *NetworkZone) ToNetworkZoneOutputWithContext(ctx context.Context) NetworkZoneOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkZoneOutput)
|
||||
}
|
||||
|
||||
// NetworkZoneArrayInput is an input type that accepts NetworkZoneArray and NetworkZoneArrayOutput values.
|
||||
// You can construct a concrete instance of `NetworkZoneArrayInput` via:
|
||||
//
|
||||
// NetworkZoneArray{ NetworkZoneArgs{...} }
|
||||
type NetworkZoneArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkZoneArrayOutput() NetworkZoneArrayOutput
|
||||
ToNetworkZoneArrayOutputWithContext(context.Context) NetworkZoneArrayOutput
|
||||
}
|
||||
|
||||
type NetworkZoneArray []NetworkZoneInput
|
||||
|
||||
func (NetworkZoneArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkZone)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkZoneArray) ToNetworkZoneArrayOutput() NetworkZoneArrayOutput {
|
||||
return i.ToNetworkZoneArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkZoneArray) ToNetworkZoneArrayOutputWithContext(ctx context.Context) NetworkZoneArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkZoneArrayOutput)
|
||||
}
|
||||
|
||||
// NetworkZoneMapInput is an input type that accepts NetworkZoneMap and NetworkZoneMapOutput values.
|
||||
// You can construct a concrete instance of `NetworkZoneMapInput` via:
|
||||
//
|
||||
// NetworkZoneMap{ "key": NetworkZoneArgs{...} }
|
||||
type NetworkZoneMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkZoneMapOutput() NetworkZoneMapOutput
|
||||
ToNetworkZoneMapOutputWithContext(context.Context) NetworkZoneMapOutput
|
||||
}
|
||||
|
||||
type NetworkZoneMap map[string]NetworkZoneInput
|
||||
|
||||
func (NetworkZoneMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkZone)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkZoneMap) ToNetworkZoneMapOutput() NetworkZoneMapOutput {
|
||||
return i.ToNetworkZoneMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkZoneMap) ToNetworkZoneMapOutputWithContext(ctx context.Context) NetworkZoneMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkZoneMapOutput)
|
||||
}
|
||||
|
||||
type NetworkZoneOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkZoneOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkZone)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkZoneOutput) ToNetworkZoneOutput() NetworkZoneOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkZoneOutput) ToNetworkZoneOutputWithContext(ctx context.Context) NetworkZoneOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
|
||||
func (o NetworkZoneOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *NetworkZone) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the network zone.
|
||||
func (o NetworkZoneOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkZone) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the network zone.
|
||||
func (o NetworkZoneOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkZone) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the network zone will be created.
|
||||
func (o NetworkZoneOutput) Project() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkZone) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o NetworkZoneOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *NetworkZone) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
type NetworkZoneArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkZoneArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkZone)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkZoneArrayOutput) ToNetworkZoneArrayOutput() NetworkZoneArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkZoneArrayOutput) ToNetworkZoneArrayOutputWithContext(ctx context.Context) NetworkZoneArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkZoneArrayOutput) Index(i pulumi.IntInput) NetworkZoneOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *NetworkZone {
|
||||
return vs[0].([]*NetworkZone)[vs[1].(int)]
|
||||
}).(NetworkZoneOutput)
|
||||
}
|
||||
|
||||
type NetworkZoneMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkZoneMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkZone)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkZoneMapOutput) ToNetworkZoneMapOutput() NetworkZoneMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkZoneMapOutput) ToNetworkZoneMapOutputWithContext(ctx context.Context) NetworkZoneMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkZoneMapOutput) MapIndex(k pulumi.StringInput) NetworkZoneOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *NetworkZone {
|
||||
return vs[0].(map[string]*NetworkZone)[vs[1].(string)]
|
||||
}).(NetworkZoneOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkZoneInput)(nil)).Elem(), &NetworkZone{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkZoneArrayInput)(nil)).Elem(), NetworkZoneArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkZoneMapInput)(nil)).Elem(), NetworkZoneMap{})
|
||||
pulumi.RegisterOutputType(NetworkZoneOutput{})
|
||||
pulumi.RegisterOutputType(NetworkZoneArrayOutput{})
|
||||
pulumi.RegisterOutputType(NetworkZoneMapOutput{})
|
||||
}
|
||||
323
sdk/go/incus/networkZoneRecord.go
generated
Normal file
323
sdk/go/incus/networkZoneRecord.go
generated
Normal file
@@ -0,0 +1,323 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"errors"
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type NetworkZoneRecord struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
// *Optional* - Description of the network zone.
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// *Optional* - Entry in network zone record - see below.
|
||||
Entries NetworkZoneRecordEntryArrayOutput `pulumi:"entries"`
|
||||
// **Required** - Name of the network zone record.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network zone record will be created.
|
||||
Project pulumi.StringOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
// **Required** - Name of the zone to add the entries of this record.
|
||||
Zone pulumi.StringOutput `pulumi:"zone"`
|
||||
}
|
||||
|
||||
// NewNetworkZoneRecord registers a new resource with the given unique name, arguments, and options.
|
||||
func NewNetworkZoneRecord(ctx *pulumi.Context,
|
||||
name string, args *NetworkZoneRecordArgs, opts ...pulumi.ResourceOption) (*NetworkZoneRecord, error) {
|
||||
if args == nil {
|
||||
return nil, errors.New("missing one or more required arguments")
|
||||
}
|
||||
|
||||
if args.Zone == nil {
|
||||
return nil, errors.New("invalid value for required argument 'Zone'")
|
||||
}
|
||||
if args.Project == nil {
|
||||
args.Project = pulumi.StringPtr("default")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource NetworkZoneRecord
|
||||
err := ctx.RegisterResource("incus:index/networkZoneRecord:NetworkZoneRecord", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetNetworkZoneRecord gets an existing NetworkZoneRecord resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetNetworkZoneRecord(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *NetworkZoneRecordState, opts ...pulumi.ResourceOption) (*NetworkZoneRecord, error) {
|
||||
var resource NetworkZoneRecord
|
||||
err := ctx.ReadResource("incus:index/networkZoneRecord:NetworkZoneRecord", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering NetworkZoneRecord resources.
|
||||
type networkZoneRecordState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the network zone.
|
||||
Description *string `pulumi:"description"`
|
||||
// *Optional* - Entry in network zone record - see below.
|
||||
Entries []NetworkZoneRecordEntry `pulumi:"entries"`
|
||||
// **Required** - Name of the network zone record.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network zone record will be created.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// **Required** - Name of the zone to add the entries of this record.
|
||||
Zone *string `pulumi:"zone"`
|
||||
}
|
||||
|
||||
type NetworkZoneRecordState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the network zone.
|
||||
Description pulumi.StringPtrInput
|
||||
// *Optional* - Entry in network zone record - see below.
|
||||
Entries NetworkZoneRecordEntryArrayInput
|
||||
// **Required** - Name of the network zone record.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the network zone record will be created.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// **Required** - Name of the zone to add the entries of this record.
|
||||
Zone pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (NetworkZoneRecordState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkZoneRecordState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type networkZoneRecordArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the network zone.
|
||||
Description *string `pulumi:"description"`
|
||||
// *Optional* - Entry in network zone record - see below.
|
||||
Entries []NetworkZoneRecordEntry `pulumi:"entries"`
|
||||
// **Required** - Name of the network zone record.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the network zone record will be created.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// **Required** - Name of the zone to add the entries of this record.
|
||||
Zone string `pulumi:"zone"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a NetworkZoneRecord resource.
|
||||
type NetworkZoneRecordArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the network zone.
|
||||
Description pulumi.StringPtrInput
|
||||
// *Optional* - Entry in network zone record - see below.
|
||||
Entries NetworkZoneRecordEntryArrayInput
|
||||
// **Required** - Name of the network zone record.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the network zone record will be created.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// **Required** - Name of the zone to add the entries of this record.
|
||||
Zone pulumi.StringInput
|
||||
}
|
||||
|
||||
func (NetworkZoneRecordArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*networkZoneRecordArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type NetworkZoneRecordInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkZoneRecordOutput() NetworkZoneRecordOutput
|
||||
ToNetworkZoneRecordOutputWithContext(ctx context.Context) NetworkZoneRecordOutput
|
||||
}
|
||||
|
||||
func (*NetworkZoneRecord) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkZoneRecord)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *NetworkZoneRecord) ToNetworkZoneRecordOutput() NetworkZoneRecordOutput {
|
||||
return i.ToNetworkZoneRecordOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *NetworkZoneRecord) ToNetworkZoneRecordOutputWithContext(ctx context.Context) NetworkZoneRecordOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkZoneRecordOutput)
|
||||
}
|
||||
|
||||
// NetworkZoneRecordArrayInput is an input type that accepts NetworkZoneRecordArray and NetworkZoneRecordArrayOutput values.
|
||||
// You can construct a concrete instance of `NetworkZoneRecordArrayInput` via:
|
||||
//
|
||||
// NetworkZoneRecordArray{ NetworkZoneRecordArgs{...} }
|
||||
type NetworkZoneRecordArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkZoneRecordArrayOutput() NetworkZoneRecordArrayOutput
|
||||
ToNetworkZoneRecordArrayOutputWithContext(context.Context) NetworkZoneRecordArrayOutput
|
||||
}
|
||||
|
||||
type NetworkZoneRecordArray []NetworkZoneRecordInput
|
||||
|
||||
func (NetworkZoneRecordArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkZoneRecord)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkZoneRecordArray) ToNetworkZoneRecordArrayOutput() NetworkZoneRecordArrayOutput {
|
||||
return i.ToNetworkZoneRecordArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkZoneRecordArray) ToNetworkZoneRecordArrayOutputWithContext(ctx context.Context) NetworkZoneRecordArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkZoneRecordArrayOutput)
|
||||
}
|
||||
|
||||
// NetworkZoneRecordMapInput is an input type that accepts NetworkZoneRecordMap and NetworkZoneRecordMapOutput values.
|
||||
// You can construct a concrete instance of `NetworkZoneRecordMapInput` via:
|
||||
//
|
||||
// NetworkZoneRecordMap{ "key": NetworkZoneRecordArgs{...} }
|
||||
type NetworkZoneRecordMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToNetworkZoneRecordMapOutput() NetworkZoneRecordMapOutput
|
||||
ToNetworkZoneRecordMapOutputWithContext(context.Context) NetworkZoneRecordMapOutput
|
||||
}
|
||||
|
||||
type NetworkZoneRecordMap map[string]NetworkZoneRecordInput
|
||||
|
||||
func (NetworkZoneRecordMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkZoneRecord)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i NetworkZoneRecordMap) ToNetworkZoneRecordMapOutput() NetworkZoneRecordMapOutput {
|
||||
return i.ToNetworkZoneRecordMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i NetworkZoneRecordMap) ToNetworkZoneRecordMapOutputWithContext(ctx context.Context) NetworkZoneRecordMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(NetworkZoneRecordMapOutput)
|
||||
}
|
||||
|
||||
type NetworkZoneRecordOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkZoneRecordOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**NetworkZoneRecord)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkZoneRecordOutput) ToNetworkZoneRecordOutput() NetworkZoneRecordOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkZoneRecordOutput) ToNetworkZoneRecordOutputWithContext(ctx context.Context) NetworkZoneRecordOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [network zoneConfig settings](https://linuxcontainers.org/incus/docs/main/howto/network_zones/#configuration-options).
|
||||
func (o NetworkZoneRecordOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *NetworkZoneRecord) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the network zone.
|
||||
func (o NetworkZoneRecordOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkZoneRecord) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Entry in network zone record - see below.
|
||||
func (o NetworkZoneRecordOutput) Entries() NetworkZoneRecordEntryArrayOutput {
|
||||
return o.ApplyT(func(v *NetworkZoneRecord) NetworkZoneRecordEntryArrayOutput { return v.Entries }).(NetworkZoneRecordEntryArrayOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the network zone record.
|
||||
func (o NetworkZoneRecordOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkZoneRecord) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the network zone record will be created.
|
||||
func (o NetworkZoneRecordOutput) Project() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkZoneRecord) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o NetworkZoneRecordOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *NetworkZoneRecord) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the zone to add the entries of this record.
|
||||
func (o NetworkZoneRecordOutput) Zone() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *NetworkZoneRecord) pulumi.StringOutput { return v.Zone }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
type NetworkZoneRecordArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkZoneRecordArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*NetworkZoneRecord)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkZoneRecordArrayOutput) ToNetworkZoneRecordArrayOutput() NetworkZoneRecordArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkZoneRecordArrayOutput) ToNetworkZoneRecordArrayOutputWithContext(ctx context.Context) NetworkZoneRecordArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkZoneRecordArrayOutput) Index(i pulumi.IntInput) NetworkZoneRecordOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *NetworkZoneRecord {
|
||||
return vs[0].([]*NetworkZoneRecord)[vs[1].(int)]
|
||||
}).(NetworkZoneRecordOutput)
|
||||
}
|
||||
|
||||
type NetworkZoneRecordMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (NetworkZoneRecordMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*NetworkZoneRecord)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o NetworkZoneRecordMapOutput) ToNetworkZoneRecordMapOutput() NetworkZoneRecordMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkZoneRecordMapOutput) ToNetworkZoneRecordMapOutputWithContext(ctx context.Context) NetworkZoneRecordMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o NetworkZoneRecordMapOutput) MapIndex(k pulumi.StringInput) NetworkZoneRecordOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *NetworkZoneRecord {
|
||||
return vs[0].(map[string]*NetworkZoneRecord)[vs[1].(string)]
|
||||
}).(NetworkZoneRecordOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkZoneRecordInput)(nil)).Elem(), &NetworkZoneRecord{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkZoneRecordArrayInput)(nil)).Elem(), NetworkZoneRecordArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*NetworkZoneRecordMapInput)(nil)).Elem(), NetworkZoneRecordMap{})
|
||||
pulumi.RegisterOutputType(NetworkZoneRecordOutput{})
|
||||
pulumi.RegisterOutputType(NetworkZoneRecordArrayOutput{})
|
||||
pulumi.RegisterOutputType(NetworkZoneRecordMapOutput{})
|
||||
}
|
||||
304
sdk/go/incus/profile.go
generated
Normal file
304
sdk/go/incus/profile.go
generated
Normal file
@@ -0,0 +1,304 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type Profile struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
// *Optional* - Description of the profile.
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// *Optional* - Device definition. See reference below.
|
||||
Devices ProfileDeviceArrayOutput `pulumi:"devices"`
|
||||
// **Required** - Name of the profile.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the profile will be stored.
|
||||
Project pulumi.StringOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// NewProfile registers a new resource with the given unique name, arguments, and options.
|
||||
func NewProfile(ctx *pulumi.Context,
|
||||
name string, args *ProfileArgs, opts ...pulumi.ResourceOption) (*Profile, error) {
|
||||
if args == nil {
|
||||
args = &ProfileArgs{}
|
||||
}
|
||||
|
||||
if args.Project == nil {
|
||||
args.Project = pulumi.StringPtr("default")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource Profile
|
||||
err := ctx.RegisterResource("incus:index/profile:Profile", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetProfile gets an existing Profile resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetProfile(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *ProfileState, opts ...pulumi.ResourceOption) (*Profile, error) {
|
||||
var resource Profile
|
||||
err := ctx.ReadResource("incus:index/profile:Profile", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering Profile resources.
|
||||
type profileState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the profile.
|
||||
Description *string `pulumi:"description"`
|
||||
// *Optional* - Device definition. See reference below.
|
||||
Devices []ProfileDevice `pulumi:"devices"`
|
||||
// **Required** - Name of the profile.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the profile will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
type ProfileState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the profile.
|
||||
Description pulumi.StringPtrInput
|
||||
// *Optional* - Device definition. See reference below.
|
||||
Devices ProfileDeviceArrayInput
|
||||
// **Required** - Name of the profile.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the profile will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (ProfileState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*profileState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type profileArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the profile.
|
||||
Description *string `pulumi:"description"`
|
||||
// *Optional* - Device definition. See reference below.
|
||||
Devices []ProfileDevice `pulumi:"devices"`
|
||||
// **Required** - Name of the profile.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the profile will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a Profile resource.
|
||||
type ProfileArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the profile.
|
||||
Description pulumi.StringPtrInput
|
||||
// *Optional* - Device definition. See reference below.
|
||||
Devices ProfileDeviceArrayInput
|
||||
// **Required** - Name of the profile.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the profile will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (ProfileArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*profileArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type ProfileInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToProfileOutput() ProfileOutput
|
||||
ToProfileOutputWithContext(ctx context.Context) ProfileOutput
|
||||
}
|
||||
|
||||
func (*Profile) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Profile)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *Profile) ToProfileOutput() ProfileOutput {
|
||||
return i.ToProfileOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *Profile) ToProfileOutputWithContext(ctx context.Context) ProfileOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ProfileOutput)
|
||||
}
|
||||
|
||||
// ProfileArrayInput is an input type that accepts ProfileArray and ProfileArrayOutput values.
|
||||
// You can construct a concrete instance of `ProfileArrayInput` via:
|
||||
//
|
||||
// ProfileArray{ ProfileArgs{...} }
|
||||
type ProfileArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToProfileArrayOutput() ProfileArrayOutput
|
||||
ToProfileArrayOutputWithContext(context.Context) ProfileArrayOutput
|
||||
}
|
||||
|
||||
type ProfileArray []ProfileInput
|
||||
|
||||
func (ProfileArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*Profile)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i ProfileArray) ToProfileArrayOutput() ProfileArrayOutput {
|
||||
return i.ToProfileArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i ProfileArray) ToProfileArrayOutputWithContext(ctx context.Context) ProfileArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ProfileArrayOutput)
|
||||
}
|
||||
|
||||
// ProfileMapInput is an input type that accepts ProfileMap and ProfileMapOutput values.
|
||||
// You can construct a concrete instance of `ProfileMapInput` via:
|
||||
//
|
||||
// ProfileMap{ "key": ProfileArgs{...} }
|
||||
type ProfileMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToProfileMapOutput() ProfileMapOutput
|
||||
ToProfileMapOutputWithContext(context.Context) ProfileMapOutput
|
||||
}
|
||||
|
||||
type ProfileMap map[string]ProfileInput
|
||||
|
||||
func (ProfileMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*Profile)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i ProfileMap) ToProfileMapOutput() ProfileMapOutput {
|
||||
return i.ToProfileMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i ProfileMap) ToProfileMapOutputWithContext(ctx context.Context) ProfileMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ProfileMapOutput)
|
||||
}
|
||||
|
||||
type ProfileOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ProfileOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Profile)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ProfileOutput) ToProfileOutput() ProfileOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ProfileOutput) ToProfileOutputWithContext(ctx context.Context) ProfileOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [instance config settings](https://linuxcontainers.org/incus/docs/main/reference/instance_options/).
|
||||
func (o ProfileOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *Profile) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the profile.
|
||||
func (o ProfileOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Profile) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Device definition. See reference below.
|
||||
func (o ProfileOutput) Devices() ProfileDeviceArrayOutput {
|
||||
return o.ApplyT(func(v *Profile) ProfileDeviceArrayOutput { return v.Devices }).(ProfileDeviceArrayOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the profile.
|
||||
func (o ProfileOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Profile) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the profile will be stored.
|
||||
func (o ProfileOutput) Project() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Profile) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o ProfileOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *Profile) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
type ProfileArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ProfileArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*Profile)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ProfileArrayOutput) ToProfileArrayOutput() ProfileArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ProfileArrayOutput) ToProfileArrayOutputWithContext(ctx context.Context) ProfileArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ProfileArrayOutput) Index(i pulumi.IntInput) ProfileOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Profile {
|
||||
return vs[0].([]*Profile)[vs[1].(int)]
|
||||
}).(ProfileOutput)
|
||||
}
|
||||
|
||||
type ProfileMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ProfileMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*Profile)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ProfileMapOutput) ToProfileMapOutput() ProfileMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ProfileMapOutput) ToProfileMapOutputWithContext(ctx context.Context) ProfileMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ProfileMapOutput) MapIndex(k pulumi.StringInput) ProfileOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Profile {
|
||||
return vs[0].(map[string]*Profile)[vs[1].(string)]
|
||||
}).(ProfileOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ProfileInput)(nil)).Elem(), &Profile{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ProfileArrayInput)(nil)).Elem(), ProfileArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ProfileMapInput)(nil)).Elem(), ProfileMap{})
|
||||
pulumi.RegisterOutputType(ProfileOutput{})
|
||||
pulumi.RegisterOutputType(ProfileArrayOutput{})
|
||||
pulumi.RegisterOutputType(ProfileMapOutput{})
|
||||
}
|
||||
265
sdk/go/incus/project.go
generated
Normal file
265
sdk/go/incus/project.go
generated
Normal file
@@ -0,0 +1,265 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type Project struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Map of key/value pairs of [project config settings](https://linuxcontainers.org/incus/docs/main/reference/projects/).
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
// *Optional* - Description of the project.
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// **Required** - Name of the project.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// NewProject registers a new resource with the given unique name, arguments, and options.
|
||||
func NewProject(ctx *pulumi.Context,
|
||||
name string, args *ProjectArgs, opts ...pulumi.ResourceOption) (*Project, error) {
|
||||
if args == nil {
|
||||
args = &ProjectArgs{}
|
||||
}
|
||||
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource Project
|
||||
err := ctx.RegisterResource("incus:index/project:Project", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetProject gets an existing Project resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetProject(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *ProjectState, opts ...pulumi.ResourceOption) (*Project, error) {
|
||||
var resource Project
|
||||
err := ctx.ReadResource("incus:index/project:Project", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering Project resources.
|
||||
type projectState struct {
|
||||
// *Optional* - Map of key/value pairs of [project config settings](https://linuxcontainers.org/incus/docs/main/reference/projects/).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the project.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the project.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
type ProjectState struct {
|
||||
// *Optional* - Map of key/value pairs of [project config settings](https://linuxcontainers.org/incus/docs/main/reference/projects/).
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the project.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the project.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (ProjectState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*projectState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type projectArgs struct {
|
||||
// *Optional* - Map of key/value pairs of [project config settings](https://linuxcontainers.org/incus/docs/main/reference/projects/).
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the project.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the project.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a Project resource.
|
||||
type ProjectArgs struct {
|
||||
// *Optional* - Map of key/value pairs of [project config settings](https://linuxcontainers.org/incus/docs/main/reference/projects/).
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the project.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the project.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (ProjectArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*projectArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type ProjectInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToProjectOutput() ProjectOutput
|
||||
ToProjectOutputWithContext(ctx context.Context) ProjectOutput
|
||||
}
|
||||
|
||||
func (*Project) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Project)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *Project) ToProjectOutput() ProjectOutput {
|
||||
return i.ToProjectOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *Project) ToProjectOutputWithContext(ctx context.Context) ProjectOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ProjectOutput)
|
||||
}
|
||||
|
||||
// ProjectArrayInput is an input type that accepts ProjectArray and ProjectArrayOutput values.
|
||||
// You can construct a concrete instance of `ProjectArrayInput` via:
|
||||
//
|
||||
// ProjectArray{ ProjectArgs{...} }
|
||||
type ProjectArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToProjectArrayOutput() ProjectArrayOutput
|
||||
ToProjectArrayOutputWithContext(context.Context) ProjectArrayOutput
|
||||
}
|
||||
|
||||
type ProjectArray []ProjectInput
|
||||
|
||||
func (ProjectArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*Project)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i ProjectArray) ToProjectArrayOutput() ProjectArrayOutput {
|
||||
return i.ToProjectArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i ProjectArray) ToProjectArrayOutputWithContext(ctx context.Context) ProjectArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ProjectArrayOutput)
|
||||
}
|
||||
|
||||
// ProjectMapInput is an input type that accepts ProjectMap and ProjectMapOutput values.
|
||||
// You can construct a concrete instance of `ProjectMapInput` via:
|
||||
//
|
||||
// ProjectMap{ "key": ProjectArgs{...} }
|
||||
type ProjectMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToProjectMapOutput() ProjectMapOutput
|
||||
ToProjectMapOutputWithContext(context.Context) ProjectMapOutput
|
||||
}
|
||||
|
||||
type ProjectMap map[string]ProjectInput
|
||||
|
||||
func (ProjectMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*Project)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i ProjectMap) ToProjectMapOutput() ProjectMapOutput {
|
||||
return i.ToProjectMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i ProjectMap) ToProjectMapOutputWithContext(ctx context.Context) ProjectMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ProjectMapOutput)
|
||||
}
|
||||
|
||||
type ProjectOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ProjectOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Project)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ProjectOutput) ToProjectOutput() ProjectOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ProjectOutput) ToProjectOutputWithContext(ctx context.Context) ProjectOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Map of key/value pairs of [project config settings](https://linuxcontainers.org/incus/docs/main/reference/projects/).
|
||||
func (o ProjectOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *Project) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the project.
|
||||
func (o ProjectOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Project) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the project.
|
||||
func (o ProjectOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *Project) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o ProjectOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *Project) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
type ProjectArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ProjectArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*Project)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ProjectArrayOutput) ToProjectArrayOutput() ProjectArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ProjectArrayOutput) ToProjectArrayOutputWithContext(ctx context.Context) ProjectArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ProjectArrayOutput) Index(i pulumi.IntInput) ProjectOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Project {
|
||||
return vs[0].([]*Project)[vs[1].(int)]
|
||||
}).(ProjectOutput)
|
||||
}
|
||||
|
||||
type ProjectMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ProjectMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*Project)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ProjectMapOutput) ToProjectMapOutput() ProjectMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ProjectMapOutput) ToProjectMapOutputWithContext(ctx context.Context) ProjectMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ProjectMapOutput) MapIndex(k pulumi.StringInput) ProjectOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Project {
|
||||
return vs[0].(map[string]*Project)[vs[1].(string)]
|
||||
}).(ProjectOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ProjectInput)(nil)).Elem(), &Project{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ProjectArrayInput)(nil)).Elem(), ProjectArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ProjectMapInput)(nil)).Elem(), ProjectMap{})
|
||||
pulumi.RegisterOutputType(ProjectOutput{})
|
||||
pulumi.RegisterOutputType(ProjectArrayOutput{})
|
||||
pulumi.RegisterOutputType(ProjectMapOutput{})
|
||||
}
|
||||
124
sdk/go/incus/provider.go
generated
Normal file
124
sdk/go/incus/provider.go
generated
Normal file
@@ -0,0 +1,124 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
// The provider type for the incus package. By default, resources use package-wide configuration
|
||||
// settings, however an explicit `Provider` instance may be created and passed during resource
|
||||
// construction to achieve fine-grained programmatic control over provider settings. See the
|
||||
// [documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.
|
||||
type Provider struct {
|
||||
pulumi.ProviderResourceState
|
||||
|
||||
// The directory to look for existing Incus configuration. (default = $HOME/.config/incus)
|
||||
ConfigDir pulumi.StringPtrOutput `pulumi:"configDir"`
|
||||
// The project where project-scoped resources will be created. Can be overridden in individual resources. (default =
|
||||
// default)
|
||||
Project pulumi.StringPtrOutput `pulumi:"project"`
|
||||
}
|
||||
|
||||
// NewProvider registers a new resource with the given unique name, arguments, and options.
|
||||
func NewProvider(ctx *pulumi.Context,
|
||||
name string, args *ProviderArgs, opts ...pulumi.ResourceOption) (*Provider, error) {
|
||||
if args == nil {
|
||||
args = &ProviderArgs{}
|
||||
}
|
||||
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource Provider
|
||||
err := ctx.RegisterResource("pulumi:providers:incus", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
type providerArgs struct {
|
||||
// Accept the server certificate.
|
||||
AcceptRemoteCertificate *bool `pulumi:"acceptRemoteCertificate"`
|
||||
// The directory to look for existing Incus configuration. (default = $HOME/.config/incus)
|
||||
ConfigDir *string `pulumi:"configDir"`
|
||||
// Automatically generate the Incus client certificates if they don't exist.
|
||||
GenerateClientCertificates *bool `pulumi:"generateClientCertificates"`
|
||||
// The project where project-scoped resources will be created. Can be overridden in individual resources. (default =
|
||||
// default)
|
||||
Project *string `pulumi:"project"`
|
||||
// Incus Remote
|
||||
Remotes []ProviderRemote `pulumi:"remotes"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a Provider resource.
|
||||
type ProviderArgs struct {
|
||||
// Accept the server certificate.
|
||||
AcceptRemoteCertificate pulumi.BoolPtrInput
|
||||
// The directory to look for existing Incus configuration. (default = $HOME/.config/incus)
|
||||
ConfigDir pulumi.StringPtrInput
|
||||
// Automatically generate the Incus client certificates if they don't exist.
|
||||
GenerateClientCertificates pulumi.BoolPtrInput
|
||||
// The project where project-scoped resources will be created. Can be overridden in individual resources. (default =
|
||||
// default)
|
||||
Project pulumi.StringPtrInput
|
||||
// Incus Remote
|
||||
Remotes ProviderRemoteArrayInput
|
||||
}
|
||||
|
||||
func (ProviderArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*providerArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type ProviderInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToProviderOutput() ProviderOutput
|
||||
ToProviderOutputWithContext(ctx context.Context) ProviderOutput
|
||||
}
|
||||
|
||||
func (*Provider) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Provider)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *Provider) ToProviderOutput() ProviderOutput {
|
||||
return i.ToProviderOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *Provider) ToProviderOutputWithContext(ctx context.Context) ProviderOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(ProviderOutput)
|
||||
}
|
||||
|
||||
type ProviderOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (ProviderOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**Provider)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o ProviderOutput) ToProviderOutput() ProviderOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o ProviderOutput) ToProviderOutputWithContext(ctx context.Context) ProviderOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// The directory to look for existing Incus configuration. (default = $HOME/.config/incus)
|
||||
func (o ProviderOutput) ConfigDir() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *Provider) pulumi.StringPtrOutput { return v.ConfigDir }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// The project where project-scoped resources will be created. Can be overridden in individual resources. (default =
|
||||
// default)
|
||||
func (o ProviderOutput) Project() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *Provider) pulumi.StringPtrOutput { return v.Project }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*ProviderInput)(nil)).Elem(), &Provider{})
|
||||
pulumi.RegisterOutputType(ProviderOutput{})
|
||||
}
|
||||
6
sdk/go/incus/pulumi-plugin.json
generated
Normal file
6
sdk/go/incus/pulumi-plugin.json
generated
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"resource": true,
|
||||
"name": "incus",
|
||||
"version": "1.0.0-alpha.0+dev",
|
||||
"server": "https://git.kalinow.ski/api/packages/kiterun/generic/pulumi-incus/${VERSION}/"
|
||||
}
|
||||
2603
sdk/go/incus/pulumiTypes.go
generated
Normal file
2603
sdk/go/incus/pulumiTypes.go
generated
Normal file
File diff suppressed because it is too large
Load Diff
355
sdk/go/incus/storageBucket.go
generated
Normal file
355
sdk/go/incus/storageBucket.go
generated
Normal file
@@ -0,0 +1,355 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"errors"
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type StorageBucket struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [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 pulumi.StringMapOutput `pulumi:"config"`
|
||||
// *Optional* - Description of the storage bucket.
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// Name of the node where storage bucket was created. It could be useful with Incus in cluster mode.
|
||||
Location pulumi.StringOutput `pulumi:"location"`
|
||||
// **Required** - Name of the storage bucket.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// **Required** - Name of storage pool to host the storage bucket.
|
||||
Pool pulumi.StringOutput `pulumi:"pool"`
|
||||
// *Optional* - Name of the project where the storage bucket will be stored.
|
||||
Project pulumi.StringOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
// *Optional* - Path to a backup file from which the bucket will be created.
|
||||
SourceFile pulumi.StringPtrOutput `pulumi:"sourceFile"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringOutput `pulumi:"target"`
|
||||
}
|
||||
|
||||
// NewStorageBucket registers a new resource with the given unique name, arguments, and options.
|
||||
func NewStorageBucket(ctx *pulumi.Context,
|
||||
name string, args *StorageBucketArgs, opts ...pulumi.ResourceOption) (*StorageBucket, error) {
|
||||
if args == nil {
|
||||
return nil, errors.New("missing one or more required arguments")
|
||||
}
|
||||
|
||||
if args.Pool == nil {
|
||||
return nil, errors.New("invalid value for required argument 'Pool'")
|
||||
}
|
||||
if args.Project == nil {
|
||||
args.Project = pulumi.StringPtr("default")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource StorageBucket
|
||||
err := ctx.RegisterResource("incus:index/storageBucket:StorageBucket", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetStorageBucket gets an existing StorageBucket resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetStorageBucket(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *StorageBucketState, opts ...pulumi.ResourceOption) (*StorageBucket, error) {
|
||||
var resource StorageBucket
|
||||
err := ctx.ReadResource("incus:index/storageBucket:StorageBucket", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering StorageBucket resources.
|
||||
type storageBucketState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [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 map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the storage bucket.
|
||||
Description *string `pulumi:"description"`
|
||||
// Name of the node where storage bucket was created. It could be useful with Incus in cluster mode.
|
||||
Location *string `pulumi:"location"`
|
||||
// **Required** - Name of the storage bucket.
|
||||
Name *string `pulumi:"name"`
|
||||
// **Required** - Name of storage pool to host the storage bucket.
|
||||
Pool *string `pulumi:"pool"`
|
||||
// *Optional* - Name of the project where the storage bucket will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Path to a backup file from which the bucket will be created.
|
||||
SourceFile *string `pulumi:"sourceFile"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target *string `pulumi:"target"`
|
||||
}
|
||||
|
||||
type StorageBucketState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [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 pulumi.StringMapInput
|
||||
// *Optional* - Description of the storage bucket.
|
||||
Description pulumi.StringPtrInput
|
||||
// Name of the node where storage bucket was created. It could be useful with Incus in cluster mode.
|
||||
Location pulumi.StringPtrInput
|
||||
// **Required** - Name of the storage bucket.
|
||||
Name pulumi.StringPtrInput
|
||||
// **Required** - Name of storage pool to host the storage bucket.
|
||||
Pool pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the storage bucket will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Path to a backup file from which the bucket will be created.
|
||||
SourceFile pulumi.StringPtrInput
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (StorageBucketState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*storageBucketState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type storageBucketArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [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 map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the storage bucket.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the storage bucket.
|
||||
Name *string `pulumi:"name"`
|
||||
// **Required** - Name of storage pool to host the storage bucket.
|
||||
Pool string `pulumi:"pool"`
|
||||
// *Optional* - Name of the project where the storage bucket will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Path to a backup file from which the bucket will be created.
|
||||
SourceFile *string `pulumi:"sourceFile"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target *string `pulumi:"target"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a StorageBucket resource.
|
||||
type StorageBucketArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [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 pulumi.StringMapInput
|
||||
// *Optional* - Description of the storage bucket.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the storage bucket.
|
||||
Name pulumi.StringPtrInput
|
||||
// **Required** - Name of storage pool to host the storage bucket.
|
||||
Pool pulumi.StringInput
|
||||
// *Optional* - Name of the project where the storage bucket will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Path to a backup file from which the bucket will be created.
|
||||
SourceFile pulumi.StringPtrInput
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (StorageBucketArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*storageBucketArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type StorageBucketInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToStorageBucketOutput() StorageBucketOutput
|
||||
ToStorageBucketOutputWithContext(ctx context.Context) StorageBucketOutput
|
||||
}
|
||||
|
||||
func (*StorageBucket) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**StorageBucket)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *StorageBucket) ToStorageBucketOutput() StorageBucketOutput {
|
||||
return i.ToStorageBucketOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *StorageBucket) ToStorageBucketOutputWithContext(ctx context.Context) StorageBucketOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(StorageBucketOutput)
|
||||
}
|
||||
|
||||
// StorageBucketArrayInput is an input type that accepts StorageBucketArray and StorageBucketArrayOutput values.
|
||||
// You can construct a concrete instance of `StorageBucketArrayInput` via:
|
||||
//
|
||||
// StorageBucketArray{ StorageBucketArgs{...} }
|
||||
type StorageBucketArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToStorageBucketArrayOutput() StorageBucketArrayOutput
|
||||
ToStorageBucketArrayOutputWithContext(context.Context) StorageBucketArrayOutput
|
||||
}
|
||||
|
||||
type StorageBucketArray []StorageBucketInput
|
||||
|
||||
func (StorageBucketArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*StorageBucket)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i StorageBucketArray) ToStorageBucketArrayOutput() StorageBucketArrayOutput {
|
||||
return i.ToStorageBucketArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i StorageBucketArray) ToStorageBucketArrayOutputWithContext(ctx context.Context) StorageBucketArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(StorageBucketArrayOutput)
|
||||
}
|
||||
|
||||
// StorageBucketMapInput is an input type that accepts StorageBucketMap and StorageBucketMapOutput values.
|
||||
// You can construct a concrete instance of `StorageBucketMapInput` via:
|
||||
//
|
||||
// StorageBucketMap{ "key": StorageBucketArgs{...} }
|
||||
type StorageBucketMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToStorageBucketMapOutput() StorageBucketMapOutput
|
||||
ToStorageBucketMapOutputWithContext(context.Context) StorageBucketMapOutput
|
||||
}
|
||||
|
||||
type StorageBucketMap map[string]StorageBucketInput
|
||||
|
||||
func (StorageBucketMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*StorageBucket)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i StorageBucketMap) ToStorageBucketMapOutput() StorageBucketMapOutput {
|
||||
return i.ToStorageBucketMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i StorageBucketMap) ToStorageBucketMapOutputWithContext(ctx context.Context) StorageBucketMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(StorageBucketMapOutput)
|
||||
}
|
||||
|
||||
type StorageBucketOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (StorageBucketOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**StorageBucket)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o StorageBucketOutput) ToStorageBucketOutput() StorageBucketOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageBucketOutput) ToStorageBucketOutputWithContext(ctx context.Context) StorageBucketOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [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.
|
||||
func (o StorageBucketOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *StorageBucket) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the storage bucket.
|
||||
func (o StorageBucketOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucket) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// Name of the node where storage bucket was created. It could be useful with Incus in cluster mode.
|
||||
func (o StorageBucketOutput) Location() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucket) pulumi.StringOutput { return v.Location }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the storage bucket.
|
||||
func (o StorageBucketOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucket) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of storage pool to host the storage bucket.
|
||||
func (o StorageBucketOutput) Pool() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucket) pulumi.StringOutput { return v.Pool }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the storage bucket will be stored.
|
||||
func (o StorageBucketOutput) Project() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucket) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o StorageBucketOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *StorageBucket) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Path to a backup file from which the bucket will be created.
|
||||
func (o StorageBucketOutput) SourceFile() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *StorageBucket) pulumi.StringPtrOutput { return v.SourceFile }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
func (o StorageBucketOutput) Target() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucket) pulumi.StringOutput { return v.Target }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
type StorageBucketArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (StorageBucketArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*StorageBucket)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o StorageBucketArrayOutput) ToStorageBucketArrayOutput() StorageBucketArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageBucketArrayOutput) ToStorageBucketArrayOutputWithContext(ctx context.Context) StorageBucketArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageBucketArrayOutput) Index(i pulumi.IntInput) StorageBucketOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *StorageBucket {
|
||||
return vs[0].([]*StorageBucket)[vs[1].(int)]
|
||||
}).(StorageBucketOutput)
|
||||
}
|
||||
|
||||
type StorageBucketMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (StorageBucketMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*StorageBucket)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o StorageBucketMapOutput) ToStorageBucketMapOutput() StorageBucketMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageBucketMapOutput) ToStorageBucketMapOutputWithContext(ctx context.Context) StorageBucketMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageBucketMapOutput) MapIndex(k pulumi.StringInput) StorageBucketOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *StorageBucket {
|
||||
return vs[0].(map[string]*StorageBucket)[vs[1].(string)]
|
||||
}).(StorageBucketOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*StorageBucketInput)(nil)).Elem(), &StorageBucket{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*StorageBucketArrayInput)(nil)).Elem(), StorageBucketArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*StorageBucketMapInput)(nil)).Elem(), StorageBucketMap{})
|
||||
pulumi.RegisterOutputType(StorageBucketOutput{})
|
||||
pulumi.RegisterOutputType(StorageBucketArrayOutput{})
|
||||
pulumi.RegisterOutputType(StorageBucketMapOutput{})
|
||||
}
|
||||
353
sdk/go/incus/storageBucketKey.go
generated
Normal file
353
sdk/go/incus/storageBucketKey.go
generated
Normal file
@@ -0,0 +1,353 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"errors"
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type StorageBucketKey struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// Access key of the storage bucket key.
|
||||
AccessKey pulumi.StringOutput `pulumi:"accessKey"`
|
||||
// *Optional* - Description of the storage bucket key.
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// **Required** - Name of the storage bucket key.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// **Required** - Name of storage pool to host the storage bucket key.
|
||||
Pool pulumi.StringOutput `pulumi:"pool"`
|
||||
// *Optional* - Name of the project where the storage bucket key will be stored.
|
||||
Project pulumi.StringOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
// *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).
|
||||
Role pulumi.StringOutput `pulumi:"role"`
|
||||
// Secret key of the storage bucket key.
|
||||
SecretKey pulumi.StringOutput `pulumi:"secretKey"`
|
||||
// **Required** - Name of the storage bucket.
|
||||
StorageBucket pulumi.StringOutput `pulumi:"storageBucket"`
|
||||
}
|
||||
|
||||
// NewStorageBucketKey registers a new resource with the given unique name, arguments, and options.
|
||||
func NewStorageBucketKey(ctx *pulumi.Context,
|
||||
name string, args *StorageBucketKeyArgs, opts ...pulumi.ResourceOption) (*StorageBucketKey, error) {
|
||||
if args == nil {
|
||||
return nil, errors.New("missing one or more required arguments")
|
||||
}
|
||||
|
||||
if args.Pool == nil {
|
||||
return nil, errors.New("invalid value for required argument 'Pool'")
|
||||
}
|
||||
if args.StorageBucket == nil {
|
||||
return nil, errors.New("invalid value for required argument 'StorageBucket'")
|
||||
}
|
||||
if args.Project == nil {
|
||||
args.Project = pulumi.StringPtr("default")
|
||||
}
|
||||
secrets := pulumi.AdditionalSecretOutputs([]string{
|
||||
"accessKey",
|
||||
"secretKey",
|
||||
})
|
||||
opts = append(opts, secrets)
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource StorageBucketKey
|
||||
err := ctx.RegisterResource("incus:index/storageBucketKey:StorageBucketKey", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetStorageBucketKey gets an existing StorageBucketKey resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetStorageBucketKey(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *StorageBucketKeyState, opts ...pulumi.ResourceOption) (*StorageBucketKey, error) {
|
||||
var resource StorageBucketKey
|
||||
err := ctx.ReadResource("incus:index/storageBucketKey:StorageBucketKey", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering StorageBucketKey resources.
|
||||
type storageBucketKeyState struct {
|
||||
// Access key of the storage bucket key.
|
||||
AccessKey *string `pulumi:"accessKey"`
|
||||
// *Optional* - Description of the storage bucket key.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the storage bucket key.
|
||||
Name *string `pulumi:"name"`
|
||||
// **Required** - Name of storage pool to host the storage bucket key.
|
||||
Pool *string `pulumi:"pool"`
|
||||
// *Optional* - Name of the project where the storage bucket key will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *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).
|
||||
Role *string `pulumi:"role"`
|
||||
// Secret key of the storage bucket key.
|
||||
SecretKey *string `pulumi:"secretKey"`
|
||||
// **Required** - Name of the storage bucket.
|
||||
StorageBucket *string `pulumi:"storageBucket"`
|
||||
}
|
||||
|
||||
type StorageBucketKeyState struct {
|
||||
// Access key of the storage bucket key.
|
||||
AccessKey pulumi.StringPtrInput
|
||||
// *Optional* - Description of the storage bucket key.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the storage bucket key.
|
||||
Name pulumi.StringPtrInput
|
||||
// **Required** - Name of storage pool to host the storage bucket key.
|
||||
Pool pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the storage bucket key will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *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).
|
||||
Role pulumi.StringPtrInput
|
||||
// Secret key of the storage bucket key.
|
||||
SecretKey pulumi.StringPtrInput
|
||||
// **Required** - Name of the storage bucket.
|
||||
StorageBucket pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (StorageBucketKeyState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*storageBucketKeyState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type storageBucketKeyArgs struct {
|
||||
// *Optional* - Description of the storage bucket key.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the storage bucket key.
|
||||
Name *string `pulumi:"name"`
|
||||
// **Required** - Name of storage pool to host the storage bucket key.
|
||||
Pool string `pulumi:"pool"`
|
||||
// *Optional* - Name of the project where the storage bucket key will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *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).
|
||||
Role *string `pulumi:"role"`
|
||||
// **Required** - Name of the storage bucket.
|
||||
StorageBucket string `pulumi:"storageBucket"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a StorageBucketKey resource.
|
||||
type StorageBucketKeyArgs struct {
|
||||
// *Optional* - Description of the storage bucket key.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the storage bucket key.
|
||||
Name pulumi.StringPtrInput
|
||||
// **Required** - Name of storage pool to host the storage bucket key.
|
||||
Pool pulumi.StringInput
|
||||
// *Optional* - Name of the project where the storage bucket key will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *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).
|
||||
Role pulumi.StringPtrInput
|
||||
// **Required** - Name of the storage bucket.
|
||||
StorageBucket pulumi.StringInput
|
||||
}
|
||||
|
||||
func (StorageBucketKeyArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*storageBucketKeyArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type StorageBucketKeyInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToStorageBucketKeyOutput() StorageBucketKeyOutput
|
||||
ToStorageBucketKeyOutputWithContext(ctx context.Context) StorageBucketKeyOutput
|
||||
}
|
||||
|
||||
func (*StorageBucketKey) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**StorageBucketKey)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *StorageBucketKey) ToStorageBucketKeyOutput() StorageBucketKeyOutput {
|
||||
return i.ToStorageBucketKeyOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *StorageBucketKey) ToStorageBucketKeyOutputWithContext(ctx context.Context) StorageBucketKeyOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(StorageBucketKeyOutput)
|
||||
}
|
||||
|
||||
// StorageBucketKeyArrayInput is an input type that accepts StorageBucketKeyArray and StorageBucketKeyArrayOutput values.
|
||||
// You can construct a concrete instance of `StorageBucketKeyArrayInput` via:
|
||||
//
|
||||
// StorageBucketKeyArray{ StorageBucketKeyArgs{...} }
|
||||
type StorageBucketKeyArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToStorageBucketKeyArrayOutput() StorageBucketKeyArrayOutput
|
||||
ToStorageBucketKeyArrayOutputWithContext(context.Context) StorageBucketKeyArrayOutput
|
||||
}
|
||||
|
||||
type StorageBucketKeyArray []StorageBucketKeyInput
|
||||
|
||||
func (StorageBucketKeyArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*StorageBucketKey)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i StorageBucketKeyArray) ToStorageBucketKeyArrayOutput() StorageBucketKeyArrayOutput {
|
||||
return i.ToStorageBucketKeyArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i StorageBucketKeyArray) ToStorageBucketKeyArrayOutputWithContext(ctx context.Context) StorageBucketKeyArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(StorageBucketKeyArrayOutput)
|
||||
}
|
||||
|
||||
// StorageBucketKeyMapInput is an input type that accepts StorageBucketKeyMap and StorageBucketKeyMapOutput values.
|
||||
// You can construct a concrete instance of `StorageBucketKeyMapInput` via:
|
||||
//
|
||||
// StorageBucketKeyMap{ "key": StorageBucketKeyArgs{...} }
|
||||
type StorageBucketKeyMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToStorageBucketKeyMapOutput() StorageBucketKeyMapOutput
|
||||
ToStorageBucketKeyMapOutputWithContext(context.Context) StorageBucketKeyMapOutput
|
||||
}
|
||||
|
||||
type StorageBucketKeyMap map[string]StorageBucketKeyInput
|
||||
|
||||
func (StorageBucketKeyMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*StorageBucketKey)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i StorageBucketKeyMap) ToStorageBucketKeyMapOutput() StorageBucketKeyMapOutput {
|
||||
return i.ToStorageBucketKeyMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i StorageBucketKeyMap) ToStorageBucketKeyMapOutputWithContext(ctx context.Context) StorageBucketKeyMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(StorageBucketKeyMapOutput)
|
||||
}
|
||||
|
||||
type StorageBucketKeyOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (StorageBucketKeyOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**StorageBucketKey)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o StorageBucketKeyOutput) ToStorageBucketKeyOutput() StorageBucketKeyOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageBucketKeyOutput) ToStorageBucketKeyOutputWithContext(ctx context.Context) StorageBucketKeyOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// Access key of the storage bucket key.
|
||||
func (o StorageBucketKeyOutput) AccessKey() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucketKey) pulumi.StringOutput { return v.AccessKey }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the storage bucket key.
|
||||
func (o StorageBucketKeyOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucketKey) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the storage bucket key.
|
||||
func (o StorageBucketKeyOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucketKey) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of storage pool to host the storage bucket key.
|
||||
func (o StorageBucketKeyOutput) Pool() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucketKey) pulumi.StringOutput { return v.Pool }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the storage bucket key will be stored.
|
||||
func (o StorageBucketKeyOutput) Project() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucketKey) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o StorageBucketKeyOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *StorageBucketKey) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *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).
|
||||
func (o StorageBucketKeyOutput) Role() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucketKey) pulumi.StringOutput { return v.Role }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// Secret key of the storage bucket key.
|
||||
func (o StorageBucketKeyOutput) SecretKey() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucketKey) pulumi.StringOutput { return v.SecretKey }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the storage bucket.
|
||||
func (o StorageBucketKeyOutput) StorageBucket() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageBucketKey) pulumi.StringOutput { return v.StorageBucket }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
type StorageBucketKeyArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (StorageBucketKeyArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*StorageBucketKey)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o StorageBucketKeyArrayOutput) ToStorageBucketKeyArrayOutput() StorageBucketKeyArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageBucketKeyArrayOutput) ToStorageBucketKeyArrayOutputWithContext(ctx context.Context) StorageBucketKeyArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageBucketKeyArrayOutput) Index(i pulumi.IntInput) StorageBucketKeyOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *StorageBucketKey {
|
||||
return vs[0].([]*StorageBucketKey)[vs[1].(int)]
|
||||
}).(StorageBucketKeyOutput)
|
||||
}
|
||||
|
||||
type StorageBucketKeyMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (StorageBucketKeyMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*StorageBucketKey)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o StorageBucketKeyMapOutput) ToStorageBucketKeyMapOutput() StorageBucketKeyMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageBucketKeyMapOutput) ToStorageBucketKeyMapOutputWithContext(ctx context.Context) StorageBucketKeyMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageBucketKeyMapOutput) MapIndex(k pulumi.StringInput) StorageBucketKeyOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *StorageBucketKey {
|
||||
return vs[0].(map[string]*StorageBucketKey)[vs[1].(string)]
|
||||
}).(StorageBucketKeyOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*StorageBucketKeyInput)(nil)).Elem(), &StorageBucketKey{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*StorageBucketKeyArrayInput)(nil)).Elem(), StorageBucketKeyArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*StorageBucketKeyMapInput)(nil)).Elem(), StorageBucketKeyMap{})
|
||||
pulumi.RegisterOutputType(StorageBucketKeyOutput{})
|
||||
pulumi.RegisterOutputType(StorageBucketKeyArrayOutput{})
|
||||
pulumi.RegisterOutputType(StorageBucketKeyMapOutput{})
|
||||
}
|
||||
329
sdk/go/incus/storagePool.go
generated
Normal file
329
sdk/go/incus/storagePool.go
generated
Normal file
@@ -0,0 +1,329 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"errors"
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type StoragePool struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
|
||||
// Config settings vary from driver to driver.
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
// *Optional* - Description of the storage pool.
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// **Required** - Storage Pool driver. Must be one of `dir`, `zfs`, `lvm`, `btrfs`, `ceph`, `cephfs`, or `cephobject`.
|
||||
Driver pulumi.StringOutput `pulumi:"driver"`
|
||||
// **Required** - Name of the storage pool.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the storage pool will be stored.
|
||||
Project pulumi.StringOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringPtrOutput `pulumi:"target"`
|
||||
}
|
||||
|
||||
// NewStoragePool registers a new resource with the given unique name, arguments, and options.
|
||||
func NewStoragePool(ctx *pulumi.Context,
|
||||
name string, args *StoragePoolArgs, opts ...pulumi.ResourceOption) (*StoragePool, error) {
|
||||
if args == nil {
|
||||
return nil, errors.New("missing one or more required arguments")
|
||||
}
|
||||
|
||||
if args.Driver == nil {
|
||||
return nil, errors.New("invalid value for required argument 'Driver'")
|
||||
}
|
||||
if args.Project == nil {
|
||||
args.Project = pulumi.StringPtr("default")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource StoragePool
|
||||
err := ctx.RegisterResource("incus:index/storagePool:StoragePool", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetStoragePool gets an existing StoragePool resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetStoragePool(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *StoragePoolState, opts ...pulumi.ResourceOption) (*StoragePool, error) {
|
||||
var resource StoragePool
|
||||
err := ctx.ReadResource("incus:index/storagePool:StoragePool", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering StoragePool resources.
|
||||
type storagePoolState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
|
||||
// Config settings vary from driver to driver.
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the storage pool.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Storage Pool driver. Must be one of `dir`, `zfs`, `lvm`, `btrfs`, `ceph`, `cephfs`, or `cephobject`.
|
||||
Driver *string `pulumi:"driver"`
|
||||
// **Required** - Name of the storage pool.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the storage pool will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target *string `pulumi:"target"`
|
||||
}
|
||||
|
||||
type StoragePoolState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
|
||||
// Config settings vary from driver to driver.
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the storage pool.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Storage Pool driver. Must be one of `dir`, `zfs`, `lvm`, `btrfs`, `ceph`, `cephfs`, or `cephobject`.
|
||||
Driver pulumi.StringPtrInput
|
||||
// **Required** - Name of the storage pool.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the storage pool will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (StoragePoolState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*storagePoolState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type storagePoolArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
|
||||
// Config settings vary from driver to driver.
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Description of the storage pool.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Storage Pool driver. Must be one of `dir`, `zfs`, `lvm`, `btrfs`, `ceph`, `cephfs`, or `cephobject`.
|
||||
Driver string `pulumi:"driver"`
|
||||
// **Required** - Name of the storage pool.
|
||||
Name *string `pulumi:"name"`
|
||||
// *Optional* - Name of the project where the storage pool will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target *string `pulumi:"target"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a StoragePool resource.
|
||||
type StoragePoolArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
|
||||
// Config settings vary from driver to driver.
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Description of the storage pool.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Storage Pool driver. Must be one of `dir`, `zfs`, `lvm`, `btrfs`, `ceph`, `cephfs`, or `cephobject`.
|
||||
Driver pulumi.StringInput
|
||||
// **Required** - Name of the storage pool.
|
||||
Name pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the storage pool will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (StoragePoolArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*storagePoolArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type StoragePoolInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToStoragePoolOutput() StoragePoolOutput
|
||||
ToStoragePoolOutputWithContext(ctx context.Context) StoragePoolOutput
|
||||
}
|
||||
|
||||
func (*StoragePool) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**StoragePool)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *StoragePool) ToStoragePoolOutput() StoragePoolOutput {
|
||||
return i.ToStoragePoolOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *StoragePool) ToStoragePoolOutputWithContext(ctx context.Context) StoragePoolOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(StoragePoolOutput)
|
||||
}
|
||||
|
||||
// StoragePoolArrayInput is an input type that accepts StoragePoolArray and StoragePoolArrayOutput values.
|
||||
// You can construct a concrete instance of `StoragePoolArrayInput` via:
|
||||
//
|
||||
// StoragePoolArray{ StoragePoolArgs{...} }
|
||||
type StoragePoolArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToStoragePoolArrayOutput() StoragePoolArrayOutput
|
||||
ToStoragePoolArrayOutputWithContext(context.Context) StoragePoolArrayOutput
|
||||
}
|
||||
|
||||
type StoragePoolArray []StoragePoolInput
|
||||
|
||||
func (StoragePoolArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*StoragePool)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i StoragePoolArray) ToStoragePoolArrayOutput() StoragePoolArrayOutput {
|
||||
return i.ToStoragePoolArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i StoragePoolArray) ToStoragePoolArrayOutputWithContext(ctx context.Context) StoragePoolArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(StoragePoolArrayOutput)
|
||||
}
|
||||
|
||||
// StoragePoolMapInput is an input type that accepts StoragePoolMap and StoragePoolMapOutput values.
|
||||
// You can construct a concrete instance of `StoragePoolMapInput` via:
|
||||
//
|
||||
// StoragePoolMap{ "key": StoragePoolArgs{...} }
|
||||
type StoragePoolMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToStoragePoolMapOutput() StoragePoolMapOutput
|
||||
ToStoragePoolMapOutputWithContext(context.Context) StoragePoolMapOutput
|
||||
}
|
||||
|
||||
type StoragePoolMap map[string]StoragePoolInput
|
||||
|
||||
func (StoragePoolMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*StoragePool)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i StoragePoolMap) ToStoragePoolMapOutput() StoragePoolMapOutput {
|
||||
return i.ToStoragePoolMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i StoragePoolMap) ToStoragePoolMapOutputWithContext(ctx context.Context) StoragePoolMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(StoragePoolMapOutput)
|
||||
}
|
||||
|
||||
type StoragePoolOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (StoragePoolOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**StoragePool)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o StoragePoolOutput) ToStoragePoolOutput() StoragePoolOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StoragePoolOutput) ToStoragePoolOutputWithContext(ctx context.Context) StoragePoolOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [storage pool config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
|
||||
// Config settings vary from driver to driver.
|
||||
func (o StoragePoolOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *StoragePool) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the storage pool.
|
||||
func (o StoragePoolOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StoragePool) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Storage Pool driver. Must be one of `dir`, `zfs`, `lvm`, `btrfs`, `ceph`, `cephfs`, or `cephobject`.
|
||||
func (o StoragePoolOutput) Driver() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StoragePool) pulumi.StringOutput { return v.Driver }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the storage pool.
|
||||
func (o StoragePoolOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StoragePool) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the storage pool will be stored.
|
||||
func (o StoragePoolOutput) Project() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StoragePool) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o StoragePoolOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *StoragePool) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
func (o StoragePoolOutput) Target() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *StoragePool) pulumi.StringPtrOutput { return v.Target }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
type StoragePoolArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (StoragePoolArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*StoragePool)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o StoragePoolArrayOutput) ToStoragePoolArrayOutput() StoragePoolArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StoragePoolArrayOutput) ToStoragePoolArrayOutputWithContext(ctx context.Context) StoragePoolArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StoragePoolArrayOutput) Index(i pulumi.IntInput) StoragePoolOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *StoragePool {
|
||||
return vs[0].([]*StoragePool)[vs[1].(int)]
|
||||
}).(StoragePoolOutput)
|
||||
}
|
||||
|
||||
type StoragePoolMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (StoragePoolMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*StoragePool)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o StoragePoolMapOutput) ToStoragePoolMapOutput() StoragePoolMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StoragePoolMapOutput) ToStoragePoolMapOutputWithContext(ctx context.Context) StoragePoolMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StoragePoolMapOutput) MapIndex(k pulumi.StringInput) StoragePoolOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *StoragePool {
|
||||
return vs[0].(map[string]*StoragePool)[vs[1].(string)]
|
||||
}).(StoragePoolOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*StoragePoolInput)(nil)).Elem(), &StoragePool{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*StoragePoolArrayInput)(nil)).Elem(), StoragePoolArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*StoragePoolMapInput)(nil)).Elem(), StoragePoolMap{})
|
||||
pulumi.RegisterOutputType(StoragePoolOutput{})
|
||||
pulumi.RegisterOutputType(StoragePoolArrayOutput{})
|
||||
pulumi.RegisterOutputType(StoragePoolMapOutput{})
|
||||
}
|
||||
406
sdk/go/incus/storageVolume.go
generated
Normal file
406
sdk/go/incus/storageVolume.go
generated
Normal file
@@ -0,0 +1,406 @@
|
||||
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
|
||||
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
package incus
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
|
||||
"errors"
|
||||
"git.kalinow.ski/nimbus/pulumi-incus/sdk/go/incus/internal"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
type StorageVolume struct {
|
||||
pulumi.CustomResourceState
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
|
||||
// Config settings vary depending on the Storage Pool used.
|
||||
Config pulumi.StringMapOutput `pulumi:"config"`
|
||||
// *Optional* - Volume content type (`filesystem` or `block`)
|
||||
ContentType pulumi.StringOutput `pulumi:"contentType"`
|
||||
// *Optional* - Description of the volume.
|
||||
Description pulumi.StringOutput `pulumi:"description"`
|
||||
// Name of the node where volume was created. It could be useful with Incus in cluster mode.
|
||||
Location pulumi.StringOutput `pulumi:"location"`
|
||||
// **Required** - Name of the storage volume.
|
||||
Name pulumi.StringOutput `pulumi:"name"`
|
||||
// **Required** - Name of storage pool to host the volume.
|
||||
Pool pulumi.StringOutput `pulumi:"pool"`
|
||||
// *Optional* - Name of the project where the volume will be stored.
|
||||
Project pulumi.StringOutput `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrOutput `pulumi:"remote"`
|
||||
// *Optional* - Path to a backup file from which the volume will be created.
|
||||
SourceFile pulumi.StringPtrOutput `pulumi:"sourceFile"`
|
||||
// *Optional* - The source volume from which the volume will be created. See reference below.
|
||||
SourceVolume StorageVolumeSourceVolumePtrOutput `pulumi:"sourceVolume"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringOutput `pulumi:"target"`
|
||||
// *Optional* - The "type" of volume. The default value is `custom`,
|
||||
// which is the type to use for storage volumes attached to instances.
|
||||
Type pulumi.StringOutput `pulumi:"type"`
|
||||
}
|
||||
|
||||
// NewStorageVolume registers a new resource with the given unique name, arguments, and options.
|
||||
func NewStorageVolume(ctx *pulumi.Context,
|
||||
name string, args *StorageVolumeArgs, opts ...pulumi.ResourceOption) (*StorageVolume, error) {
|
||||
if args == nil {
|
||||
return nil, errors.New("missing one or more required arguments")
|
||||
}
|
||||
|
||||
if args.Pool == nil {
|
||||
return nil, errors.New("invalid value for required argument 'Pool'")
|
||||
}
|
||||
if args.Project == nil {
|
||||
args.Project = pulumi.StringPtr("default")
|
||||
}
|
||||
opts = internal.PkgResourceDefaultOpts(opts)
|
||||
var resource StorageVolume
|
||||
err := ctx.RegisterResource("incus:index/storageVolume:StorageVolume", name, args, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// GetStorageVolume gets an existing StorageVolume resource's state with the given name, ID, and optional
|
||||
// state properties that are used to uniquely qualify the lookup (nil if not required).
|
||||
func GetStorageVolume(ctx *pulumi.Context,
|
||||
name string, id pulumi.IDInput, state *StorageVolumeState, opts ...pulumi.ResourceOption) (*StorageVolume, error) {
|
||||
var resource StorageVolume
|
||||
err := ctx.ReadResource("incus:index/storageVolume:StorageVolume", name, id, state, &resource, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &resource, nil
|
||||
}
|
||||
|
||||
// Input properties used for looking up and filtering StorageVolume resources.
|
||||
type storageVolumeState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
|
||||
// Config settings vary depending on the Storage Pool used.
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Volume content type (`filesystem` or `block`)
|
||||
ContentType *string `pulumi:"contentType"`
|
||||
// *Optional* - Description of the volume.
|
||||
Description *string `pulumi:"description"`
|
||||
// Name of the node where volume was created. It could be useful with Incus in cluster mode.
|
||||
Location *string `pulumi:"location"`
|
||||
// **Required** - Name of the storage volume.
|
||||
Name *string `pulumi:"name"`
|
||||
// **Required** - Name of storage pool to host the volume.
|
||||
Pool *string `pulumi:"pool"`
|
||||
// *Optional* - Name of the project where the volume will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Path to a backup file from which the volume will be created.
|
||||
SourceFile *string `pulumi:"sourceFile"`
|
||||
// *Optional* - The source volume from which the volume will be created. See reference below.
|
||||
SourceVolume *StorageVolumeSourceVolume `pulumi:"sourceVolume"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target *string `pulumi:"target"`
|
||||
// *Optional* - The "type" of volume. The default value is `custom`,
|
||||
// which is the type to use for storage volumes attached to instances.
|
||||
Type *string `pulumi:"type"`
|
||||
}
|
||||
|
||||
type StorageVolumeState struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
|
||||
// Config settings vary depending on the Storage Pool used.
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Volume content type (`filesystem` or `block`)
|
||||
ContentType pulumi.StringPtrInput
|
||||
// *Optional* - Description of the volume.
|
||||
Description pulumi.StringPtrInput
|
||||
// Name of the node where volume was created. It could be useful with Incus in cluster mode.
|
||||
Location pulumi.StringPtrInput
|
||||
// **Required** - Name of the storage volume.
|
||||
Name pulumi.StringPtrInput
|
||||
// **Required** - Name of storage pool to host the volume.
|
||||
Pool pulumi.StringPtrInput
|
||||
// *Optional* - Name of the project where the volume will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Path to a backup file from which the volume will be created.
|
||||
SourceFile pulumi.StringPtrInput
|
||||
// *Optional* - The source volume from which the volume will be created. See reference below.
|
||||
SourceVolume StorageVolumeSourceVolumePtrInput
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringPtrInput
|
||||
// *Optional* - The "type" of volume. The default value is `custom`,
|
||||
// which is the type to use for storage volumes attached to instances.
|
||||
Type pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (StorageVolumeState) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*storageVolumeState)(nil)).Elem()
|
||||
}
|
||||
|
||||
type storageVolumeArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
|
||||
// Config settings vary depending on the Storage Pool used.
|
||||
Config map[string]string `pulumi:"config"`
|
||||
// *Optional* - Volume content type (`filesystem` or `block`)
|
||||
ContentType *string `pulumi:"contentType"`
|
||||
// *Optional* - Description of the volume.
|
||||
Description *string `pulumi:"description"`
|
||||
// **Required** - Name of the storage volume.
|
||||
Name *string `pulumi:"name"`
|
||||
// **Required** - Name of storage pool to host the volume.
|
||||
Pool string `pulumi:"pool"`
|
||||
// *Optional* - Name of the project where the volume will be stored.
|
||||
Project *string `pulumi:"project"`
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote *string `pulumi:"remote"`
|
||||
// *Optional* - Path to a backup file from which the volume will be created.
|
||||
SourceFile *string `pulumi:"sourceFile"`
|
||||
// *Optional* - The source volume from which the volume will be created. See reference below.
|
||||
SourceVolume *StorageVolumeSourceVolume `pulumi:"sourceVolume"`
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target *string `pulumi:"target"`
|
||||
// *Optional* - The "type" of volume. The default value is `custom`,
|
||||
// which is the type to use for storage volumes attached to instances.
|
||||
Type *string `pulumi:"type"`
|
||||
}
|
||||
|
||||
// The set of arguments for constructing a StorageVolume resource.
|
||||
type StorageVolumeArgs struct {
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
|
||||
// Config settings vary depending on the Storage Pool used.
|
||||
Config pulumi.StringMapInput
|
||||
// *Optional* - Volume content type (`filesystem` or `block`)
|
||||
ContentType pulumi.StringPtrInput
|
||||
// *Optional* - Description of the volume.
|
||||
Description pulumi.StringPtrInput
|
||||
// **Required** - Name of the storage volume.
|
||||
Name pulumi.StringPtrInput
|
||||
// **Required** - Name of storage pool to host the volume.
|
||||
Pool pulumi.StringInput
|
||||
// *Optional* - Name of the project where the volume will be stored.
|
||||
Project pulumi.StringPtrInput
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
Remote pulumi.StringPtrInput
|
||||
// *Optional* - Path to a backup file from which the volume will be created.
|
||||
SourceFile pulumi.StringPtrInput
|
||||
// *Optional* - The source volume from which the volume will be created. See reference below.
|
||||
SourceVolume StorageVolumeSourceVolumePtrInput
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
Target pulumi.StringPtrInput
|
||||
// *Optional* - The "type" of volume. The default value is `custom`,
|
||||
// which is the type to use for storage volumes attached to instances.
|
||||
Type pulumi.StringPtrInput
|
||||
}
|
||||
|
||||
func (StorageVolumeArgs) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*storageVolumeArgs)(nil)).Elem()
|
||||
}
|
||||
|
||||
type StorageVolumeInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToStorageVolumeOutput() StorageVolumeOutput
|
||||
ToStorageVolumeOutputWithContext(ctx context.Context) StorageVolumeOutput
|
||||
}
|
||||
|
||||
func (*StorageVolume) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**StorageVolume)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i *StorageVolume) ToStorageVolumeOutput() StorageVolumeOutput {
|
||||
return i.ToStorageVolumeOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i *StorageVolume) ToStorageVolumeOutputWithContext(ctx context.Context) StorageVolumeOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(StorageVolumeOutput)
|
||||
}
|
||||
|
||||
// StorageVolumeArrayInput is an input type that accepts StorageVolumeArray and StorageVolumeArrayOutput values.
|
||||
// You can construct a concrete instance of `StorageVolumeArrayInput` via:
|
||||
//
|
||||
// StorageVolumeArray{ StorageVolumeArgs{...} }
|
||||
type StorageVolumeArrayInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToStorageVolumeArrayOutput() StorageVolumeArrayOutput
|
||||
ToStorageVolumeArrayOutputWithContext(context.Context) StorageVolumeArrayOutput
|
||||
}
|
||||
|
||||
type StorageVolumeArray []StorageVolumeInput
|
||||
|
||||
func (StorageVolumeArray) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*StorageVolume)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i StorageVolumeArray) ToStorageVolumeArrayOutput() StorageVolumeArrayOutput {
|
||||
return i.ToStorageVolumeArrayOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i StorageVolumeArray) ToStorageVolumeArrayOutputWithContext(ctx context.Context) StorageVolumeArrayOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(StorageVolumeArrayOutput)
|
||||
}
|
||||
|
||||
// StorageVolumeMapInput is an input type that accepts StorageVolumeMap and StorageVolumeMapOutput values.
|
||||
// You can construct a concrete instance of `StorageVolumeMapInput` via:
|
||||
//
|
||||
// StorageVolumeMap{ "key": StorageVolumeArgs{...} }
|
||||
type StorageVolumeMapInput interface {
|
||||
pulumi.Input
|
||||
|
||||
ToStorageVolumeMapOutput() StorageVolumeMapOutput
|
||||
ToStorageVolumeMapOutputWithContext(context.Context) StorageVolumeMapOutput
|
||||
}
|
||||
|
||||
type StorageVolumeMap map[string]StorageVolumeInput
|
||||
|
||||
func (StorageVolumeMap) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*StorageVolume)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (i StorageVolumeMap) ToStorageVolumeMapOutput() StorageVolumeMapOutput {
|
||||
return i.ToStorageVolumeMapOutputWithContext(context.Background())
|
||||
}
|
||||
|
||||
func (i StorageVolumeMap) ToStorageVolumeMapOutputWithContext(ctx context.Context) StorageVolumeMapOutput {
|
||||
return pulumi.ToOutputWithContext(ctx, i).(StorageVolumeMapOutput)
|
||||
}
|
||||
|
||||
type StorageVolumeOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (StorageVolumeOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((**StorageVolume)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o StorageVolumeOutput) ToStorageVolumeOutput() StorageVolumeOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageVolumeOutput) ToStorageVolumeOutputWithContext(ctx context.Context) StorageVolumeOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
// *Optional* - Map of key/value pairs of
|
||||
// [volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/).
|
||||
// Config settings vary depending on the Storage Pool used.
|
||||
func (o StorageVolumeOutput) Config() pulumi.StringMapOutput {
|
||||
return o.ApplyT(func(v *StorageVolume) pulumi.StringMapOutput { return v.Config }).(pulumi.StringMapOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Volume content type (`filesystem` or `block`)
|
||||
func (o StorageVolumeOutput) ContentType() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageVolume) pulumi.StringOutput { return v.ContentType }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Description of the volume.
|
||||
func (o StorageVolumeOutput) Description() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageVolume) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// Name of the node where volume was created. It could be useful with Incus in cluster mode.
|
||||
func (o StorageVolumeOutput) Location() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageVolume) pulumi.StringOutput { return v.Location }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of the storage volume.
|
||||
func (o StorageVolumeOutput) Name() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageVolume) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// **Required** - Name of storage pool to host the volume.
|
||||
func (o StorageVolumeOutput) Pool() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageVolume) pulumi.StringOutput { return v.Pool }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Name of the project where the volume will be stored.
|
||||
func (o StorageVolumeOutput) Project() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageVolume) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The remote in which the resource will be created. If
|
||||
// not provided, the provider's default remote will be used.
|
||||
func (o StorageVolumeOutput) Remote() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *StorageVolume) pulumi.StringPtrOutput { return v.Remote }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Path to a backup file from which the volume will be created.
|
||||
func (o StorageVolumeOutput) SourceFile() pulumi.StringPtrOutput {
|
||||
return o.ApplyT(func(v *StorageVolume) pulumi.StringPtrOutput { return v.SourceFile }).(pulumi.StringPtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The source volume from which the volume will be created. See reference below.
|
||||
func (o StorageVolumeOutput) SourceVolume() StorageVolumeSourceVolumePtrOutput {
|
||||
return o.ApplyT(func(v *StorageVolume) StorageVolumeSourceVolumePtrOutput { return v.SourceVolume }).(StorageVolumeSourceVolumePtrOutput)
|
||||
}
|
||||
|
||||
// *Optional* - Specify a target node in a cluster.
|
||||
func (o StorageVolumeOutput) Target() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageVolume) pulumi.StringOutput { return v.Target }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
// *Optional* - The "type" of volume. The default value is `custom`,
|
||||
// which is the type to use for storage volumes attached to instances.
|
||||
func (o StorageVolumeOutput) Type() pulumi.StringOutput {
|
||||
return o.ApplyT(func(v *StorageVolume) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput)
|
||||
}
|
||||
|
||||
type StorageVolumeArrayOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (StorageVolumeArrayOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*[]*StorageVolume)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o StorageVolumeArrayOutput) ToStorageVolumeArrayOutput() StorageVolumeArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageVolumeArrayOutput) ToStorageVolumeArrayOutputWithContext(ctx context.Context) StorageVolumeArrayOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageVolumeArrayOutput) Index(i pulumi.IntInput) StorageVolumeOutput {
|
||||
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *StorageVolume {
|
||||
return vs[0].([]*StorageVolume)[vs[1].(int)]
|
||||
}).(StorageVolumeOutput)
|
||||
}
|
||||
|
||||
type StorageVolumeMapOutput struct{ *pulumi.OutputState }
|
||||
|
||||
func (StorageVolumeMapOutput) ElementType() reflect.Type {
|
||||
return reflect.TypeOf((*map[string]*StorageVolume)(nil)).Elem()
|
||||
}
|
||||
|
||||
func (o StorageVolumeMapOutput) ToStorageVolumeMapOutput() StorageVolumeMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageVolumeMapOutput) ToStorageVolumeMapOutputWithContext(ctx context.Context) StorageVolumeMapOutput {
|
||||
return o
|
||||
}
|
||||
|
||||
func (o StorageVolumeMapOutput) MapIndex(k pulumi.StringInput) StorageVolumeOutput {
|
||||
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *StorageVolume {
|
||||
return vs[0].(map[string]*StorageVolume)[vs[1].(string)]
|
||||
}).(StorageVolumeOutput)
|
||||
}
|
||||
|
||||
func init() {
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*StorageVolumeInput)(nil)).Elem(), &StorageVolume{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*StorageVolumeArrayInput)(nil)).Elem(), StorageVolumeArray{})
|
||||
pulumi.RegisterInputType(reflect.TypeOf((*StorageVolumeMapInput)(nil)).Elem(), StorageVolumeMap{})
|
||||
pulumi.RegisterOutputType(StorageVolumeOutput{})
|
||||
pulumi.RegisterOutputType(StorageVolumeArrayOutput{})
|
||||
pulumi.RegisterOutputType(StorageVolumeMapOutput{})
|
||||
}
|
||||
Reference in New Issue
Block a user