diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index dc5ac87..577f7b6 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -5,11 +5,11 @@ on: inputs: {} pull_request: branches: - - main - - v* - - feature* + - main + - v* + - feature* paths-ignore: - - CHANGELOG.md + - CHANGELOG.md env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -19,26 +19,26 @@ jobs: name: lint runs-on: ubuntu-latest steps: - - name: Checkout Repo - uses: actions/checkout@v3 - - name: Install go - uses: actions/setup-go@v4 - with: - # The versions of golangci-lint and setup-go here cross-depend and need to update together. - go-version: 1.21 - # Either this action or golangci-lint needs to disable the cache - cache: false - - name: disarm go:embed directives to enable lint - continue-on-error: true # this fails if there are no go:embed directives - run: | - git grep -l 'go:embed' -- provider | xargs sed -i 's/go:embed/ goembed/g' - - name: prepare upstream - continue-on-error: true - run: make upstream - - run: cd provider && go mod tidy - - name: golangci-lint - uses: golangci/golangci-lint-action@v3 - with: - version: v1.54.1 - working-directory: provider - skip-pkg-cache: true + - name: Checkout Repo + uses: actions/checkout@v3 + - name: Install go + uses: actions/setup-go@v4 + with: + # The versions of golangci-lint and setup-go here cross-depend and need to update together. + go-version: 1.23 + # Either this action or golangci-lint needs to disable the cache + cache: false + - name: disarm go:embed directives to enable lint + continue-on-error: true # this fails if there are no go:embed directives + run: | + git grep -l 'go:embed' -- provider | xargs sed -i 's/go:embed/ goembed/g' + - name: prepare upstream + continue-on-error: true + run: make upstream + - run: cd provider && go mod tidy + - name: golangci-lint + uses: golangci/golangci-lint-action@v3 + with: + version: v1.54.1 + working-directory: provider + skip-pkg-cache: true diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 241fc0d..2004463 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -57,7 +57,7 @@ jobs: fail-fast: true matrix: goversion: - - 1.21.x + - 1.23.x publish_sdk: name: Publish SDKs runs-on: ubuntu-latest diff --git a/.gitignore b/.gitignore index 5ad2e40..052663f 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ provider/**/schema-embed.json **/version.txt **/nuget **/dist +.venv diff --git a/Makefile b/Makefile index 87e1335..f178b87 100644 --- a/Makefile +++ b/Makefile @@ -12,7 +12,7 @@ VERSION_PATH := ${PROVIDER_PATH}/pkg/version.Version TFGEN := pulumi-tfgen-${PACK} PROVIDER := pulumi-resource-${PACK} -VERSION := v0.0.28 +VERSION := v0.0.29 TESTPARALLELISM := 4 diff --git a/examples/instance/go/go.mod b/examples/instance/go/go.mod index bc4657a..e9b3650 100644 --- a/examples/instance/go/go.mod +++ b/examples/instance/go/go.mod @@ -1,55 +1,55 @@ module github.com/genesiscloud/pulumi-genesiscloud/examples/instance/go -go 1.22.1 +go 1.23.1 require ( - github.com/genesiscloud/pulumi-genesiscloud/sdk v0.0.24 - github.com/pulumi/pulumi/sdk/v3 v3.111.1 + github.com/genesiscloud/pulumi-genesiscloud/sdk v0.0.28 + github.com/pulumi/pulumi/sdk/v3 v3.137.0 ) require ( - dario.cat/mergo v1.0.0 // indirect - github.com/Microsoft/go-winio v0.6.1 // indirect - github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371 // indirect - github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect + dario.cat/mergo v1.0.1 // indirect + github.com/BurntSushi/toml v1.4.0 // indirect + github.com/Microsoft/go-winio v0.6.2 // indirect + github.com/ProtonMail/go-crypto v1.0.0 // indirect github.com/agext/levenshtein v1.2.3 // indirect - github.com/apparentlymart/go-textseg/v13 v13.0.0 // indirect + github.com/apparentlymart/go-textseg/v15 v15.0.0 // indirect github.com/atotto/clipboard v0.1.4 // indirect github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect github.com/blang/semver v3.5.1+incompatible // indirect - github.com/charmbracelet/bubbles v0.16.1 // indirect - github.com/charmbracelet/bubbletea v0.24.2 // indirect - github.com/charmbracelet/lipgloss v0.7.1 // indirect + github.com/charmbracelet/bubbles v0.20.0 // indirect + github.com/charmbracelet/bubbletea v1.1.1 // indirect + github.com/charmbracelet/lipgloss v0.13.0 // indirect + github.com/charmbracelet/x/ansi v0.3.2 // indirect + github.com/charmbracelet/x/term v0.2.0 // indirect github.com/cheggaaa/pb v1.0.29 // indirect - github.com/cloudflare/circl v1.3.7 // indirect - github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 // indirect - github.com/cyphar/filepath-securejoin v0.2.4 // indirect - github.com/djherbis/times v1.5.0 // indirect + github.com/cloudflare/circl v1.5.0 // indirect + github.com/cyphar/filepath-securejoin v0.3.4 // indirect + github.com/djherbis/times v1.6.0 // indirect github.com/emirpasic/gods v1.18.1 // indirect + github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect - github.com/go-git/go-billy/v5 v5.5.0 // indirect - github.com/go-git/go-git/v5 v5.11.0 // indirect + github.com/go-git/go-billy/v5 v5.6.0 // indirect + github.com/go-git/go-git/v5 v5.12.0 // indirect github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang/glog v1.1.0 // indirect + github.com/golang/glog v1.2.2 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect - github.com/golang/protobuf v1.5.3 // indirect - github.com/google/uuid v1.3.0 // indirect + github.com/google/uuid v1.6.0 // indirect github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect - github.com/hashicorp/hcl/v2 v2.17.0 // indirect + github.com/hashicorp/hcl/v2 v2.22.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect github.com/kevinburke/ssh_config v1.2.0 // indirect github.com/lucasb-eyer/go-colorful v1.2.0 // indirect - github.com/mattn/go-isatty v0.0.19 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect github.com/mattn/go-localereader v0.0.1 // indirect - github.com/mattn/go-runewidth v0.0.15 // indirect + github.com/mattn/go-runewidth v0.0.16 // indirect github.com/mitchellh/go-ps v1.0.0 // indirect github.com/mitchellh/go-wordwrap v1.0.1 // indirect github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 // indirect github.com/muesli/cancelreader v0.2.2 // indirect - github.com/muesli/reflow v0.3.0 // indirect github.com/muesli/termenv v0.15.2 // indirect github.com/opentracing/basictracer-go v1.1.0 // indirect github.com/opentracing/opentracing-go v1.2.0 // indirect @@ -58,35 +58,34 @@ require ( github.com/pkg/errors v0.9.1 // indirect github.com/pkg/term v1.1.0 // indirect github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect - github.com/pulumi/esc v0.6.2 // indirect - github.com/rivo/uniseg v0.4.4 // indirect - github.com/rogpeppe/go-internal v1.11.0 // indirect + github.com/pulumi/esc v0.10.0 // indirect + github.com/rivo/uniseg v0.4.7 // indirect + github.com/rogpeppe/go-internal v1.13.1 // indirect github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect - github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 // indirect - github.com/sergi/go-diff v1.3.1 // indirect - github.com/skeema/knownhosts v1.2.1 // indirect - github.com/spf13/cobra v1.7.0 // indirect + github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 // indirect + github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect + github.com/skeema/knownhosts v1.3.0 // indirect + github.com/spf13/cobra v1.8.1 // indirect github.com/spf13/pflag v1.0.5 // indirect github.com/texttheater/golang-levenshtein v1.0.1 // indirect - github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 // indirect github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect github.com/uber/jaeger-lib v2.4.1+incompatible // indirect github.com/xanzy/ssh-agent v0.3.3 // indirect - github.com/zclconf/go-cty v1.13.2 // indirect - go.uber.org/atomic v1.9.0 // indirect - golang.org/x/crypto v0.21.0 // indirect - golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa // indirect - golang.org/x/mod v0.14.0 // indirect - golang.org/x/net v0.23.0 // indirect - golang.org/x/sync v0.5.0 // indirect - golang.org/x/sys v0.18.0 // indirect - golang.org/x/term v0.18.0 // indirect - golang.org/x/text v0.14.0 // indirect - golang.org/x/tools v0.15.0 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20230706204954-ccb25ca9f130 // indirect - google.golang.org/grpc v1.57.1 // indirect - google.golang.org/protobuf v1.33.0 // indirect + github.com/zclconf/go-cty v1.15.0 // indirect + go.uber.org/atomic v1.11.0 // indirect + golang.org/x/crypto v0.28.0 // indirect + golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c // indirect + golang.org/x/mod v0.21.0 // indirect + golang.org/x/net v0.30.0 // indirect + golang.org/x/sync v0.8.0 // indirect + golang.org/x/sys v0.26.0 // indirect + golang.org/x/term v0.25.0 // indirect + golang.org/x/text v0.19.0 // indirect + golang.org/x/tools v0.26.0 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38 // indirect + google.golang.org/grpc v1.67.1 // indirect + google.golang.org/protobuf v1.35.1 // indirect gopkg.in/warnings.v0 v0.1.2 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - lukechampine.com/frand v1.4.2 // indirect + lukechampine.com/frand v1.5.1 // indirect ) diff --git a/examples/instance/go/go.sum b/examples/instance/go/go.sum index 86aff0a..d7b0ee9 100644 --- a/examples/instance/go/go.sum +++ b/examples/instance/go/go.sum @@ -1,20 +1,20 @@ -dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= -dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= +dario.cat/mergo v1.0.1 h1:Ra4+bf83h2ztPIQYNP99R6m+Y7KfnARDfID+a+vLl4s= +dario.cat/mergo v1.0.1/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= +github.com/BurntSushi/toml v1.4.0 h1:kuoIxZQy2WRRk1pttg9asf+WVv6tWQuBNVmK8+nqPr0= +github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= github.com/HdrHistogram/hdrhistogram-go v1.1.2 h1:5IcZpTvzydCQeHzK4Ef/D5rrSqwxob0t8PQPMybUNFM= github.com/HdrHistogram/hdrhistogram-go v1.1.2/go.mod h1:yDgFjdqOqDEKOvasDdhWNXYg9BVp4O+o5f6V/ehm6Oo= github.com/Microsoft/go-winio v0.5.2/go.mod h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v8QkMxJ6pZY= -github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= -github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= -github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371 h1:kkhsdkhsCvIsutKu5zLMgWtgh9YxGCNAw8Ad8hjwfYg= -github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= -github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da h1:KjTM2ks9d14ZYCvmHS9iAKVt9AyzRSqNU1qabPih5BY= -github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da/go.mod h1:eHEWzANqSiWQsof+nXEI9bUVUyV6F53Fp89EuCh2EAA= +github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY= +github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU= +github.com/ProtonMail/go-crypto v1.0.0 h1:LRuvITjQWX+WIfr930YHG2HNfjR1uOfyf5vE0kC2U78= +github.com/ProtonMail/go-crypto v1.0.0/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo= github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFIImctFaOjnTIavg87rW78vTPkQqLI8= github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4= -github.com/apparentlymart/go-textseg/v13 v13.0.0 h1:Y+KvPE1NYz0xl601PVImeQfFyEy6iT90AvPUL1NNfNw= -github.com/apparentlymart/go-textseg/v13 v13.0.0/go.mod h1:ZK2fH7c4NqDTLtiYLvIkEghdlcqw7yxLeM89kiTRPUo= +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/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio= github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= github.com/atotto/clipboard v0.1.4 h1:EH0zSVneZPSuFR11BlR9YppQTVDbh5+16AmcJi4g1z4= @@ -24,61 +24,60 @@ github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ github.com/blang/semver v3.5.1+incompatible h1:cQNTCjp13qL8KC3Nbxr/y2Bqb63oX6wdnnjpJbkM4JQ= github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0= -github.com/charmbracelet/bubbles v0.16.1 h1:6uzpAAaT9ZqKssntbvZMlksWHruQLNxg49H5WdeuYSY= -github.com/charmbracelet/bubbles v0.16.1/go.mod h1:2QCp9LFlEsBQMvIYERr7Ww2H2bA7xen1idUDIzm/+Xc= -github.com/charmbracelet/bubbletea v0.24.2 h1:uaQIKx9Ai6Gdh5zpTbGiWpytMU+CfsPp06RaW2cx/SY= -github.com/charmbracelet/bubbletea v0.24.2/go.mod h1:XdrNrV4J8GiyshTtx3DNuYkR1FDaJmO3l2nejekbsgg= -github.com/charmbracelet/lipgloss v0.7.1 h1:17WMwi7N1b1rVWOjMT+rCh7sQkvDU75B2hbZpc5Kc1E= -github.com/charmbracelet/lipgloss v0.7.1/go.mod h1:yG0k3giv8Qj8edTCbbg6AlQ5e8KNWpFujkNawKNhE2c= +github.com/charmbracelet/bubbles v0.20.0 h1:jSZu6qD8cRQ6k9OMfR1WlM+ruM8fkPWkHvQWD9LIutE= +github.com/charmbracelet/bubbles v0.20.0/go.mod h1:39slydyswPy+uVOHZ5x/GjwVAFkCsV8IIVy+4MhzwwU= +github.com/charmbracelet/bubbletea v1.1.1 h1:KJ2/DnmpfqFtDNVTvYZ6zpPFL9iRCRr0qqKOCvppbPY= +github.com/charmbracelet/bubbletea v1.1.1/go.mod h1:9Ogk0HrdbHolIKHdjfFpyXJmiCzGwy+FesYkZr7hYU4= +github.com/charmbracelet/lipgloss v0.13.0 h1:4X3PPeoWEDCMvzDvGmTajSyYPcZM4+y8sCA/SsA3cjw= +github.com/charmbracelet/lipgloss v0.13.0/go.mod h1:nw4zy0SBX/F/eAO1cWdcvy6qnkDUxr8Lw7dvFrAIbbY= +github.com/charmbracelet/x/ansi v0.3.2 h1:wsEwgAN+C9U06l9dCVMX0/L3x7ptvY1qmjMwyfE6USY= +github.com/charmbracelet/x/ansi v0.3.2/go.mod h1:dk73KoMTT5AX5BsX0KrqhsTqAnhZZoCBjs7dGWp4Ktw= +github.com/charmbracelet/x/term v0.2.0 h1:cNB9Ot9q8I711MyZ7myUR5HFWL/lc3OpU8jZ4hwm0x0= +github.com/charmbracelet/x/term v0.2.0/go.mod h1:GVxgxAbjUrmpvIINHIQnJJKpMlHiZ4cktEQCN6GWyF0= github.com/cheggaaa/pb v1.0.29 h1:FckUN5ngEk2LpvuG0fw1GEFx6LtyY2pWI/Z2QgCnEYo= github.com/cheggaaa/pb v1.0.29/go.mod h1:W40334L7FMC5JKWldsTWbdGjLo0RxUKK73K+TuPxX30= github.com/cloudflare/circl v1.3.3/go.mod h1:5XYMA4rFBvNIrhs50XuiBJ15vF2pZn4nnUKZrLbUZFA= -github.com/cloudflare/circl v1.3.7 h1:qlCDlTPz2n9fu58M0Nh1J/JzcFpfgkFHHX3O35r5vcU= -github.com/cloudflare/circl v1.3.7/go.mod h1:sRTcRWXGLrKw6yIGJ+l7amYJFfAXbZG0kBSc8r4zxgA= -github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 h1:q2hJAaP1k2wIvVRd/hEHD7lacgqrCPS+k8g1MndzfWY= -github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81/go.mod h1:YynlIjWYF8myEu6sdkwKIvGQq+cOckRm6So2avqoYAk= -github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= -github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= -github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= +github.com/cloudflare/circl v1.5.0 h1:hxIWksrX6XN5a1L2TI/h53AGPhNHoUBo+TD1ms9+pys= +github.com/cloudflare/circl v1.5.0/go.mod h1:uddAzsPgqdMAYatqJ0lsjX1oECcQLIlRpzZh3pJrofs= +github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/cyphar/filepath-securejoin v0.3.4 h1:VBWugsJh2ZxJmLFSM06/0qzQyiQX2Qs0ViKrUAcqdZ8= +github.com/cyphar/filepath-securejoin v0.3.4/go.mod h1:8s/MCNJREmFK0H02MF6Ihv1nakJe4L/w3WZLHNkvlYM= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/djherbis/times v1.5.0 h1:79myA211VwPhFTqUk8xehWrsEO+zcIZj0zT8mXPVARU= -github.com/djherbis/times v1.5.0/go.mod h1:5q7FDLvbNg1L/KaBmPcWlVR9NmoKo3+ucqUA3ijQhA0= +github.com/djherbis/times v1.6.0 h1:w2ctJ92J8fBvWPxugmXIv7Nz7Q3iDMKNx9v5ocVH20c= +github.com/djherbis/times v1.6.0/go.mod h1:gOHeRAz2h+VJNZ5Gmc/o7iD9k4wW7NMVqieYCY99oc0= github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a h1:mATvB/9r/3gvcejNsXKSkQ6lcIaNec2nyfOdlTBR2lU= github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM= github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc= github.com/emirpasic/gods v1.18.1/go.mod h1:8tpGGwCnJ5H4r6BWwaV6OrWmMoPhUl5jm/FMNAnJvWQ= +github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f h1:Y/CXytFA4m6baUTXGLOoWe4PQhGxaX0KpnayAqC48p4= +github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f/go.mod h1:vw97MGsxSvLiUE2X8qFplwetxpGLQrlU1Q9AUEIzCaM= +github.com/fatih/color v1.9.0 h1:8xPHl4/q1VyqGIPif1F+1V3Y3lSmrq01EabUW3CoW5s= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= -github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= -github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= -github.com/genesiscloud/pulumi-genesiscloud/sdk v0.0.24 h1:dILvW4G5Q1ENbCVSSsanCIxC+EvV5E1zKcgjQesbDUU= -github.com/genesiscloud/pulumi-genesiscloud/sdk v0.0.24/go.mod h1:V4Kfzb5o4c0fbsJMF5KdmftS2DsZ+jQAe1loI+PTP4o= -github.com/gliderlabs/ssh v0.3.5 h1:OcaySEmAQJgyYcArR+gGGTHCyE7nvhEMTlYY+Dp8CpY= -github.com/gliderlabs/ssh v0.3.5/go.mod h1:8XB4KraRrX39qHhT6yxPsHedjA08I/uBVwj4xC+/+z4= +github.com/genesiscloud/pulumi-genesiscloud/sdk v0.0.28 h1:YEM4umPWYnkK1UXwsIc7xGkvWV5Y6iq/GaGsoXT6YeM= +github.com/genesiscloud/pulumi-genesiscloud/sdk v0.0.28/go.mod h1:SCF18N2B3Nb0KKWqzcTW0NAKiHqId+cD8IRvCwbWUyI= +github.com/gliderlabs/ssh v0.3.7 h1:iV3Bqi942d9huXnzEF2Mt+CY9gLu8DNM4Obd+8bODRE= +github.com/gliderlabs/ssh v0.3.7/go.mod h1:zpHEXBstFnQYtGnB8k8kQLol82umzn/2/snG7alWVD8= github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI= github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic= -github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU= -github.com/go-git/go-billy/v5 v5.5.0/go.mod h1:hmexnoNsr2SJU1Ju67OaNz5ASJY3+sHgFRpCtpDCKow= +github.com/go-git/go-billy/v5 v5.6.0 h1:w2hPNtoehvJIxR00Vb4xX94qHQi/ApZfX+nBE2Cjio8= +github.com/go-git/go-billy/v5 v5.6.0/go.mod h1:sFDq7xD3fn3E0GOwUSZqHo9lrkmx8xJhA0ZrfvjBRGM= github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4= github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII= -github.com/go-git/go-git/v5 v5.11.0 h1:XIZc1p+8YzypNr34itUfSvYJcv+eYdTnTvOZ2vD3cA4= -github.com/go-git/go-git/v5 v5.11.0/go.mod h1:6GFcX2P3NM7FPBfpePbpLd21XxsgdAt+lKqXmCUiUCY= +github.com/go-git/go-git/v5 v5.12.0 h1:7Md+ndsjrzZxbddRDZjF14qK+NN56sy6wkqaVrjZtys= +github.com/go-git/go-git/v5 v5.12.0/go.mod h1:FTM9VKtnI2m65hNI/TenDDDnUf2Q9FHnXYjuz9i5OEY= github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= -github.com/golang/glog v1.1.0 h1:/d3pCKDPWNnvIWe0vVUpNP32qc8U3PDVxySP/y360qE= -github.com/golang/glog v1.1.0/go.mod h1:pfYeQZ3JWZoXTV5sFc986z3HTpwQs9At6P4ImfuP3NQ= +github.com/golang/glog v1.2.2 h1:1+mZ9upx1Dh6FmUTFR1naJ77miKiXgALjWOZ3NVFPmY= +github.com/golang/glog v1.2.2/go.mod h1:6AhwSGph0fcJtXVM/PEHPqZlFeoLxhs7/t5UDAwmO+w= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= -github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= -github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= -github.com/google/uuid v1.3.0/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/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 h1:MJG/KsmcqMwFAkh8mTnAwhyKoB+sTAnY4CACC110tbU= github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645/go.mod h1:6iZfnjpejD4L/4DwD7NryNaJyCQdzwWwH2MWhCA90Kw= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= @@ -86,8 +85,8 @@ github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= 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/hcl/v2 v2.17.0 h1:z1XvSUyXd1HP10U4lrLg5e0JMVz6CPaJvAgxM0KNZVY= -github.com/hashicorp/hcl/v2 v2.17.0/go.mod h1:gJyW2PTShkJqQBKpAmPO3yxMxIuoXkOF2TpqXzrQyx4= +github.com/hashicorp/hcl/v2 v2.22.0 h1:hkZ3nCtqeJsDhPRFz5EA9iwcG1hNWGePOTw6oyul12M= +github.com/hashicorp/hcl/v2 v2.22.0/go.mod h1:62ZYHrXgPoX8xBnzl8QzbWq4dyDsDtfCRgIq1rbJEvA= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A= @@ -107,18 +106,17 @@ github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY= github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= -github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40= -github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= +github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= +github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg= github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE= -github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA= -github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +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/mattn/go-localereader v0.0.1 h1:ygSAOl7ZXTx4RdPYinUpg6W99U8jWvWi9Ye2JC/oIi4= github.com/mattn/go-localereader v0.0.1/go.mod h1:8fBrzywKY7BI3czFoHkuzRoWE9C+EiG4R1k4Cjx5p88= github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= -github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk= -github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U= -github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= +github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc= +github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= github.com/mitchellh/go-ps v1.0.0 h1:i6ampVEEF4wQFF+bkYfwYgY+F/uYJDktmvLPf7qIgjc= github.com/mitchellh/go-ps v1.0.0/go.mod h1:J4lOc8z8yJs6vUwklHw2XEIiT4z4C40KtWVN3nvg8Pg= github.com/mitchellh/go-wordwrap v1.0.1 h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0= @@ -127,12 +125,10 @@ github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 h1:ZK8zHtRHOkbHy6Mmr5D github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6/go.mod h1:CJlz5H+gyd6CUWT45Oy4q24RdLyn7Md9Vj2/ldJBSIo= github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA= github.com/muesli/cancelreader v0.2.2/go.mod h1:3XuTXfFS2VjM+HTLZY9Ak0l6eUKfijIfMUZ4EgX0QYo= -github.com/muesli/reflow v0.3.0 h1:IFsN6K9NfGtjeggFP+68I4chLZV2yIKsXJFNZ+eWh6s= -github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKtnHY/8= github.com/muesli/termenv v0.15.2 h1:GohcuySI0QmI3wN8Ok9PtKGkgkFIk7y6Vpb5PvrY+Wo= github.com/muesli/termenv v0.15.2/go.mod h1:Epx+iuz8sNs7mNKhxzH4fWXGNpZwUaJKRS1noLXviQ8= -github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= -github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M= +github.com/onsi/gomega v1.34.1 h1:EUMJIKUjM8sKjYbtxQI9A4z2o+rruxnzNvpknOXie6k= +github.com/onsi/gomega v1.34.1/go.mod h1:kU1QgUvBDLXBJq618Xvm2LUX6rSAfRaFRTcdOeDLwwY= github.com/opentracing/basictracer-go v1.1.0 h1:Oa1fTSBvAl8pa3U+IJYqrKm0NALwH9OsgwOqDv4xJW0= github.com/opentracing/basictracer-go v1.1.0/go.mod h1:V2HZueSJEp879yv285Aap1BS69fQMD+MNP1mRs6mBQc= github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= @@ -150,28 +146,27 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435cARxCW6q9gc0S/Yxz7Mkd38pOb0= github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE= -github.com/pulumi/esc v0.6.2 h1:+z+l8cuwIauLSwXQS0uoI3rqB+YG4SzsZYtHfNoXBvw= -github.com/pulumi/esc v0.6.2/go.mod h1:jNnYNjzsOgVTjCp0LL24NsCk8ZJxq4IoLQdCT0X7l8k= -github.com/pulumi/pulumi/sdk/v3 v3.111.1 h1:uOeG/b6YxBuL59xHtmFPspMa8BB6ovjHelL7sVCGJZw= -github.com/pulumi/pulumi/sdk/v3 v3.111.1/go.mod h1:5A6GHUwAJlRY1SSLZh84aDIbsBShcrfcmHzI50ecSBg= -github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= +github.com/pulumi/esc v0.10.0 h1:jzBKzkLVW0mePeanDRfqSQoCJ5yrkux0jIwAkUxpRKE= +github.com/pulumi/esc v0.10.0/go.mod h1:2Bfa+FWj/xl8CKqRTWbWgDX0SOD4opdQgvYSURTGK2c= +github.com/pulumi/pulumi/sdk/v3 v3.137.0 h1:bxhYpOY7Z4xt+VmezEpHuhjpOekkaMqOjzxFg/1OhCw= +github.com/pulumi/pulumi/sdk/v3 v3.137.0/go.mod h1:PvKsX88co8XuwuPdzolMvew5lZV+4JmZfkeSjj7A6dI= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= -github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= -github.com/rivo/uniseg v0.4.4/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= -github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M= -github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA= +github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= +github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= +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/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 h1:OkMGxebDjyw0ULyrTYWeN0UNCCkmCWfjPnIA2W6oviI= github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06/go.mod h1:+ePHsJ1keEjQtpvf9HHw0f4ZeJ0TLRsxhunSI2hYJSs= -github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 h1:TToq11gyfNlrMFZiYujSekIsPd9AmsA2Bj/iv+s4JHE= -github.com/santhosh-tekuri/jsonschema/v5 v5.0.0/go.mod h1:FKdcjfQW6rpZSnxxUvEA5H/cDPdvJ/SZJQLWWXWGrZ0= -github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= -github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= +github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 h1:lZUw3E0/J3roVtGQ+SCrUrg3ON6NgVqpn3+iol9aGu4= +github.com/santhosh-tekuri/jsonschema/v5 v5.3.1/go.mod h1:uToXkOrWAZ6/Oc07xWQrPOhJotwFIyu2bBVN41fcDUY= +github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8= +github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4= github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= -github.com/skeema/knownhosts v1.2.1 h1:SHWdIUa82uGZz+F+47k8SY4QhhI291cXCpopT1lK2AQ= -github.com/skeema/knownhosts v1.2.1/go.mod h1:xYbVRSPxqBZFrdmDyMmsOs+uX1UZC3nTN3ThzgDxUwo= -github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I= -github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0= +github.com/skeema/knownhosts v1.3.0 h1:AM+y0rI04VksttfwjkSTNQorvGqmwATnvnAHpSgc0LY= +github.com/skeema/knownhosts v1.3.0/go.mod h1:sPINvnADmT/qYH1kfv+ePMmOBTH6Tbl7b5LvTDjFK7M= +github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM= +github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/stretchr/objx v0.1.0 h1:4G4v2dO3VZwixGIRoQ5Lfboy6nUhCyYzaqnIAPPhYs4= @@ -181,12 +176,10 @@ github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UV github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= -github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/texttheater/golang-levenshtein v1.0.1 h1:+cRNoVrfiwufQPhoMzB6N0Yf/Mqajr6t1lOv8GyGE2U= github.com/texttheater/golang-levenshtein v1.0.1/go.mod h1:PYAKrbF5sAiq9wd+H82hs7gNaen0CplQ9uvm6+enD/8= -github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 h1:X9dsIWPuuEJlPX//UmRKophhOKCGXc46RVIGuttks68= -github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7/go.mod h1:UxoP3EypF8JfGEjAII8jx1q8rQyDnX8qdTCs/UQBVIE= github.com/uber/jaeger-client-go v2.30.0+incompatible h1:D6wyKGCecFaSRUpo8lCVbaOOb6ThwMmTEbhRwtKR97o= github.com/uber/jaeger-client-go v2.30.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= github.com/uber/jaeger-lib v2.4.1+incompatible h1:td4jdvLcExb4cBISKIpHuGoVXh+dVKhn2Um6rjCsSsg= @@ -196,10 +189,10 @@ github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -github.com/zclconf/go-cty v1.13.2 h1:4GvrUxe/QUDYuJKAav4EYqdM47/kZa672LwmXFmEKT0= -github.com/zclconf/go-cty v1.13.2/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0= -go.uber.org/atomic v1.9.0 h1:ECmE8Bn/WFTYwEW/bpKD3M8VtR/zQVbavAoalC1PYyE= -go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +github.com/zclconf/go-cty v1.15.0 h1:tTCRWxsexYUmtt/wVxgDClUe+uQusuI443uL6e+5sXQ= +github.com/zclconf/go-cty v1.15.0/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= +go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE= +go.uber.org/atomic v1.11.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= @@ -207,18 +200,18 @@ golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5y golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= -golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA= -golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs= -golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa h1:FRnLl4eNAQl8hwxVVC17teOw8kdjVDVAiFMtgUdTSRQ= -golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa/go.mod h1:zk2irFbV9DP96SEBUUAy67IdHUaZuSnrz1n472HUCLE= +golang.org/x/crypto v0.28.0 h1:GBDwsMXVQi34v5CCYUm2jkJvu4cbtru2U4TN2PSyQnw= +golang.org/x/crypto v0.28.0/go.mod h1:rmgy+3RHxRZMyY0jjAJShp2zgEdOqj2AO7U0pYmeQ7U= +golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c h1:7dEasQXItcW1xKJ2+gg5VOiBnqWrJc+rq0DPKyvvdbY= +golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c/go.mod h1:NQtJDoLvd6faHhE7m4T/1IY708gDefGGjR/iUW8yQQ8= golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= 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.14.0 h1:dGoOF9QVLYng8IHTm7BAyWqCqSheQ5pYWGhzW00YJr0= -golang.org/x/mod v0.14.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.21.0 h1:vvrHzRwRfVKSiLrG+d4FMl/Qi4ukBCE6kZlTUkDYRT0= +golang.org/x/mod v0.21.0/go.mod h1:6SkKJ3Xj0I0BrPOZoBy3bdMptDDU9oJrpohJ3eWZ1fY= 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-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -230,19 +223,18 @@ golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= -golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs= -golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= +golang.org/x/net v0.30.0 h1:AcW1SDZMkb8IpzCdQUaIq2sP4sZ4zw+55h6ynffypl4= +golang.org/x/net v0.30.0/go.mod h1:2wGyMJ5iFasEhkwi13ChkO/t1ECNC4X4eBKkVFyYFlU= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/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.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE= -golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= 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-20190626221950-04f50cda93cb/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200909081042-eff7692f9009/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -251,23 +243,24 @@ golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/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-20210809222454-d867a43fc93e/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-20220615213510-4f61da869c0c/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.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.3.0/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.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4= -golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo= +golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= 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.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= -golang.org/x/term v0.18.0 h1:FcHjZXDMxI8mM3nwhX9HlKop4C0YQvCVCdwYl2wOtE8= -golang.org/x/term v0.18.0/go.mod h1:ILwASektA3OnRv7amZ1xhE/KTR+u50pbXfZ03+6Nx58= +golang.org/x/term v0.25.0 h1:WtHI/ltw4NvSUig5KARz9h521QvRC8RmF/cuYqifU24= +golang.org/x/term v0.25.0/go.mod h1:RPyXicDX+6vLxogjjRxjgD2TKtmAO6NZBsBRfrOLu7M= 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.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= @@ -275,8 +268,8 @@ golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= -golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= -golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM= +golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= @@ -285,20 +278,18 @@ golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roY golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= 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.15.0 h1:zdAyfUGbYmuVokhzVmghFl2ZJh5QhcfebBgmVPFYA+8= -golang.org/x/tools v0.15.0/go.mod h1:hpksKq4dtpQWS1uQ61JkdqWM3LscIS6Slf+VVkm+wQk= +golang.org/x/tools v0.26.0 h1:v/60pFQmzmT9ExmjDv2gGIfi3OqfKoEP6I5+umXlbnQ= +golang.org/x/tools v0.26.0/go.mod h1:TPVVj70c7JJ3WCazhD8OdXcZg/og+b9+tH/KxylGwH0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230706204954-ccb25ca9f130 h1:2FZP5XuJY9zQyGM5N0rtovnoXjiMUEIUMvw0m9wlpLc= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230706204954-ccb25ca9f130/go.mod h1:8mL13HKkDa+IuJ8yruA3ci0q+0vsUz4m//+ottjwS5o= -google.golang.org/grpc v1.57.1 h1:upNTNqv0ES+2ZOOqACwVtS3Il8M12/+Hz41RCPzAjQg= -google.golang.org/grpc v1.57.1/go.mod h1:Sd+9RMTACXwmub0zcNY2c4arhtrbBYD1AUHI/dt16Mo= -google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= -google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= -google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38 h1:zciRKQ4kBpFgpfC5QQCVtnnNAcLIqweL7plyZRQHVpI= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38/go.mod h1:GX3210XPVPUjJbTUbvwI8f2IpZDMZuPJWDzDuebbviI= +google.golang.org/grpc v1.67.1 h1:zWnc1Vrcno+lHZCOofnIMvycFcc0QRGIzm9dhnDX68E= +google.golang.org/grpc v1.67.1/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA= +google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA= +google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= 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= @@ -311,7 +302,7 @@ 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.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -lukechampine.com/frand v1.4.2 h1:RzFIpOvkMXuPMBb9maa4ND4wjBn71E1Jpf8BzJHMaVw= -lukechampine.com/frand v1.4.2/go.mod h1:4S/TM2ZgrKejMcKMbeLjISpJMO+/eZ1zu3vYX9dtj3s= +lukechampine.com/frand v1.5.1 h1:fg0eRtdmGFIxhP5zQJzM1lFDbD6CUfu/f+7WgAZd5/w= +lukechampine.com/frand v1.5.1/go.mod h1:4VstaWc2plN4Mjr10chUD46RAVGWhpkZ5Nja8+Azp0Q= pgregory.net/rapid v0.5.5 h1:jkgx1TjbQPD/feRoK+S/mXw9e1uj6WilpHrXJowi6oA= pgregory.net/rapid v0.5.5/go.mod h1:PY5XlDGj0+V1FCq0o192FdRhpKHGTRIWBgqjDBTrq04= diff --git a/genesiscloudshim/go.mod b/genesiscloudshim/go.mod index 7bcd85a..b053392 100644 --- a/genesiscloudshim/go.mod +++ b/genesiscloudshim/go.mod @@ -1,37 +1,36 @@ module github.com/genesiscloud/terraform-provider-genesiscloud/genesiscloudshim -go 1.21 +go 1.22.0 -toolchain go1.22.1 +toolchain go1.23.1 replace github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20230912190043-e6d96b3b8f7e require ( - github.com/genesiscloud/terraform-provider-genesiscloud v1.1.8 - github.com/hashicorp/terraform-plugin-framework v1.8.0 + github.com/genesiscloud/terraform-provider-genesiscloud v1.1.10-0.20241022212603-eae223e224b7 + github.com/hashicorp/terraform-plugin-framework v1.12.0 ) require ( github.com/agext/levenshtein v1.2.3 // indirect github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect - github.com/deepmap/oapi-codegen v1.16.2 // indirect - github.com/fatih/color v1.16.0 // indirect - github.com/genesiscloud/genesiscloud-go v1.0.8 // indirect + github.com/fatih/color v1.18.0 // indirect + github.com/genesiscloud/genesiscloud-go v1.0.10-0.20241022190226-71944b796e82 // indirect github.com/google/uuid v1.6.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect github.com/hashicorp/go-hclog v1.6.3 // indirect github.com/hashicorp/go-retryablehttp v0.7.7 // indirect github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 // indirect - github.com/hashicorp/terraform-plugin-framework-validators v0.12.0 // indirect - github.com/hashicorp/terraform-plugin-go v0.23.0 // indirect + github.com/hashicorp/terraform-plugin-framework-validators v0.14.0 // indirect + github.com/hashicorp/terraform-plugin-go v0.24.0 // indirect github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.20 // indirect github.com/mitchellh/go-testing-interface v1.14.1 // indirect github.com/mitchellh/go-wordwrap v1.0.1 // indirect - github.com/oapi-codegen/runtime v1.1.0 // indirect + github.com/oapi-codegen/oapi-codegen/v2 v2.4.1 // indirect + github.com/oapi-codegen/runtime v1.1.1 // indirect github.com/vmihailenco/msgpack/v5 v5.4.1 // indirect github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect - golang.org/x/sys v0.20.0 // indirect - golang.org/x/tools v0.15.0 // indirect + golang.org/x/sys v0.26.0 // indirect ) diff --git a/genesiscloudshim/go.sum b/genesiscloudshim/go.sum index 34db809..11167f5 100644 --- a/genesiscloudshim/go.sum +++ b/genesiscloudshim/go.sum @@ -13,15 +13,13 @@ github.com/cloudflare/circl v1.3.7/go.mod h1:sRTcRWXGLrKw6yIGJ+l7amYJFfAXbZG0kBS github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/deepmap/oapi-codegen v1.16.2 h1:xGHx0dNqYfy9gE8a7AVgVM8Sd5oF9SEgePzP+UPAUXI= -github.com/deepmap/oapi-codegen v1.16.2/go.mod h1:rdYoEA2GE+riuZ91DvpmBX9hJbQpuY9wchXpfQ3n+ho= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= -github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= -github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= -github.com/genesiscloud/genesiscloud-go v1.0.8 h1:HiRHHaST1UOgsIAko739LPICB9SkgafalJHVu26DdKk= -github.com/genesiscloud/genesiscloud-go v1.0.8/go.mod h1:OAMjSCejQTC4BBLWXleegT/fg+X46SZ6t/vW9RPtXWg= -github.com/genesiscloud/terraform-provider-genesiscloud v1.1.7 h1:zVzyoOL4PlJcW7FcXbxeNbOH73OlSYt6TMKHaJz5uiA= -github.com/genesiscloud/terraform-provider-genesiscloud v1.1.7/go.mod h1:uPhkr83UCreLAtBnh2frKeunrIFlDNpyY3JhrjI68Mk= +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/genesiscloud/genesiscloud-go v1.0.10-0.20241022190226-71944b796e82 h1:Z1NrACEKI5DihE0zAZ+oMmSfatEUzos6hzHOone1NJw= +github.com/genesiscloud/genesiscloud-go v1.0.10-0.20241022190226-71944b796e82/go.mod h1:t2m8sfDGOa8pFio3oitkkjW9YcajyxkiWEu+BHOLyes= +github.com/genesiscloud/terraform-provider-genesiscloud v1.1.10-0.20241022212603-eae223e224b7 h1:n5P4/OrxyjL2Mq+kxgjPM6OJVs9uDZuZRBbSoRB5tts= +github.com/genesiscloud/terraform-provider-genesiscloud v1.1.10-0.20241022212603-eae223e224b7/go.mod h1:4yAaUDKHcb8r0yiG8jDJmT2cMN4D9yd292IbKKIqJ2Y= 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 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= @@ -40,42 +38,42 @@ 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.0 h1:wgd4KxHJTVGGqWBq4QPB1i5BZNEx9BR8+OFmHDmTk8A= -github.com/hashicorp/go-plugin v1.6.0/go.mod h1:lBS5MtSSBZk0SHc66KACcjjlU6WzEVP/8pwz68aMkCI= +github.com/hashicorp/go-plugin v1.6.2 h1:zdGAEd0V1lCaU0u+MxWQhtSDQmahpkwOun8U8EiRVog= +github.com/hashicorp/go-plugin v1.6.2/go.mod h1:CkgLQ5CZqNmdL9U9JzM532t8ZiYQ35+pj3b1FD37R0Q= 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.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek= -github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= -github.com/hashicorp/hc-install v0.6.4 h1:QLqlM56/+SIIGvGcfFiwMY3z5WGXT066suo/v9Km8e0= -github.com/hashicorp/hc-install v0.6.4/go.mod h1:05LWLy8TD842OtgcfBbOT0WMoInBMUSHjmDx10zuBIA= -github.com/hashicorp/hcl/v2 v2.20.1 h1:M6hgdyz7HYt1UN9e61j+qKJBqR3orTWbI1HKBJEdxtc= -github.com/hashicorp/hcl/v2 v2.20.1/go.mod h1:TZDqQ4kNKCbh1iJp99FdPiUaVDDUPivbqxZulxDYqL4= +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.8.0 h1:LdpZeXkZYMQhoKPCecJHlKvUkQFixN/nvyR1CdfOLjI= +github.com/hashicorp/hc-install v0.8.0/go.mod h1:+MwJYjDfCruSD/udvBmRB22Nlkwwkwf5sAB6uTIhSaU= +github.com/hashicorp/hcl/v2 v2.21.0 h1:lve4q/o/2rqwYOgUg3y3V2YPyD1/zkCLGjIV74Jit14= +github.com/hashicorp/hcl/v2 v2.21.0/go.mod h1:62ZYHrXgPoX8xBnzl8QzbWq4dyDsDtfCRgIq1rbJEvA= 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.21.0 h1:uNkLAe95ey5Uux6KJdua6+cv8asgILFVWkd/RG0D2XQ= github.com/hashicorp/terraform-exec v0.21.0/go.mod h1:1PPeMYou+KDUSSeRE9szMZ/oHf4fYUmB923Wzbq1ICg= github.com/hashicorp/terraform-json v0.22.1 h1:xft84GZR0QzjPVWs4lRUwvTcPnegqlyS7orfb5Ltvec= github.com/hashicorp/terraform-json v0.22.1/go.mod h1:JbWSQCLFSXFFhg42T7l9iJwdGXBYV8fmmD6o/ML4p3A= -github.com/hashicorp/terraform-plugin-framework v1.8.0 h1:P07qy8RKLcoBkCrY2RHJer5AEvJnDuXomBgou6fD8kI= -github.com/hashicorp/terraform-plugin-framework v1.8.0/go.mod h1:/CpTukO88PcL/62noU7cuyaSJ4Rsim+A/pa+3rUVufY= +github.com/hashicorp/terraform-plugin-framework v1.12.0 h1:7HKaueHPaikX5/7cbC1r9d1m12iYHY+FlNZEGxQ42CQ= +github.com/hashicorp/terraform-plugin-framework v1.12.0/go.mod h1:N/IOQ2uYjW60Jp39Cp3mw7I/OpC/GfZ0385R0YibmkE= github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 h1:gm5b1kHgFFhaKFhm4h2TgvMUlNzFAtUqlcOWnWPm+9E= github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1/go.mod h1:MsjL1sQ9L7wGwzJ5RjcI6FzEMdyoBnw+XK8ZnOvQOLY= -github.com/hashicorp/terraform-plugin-framework-validators v0.12.0 h1:HOjBuMbOEzl7snOdOoUfE2Jgeto6JOjLVQ39Ls2nksc= -github.com/hashicorp/terraform-plugin-framework-validators v0.12.0/go.mod h1:jfHGE/gzjxYz6XoUwi/aYiiKrJDeutQNUtGQXkaHklg= -github.com/hashicorp/terraform-plugin-go v0.23.0 h1:AALVuU1gD1kPb48aPQUjug9Ir/125t+AAurhqphJ2Co= -github.com/hashicorp/terraform-plugin-go v0.23.0/go.mod h1:1E3Cr9h2vMlahWMbsSEcNrOCxovCZhOOIXjFHbjc/lQ= +github.com/hashicorp/terraform-plugin-framework-validators v0.14.0 h1:3PCn9iyzdVOgHYOBmncpSSOxjQhCTYmc+PGvbdlqSaI= +github.com/hashicorp/terraform-plugin-framework-validators v0.14.0/go.mod h1:LwDKNdzxrDY/mHBrlC6aYfE2fQ3Dk3gaJD64vNiXvo4= +github.com/hashicorp/terraform-plugin-go v0.24.0 h1:2WpHhginCdVhFIrWHxDEg6RBn3YaWzR2o6qUeIEat2U= +github.com/hashicorp/terraform-plugin-go v0.24.0/go.mod h1:tUQ53lAsOyYSckFGEefGC5C8BAaO0ENqzFd3bQeuYQg= 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-testing v1.8.0 h1:wdYIgwDk4iO933gC4S8KbKdnMQShu6BXuZQPScmHvpk= -github.com/hashicorp/terraform-plugin-testing v1.8.0/go.mod h1:o2kOgf18ADUaZGhtOl0YCkfIxg01MAiMATT2EtIHlZk= +github.com/hashicorp/terraform-plugin-testing v1.10.0 h1:2+tmRNhvnfE4Bs8rB6v58S/VpqzGC6RCh9Y8ujdn+aw= +github.com/hashicorp/terraform-plugin-testing v1.10.0/go.mod h1:iWRW3+loP33WMch2P/TEyCxxct/ZEcCGMquSLSCVsrc= github.com/hashicorp/terraform-registry-address v0.2.3 h1:2TAiKJ1A3MAkZlH1YI/aTVcLZRu7JseiXNRHbOAyoTI= github.com/hashicorp/terraform-registry-address v0.2.3/go.mod h1:lFHA76T8jfQteVfT7caREqguFrW3c4MFSPhZB7HHgUM= 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.1 h1:yrQxtgseBDrq9Y652vSRDvsKCJKOUD+GzTS4Y0Y8pvE= -github.com/hashicorp/yamux v0.1.1/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ= +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/juju/gnuflag v0.0.0-20171113085948-2ce1bb71843d/go.mod h1:2PavIy+JPciBPrBUjwbNvtwB6RQlve+hkpll6QSNmOE= 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= @@ -96,8 +94,10 @@ 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/oapi-codegen/runtime v1.1.0 h1:rJpoNUawn5XTvekgfkvSZr0RqEnoYpFkyvrzfWeFKWM= -github.com/oapi-codegen/runtime v1.1.0/go.mod h1:BeSfBkWWWnAnGdyS+S/GnlbmHKzf8/hwkvelJZDeKA8= +github.com/oapi-codegen/oapi-codegen/v2 v2.4.1 h1:ykgG34472DWey7TSjd8vIfNykXgjOgYJZoQbKfEeY/Q= +github.com/oapi-codegen/oapi-codegen/v2 v2.4.1/go.mod h1:N5+lY1tiTDV3V1BeHtOxeWXHoPVeApvsvjJqegfoaz8= +github.com/oapi-codegen/runtime v1.1.1 h1:EXLHh0DXIJnWhdRPN2w4MXAzFyE4CskzhNLUmtpMYro= +github.com/oapi-codegen/runtime v1.1.1/go.mod h1:SK9X900oXmPWilYR5/WKPzt3Kqxn/uS/+lbpREv+eCg= 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/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= @@ -108,22 +108,24 @@ github.com/spkg/bom v0.0.0-20160624110644-59b7046e48ad/go.mod h1:qLr4V1qq6nMqFKk github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals= -github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= -github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= 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/zclconf/go-cty v1.14.4 h1:uXXczd9QDGsgu0i/QFR/hzI5NYCHLf6NQw/atrbnhq8= -github.com/zclconf/go-cty v1.14.4/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= -golang.org/x/crypto v0.23.0 h1:dIJU/v2J8Mdglj/8rJ6UUOM3Zc9zLZxVZwwxMooUSAI= -golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8= -golang.org/x/mod v0.16.0 h1:QX4fJ0Rr5cPQCF7O9lh9Se4pmwfwskqZfq5moyldzic= -golang.org/x/mod v0.16.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= -golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs= -golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= +github.com/zclconf/go-cty v1.15.0 h1:tTCRWxsexYUmtt/wVxgDClUe+uQusuI443uL6e+5sXQ= +github.com/zclconf/go-cty v1.15.0/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= +golang.org/x/crypto v0.28.0 h1:GBDwsMXVQi34v5CCYUm2jkJvu4cbtru2U4TN2PSyQnw= +golang.org/x/crypto v0.28.0/go.mod h1:rmgy+3RHxRZMyY0jjAJShp2zgEdOqj2AO7U0pYmeQ7U= +golang.org/x/mod v0.19.0 h1:fEdghXQSo20giMthA7cd28ZC+jts4amQ3YMXiP5oMQ8= +golang.org/x/mod v0.19.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/net v0.30.0 h1:AcW1SDZMkb8IpzCdQUaIq2sP4sZ4zw+55h6ynffypl4= +golang.org/x/net v0.30.0/go.mod h1:2wGyMJ5iFasEhkwi13ChkO/t1ECNC4X4eBKkVFyYFlU= +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= 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-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -131,20 +133,20 @@ golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220503163025-988cb79eb6c6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y= -golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/text v0.15.0 h1:h1V/4gjBv8v9cjcR6+AR5+/cIYK5N/WAgiv4xlsEtAk= -golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -golang.org/x/tools v0.15.0 h1:zdAyfUGbYmuVokhzVmghFl2ZJh5QhcfebBgmVPFYA+8= -golang.org/x/tools v0.15.0/go.mod h1:hpksKq4dtpQWS1uQ61JkdqWM3LscIS6Slf+VVkm+wQk= +golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo= +golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM= +golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= +golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d h1:vU5i/LfpvrRCpgM/VPfJLg5KjxD3E+hfT1SH+d9zLwg= +golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= 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-20240227224415-6ceb2ff114de h1:cZGRis4/ot9uVm639a+rHCUaG0JJHEsdyzSQTMX+suY= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240227224415-6ceb2ff114de/go.mod h1:H4O17MA/PE9BsGx3w+a+W2VOLLD1Qf7oJneAoU6WktY= -google.golang.org/grpc v1.63.2 h1:MUeiw1B2maTVZthpU5xvASfTh3LDbxHd6IJ6QQVU+xM= -google.golang.org/grpc v1.63.2/go.mod h1:WAX/8DgncnokcFUldAxq7GeB5DXHDbMF+lLvDomNkRA= -google.golang.org/protobuf v1.34.0 h1:Qo/qEd2RZPCf2nKuorzksSknv0d3ERwp1vFG38gSmH4= -google.golang.org/protobuf v1.34.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38 h1:zciRKQ4kBpFgpfC5QQCVtnnNAcLIqweL7plyZRQHVpI= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38/go.mod h1:GX3210XPVPUjJbTUbvwI8f2IpZDMZuPJWDzDuebbviI= +google.golang.org/grpc v1.67.1 h1:zWnc1Vrcno+lHZCOofnIMvycFcc0QRGIzm9dhnDX68E= +google.golang.org/grpc v1.67.1/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA= +google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA= +google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/provider/cmd/pulumi-resource-genesiscloud/bridge-metadata.json b/provider/cmd/pulumi-resource-genesiscloud/bridge-metadata.json index f7308c7..33b9a00 100644 --- a/provider/cmd/pulumi-resource-genesiscloud/bridge-metadata.json +++ b/provider/cmd/pulumi-resource-genesiscloud/bridge-metadata.json @@ -26,6 +26,9 @@ } } }, + "genesiscloud_instance_status": { + "current": "genesiscloud:index/instanceStatus:InstanceStatus" + }, "genesiscloud_security_group": { "current": "genesiscloud:index/securityGroup:SecurityGroup", "fields": { diff --git a/provider/cmd/pulumi-resource-genesiscloud/generate.go b/provider/cmd/pulumi-resource-genesiscloud/generate.go index 2b66279..291aa3d 100644 --- a/provider/cmd/pulumi-resource-genesiscloud/generate.go +++ b/provider/cmd/pulumi-resource-genesiscloud/generate.go @@ -20,7 +20,6 @@ import ( "encoding/json" "errors" "io/fs" - "io/ioutil" "log" "os" @@ -33,7 +32,7 @@ func main() { log.Fatal("version not found") } - schemaContents, err := ioutil.ReadFile("./schema.json") + schemaContents, err := os.ReadFile("./schema.json") if err != nil { log.Fatal(err) } @@ -56,7 +55,7 @@ func main() { log.Fatal(err) } - err = ioutil.WriteFile("./schema.json", versionedContents, 0600) + err = os.WriteFile("./schema.json", versionedContents, 0600) if err != nil { log.Fatal(err) } diff --git a/provider/cmd/pulumi-resource-genesiscloud/schema.json b/provider/cmd/pulumi-resource-genesiscloud/schema.json index fef604e..42ac117 100644 --- a/provider/cmd/pulumi-resource-genesiscloud/schema.json +++ b/provider/cmd/pulumi-resource-genesiscloud/schema.json @@ -1 +1 @@ -{"name":"genesiscloud","displayName":"Genesis Cloud","version":"v0.0.26","description":"A Pulumi package for creating and managing genesiscloud cloud resources.","keywords":["pulumi","genesiscloud","category/cloud"],"homepage":"https://www.pulumi.io","license":"Apache-2.0","attribution":"This Pulumi package is based on the [`genesiscloud` Terraform Provider](https://github.com/genesiscloud/terraform-provider-genesiscloud).","repository":"https://github.com/genesiscloud/pulumi-genesiscloud","logoUrl":"https://avatars.githubusercontent.com/u/38134186?s=200\u0026v=4","pluginDownloadURL":"github://api.github.com/genesiscloud","meta":{"moduleFormat":"(.*)(?:/[^/]*)"},"language":{"csharp":{"packageReferences":{"Pulumi":"3.*"},"compatibility":"tfbridge20","rootNamespace":"GenesisCloud.PulumiPackage"},"go":{"importBasePath":"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud","generateResourceContainerTypes":true,"generateExtraInputTypes":true},"nodejs":{"packageName":"@genesiscloud/pulumi-genesiscloud","packageDescription":"A Pulumi package for creating and managing genesiscloud cloud resources.","readme":"\u003e This provider is a derived work of the [Terraform Provider](https://github.com/genesiscloud/terraform-provider-genesiscloud)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-genesiscloud` repo](https://github.com/genesiscloud/pulumi-genesiscloud/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-genesiscloud` repo](https://github.com/genesiscloud/terraform-provider-genesiscloud/issues).","dependencies":{"@pulumi/pulumi":"^3.0.0"},"devDependencies":{"@types/node":"^10.0.0"},"compatibility":"tfbridge20","disableUnionOutputTypes":true},"python":{"requires":{"pulumi":"\u003e=3.0.0,\u003c4.0.0"},"readme":"\u003e This provider is a derived work of the [Terraform Provider](https://github.com/genesiscloud/terraform-provider-genesiscloud)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-genesiscloud` repo](https://github.com/genesiscloud/pulumi-genesiscloud/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-genesiscloud` repo](https://github.com/genesiscloud/terraform-provider-genesiscloud/issues).","compatibility":"tfbridge20","pyproject":{}}},"config":{"variables":{"endpoint":{"type":"string","description":"Genesis Cloud API endpoint. May also be provided via `GENESISCLOUD_ENDPOINT` environment variable. If neither is\nprovided, defaults to `https://api.genesiscloud.com/compute/v1`.\n","defaultInfo":{"environment":["GENESISCLOUD_ENDPOINT"]}},"pollingInterval":{"type":"string","description":"The polling interval. - The string must be a positive [time duration](https://pkg.go.dev/time#ParseDuration), for\nexample \"10s\".\n"},"token":{"type":"string","description":"Genesis Cloud API token. May also be provided via `GENESISCLOUD_TOKEN` environment variable.\n","defaultInfo":{"environment":["GENESISCLOUD_TOKEN"]},"secret":true}}},"types":{"genesiscloud:index/FilesystemTimeouts:FilesystemTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/FloatingIpTimeouts:FloatingIpTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/ImagesFilter:ImagesFilter":{"properties":{"region":{"type":"string","description":"Filter by the region identifier.\n - The value must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"type":{"type":"string","description":"Filter by the kind of image.\n - The value must be one of: [\"base-os\" \"cloud-image\" \"preconfigured\" \"snapshot\"].\n"}},"type":"object","required":["type"]},"genesiscloud:index/ImagesImage:ImagesImage":{"properties":{"createdAt":{"type":"string","description":"The timestamp when this image was created in RFC 3339.\n"},"id":{"type":"string","description":"A unique number that can be used to identify and reference a specific image.\n"},"name":{"type":"string","description":"The display name that has been given to an image.\n"},"regions":{"type":"array","items":{"type":"string"},"description":"The list of regions in which this image can be used in.\n"},"slug":{"type":"string","description":"The image slug.\n"},"type":{"type":"string","description":"Describes the kind of image.\n"},"versions":{"type":"array","items":{"type":"string"},"description":"The list of versions if this is a cloud-image otherwise empty.\n"}},"type":"object","required":["createdAt","id","name","regions","slug","type","versions"],"language":{"nodejs":{"requiredInputs":[]}}},"genesiscloud:index/ImagesTimeouts:ImagesTimeouts":{"properties":{"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/InstanceMetadata:InstanceMetadata":{"properties":{"startupScript":{"type":"string"}},"type":"object"},"genesiscloud:index/InstanceTimeouts:InstanceTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/SSHKeyTimeouts:SSHKeyTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/SecurityGroupRule:SecurityGroupRule":{"properties":{"direction":{"type":"string","description":"The direction of the rule.\n - The value must be one of: [\"egress\" \"ingress\"].\n"},"portRangeMax":{"type":"integer","description":"The maximum port number of the rule.\n - The value must be between 1 and 65535.\n"},"portRangeMin":{"type":"integer","description":"The minimum port number of the rule.\n - The value must be between 1 and 65535.\n"},"protocol":{"type":"string","description":"The protocol of the rule.\n - The value must be one of: [\"all\" \"icmp\" \"tcp\" \"udp\"].\n"}},"type":"object","required":["direction","protocol"]},"genesiscloud:index/SecurityGroupTimeouts:SecurityGroupTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/SnapshotTimeouts:SnapshotTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/VolumeTimeouts:VolumeTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"}},"provider":{"description":"The provider type for the genesiscloud package. By default, resources use package-wide configuration\nsettings, however an explicit `Provider` instance may be created and passed during resource\nconstruction to achieve fine-grained programmatic control over provider settings. See the\n[documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.\n","properties":{"endpoint":{"type":"string","description":"Genesis Cloud API endpoint. May also be provided via `GENESISCLOUD_ENDPOINT` environment variable. If neither is\nprovided, defaults to `https://api.genesiscloud.com/compute/v1`.\n"},"pollingInterval":{"type":"string","description":"The polling interval. - The string must be a positive [time duration](https://pkg.go.dev/time#ParseDuration), for\nexample \"10s\".\n"},"token":{"type":"string","description":"Genesis Cloud API token. May also be provided via `GENESISCLOUD_TOKEN` environment variable.\n","secret":true}},"inputProperties":{"endpoint":{"type":"string","description":"Genesis Cloud API endpoint. May also be provided via `GENESISCLOUD_ENDPOINT` environment variable. If neither is\nprovided, defaults to `https://api.genesiscloud.com/compute/v1`.\n","defaultInfo":{"environment":["GENESISCLOUD_ENDPOINT"]}},"pollingInterval":{"type":"string","description":"The polling interval. - The string must be a positive [time duration](https://pkg.go.dev/time#ParseDuration), for\nexample \"10s\".\n"},"token":{"type":"string","description":"Genesis Cloud API token. May also be provided via `GENESISCLOUD_TOKEN` environment variable.\n","defaultInfo":{"environment":["GENESISCLOUD_TOKEN"]},"secret":true}}},"resources":{"genesiscloud:index/filesystem:Filesystem":{"description":"Filesystem resource\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@genesiscloud/pulumi-genesiscloud\";\n\nconst example = new genesiscloud.Filesystem(\"example\", {\n description: \"Example filesystem\",\n region: \"NORD-NO-KRS-1\",\n size: 50,\n type: \"vast\",\n});\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\nexample = genesiscloud.Filesystem(\"example\",\n description=\"Example filesystem\",\n region=\"NORD-NO-KRS-1\",\n size=50,\n type=\"vast\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Genesiscloud.Filesystem(\"example\", new()\n {\n Description = \"Example filesystem\",\n Region = \"NORD-NO-KRS-1\",\n Size = 50,\n Type = \"vast\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := genesiscloud.NewFilesystem(ctx, \"example\", \u0026genesiscloud.FilesystemArgs{\n\t\t\tDescription: pulumi.String(\"Example filesystem\"),\n\t\t\tRegion: pulumi.String(\"NORD-NO-KRS-1\"),\n\t\t\tSize: pulumi.Int(50),\n\t\t\tType: pulumi.String(\"vast\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.Filesystem;\nimport com.pulumi.genesiscloud.FilesystemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Filesystem(\"example\", FilesystemArgs.builder() \n .description(\"Example filesystem\")\n .region(\"NORD-NO-KRS-1\")\n .size(50)\n .type(\"vast\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: genesiscloud:Filesystem\n properties:\n description: Example filesystem\n region: NORD-NO-KRS-1\n size: 50\n type: vast\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import genesiscloud:index/filesystem:Filesystem example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n ","properties":{"createdAt":{"type":"string","description":"The timestamp when this filesystem was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description for the filesystem. - Sets the default value \"\" if the attribute is not set.\n"},"mountBasePath":{"type":"string","description":"The base path on the server under which the mount point can be accessed.\n"},"mountEndpointRanges":{"type":"array","items":{"type":"string"},"description":"The start and end IP of the mount endpoint range. Expressed as a array with two entries.\n"},"name":{"type":"string","description":"The human-readable name for the filesystem.\n"},"region":{"type":"string","description":"The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will\ndestroy and recreate the resource. - The value must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the filesystem when the resource is deleted - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this filesystem given in GiB. - The value must be at least 1.\n"},"status":{"type":"string","description":"The filesystem status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/FilesystemTimeouts:FilesystemTimeouts"},"type":{"type":"string","description":"The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource. - The value must be one of: [\"vast\"].\n"}},"required":["createdAt","description","mountBasePath","mountEndpointRanges","name","region","retainOnDelete","size","status","type"],"inputProperties":{"description":{"type":"string","description":"The human-readable description for the filesystem. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the filesystem.\n"},"region":{"type":"string","description":"The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will\ndestroy and recreate the resource. - The value must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the filesystem when the resource is deleted - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this filesystem given in GiB. - The value must be at least 1.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/FilesystemTimeouts:FilesystemTimeouts"},"type":{"type":"string","description":"The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource. - The value must be one of: [\"vast\"].\n"}},"requiredInputs":["region","size","type"],"stateInputs":{"description":"Input properties used for looking up and filtering Filesystem resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this filesystem was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description for the filesystem. - Sets the default value \"\" if the attribute is not set.\n"},"mountBasePath":{"type":"string","description":"The base path on the server under which the mount point can be accessed.\n"},"mountEndpointRanges":{"type":"array","items":{"type":"string"},"description":"The start and end IP of the mount endpoint range. Expressed as a array with two entries.\n"},"name":{"type":"string","description":"The human-readable name for the filesystem.\n"},"region":{"type":"string","description":"The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will\ndestroy and recreate the resource. - The value must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the filesystem when the resource is deleted - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this filesystem given in GiB. - The value must be at least 1.\n"},"status":{"type":"string","description":"The filesystem status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/FilesystemTimeouts:FilesystemTimeouts"},"type":{"type":"string","description":"The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource. - The value must be one of: [\"vast\"].\n"}},"type":"object"}},"genesiscloud:index/floatingIp:FloatingIp":{"description":"floating IP resource\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@genesiscloud/pulumi-genesiscloud\";\n\nconst floatingIp = new genesiscloud.FloatingIp(\"floatingIp\", {\n description: \"The description for you terraform floating IP.\",\n region: \"ARC-IS-HAF-1\",\n version: \"ipv4\",\n});\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\nfloating_ip = genesiscloud.FloatingIp(\"floatingIp\",\n description=\"The description for you terraform floating IP.\",\n region=\"ARC-IS-HAF-1\",\n version=\"ipv4\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var floatingIp = new Genesiscloud.FloatingIp(\"floatingIp\", new()\n {\n Description = \"The description for you terraform floating IP.\",\n Region = \"ARC-IS-HAF-1\",\n Version = \"ipv4\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := genesiscloud.NewFloatingIp(ctx, \"floatingIp\", \u0026genesiscloud.FloatingIpArgs{\n\t\t\tDescription: pulumi.String(\"The description for you terraform floating IP.\"),\n\t\t\tRegion: pulumi.String(\"ARC-IS-HAF-1\"),\n\t\t\tVersion: pulumi.String(\"ipv4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.FloatingIp;\nimport com.pulumi.genesiscloud.FloatingIpArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var floatingIp = new FloatingIp(\"floatingIp\", FloatingIpArgs.builder() \n .description(\"The description for you terraform floating IP.\")\n .region(\"ARC-IS-HAF-1\")\n .version(\"ipv4\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n floatingIp:\n type: genesiscloud:FloatingIp\n properties:\n description: The description for you terraform floating IP.\n region: ARC-IS-HAF-1\n version: ipv4\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import genesiscloud:index/floatingIp:FloatingIp example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n ","properties":{"createdAt":{"type":"string","description":"The timestamp when this floating IP was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description set for the floating IP. - Sets the default value \"\" if the attribute is not set.\n"},"ipAddress":{"type":"string","description":"The IP address of the floating IP.\n"},"isPublic":{"type":"boolean","description":"Whether the floating IP is public or private. - Sets the default value \"true\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the floating IP.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The\nvalue must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"status":{"type":"string","description":"The floating IP status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/FloatingIpTimeouts:FloatingIpTimeouts"},"updatedAt":{"type":"string","description":"The timestamp when this image was last updated in RFC 3339.\n"},"version":{"type":"string","description":"The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource. - The value must be one of: [\"ipv4\"].\n"}},"required":["createdAt","description","ipAddress","isPublic","name","region","status","updatedAt","version"],"inputProperties":{"description":{"type":"string","description":"The human-readable description set for the floating IP. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the floating IP.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The\nvalue must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/FloatingIpTimeouts:FloatingIpTimeouts"},"version":{"type":"string","description":"The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource. - The value must be one of: [\"ipv4\"].\n"}},"requiredInputs":["region","version"],"stateInputs":{"description":"Input properties used for looking up and filtering FloatingIp resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this floating IP was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description set for the floating IP. - Sets the default value \"\" if the attribute is not set.\n"},"ipAddress":{"type":"string","description":"The IP address of the floating IP.\n"},"isPublic":{"type":"boolean","description":"Whether the floating IP is public or private. - Sets the default value \"true\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the floating IP.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The\nvalue must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"status":{"type":"string","description":"The floating IP status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/FloatingIpTimeouts:FloatingIpTimeouts"},"updatedAt":{"type":"string","description":"The timestamp when this image was last updated in RFC 3339.\n"},"version":{"type":"string","description":"The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource. - The value must be one of: [\"ipv4\"].\n"}},"type":"object"}},"genesiscloud:index/instance:Instance":{"description":"Instance resource\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@genesiscloud/pulumi-genesiscloud\";\n\nconst example = new genesiscloud.Instance(\"example\", {\n image: \"my-image-id\",\n region: \"ARC-IS-HAF-1\",\n sshKeyIds: [\"my-ssh-key-id\"],\n type: \"vcpu-2_memory-4g\",\n});\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\nexample = genesiscloud.Instance(\"example\",\n image=\"my-image-id\",\n region=\"ARC-IS-HAF-1\",\n ssh_key_ids=[\"my-ssh-key-id\"],\n type=\"vcpu-2_memory-4g\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Genesiscloud.Instance(\"example\", new()\n {\n Image = \"my-image-id\",\n Region = \"ARC-IS-HAF-1\",\n SshKeyIds = new[]\n {\n \"my-ssh-key-id\",\n },\n Type = \"vcpu-2_memory-4g\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := genesiscloud.NewInstance(ctx, \"example\", \u0026genesiscloud.InstanceArgs{\n\t\t\tImage: pulumi.String(\"my-image-id\"),\n\t\t\tRegion: pulumi.String(\"ARC-IS-HAF-1\"),\n\t\t\tSshKeyIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"my-ssh-key-id\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"vcpu-2_memory-4g\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.Instance;\nimport com.pulumi.genesiscloud.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Instance(\"example\", InstanceArgs.builder() \n .image(\"my-image-id\")\n .region(\"ARC-IS-HAF-1\")\n .sshKeyIds(\"my-ssh-key-id\")\n .type(\"vcpu-2_memory-4g\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: genesiscloud:Instance\n properties:\n image: my-image-id\n region: ARC-IS-HAF-1\n sshKeyIds:\n - my-ssh-key-id\n type: vcpu-2_memory-4g\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import genesiscloud:index/instance:Instance example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n ","properties":{"createdAt":{"type":"string","description":"The timestamp when this image was created in RFC 3339.\n"},"diskSize":{"type":"integer","description":"The disk size of the instance in GB.\n"},"dnsName":{"type":"string","description":"The dns name of the instance.\n"},"floatingIpId":{"type":"string","description":"The floating IP attached to the instance.\n"},"hostname":{"type":"string","description":"The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this\nattribute is configured and changes, Terraform will destroy and recreate the resource.\n"},"image":{"type":"string","description":"The source image id, image slug or snapshot id of the instance. The image version can also specified together with the\nimage slug in this format `\u003cimage-slug\u003e:\u003cversion\u003e`. Learn more about images\n[here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and\nrecreate the resource.\n"},"imageId":{"type":"string","description":"The resulting image ID of the instance.\n"},"metadata":{"$ref":"#/types/genesiscloud:index/InstanceMetadata:InstanceMetadata","description":"Option to provide metadata. Currently supported is `startup_script`.\n"},"name":{"type":"string","description":"The human-readable name for the instance.\n"},"password":{"type":"string","description":"The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72.\n**Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an\nSSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string\nlength must be at least 16.\n","secret":true},"placementOption":{"type":"string","description":"The placement option identifier in which instances are physically located relative to each other within a zone. For\nexample A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource.\n"},"privateIp":{"type":"string","description":"The private IPv4 IP-Address (IPv4 address).\n"},"publicIp":{"type":"string","description":"The public IPv4 IP-Address (IPv4 address).\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The\nvalue must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"reservationId":{"type":"string","description":"The id of the reservation the instance is associated with.\n"},"securityGroupIds":{"type":"array","items":{"type":"string"},"description":"The security groups of the instance. If not provided will be set to the default security group.\n"},"sshKeyIds":{"type":"array","items":{"type":"string"},"description":"The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource.\n"},"status":{"type":"string","description":"The instance status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/InstanceTimeouts:InstanceTimeouts"},"type":{"type":"string","description":"The instance type identifier. Learn more about instance types\n[here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes,\nTerraform will destroy and recreate the resource.\n"},"updatedAt":{"type":"string","description":"The timestamp when this image was last updated in RFC 3339.\n"},"volumeIds":{"type":"array","items":{"type":"string"},"description":"The volumes of the instance.\n"}},"required":["createdAt","diskSize","dnsName","hostname","image","imageId","name","placementOption","privateIp","publicIp","region","securityGroupIds","status","type","updatedAt","volumeIds"],"inputProperties":{"diskSize":{"type":"integer","description":"The disk size of the instance in GB.\n"},"floatingIpId":{"type":"string","description":"The floating IP attached to the instance.\n"},"hostname":{"type":"string","description":"The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this\nattribute is configured and changes, Terraform will destroy and recreate the resource.\n"},"image":{"type":"string","description":"The source image id, image slug or snapshot id of the instance. The image version can also specified together with the\nimage slug in this format `\u003cimage-slug\u003e:\u003cversion\u003e`. Learn more about images\n[here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and\nrecreate the resource.\n"},"metadata":{"$ref":"#/types/genesiscloud:index/InstanceMetadata:InstanceMetadata","description":"Option to provide metadata. Currently supported is `startup_script`.\n"},"name":{"type":"string","description":"The human-readable name for the instance.\n"},"password":{"type":"string","description":"The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72.\n**Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an\nSSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string\nlength must be at least 16.\n","secret":true},"placementOption":{"type":"string","description":"The placement option identifier in which instances are physically located relative to each other within a zone. For\nexample A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The\nvalue must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"reservationId":{"type":"string","description":"The id of the reservation the instance is associated with.\n"},"securityGroupIds":{"type":"array","items":{"type":"string"},"description":"The security groups of the instance. If not provided will be set to the default security group.\n"},"sshKeyIds":{"type":"array","items":{"type":"string"},"description":"The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/InstanceTimeouts:InstanceTimeouts"},"type":{"type":"string","description":"The instance type identifier. Learn more about instance types\n[here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes,\nTerraform will destroy and recreate the resource.\n"},"volumeIds":{"type":"array","items":{"type":"string"},"description":"The volumes of the instance.\n"}},"requiredInputs":["image","region","type"],"stateInputs":{"description":"Input properties used for looking up and filtering Instance resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this image was created in RFC 3339.\n"},"diskSize":{"type":"integer","description":"The disk size of the instance in GB.\n"},"dnsName":{"type":"string","description":"The dns name of the instance.\n"},"floatingIpId":{"type":"string","description":"The floating IP attached to the instance.\n"},"hostname":{"type":"string","description":"The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this\nattribute is configured and changes, Terraform will destroy and recreate the resource.\n"},"image":{"type":"string","description":"The source image id, image slug or snapshot id of the instance. The image version can also specified together with the\nimage slug in this format `\u003cimage-slug\u003e:\u003cversion\u003e`. Learn more about images\n[here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and\nrecreate the resource.\n"},"imageId":{"type":"string","description":"The resulting image ID of the instance.\n"},"metadata":{"$ref":"#/types/genesiscloud:index/InstanceMetadata:InstanceMetadata","description":"Option to provide metadata. Currently supported is `startup_script`.\n"},"name":{"type":"string","description":"The human-readable name for the instance.\n"},"password":{"type":"string","description":"The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72.\n**Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an\nSSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string\nlength must be at least 16.\n","secret":true},"placementOption":{"type":"string","description":"The placement option identifier in which instances are physically located relative to each other within a zone. For\nexample A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource.\n"},"privateIp":{"type":"string","description":"The private IPv4 IP-Address (IPv4 address).\n"},"publicIp":{"type":"string","description":"The public IPv4 IP-Address (IPv4 address).\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The\nvalue must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"reservationId":{"type":"string","description":"The id of the reservation the instance is associated with.\n"},"securityGroupIds":{"type":"array","items":{"type":"string"},"description":"The security groups of the instance. If not provided will be set to the default security group.\n"},"sshKeyIds":{"type":"array","items":{"type":"string"},"description":"The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource.\n"},"status":{"type":"string","description":"The instance status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/InstanceTimeouts:InstanceTimeouts"},"type":{"type":"string","description":"The instance type identifier. Learn more about instance types\n[here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes,\nTerraform will destroy and recreate the resource.\n"},"updatedAt":{"type":"string","description":"The timestamp when this image was last updated in RFC 3339.\n"},"volumeIds":{"type":"array","items":{"type":"string"},"description":"The volumes of the instance.\n"}},"type":"object"}},"genesiscloud:index/sSHKey:SSHKey":{"description":"SSH key resource\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@genesiscloud/pulumi-genesiscloud\";\n\nconst example = new genesiscloud.SSHKey(\"example\", {publicKey: \"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBOpdKM8wSI07+PO4xLDL7zW/kNWGbdFXeHyBU1TRlBn alice@example.com\"});\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\nexample = genesiscloud.SSHKey(\"example\", public_key=\"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBOpdKM8wSI07+PO4xLDL7zW/kNWGbdFXeHyBU1TRlBn alice@example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Genesiscloud.SSHKey(\"example\", new()\n {\n PublicKey = \"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBOpdKM8wSI07+PO4xLDL7zW/kNWGbdFXeHyBU1TRlBn alice@example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := genesiscloud.NewSSHKey(ctx, \"example\", \u0026genesiscloud.SSHKeyArgs{\n\t\t\tPublicKey: pulumi.String(\"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBOpdKM8wSI07+PO4xLDL7zW/kNWGbdFXeHyBU1TRlBn alice@example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.SSHKey;\nimport com.pulumi.genesiscloud.SSHKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new SSHKey(\"example\", SSHKeyArgs.builder() \n .publicKey(\"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBOpdKM8wSI07+PO4xLDL7zW/kNWGbdFXeHyBU1TRlBn alice@example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: genesiscloud:SSHKey\n properties:\n publicKey: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBOpdKM8wSI07+PO4xLDL7zW/kNWGbdFXeHyBU1TRlBn alice@example.com\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import genesiscloud:index/sSHKey:SSHKey example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n ","properties":{"createdAt":{"type":"string","description":"The timestamp when this SSH key was created in RFC 3339.\n"},"fingerprint":{"type":"string","description":"The fingerprint of the SSH key.\n"},"name":{"type":"string","description":"The human-readable name for the SSH key.\n"},"publicKey":{"type":"string","description":"SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SSHKeyTimeouts:SSHKeyTimeouts"}},"required":["createdAt","fingerprint","name","publicKey"],"inputProperties":{"name":{"type":"string","description":"The human-readable name for the SSH key.\n"},"publicKey":{"type":"string","description":"SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SSHKeyTimeouts:SSHKeyTimeouts"}},"requiredInputs":["publicKey"],"stateInputs":{"description":"Input properties used for looking up and filtering SSHKey resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this SSH key was created in RFC 3339.\n"},"fingerprint":{"type":"string","description":"The fingerprint of the SSH key.\n"},"name":{"type":"string","description":"The human-readable name for the SSH key.\n"},"publicKey":{"type":"string","description":"SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SSHKeyTimeouts:SSHKeyTimeouts"}},"type":"object"}},"genesiscloud:index/securityGroup:SecurityGroup":{"description":"Security group resource\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.SecurityGroup;\nimport com.pulumi.genesiscloud.SecurityGroupArgs;\nimport com.pulumi.genesiscloud.inputs.SecurityGroupRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var allow_https = new SecurityGroup(\"allow-https\", SecurityGroupArgs.builder() \n .region(\"ARC-IS-HAF-1\")\n .rules(SecurityGroupRuleArgs.builder()\n .direction(\"ingress\")\n .port_range_max(443)\n .port_range_min(443)\n .protocol(\"tcp\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n allow-https:\n type: genesiscloud:SecurityGroup\n properties:\n region: ARC-IS-HAF-1\n rules:\n - direction: ingress\n port_range_max: 443\n port_range_min: 443\n protocol: tcp\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import genesiscloud:index/securityGroup:SecurityGroup example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n ","properties":{"createdAt":{"type":"string","description":"The timestamp when this security group was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description for the security group. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the security group.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The\nvalue must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"rules":{"type":"array","items":{"$ref":"#/types/genesiscloud:index/SecurityGroupRule:SecurityGroupRule"}},"status":{"type":"string","description":"The security group status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SecurityGroupTimeouts:SecurityGroupTimeouts"}},"required":["createdAt","description","name","region","rules","status"],"inputProperties":{"description":{"type":"string","description":"The human-readable description for the security group. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the security group.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The\nvalue must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"rules":{"type":"array","items":{"$ref":"#/types/genesiscloud:index/SecurityGroupRule:SecurityGroupRule"}},"timeouts":{"$ref":"#/types/genesiscloud:index/SecurityGroupTimeouts:SecurityGroupTimeouts"}},"requiredInputs":["region","rules"],"stateInputs":{"description":"Input properties used for looking up and filtering SecurityGroup resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this security group was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description for the security group. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the security group.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The\nvalue must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"rules":{"type":"array","items":{"$ref":"#/types/genesiscloud:index/SecurityGroupRule:SecurityGroupRule"}},"status":{"type":"string","description":"The security group status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SecurityGroupTimeouts:SecurityGroupTimeouts"}},"type":"object"}},"genesiscloud:index/snapshot:Snapshot":{"description":"Snapshot resource\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@genesiscloud/pulumi-genesiscloud\";\n\nconst target = new genesiscloud.Instance(\"target\", {});\n// ...\nconst example = new genesiscloud.Snapshot(\"example\", {\n instanceId: target.id,\n retainOnDelete: true,\n});\n// optional\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\ntarget = genesiscloud.Instance(\"target\")\n# ...\nexample = genesiscloud.Snapshot(\"example\",\n instance_id=target.id,\n retain_on_delete=True)\n# optional\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var target = new Genesiscloud.Instance(\"target\");\n\n // ...\n var example = new Genesiscloud.Snapshot(\"example\", new()\n {\n InstanceId = target.Id,\n RetainOnDelete = true,\n });\n\n // optional\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttarget, err := genesiscloud.NewInstance(ctx, \"target\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = genesiscloud.NewSnapshot(ctx, \"example\", \u0026genesiscloud.SnapshotArgs{\n\t\t\tInstanceId: target.ID(),\n\t\t\tRetainOnDelete: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.Instance;\nimport com.pulumi.genesiscloud.Snapshot;\nimport com.pulumi.genesiscloud.SnapshotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var target = new Instance(\"target\");\n\n var example = new Snapshot(\"example\", SnapshotArgs.builder() \n .instanceId(target.id())\n .retainOnDelete(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n target:\n type: genesiscloud:Instance\n example:\n type: genesiscloud:Snapshot\n properties:\n instanceId: ${target.id}\n retainOnDelete: true\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import genesiscloud:index/snapshot:Snapshot example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n ","properties":{"createdAt":{"type":"string","description":"The timestamp when this snapshot was created in RFC 3339.\n"},"instanceId":{"type":"string","description":"The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource.\n"},"name":{"type":"string","description":"The human-readable name for the snapshot.\n"},"region":{"type":"string","description":"The region identifier.\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the snapshot when the resource is deleted. - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this snapshot given in bytes.\n"},"status":{"type":"string","description":"The snapshot status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SnapshotTimeouts:SnapshotTimeouts"}},"required":["createdAt","instanceId","name","region","retainOnDelete","size","status"],"inputProperties":{"instanceId":{"type":"string","description":"The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource.\n"},"name":{"type":"string","description":"The human-readable name for the snapshot.\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the snapshot when the resource is deleted. - Sets the default value \"false\" if the attribute is not set.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SnapshotTimeouts:SnapshotTimeouts"}},"requiredInputs":["instanceId"],"stateInputs":{"description":"Input properties used for looking up and filtering Snapshot resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this snapshot was created in RFC 3339.\n"},"instanceId":{"type":"string","description":"The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource.\n"},"name":{"type":"string","description":"The human-readable name for the snapshot.\n"},"region":{"type":"string","description":"The region identifier.\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the snapshot when the resource is deleted. - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this snapshot given in bytes.\n"},"status":{"type":"string","description":"The snapshot status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SnapshotTimeouts:SnapshotTimeouts"}},"type":"object"}},"genesiscloud:index/volume:Volume":{"description":"Volume resource\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@genesiscloud/pulumi-genesiscloud\";\n\nconst example = new genesiscloud.Volume(\"example\", {\n region: \"ARC-IS-HAF-1\",\n size: 50,\n type: \"hdd\",\n});\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\nexample = genesiscloud.Volume(\"example\",\n region=\"ARC-IS-HAF-1\",\n size=50,\n type=\"hdd\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Genesiscloud.Volume(\"example\", new()\n {\n Region = \"ARC-IS-HAF-1\",\n Size = 50,\n Type = \"hdd\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := genesiscloud.NewVolume(ctx, \"example\", \u0026genesiscloud.VolumeArgs{\n\t\t\tRegion: pulumi.String(\"ARC-IS-HAF-1\"),\n\t\t\tSize: pulumi.Int(50),\n\t\t\tType: pulumi.String(\"hdd\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.Volume;\nimport com.pulumi.genesiscloud.VolumeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Volume(\"example\", VolumeArgs.builder() \n .region(\"ARC-IS-HAF-1\")\n .size(50)\n .type(\"hdd\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: genesiscloud:Volume\n properties:\n region: ARC-IS-HAF-1\n size: 50\n type: hdd\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\n\n\n```sh\n $ pulumi import genesiscloud:index/volume:Volume example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n ","properties":{"createdAt":{"type":"string","description":"The timestamp when this volume was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description for the volume. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the volume.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The\nvalue must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the volume when the resource is deleted - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and\nrecreate the resource. - The value must be at least 1.\n"},"status":{"type":"string","description":"The volume status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/VolumeTimeouts:VolumeTimeouts"},"type":{"type":"string","description":"The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource. - The value must be one of: [\"hdd\" \"ssd\"].\n"}},"required":["createdAt","description","name","region","retainOnDelete","size","status","type"],"inputProperties":{"description":{"type":"string","description":"The human-readable description for the volume. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the volume.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The\nvalue must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the volume when the resource is deleted - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and\nrecreate the resource. - The value must be at least 1.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/VolumeTimeouts:VolumeTimeouts"},"type":{"type":"string","description":"The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource. - The value must be one of: [\"hdd\" \"ssd\"].\n"}},"requiredInputs":["region","size","type"],"stateInputs":{"description":"Input properties used for looking up and filtering Volume resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this volume was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description for the volume. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the volume.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The\nvalue must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the volume when the resource is deleted - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and\nrecreate the resource. - The value must be at least 1.\n"},"status":{"type":"string","description":"The volume status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/VolumeTimeouts:VolumeTimeouts"},"type":{"type":"string","description":"The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the\nresource. - The value must be one of: [\"hdd\" \"ssd\"].\n"}},"type":"object"}}},"functions":{"genesiscloud:index/images:Images":{"description":"Images data source\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@pulumi/genesiscloud\";\n\nconst cloud-images = genesiscloud.Images({\n filter: {\n type: \"cloud-image\",\n },\n});\nconst snapshots = genesiscloud.Images({\n filter: {\n region: \"ARC-IS-HAF-1\",\n type: \"snapshot\",\n },\n});\nconst preconfigured-images = genesiscloud.Images({\n filter: {\n type: \"preconfigured\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\ncloud_images = genesiscloud.images(filter=genesiscloud.ImagesFilterArgs(\n type=\"cloud-image\",\n))\nsnapshots = genesiscloud.images(filter=genesiscloud.ImagesFilterArgs(\n region=\"ARC-IS-HAF-1\",\n type=\"snapshot\",\n))\npreconfigured_images = genesiscloud.images(filter=genesiscloud.ImagesFilterArgs(\n type=\"preconfigured\",\n))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = Pulumi.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var cloud_images = Genesiscloud.Images.Invoke(new()\n {\n Filter = new Genesiscloud.Inputs.ImagesFilterInputArgs\n {\n Type = \"cloud-image\",\n },\n });\n\n var snapshots = Genesiscloud.Images.Invoke(new()\n {\n Filter = new Genesiscloud.Inputs.ImagesFilterInputArgs\n {\n Region = \"ARC-IS-HAF-1\",\n Type = \"snapshot\",\n },\n });\n\n var preconfigured_images = Genesiscloud.Images.Invoke(new()\n {\n Filter = new Genesiscloud.Inputs.ImagesFilterInputArgs\n {\n Type = \"preconfigured\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := genesiscloud.Images(ctx, \u0026genesiscloud.ImagesArgs{\n\t\t\tFilter: genesiscloud.ImagesFilter{\n\t\t\t\tType: \"cloud-image\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = genesiscloud.Images(ctx, \u0026genesiscloud.ImagesArgs{\n\t\t\tFilter: genesiscloud.ImagesFilter{\n\t\t\t\tRegion: pulumi.StringRef(\"ARC-IS-HAF-1\"),\n\t\t\t\tType: \"snapshot\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = genesiscloud.Images(ctx, \u0026genesiscloud.ImagesArgs{\n\t\t\tFilter: genesiscloud.ImagesFilter{\n\t\t\t\tType: \"preconfigured\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.GenesiscloudFunctions;\nimport com.pulumi.genesiscloud.inputs.ImagesArgs;\nimport com.pulumi.genesiscloud.inputs.ImagesFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var cloud-images = GenesiscloudFunctions.Images(ImagesArgs.builder()\n .filter(ImagesFilterArgs.builder()\n .type(\"cloud-image\")\n .build())\n .build());\n\n final var snapshots = GenesiscloudFunctions.Images(ImagesArgs.builder()\n .filter(ImagesFilterArgs.builder()\n .region(\"ARC-IS-HAF-1\")\n .type(\"snapshot\")\n .build())\n .build());\n\n final var preconfigured-images = GenesiscloudFunctions.Images(ImagesArgs.builder()\n .filter(ImagesFilterArgs.builder()\n .type(\"preconfigured\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n cloud-images:\n fn::invoke:\n Function: genesiscloud:Images\n Arguments:\n filter:\n type: cloud-image\n snapshots:\n fn::invoke:\n Function: genesiscloud:Images\n Arguments:\n filter:\n region: ARC-IS-HAF-1\n type: snapshot\n preconfigured-images:\n fn::invoke:\n Function: genesiscloud:Images\n Arguments:\n filter:\n type: preconfigured\n```\n{{% /example %}}\n{{% /examples %}}","inputs":{"description":"A collection of arguments for invoking Images.\n","properties":{"filter":{"$ref":"#/types/genesiscloud:index/ImagesFilter:ImagesFilter"},"timeouts":{"$ref":"#/types/genesiscloud:index/ImagesTimeouts:ImagesTimeouts"}},"type":"object","required":["filter"]},"outputs":{"description":"A collection of values returned by Images.\n","properties":{"filter":{"$ref":"#/types/genesiscloud:index/ImagesFilter:ImagesFilter"},"id":{"type":"string"},"images":{"items":{"$ref":"#/types/genesiscloud:index/ImagesImage:ImagesImage"},"type":"array"},"timeouts":{"$ref":"#/types/genesiscloud:index/ImagesTimeouts:ImagesTimeouts"}},"required":["filter","id","images"],"type":"object"}}}} \ No newline at end of file +{"name":"genesiscloud","displayName":"Genesis Cloud","version":"v0.0.29","description":"A Pulumi package for creating and managing genesiscloud cloud resources.","keywords":["pulumi","genesiscloud","category/cloud"],"homepage":"https://www.pulumi.io","license":"Apache-2.0","attribution":"This Pulumi package is based on the [`genesiscloud` Terraform Provider](https://github.com/genesiscloud/terraform-provider-genesiscloud).","repository":"https://github.com/genesiscloud/pulumi-genesiscloud","logoUrl":"https://avatars.githubusercontent.com/u/38134186?s=200\u0026v=4","pluginDownloadURL":"github://api.github.com/genesiscloud","meta":{"moduleFormat":"(.*)(?:/[^/]*)"},"language":{"csharp":{"packageReferences":{"Pulumi":"3.*"},"compatibility":"tfbridge20","rootNamespace":"GenesisCloud.PulumiPackage"},"go":{"importBasePath":"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud","generateResourceContainerTypes":true,"generateExtraInputTypes":true},"nodejs":{"packageName":"@genesiscloud/pulumi-genesiscloud","packageDescription":"A Pulumi package for creating and managing genesiscloud cloud resources.","readme":"\u003e This provider is a derived work of the [Terraform Provider](https://github.com/genesiscloud/terraform-provider-genesiscloud)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-genesiscloud` repo](https://github.com/genesiscloud/pulumi-genesiscloud/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-genesiscloud` repo](https://github.com/genesiscloud/terraform-provider-genesiscloud/issues).","dependencies":{"@pulumi/pulumi":"^3.0.0"},"devDependencies":{"@types/node":"^10.0.0"},"compatibility":"tfbridge20","disableUnionOutputTypes":true},"python":{"requires":{"pulumi":"\u003e=3.0.0,\u003c4.0.0"},"readme":"\u003e This provider is a derived work of the [Terraform Provider](https://github.com/genesiscloud/terraform-provider-genesiscloud)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-genesiscloud` repo](https://github.com/genesiscloud/pulumi-genesiscloud/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-genesiscloud` repo](https://github.com/genesiscloud/terraform-provider-genesiscloud/issues).","compatibility":"tfbridge20","pyproject":{}}},"config":{"variables":{"endpoint":{"type":"string","description":"Genesis Cloud API endpoint. May also be provided via `GENESISCLOUD_ENDPOINT` environment variable. If neither is\nprovided, defaults to `https://api.genesiscloud.com/compute/v1`.\n","defaultInfo":{"environment":["GENESISCLOUD_ENDPOINT"]}},"pollingInterval":{"type":"string","description":"The polling interval. - The string must be a positive [time duration](https://pkg.go.dev/time#ParseDuration), for\nexample \"10s\".\n"},"token":{"type":"string","description":"Genesis Cloud API token. May also be provided via `GENESISCLOUD_TOKEN` environment variable.\n","defaultInfo":{"environment":["GENESISCLOUD_TOKEN"]},"secret":true}}},"types":{"genesiscloud:index/FilesystemTimeouts:FilesystemTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/FloatingIpTimeouts:FloatingIpTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/ImagesFilter:ImagesFilter":{"properties":{"region":{"type":"string","description":"Filter by the region identifier.\n - The value must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"type":{"type":"string","description":"Filter by the kind of image.\n - The value must be one of: [\"base-os\" \"cloud-image\" \"preconfigured\" \"snapshot\"].\n"}},"type":"object","required":["type"]},"genesiscloud:index/ImagesImage:ImagesImage":{"properties":{"createdAt":{"type":"string","description":"The timestamp when this image was created in RFC 3339.\n"},"id":{"type":"string","description":"A unique number that can be used to identify and reference a specific image.\n"},"name":{"type":"string","description":"The display name that has been given to an image.\n"},"regions":{"type":"array","items":{"type":"string"},"description":"The list of regions in which this image can be used in.\n"},"slug":{"type":"string","description":"The image slug.\n"},"type":{"type":"string","description":"Describes the kind of image.\n"},"versions":{"type":"array","items":{"type":"string"},"description":"The list of versions if this is a cloud-image otherwise empty.\n"}},"type":"object","required":["createdAt","id","name","regions","slug","type","versions"],"language":{"nodejs":{"requiredInputs":[]}}},"genesiscloud:index/ImagesTimeouts:ImagesTimeouts":{"properties":{"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/InstanceMetadata:InstanceMetadata":{"properties":{"startupScript":{"type":"string","description":"A plain text bash script or \"cloud-config\" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478).\n - If the value of this attribute changes, the resource will be replaced.\n"}},"type":"object"},"genesiscloud:index/InstanceStatusTimeouts:InstanceStatusTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/InstanceTimeouts:InstanceTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/SSHKeyTimeouts:SSHKeyTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/SecurityGroupRule:SecurityGroupRule":{"properties":{"direction":{"type":"string","description":"The direction of the rule.\n - The value must be one of: [\"egress\" \"ingress\"].\n"},"portRangeMax":{"type":"integer","description":"The maximum port number of the rule.\n - The value must be between 1 and 65535.\n"},"portRangeMin":{"type":"integer","description":"The minimum port number of the rule.\n - The value must be between 1 and 65535.\n"},"protocol":{"type":"string","description":"The protocol of the rule.\n - The value must be one of: [\"all\" \"icmp\" \"tcp\" \"udp\"].\n"}},"type":"object","required":["direction","protocol"]},"genesiscloud:index/SecurityGroupTimeouts:SecurityGroupTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/SnapshotTimeouts:SnapshotTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"},"genesiscloud:index/VolumeTimeouts:VolumeTimeouts":{"properties":{"create":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"},"delete":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n"},"read":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.\n"},"update":{"type":"string","description":"A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n"}},"type":"object"}},"provider":{"description":"The provider type for the genesiscloud package. By default, resources use package-wide configuration\nsettings, however an explicit `Provider` instance may be created and passed during resource\nconstruction to achieve fine-grained programmatic control over provider settings. See the\n[documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.\n","properties":{"endpoint":{"type":"string","description":"Genesis Cloud API endpoint. May also be provided via `GENESISCLOUD_ENDPOINT` environment variable. If neither is\nprovided, defaults to `https://api.genesiscloud.com/compute/v1`.\n"},"pollingInterval":{"type":"string","description":"The polling interval. - The string must be a positive [time duration](https://pkg.go.dev/time#ParseDuration), for\nexample \"10s\".\n"},"token":{"type":"string","description":"Genesis Cloud API token. May also be provided via `GENESISCLOUD_TOKEN` environment variable.\n","secret":true}},"inputProperties":{"endpoint":{"type":"string","description":"Genesis Cloud API endpoint. May also be provided via `GENESISCLOUD_ENDPOINT` environment variable. If neither is\nprovided, defaults to `https://api.genesiscloud.com/compute/v1`.\n","defaultInfo":{"environment":["GENESISCLOUD_ENDPOINT"]}},"pollingInterval":{"type":"string","description":"The polling interval. - The string must be a positive [time duration](https://pkg.go.dev/time#ParseDuration), for\nexample \"10s\".\n"},"token":{"type":"string","description":"Genesis Cloud API token. May also be provided via `GENESISCLOUD_TOKEN` environment variable.\n","defaultInfo":{"environment":["GENESISCLOUD_TOKEN"]},"secret":true}}},"resources":{"genesiscloud:index/filesystem:Filesystem":{"description":"Filesystem resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@genesiscloud/pulumi-genesiscloud\";\n\nconst example = new genesiscloud.Filesystem(\"example\", {\n description: \"Example filesystem\",\n region: \"NORD-NO-KRS-1\",\n size: 50,\n type: \"vast\",\n});\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\nexample = genesiscloud.Filesystem(\"example\",\n description=\"Example filesystem\",\n region=\"NORD-NO-KRS-1\",\n size=50,\n type=\"vast\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Genesiscloud.Filesystem(\"example\", new()\n {\n Description = \"Example filesystem\",\n Region = \"NORD-NO-KRS-1\",\n Size = 50,\n Type = \"vast\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := genesiscloud.NewFilesystem(ctx, \"example\", \u0026genesiscloud.FilesystemArgs{\n\t\t\tDescription: pulumi.String(\"Example filesystem\"),\n\t\t\tRegion: pulumi.String(\"NORD-NO-KRS-1\"),\n\t\t\tSize: pulumi.Int(50),\n\t\t\tType: pulumi.String(\"vast\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.Filesystem;\nimport com.pulumi.genesiscloud.FilesystemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Filesystem(\"example\", FilesystemArgs.builder()\n .description(\"Example filesystem\")\n .region(\"NORD-NO-KRS-1\")\n .size(50)\n .type(\"vast\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: genesiscloud:Filesystem\n properties:\n description: Example filesystem\n region: NORD-NO-KRS-1\n size: 50\n type: vast\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import genesiscloud:index/filesystem:Filesystem example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this filesystem was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description for the filesystem. - Sets the default value \"\" if the attribute is not set.\n"},"mountBasePath":{"type":"string","description":"The base path on the server under which the mount point can be accessed.\n"},"mountEndpointRanges":{"type":"array","items":{"type":"string"},"description":"The start and end IP of the mount endpoint range. Expressed as a array with two entries.\n"},"name":{"type":"string","description":"The human-readable name for the filesystem.\n"},"region":{"type":"string","description":"The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be\nreplaced. - The value must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the filesystem when the resource is deleted - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this filesystem given in GiB. - The value must be at least 1.\n"},"status":{"type":"string","description":"The filesystem status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/FilesystemTimeouts:FilesystemTimeouts"},"type":{"type":"string","description":"The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value\nmust be one of: [\"vast\"].\n"}},"required":["createdAt","description","mountBasePath","mountEndpointRanges","name","region","retainOnDelete","size","status","type"],"inputProperties":{"description":{"type":"string","description":"The human-readable description for the filesystem. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the filesystem.\n"},"region":{"type":"string","description":"The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be\nreplaced. - The value must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the filesystem when the resource is deleted - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this filesystem given in GiB. - The value must be at least 1.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/FilesystemTimeouts:FilesystemTimeouts"},"type":{"type":"string","description":"The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value\nmust be one of: [\"vast\"].\n"}},"requiredInputs":["region","size","type"],"stateInputs":{"description":"Input properties used for looking up and filtering Filesystem resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this filesystem was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description for the filesystem. - Sets the default value \"\" if the attribute is not set.\n"},"mountBasePath":{"type":"string","description":"The base path on the server under which the mount point can be accessed.\n"},"mountEndpointRanges":{"type":"array","items":{"type":"string"},"description":"The start and end IP of the mount endpoint range. Expressed as a array with two entries.\n"},"name":{"type":"string","description":"The human-readable name for the filesystem.\n"},"region":{"type":"string","description":"The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be\nreplaced. - The value must be one of: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the filesystem when the resource is deleted - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this filesystem given in GiB. - The value must be at least 1.\n"},"status":{"type":"string","description":"The filesystem status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/FilesystemTimeouts:FilesystemTimeouts"},"type":{"type":"string","description":"The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value\nmust be one of: [\"vast\"].\n"}},"type":"object"}},"genesiscloud:index/floatingIp:FloatingIp":{"description":"floating IP resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@genesiscloud/pulumi-genesiscloud\";\n\nconst floatingIp = new genesiscloud.FloatingIp(\"floatingIp\", {\n region: \"NORD-NO-KRS-1\",\n version: \"ipv4\",\n});\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\nfloating_ip = genesiscloud.FloatingIp(\"floatingIp\",\n region=\"NORD-NO-KRS-1\",\n version=\"ipv4\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var floatingIp = new Genesiscloud.FloatingIp(\"floatingIp\", new()\n {\n Region = \"NORD-NO-KRS-1\",\n Version = \"ipv4\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := genesiscloud.NewFloatingIp(ctx, \"floatingIp\", \u0026genesiscloud.FloatingIpArgs{\n\t\t\tRegion: pulumi.String(\"NORD-NO-KRS-1\"),\n\t\t\tVersion: pulumi.String(\"ipv4\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.FloatingIp;\nimport com.pulumi.genesiscloud.FloatingIpArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var floatingIp = new FloatingIp(\"floatingIp\", FloatingIpArgs.builder()\n .region(\"NORD-NO-KRS-1\")\n .version(\"ipv4\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n floatingIp:\n type: genesiscloud:FloatingIp\n properties:\n region: NORD-NO-KRS-1\n version: ipv4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import genesiscloud:index/floatingIp:FloatingIp example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this floating IP was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description set for the floating IP. - Sets the default value \"\" if the attribute is not set.\n"},"ipAddress":{"type":"string","description":"The IP address of the floating IP.\n"},"isPublic":{"type":"boolean","description":"Whether the floating IP is public or private. - Sets the default value \"true\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the floating IP.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one\nof: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"status":{"type":"string","description":"The floating IP status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/FloatingIpTimeouts:FloatingIpTimeouts"},"updatedAt":{"type":"string","description":"The timestamp when this image was last updated in RFC 3339.\n"},"version":{"type":"string","description":"The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value\nmust be one of: [\"ipv4\"].\n"}},"required":["createdAt","description","ipAddress","isPublic","name","region","status","updatedAt","version"],"inputProperties":{"description":{"type":"string","description":"The human-readable description set for the floating IP. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the floating IP.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one\nof: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/FloatingIpTimeouts:FloatingIpTimeouts"},"version":{"type":"string","description":"The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value\nmust be one of: [\"ipv4\"].\n"}},"requiredInputs":["region","version"],"stateInputs":{"description":"Input properties used for looking up and filtering FloatingIp resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this floating IP was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description set for the floating IP. - Sets the default value \"\" if the attribute is not set.\n"},"ipAddress":{"type":"string","description":"The IP address of the floating IP.\n"},"isPublic":{"type":"boolean","description":"Whether the floating IP is public or private. - Sets the default value \"true\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the floating IP.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one\nof: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"status":{"type":"string","description":"The floating IP status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/FloatingIpTimeouts:FloatingIpTimeouts"},"updatedAt":{"type":"string","description":"The timestamp when this image was last updated in RFC 3339.\n"},"version":{"type":"string","description":"The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value\nmust be one of: [\"ipv4\"].\n"}},"type":"object"}},"genesiscloud:index/instance:Instance":{"description":"Instance resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@genesiscloud/pulumi-genesiscloud\";\n\nconst example = new genesiscloud.Instance(\"example\", {\n image: \"ubuntu:22.04\",\n region: \"NORD-NO-KRS-1\",\n sshKeyIds: [\"my-ssh-key-id\"],\n type: \"vcpu-2_memory-4g\",\n});\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\nexample = genesiscloud.Instance(\"example\",\n image=\"ubuntu:22.04\",\n region=\"NORD-NO-KRS-1\",\n ssh_key_ids=[\"my-ssh-key-id\"],\n type=\"vcpu-2_memory-4g\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Genesiscloud.Instance(\"example\", new()\n {\n Image = \"ubuntu:22.04\",\n Region = \"NORD-NO-KRS-1\",\n SshKeyIds = new[]\n {\n \"my-ssh-key-id\",\n },\n Type = \"vcpu-2_memory-4g\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := genesiscloud.NewInstance(ctx, \"example\", \u0026genesiscloud.InstanceArgs{\n\t\t\tImage: pulumi.String(\"ubuntu:22.04\"),\n\t\t\tRegion: pulumi.String(\"NORD-NO-KRS-1\"),\n\t\t\tSshKeyIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"my-ssh-key-id\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"vcpu-2_memory-4g\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.Instance;\nimport com.pulumi.genesiscloud.InstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Instance(\"example\", InstanceArgs.builder()\n .image(\"ubuntu:22.04\")\n .region(\"NORD-NO-KRS-1\")\n .sshKeyIds(\"my-ssh-key-id\")\n .type(\"vcpu-2_memory-4g\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: genesiscloud:Instance\n properties:\n image: ubuntu:22.04\n region: NORD-NO-KRS-1\n sshKeyIds:\n - my-ssh-key-id\n type: vcpu-2_memory-4g\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import genesiscloud:index/instance:Instance example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this image was created in RFC 3339.\n"},"diskSize":{"type":"integer","description":"The disk size of the instance in GB.\n"},"dnsName":{"type":"string","description":"The dns name of the instance.\n"},"floatingIpId":{"type":"string","description":"The floating IP attached to the instance.\n"},"hostname":{"type":"string"},"image":{"type":"string","description":"The source image id, image slug or snapshot id of the instance. The image version can also specified together with the\nimage slug in this format `\u003cimage-slug\u003e:\u003cversion\u003e`. Learn more about images\n[here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be\nreplaced.\n"},"imageId":{"type":"string","description":"The resulting image ID of the instance.\n"},"metadata":{"$ref":"#/types/genesiscloud:index/InstanceMetadata:InstanceMetadata","description":"Option to provide metadata. Currently supported is `startup_script`.\n"},"name":{"type":"string","description":"The human-readable name for the instance.\n"},"password":{"type":"string","description":"The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72.\n**Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an\nSSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at\nleast 16.\n","secret":true},"placementOption":{"type":"string","description":"The placement option identifier in which instances are physically located relative to each other within a zone. For\nexample A or B. - If the value of this attribute changes, the resource will be replaced.\n"},"privateIp":{"type":"string","description":"The private IPv4 IP-Address (IPv4 address).\n"},"publicIp":{"type":"string","description":"The public IPv4 IP-Address (IPv4 address).\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one\nof: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"reservationId":{"type":"string","description":"The id of the reservation the instance is associated with.\n"},"securityGroupIds":{"type":"array","items":{"type":"string"},"description":"The security groups of the instance. If not provided will be set to the default security group.\n"},"sshKeyIds":{"type":"array","items":{"type":"string"},"description":"The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced.\n"},"status":{"type":"string","description":"The instance status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/InstanceTimeouts:InstanceTimeouts"},"type":{"type":"string","description":"The instance type identifier. Learn more about instance types\n[here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the\nresource will be replaced.\n"},"updatedAt":{"type":"string","description":"The timestamp when this image was last updated in RFC 3339.\n"},"volumeIds":{"type":"array","items":{"type":"string"},"description":"The volumes of the instance.\n"}},"required":["createdAt","diskSize","dnsName","hostname","image","imageId","name","placementOption","privateIp","publicIp","region","securityGroupIds","status","type","updatedAt","volumeIds"],"inputProperties":{"diskSize":{"type":"integer","description":"The disk size of the instance in GB.\n"},"floatingIpId":{"type":"string","description":"The floating IP attached to the instance.\n"},"hostname":{"type":"string"},"image":{"type":"string","description":"The source image id, image slug or snapshot id of the instance. The image version can also specified together with the\nimage slug in this format `\u003cimage-slug\u003e:\u003cversion\u003e`. Learn more about images\n[here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be\nreplaced.\n"},"metadata":{"$ref":"#/types/genesiscloud:index/InstanceMetadata:InstanceMetadata","description":"Option to provide metadata. Currently supported is `startup_script`.\n"},"name":{"type":"string","description":"The human-readable name for the instance.\n"},"password":{"type":"string","description":"The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72.\n**Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an\nSSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at\nleast 16.\n","secret":true},"placementOption":{"type":"string","description":"The placement option identifier in which instances are physically located relative to each other within a zone. For\nexample A or B. - If the value of this attribute changes, the resource will be replaced.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one\nof: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"reservationId":{"type":"string","description":"The id of the reservation the instance is associated with.\n"},"securityGroupIds":{"type":"array","items":{"type":"string"},"description":"The security groups of the instance. If not provided will be set to the default security group.\n"},"sshKeyIds":{"type":"array","items":{"type":"string"},"description":"The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/InstanceTimeouts:InstanceTimeouts"},"type":{"type":"string","description":"The instance type identifier. Learn more about instance types\n[here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the\nresource will be replaced.\n"},"volumeIds":{"type":"array","items":{"type":"string"},"description":"The volumes of the instance.\n"}},"requiredInputs":["image","region","type"],"stateInputs":{"description":"Input properties used for looking up and filtering Instance resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this image was created in RFC 3339.\n"},"diskSize":{"type":"integer","description":"The disk size of the instance in GB.\n"},"dnsName":{"type":"string","description":"The dns name of the instance.\n"},"floatingIpId":{"type":"string","description":"The floating IP attached to the instance.\n"},"hostname":{"type":"string"},"image":{"type":"string","description":"The source image id, image slug or snapshot id of the instance. The image version can also specified together with the\nimage slug in this format `\u003cimage-slug\u003e:\u003cversion\u003e`. Learn more about images\n[here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be\nreplaced.\n"},"imageId":{"type":"string","description":"The resulting image ID of the instance.\n"},"metadata":{"$ref":"#/types/genesiscloud:index/InstanceMetadata:InstanceMetadata","description":"Option to provide metadata. Currently supported is `startup_script`.\n"},"name":{"type":"string","description":"The human-readable name for the instance.\n"},"password":{"type":"string","description":"The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72.\n**Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an\nSSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at\nleast 16.\n","secret":true},"placementOption":{"type":"string","description":"The placement option identifier in which instances are physically located relative to each other within a zone. For\nexample A or B. - If the value of this attribute changes, the resource will be replaced.\n"},"privateIp":{"type":"string","description":"The private IPv4 IP-Address (IPv4 address).\n"},"publicIp":{"type":"string","description":"The public IPv4 IP-Address (IPv4 address).\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one\nof: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"reservationId":{"type":"string","description":"The id of the reservation the instance is associated with.\n"},"securityGroupIds":{"type":"array","items":{"type":"string"},"description":"The security groups of the instance. If not provided will be set to the default security group.\n"},"sshKeyIds":{"type":"array","items":{"type":"string"},"description":"The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced.\n"},"status":{"type":"string","description":"The instance status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/InstanceTimeouts:InstanceTimeouts"},"type":{"type":"string","description":"The instance type identifier. Learn more about instance types\n[here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the\nresource will be replaced.\n"},"updatedAt":{"type":"string","description":"The timestamp when this image was last updated in RFC 3339.\n"},"volumeIds":{"type":"array","items":{"type":"string"},"description":"The volumes of the instance.\n"}},"type":"object"}},"genesiscloud:index/instanceStatus:InstanceStatus":{"description":"InstanceStatus resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@genesiscloud/pulumi-genesiscloud\";\n\nconst exampleInstance = new genesiscloud.Instance(\"exampleInstance\", {\n region: \"NORD-NO-KRS-1\",\n image: \"ubuntu:22.04\",\n type: \"vcpu-2_memory-4g\",\n sshKeyIds: [\"my-ssh-key-id\"],\n});\nconst exampleInstanceStatus = new genesiscloud.InstanceStatus(\"exampleInstanceStatus\", {\n instanceId: exampleInstance.id,\n status: \"active\",\n});\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\nexample_instance = genesiscloud.Instance(\"exampleInstance\",\n region=\"NORD-NO-KRS-1\",\n image=\"ubuntu:22.04\",\n type=\"vcpu-2_memory-4g\",\n ssh_key_ids=[\"my-ssh-key-id\"])\nexample_instance_status = genesiscloud.InstanceStatus(\"exampleInstanceStatus\",\n instance_id=example_instance.id,\n status=\"active\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleInstance = new Genesiscloud.Instance(\"exampleInstance\", new()\n {\n Region = \"NORD-NO-KRS-1\",\n Image = \"ubuntu:22.04\",\n Type = \"vcpu-2_memory-4g\",\n SshKeyIds = new[]\n {\n \"my-ssh-key-id\",\n },\n });\n\n var exampleInstanceStatus = new Genesiscloud.InstanceStatus(\"exampleInstanceStatus\", new()\n {\n InstanceId = exampleInstance.Id,\n Status = \"active\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleInstance, err := genesiscloud.NewInstance(ctx, \"exampleInstance\", \u0026genesiscloud.InstanceArgs{\n\t\t\tRegion: pulumi.String(\"NORD-NO-KRS-1\"),\n\t\t\tImage: pulumi.String(\"ubuntu:22.04\"),\n\t\t\tType: pulumi.String(\"vcpu-2_memory-4g\"),\n\t\t\tSshKeyIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"my-ssh-key-id\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = genesiscloud.NewInstanceStatus(ctx, \"exampleInstanceStatus\", \u0026genesiscloud.InstanceStatusArgs{\n\t\t\tInstanceId: exampleInstance.ID(),\n\t\t\tStatus: pulumi.String(\"active\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.Instance;\nimport com.pulumi.genesiscloud.InstanceArgs;\nimport com.pulumi.genesiscloud.InstanceStatus;\nimport com.pulumi.genesiscloud.InstanceStatusArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleInstance = new Instance(\"exampleInstance\", InstanceArgs.builder()\n .region(\"NORD-NO-KRS-1\")\n .image(\"ubuntu:22.04\")\n .type(\"vcpu-2_memory-4g\")\n .sshKeyIds(\"my-ssh-key-id\")\n .build());\n\n var exampleInstanceStatus = new InstanceStatus(\"exampleInstanceStatus\", InstanceStatusArgs.builder()\n .instanceId(exampleInstance.id())\n .status(\"active\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleInstance:\n type: genesiscloud:Instance\n properties:\n region: NORD-NO-KRS-1\n image: ubuntu:22.04\n type: vcpu-2_memory-4g\n sshKeyIds:\n - my-ssh-key-id\n exampleInstanceStatus:\n type: genesiscloud:InstanceStatus\n properties:\n instanceId: ${exampleInstance.id}\n status: active\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import genesiscloud:index/instanceStatus:InstanceStatus example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n","properties":{"instanceId":{"type":"string","description":"The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced.\n"},"status":{"type":"string","description":"The target instance status. - The value must be one of: [\"active\" \"stopped\"].\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/InstanceStatusTimeouts:InstanceStatusTimeouts"}},"required":["instanceId","status"],"inputProperties":{"instanceId":{"type":"string","description":"The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced.\n"},"status":{"type":"string","description":"The target instance status. - The value must be one of: [\"active\" \"stopped\"].\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/InstanceStatusTimeouts:InstanceStatusTimeouts"}},"requiredInputs":["instanceId","status"],"stateInputs":{"description":"Input properties used for looking up and filtering InstanceStatus resources.\n","properties":{"instanceId":{"type":"string","description":"The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced.\n"},"status":{"type":"string","description":"The target instance status. - The value must be one of: [\"active\" \"stopped\"].\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/InstanceStatusTimeouts:InstanceStatusTimeouts"}},"type":"object"}},"genesiscloud:index/sSHKey:SSHKey":{"description":"SSH key resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@genesiscloud/pulumi-genesiscloud\";\n\nconst example = new genesiscloud.SSHKey(\"example\", {publicKey: \"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBOpdKM8wSI07+PO4xLDL7zW/kNWGbdFXeHyBU1TRlBn alice@example.com\"});\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\nexample = genesiscloud.SSHKey(\"example\", public_key=\"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBOpdKM8wSI07+PO4xLDL7zW/kNWGbdFXeHyBU1TRlBn alice@example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Genesiscloud.SSHKey(\"example\", new()\n {\n PublicKey = \"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBOpdKM8wSI07+PO4xLDL7zW/kNWGbdFXeHyBU1TRlBn alice@example.com\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := genesiscloud.NewSSHKey(ctx, \"example\", \u0026genesiscloud.SSHKeyArgs{\n\t\t\tPublicKey: pulumi.String(\"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBOpdKM8wSI07+PO4xLDL7zW/kNWGbdFXeHyBU1TRlBn alice@example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.SSHKey;\nimport com.pulumi.genesiscloud.SSHKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new SSHKey(\"example\", SSHKeyArgs.builder()\n .publicKey(\"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBOpdKM8wSI07+PO4xLDL7zW/kNWGbdFXeHyBU1TRlBn alice@example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: genesiscloud:SSHKey\n properties:\n publicKey: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBOpdKM8wSI07+PO4xLDL7zW/kNWGbdFXeHyBU1TRlBn alice@example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import genesiscloud:index/sSHKey:SSHKey example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this SSH key was created in RFC 3339.\n"},"fingerprint":{"type":"string","description":"The fingerprint of the SSH key.\n"},"name":{"type":"string","description":"The human-readable name for the SSH key.\n"},"publicKey":{"type":"string","description":"SSH public key. - If the value of this attribute changes, the resource will be replaced.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SSHKeyTimeouts:SSHKeyTimeouts"}},"required":["createdAt","fingerprint","name","publicKey"],"inputProperties":{"name":{"type":"string","description":"The human-readable name for the SSH key.\n"},"publicKey":{"type":"string","description":"SSH public key. - If the value of this attribute changes, the resource will be replaced.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SSHKeyTimeouts:SSHKeyTimeouts"}},"requiredInputs":["publicKey"],"stateInputs":{"description":"Input properties used for looking up and filtering SSHKey resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this SSH key was created in RFC 3339.\n"},"fingerprint":{"type":"string","description":"The fingerprint of the SSH key.\n"},"name":{"type":"string","description":"The human-readable name for the SSH key.\n"},"publicKey":{"type":"string","description":"SSH public key. - If the value of this attribute changes, the resource will be replaced.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SSHKeyTimeouts:SSHKeyTimeouts"}},"type":"object"}},"genesiscloud:index/securityGroup:SecurityGroup":{"description":"Security group resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.SecurityGroup;\nimport com.pulumi.genesiscloud.SecurityGroupArgs;\nimport com.pulumi.genesiscloud.inputs.SecurityGroupRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var allow_https = new SecurityGroup(\"allow-https\", SecurityGroupArgs.builder()\n .region(\"NORD-NO-KRS-1\")\n .rules(SecurityGroupRuleArgs.builder()\n .direction(\"ingress\")\n .port_range_max(443)\n .port_range_min(443)\n .protocol(\"tcp\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n allow-https:\n type: genesiscloud:SecurityGroup\n properties:\n region: NORD-NO-KRS-1\n rules:\n - direction: ingress\n port_range_max: 443\n port_range_min: 443\n protocol: tcp\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import genesiscloud:index/securityGroup:SecurityGroup example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this security group was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description for the security group. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the security group.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one\nof: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"rules":{"type":"array","items":{"$ref":"#/types/genesiscloud:index/SecurityGroupRule:SecurityGroupRule"}},"status":{"type":"string","description":"The security group status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SecurityGroupTimeouts:SecurityGroupTimeouts"}},"required":["createdAt","description","name","region","rules","status"],"inputProperties":{"description":{"type":"string","description":"The human-readable description for the security group. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the security group.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one\nof: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"rules":{"type":"array","items":{"$ref":"#/types/genesiscloud:index/SecurityGroupRule:SecurityGroupRule"}},"timeouts":{"$ref":"#/types/genesiscloud:index/SecurityGroupTimeouts:SecurityGroupTimeouts"}},"requiredInputs":["region","rules"],"stateInputs":{"description":"Input properties used for looking up and filtering SecurityGroup resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this security group was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description for the security group. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the security group.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one\nof: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"rules":{"type":"array","items":{"$ref":"#/types/genesiscloud:index/SecurityGroupRule:SecurityGroupRule"}},"status":{"type":"string","description":"The security group status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SecurityGroupTimeouts:SecurityGroupTimeouts"}},"type":"object"}},"genesiscloud:index/snapshot:Snapshot":{"description":"Snapshot resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@genesiscloud/pulumi-genesiscloud\";\n\nconst target = new genesiscloud.Instance(\"target\", {});\n// ...\nconst example = new genesiscloud.Snapshot(\"example\", {\n instanceId: target.id,\n retainOnDelete: true,\n});\n// optional\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\ntarget = genesiscloud.Instance(\"target\")\n# ...\nexample = genesiscloud.Snapshot(\"example\",\n instance_id=target.id,\n retain_on_delete=True)\n# optional\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var target = new Genesiscloud.Instance(\"target\");\n\n // ...\n var example = new Genesiscloud.Snapshot(\"example\", new()\n {\n InstanceId = target.Id,\n RetainOnDelete = true,\n });\n\n // optional\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttarget, err := genesiscloud.NewInstance(ctx, \"target\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = genesiscloud.NewSnapshot(ctx, \"example\", \u0026genesiscloud.SnapshotArgs{\n\t\t\tInstanceId: target.ID(),\n\t\t\tRetainOnDelete: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.Instance;\nimport com.pulumi.genesiscloud.Snapshot;\nimport com.pulumi.genesiscloud.SnapshotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var target = new Instance(\"target\");\n\n // ...\n var example = new Snapshot(\"example\", SnapshotArgs.builder()\n .instanceId(target.id())\n .retainOnDelete(true)\n .build());\n\n // optional\n }\n}\n```\n```yaml\nresources:\n target:\n type: genesiscloud:Instance\n example:\n type: genesiscloud:Snapshot\n properties:\n instanceId: ${target.id}\n retainOnDelete: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import genesiscloud:index/snapshot:Snapshot example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this snapshot was created in RFC 3339.\n"},"instanceId":{"type":"string","description":"The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced.\n"},"name":{"type":"string","description":"The human-readable name for the snapshot.\n"},"region":{"type":"string","description":"The region identifier.\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the snapshot when the resource is deleted. - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this snapshot given in GiB.\n"},"status":{"type":"string","description":"The snapshot status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SnapshotTimeouts:SnapshotTimeouts"}},"required":["createdAt","instanceId","name","region","retainOnDelete","size","status"],"inputProperties":{"instanceId":{"type":"string","description":"The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced.\n"},"name":{"type":"string","description":"The human-readable name for the snapshot.\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the snapshot when the resource is deleted. - Sets the default value \"false\" if the attribute is not set.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SnapshotTimeouts:SnapshotTimeouts"}},"requiredInputs":["instanceId"],"stateInputs":{"description":"Input properties used for looking up and filtering Snapshot resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this snapshot was created in RFC 3339.\n"},"instanceId":{"type":"string","description":"The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced.\n"},"name":{"type":"string","description":"The human-readable name for the snapshot.\n"},"region":{"type":"string","description":"The region identifier.\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the snapshot when the resource is deleted. - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this snapshot given in GiB.\n"},"status":{"type":"string","description":"The snapshot status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/SnapshotTimeouts:SnapshotTimeouts"}},"type":"object"}},"genesiscloud:index/volume:Volume":{"description":"Volume resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@genesiscloud/pulumi-genesiscloud\";\n\nconst example = new genesiscloud.Volume(\"example\", {\n region: \"NORD-NO-KRS-1\",\n size: 50,\n type: \"hdd\",\n});\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\nexample = genesiscloud.Volume(\"example\",\n region=\"NORD-NO-KRS-1\",\n size=50,\n type=\"hdd\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Genesiscloud.Volume(\"example\", new()\n {\n Region = \"NORD-NO-KRS-1\",\n Size = 50,\n Type = \"hdd\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := genesiscloud.NewVolume(ctx, \"example\", \u0026genesiscloud.VolumeArgs{\n\t\t\tRegion: pulumi.String(\"NORD-NO-KRS-1\"),\n\t\t\tSize: pulumi.Int(50),\n\t\t\tType: pulumi.String(\"hdd\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.Volume;\nimport com.pulumi.genesiscloud.VolumeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Volume(\"example\", VolumeArgs.builder()\n .region(\"NORD-NO-KRS-1\")\n .size(50)\n .type(\"hdd\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: genesiscloud:Volume\n properties:\n region: NORD-NO-KRS-1\n size: 50\n type: hdd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\n```sh\n$ pulumi import genesiscloud:index/volume:Volume example 18efeec8-94f0-4776-8ff2-5e9b49c74608\n```\n\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this volume was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description for the volume. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the volume.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one\nof: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the volume when the resource is deleted - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this volume given in GiB. - The value must be at least 1.\n"},"status":{"type":"string","description":"The volume status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/VolumeTimeouts:VolumeTimeouts"},"type":{"type":"string","description":"The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value\nmust be one of: [\"hdd\" \"ssd\"].\n"}},"required":["createdAt","description","name","region","retainOnDelete","size","status","type"],"inputProperties":{"description":{"type":"string","description":"The human-readable description for the volume. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the volume.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one\nof: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the volume when the resource is deleted - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this volume given in GiB. - The value must be at least 1.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/VolumeTimeouts:VolumeTimeouts"},"type":{"type":"string","description":"The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value\nmust be one of: [\"hdd\" \"ssd\"].\n"}},"requiredInputs":["region","size","type"],"stateInputs":{"description":"Input properties used for looking up and filtering Volume resources.\n","properties":{"createdAt":{"type":"string","description":"The timestamp when this volume was created in RFC 3339.\n"},"description":{"type":"string","description":"The human-readable description for the volume. - Sets the default value \"\" if the attribute is not set.\n"},"name":{"type":"string","description":"The human-readable name for the volume.\n"},"region":{"type":"string","description":"The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one\nof: [\"ARC-IS-HAF-1\" \"EUC-DE-MUC-1\" \"NORD-NO-KRS-1\"].\n"},"retainOnDelete":{"type":"boolean","description":"Flag to retain the volume when the resource is deleted - Sets the default value \"false\" if the attribute is not set.\n"},"size":{"type":"integer","description":"The storage size of this volume given in GiB. - The value must be at least 1.\n"},"status":{"type":"string","description":"The volume status.\n"},"timeouts":{"$ref":"#/types/genesiscloud:index/VolumeTimeouts:VolumeTimeouts"},"type":{"type":"string","description":"The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value\nmust be one of: [\"hdd\" \"ssd\"].\n"}},"type":"object"}}},"functions":{"genesiscloud:index/images:Images":{"description":"Images data source\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as genesiscloud from \"@pulumi/genesiscloud\";\n\nconst cloud-images = genesiscloud.Images({\n filter: {\n type: \"cloud-image\",\n },\n});\nconst snapshots = genesiscloud.Images({\n filter: {\n region: \"NORD-NO-KRS-1\",\n type: \"snapshot\",\n },\n});\nconst preconfigured-images = genesiscloud.Images({\n filter: {\n type: \"preconfigured\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_genesiscloud as genesiscloud\n\ncloud_images = genesiscloud.images(filter={\n \"type\": \"cloud-image\",\n})\nsnapshots = genesiscloud.images(filter={\n \"region\": \"NORD-NO-KRS-1\",\n \"type\": \"snapshot\",\n})\npreconfigured_images = genesiscloud.images(filter={\n \"type\": \"preconfigured\",\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Genesiscloud = Pulumi.Genesiscloud;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var cloud_images = Genesiscloud.Images.Invoke(new()\n {\n Filter = new Genesiscloud.Inputs.ImagesFilterInputArgs\n {\n Type = \"cloud-image\",\n },\n });\n\n var snapshots = Genesiscloud.Images.Invoke(new()\n {\n Filter = new Genesiscloud.Inputs.ImagesFilterInputArgs\n {\n Region = \"NORD-NO-KRS-1\",\n Type = \"snapshot\",\n },\n });\n\n var preconfigured_images = Genesiscloud.Images.Invoke(new()\n {\n Filter = new Genesiscloud.Inputs.ImagesFilterInputArgs\n {\n Type = \"preconfigured\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := genesiscloud.Images(ctx, \u0026genesiscloud.ImagesArgs{\n\t\t\tFilter: genesiscloud.ImagesFilter{\n\t\t\t\tType: \"cloud-image\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = genesiscloud.Images(ctx, \u0026genesiscloud.ImagesArgs{\n\t\t\tFilter: genesiscloud.ImagesFilter{\n\t\t\t\tRegion: pulumi.StringRef(\"NORD-NO-KRS-1\"),\n\t\t\t\tType: \"snapshot\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = genesiscloud.Images(ctx, \u0026genesiscloud.ImagesArgs{\n\t\t\tFilter: genesiscloud.ImagesFilter{\n\t\t\t\tType: \"preconfigured\",\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.genesiscloud.GenesiscloudFunctions;\nimport com.pulumi.genesiscloud.inputs.ImagesArgs;\nimport com.pulumi.genesiscloud.inputs.ImagesFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var cloud-images = GenesiscloudFunctions.Images(ImagesArgs.builder()\n .filter(ImagesFilterArgs.builder()\n .type(\"cloud-image\")\n .build())\n .build());\n\n final var snapshots = GenesiscloudFunctions.Images(ImagesArgs.builder()\n .filter(ImagesFilterArgs.builder()\n .region(\"NORD-NO-KRS-1\")\n .type(\"snapshot\")\n .build())\n .build());\n\n final var preconfigured-images = GenesiscloudFunctions.Images(ImagesArgs.builder()\n .filter(ImagesFilterArgs.builder()\n .type(\"preconfigured\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n cloud-images:\n fn::invoke:\n Function: genesiscloud:Images\n Arguments:\n filter:\n type: cloud-image\n snapshots:\n fn::invoke:\n Function: genesiscloud:Images\n Arguments:\n filter:\n region: NORD-NO-KRS-1\n type: snapshot\n preconfigured-images:\n fn::invoke:\n Function: genesiscloud:Images\n Arguments:\n filter:\n type: preconfigured\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","inputs":{"description":"A collection of arguments for invoking Images.\n","properties":{"filter":{"$ref":"#/types/genesiscloud:index/ImagesFilter:ImagesFilter"},"timeouts":{"$ref":"#/types/genesiscloud:index/ImagesTimeouts:ImagesTimeouts"}},"type":"object","required":["filter"]},"outputs":{"description":"A collection of values returned by Images.\n","properties":{"filter":{"$ref":"#/types/genesiscloud:index/ImagesFilter:ImagesFilter"},"id":{"type":"string"},"images":{"items":{"$ref":"#/types/genesiscloud:index/ImagesImage:ImagesImage"},"type":"array"},"timeouts":{"$ref":"#/types/genesiscloud:index/ImagesTimeouts:ImagesTimeouts"}},"required":["filter","id","images"],"type":"object"}}}} \ No newline at end of file diff --git a/provider/go.mod b/provider/go.mod index 72edfc4..f566118 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -1,40 +1,35 @@ module github.com/genesiscloud/pulumi-genesiscloud/provider -go 1.22.1 +go 1.23.1 replace github.com/genesiscloud/terraform-provider-genesiscloud/genesiscloudshim => ../genesiscloudshim require ( github.com/genesiscloud/terraform-provider-genesiscloud/genesiscloudshim v0.0.0 - github.com/pulumi/pulumi-terraform-bridge/pf v0.42.1 - github.com/pulumi/pulumi-terraform-bridge/v3 v3.89.1 + github.com/pulumi/pulumi-terraform-bridge/pf v0.46.0 + github.com/pulumi/pulumi-terraform-bridge/v3 v3.93.1 ) require ( - cloud.google.com/go v0.115.1 // indirect - cloud.google.com/go/auth v0.9.2 // indirect + cel.dev/expr v0.17.0 // indirect + cloud.google.com/go v0.116.0 // indirect + cloud.google.com/go/auth v0.9.9 // indirect cloud.google.com/go/auth/oauth2adapt v0.2.4 // indirect - cloud.google.com/go/compute/metadata v0.5.0 // indirect - cloud.google.com/go/iam v1.2.0 // indirect - cloud.google.com/go/kms v1.19.0 // indirect - cloud.google.com/go/logging v1.11.0 // indirect - cloud.google.com/go/longrunning v0.6.0 // indirect - cloud.google.com/go/storage v1.43.0 // indirect + cloud.google.com/go/compute/metadata v0.5.2 // indirect + cloud.google.com/go/iam v1.2.1 // indirect + cloud.google.com/go/monitoring v1.21.1 // indirect + cloud.google.com/go/storage v1.45.0 // indirect dario.cat/mergo v1.0.1 // indirect - github.com/Azure/azure-sdk-for-go/sdk/azcore v1.14.0 // indirect - github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.7.0 // indirect - github.com/Azure/azure-sdk-for-go/sdk/internal v1.10.0 // indirect - github.com/Azure/azure-sdk-for-go/sdk/keyvault/azkeys v0.10.0 // indirect - github.com/Azure/azure-sdk-for-go/sdk/keyvault/internal v0.7.1 // indirect - github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2 // indirect github.com/BurntSushi/toml v1.4.0 // indirect + github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.24.3 // indirect + github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.48.3 // indirect + github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.48.3 // indirect github.com/Masterminds/goutils v1.1.1 // indirect github.com/Masterminds/semver v1.5.0 // indirect github.com/Masterminds/semver/v3 v3.3.0 // indirect github.com/Masterminds/sprig/v3 v3.3.0 // indirect github.com/Microsoft/go-winio v0.6.2 // indirect - github.com/ProtonMail/go-crypto v1.1.0-alpha.5-proton // indirect - github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect + github.com/ProtonMail/go-crypto v1.1.0-beta.0-proton // indirect github.com/agext/levenshtein v1.2.3 // indirect github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect github.com/apparentlymart/go-cidr v1.1.0 // indirect @@ -44,62 +39,51 @@ require ( github.com/aws/aws-sdk-go v1.55.5 // indirect github.com/aws/aws-sdk-go-v2 v1.30.4 // indirect github.com/aws/aws-sdk-go-v2/config v1.27.31 // indirect - github.com/aws/aws-sdk-go-v2/credentials v1.17.30 // indirect - github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.12 // indirect - github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.16 // indirect - github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.16 // indirect - github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.4 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.18 // indirect github.com/aws/aws-sdk-go-v2/service/kms v1.35.5 // indirect - github.com/aws/aws-sdk-go-v2/service/sso v1.22.5 // indirect - github.com/aws/aws-sdk-go-v2/service/ssooidc v1.26.5 // indirect - github.com/aws/aws-sdk-go-v2/service/sts v1.30.5 // indirect github.com/aws/smithy-go v1.20.4 // indirect github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d // indirect github.com/bgentry/speakeasy v0.2.0 // indirect github.com/blang/semver v3.5.1+incompatible // indirect - github.com/cenkalti/backoff/v3 v3.2.2 // indirect - github.com/charmbracelet/bubbles v0.19.0 // indirect - github.com/charmbracelet/bubbletea v1.1.0 // indirect + github.com/census-instrumentation/opencensus-proto v0.4.1 // indirect + github.com/cespare/xxhash/v2 v2.3.0 // indirect + github.com/charmbracelet/bubbles v0.20.0 // indirect + github.com/charmbracelet/bubbletea v1.1.1 // indirect github.com/charmbracelet/lipgloss v0.13.0 // indirect - github.com/charmbracelet/x/ansi v0.2.3 // indirect + github.com/charmbracelet/x/ansi v0.3.2 // indirect github.com/charmbracelet/x/term v0.2.0 // indirect github.com/cheggaaa/pb v1.0.29 // indirect - github.com/cloudflare/circl v1.4.0 // indirect - github.com/cyphar/filepath-securejoin v0.3.1 // indirect + github.com/cloudflare/circl v1.5.0 // indirect + github.com/cncf/xds/go v0.0.0-20240905190251-b4127c9b8d78 // indirect + github.com/cyphar/filepath-securejoin v0.3.4 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/deckarep/golang-set/v2 v2.6.0 // indirect - github.com/deepmap/oapi-codegen v1.16.3 // indirect github.com/djherbis/times v1.6.0 // indirect - github.com/edsrzf/mmap-go v1.1.0 // indirect + github.com/edsrzf/mmap-go v1.2.0 // indirect github.com/emirpasic/gods v1.18.1 // indirect + github.com/envoyproxy/go-control-plane v0.13.1 // indirect + github.com/envoyproxy/protoc-gen-validate v1.1.0 // indirect github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect github.com/ettle/strcase v0.2.0 // indirect - github.com/fatih/color v1.17.0 // indirect + github.com/fatih/color v1.18.0 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect - github.com/genesiscloud/genesiscloud-go v1.0.9 // indirect - github.com/genesiscloud/terraform-provider-genesiscloud v1.1.9 // indirect + github.com/genesiscloud/genesiscloud-go v1.0.10-0.20241022190226-71944b796e82 // indirect + github.com/genesiscloud/terraform-provider-genesiscloud v1.1.10-0.20241022212603-eae223e224b7 // indirect github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect - github.com/go-git/go-billy/v5 v5.5.0 // indirect + github.com/go-git/go-billy/v5 v5.6.0 // indirect github.com/go-git/go-git/v5 v5.12.0 // indirect - github.com/go-jose/go-jose/v4 v4.0.4 // indirect github.com/go-logr/logr v1.4.2 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/go-test/deep v1.1.0 // indirect github.com/gofrs/uuid v4.4.0+incompatible // indirect github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang-jwt/jwt/v5 v5.2.1 // indirect github.com/golang/glog v1.2.2 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/golang/protobuf v1.5.4 // indirect - github.com/google/go-querystring v1.1.0 // indirect github.com/google/s2a-go v0.1.8 // indirect github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect github.com/google/uuid v1.6.0 // indirect - github.com/google/wire v0.6.0 // indirect - github.com/googleapis/enterprise-certificate-proxy v0.3.3 // indirect + github.com/googleapis/enterprise-certificate-proxy v0.3.4 // indirect github.com/googleapis/gax-go/v2 v2.13.0 // indirect github.com/gorilla/mux v1.8.1 // indirect github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 // indirect @@ -109,27 +93,22 @@ require ( github.com/hashicorp/go-getter v1.7.6 // indirect github.com/hashicorp/go-hclog v1.6.3 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect - github.com/hashicorp/go-plugin v1.6.1 // indirect + github.com/hashicorp/go-plugin v1.6.2 // indirect github.com/hashicorp/go-retryablehttp v0.7.7 // indirect - github.com/hashicorp/go-rootcerts v1.0.2 // indirect github.com/hashicorp/go-safetemp v1.0.0 // indirect - github.com/hashicorp/go-secure-stdlib/parseutil v0.1.8 // indirect - github.com/hashicorp/go-secure-stdlib/strutil v0.1.2 // indirect - github.com/hashicorp/go-sockaddr v1.0.6 // indirect github.com/hashicorp/go-uuid v1.0.3 // indirect github.com/hashicorp/go-version v1.7.0 // indirect github.com/hashicorp/hcl v1.0.1-vault-5 // indirect github.com/hashicorp/hcl/v2 v2.22.0 // indirect - github.com/hashicorp/hil v0.0.0-20240516195350-6a7d7e84a38e // indirect - github.com/hashicorp/terraform-plugin-framework v1.11.0 // indirect + github.com/hashicorp/hil v0.0.0-20240904173158-8334f91b2a4d // indirect + github.com/hashicorp/terraform-plugin-framework v1.12.0 // indirect github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 // indirect - github.com/hashicorp/terraform-plugin-framework-validators v0.13.0 // indirect - github.com/hashicorp/terraform-plugin-go v0.23.0 // indirect + github.com/hashicorp/terraform-plugin-framework-validators v0.14.0 // indirect + github.com/hashicorp/terraform-plugin-go v0.24.0 // indirect github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect github.com/hashicorp/terraform-registry-address v0.2.3 // indirect github.com/hashicorp/terraform-svchost v0.1.1 // indirect - github.com/hashicorp/vault/api v1.14.0 // indirect - github.com/hashicorp/yamux v0.1.1 // indirect + github.com/hashicorp/yamux v0.1.2 // indirect github.com/huandu/xstrings v1.5.0 // indirect github.com/iancoleman/strcase v0.3.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect @@ -137,8 +116,7 @@ require ( github.com/jmespath/go-jmespath v0.4.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/kevinburke/ssh_config v1.2.0 // indirect - github.com/klauspost/compress v1.17.9 // indirect - github.com/kylelemons/godebug v1.1.0 // indirect + github.com/klauspost/compress v1.17.11 // indirect github.com/lucasb-eyer/go-colorful v1.2.0 // indirect github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.20 // indirect @@ -159,6 +137,7 @@ require ( github.com/muesli/cancelreader v0.2.2 // indirect github.com/muesli/termenv v0.15.2 // indirect github.com/natefinch/atomic v1.0.1 // indirect + github.com/oapi-codegen/oapi-codegen/v2 v2.4.1 // indirect github.com/oapi-codegen/runtime v1.1.1 // indirect github.com/oklog/run v1.1.0 // indirect github.com/opentracing/basictracer-go v1.1.0 // indirect @@ -166,24 +145,22 @@ require ( github.com/pgavlin/fx v0.1.6 // indirect github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 // indirect github.com/pjbgf/sha1cd v0.3.0 // indirect - github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pkg/term v1.1.0 // indirect + github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect github.com/posener/complete v1.2.3 // indirect github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect - github.com/pulumi/esc v0.9.1 // indirect + github.com/pulumi/esc v0.10.0 // indirect github.com/pulumi/inflector v0.2.1 // indirect - github.com/pulumi/pulumi-java/pkg v0.15.0 // indirect - github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.8 // indirect - github.com/pulumi/pulumi-yaml v1.9.2 // indirect - github.com/pulumi/pulumi/pkg/v3 v3.130.0 // indirect - github.com/pulumi/pulumi/sdk/v3 v3.130.0 // indirect + github.com/pulumi/pulumi-java/pkg v0.16.1 // indirect + github.com/pulumi/pulumi-yaml v1.11.1 // indirect + github.com/pulumi/pulumi/pkg/v3 v3.137.0 // indirect + github.com/pulumi/pulumi/sdk/v3 v3.137.0 // indirect github.com/pulumi/schema-tools v0.1.2 // indirect github.com/rivo/uniseg v0.4.7 // indirect - github.com/rogpeppe/go-internal v1.12.0 // indirect + github.com/rogpeppe/go-internal v1.13.1 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect - github.com/ryanuber/go-glob v1.0.0 // indirect github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 // indirect github.com/segmentio/asm v1.2.0 // indirect @@ -195,10 +172,9 @@ require ( github.com/spf13/cast v1.7.0 // indirect github.com/spf13/cobra v1.8.1 // indirect github.com/spf13/pflag v1.0.5 // indirect - github.com/stretchr/testify v1.9.0 // indirect + github.com/stretchr/objx v0.5.2 // indirect github.com/teekennedy/goldmark-markdown v0.3.0 // indirect github.com/texttheater/golang-levenshtein v1.0.1 // indirect - github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 // indirect github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect github.com/uber/jaeger-lib v2.4.1+incompatible // indirect github.com/ulikunitz/xz v0.5.12 // indirect @@ -206,38 +182,40 @@ require ( github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect github.com/xanzy/ssh-agent v0.3.3 // indirect github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect - github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect - github.com/xeipuuv/gojsonschema v1.2.0 // indirect - github.com/yuin/goldmark v1.7.4 // indirect + github.com/yuin/goldmark v1.7.8 // indirect github.com/zclconf/go-cty v1.15.0 // indirect go.opencensus.io v0.24.0 // indirect - go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0 // indirect - go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0 // indirect - go.opentelemetry.io/otel v1.29.0 // indirect - go.opentelemetry.io/otel/metric v1.29.0 // indirect - go.opentelemetry.io/otel/trace v1.29.0 // indirect + go.opentelemetry.io/contrib/detectors/gcp v1.31.0 // indirect + go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.56.0 // indirect + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.56.0 // indirect + go.opentelemetry.io/otel v1.31.0 // indirect + go.opentelemetry.io/otel/metric v1.31.0 // indirect + go.opentelemetry.io/otel/sdk v1.31.0 // indirect + go.opentelemetry.io/otel/sdk/metric v1.31.0 // indirect + go.opentelemetry.io/otel/trace v1.31.0 // indirect go.uber.org/atomic v1.11.0 // indirect gocloud.dev v0.39.0 // indirect gocloud.dev/secrets/hashivault v0.39.0 // indirect - golang.org/x/crypto v0.26.0 // indirect - golang.org/x/exp v0.0.0-20240823005443-9b4947da3948 // indirect - golang.org/x/mod v0.20.0 // indirect - golang.org/x/net v0.28.0 // indirect - golang.org/x/oauth2 v0.22.0 // indirect + golang.org/x/crypto v0.28.0 // indirect + golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c // indirect + golang.org/x/mod v0.21.0 // indirect + golang.org/x/net v0.30.0 // indirect + golang.org/x/oauth2 v0.23.0 // indirect golang.org/x/sync v0.8.0 // indirect - golang.org/x/sys v0.24.0 // indirect - golang.org/x/term v0.23.0 // indirect - golang.org/x/text v0.17.0 // indirect - golang.org/x/time v0.6.0 // indirect - golang.org/x/tools v0.24.0 // indirect + golang.org/x/sys v0.26.0 // indirect + golang.org/x/term v0.25.0 // indirect + golang.org/x/text v0.19.0 // indirect + golang.org/x/time v0.7.0 // indirect + golang.org/x/tools v0.26.0 // indirect golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da // indirect - google.golang.org/api v0.195.0 // indirect - google.golang.org/genproto v0.0.0-20240827150818-7e3bb234dfed // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20240827150818-7e3bb234dfed // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240827150818-7e3bb234dfed // indirect - google.golang.org/grpc v1.66.0 // indirect - google.golang.org/protobuf v1.34.2 // indirect + google.golang.org/api v0.202.0 // indirect + google.golang.org/genproto v0.0.0-20241021214115-324edc3d5d38 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20241021214115-324edc3d5d38 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38 // indirect + google.golang.org/grpc v1.67.1 // indirect + google.golang.org/grpc/stats/opentelemetry v0.0.0-20241022174616-4bb0170ac65f // indirect + google.golang.org/protobuf v1.35.1 // indirect gopkg.in/warnings.v0 v0.1.2 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - lukechampine.com/frand v1.4.2 // indirect + lukechampine.com/frand v1.5.1 // indirect ) diff --git a/provider/go.sum b/provider/go.sum index 554c1d3..cb50de9 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -1,3 +1,5 @@ +cel.dev/expr v0.17.0 h1:ZM6IQenopt1QQMYYXpqeHn7R9iKWyyC/9kAp9ifXOCI= +cel.dev/expr v0.17.0/go.mod h1:HCwbrn+qQoHPXgfz6cl2J0hDybnX2N1sQQkl9EggXx8= cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.38.0/go.mod h1:990N+gfupTy94rShfmMCWGDn0LpTmnzTp2qbd1dvSRU= @@ -30,8 +32,8 @@ cloud.google.com/go v0.100.2/go.mod h1:4Xra9TjzAeYHrl5+oeLlzbM2k3mjVhZh4UqTZ//w9 cloud.google.com/go v0.102.0/go.mod h1:oWcCzKlqJ5zgHQt9YsaeTY9KzIvjyy0ArmiBUgpQ+nc= cloud.google.com/go v0.102.1/go.mod h1:XZ77E9qnTEnrgEOvr4xzfdX5TRo7fB4T2F4O6+34hIU= cloud.google.com/go v0.104.0/go.mod h1:OO6xxXdJyvuJPcEPBLN9BJPD+jep5G1+2U5B5gkRYtA= -cloud.google.com/go v0.115.1 h1:Jo0SM9cQnSkYfp44+v+NQXHpcHqlnRJk2qxh6yvxxxQ= -cloud.google.com/go v0.115.1/go.mod h1:DuujITeaufu3gL68/lOFIirVNJwQeyf5UXyi+Wbgknc= +cloud.google.com/go v0.116.0 h1:B3fRrSDkLRt5qSHWe40ERJvhvnQwdZiHu0bJOpldweE= +cloud.google.com/go v0.116.0/go.mod h1:cEPSRWPzZEswwdr9BxE6ChEn01dWlTaF05LiC2Xs70U= cloud.google.com/go/aiplatform v1.22.0/go.mod h1:ig5Nct50bZlzV6NvKaTwmplLLddFx0YReh9WfTO5jKw= cloud.google.com/go/aiplatform v1.24.0/go.mod h1:67UUvRBKG6GTayHKV8DBv2RtR1t93YRu5B1P3x99mYY= cloud.google.com/go/analytics v0.11.0/go.mod h1:DjEWCu41bVbYcKyvlws9Er60YE4a//bK6mnhWvQeFNI= @@ -46,8 +48,8 @@ cloud.google.com/go/asset v1.8.0/go.mod h1:mUNGKhiqIdbr8X7KNayoYvyc4HbbFO9URsjby cloud.google.com/go/assuredworkloads v1.5.0/go.mod h1:n8HOZ6pff6re5KYfBXcFvSViQjDwxFkAkmUFffJRbbY= cloud.google.com/go/assuredworkloads v1.6.0/go.mod h1:yo2YOk37Yc89Rsd5QMVECvjaMKymF9OP+QXWlKXUkXw= cloud.google.com/go/assuredworkloads v1.7.0/go.mod h1:z/736/oNmtGAyU47reJgGN+KVoYoxeLBoj4XkKYscNI= -cloud.google.com/go/auth v0.9.2 h1:I+Rq388FYU8QdbVB1IiPd+6KNdrqtAPE/asiKHShBLM= -cloud.google.com/go/auth v0.9.2/go.mod h1:7z6VY+7h3KUdRov5F1i8NDP5ZzWKYmEPO842BgCsmTk= +cloud.google.com/go/auth v0.9.9 h1:BmtbpNQozo8ZwW2t7QJjnrQtdganSdmqeIBxHxNkEZQ= +cloud.google.com/go/auth v0.9.9/go.mod h1:xxA5AqpDrvS+Gkmo9RqrGGRh6WSNKKOXhY3zNOr38tI= cloud.google.com/go/auth/oauth2adapt v0.2.4 h1:0GWE/FUsXhf6C+jAkWgYm7X9tK8cuEIfy19DBn6B6bY= cloud.google.com/go/auth/oauth2adapt v0.2.4/go.mod h1:jC/jOpwFP6JBxhB3P5Rr0a9HLMC/Pe3eaL4NmdvqPtc= cloud.google.com/go/automl v1.5.0/go.mod h1:34EjfoFGMZ5sgJ9EoLsRtdPSNZLcfflJR39VbVNS2M0= @@ -72,8 +74,8 @@ cloud.google.com/go/compute v1.6.0/go.mod h1:T29tfhtVbq1wvAPo0E3+7vhgmkOYeXjhFvz cloud.google.com/go/compute v1.6.1/go.mod h1:g85FgpzFvNULZ+S8AYq87axRKuf2Kh7deLqV/jJ3thU= cloud.google.com/go/compute v1.7.0/go.mod h1:435lt8av5oL9P3fv1OEzSbSUe+ybHXGMPQHHZWZxy9U= cloud.google.com/go/compute v1.10.0/go.mod h1:ER5CLbMxl90o2jtNbGSbtfOpQKR0t15FOtRsugnLrlU= -cloud.google.com/go/compute/metadata v0.5.0 h1:Zr0eK8JbFv6+Wi4ilXAR8FJ3wyNdpxHKJNPos6LTZOY= -cloud.google.com/go/compute/metadata v0.5.0/go.mod h1:aHnloV2TPI38yx4s9+wAZhHykWvVCfu7hQbF+9CWoiY= +cloud.google.com/go/compute/metadata v0.5.2 h1:UxK4uu/Tn+I3p2dYWTfiX4wva7aYlKixAHn3fyqngqo= +cloud.google.com/go/compute/metadata v0.5.2/go.mod h1:C66sj2AluDcIqakBq/M8lw8/ybHgOZqin2obFxa/E5k= cloud.google.com/go/containeranalysis v0.5.1/go.mod h1:1D92jd8gRR/c0fGMlymRgxWD3Qw9C1ff6/T7mLgVL8I= cloud.google.com/go/containeranalysis v0.6.0/go.mod h1:HEJoiEIu+lEXM+k7+qLCci0h33lX3ZqoYFdmPcoO7s4= cloud.google.com/go/datacatalog v1.3.0/go.mod h1:g9svFY6tuR+j+hrTw3J2dNcmI0dzmSiyOzm8kpLq0a0= @@ -111,24 +113,26 @@ cloud.google.com/go/gkehub v0.10.0/go.mod h1:UIPwxI0DsrpsVoWpLB0stwKCP+WFVG9+y97 cloud.google.com/go/grafeas v0.2.0/go.mod h1:KhxgtF2hb0P191HlY5besjYm6MqTSTj3LSI+M+ByZHc= cloud.google.com/go/iam v0.3.0/go.mod h1:XzJPvDayI+9zsASAFO68Hk07u3z+f+JrT2xXNdp4bnY= cloud.google.com/go/iam v0.5.0/go.mod h1:wPU9Vt0P4UmCux7mqtRu6jcpPAb74cP1fh50J3QpkUc= -cloud.google.com/go/iam v1.2.0 h1:kZKMKVNk/IsSSc/udOb83K0hL/Yh/Gcqpz+oAkoIFN8= -cloud.google.com/go/iam v1.2.0/go.mod h1:zITGuWgsLZxd8OwAlX+eMFgZDXzBm7icj1PVTYG766Q= -cloud.google.com/go/kms v1.19.0 h1:x0OVJDl6UH1BSX4THKlMfdcFWoE4ruh90ZHuilZekrU= -cloud.google.com/go/kms v1.19.0/go.mod h1:e4imokuPJUc17Trz2s6lEXFDt8bgDmvpVynH39bdrHM= +cloud.google.com/go/iam v1.2.1 h1:QFct02HRb7H12J/3utj0qf5tobFh9V4vR6h9eX5EBRU= +cloud.google.com/go/iam v1.2.1/go.mod h1:3VUIJDPpwT6p/amXRC5GY8fCCh70lxPygguVtI0Z4/g= +cloud.google.com/go/kms v1.20.0 h1:uKUvjGqbBlI96xGE669hcVnEMw1Px/Mvfa62dhM5UrY= +cloud.google.com/go/kms v1.20.0/go.mod h1:/dMbFF1tLLFnQV44AoI2GlotbjowyUfgVwezxW291fM= cloud.google.com/go/language v1.4.0/go.mod h1:F9dRpNFQmJbkaop6g0JhSBXCNlO90e1KWx5iDdxbWic= cloud.google.com/go/language v1.6.0/go.mod h1:6dJ8t3B+lUYfStgls25GusK04NLh3eDLQnWM3mdEbhI= cloud.google.com/go/lifesciences v0.5.0/go.mod h1:3oIKy8ycWGPUyZDR/8RNnTOYevhaMLqh5vLUXs9zvT8= cloud.google.com/go/lifesciences v0.6.0/go.mod h1:ddj6tSX/7BOnhxCSd3ZcETvtNr8NZ6t/iPhY2Tyfu08= -cloud.google.com/go/logging v1.11.0 h1:v3ktVzXMV7CwHq1MBF65wcqLMA7i+z3YxbUsoK7mOKs= -cloud.google.com/go/logging v1.11.0/go.mod h1:5LDiJC/RxTt+fHc1LAt20R9TKiUTReDg6RuuFOZ67+A= -cloud.google.com/go/longrunning v0.6.0 h1:mM1ZmaNsQsnb+5n1DNPeL0KwQd9jQRqSqSDEkBZr+aI= -cloud.google.com/go/longrunning v0.6.0/go.mod h1:uHzSZqW89h7/pasCWNYdUpwGz3PcVWhrWupreVPYLts= +cloud.google.com/go/logging v1.12.0 h1:ex1igYcGFd4S/RZWOCU51StlIEuey5bjqwH9ZYjHibk= +cloud.google.com/go/logging v1.12.0/go.mod h1:wwYBt5HlYP1InnrtYI0wtwttpVU1rifnMT7RejksUAM= +cloud.google.com/go/longrunning v0.6.1 h1:lOLTFxYpr8hcRtcwWir5ITh1PAKUD/sG2lKrTSYjyMc= +cloud.google.com/go/longrunning v0.6.1/go.mod h1:nHISoOZpBcmlwbJmiVk5oDRz0qG/ZxPynEGs1iZ79s0= cloud.google.com/go/mediatranslation v0.5.0/go.mod h1:jGPUhGTybqsPQn91pNXw0xVHfuJ3leR1wj37oU3y1f4= cloud.google.com/go/mediatranslation v0.6.0/go.mod h1:hHdBCTYNigsBxshbznuIMFNe5QXEowAuNmmC7h8pu5w= cloud.google.com/go/memcache v1.4.0/go.mod h1:rTOfiGZtJX1AaFUrOgsMHX5kAzaTQ8azHiuDoTPzNsE= cloud.google.com/go/memcache v1.5.0/go.mod h1:dk3fCK7dVo0cUU2c36jKb4VqKPS22BTkf81Xq617aWM= cloud.google.com/go/metastore v1.5.0/go.mod h1:2ZNrDcQwghfdtCwJ33nM0+GrBGlVuh8rakL3vdPY3XY= cloud.google.com/go/metastore v1.6.0/go.mod h1:6cyQTls8CWXzk45G55x57DVQ9gWg7RiH65+YgPsNh9s= +cloud.google.com/go/monitoring v1.21.1 h1:zWtbIoBMnU5LP9A/fz8LmWMGHpk4skdfeiaa66QdFGc= +cloud.google.com/go/monitoring v1.21.1/go.mod h1:Rj++LKrlht9uBi8+Eb530dIrzG/cU/lB8mt+lbeFK1c= cloud.google.com/go/networkconnectivity v1.4.0/go.mod h1:nOl7YL8odKyAOtzNX73/M5/mGZgqqMeryi6UPZTk/rA= cloud.google.com/go/networkconnectivity v1.5.0/go.mod h1:3GzqJx7uhtlM3kln0+x5wyFvuVH1pIBJjhCpjzSt75o= cloud.google.com/go/networksecurity v0.5.0/go.mod h1:xS6fOCoqpVC5zx15Z/MqkfDwH4+m/61A3ODiDV1xmiQ= @@ -179,10 +183,12 @@ cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9 cloud.google.com/go/storage v1.22.1/go.mod h1:S8N1cAStu7BOeFfE8KAQzmyyLkK8p/vmRq6kuBTW58Y= cloud.google.com/go/storage v1.23.0/go.mod h1:vOEEDNFnciUMhBeT6hsJIn3ieU5cFRmzeLgDvXzfIXc= cloud.google.com/go/storage v1.27.0/go.mod h1:x9DOL8TK/ygDUMieqwfhdpQryTeEkhGKMi80i/iqR2s= -cloud.google.com/go/storage v1.43.0 h1:CcxnSohZwizt4LCzQHWvBf1/kvtHUn7gk9QERXPyXFs= -cloud.google.com/go/storage v1.43.0/go.mod h1:ajvxEa7WmZS1PxvKRq4bq0tFT3vMd502JwstCcYv0Q0= +cloud.google.com/go/storage v1.45.0 h1:5av0QcIVj77t+44mV4gffFC/LscFRUhto6UBMB5SimM= +cloud.google.com/go/storage v1.45.0/go.mod h1:wpPblkIuMP5jCB/E48Pz9zIo2S/zD8g+ITmxKkPCITE= cloud.google.com/go/talent v1.1.0/go.mod h1:Vl4pt9jiHKvOgF9KoZo6Kob9oV4lwd/ZD5Cto54zDRw= cloud.google.com/go/talent v1.2.0/go.mod h1:MoNF9bhFQbiJ6eFD3uSsg0uBALw4n4gaCaEjBw9zo8g= +cloud.google.com/go/trace v1.11.1 h1:UNqdP+HYYtnm6lb91aNA5JQ0X14GnxkABGlfz2PzPew= +cloud.google.com/go/trace v1.11.1/go.mod h1:IQKNQuBzH72EGaXEodKlNJrWykGZxet2zgjtS60OtjA= cloud.google.com/go/videointelligence v1.6.0/go.mod h1:w0DIDlVRKtwPCn/C4iwZIJdvC69yInhW0cfi+p546uU= cloud.google.com/go/videointelligence v1.7.0/go.mod h1:k8pI/1wAhjznARtVT9U1llUaFNPh7muw8QyOUpavru4= cloud.google.com/go/vision v1.2.0/go.mod h1:SmNwgObm5DpFBme2xpyOyasvBc1aPdjvMk2bBk0tKD0= @@ -211,6 +217,14 @@ github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03 github.com/BurntSushi/toml v1.4.0 h1:kuoIxZQy2WRRk1pttg9asf+WVv6tWQuBNVmK8+nqPr0= github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.24.3 h1:cb3br57K508pQEFgBxn9GDhPS9HefpyMPK1RzmtMNzk= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.24.3/go.mod h1:itPGVDKf9cC/ov4MdvJ2QZ0khw4bfoo9jzwTJlaxy2k= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.48.3 h1:xir5X8TS8UBVPWg2jHL+cSTf0jZgqYQSA54TscSt1/0= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.48.3/go.mod h1:SsdWig2J5PMnfMvfJuEb1uZa8Y+kvNyvrULFo69gTFk= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/cloudmock v0.48.3 h1:Nl7phYyHjnqofWDpD+6FYdiwtNIxebn0AHLry7Sxb0M= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/cloudmock v0.48.3/go.mod h1:pNP/L2wDlaQnQlFvkDKGSruDoYRpmAxB6drgsskfYwg= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.48.3 h1:2vcVkrNdSMJpoOVAWi9ApsQR5iqNeFGt5Qx8Xlt3IoI= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.48.3/go.mod h1:wRbFgBQUVm1YXrvWKofAEmq9HNJTDphbAaJSSX01KUI= github.com/HdrHistogram/hdrhistogram-go v1.1.2 h1:5IcZpTvzydCQeHzK4Ef/D5rrSqwxob0t8PQPMybUNFM= github.com/HdrHistogram/hdrhistogram-go v1.1.2/go.mod h1:yDgFjdqOqDEKOvasDdhWNXYg9BVp4O+o5f6V/ehm6Oo= github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI= @@ -227,11 +241,9 @@ github.com/Microsoft/go-winio v0.5.2/go.mod h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY= github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= -github.com/ProtonMail/go-crypto v1.1.0-alpha.5-proton h1:KVBEgU3CJpmzLChnLiSuEyCuhGhcMt3eOST+7A+ckto= -github.com/ProtonMail/go-crypto v1.1.0-alpha.5-proton/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= +github.com/ProtonMail/go-crypto v1.1.0-beta.0-proton h1:ZGewsAoeSirbUS5cO8L0FMQA+iSop9xR1nmFYifDBPo= +github.com/ProtonMail/go-crypto v1.1.0-beta.0-proton/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= github.com/RaveNoX/go-jsoncommentstrip v1.0.0/go.mod h1:78ihd09MekBnJnxpICcwzCMzGrKSKYe4AqU6PDYYpjk= -github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da h1:KjTM2ks9d14ZYCvmHS9iAKVt9AyzRSqNU1qabPih5BY= -github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da/go.mod h1:eHEWzANqSiWQsof+nXEI9bUVUyV6F53Fp89EuCh2EAA= github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo= github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFIImctFaOjnTIavg87rW78vTPkQqLI8= @@ -256,38 +268,24 @@ github.com/aws/aws-sdk-go v1.55.5 h1:KKUZBfBoyqy5d3swXyiC7Q76ic40rYcbqH7qjh59kzU github.com/aws/aws-sdk-go v1.55.5/go.mod h1:eRwEWoyTWFMVYVQzKMNHWP5/RV4xIUGMQfXQHfHkpNU= github.com/aws/aws-sdk-go-v2 v1.30.4 h1:frhcagrVNrzmT95RJImMHgabt99vkXGslubDaDagTk8= github.com/aws/aws-sdk-go-v2 v1.30.4/go.mod h1:CT+ZPWXbYrci8chcARI3OmI/qgd+f6WtuLOoaIA8PR0= -github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.3 h1:tW1/Rkad38LA15X4UQtjXZXNKsCgkshC3EbmcUmghTg= -github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.3/go.mod h1:UbnqO+zjqk3uIt9yCACHJ9IVNhyhOCnYk8yA19SAWrM= github.com/aws/aws-sdk-go-v2/config v1.27.31 h1:kxBoRsjhT3pq0cKthgj6RU6bXTm/2SgdoUMyrVw0rAI= github.com/aws/aws-sdk-go-v2/config v1.27.31/go.mod h1:z04nZdSWFPaDwK3DdJOG2r+scLQzMYuJeW0CujEm9FM= github.com/aws/aws-sdk-go-v2/credentials v1.17.30 h1:aau/oYFtibVovr2rDt8FHlU17BTicFEMAi29V1U+L5Q= github.com/aws/aws-sdk-go-v2/credentials v1.17.30/go.mod h1:BPJ/yXV92ZVq6G8uYvbU0gSl8q94UB63nMT5ctNO38g= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.12 h1:yjwoSyDZF8Jth+mUk5lSPJCkMC0lMy6FaCD51jm6ayE= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.12/go.mod h1:fuR57fAgMk7ot3WcNQfb6rSEn+SUffl7ri+aa8uKysI= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.10 h1:zeN9UtUlA6FTx0vFSayxSX32HDw73Yb6Hh2izDSFxXY= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.10/go.mod h1:3HKuexPDcwLWPaqpW2UR/9n8N/u/3CKcGAzSs8p8u8g= github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.16 h1:TNyt/+X43KJ9IJJMjKfa3bNTiZbUP7DeCxfbTROESwY= github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.16/go.mod h1:2DwJF39FlNAUiX5pAc0UNeiz16lK2t7IaFcm0LFHEgc= github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.16 h1:jYfy8UPmd+6kJW5YhY0L1/KftReOGxI/4NtVSTh9O/I= github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.16/go.mod h1:7ZfEPZxkW42Afq4uQB8H2E2e6ebh6mXTueEpYzjCzcs= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 h1:VaRN3TlFdd6KxX1x3ILT5ynH6HvKgqdiXoTxAF4HQcQ= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1/go.mod h1:FbtygfRFze9usAadmnGJNc8KsP346kEe+y2/oyhGAGc= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.15 h1:Z5r7SycxmSllHYmaAZPpmN8GviDrSGhMS6bldqtXZPw= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.15/go.mod h1:CetW7bDE00QoGEmPUoZuRog07SGVAUVW6LFpNP0YfIg= -github.com/aws/aws-sdk-go-v2/service/iam v1.31.4 h1:eVm30ZIDv//r6Aogat9I88b5YX1xASSLcEDqHYRPVl0= -github.com/aws/aws-sdk-go-v2/service/iam v1.31.4/go.mod h1:aXWImQV0uTW35LM0A/T4wEg6R1/ReXUu4SM6/lUHYK0= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.4 h1:KypMCbLPPHEmf9DgMGw51jMj77VfGPAN2Kv4cfhlfgI= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.4/go.mod h1:Vz1JQXliGcQktFTN/LN6uGppAIRoLBR2bMvIMP0gOjc= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.17 h1:YPYe6ZmvUfDDDELqEKtAd6bo8zxhkm+XEFEzQisqUIE= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.17/go.mod h1:oBtcnYua/CgzCWYN7NZ5j7PotFDaFSUjCYVTtfyn7vw= github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.18 h1:tJ5RnkHCiSH0jyd6gROjlJtNwov0eGYNz8s8nFcR0jQ= github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.18/go.mod h1:++NHzT+nAF7ZPrHPsA+ENvsXkOO8wEu+C6RXltAG4/c= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.15 h1:246A4lSTXWJw/rmlQI+TT2OcqeDMKBdyjEQrafMaQdA= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.15/go.mod h1:haVfg3761/WF7YPuJOER2MP0k4UAXyHaLclKXB6usDg= github.com/aws/aws-sdk-go-v2/service/kms v1.35.5 h1:XUomV7SiclZl1QuXORdGcfFqHxEHET7rmNGtxTfNB+M= github.com/aws/aws-sdk-go-v2/service/kms v1.35.5/go.mod h1:A5CS0VRmxxj2YKYLCY08l/Zzbd01m6JZn0WzxgT1OCA= -github.com/aws/aws-sdk-go-v2/service/s3 v1.58.3 h1:hT8ZAZRIfqBqHbzKTII+CIiY8G2oC9OpLedkZ51DWl8= -github.com/aws/aws-sdk-go-v2/service/s3 v1.58.3/go.mod h1:Lcxzg5rojyVPU/0eFwLtcyTaek/6Mtic5B1gJo7e/zE= github.com/aws/aws-sdk-go-v2/service/sso v1.22.5 h1:zCsFCKvbj25i7p1u94imVoO447I/sFv8qq+lGJhRN0c= github.com/aws/aws-sdk-go-v2/service/sso v1.22.5/go.mod h1:ZeDX1SnKsVlejeuz41GiajjZpRSWR7/42q/EyA/QEiM= github.com/aws/aws-sdk-go-v2/service/ssooidc v1.26.5 h1:SKvPgvdvmiTWoi0GAJ7AsJfOz3ngVkD/ERbs5pUnHNI= @@ -311,16 +309,20 @@ github.com/bufbuild/protocompile v0.4.0/go.mod h1:3v93+mbWn/v3xzN+31nwkJfrEpAUwp github.com/cenkalti/backoff/v3 v3.2.2 h1:cfUAAO3yvKMYKPrvhDuHSwQnhZNk/RMHKdZqKTxfm6M= github.com/cenkalti/backoff/v3 v3.2.2/go.mod h1:cIeZDE3IrqwwJl6VUwCN6trj1oXrTS4rc0ij+ULvLYs= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/census-instrumentation/opencensus-proto v0.4.1 h1:iKLQ0xPNFxR/2hzXZMrBo8f1j86j5WHzznCCQxV/b8g= +github.com/census-instrumentation/opencensus-proto v0.4.1/go.mod h1:4T9NM4+4Vw91VeyqjLS6ao50K5bOcLKN6Q42XnYaRYw= github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/charmbracelet/bubbles v0.19.0 h1:gKZkKXPP6GlDk6EcfujDK19PCQqRjaJZQ7QRERx1UF0= -github.com/charmbracelet/bubbles v0.19.0/go.mod h1:WILteEqZ+krG5c3ntGEMeG99nCupcuIk7V0/zOP0tOA= -github.com/charmbracelet/bubbletea v1.1.0 h1:FjAl9eAL3HBCHenhz/ZPjkKdScmaS5SK69JAK2YJK9c= -github.com/charmbracelet/bubbletea v1.1.0/go.mod h1:9Ogk0HrdbHolIKHdjfFpyXJmiCzGwy+FesYkZr7hYU4= +github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= +github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/charmbracelet/bubbles v0.20.0 h1:jSZu6qD8cRQ6k9OMfR1WlM+ruM8fkPWkHvQWD9LIutE= +github.com/charmbracelet/bubbles v0.20.0/go.mod h1:39slydyswPy+uVOHZ5x/GjwVAFkCsV8IIVy+4MhzwwU= +github.com/charmbracelet/bubbletea v1.1.1 h1:KJ2/DnmpfqFtDNVTvYZ6zpPFL9iRCRr0qqKOCvppbPY= +github.com/charmbracelet/bubbletea v1.1.1/go.mod h1:9Ogk0HrdbHolIKHdjfFpyXJmiCzGwy+FesYkZr7hYU4= github.com/charmbracelet/lipgloss v0.13.0 h1:4X3PPeoWEDCMvzDvGmTajSyYPcZM4+y8sCA/SsA3cjw= github.com/charmbracelet/lipgloss v0.13.0/go.mod h1:nw4zy0SBX/F/eAO1cWdcvy6qnkDUxr8Lw7dvFrAIbbY= -github.com/charmbracelet/x/ansi v0.2.3 h1:VfFN0NUpcjBRd4DnKfRaIRo53KRgey/nhOoEqosGDEY= -github.com/charmbracelet/x/ansi v0.2.3/go.mod h1:dk73KoMTT5AX5BsX0KrqhsTqAnhZZoCBjs7dGWp4Ktw= +github.com/charmbracelet/x/ansi v0.3.2 h1:wsEwgAN+C9U06l9dCVMX0/L3x7ptvY1qmjMwyfE6USY= +github.com/charmbracelet/x/ansi v0.3.2/go.mod h1:dk73KoMTT5AX5BsX0KrqhsTqAnhZZoCBjs7dGWp4Ktw= github.com/charmbracelet/x/term v0.2.0 h1:cNB9Ot9q8I711MyZ7myUR5HFWL/lc3OpU8jZ4hwm0x0= github.com/charmbracelet/x/term v0.2.0/go.mod h1:GVxgxAbjUrmpvIINHIQnJJKpMlHiZ4cktEQCN6GWyF0= github.com/cheggaaa/pb v1.0.27/go.mod h1:pQciLPpbU0oxA0h+VJYYLxO+XeDQb5pZijXscXHm81s= @@ -330,8 +332,8 @@ github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWR github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= -github.com/cloudflare/circl v1.4.0 h1:BV7h5MgrktNzytKmWjpOtdYrf0lkkbF8YMlBGPhJQrY= -github.com/cloudflare/circl v1.4.0/go.mod h1:PDRU+oXvdD7KCtgKxW95M5Z8BpSCJXQORiZFnBQS5QU= +github.com/cloudflare/circl v1.5.0 h1:hxIWksrX6XN5a1L2TI/h53AGPhNHoUBo+TD1ms9+pys= +github.com/cloudflare/circl v1.5.0/go.mod h1:uddAzsPgqdMAYatqJ0lsjX1oECcQLIlRpzZh3pJrofs= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= @@ -341,21 +343,21 @@ github.com/cncf/xds/go v0.0.0-20210805033703-aa0b78936158/go.mod h1:eXthEFrGJvWH github.com/cncf/xds/go v0.0.0-20210922020428-25de7278fc84/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20211001041855-01bcc9b48dfe/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20240905190251-b4127c9b8d78 h1:QVw89YDxXxEe+l8gU8ETbOasdwEV+avkR75ZzsVV9WI= +github.com/cncf/xds/go v0.0.0-20240905190251-b4127c9b8d78/go.mod h1:W+zGtBO5Y1IgJhy4+A9GOqVhqLpfZi+vwmdNXUehLA8= github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= -github.com/cyphar/filepath-securejoin v0.3.1 h1:1V7cHiaW+C+39wEfpH6XlLBQo3j/PciWFrgfCLS8XrE= -github.com/cyphar/filepath-securejoin v0.3.1/go.mod h1:F7i41x/9cBF7lzCrVsYs9fuzwRZm4NQsGTBdpp6mETc= +github.com/cyphar/filepath-securejoin v0.3.4 h1:VBWugsJh2ZxJmLFSM06/0qzQyiQX2Qs0ViKrUAcqdZ8= +github.com/cyphar/filepath-securejoin v0.3.4/go.mod h1:8s/MCNJREmFK0H02MF6Ihv1nakJe4L/w3WZLHNkvlYM= 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/deckarep/golang-set/v2 v2.6.0 h1:XfcQbWM1LlMB8BsJ8N9vW5ehnnPVIw0je80NsVHagjM= github.com/deckarep/golang-set/v2 v2.6.0/go.mod h1:VAky9rY/yGXJOLEDv3OMci+7wtDpOF4IN+y82NBOac4= -github.com/deepmap/oapi-codegen v1.16.3 h1:GT9G86SbQtT1r8ZB+4Cybi9VGdu1P5ieNvNdEoCSbrA= -github.com/deepmap/oapi-codegen v1.16.3/go.mod h1:JD6ErqeX0nYnhdciLc61Konj3NBASREMlkHOgHn8WAM= github.com/djherbis/times v1.6.0 h1:w2ctJ92J8fBvWPxugmXIv7Nz7Q3iDMKNx9v5ocVH20c= github.com/djherbis/times v1.6.0/go.mod h1:gOHeRAz2h+VJNZ5Gmc/o7iD9k4wW7NMVqieYCY99oc0= -github.com/edsrzf/mmap-go v1.1.0 h1:6EUwBLQ/Mcr1EYLE4Tn1VdW1A4ckqCQWZBw8Hr0kjpQ= -github.com/edsrzf/mmap-go v1.1.0/go.mod h1:19H/e8pUPLicwkyNgOykDXkJ9F0MHE+Z52B8EIth78Q= +github.com/edsrzf/mmap-go v1.2.0 h1:hXLYlkbaPzt1SaQk+anYwKSRNhufIDCchSPkUD6dD84= +github.com/edsrzf/mmap-go v1.2.0/go.mod h1:19H/e8pUPLicwkyNgOykDXkJ9F0MHE+Z52B8EIth78Q= github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a h1:mATvB/9r/3gvcejNsXKSkQ6lcIaNec2nyfOdlTBR2lU= github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM= github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc= @@ -369,7 +371,11 @@ github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.m github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= github.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0= github.com/envoyproxy/go-control-plane v0.10.2-0.20220325020618-49ff273808a1/go.mod h1:KJwIaB5Mv44NWtYuAOFCVOjcI94vtpEz2JU/D2v6IjE= +github.com/envoyproxy/go-control-plane v0.13.1 h1:vPfJZCkob6yTMEgS+0TwfTUfbHjfy/6vOJ8hUWX/uXE= +github.com/envoyproxy/go-control-plane v0.13.1/go.mod h1:X45hY0mufo6Fd0KW3rqsGvQMw58jvjymeCzBU3mWyHw= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/envoyproxy/protoc-gen-validate v1.1.0 h1:tntQDh69XqOCOZsDz0lVJQez/2L6Uu2PdjCQwWCJ3bM= +github.com/envoyproxy/protoc-gen-validate v1.1.0/go.mod h1:sXRDRVmzEbkM7CVcM06s9shE/m23dg3wzjl0UWqJ2q4= github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f h1:Y/CXytFA4m6baUTXGLOoWe4PQhGxaX0KpnayAqC48p4= github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f/go.mod h1:vw97MGsxSvLiUE2X8qFplwetxpGLQrlU1Q9AUEIzCaM= github.com/ettle/strcase v0.2.0 h1:fGNiVF21fHXpX1niBgk0aROov1LagYsOwV/xqKDKR/Q= @@ -377,23 +383,23 @@ github.com/ettle/strcase v0.2.0/go.mod h1:DajmHElDSaX76ITe3/VHVyMin4LWSJN5Z909Wp github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= -github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4= -github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI= +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/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= -github.com/genesiscloud/genesiscloud-go v1.0.9 h1:IiRBbO7yRZYz9pBJbRfc3DRiai666T12k/4PvhZXOTw= -github.com/genesiscloud/genesiscloud-go v1.0.9/go.mod h1:OAMjSCejQTC4BBLWXleegT/fg+X46SZ6t/vW9RPtXWg= -github.com/genesiscloud/terraform-provider-genesiscloud v1.1.9 h1:wzEXor1pR+5szD4QaTp6JEe8RoEMpk2cCfnBJg5NXGo= -github.com/genesiscloud/terraform-provider-genesiscloud v1.1.9/go.mod h1:ftCXet15d8GXHPiA3hdVPoZoWjUeXK9bTF210+/46tQ= +github.com/genesiscloud/genesiscloud-go v1.0.10-0.20241022190226-71944b796e82 h1:Z1NrACEKI5DihE0zAZ+oMmSfatEUzos6hzHOone1NJw= +github.com/genesiscloud/genesiscloud-go v1.0.10-0.20241022190226-71944b796e82/go.mod h1:t2m8sfDGOa8pFio3oitkkjW9YcajyxkiWEu+BHOLyes= +github.com/genesiscloud/terraform-provider-genesiscloud v1.1.10-0.20241022212603-eae223e224b7 h1:n5P4/OrxyjL2Mq+kxgjPM6OJVs9uDZuZRBbSoRB5tts= +github.com/genesiscloud/terraform-provider-genesiscloud v1.1.10-0.20241022212603-eae223e224b7/go.mod h1:4yAaUDKHcb8r0yiG8jDJmT2cMN4D9yd292IbKKIqJ2Y= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/gliderlabs/ssh v0.3.7 h1:iV3Bqi942d9huXnzEF2Mt+CY9gLu8DNM4Obd+8bODRE= github.com/gliderlabs/ssh v0.3.7/go.mod h1:zpHEXBstFnQYtGnB8k8kQLol82umzn/2/snG7alWVD8= github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI= github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic= -github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU= -github.com/go-git/go-billy/v5 v5.5.0/go.mod h1:hmexnoNsr2SJU1Ju67OaNz5ASJY3+sHgFRpCtpDCKow= +github.com/go-git/go-billy/v5 v5.6.0 h1:w2hPNtoehvJIxR00Vb4xX94qHQi/ApZfX+nBE2Cjio8= +github.com/go-git/go-billy/v5 v5.6.0/go.mod h1:sFDq7xD3fn3E0GOwUSZqHo9lrkmx8xJhA0ZrfvjBRGM= github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4= github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII= github.com/go-git/go-git/v5 v5.12.0 h1:7Md+ndsjrzZxbddRDZjF14qK+NN56sy6wkqaVrjZtys= @@ -476,10 +482,6 @@ github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8= github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= -github.com/google/go-replayers/grpcreplay v1.3.0 h1:1Keyy0m1sIpqstQmgz307zhiJ1pV4uIlFds5weTmxbo= -github.com/google/go-replayers/grpcreplay v1.3.0/go.mod h1:v6NgKtkijC0d3e3RW8il6Sy5sqRVUwoQa4mHOGEy8DI= -github.com/google/go-replayers/httpreplay v1.2.0 h1:VM1wEyyjaoU53BwrOnaf9VhAyQQEEioJvFYxYcLRKzk= -github.com/google/go-replayers/httpreplay v1.2.0/go.mod h1:WahEFFZZ7a1P4VM1qEeHy+tME4bwyqPcwWbNlUI1Mcg= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/martian v2.1.0+incompatible h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= @@ -507,7 +509,6 @@ github.com/google/s2a-go v0.1.8 h1:zZDs9gcbt9ZPLV0ndSyQk6Kacx2g/X+SKYovpnz3SMM= github.com/google/s2a-go v0.1.8/go.mod h1:6iNWHTpQ+nfNRN5E00MSdfDwVesa8hhS32PhPO8deJA= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= -github.com/google/subcommands v1.2.0/go.mod h1:ZjhPrFU+Olkh9WazFPsl27BQ4UPiG37m3yTrtFlrHVk= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -518,8 +519,8 @@ github.com/google/wire v0.6.0/go.mod h1:F4QhpQ9EDIdJ1Mbop/NZBRB+5yrR6qg3BnctaoUk github.com/googleapis/enterprise-certificate-proxy v0.0.0-20220520183353-fd19c99a87aa/go.mod h1:17drOmN3MwGY7t0e+Ei9b45FFGA3fBs3x36SsCg1hq8= github.com/googleapis/enterprise-certificate-proxy v0.1.0/go.mod h1:17drOmN3MwGY7t0e+Ei9b45FFGA3fBs3x36SsCg1hq8= github.com/googleapis/enterprise-certificate-proxy v0.2.0/go.mod h1:8C0jb7/mgJe/9KK8Lm7X9ctZC2t60YyIpYEI16jx0Qg= -github.com/googleapis/enterprise-certificate-proxy v0.3.3 h1:QRje2j5GZimBzlbhGA2V2QlGNgL8G6e+wGo/+/2bWI0= -github.com/googleapis/enterprise-certificate-proxy v0.3.3/go.mod h1:YKe7cfqYXjKGpGvmSg28/fFvhNzinZQm8DGnaburhGA= +github.com/googleapis/enterprise-certificate-proxy v0.3.4 h1:XYIDZApgAnrN1c855gTgghdIA6Stxb52D5RnLI1SLyw= +github.com/googleapis/enterprise-certificate-proxy v0.3.4/go.mod h1:YKe7cfqYXjKGpGvmSg28/fFvhNzinZQm8DGnaburhGA= github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/googleapis/gax-go/v2 v2.1.0/go.mod h1:Q3nei7sK6ybPYH7twZdmQpAd1MKb7pfu6SK+H1/DsU0= @@ -553,8 +554,8 @@ github.com/hashicorp/go-hclog v1.6.3/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVH github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= 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.1 h1:P7MR2UP6gNKGPp+y7EZw2kOiq4IR9WiqLvp0XOsVdwI= -github.com/hashicorp/go-plugin v1.6.1/go.mod h1:XPHFku2tFo3o3QKFgSYo+cghcUhw1NA1hZyMK0PWAw0= +github.com/hashicorp/go-plugin v1.6.2 h1:zdGAEd0V1lCaU0u+MxWQhtSDQmahpkwOun8U8EiRVog= +github.com/hashicorp/go-plugin v1.6.2/go.mod h1:CkgLQ5CZqNmdL9U9JzM532t8ZiYQ35+pj3b1FD37R0Q= 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-rootcerts v1.0.2 h1:jzhAVGtqPKbwpyCPELlgNWhE1znq+qwJtW5Oi2viEzc= @@ -580,22 +581,22 @@ github.com/hashicorp/hcl v1.0.1-vault-5 h1:kI3hhbbyzr4dldA8UdTb7ZlVVlI2DACdCfz31 github.com/hashicorp/hcl v1.0.1-vault-5/go.mod h1:XYhtn6ijBSAj6n4YqAaf7RBPS4I06AItNorpy+MoQNM= github.com/hashicorp/hcl/v2 v2.22.0 h1:hkZ3nCtqeJsDhPRFz5EA9iwcG1hNWGePOTw6oyul12M= github.com/hashicorp/hcl/v2 v2.22.0/go.mod h1:62ZYHrXgPoX8xBnzl8QzbWq4dyDsDtfCRgIq1rbJEvA= -github.com/hashicorp/hil v0.0.0-20240516195350-6a7d7e84a38e h1:PiSW2HbCq6GWoh+rpgRu0cjM76SAUOrdV8CblaDKtgQ= -github.com/hashicorp/hil v0.0.0-20240516195350-6a7d7e84a38e/go.mod h1:lpUcMVMpI+8yiNiMzIPTdFlHJzxEATAA/l84M4tdvq0= +github.com/hashicorp/hil v0.0.0-20240904173158-8334f91b2a4d h1:1QDtQcFNUK5ozJQhwY0W83v5zVSHo0IyHj+/Amvxjss= +github.com/hashicorp/hil v0.0.0-20240904173158-8334f91b2a4d/go.mod h1:lpUcMVMpI+8yiNiMzIPTdFlHJzxEATAA/l84M4tdvq0= 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.21.0 h1:uNkLAe95ey5Uux6KJdua6+cv8asgILFVWkd/RG0D2XQ= github.com/hashicorp/terraform-exec v0.21.0/go.mod h1:1PPeMYou+KDUSSeRE9szMZ/oHf4fYUmB923Wzbq1ICg= github.com/hashicorp/terraform-json v0.22.1 h1:xft84GZR0QzjPVWs4lRUwvTcPnegqlyS7orfb5Ltvec= github.com/hashicorp/terraform-json v0.22.1/go.mod h1:JbWSQCLFSXFFhg42T7l9iJwdGXBYV8fmmD6o/ML4p3A= -github.com/hashicorp/terraform-plugin-framework v1.11.0 h1:M7+9zBArexHFXDx/pKTxjE6n/2UCXY6b8FIq9ZYhwfE= -github.com/hashicorp/terraform-plugin-framework v1.11.0/go.mod h1:qBXLDn69kM97NNVi/MQ9qgd1uWWsVftGSnygYG1tImM= +github.com/hashicorp/terraform-plugin-framework v1.12.0 h1:7HKaueHPaikX5/7cbC1r9d1m12iYHY+FlNZEGxQ42CQ= +github.com/hashicorp/terraform-plugin-framework v1.12.0/go.mod h1:N/IOQ2uYjW60Jp39Cp3mw7I/OpC/GfZ0385R0YibmkE= github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 h1:gm5b1kHgFFhaKFhm4h2TgvMUlNzFAtUqlcOWnWPm+9E= github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1/go.mod h1:MsjL1sQ9L7wGwzJ5RjcI6FzEMdyoBnw+XK8ZnOvQOLY= -github.com/hashicorp/terraform-plugin-framework-validators v0.13.0 h1:bxZfGo9DIUoLLtHMElsu+zwqI4IsMZQBRRy4iLzZJ8E= -github.com/hashicorp/terraform-plugin-framework-validators v0.13.0/go.mod h1:wGeI02gEhj9nPANU62F2jCaHjXulejm/X+af4PdZaNo= -github.com/hashicorp/terraform-plugin-go v0.23.0 h1:AALVuU1gD1kPb48aPQUjug9Ir/125t+AAurhqphJ2Co= -github.com/hashicorp/terraform-plugin-go v0.23.0/go.mod h1:1E3Cr9h2vMlahWMbsSEcNrOCxovCZhOOIXjFHbjc/lQ= +github.com/hashicorp/terraform-plugin-framework-validators v0.14.0 h1:3PCn9iyzdVOgHYOBmncpSSOxjQhCTYmc+PGvbdlqSaI= +github.com/hashicorp/terraform-plugin-framework-validators v0.14.0/go.mod h1:LwDKNdzxrDY/mHBrlC6aYfE2fQ3Dk3gaJD64vNiXvo4= +github.com/hashicorp/terraform-plugin-go v0.24.0 h1:2WpHhginCdVhFIrWHxDEg6RBn3YaWzR2o6qUeIEat2U= +github.com/hashicorp/terraform-plugin-go v0.24.0/go.mod h1:tUQ53lAsOyYSckFGEefGC5C8BAaO0ENqzFd3bQeuYQg= 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 v1.7.0 h1:B//oq0ZORG+EkVrIJy0uPGSonvmXqxSzXe8+GhknoW0= @@ -610,8 +611,8 @@ github.com/hashicorp/terraform-svchost v0.1.1 h1:EZZimZ1GxdqFRinZ1tpJwVxxt49xc/S github.com/hashicorp/terraform-svchost v0.1.1/go.mod h1:mNsjQfZyf/Jhz35v6/0LWcv26+X7JPS+buii2c9/ctc= github.com/hashicorp/vault/api v1.14.0 h1:Ah3CFLixD5jmjusOgm8grfN9M0d+Y8fVR2SW0K6pJLU= github.com/hashicorp/vault/api v1.14.0/go.mod h1:pV9YLxBGSz+cItFDd8Ii4G17waWOQ32zVjMWHe/cOqk= -github.com/hashicorp/yamux v0.1.1 h1:yrQxtgseBDrq9Y652vSRDvsKCJKOUD+GzTS4Y0Y8pvE= -github.com/hashicorp/yamux v0.1.1/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ= +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/hexops/autogold v1.3.0 h1:IEtGNPxBeBu8RMn8eKWh/Ll9dVNgSnJ7bp/qHgMQ14o= github.com/hexops/autogold v1.3.0/go.mod h1:d4hwi2rid66Sag+BVuHgwakW/EmaFr8vdTSbWDbrDRI= github.com/hexops/autogold/v2 v2.2.1 h1:JPUXuZQGkcQMv7eeDXuNMovjfoRYaa0yVcm+F3voaGY= @@ -650,8 +651,8 @@ github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQL github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/klauspost/compress v1.15.11/go.mod h1:QPwzmACJjUTFsnSHH934V6woptycfrDDJnH7hvFVbGM= -github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2qeMA= -github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw= +github.com/klauspost/compress v1.17.11 h1:In6xLpyWOi1+C7tXUUWv2ot1QvBjxevKAaI6IXrJmUc= +github.com/klauspost/compress v1.17.11/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= @@ -718,12 +719,14 @@ github.com/natefinch/atomic v1.0.1 h1:ZPYKxkqQOx3KZ+RsbnP/YsgvxWQPGxjC0oBt2AhwV0 github.com/natefinch/atomic v1.0.1/go.mod h1:N/D/ELrljoqDyT3rZrsUmtsuzvHkeB/wWjHV22AZRbM= github.com/nightlyone/lockfile v1.0.0 h1:RHep2cFKK4PonZJDdEl4GmkabuhbsRMgk/k3uAmxBiA= github.com/nightlyone/lockfile v1.0.0/go.mod h1:rywoIealpdNse2r832aiD9jRk8ErCatROs6LzC841CI= +github.com/oapi-codegen/oapi-codegen/v2 v2.4.1 h1:ykgG34472DWey7TSjd8vIfNykXgjOgYJZoQbKfEeY/Q= +github.com/oapi-codegen/oapi-codegen/v2 v2.4.1/go.mod h1:N5+lY1tiTDV3V1BeHtOxeWXHoPVeApvsvjJqegfoaz8= github.com/oapi-codegen/runtime v1.1.1 h1:EXLHh0DXIJnWhdRPN2w4MXAzFyE4CskzhNLUmtpMYro= github.com/oapi-codegen/runtime v1.1.1/go.mod h1:SK9X900oXmPWilYR5/WKPzt3Kqxn/uS/+lbpREv+eCg= 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/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= -github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M= +github.com/onsi/gomega v1.34.1 h1:EUMJIKUjM8sKjYbtxQI9A4z2o+rruxnzNvpknOXie6k= +github.com/onsi/gomega v1.34.1/go.mod h1:kU1QgUvBDLXBJq618Xvm2LUX6rSAfRaFRTcdOeDLwwY= github.com/opentracing/basictracer-go v1.1.0 h1:Oa1fTSBvAl8pa3U+IJYqrKm0NALwH9OsgwOqDv4xJW0= github.com/opentracing/basictracer-go v1.1.0/go.mod h1:V2HZueSJEp879yv285Aap1BS69fQMD+MNP1mRs6mBQc= github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= @@ -741,6 +744,8 @@ github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/term v1.1.0 h1:xIAAdCMh3QIAy+5FrE8Ad8XoDhEU4ufwbaSozViP9kk= github.com/pkg/term v1.1.0/go.mod h1:E25nymQcrSllhX42Ok8MRm1+hyBdHY0dCeiKZ9jpNGw= +github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 h1:GFCKgmp0tecUJ0sJuv4pzYCqS9+RGSn52M3FUwPs+uo= +github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10/go.mod h1:t/avpk3KcrXxUnYOhZhMXJlSEyie6gQbtLq5NM3loB8= 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= @@ -750,26 +755,24 @@ github.com/posener/complete v1.2.3/go.mod h1:WZIdtGGp+qx0sLrYKtIRAruyNpv6hFCicSg github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435cARxCW6q9gc0S/Yxz7Mkd38pOb0= github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE= -github.com/pulumi/esc v0.9.1 h1:HH5eEv8sgyxSpY5a8yePyqFXzA8cvBvapfH8457+mIs= -github.com/pulumi/esc v0.9.1/go.mod h1:oEJ6bOsjYlQUpjf70GiX+CXn3VBmpwFDxUTlmtUN84c= +github.com/pulumi/esc v0.10.0 h1:jzBKzkLVW0mePeanDRfqSQoCJ5yrkux0jIwAkUxpRKE= +github.com/pulumi/esc v0.10.0/go.mod h1:2Bfa+FWj/xl8CKqRTWbWgDX0SOD4opdQgvYSURTGK2c= github.com/pulumi/inflector v0.2.1 h1:bqyiish3tq//vLeLiEstSFE5K7RNjy/ce47ed4QATu8= github.com/pulumi/inflector v0.2.1/go.mod h1:HUFCjcPTz96YtTuUlwG3i3EZG4WlniBvR9bd+iJxCUY= -github.com/pulumi/providertest v0.0.14 h1:5QlAPAAs82jkQraHsJvq1xgVfC7xtW8sFJwv2pHgxQ8= -github.com/pulumi/providertest v0.0.14/go.mod h1:GcsqEGgSngwaNOD+kICJPIUQlnA911fGBU8HDlJvVL0= -github.com/pulumi/pulumi-java/pkg v0.15.0 h1:W6hyWfP0nk2Oy+vc757OyP+Vu9R9iNSE/tutEGsM798= -github.com/pulumi/pulumi-java/pkg v0.15.0/go.mod h1:VybuJMWJtJc9ZNbt1kcYH4TbpocMx9mEi7YWL2Co99c= -github.com/pulumi/pulumi-terraform-bridge/pf v0.42.1 h1:IMn3MmvoO66iptcU5kBdun60PqwNJBJ20A4hD3AqkDE= -github.com/pulumi/pulumi-terraform-bridge/pf v0.42.1/go.mod h1:SXxx1PJNNdGoD4/CxELgy0F46uzcTbDkz63DJsjIRXE= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.89.1 h1:FLQknb6r3r/uaj1XLbouFF88eF1Fk0h4JOVS9kHKDRY= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.89.1/go.mod h1:JAxygKR/XGW6zIv6iOP6sHAYjZ7OCtqU7j6Od1lUk38= -github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.8 h1:mav2tSitA9BPJPLLahKgepHyYsMzwaTm4cvp0dcTMYw= -github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.8/go.mod h1:qUYk2c9i/yqMGNj9/bQyXpS39BxNDSXYjVN1njnq0zY= -github.com/pulumi/pulumi-yaml v1.9.2 h1:BCUuRPA1USmFXrExiHRU8yJ+OiphLYnroPxKRgGCJrs= -github.com/pulumi/pulumi-yaml v1.9.2/go.mod h1:sIh/Oa/NLRGTojevh8D2/cPDPvo2j9iXegVDQIKKfw4= -github.com/pulumi/pulumi/pkg/v3 v3.130.0 h1:lS51XeCnhg72LXkMiw2FP1cGP+Y85wYD3quWhCPD5+M= -github.com/pulumi/pulumi/pkg/v3 v3.130.0/go.mod h1:jhZ1Ug5Rl1qivexgEWvmwSWYIT/jRnKSFhLwwv6PrZ0= -github.com/pulumi/pulumi/sdk/v3 v3.130.0 h1:gGJNd+akPqhZ+vrsZmAjSNJn6kGJkitjjkwrmIQMmn8= -github.com/pulumi/pulumi/sdk/v3 v3.130.0/go.mod h1:p1U24en3zt51agx+WlNboSOV8eLlPWYAkxMzVEXKbnY= +github.com/pulumi/providertest v0.1.2 h1:9pJS9MeNkMyGwyNeHmvh8QqLgJy39Nk2/ym5u7r13ng= +github.com/pulumi/providertest v0.1.2/go.mod h1:GcsqEGgSngwaNOD+kICJPIUQlnA911fGBU8HDlJvVL0= +github.com/pulumi/pulumi-java/pkg v0.16.1 h1:orHnDWFbpOERwaBLry9f+6nqPX7x0MsrIkaa5QDGAns= +github.com/pulumi/pulumi-java/pkg v0.16.1/go.mod h1:QH0DihZkWYle9XFc+LJ76m4hUo+fA3RdyaM90pqOaSM= +github.com/pulumi/pulumi-terraform-bridge/pf v0.46.0 h1:B95rH9t8LSZdEApF8sDogjSz67exG2KY3jGr87zwJek= +github.com/pulumi/pulumi-terraform-bridge/pf v0.46.0/go.mod h1:i75vRSbpf4YizD+ynNkLgp0sgZhm2N7xapPaBBiiZXA= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.93.1 h1:EEf5W3buVR5pcCKTXGouDS1/oY6TqVUIRKLksl5h4Es= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.93.1/go.mod h1:jNpOSGkfTeZSnSjpGBHHiyllciCEDRqFaZhLUpQPlpo= +github.com/pulumi/pulumi-yaml v1.11.1 h1:ULUL9fpb2Bwgf3jJHx0FamKYm0ld0KxBQr/uSAslRLk= +github.com/pulumi/pulumi-yaml v1.11.1/go.mod h1:RdXRBupRGGAD1kbYNG1V1h6pyFnXisvQsl0AANvVjGI= +github.com/pulumi/pulumi/pkg/v3 v3.137.0 h1:/KPFQQaB5W0/GhVxSTGnEzv3ZW5uieGN5Q2q+Lsr+Zw= +github.com/pulumi/pulumi/pkg/v3 v3.137.0/go.mod h1:ZQXJUTysDwq/mtilutRBKguH6DI+3b2WgNcOrs0whJ0= +github.com/pulumi/pulumi/sdk/v3 v3.137.0 h1:bxhYpOY7Z4xt+VmezEpHuhjpOekkaMqOjzxFg/1OhCw= +github.com/pulumi/pulumi/sdk/v3 v3.137.0/go.mod h1:PvKsX88co8XuwuPdzolMvew5lZV+4JmZfkeSjj7A6dI= github.com/pulumi/schema-tools v0.1.2 h1:Fd9xvUjgck4NA+7/jSk7InqCUT4Kj940+EcnbQKpfZo= github.com/pulumi/schema-tools v0.1.2/go.mod h1:62lgj52Tzq11eqWTIaKd+EVyYAu5dEcDJxMhTjvMO/k= github.com/pulumi/terraform-diff-reader v0.0.2 h1:kTE4nEXU3/SYXESvAIem+wyHMI3abqkI3OhJ0G04LLI= @@ -781,8 +784,8 @@ github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= -github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= +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/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/ryanuber/go-glob v1.0.0 h1:iQh3xXAumdQ+4Ufa5b25cRpC5TYKlno6hsv6Cb3pkBk= @@ -835,8 +838,6 @@ github.com/teekennedy/goldmark-markdown v0.3.0 h1:ik9/biVGCwGWFg8dQ3KVm2pQ/wiiG0 github.com/teekennedy/goldmark-markdown v0.3.0/go.mod h1:kMhDz8La77A9UHvJGsxejd0QUflN9sS+QXCqnhmxmNo= github.com/texttheater/golang-levenshtein v1.0.1 h1:+cRNoVrfiwufQPhoMzB6N0Yf/Mqajr6t1lOv8GyGE2U= github.com/texttheater/golang-levenshtein v1.0.1/go.mod h1:PYAKrbF5sAiq9wd+H82hs7gNaen0CplQ9uvm6+enD/8= -github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 h1:X9dsIWPuuEJlPX//UmRKophhOKCGXc46RVIGuttks68= -github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7/go.mod h1:UxoP3EypF8JfGEjAII8jx1q8rQyDnX8qdTCs/UQBVIE= github.com/uber/jaeger-client-go v2.30.0+incompatible h1:D6wyKGCecFaSRUpo8lCVbaOOb6ThwMmTEbhRwtKR97o= github.com/uber/jaeger-client-go v2.30.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= github.com/uber/jaeger-lib v2.4.1+incompatible h1:td4jdvLcExb4cBISKIpHuGoVXh+dVKhn2Um6rjCsSsg= @@ -853,7 +854,6 @@ github.com/vmihailenco/tagparser/v2 v2.0.0 h1:y09buUbR+b5aycVFQs/g70pqKVZNBmxwAh github.com/vmihailenco/tagparser/v2 v2.0.0/go.mod h1:Wri+At7QHww0WTrCBeu4J6bNtoV6mEfg5OIWRZA9qds= github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM= github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI1Bc68Uw= -github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb h1:zGWFAtiMcyryUHoUjUJX0/lt1H2+i2Ka2n+D3DImSNo= github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0= @@ -866,8 +866,8 @@ github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -github.com/yuin/goldmark v1.7.4 h1:BDXOHExt+A7gwPCJgPIIq7ENvceR7we7rOS9TNoLZeg= -github.com/yuin/goldmark v1.7.4/go.mod h1:uzxRWxtg69N339t3louHJ7+O03ezfj6PlliRlaOzY1E= +github.com/yuin/goldmark v1.7.8 h1:iERMLn0/QJeHFhxSt3p6PeN9mGnvIKSpG9YYorDMnic= +github.com/yuin/goldmark v1.7.8/go.mod h1:uzxRWxtg69N339t3louHJ7+O03ezfj6PlliRlaOzY1E= github.com/zclconf/go-cty v1.15.0 h1:tTCRWxsexYUmtt/wVxgDClUe+uQusuI443uL6e+5sXQ= github.com/zclconf/go-cty v1.15.0/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= github.com/zclconf/go-cty-debug v0.0.0-20240509010212-0d6042c53940 h1:4r45xpDWB6ZMSMNJFMOjqrGHynW3DIBuR2H9j0ug+Mo= @@ -883,18 +883,22 @@ go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0 h1:r6I7RJCN86bpD/FQwedZ0vSixDpwuWREjW9oRMsmqDc= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0/go.mod h1:B9yO6b04uB80CzjedvewuqDhxJxi11s7/GtiGa8bAjI= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0 h1:TT4fX+nBOA/+LUkobKGW1ydGcn+G3vRw9+g5HwCphpk= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0/go.mod h1:L7UH0GbB0p47T4Rri3uHjbpCFYrVrwc1I25QhNPiGK8= -go.opentelemetry.io/otel v1.29.0 h1:PdomN/Al4q/lN6iBJEN3AwPvUiHPMlt93c8bqTG5Llw= -go.opentelemetry.io/otel v1.29.0/go.mod h1:N/WtXPs1CNCUEx+Agz5uouwCba+i+bJGFicT8SR4NP8= -go.opentelemetry.io/otel/metric v1.29.0 h1:vPf/HFWTNkPu1aYeIsc98l4ktOQaL6LeSoeV2g+8YLc= -go.opentelemetry.io/otel/metric v1.29.0/go.mod h1:auu/QWieFVWx+DmQOUMgj0F8LHWdgalxXqvp7BII/W8= -go.opentelemetry.io/otel/sdk v1.28.0 h1:b9d7hIry8yZsgtbmM0DKyPWMMUMlK9NEKuIG4aBqWyE= -go.opentelemetry.io/otel/sdk v1.28.0/go.mod h1:oYj7ClPUA7Iw3m+r7GeEjz0qckQRJK2B8zjcZEfu7Pg= -go.opentelemetry.io/otel/trace v1.29.0 h1:J/8ZNK4XgR7a21DZUAsbF8pZ5Jcw1VhACmnYt39JTi4= -go.opentelemetry.io/otel/trace v1.29.0/go.mod h1:eHl3w0sp3paPkYstJOmAimxhiFXPg+MMTlEh3nsQgWQ= +go.opentelemetry.io/contrib/detectors/gcp v1.31.0 h1:G1JQOreVrfhRkner+l4mrGxmfqYCAuy76asTDAo0xsA= +go.opentelemetry.io/contrib/detectors/gcp v1.31.0/go.mod h1:tzQL6E1l+iV44YFTkcAeNQqzXUiekSYP9jjJjXwEd00= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.56.0 h1:yMkBS9yViCc7U7yeLzJPM2XizlfdVvBRSmsQDWu6qc0= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.56.0/go.mod h1:n8MR6/liuGB5EmTETUBeU5ZgqMOlqKRxUaqPQBOANZ8= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.56.0 h1:UP6IpuHFkUgOQL9FFQFrZ+5LiwhhYRbi7VZSIx6Nj5s= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.56.0/go.mod h1:qxuZLtbq5QDtdeSHsS7bcf6EH6uO6jUAgk764zd3rhM= +go.opentelemetry.io/otel v1.31.0 h1:NsJcKPIW0D0H3NgzPDHmo0WW6SptzPdqg/L1zsIm2hY= +go.opentelemetry.io/otel v1.31.0/go.mod h1:O0C14Yl9FgkjqcCZAsE053C13OaddMYr/hz6clDkEJE= +go.opentelemetry.io/otel/metric v1.31.0 h1:FSErL0ATQAmYHUIzSezZibnyVlft1ybhy4ozRPcF2fE= +go.opentelemetry.io/otel/metric v1.31.0/go.mod h1:C3dEloVbLuYoX41KpmAhOqNriGbA+qqH6PQ5E5mUfnY= +go.opentelemetry.io/otel/sdk v1.31.0 h1:xLY3abVHYZ5HSfOg3l2E5LUj2Cwva5Y7yGxnSW9H5Gk= +go.opentelemetry.io/otel/sdk v1.31.0/go.mod h1:TfRbMdhvxIIr/B2N2LQW2S5v9m3gOQ/08KsbbO5BPT0= +go.opentelemetry.io/otel/sdk/metric v1.31.0 h1:i9hxxLJF/9kkvfHppyLL55aW7iIJz4JjxTeYusH7zMc= +go.opentelemetry.io/otel/sdk/metric v1.31.0/go.mod h1:CRInTMVvNhUKgSAMbKyTMxqOBC0zgyxzW55lZzX43Y8= +go.opentelemetry.io/otel/trace v1.31.0 h1:ffjsj1aRouKewfr85U2aGagJ46+MvodynlQ1HYdmJys= +go.opentelemetry.io/otel/trace v1.31.0/go.mod h1:TXZkRk7SM2ZQLtR6eoAWQFIHPvzQ06FJAsO1tJg480A= go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE= go.uber.org/atomic v1.11.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0= @@ -911,10 +915,8 @@ golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPh golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc= -golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg= -golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= -golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= +golang.org/x/crypto v0.28.0 h1:GBDwsMXVQi34v5CCYUm2jkJvu4cbtru2U4TN2PSyQnw= +golang.org/x/crypto v0.28.0/go.mod h1:rmgy+3RHxRZMyY0jjAJShp2zgEdOqj2AO7U0pYmeQ7U= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -925,8 +927,8 @@ golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u0 golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= -golang.org/x/exp v0.0.0-20240823005443-9b4947da3948 h1:kx6Ds3MlpiUHKj7syVnbp57++8WpuKPcR5yjLBjvLEA= -golang.org/x/exp v0.0.0-20240823005443-9b4947da3948/go.mod h1:akd2r19cwCdwSwWeIdzYQGa/EZZyqcOdwWiwj5L5eKQ= +golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c h1:7dEasQXItcW1xKJ2+gg5VOiBnqWrJc+rq0DPKyvvdbY= +golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c/go.mod h1:NQtJDoLvd6faHhE7m4T/1IY708gDefGGjR/iUW8yQQ8= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= @@ -953,11 +955,8 @@ golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= 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.14.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= -golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0= -golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.21.0 h1:vvrHzRwRfVKSiLrG+d4FMl/Qi4ukBCE6kZlTUkDYRT0= +golang.org/x/mod v0.21.0/go.mod h1:6SkKJ3Xj0I0BrPOZoBy3bdMptDDU9oJrpohJ3eWZ1fY= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1007,12 +1006,8 @@ golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug golang.org/x/net v0.0.0-20220909164309-bea034e7d591/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= golang.org/x/net v0.0.0-20221014081412-f15817d10f9b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= -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.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= -golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE= -golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg= +golang.org/x/net v0.30.0 h1:AcW1SDZMkb8IpzCdQUaIq2sP4sZ4zw+55h6ynffypl4= +golang.org/x/net v0.30.0/go.mod h1:2wGyMJ5iFasEhkwi13ChkO/t1ECNC4X4eBKkVFyYFlU= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -1038,8 +1033,8 @@ golang.org/x/oauth2 v0.0.0-20220822191816-0ebed06d0094/go.mod h1:h4gKUeWbJ4rQPri golang.org/x/oauth2 v0.0.0-20220909003341-f21342109be1/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg= golang.org/x/oauth2 v0.0.0-20221014153046-6fdb5e3db783/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg= golang.org/x/oauth2 v0.1.0/go.mod h1:G9FE4dLTsbXUu90h/Pf85g4w1D+SSAgR+q46nJZ8M4A= -golang.org/x/oauth2 v0.22.0 h1:BzDx2FehcG7jJwgWLELCdmLuxk2i+x9UDpSiss2u0ZA= -golang.org/x/oauth2 v0.22.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= +golang.org/x/oauth2 v0.23.0 h1:PbgcYx2W7i4LvjJWEbf0ngHV6qJYr86PkAV3bXdLEbs= +golang.org/x/oauth2 v0.23.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -1054,9 +1049,6 @@ golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20220601150217-0de741cfad7f/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.0.0-20220929204114-8fcdb60fdcc0/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.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -1068,7 +1060,6 @@ golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190626221950-04f50cda93cb/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1132,22 +1123,14 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.1.0/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.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg= -golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo= +golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= 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.1.0/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.16.0/go.mod h1:yn7UURbUtPyrVJPGPq404EukNFxcm/foM+bV/bfcDsY= -golang.org/x/term v0.23.0 h1:F6D4vR+EHoL9/sWAWgAR1H2DcHr4PareCbAaCo1RpuU= -golang.org/x/term v0.23.0/go.mod h1:DgV24QBUrK6jhZXl+20l6UWznPlwAHm1Q1mGHtydmSk= +golang.org/x/term v0.25.0 h1:WtHI/ltw4NvSUig5KARz9h521QvRC8RmF/cuYqifU24= +golang.org/x/term v0.25.0/go.mod h1:RPyXicDX+6vLxogjjRxjgD2TKtmAO6NZBsBRfrOLu7M= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -1158,17 +1141,13 @@ golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -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.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc= -golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= +golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM= +golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.6.0 h1:eTDhh4ZXt5Qf0augr54TN6suAUudPcawVZeIAPU7D4U= -golang.org/x/time v0.6.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= +golang.org/x/time v0.7.0 h1:ntUhktv3OPE6TgYxXWv9vKvUSJyIFJlyohwbkEwPrKQ= +golang.org/x/time v0.7.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -1224,11 +1203,8 @@ golang.org/x/tools v0.1.3/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= 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.17.0/go.mod h1:xsh6VxdV005rRVaS6SSAf9oiAqljS7UZUacMZ8Bnsps= -golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24= -golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ= +golang.org/x/tools v0.26.0 h1:v/60pFQmzmT9ExmjDv2gGIfi3OqfKoEP6I5+umXlbnQ= +golang.org/x/tools v0.26.0/go.mod h1:TPVVj70c7JJ3WCazhD8OdXcZg/og+b9+tH/KxylGwH0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -1287,8 +1263,8 @@ google.golang.org/api v0.96.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ google.golang.org/api v0.97.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s= google.golang.org/api v0.98.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s= google.golang.org/api v0.100.0/go.mod h1:ZE3Z2+ZOr87Rx7dqFsdRQkRBk36kDtp/h+QpHbB7a70= -google.golang.org/api v0.195.0 h1:Ude4N8FvTKnnQJHU48RFI40jOBgIrL8Zqr3/QeST6yU= -google.golang.org/api v0.195.0/go.mod h1:DOGRWuv3P8TU8Lnz7uQc4hyNqrBpMtD9ppW3wBJurgc= +google.golang.org/api v0.202.0 h1:y1iuVHMqokQbimW79ZqPZWo4CiyFu6HcCYHwSNyzlfo= +google.golang.org/api v0.202.0/go.mod h1:3Jjeq7M/SFblTNCp7ES2xhq+WvGL0KeXI0joHQBfwTQ= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= @@ -1399,12 +1375,12 @@ google.golang.org/genproto v0.0.0-20221010155953-15ba04fc1c0e/go.mod h1:3526vdqw google.golang.org/genproto v0.0.0-20221014173430-6e2ab493f96b/go.mod h1:1vXfmgAz9N9Jx0QA82PqRVauvCz1SGSz739p0f183jM= google.golang.org/genproto v0.0.0-20221014213838-99cd37c6964a/go.mod h1:1vXfmgAz9N9Jx0QA82PqRVauvCz1SGSz739p0f183jM= google.golang.org/genproto v0.0.0-20221025140454-527a21cfbd71/go.mod h1:9qHF0xnpdSfF6knlcsnpzUu5y+rpwgbvsyGAZPBMg4s= -google.golang.org/genproto v0.0.0-20240827150818-7e3bb234dfed h1:4C4dbrVFtfIp3GXJdMX1Sj25mahfn5DywOo65/2ISQ8= -google.golang.org/genproto v0.0.0-20240827150818-7e3bb234dfed/go.mod h1:ICjniACoWvcDz8c8bOsHVKuuSGDJy1z5M4G0DM3HzTc= -google.golang.org/genproto/googleapis/api v0.0.0-20240827150818-7e3bb234dfed h1:3RgNmBoI9MZhsj3QxC+AP/qQhNwpCLOvYDYYsFrhFt0= -google.golang.org/genproto/googleapis/api v0.0.0-20240827150818-7e3bb234dfed/go.mod h1:OCdP9MfskevB/rbYvHTsXTtKC+3bHWajPdoKgjcYkfo= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240827150818-7e3bb234dfed h1:J6izYgfBXAI3xTKLgxzTmUltdYaLsuBxFCgDHWJ/eXg= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240827150818-7e3bb234dfed/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= +google.golang.org/genproto v0.0.0-20241021214115-324edc3d5d38 h1:Q3nlH8iSQSRUwOskjbcSMcF2jiYMNiQYZ0c2KEJLKKU= +google.golang.org/genproto v0.0.0-20241021214115-324edc3d5d38/go.mod h1:xBI+tzfqGGN2JBeSebfKXFSdBpWVQ7sLW40PTupVRm4= +google.golang.org/genproto/googleapis/api v0.0.0-20241021214115-324edc3d5d38 h1:2oV8dfuIkM1Ti7DwXc0BJfnwr9csz4TDXI9EmiI+Rbw= +google.golang.org/genproto/googleapis/api v0.0.0-20241021214115-324edc3d5d38/go.mod h1:vuAjtvlwkDKF6L1GQ0SokiRLCGFfeBUXWr/aFFkHACc= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38 h1:zciRKQ4kBpFgpfC5QQCVtnnNAcLIqweL7plyZRQHVpI= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38/go.mod h1:GX3210XPVPUjJbTUbvwI8f2IpZDMZuPJWDzDuebbviI= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= @@ -1440,9 +1416,11 @@ google.golang.org/grpc v1.48.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACu google.golang.org/grpc v1.49.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= google.golang.org/grpc v1.50.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= google.golang.org/grpc v1.50.1/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= -google.golang.org/grpc v1.66.0 h1:DibZuoBznOxbDQxRINckZcUvnCEvrW9pcWIE2yF9r1c= -google.golang.org/grpc v1.66.0/go.mod h1:s3/l6xSSCURdVfAnL+TqCNMyTDAGN6+lZeVxnZR128Y= +google.golang.org/grpc v1.67.1 h1:zWnc1Vrcno+lHZCOofnIMvycFcc0QRGIzm9dhnDX68E= +google.golang.org/grpc v1.67.1/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA= google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw= +google.golang.org/grpc/stats/opentelemetry v0.0.0-20241022174616-4bb0170ac65f h1:TsfHqsKI7qhOoYugDRyFDSKAuzegDVmkSCpjUyLkb+8= +google.golang.org/grpc/stats/opentelemetry v0.0.0-20241022174616-4bb0170ac65f/go.mod h1:jzYlkSMbKypzuu6xoAEijsNVo9ZeDF1u/zCfFgsx7jg= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= @@ -1458,8 +1436,8 @@ google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQ google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= -google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= +google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA= +google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= @@ -1478,6 +1456,7 @@ 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.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo= gotest.tools/v3 v3.0.3 h1:4AuOwCGf4lLR9u3YOe2awrHygurzhO/HeQ6laiA6Sx0= gotest.tools/v3 v3.0.3/go.mod h1:Z7Lb0S5l+klDB31fvDQX8ss/FlKDxtlFlw3Oa8Ymbl8= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= @@ -1487,8 +1466,8 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -lukechampine.com/frand v1.4.2 h1:RzFIpOvkMXuPMBb9maa4ND4wjBn71E1Jpf8BzJHMaVw= -lukechampine.com/frand v1.4.2/go.mod h1:4S/TM2ZgrKejMcKMbeLjISpJMO+/eZ1zu3vYX9dtj3s= +lukechampine.com/frand v1.5.1 h1:fg0eRtdmGFIxhP5zQJzM1lFDbD6CUfu/f+7WgAZd5/w= +lukechampine.com/frand v1.5.1/go.mod h1:4VstaWc2plN4Mjr10chUD46RAVGWhpkZ5Nja8+Azp0Q= mvdan.cc/gofumpt v0.5.0 h1:0EQ+Z56k8tXjj/6TQD25BFNKQXpCvT0rnansIc7Ug5E= mvdan.cc/gofumpt v0.5.0/go.mod h1:HBeVDtMKRZpXyxFciAirzdKklDlGu8aAy1wEbH5Y9js= pgregory.net/rapid v0.6.1 h1:4eyrDxyht86tT4Ztm+kvlyNBLIk071gR+ZQdhphc9dQ= diff --git a/provider/resources.go b/provider/resources.go index f782051..924d29e 100644 --- a/provider/resources.go +++ b/provider/resources.go @@ -56,7 +56,9 @@ func Provider() tfbridge.ProviderInfo { }, }, Resources: map[string]*tfbridge.ResourceInfo{ - "genesiscloud_instance": {Tok: tfbridge.MakeResource(mainPkg, mainMod, "Instance")}, + "genesiscloud_instance": {Tok: tfbridge.MakeResource(mainPkg, mainMod, "Instance")}, + "genesiscloud_instance_status": {Tok: tfbridge.MakeResource(mainPkg, mainMod, "InstanceStatus"), + ComputeID: tfbridge.DelegateIDField("instance_id", "genesiscloud", "https://github.com/genesiscloud/pulumi-genesiscloud")}, "genesiscloud_security_group": {Tok: tfbridge.MakeResource(mainPkg, mainMod, "SecurityGroup")}, "genesiscloud_snapshot": {Tok: tfbridge.MakeResource(mainPkg, mainMod, "Snapshot")}, "genesiscloud_ssh_key": {Tok: tfbridge.MakeResource(mainPkg, mainMod, "SSHKey")}, diff --git a/sdk/dotnet/Genesiscloud/Filesystem.cs b/sdk/dotnet/Genesiscloud/Filesystem.cs index 17bffe6..bdf26d8 100644 --- a/sdk/dotnet/Genesiscloud/Filesystem.cs +++ b/sdk/dotnet/Genesiscloud/Filesystem.cs @@ -37,7 +37,7 @@ namespace GenesisCloud.PulumiPackage.Genesiscloud /// ## Import /// /// ```sh - /// $ pulumi import genesiscloud:index/filesystem:Filesystem example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + /// $ pulumi import genesiscloud:index/filesystem:Filesystem example 18efeec8-94f0-4776-8ff2-5e9b49c74608 /// ``` /// [GenesiscloudResourceType("genesiscloud:index/filesystem:Filesystem")] @@ -74,8 +74,8 @@ public partial class Filesystem : global::Pulumi.CustomResource public Output Name { get; private set; } = null!; /// - /// The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - /// destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + /// replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Output("region")] public Output Region { get; private set; } = null!; @@ -102,8 +102,8 @@ public partial class Filesystem : global::Pulumi.CustomResource public Output Timeouts { get; private set; } = null!; /// - /// The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. - The value must be one of: ["vast"]. + /// The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + /// must be one of: ["vast"]. /// [Output("type")] public Output Type { get; private set; } = null!; @@ -168,8 +168,8 @@ public sealed class FilesystemArgs : global::Pulumi.ResourceArgs public Input? Name { get; set; } /// - /// The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - /// destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + /// replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Input("region", required: true)] public Input Region { get; set; } = null!; @@ -190,8 +190,8 @@ public sealed class FilesystemArgs : global::Pulumi.ResourceArgs public Input? Timeouts { get; set; } /// - /// The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. - The value must be one of: ["vast"]. + /// The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + /// must be one of: ["vast"]. /// [Input("type", required: true)] public Input Type { get; set; } = null!; @@ -241,8 +241,8 @@ public InputList MountEndpointRanges public Input? Name { get; set; } /// - /// The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - /// destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + /// replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Input("region")] public Input? Region { get; set; } @@ -269,8 +269,8 @@ public InputList MountEndpointRanges public Input? Timeouts { get; set; } /// - /// The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. - The value must be one of: ["vast"]. + /// The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + /// must be one of: ["vast"]. /// [Input("type")] public Input? Type { get; set; } diff --git a/sdk/dotnet/Genesiscloud/FloatingIp.cs b/sdk/dotnet/Genesiscloud/FloatingIp.cs index add9d56..a93659c 100644 --- a/sdk/dotnet/Genesiscloud/FloatingIp.cs +++ b/sdk/dotnet/Genesiscloud/FloatingIp.cs @@ -25,8 +25,7 @@ namespace GenesisCloud.PulumiPackage.Genesiscloud /// { /// var floatingIp = new Genesiscloud.FloatingIp("floatingIp", new() /// { - /// Description = "The description for you terraform floating IP.", - /// Region = "ARC-IS-HAF-1", + /// Region = "NORD-NO-KRS-1", /// Version = "ipv4", /// }); /// @@ -36,7 +35,7 @@ namespace GenesisCloud.PulumiPackage.Genesiscloud /// ## Import /// /// ```sh - /// $ pulumi import genesiscloud:index/floatingIp:FloatingIp example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + /// $ pulumi import genesiscloud:index/floatingIp:FloatingIp example 18efeec8-94f0-4776-8ff2-5e9b49c74608 /// ``` /// [GenesiscloudResourceType("genesiscloud:index/floatingIp:FloatingIp")] @@ -73,8 +72,8 @@ public partial class FloatingIp : global::Pulumi.CustomResource public Output Name { get; private set; } = null!; /// - /// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - /// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + /// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Output("region")] public Output Region { get; private set; } = null!; @@ -95,8 +94,8 @@ public partial class FloatingIp : global::Pulumi.CustomResource public Output UpdatedAt { get; private set; } = null!; /// - /// The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. - The value must be one of: ["ipv4"]. + /// The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + /// must be one of: ["ipv4"]. /// [Output("version")] public Output Version { get; private set; } = null!; @@ -161,8 +160,8 @@ public sealed class FloatingIpArgs : global::Pulumi.ResourceArgs public Input? Name { get; set; } /// - /// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - /// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + /// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Input("region", required: true)] public Input Region { get; set; } = null!; @@ -171,8 +170,8 @@ public sealed class FloatingIpArgs : global::Pulumi.ResourceArgs public Input? Timeouts { get; set; } /// - /// The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. - The value must be one of: ["ipv4"]. + /// The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + /// must be one of: ["ipv4"]. /// [Input("version", required: true)] public Input Version { get; set; } = null!; @@ -216,8 +215,8 @@ public sealed class FloatingIpState : global::Pulumi.ResourceArgs public Input? Name { get; set; } /// - /// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - /// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + /// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Input("region")] public Input? Region { get; set; } @@ -238,8 +237,8 @@ public sealed class FloatingIpState : global::Pulumi.ResourceArgs public Input? UpdatedAt { get; set; } /// - /// The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. - The value must be one of: ["ipv4"]. + /// The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + /// must be one of: ["ipv4"]. /// [Input("version")] public Input? Version { get; set; } diff --git a/sdk/dotnet/Genesiscloud/Images.cs b/sdk/dotnet/Genesiscloud/Images.cs index 076c63c..436b27f 100644 --- a/sdk/dotnet/Genesiscloud/Images.cs +++ b/sdk/dotnet/Genesiscloud/Images.cs @@ -15,9 +15,7 @@ public static class Images /// /// Images data source /// - /// {{% examples %}} /// ## Example Usage - /// {{% example %}} /// /// ```csharp /// using System.Collections.Generic; @@ -39,7 +37,7 @@ public static class Images /// { /// Filter = new Genesiscloud.Inputs.ImagesFilterInputArgs /// { - /// Region = "ARC-IS-HAF-1", + /// Region = "NORD-NO-KRS-1", /// Type = "snapshot", /// }, /// }); @@ -54,8 +52,6 @@ public static class Images /// /// }); /// ``` - /// {{% /example %}} - /// {{% /examples %}} /// public static Task InvokeAsync(ImagesArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("genesiscloud:index/images:Images", args ?? new ImagesArgs(), options.WithDefaults()); @@ -63,9 +59,7 @@ public static Task InvokeAsync(ImagesArgs args, InvokeOptions? opt /// /// Images data source /// - /// {{% examples %}} /// ## Example Usage - /// {{% example %}} /// /// ```csharp /// using System.Collections.Generic; @@ -87,7 +81,7 @@ public static Task InvokeAsync(ImagesArgs args, InvokeOptions? opt /// { /// Filter = new Genesiscloud.Inputs.ImagesFilterInputArgs /// { - /// Region = "ARC-IS-HAF-1", + /// Region = "NORD-NO-KRS-1", /// Type = "snapshot", /// }, /// }); @@ -102,8 +96,6 @@ public static Task InvokeAsync(ImagesArgs args, InvokeOptions? opt /// /// }); /// ``` - /// {{% /example %}} - /// {{% /examples %}} /// public static Output Invoke(ImagesInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("genesiscloud:index/images:Images", args ?? new ImagesInvokeArgs(), options.WithDefaults()); diff --git a/sdk/dotnet/Genesiscloud/Inputs/InstanceMetadataArgs.cs b/sdk/dotnet/Genesiscloud/Inputs/InstanceMetadataArgs.cs index 6040bfe..637773f 100644 --- a/sdk/dotnet/Genesiscloud/Inputs/InstanceMetadataArgs.cs +++ b/sdk/dotnet/Genesiscloud/Inputs/InstanceMetadataArgs.cs @@ -13,6 +13,10 @@ namespace GenesisCloud.PulumiPackage.Genesiscloud.Inputs public sealed class InstanceMetadataArgs : global::Pulumi.ResourceArgs { + /// + /// A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). + /// - If the value of this attribute changes, the resource will be replaced. + /// [Input("startupScript")] public Input? StartupScript { get; set; } diff --git a/sdk/dotnet/Genesiscloud/Inputs/InstanceMetadataGetArgs.cs b/sdk/dotnet/Genesiscloud/Inputs/InstanceMetadataGetArgs.cs index c32ac0d..158abe7 100644 --- a/sdk/dotnet/Genesiscloud/Inputs/InstanceMetadataGetArgs.cs +++ b/sdk/dotnet/Genesiscloud/Inputs/InstanceMetadataGetArgs.cs @@ -13,6 +13,10 @@ namespace GenesisCloud.PulumiPackage.Genesiscloud.Inputs public sealed class InstanceMetadataGetArgs : global::Pulumi.ResourceArgs { + /// + /// A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). + /// - If the value of this attribute changes, the resource will be replaced. + /// [Input("startupScript")] public Input? StartupScript { get; set; } diff --git a/sdk/dotnet/Genesiscloud/Inputs/InstanceStatusTimeoutsArgs.cs b/sdk/dotnet/Genesiscloud/Inputs/InstanceStatusTimeoutsArgs.cs new file mode 100644 index 0000000..1490a8f --- /dev/null +++ b/sdk/dotnet/Genesiscloud/Inputs/InstanceStatusTimeoutsArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace GenesisCloud.PulumiPackage.Genesiscloud.Inputs +{ + + public sealed class InstanceStatusTimeoutsArgs : global::Pulumi.ResourceArgs + { + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + [Input("create")] + public Input? Create { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + /// + [Input("delete")] + public Input? Delete { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + /// + [Input("read")] + public Input? Read { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + [Input("update")] + public Input? Update { get; set; } + + public InstanceStatusTimeoutsArgs() + { + } + public static new InstanceStatusTimeoutsArgs Empty => new InstanceStatusTimeoutsArgs(); + } +} diff --git a/sdk/dotnet/Genesiscloud/Inputs/InstanceStatusTimeoutsGetArgs.cs b/sdk/dotnet/Genesiscloud/Inputs/InstanceStatusTimeoutsGetArgs.cs new file mode 100644 index 0000000..175fbde --- /dev/null +++ b/sdk/dotnet/Genesiscloud/Inputs/InstanceStatusTimeoutsGetArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace GenesisCloud.PulumiPackage.Genesiscloud.Inputs +{ + + public sealed class InstanceStatusTimeoutsGetArgs : global::Pulumi.ResourceArgs + { + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + [Input("create")] + public Input? Create { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + /// + [Input("delete")] + public Input? Delete { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + /// + [Input("read")] + public Input? Read { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + [Input("update")] + public Input? Update { get; set; } + + public InstanceStatusTimeoutsGetArgs() + { + } + public static new InstanceStatusTimeoutsGetArgs Empty => new InstanceStatusTimeoutsGetArgs(); + } +} diff --git a/sdk/dotnet/Genesiscloud/Instance.cs b/sdk/dotnet/Genesiscloud/Instance.cs index 88f9c01..2bad0e2 100644 --- a/sdk/dotnet/Genesiscloud/Instance.cs +++ b/sdk/dotnet/Genesiscloud/Instance.cs @@ -25,8 +25,8 @@ namespace GenesisCloud.PulumiPackage.Genesiscloud /// { /// var example = new Genesiscloud.Instance("example", new() /// { - /// Image = "my-image-id", - /// Region = "ARC-IS-HAF-1", + /// Image = "ubuntu:22.04", + /// Region = "NORD-NO-KRS-1", /// SshKeyIds = new[] /// { /// "my-ssh-key-id", @@ -40,7 +40,7 @@ namespace GenesisCloud.PulumiPackage.Genesiscloud /// ## Import /// /// ```sh - /// $ pulumi import genesiscloud:index/instance:Instance example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + /// $ pulumi import genesiscloud:index/instance:Instance example 18efeec8-94f0-4776-8ff2-5e9b49c74608 /// ``` /// [GenesiscloudResourceType("genesiscloud:index/instance:Instance")] @@ -70,18 +70,14 @@ public partial class Instance : global::Pulumi.CustomResource [Output("floatingIpId")] public Output FloatingIpId { get; private set; } = null!; - /// - /// The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - /// attribute is configured and changes, Terraform will destroy and recreate the resource. - /// [Output("hostname")] public Output Hostname { get; private set; } = null!; /// /// The source image id, image slug or snapshot id of the instance. The image version can also specified together with the /// image slug in this format `<image-slug>:<version>`. Learn more about images - /// [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - /// recreate the resource. + /// [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + /// replaced. /// [Output("image")] public Output Image { get; private set; } = null!; @@ -107,15 +103,15 @@ public partial class Instance : global::Pulumi.CustomResource /// /// The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. /// **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - /// SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - /// length must be at least 16. + /// SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + /// least 16. /// [Output("password")] public Output Password { get; private set; } = null!; /// /// The placement option identifier in which instances are physically located relative to each other within a zone. For - /// example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + /// example A or B. - If the value of this attribute changes, the resource will be replaced. /// [Output("placementOption")] public Output PlacementOption { get; private set; } = null!; @@ -133,8 +129,8 @@ public partial class Instance : global::Pulumi.CustomResource public Output PublicIp { get; private set; } = null!; /// - /// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - /// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + /// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Output("region")] public Output Region { get; private set; } = null!; @@ -152,8 +148,7 @@ public partial class Instance : global::Pulumi.CustomResource public Output> SecurityGroupIds { get; private set; } = null!; /// - /// The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. + /// The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. /// [Output("sshKeyIds")] public Output> SshKeyIds { get; private set; } = null!; @@ -169,8 +164,8 @@ public partial class Instance : global::Pulumi.CustomResource /// /// The instance type identifier. Learn more about instance types - /// [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - /// Terraform will destroy and recreate the resource. + /// [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + /// resource will be replaced. /// [Output("type")] public Output Type { get; private set; } = null!; @@ -250,18 +245,14 @@ public sealed class InstanceArgs : global::Pulumi.ResourceArgs [Input("floatingIpId")] public Input? FloatingIpId { get; set; } - /// - /// The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - /// attribute is configured and changes, Terraform will destroy and recreate the resource. - /// [Input("hostname")] public Input? Hostname { get; set; } /// /// The source image id, image slug or snapshot id of the instance. The image version can also specified together with the /// image slug in this format `<image-slug>:<version>`. Learn more about images - /// [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - /// recreate the resource. + /// [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + /// replaced. /// [Input("image", required: true)] public Input Image { get; set; } = null!; @@ -284,8 +275,8 @@ public sealed class InstanceArgs : global::Pulumi.ResourceArgs /// /// The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. /// **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - /// SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - /// length must be at least 16. + /// SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + /// least 16. /// public Input? Password { @@ -299,14 +290,14 @@ public Input? Password /// /// The placement option identifier in which instances are physically located relative to each other within a zone. For - /// example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + /// example A or B. - If the value of this attribute changes, the resource will be replaced. /// [Input("placementOption")] public Input? PlacementOption { get; set; } /// - /// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - /// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + /// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Input("region", required: true)] public Input Region { get; set; } = null!; @@ -333,8 +324,7 @@ public InputList SecurityGroupIds private InputList? _sshKeyIds; /// - /// The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. + /// The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. /// public InputList SshKeyIds { @@ -347,8 +337,8 @@ public InputList SshKeyIds /// /// The instance type identifier. Learn more about instance types - /// [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - /// Terraform will destroy and recreate the resource. + /// [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + /// resource will be replaced. /// [Input("type", required: true)] public Input Type { get; set; } = null!; @@ -397,18 +387,14 @@ public sealed class InstanceState : global::Pulumi.ResourceArgs [Input("floatingIpId")] public Input? FloatingIpId { get; set; } - /// - /// The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - /// attribute is configured and changes, Terraform will destroy and recreate the resource. - /// [Input("hostname")] public Input? Hostname { get; set; } /// /// The source image id, image slug or snapshot id of the instance. The image version can also specified together with the /// image slug in this format `<image-slug>:<version>`. Learn more about images - /// [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - /// recreate the resource. + /// [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + /// replaced. /// [Input("image")] public Input? Image { get; set; } @@ -437,8 +423,8 @@ public sealed class InstanceState : global::Pulumi.ResourceArgs /// /// The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. /// **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - /// SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - /// length must be at least 16. + /// SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + /// least 16. /// public Input? Password { @@ -452,7 +438,7 @@ public Input? Password /// /// The placement option identifier in which instances are physically located relative to each other within a zone. For - /// example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + /// example A or B. - If the value of this attribute changes, the resource will be replaced. /// [Input("placementOption")] public Input? PlacementOption { get; set; } @@ -470,8 +456,8 @@ public Input? Password public Input? PublicIp { get; set; } /// - /// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - /// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + /// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Input("region")] public Input? Region { get; set; } @@ -498,8 +484,7 @@ public InputList SecurityGroupIds private InputList? _sshKeyIds; /// - /// The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. + /// The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. /// public InputList SshKeyIds { @@ -518,8 +503,8 @@ public InputList SshKeyIds /// /// The instance type identifier. Learn more about instance types - /// [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - /// Terraform will destroy and recreate the resource. + /// [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + /// resource will be replaced. /// [Input("type")] public Input? Type { get; set; } diff --git a/sdk/dotnet/Genesiscloud/InstanceStatus.cs b/sdk/dotnet/Genesiscloud/InstanceStatus.cs new file mode 100644 index 0000000..90a31fe --- /dev/null +++ b/sdk/dotnet/Genesiscloud/InstanceStatus.cs @@ -0,0 +1,160 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace GenesisCloud.PulumiPackage.Genesiscloud +{ + /// + /// InstanceStatus resource + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Genesiscloud = GenesisCloud.PulumiPackage.Genesiscloud; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var exampleInstance = new Genesiscloud.Instance("exampleInstance", new() + /// { + /// Region = "NORD-NO-KRS-1", + /// Image = "ubuntu:22.04", + /// Type = "vcpu-2_memory-4g", + /// SshKeyIds = new[] + /// { + /// "my-ssh-key-id", + /// }, + /// }); + /// + /// var exampleInstanceStatus = new Genesiscloud.InstanceStatus("exampleInstanceStatus", new() + /// { + /// InstanceId = exampleInstance.Id, + /// Status = "active", + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// ```sh + /// $ pulumi import genesiscloud:index/instanceStatus:InstanceStatus example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + /// ``` + /// + [GenesiscloudResourceType("genesiscloud:index/instanceStatus:InstanceStatus")] + public partial class InstanceStatus : global::Pulumi.CustomResource + { + /// + /// The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + /// + [Output("instanceId")] + public Output InstanceId { get; private set; } = null!; + + /// + /// The target instance status. - The value must be one of: ["active" "stopped"]. + /// + [Output("status")] + public Output Status { get; private set; } = null!; + + [Output("timeouts")] + public Output Timeouts { get; private set; } = null!; + + + /// + /// Create a InstanceStatus resource with the given unique name, arguments, and options. + /// + /// + /// The unique name of the resource + /// The arguments used to populate this resource's properties + /// A bag of options that control this resource's behavior + public InstanceStatus(string name, InstanceStatusArgs args, CustomResourceOptions? options = null) + : base("genesiscloud:index/instanceStatus:InstanceStatus", name, args ?? new InstanceStatusArgs(), MakeResourceOptions(options, "")) + { + } + + private InstanceStatus(string name, Input id, InstanceStatusState? state = null, CustomResourceOptions? options = null) + : base("genesiscloud:index/instanceStatus:InstanceStatus", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + PluginDownloadURL = "github://api.github.com/genesiscloud", + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing InstanceStatus resource's state with the given name, ID, and optional extra + /// properties used to qualify the lookup. + /// + /// + /// The unique name of the resulting resource. + /// The unique provider ID of the resource to lookup. + /// Any extra arguments used during the lookup. + /// A bag of options that control this resource's behavior + public static InstanceStatus Get(string name, Input id, InstanceStatusState? state = null, CustomResourceOptions? options = null) + { + return new InstanceStatus(name, id, state, options); + } + } + + public sealed class InstanceStatusArgs : global::Pulumi.ResourceArgs + { + /// + /// The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + /// + [Input("instanceId", required: true)] + public Input InstanceId { get; set; } = null!; + + /// + /// The target instance status. - The value must be one of: ["active" "stopped"]. + /// + [Input("status", required: true)] + public Input Status { get; set; } = null!; + + [Input("timeouts")] + public Input? Timeouts { get; set; } + + public InstanceStatusArgs() + { + } + public static new InstanceStatusArgs Empty => new InstanceStatusArgs(); + } + + public sealed class InstanceStatusState : global::Pulumi.ResourceArgs + { + /// + /// The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + /// + [Input("instanceId")] + public Input? InstanceId { get; set; } + + /// + /// The target instance status. - The value must be one of: ["active" "stopped"]. + /// + [Input("status")] + public Input? Status { get; set; } + + [Input("timeouts")] + public Input? Timeouts { get; set; } + + public InstanceStatusState() + { + } + public static new InstanceStatusState Empty => new InstanceStatusState(); + } +} diff --git a/sdk/dotnet/Genesiscloud/Outputs/InstanceMetadata.cs b/sdk/dotnet/Genesiscloud/Outputs/InstanceMetadata.cs index 5331684..ecb26fd 100644 --- a/sdk/dotnet/Genesiscloud/Outputs/InstanceMetadata.cs +++ b/sdk/dotnet/Genesiscloud/Outputs/InstanceMetadata.cs @@ -14,6 +14,10 @@ namespace GenesisCloud.PulumiPackage.Genesiscloud.Outputs [OutputType] public sealed class InstanceMetadata { + /// + /// A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). + /// - If the value of this attribute changes, the resource will be replaced. + /// public readonly string? StartupScript; [OutputConstructor] diff --git a/sdk/dotnet/Genesiscloud/Outputs/InstanceStatusTimeouts.cs b/sdk/dotnet/Genesiscloud/Outputs/InstanceStatusTimeouts.cs new file mode 100644 index 0000000..bda8d96 --- /dev/null +++ b/sdk/dotnet/Genesiscloud/Outputs/InstanceStatusTimeouts.cs @@ -0,0 +1,50 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace GenesisCloud.PulumiPackage.Genesiscloud.Outputs +{ + + [OutputType] + public sealed class InstanceStatusTimeouts + { + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + public readonly string? Create; + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + /// + public readonly string? Delete; + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + /// + public readonly string? Read; + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + public readonly string? Update; + + [OutputConstructor] + private InstanceStatusTimeouts( + string? create, + + string? delete, + + string? read, + + string? update) + { + Create = create; + Delete = delete; + Read = read; + Update = update; + } + } +} diff --git a/sdk/dotnet/Genesiscloud/SSHKey.cs b/sdk/dotnet/Genesiscloud/SSHKey.cs index ab5394b..d246711 100644 --- a/sdk/dotnet/Genesiscloud/SSHKey.cs +++ b/sdk/dotnet/Genesiscloud/SSHKey.cs @@ -34,7 +34,7 @@ namespace GenesisCloud.PulumiPackage.Genesiscloud /// ## Import /// /// ```sh - /// $ pulumi import genesiscloud:index/sSHKey:SSHKey example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + /// $ pulumi import genesiscloud:index/sSHKey:SSHKey example 18efeec8-94f0-4776-8ff2-5e9b49c74608 /// ``` /// [GenesiscloudResourceType("genesiscloud:index/sSHKey:SSHKey")] @@ -59,7 +59,7 @@ public partial class SSHKey : global::Pulumi.CustomResource public Output Name { get; private set; } = null!; /// - /// SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + /// SSH public key. - If the value of this attribute changes, the resource will be replaced. /// [Output("publicKey")] public Output PublicKey { get; private set; } = null!; @@ -121,7 +121,7 @@ public sealed class SSHKeyArgs : global::Pulumi.ResourceArgs public Input? Name { get; set; } /// - /// SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + /// SSH public key. - If the value of this attribute changes, the resource will be replaced. /// [Input("publicKey", required: true)] public Input PublicKey { get; set; } = null!; @@ -156,7 +156,7 @@ public sealed class SSHKeyState : global::Pulumi.ResourceArgs public Input? Name { get; set; } /// - /// SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + /// SSH public key. - If the value of this attribute changes, the resource will be replaced. /// [Input("publicKey")] public Input? PublicKey { get; set; } diff --git a/sdk/dotnet/Genesiscloud/SecurityGroup.cs b/sdk/dotnet/Genesiscloud/SecurityGroup.cs index a7b7362..7f20f1d 100644 --- a/sdk/dotnet/Genesiscloud/SecurityGroup.cs +++ b/sdk/dotnet/Genesiscloud/SecurityGroup.cs @@ -16,7 +16,7 @@ namespace GenesisCloud.PulumiPackage.Genesiscloud /// ## Import /// /// ```sh - /// $ pulumi import genesiscloud:index/securityGroup:SecurityGroup example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + /// $ pulumi import genesiscloud:index/securityGroup:SecurityGroup example 18efeec8-94f0-4776-8ff2-5e9b49c74608 /// ``` /// [GenesiscloudResourceType("genesiscloud:index/securityGroup:SecurityGroup")] @@ -41,8 +41,8 @@ public partial class SecurityGroup : global::Pulumi.CustomResource public Output Name { get; private set; } = null!; /// - /// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - /// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + /// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Output("region")] public Output Region { get; private set; } = null!; @@ -119,8 +119,8 @@ public sealed class SecurityGroupArgs : global::Pulumi.ResourceArgs public Input? Name { get; set; } /// - /// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - /// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + /// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Input("region", required: true)] public Input Region { get; set; } = null!; @@ -163,8 +163,8 @@ public sealed class SecurityGroupState : global::Pulumi.ResourceArgs public Input? Name { get; set; } /// - /// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - /// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + /// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Input("region")] public Input? Region { get; set; } diff --git a/sdk/dotnet/Genesiscloud/Snapshot.cs b/sdk/dotnet/Genesiscloud/Snapshot.cs index 71d1e1b..7f3385f 100644 --- a/sdk/dotnet/Genesiscloud/Snapshot.cs +++ b/sdk/dotnet/Genesiscloud/Snapshot.cs @@ -39,7 +39,7 @@ namespace GenesisCloud.PulumiPackage.Genesiscloud /// ## Import /// /// ```sh - /// $ pulumi import genesiscloud:index/snapshot:Snapshot example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + /// $ pulumi import genesiscloud:index/snapshot:Snapshot example 18efeec8-94f0-4776-8ff2-5e9b49c74608 /// ``` /// [GenesiscloudResourceType("genesiscloud:index/snapshot:Snapshot")] @@ -52,8 +52,7 @@ public partial class Snapshot : global::Pulumi.CustomResource public Output CreatedAt { get; private set; } = null!; /// - /// The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. + /// The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. /// [Output("instanceId")] public Output InstanceId { get; private set; } = null!; @@ -77,7 +76,7 @@ public partial class Snapshot : global::Pulumi.CustomResource public Output RetainOnDelete { get; private set; } = null!; /// - /// The storage size of this snapshot given in bytes. + /// The storage size of this snapshot given in GiB. /// [Output("size")] public Output Size { get; private set; } = null!; @@ -139,8 +138,7 @@ public static Snapshot Get(string name, Input id, SnapshotState? state = public sealed class SnapshotArgs : global::Pulumi.ResourceArgs { /// - /// The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. + /// The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. /// [Input("instanceId", required: true)] public Input InstanceId { get; set; } = null!; @@ -175,8 +173,7 @@ public sealed class SnapshotState : global::Pulumi.ResourceArgs public Input? CreatedAt { get; set; } /// - /// The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. + /// The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. /// [Input("instanceId")] public Input? InstanceId { get; set; } @@ -200,7 +197,7 @@ public sealed class SnapshotState : global::Pulumi.ResourceArgs public Input? RetainOnDelete { get; set; } /// - /// The storage size of this snapshot given in bytes. + /// The storage size of this snapshot given in GiB. /// [Input("size")] public Input? Size { get; set; } diff --git a/sdk/dotnet/Genesiscloud/Volume.cs b/sdk/dotnet/Genesiscloud/Volume.cs index 689d652..84753bd 100644 --- a/sdk/dotnet/Genesiscloud/Volume.cs +++ b/sdk/dotnet/Genesiscloud/Volume.cs @@ -25,7 +25,7 @@ namespace GenesisCloud.PulumiPackage.Genesiscloud /// { /// var example = new Genesiscloud.Volume("example", new() /// { - /// Region = "ARC-IS-HAF-1", + /// Region = "NORD-NO-KRS-1", /// Size = 50, /// Type = "hdd", /// }); @@ -36,7 +36,7 @@ namespace GenesisCloud.PulumiPackage.Genesiscloud /// ## Import /// /// ```sh - /// $ pulumi import genesiscloud:index/volume:Volume example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + /// $ pulumi import genesiscloud:index/volume:Volume example 18efeec8-94f0-4776-8ff2-5e9b49c74608 /// ``` /// [GenesiscloudResourceType("genesiscloud:index/volume:Volume")] @@ -61,8 +61,8 @@ public partial class Volume : global::Pulumi.CustomResource public Output Name { get; private set; } = null!; /// - /// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - /// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + /// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Output("region")] public Output Region { get; private set; } = null!; @@ -74,8 +74,7 @@ public partial class Volume : global::Pulumi.CustomResource public Output RetainOnDelete { get; private set; } = null!; /// - /// The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - /// recreate the resource. - The value must be at least 1. + /// The storage size of this volume given in GiB. - The value must be at least 1. /// [Output("size")] public Output Size { get; private set; } = null!; @@ -90,8 +89,8 @@ public partial class Volume : global::Pulumi.CustomResource public Output Timeouts { get; private set; } = null!; /// - /// The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. - The value must be one of: ["hdd" "ssd"]. + /// The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + /// must be one of: ["hdd" "ssd"]. /// [Output("type")] public Output Type { get; private set; } = null!; @@ -156,8 +155,8 @@ public sealed class VolumeArgs : global::Pulumi.ResourceArgs public Input? Name { get; set; } /// - /// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - /// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + /// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Input("region", required: true)] public Input Region { get; set; } = null!; @@ -169,8 +168,7 @@ public sealed class VolumeArgs : global::Pulumi.ResourceArgs public Input? RetainOnDelete { get; set; } /// - /// The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - /// recreate the resource. - The value must be at least 1. + /// The storage size of this volume given in GiB. - The value must be at least 1. /// [Input("size", required: true)] public Input Size { get; set; } = null!; @@ -179,8 +177,8 @@ public sealed class VolumeArgs : global::Pulumi.ResourceArgs public Input? Timeouts { get; set; } /// - /// The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. - The value must be one of: ["hdd" "ssd"]. + /// The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + /// must be one of: ["hdd" "ssd"]. /// [Input("type", required: true)] public Input Type { get; set; } = null!; @@ -212,8 +210,8 @@ public sealed class VolumeState : global::Pulumi.ResourceArgs public Input? Name { get; set; } /// - /// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - /// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + /// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + /// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. /// [Input("region")] public Input? Region { get; set; } @@ -225,8 +223,7 @@ public sealed class VolumeState : global::Pulumi.ResourceArgs public Input? RetainOnDelete { get; set; } /// - /// The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - /// recreate the resource. - The value must be at least 1. + /// The storage size of this volume given in GiB. - The value must be at least 1. /// [Input("size")] public Input? Size { get; set; } @@ -241,8 +238,8 @@ public sealed class VolumeState : global::Pulumi.ResourceArgs public Input? Timeouts { get; set; } /// - /// The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - /// resource. - The value must be one of: ["hdd" "ssd"]. + /// The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + /// must be one of: ["hdd" "ssd"]. /// [Input("type")] public Input? Type { get; set; } diff --git a/sdk/go.mod b/sdk/go.mod index 8d6a902..0965ef8 100644 --- a/sdk/go.mod +++ b/sdk/go.mod @@ -1,54 +1,54 @@ module github.com/genesiscloud/pulumi-genesiscloud/sdk -go 1.22.1 +go 1.23.1 require ( github.com/blang/semver v3.5.1+incompatible - github.com/pulumi/pulumi/sdk/v3 v3.111.1 + github.com/pulumi/pulumi/sdk/v3 v3.137.0 ) require ( - dario.cat/mergo v1.0.0 // indirect - github.com/Microsoft/go-winio v0.6.1 // indirect - github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371 // indirect - github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect + dario.cat/mergo v1.0.1 // indirect + github.com/BurntSushi/toml v1.4.0 // indirect + github.com/Microsoft/go-winio v0.6.2 // indirect + github.com/ProtonMail/go-crypto v1.0.0 // indirect github.com/agext/levenshtein v1.2.3 // indirect - github.com/apparentlymart/go-textseg/v13 v13.0.0 // indirect + github.com/apparentlymart/go-textseg/v15 v15.0.0 // indirect github.com/atotto/clipboard v0.1.4 // indirect github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect - github.com/charmbracelet/bubbles v0.16.1 // indirect - github.com/charmbracelet/bubbletea v0.24.2 // indirect - github.com/charmbracelet/lipgloss v0.7.1 // indirect + github.com/charmbracelet/bubbles v0.20.0 // indirect + github.com/charmbracelet/bubbletea v1.1.1 // indirect + github.com/charmbracelet/lipgloss v0.13.0 // indirect + github.com/charmbracelet/x/ansi v0.3.2 // indirect + github.com/charmbracelet/x/term v0.2.0 // indirect github.com/cheggaaa/pb v1.0.29 // indirect - github.com/cloudflare/circl v1.3.7 // indirect - github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 // indirect - github.com/cyphar/filepath-securejoin v0.2.4 // indirect - github.com/djherbis/times v1.5.0 // indirect + github.com/cloudflare/circl v1.5.0 // indirect + github.com/cyphar/filepath-securejoin v0.3.4 // indirect + github.com/djherbis/times v1.6.0 // indirect github.com/emirpasic/gods v1.18.1 // indirect + github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect - github.com/go-git/go-billy/v5 v5.5.0 // indirect - github.com/go-git/go-git/v5 v5.11.0 // indirect + github.com/go-git/go-billy/v5 v5.6.0 // indirect + github.com/go-git/go-git/v5 v5.12.0 // indirect github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang/glog v1.1.0 // indirect + github.com/golang/glog v1.2.2 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect - github.com/golang/protobuf v1.5.3 // indirect - github.com/google/uuid v1.3.0 // indirect + github.com/google/uuid v1.6.0 // indirect github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect - github.com/hashicorp/hcl/v2 v2.17.0 // indirect + github.com/hashicorp/hcl/v2 v2.22.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect github.com/kevinburke/ssh_config v1.2.0 // indirect github.com/lucasb-eyer/go-colorful v1.2.0 // indirect - github.com/mattn/go-isatty v0.0.19 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect github.com/mattn/go-localereader v0.0.1 // indirect - github.com/mattn/go-runewidth v0.0.15 // indirect + github.com/mattn/go-runewidth v0.0.16 // indirect github.com/mitchellh/go-ps v1.0.0 // indirect github.com/mitchellh/go-wordwrap v1.0.1 // indirect github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 // indirect github.com/muesli/cancelreader v0.2.2 // indirect - github.com/muesli/reflow v0.3.0 // indirect github.com/muesli/termenv v0.15.2 // indirect github.com/opentracing/basictracer-go v1.1.0 // indirect github.com/opentracing/opentracing-go v1.2.0 // indirect @@ -57,36 +57,35 @@ require ( github.com/pkg/errors v0.9.1 // indirect github.com/pkg/term v1.1.0 // indirect github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect - github.com/pulumi/esc v0.6.2 // indirect - github.com/rivo/uniseg v0.4.4 // indirect - github.com/rogpeppe/go-internal v1.11.0 // indirect + github.com/pulumi/esc v0.10.0 // indirect + github.com/rivo/uniseg v0.4.7 // indirect + github.com/rogpeppe/go-internal v1.13.1 // indirect github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect - github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 // indirect - github.com/sergi/go-diff v1.3.1 // indirect - github.com/skeema/knownhosts v1.2.1 // indirect - github.com/spf13/cast v1.4.1 // indirect - github.com/spf13/cobra v1.7.0 // indirect + github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 // indirect + github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect + github.com/skeema/knownhosts v1.3.0 // indirect + github.com/spf13/cast v1.7.0 // indirect + github.com/spf13/cobra v1.8.1 // indirect github.com/spf13/pflag v1.0.5 // indirect github.com/texttheater/golang-levenshtein v1.0.1 // indirect - github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 // indirect github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect github.com/uber/jaeger-lib v2.4.1+incompatible // indirect github.com/xanzy/ssh-agent v0.3.3 // indirect - github.com/zclconf/go-cty v1.13.2 // indirect - go.uber.org/atomic v1.9.0 // indirect - golang.org/x/crypto v0.21.0 // indirect - golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa // indirect - golang.org/x/mod v0.14.0 // indirect - golang.org/x/net v0.23.0 // indirect - golang.org/x/sync v0.5.0 // indirect - golang.org/x/sys v0.18.0 // indirect - golang.org/x/term v0.18.0 // indirect - golang.org/x/text v0.14.0 // indirect - golang.org/x/tools v0.15.0 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20230706204954-ccb25ca9f130 // indirect - google.golang.org/grpc v1.57.1 // indirect - google.golang.org/protobuf v1.33.0 // indirect + github.com/zclconf/go-cty v1.15.0 // indirect + go.uber.org/atomic v1.11.0 // indirect + golang.org/x/crypto v0.28.0 // indirect + golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c // indirect + golang.org/x/mod v0.21.0 // indirect + golang.org/x/net v0.30.0 // indirect + golang.org/x/sync v0.8.0 // indirect + golang.org/x/sys v0.26.0 // indirect + golang.org/x/term v0.25.0 // indirect + golang.org/x/text v0.19.0 // indirect + golang.org/x/tools v0.26.0 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38 // indirect + google.golang.org/grpc v1.67.1 // indirect + google.golang.org/protobuf v1.35.1 // indirect gopkg.in/warnings.v0 v0.1.2 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - lukechampine.com/frand v1.4.2 // indirect + lukechampine.com/frand v1.5.1 // indirect ) diff --git a/sdk/go.sum b/sdk/go.sum index 0433395..4a28df5 100644 --- a/sdk/go.sum +++ b/sdk/go.sum @@ -1,20 +1,20 @@ -dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= -dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= +dario.cat/mergo v1.0.1 h1:Ra4+bf83h2ztPIQYNP99R6m+Y7KfnARDfID+a+vLl4s= +dario.cat/mergo v1.0.1/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= +github.com/BurntSushi/toml v1.4.0 h1:kuoIxZQy2WRRk1pttg9asf+WVv6tWQuBNVmK8+nqPr0= +github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= github.com/HdrHistogram/hdrhistogram-go v1.1.2 h1:5IcZpTvzydCQeHzK4Ef/D5rrSqwxob0t8PQPMybUNFM= github.com/HdrHistogram/hdrhistogram-go v1.1.2/go.mod h1:yDgFjdqOqDEKOvasDdhWNXYg9BVp4O+o5f6V/ehm6Oo= github.com/Microsoft/go-winio v0.5.2/go.mod h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v8QkMxJ6pZY= -github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= -github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= -github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371 h1:kkhsdkhsCvIsutKu5zLMgWtgh9YxGCNAw8Ad8hjwfYg= -github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= -github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da h1:KjTM2ks9d14ZYCvmHS9iAKVt9AyzRSqNU1qabPih5BY= -github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da/go.mod h1:eHEWzANqSiWQsof+nXEI9bUVUyV6F53Fp89EuCh2EAA= +github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY= +github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU= +github.com/ProtonMail/go-crypto v1.0.0 h1:LRuvITjQWX+WIfr930YHG2HNfjR1uOfyf5vE0kC2U78= +github.com/ProtonMail/go-crypto v1.0.0/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo= github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFIImctFaOjnTIavg87rW78vTPkQqLI8= github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4= -github.com/apparentlymart/go-textseg/v13 v13.0.0 h1:Y+KvPE1NYz0xl601PVImeQfFyEy6iT90AvPUL1NNfNw= -github.com/apparentlymart/go-textseg/v13 v13.0.0/go.mod h1:ZK2fH7c4NqDTLtiYLvIkEghdlcqw7yxLeM89kiTRPUo= +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/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio= github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= github.com/atotto/clipboard v0.1.4 h1:EH0zSVneZPSuFR11BlR9YppQTVDbh5+16AmcJi4g1z4= @@ -24,59 +24,60 @@ github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ github.com/blang/semver v3.5.1+incompatible h1:cQNTCjp13qL8KC3Nbxr/y2Bqb63oX6wdnnjpJbkM4JQ= github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0= -github.com/charmbracelet/bubbles v0.16.1 h1:6uzpAAaT9ZqKssntbvZMlksWHruQLNxg49H5WdeuYSY= -github.com/charmbracelet/bubbles v0.16.1/go.mod h1:2QCp9LFlEsBQMvIYERr7Ww2H2bA7xen1idUDIzm/+Xc= -github.com/charmbracelet/bubbletea v0.24.2 h1:uaQIKx9Ai6Gdh5zpTbGiWpytMU+CfsPp06RaW2cx/SY= -github.com/charmbracelet/bubbletea v0.24.2/go.mod h1:XdrNrV4J8GiyshTtx3DNuYkR1FDaJmO3l2nejekbsgg= -github.com/charmbracelet/lipgloss v0.7.1 h1:17WMwi7N1b1rVWOjMT+rCh7sQkvDU75B2hbZpc5Kc1E= -github.com/charmbracelet/lipgloss v0.7.1/go.mod h1:yG0k3giv8Qj8edTCbbg6AlQ5e8KNWpFujkNawKNhE2c= +github.com/charmbracelet/bubbles v0.20.0 h1:jSZu6qD8cRQ6k9OMfR1WlM+ruM8fkPWkHvQWD9LIutE= +github.com/charmbracelet/bubbles v0.20.0/go.mod h1:39slydyswPy+uVOHZ5x/GjwVAFkCsV8IIVy+4MhzwwU= +github.com/charmbracelet/bubbletea v1.1.1 h1:KJ2/DnmpfqFtDNVTvYZ6zpPFL9iRCRr0qqKOCvppbPY= +github.com/charmbracelet/bubbletea v1.1.1/go.mod h1:9Ogk0HrdbHolIKHdjfFpyXJmiCzGwy+FesYkZr7hYU4= +github.com/charmbracelet/lipgloss v0.13.0 h1:4X3PPeoWEDCMvzDvGmTajSyYPcZM4+y8sCA/SsA3cjw= +github.com/charmbracelet/lipgloss v0.13.0/go.mod h1:nw4zy0SBX/F/eAO1cWdcvy6qnkDUxr8Lw7dvFrAIbbY= +github.com/charmbracelet/x/ansi v0.3.2 h1:wsEwgAN+C9U06l9dCVMX0/L3x7ptvY1qmjMwyfE6USY= +github.com/charmbracelet/x/ansi v0.3.2/go.mod h1:dk73KoMTT5AX5BsX0KrqhsTqAnhZZoCBjs7dGWp4Ktw= +github.com/charmbracelet/x/term v0.2.0 h1:cNB9Ot9q8I711MyZ7myUR5HFWL/lc3OpU8jZ4hwm0x0= +github.com/charmbracelet/x/term v0.2.0/go.mod h1:GVxgxAbjUrmpvIINHIQnJJKpMlHiZ4cktEQCN6GWyF0= github.com/cheggaaa/pb v1.0.29 h1:FckUN5ngEk2LpvuG0fw1GEFx6LtyY2pWI/Z2QgCnEYo= github.com/cheggaaa/pb v1.0.29/go.mod h1:W40334L7FMC5JKWldsTWbdGjLo0RxUKK73K+TuPxX30= github.com/cloudflare/circl v1.3.3/go.mod h1:5XYMA4rFBvNIrhs50XuiBJ15vF2pZn4nnUKZrLbUZFA= -github.com/cloudflare/circl v1.3.7 h1:qlCDlTPz2n9fu58M0Nh1J/JzcFpfgkFHHX3O35r5vcU= -github.com/cloudflare/circl v1.3.7/go.mod h1:sRTcRWXGLrKw6yIGJ+l7amYJFfAXbZG0kBSc8r4zxgA= -github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 h1:q2hJAaP1k2wIvVRd/hEHD7lacgqrCPS+k8g1MndzfWY= -github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81/go.mod h1:YynlIjWYF8myEu6sdkwKIvGQq+cOckRm6So2avqoYAk= -github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= -github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= -github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= +github.com/cloudflare/circl v1.5.0 h1:hxIWksrX6XN5a1L2TI/h53AGPhNHoUBo+TD1ms9+pys= +github.com/cloudflare/circl v1.5.0/go.mod h1:uddAzsPgqdMAYatqJ0lsjX1oECcQLIlRpzZh3pJrofs= +github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/cyphar/filepath-securejoin v0.3.4 h1:VBWugsJh2ZxJmLFSM06/0qzQyiQX2Qs0ViKrUAcqdZ8= +github.com/cyphar/filepath-securejoin v0.3.4/go.mod h1:8s/MCNJREmFK0H02MF6Ihv1nakJe4L/w3WZLHNkvlYM= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/djherbis/times v1.5.0 h1:79myA211VwPhFTqUk8xehWrsEO+zcIZj0zT8mXPVARU= -github.com/djherbis/times v1.5.0/go.mod h1:5q7FDLvbNg1L/KaBmPcWlVR9NmoKo3+ucqUA3ijQhA0= +github.com/djherbis/times v1.6.0 h1:w2ctJ92J8fBvWPxugmXIv7Nz7Q3iDMKNx9v5ocVH20c= +github.com/djherbis/times v1.6.0/go.mod h1:gOHeRAz2h+VJNZ5Gmc/o7iD9k4wW7NMVqieYCY99oc0= github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a h1:mATvB/9r/3gvcejNsXKSkQ6lcIaNec2nyfOdlTBR2lU= github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM= github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc= github.com/emirpasic/gods v1.18.1/go.mod h1:8tpGGwCnJ5H4r6BWwaV6OrWmMoPhUl5jm/FMNAnJvWQ= +github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f h1:Y/CXytFA4m6baUTXGLOoWe4PQhGxaX0KpnayAqC48p4= +github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f/go.mod h1:vw97MGsxSvLiUE2X8qFplwetxpGLQrlU1Q9AUEIzCaM= +github.com/fatih/color v1.9.0 h1:8xPHl4/q1VyqGIPif1F+1V3Y3lSmrq01EabUW3CoW5s= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= -github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= -github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= -github.com/gliderlabs/ssh v0.3.5 h1:OcaySEmAQJgyYcArR+gGGTHCyE7nvhEMTlYY+Dp8CpY= -github.com/gliderlabs/ssh v0.3.5/go.mod h1:8XB4KraRrX39qHhT6yxPsHedjA08I/uBVwj4xC+/+z4= +github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= +github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= +github.com/gliderlabs/ssh v0.3.7 h1:iV3Bqi942d9huXnzEF2Mt+CY9gLu8DNM4Obd+8bODRE= +github.com/gliderlabs/ssh v0.3.7/go.mod h1:zpHEXBstFnQYtGnB8k8kQLol82umzn/2/snG7alWVD8= github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI= github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic= -github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU= -github.com/go-git/go-billy/v5 v5.5.0/go.mod h1:hmexnoNsr2SJU1Ju67OaNz5ASJY3+sHgFRpCtpDCKow= +github.com/go-git/go-billy/v5 v5.6.0 h1:w2hPNtoehvJIxR00Vb4xX94qHQi/ApZfX+nBE2Cjio8= +github.com/go-git/go-billy/v5 v5.6.0/go.mod h1:sFDq7xD3fn3E0GOwUSZqHo9lrkmx8xJhA0ZrfvjBRGM= github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4= github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII= -github.com/go-git/go-git/v5 v5.11.0 h1:XIZc1p+8YzypNr34itUfSvYJcv+eYdTnTvOZ2vD3cA4= -github.com/go-git/go-git/v5 v5.11.0/go.mod h1:6GFcX2P3NM7FPBfpePbpLd21XxsgdAt+lKqXmCUiUCY= +github.com/go-git/go-git/v5 v5.12.0 h1:7Md+ndsjrzZxbddRDZjF14qK+NN56sy6wkqaVrjZtys= +github.com/go-git/go-git/v5 v5.12.0/go.mod h1:FTM9VKtnI2m65hNI/TenDDDnUf2Q9FHnXYjuz9i5OEY= github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= -github.com/golang/glog v1.1.0 h1:/d3pCKDPWNnvIWe0vVUpNP32qc8U3PDVxySP/y360qE= -github.com/golang/glog v1.1.0/go.mod h1:pfYeQZ3JWZoXTV5sFc986z3HTpwQs9At6P4ImfuP3NQ= +github.com/golang/glog v1.2.2 h1:1+mZ9upx1Dh6FmUTFR1naJ77miKiXgALjWOZ3NVFPmY= +github.com/golang/glog v1.2.2/go.mod h1:6AhwSGph0fcJtXVM/PEHPqZlFeoLxhs7/t5UDAwmO+w= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= -github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= -github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= -github.com/google/uuid v1.3.0/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/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 h1:MJG/KsmcqMwFAkh8mTnAwhyKoB+sTAnY4CACC110tbU= github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645/go.mod h1:6iZfnjpejD4L/4DwD7NryNaJyCQdzwWwH2MWhCA90Kw= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= @@ -84,8 +85,8 @@ github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= 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/hcl/v2 v2.17.0 h1:z1XvSUyXd1HP10U4lrLg5e0JMVz6CPaJvAgxM0KNZVY= -github.com/hashicorp/hcl/v2 v2.17.0/go.mod h1:gJyW2PTShkJqQBKpAmPO3yxMxIuoXkOF2TpqXzrQyx4= +github.com/hashicorp/hcl/v2 v2.22.0 h1:hkZ3nCtqeJsDhPRFz5EA9iwcG1hNWGePOTw6oyul12M= +github.com/hashicorp/hcl/v2 v2.22.0/go.mod h1:62ZYHrXgPoX8xBnzl8QzbWq4dyDsDtfCRgIq1rbJEvA= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A= @@ -105,18 +106,17 @@ github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY= github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= -github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40= -github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= +github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= +github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg= github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE= -github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA= -github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +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/mattn/go-localereader v0.0.1 h1:ygSAOl7ZXTx4RdPYinUpg6W99U8jWvWi9Ye2JC/oIi4= github.com/mattn/go-localereader v0.0.1/go.mod h1:8fBrzywKY7BI3czFoHkuzRoWE9C+EiG4R1k4Cjx5p88= github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= -github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk= -github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U= -github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= +github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc= +github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= github.com/mitchellh/go-ps v1.0.0 h1:i6ampVEEF4wQFF+bkYfwYgY+F/uYJDktmvLPf7qIgjc= github.com/mitchellh/go-ps v1.0.0/go.mod h1:J4lOc8z8yJs6vUwklHw2XEIiT4z4C40KtWVN3nvg8Pg= github.com/mitchellh/go-wordwrap v1.0.1 h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0= @@ -125,12 +125,10 @@ github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 h1:ZK8zHtRHOkbHy6Mmr5D github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6/go.mod h1:CJlz5H+gyd6CUWT45Oy4q24RdLyn7Md9Vj2/ldJBSIo= github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA= github.com/muesli/cancelreader v0.2.2/go.mod h1:3XuTXfFS2VjM+HTLZY9Ak0l6eUKfijIfMUZ4EgX0QYo= -github.com/muesli/reflow v0.3.0 h1:IFsN6K9NfGtjeggFP+68I4chLZV2yIKsXJFNZ+eWh6s= -github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKtnHY/8= github.com/muesli/termenv v0.15.2 h1:GohcuySI0QmI3wN8Ok9PtKGkgkFIk7y6Vpb5PvrY+Wo= github.com/muesli/termenv v0.15.2/go.mod h1:Epx+iuz8sNs7mNKhxzH4fWXGNpZwUaJKRS1noLXviQ8= -github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= -github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M= +github.com/onsi/gomega v1.34.1 h1:EUMJIKUjM8sKjYbtxQI9A4z2o+rruxnzNvpknOXie6k= +github.com/onsi/gomega v1.34.1/go.mod h1:kU1QgUvBDLXBJq618Xvm2LUX6rSAfRaFRTcdOeDLwwY= github.com/opentracing/basictracer-go v1.1.0 h1:Oa1fTSBvAl8pa3U+IJYqrKm0NALwH9OsgwOqDv4xJW0= github.com/opentracing/basictracer-go v1.1.0/go.mod h1:V2HZueSJEp879yv285Aap1BS69fQMD+MNP1mRs6mBQc= github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= @@ -148,30 +146,29 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435cARxCW6q9gc0S/Yxz7Mkd38pOb0= github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE= -github.com/pulumi/esc v0.6.2 h1:+z+l8cuwIauLSwXQS0uoI3rqB+YG4SzsZYtHfNoXBvw= -github.com/pulumi/esc v0.6.2/go.mod h1:jNnYNjzsOgVTjCp0LL24NsCk8ZJxq4IoLQdCT0X7l8k= -github.com/pulumi/pulumi/sdk/v3 v3.111.1 h1:uOeG/b6YxBuL59xHtmFPspMa8BB6ovjHelL7sVCGJZw= -github.com/pulumi/pulumi/sdk/v3 v3.111.1/go.mod h1:5A6GHUwAJlRY1SSLZh84aDIbsBShcrfcmHzI50ecSBg= -github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= +github.com/pulumi/esc v0.10.0 h1:jzBKzkLVW0mePeanDRfqSQoCJ5yrkux0jIwAkUxpRKE= +github.com/pulumi/esc v0.10.0/go.mod h1:2Bfa+FWj/xl8CKqRTWbWgDX0SOD4opdQgvYSURTGK2c= +github.com/pulumi/pulumi/sdk/v3 v3.137.0 h1:bxhYpOY7Z4xt+VmezEpHuhjpOekkaMqOjzxFg/1OhCw= +github.com/pulumi/pulumi/sdk/v3 v3.137.0/go.mod h1:PvKsX88co8XuwuPdzolMvew5lZV+4JmZfkeSjj7A6dI= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= -github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= -github.com/rivo/uniseg v0.4.4/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= -github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M= -github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA= +github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= +github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= +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/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 h1:OkMGxebDjyw0ULyrTYWeN0UNCCkmCWfjPnIA2W6oviI= github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06/go.mod h1:+ePHsJ1keEjQtpvf9HHw0f4ZeJ0TLRsxhunSI2hYJSs= -github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 h1:TToq11gyfNlrMFZiYujSekIsPd9AmsA2Bj/iv+s4JHE= -github.com/santhosh-tekuri/jsonschema/v5 v5.0.0/go.mod h1:FKdcjfQW6rpZSnxxUvEA5H/cDPdvJ/SZJQLWWXWGrZ0= -github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= -github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= +github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 h1:lZUw3E0/J3roVtGQ+SCrUrg3ON6NgVqpn3+iol9aGu4= +github.com/santhosh-tekuri/jsonschema/v5 v5.3.1/go.mod h1:uToXkOrWAZ6/Oc07xWQrPOhJotwFIyu2bBVN41fcDUY= +github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8= +github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4= github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= -github.com/skeema/knownhosts v1.2.1 h1:SHWdIUa82uGZz+F+47k8SY4QhhI291cXCpopT1lK2AQ= -github.com/skeema/knownhosts v1.2.1/go.mod h1:xYbVRSPxqBZFrdmDyMmsOs+uX1UZC3nTN3ThzgDxUwo= -github.com/spf13/cast v1.4.1 h1:s0hze+J0196ZfEMTs80N7UlFt0BDuQ7Q+JDnHiMWKdA= -github.com/spf13/cast v1.4.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= -github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I= -github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0= +github.com/skeema/knownhosts v1.3.0 h1:AM+y0rI04VksttfwjkSTNQorvGqmwATnvnAHpSgc0LY= +github.com/skeema/knownhosts v1.3.0/go.mod h1:sPINvnADmT/qYH1kfv+ePMmOBTH6Tbl7b5LvTDjFK7M= +github.com/spf13/cast v1.7.0 h1:ntdiHjuueXFgm5nzDRdOS4yfT43P5Fnud6DH50rz/7w= +github.com/spf13/cast v1.7.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= +github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM= +github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/stretchr/objx v0.1.0 h1:4G4v2dO3VZwixGIRoQ5Lfboy6nUhCyYzaqnIAPPhYs4= @@ -181,12 +178,10 @@ github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UV github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= -github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/texttheater/golang-levenshtein v1.0.1 h1:+cRNoVrfiwufQPhoMzB6N0Yf/Mqajr6t1lOv8GyGE2U= github.com/texttheater/golang-levenshtein v1.0.1/go.mod h1:PYAKrbF5sAiq9wd+H82hs7gNaen0CplQ9uvm6+enD/8= -github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 h1:X9dsIWPuuEJlPX//UmRKophhOKCGXc46RVIGuttks68= -github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7/go.mod h1:UxoP3EypF8JfGEjAII8jx1q8rQyDnX8qdTCs/UQBVIE= github.com/uber/jaeger-client-go v2.30.0+incompatible h1:D6wyKGCecFaSRUpo8lCVbaOOb6ThwMmTEbhRwtKR97o= github.com/uber/jaeger-client-go v2.30.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= github.com/uber/jaeger-lib v2.4.1+incompatible h1:td4jdvLcExb4cBISKIpHuGoVXh+dVKhn2Um6rjCsSsg= @@ -196,10 +191,10 @@ github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -github.com/zclconf/go-cty v1.13.2 h1:4GvrUxe/QUDYuJKAav4EYqdM47/kZa672LwmXFmEKT0= -github.com/zclconf/go-cty v1.13.2/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0= -go.uber.org/atomic v1.9.0 h1:ECmE8Bn/WFTYwEW/bpKD3M8VtR/zQVbavAoalC1PYyE= -go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +github.com/zclconf/go-cty v1.15.0 h1:tTCRWxsexYUmtt/wVxgDClUe+uQusuI443uL6e+5sXQ= +github.com/zclconf/go-cty v1.15.0/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= +go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE= +go.uber.org/atomic v1.11.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= @@ -207,18 +202,18 @@ golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5y golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= -golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA= -golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs= -golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa h1:FRnLl4eNAQl8hwxVVC17teOw8kdjVDVAiFMtgUdTSRQ= -golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa/go.mod h1:zk2irFbV9DP96SEBUUAy67IdHUaZuSnrz1n472HUCLE= +golang.org/x/crypto v0.28.0 h1:GBDwsMXVQi34v5CCYUm2jkJvu4cbtru2U4TN2PSyQnw= +golang.org/x/crypto v0.28.0/go.mod h1:rmgy+3RHxRZMyY0jjAJShp2zgEdOqj2AO7U0pYmeQ7U= +golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c h1:7dEasQXItcW1xKJ2+gg5VOiBnqWrJc+rq0DPKyvvdbY= +golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c/go.mod h1:NQtJDoLvd6faHhE7m4T/1IY708gDefGGjR/iUW8yQQ8= golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= 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.14.0 h1:dGoOF9QVLYng8IHTm7BAyWqCqSheQ5pYWGhzW00YJr0= -golang.org/x/mod v0.14.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.21.0 h1:vvrHzRwRfVKSiLrG+d4FMl/Qi4ukBCE6kZlTUkDYRT0= +golang.org/x/mod v0.21.0/go.mod h1:6SkKJ3Xj0I0BrPOZoBy3bdMptDDU9oJrpohJ3eWZ1fY= 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-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -230,19 +225,18 @@ golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= -golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs= -golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= +golang.org/x/net v0.30.0 h1:AcW1SDZMkb8IpzCdQUaIq2sP4sZ4zw+55h6ynffypl4= +golang.org/x/net v0.30.0/go.mod h1:2wGyMJ5iFasEhkwi13ChkO/t1ECNC4X4eBKkVFyYFlU= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/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.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE= -golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= 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-20190626221950-04f50cda93cb/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200909081042-eff7692f9009/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -251,23 +245,24 @@ golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/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-20210809222454-d867a43fc93e/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-20220615213510-4f61da869c0c/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.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.3.0/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.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4= -golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo= +golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= 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.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= -golang.org/x/term v0.18.0 h1:FcHjZXDMxI8mM3nwhX9HlKop4C0YQvCVCdwYl2wOtE8= -golang.org/x/term v0.18.0/go.mod h1:ILwASektA3OnRv7amZ1xhE/KTR+u50pbXfZ03+6Nx58= +golang.org/x/term v0.25.0 h1:WtHI/ltw4NvSUig5KARz9h521QvRC8RmF/cuYqifU24= +golang.org/x/term v0.25.0/go.mod h1:RPyXicDX+6vLxogjjRxjgD2TKtmAO6NZBsBRfrOLu7M= 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.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= @@ -275,8 +270,8 @@ golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= -golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= -golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM= +golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= @@ -285,20 +280,18 @@ golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roY golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= 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.15.0 h1:zdAyfUGbYmuVokhzVmghFl2ZJh5QhcfebBgmVPFYA+8= -golang.org/x/tools v0.15.0/go.mod h1:hpksKq4dtpQWS1uQ61JkdqWM3LscIS6Slf+VVkm+wQk= +golang.org/x/tools v0.26.0 h1:v/60pFQmzmT9ExmjDv2gGIfi3OqfKoEP6I5+umXlbnQ= +golang.org/x/tools v0.26.0/go.mod h1:TPVVj70c7JJ3WCazhD8OdXcZg/og+b9+tH/KxylGwH0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230706204954-ccb25ca9f130 h1:2FZP5XuJY9zQyGM5N0rtovnoXjiMUEIUMvw0m9wlpLc= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230706204954-ccb25ca9f130/go.mod h1:8mL13HKkDa+IuJ8yruA3ci0q+0vsUz4m//+ottjwS5o= -google.golang.org/grpc v1.57.1 h1:upNTNqv0ES+2ZOOqACwVtS3Il8M12/+Hz41RCPzAjQg= -google.golang.org/grpc v1.57.1/go.mod h1:Sd+9RMTACXwmub0zcNY2c4arhtrbBYD1AUHI/dt16Mo= -google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= -google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= -google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38 h1:zciRKQ4kBpFgpfC5QQCVtnnNAcLIqweL7plyZRQHVpI= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38/go.mod h1:GX3210XPVPUjJbTUbvwI8f2IpZDMZuPJWDzDuebbviI= +google.golang.org/grpc v1.67.1 h1:zWnc1Vrcno+lHZCOofnIMvycFcc0QRGIzm9dhnDX68E= +google.golang.org/grpc v1.67.1/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA= +google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA= +google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= 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= @@ -311,7 +304,7 @@ 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.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -lukechampine.com/frand v1.4.2 h1:RzFIpOvkMXuPMBb9maa4ND4wjBn71E1Jpf8BzJHMaVw= -lukechampine.com/frand v1.4.2/go.mod h1:4S/TM2ZgrKejMcKMbeLjISpJMO+/eZ1zu3vYX9dtj3s= +lukechampine.com/frand v1.5.1 h1:fg0eRtdmGFIxhP5zQJzM1lFDbD6CUfu/f+7WgAZd5/w= +lukechampine.com/frand v1.5.1/go.mod h1:4VstaWc2plN4Mjr10chUD46RAVGWhpkZ5Nja8+Azp0Q= pgregory.net/rapid v0.5.5 h1:jkgx1TjbQPD/feRoK+S/mXw9e1uj6WilpHrXJowi6oA= pgregory.net/rapid v0.5.5/go.mod h1:PY5XlDGj0+V1FCq0o192FdRhpKHGTRIWBgqjDBTrq04= diff --git a/sdk/go/genesiscloud/filesystem.go b/sdk/go/genesiscloud/filesystem.go index e661097..ecc59ef 100644 --- a/sdk/go/genesiscloud/filesystem.go +++ b/sdk/go/genesiscloud/filesystem.go @@ -46,9 +46,7 @@ import ( // ## Import // // ```sh -// -// $ pulumi import genesiscloud:index/filesystem:Filesystem example 18efeec8-94f0-4776-8ff2-5e9b49c74608 -// +// $ pulumi import genesiscloud:index/filesystem:Filesystem example 18efeec8-94f0-4776-8ff2-5e9b49c74608 // ``` type Filesystem struct { pulumi.CustomResourceState @@ -63,8 +61,8 @@ type Filesystem struct { MountEndpointRanges pulumi.StringArrayOutput `pulumi:"mountEndpointRanges"` // The human-readable name for the filesystem. Name pulumi.StringOutput `pulumi:"name"` - // The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - // destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + // replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringOutput `pulumi:"region"` // Flag to retain the filesystem when the resource is deleted - Sets the default value "false" if the attribute is not set. RetainOnDelete pulumi.BoolOutput `pulumi:"retainOnDelete"` @@ -73,8 +71,8 @@ type Filesystem struct { // The filesystem status. Status pulumi.StringOutput `pulumi:"status"` Timeouts FilesystemTimeoutsPtrOutput `pulumi:"timeouts"` - // The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["vast"]. + // The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["vast"]. Type pulumi.StringOutput `pulumi:"type"` } @@ -127,8 +125,8 @@ type filesystemState struct { MountEndpointRanges []string `pulumi:"mountEndpointRanges"` // The human-readable name for the filesystem. Name *string `pulumi:"name"` - // The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - // destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + // replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region *string `pulumi:"region"` // Flag to retain the filesystem when the resource is deleted - Sets the default value "false" if the attribute is not set. RetainOnDelete *bool `pulumi:"retainOnDelete"` @@ -137,8 +135,8 @@ type filesystemState struct { // The filesystem status. Status *string `pulumi:"status"` Timeouts *FilesystemTimeouts `pulumi:"timeouts"` - // The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["vast"]. + // The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["vast"]. Type *string `pulumi:"type"` } @@ -153,8 +151,8 @@ type FilesystemState struct { MountEndpointRanges pulumi.StringArrayInput // The human-readable name for the filesystem. Name pulumi.StringPtrInput - // The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - // destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + // replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringPtrInput // Flag to retain the filesystem when the resource is deleted - Sets the default value "false" if the attribute is not set. RetainOnDelete pulumi.BoolPtrInput @@ -163,8 +161,8 @@ type FilesystemState struct { // The filesystem status. Status pulumi.StringPtrInput Timeouts FilesystemTimeoutsPtrInput - // The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["vast"]. + // The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["vast"]. Type pulumi.StringPtrInput } @@ -177,16 +175,16 @@ type filesystemArgs struct { Description *string `pulumi:"description"` // The human-readable name for the filesystem. Name *string `pulumi:"name"` - // The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - // destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + // replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region string `pulumi:"region"` // Flag to retain the filesystem when the resource is deleted - Sets the default value "false" if the attribute is not set. RetainOnDelete *bool `pulumi:"retainOnDelete"` // The storage size of this filesystem given in GiB. - The value must be at least 1. Size int `pulumi:"size"` Timeouts *FilesystemTimeouts `pulumi:"timeouts"` - // The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["vast"]. + // The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["vast"]. Type string `pulumi:"type"` } @@ -196,16 +194,16 @@ type FilesystemArgs struct { Description pulumi.StringPtrInput // The human-readable name for the filesystem. Name pulumi.StringPtrInput - // The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - // destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + // replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringInput // Flag to retain the filesystem when the resource is deleted - Sets the default value "false" if the attribute is not set. RetainOnDelete pulumi.BoolPtrInput // The storage size of this filesystem given in GiB. - The value must be at least 1. Size pulumi.IntInput Timeouts FilesystemTimeoutsPtrInput - // The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["vast"]. + // The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["vast"]. Type pulumi.StringInput } @@ -321,8 +319,8 @@ func (o FilesystemOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *Filesystem) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } -// The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will -// destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. +// The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be +// replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. func (o FilesystemOutput) Region() pulumi.StringOutput { return o.ApplyT(func(v *Filesystem) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) } @@ -346,8 +344,8 @@ func (o FilesystemOutput) Timeouts() FilesystemTimeoutsPtrOutput { return o.ApplyT(func(v *Filesystem) FilesystemTimeoutsPtrOutput { return v.Timeouts }).(FilesystemTimeoutsPtrOutput) } -// The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the -// resource. - The value must be one of: ["vast"]. +// The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value +// must be one of: ["vast"]. func (o FilesystemOutput) Type() pulumi.StringOutput { return o.ApplyT(func(v *Filesystem) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) } diff --git a/sdk/go/genesiscloud/floatingIp.go b/sdk/go/genesiscloud/floatingIp.go index 2d29fa0..e866bec 100644 --- a/sdk/go/genesiscloud/floatingIp.go +++ b/sdk/go/genesiscloud/floatingIp.go @@ -29,9 +29,8 @@ import ( // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { // _, err := genesiscloud.NewFloatingIp(ctx, "floatingIp", &genesiscloud.FloatingIpArgs{ -// Description: pulumi.String("The description for you terraform floating IP."), -// Region: pulumi.String("ARC-IS-HAF-1"), -// Version: pulumi.String("ipv4"), +// Region: pulumi.String("NORD-NO-KRS-1"), +// Version: pulumi.String("ipv4"), // }) // if err != nil { // return err @@ -45,9 +44,7 @@ import ( // ## Import // // ```sh -// -// $ pulumi import genesiscloud:index/floatingIp:FloatingIp example 18efeec8-94f0-4776-8ff2-5e9b49c74608 -// +// $ pulumi import genesiscloud:index/floatingIp:FloatingIp example 18efeec8-94f0-4776-8ff2-5e9b49c74608 // ``` type FloatingIp struct { pulumi.CustomResourceState @@ -62,16 +59,16 @@ type FloatingIp struct { IsPublic pulumi.BoolOutput `pulumi:"isPublic"` // The human-readable name for the floating IP. Name pulumi.StringOutput `pulumi:"name"` - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringOutput `pulumi:"region"` // The floating IP status. Status pulumi.StringOutput `pulumi:"status"` Timeouts FloatingIpTimeoutsPtrOutput `pulumi:"timeouts"` // The timestamp when this image was last updated in RFC 3339. UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"` - // The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["ipv4"]. + // The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["ipv4"]. Version pulumi.StringOutput `pulumi:"version"` } @@ -121,16 +118,16 @@ type floatingIpState struct { IsPublic *bool `pulumi:"isPublic"` // The human-readable name for the floating IP. Name *string `pulumi:"name"` - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region *string `pulumi:"region"` // The floating IP status. Status *string `pulumi:"status"` Timeouts *FloatingIpTimeouts `pulumi:"timeouts"` // The timestamp when this image was last updated in RFC 3339. UpdatedAt *string `pulumi:"updatedAt"` - // The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["ipv4"]. + // The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["ipv4"]. Version *string `pulumi:"version"` } @@ -145,16 +142,16 @@ type FloatingIpState struct { IsPublic pulumi.BoolPtrInput // The human-readable name for the floating IP. Name pulumi.StringPtrInput - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringPtrInput // The floating IP status. Status pulumi.StringPtrInput Timeouts FloatingIpTimeoutsPtrInput // The timestamp when this image was last updated in RFC 3339. UpdatedAt pulumi.StringPtrInput - // The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["ipv4"]. + // The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["ipv4"]. Version pulumi.StringPtrInput } @@ -167,12 +164,12 @@ type floatingIpArgs struct { Description *string `pulumi:"description"` // The human-readable name for the floating IP. Name *string `pulumi:"name"` - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region string `pulumi:"region"` Timeouts *FloatingIpTimeouts `pulumi:"timeouts"` - // The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["ipv4"]. + // The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["ipv4"]. Version string `pulumi:"version"` } @@ -182,12 +179,12 @@ type FloatingIpArgs struct { Description pulumi.StringPtrInput // The human-readable name for the floating IP. Name pulumi.StringPtrInput - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringInput Timeouts FloatingIpTimeoutsPtrInput - // The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["ipv4"]. + // The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["ipv4"]. Version pulumi.StringInput } @@ -303,8 +300,8 @@ func (o FloatingIpOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *FloatingIp) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } -// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The -// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. +// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one +// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. func (o FloatingIpOutput) Region() pulumi.StringOutput { return o.ApplyT(func(v *FloatingIp) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) } @@ -323,8 +320,8 @@ func (o FloatingIpOutput) UpdatedAt() pulumi.StringOutput { return o.ApplyT(func(v *FloatingIp) pulumi.StringOutput { return v.UpdatedAt }).(pulumi.StringOutput) } -// The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the -// resource. - The value must be one of: ["ipv4"]. +// The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value +// must be one of: ["ipv4"]. func (o FloatingIpOutput) Version() pulumi.StringOutput { return o.ApplyT(func(v *FloatingIp) pulumi.StringOutput { return v.Version }).(pulumi.StringOutput) } diff --git a/sdk/go/genesiscloud/images.go b/sdk/go/genesiscloud/images.go index f218c28..84078ed 100644 --- a/sdk/go/genesiscloud/images.go +++ b/sdk/go/genesiscloud/images.go @@ -37,7 +37,7 @@ import ( // } // _, err = genesiscloud.Images(ctx, &genesiscloud.ImagesArgs{ // Filter: genesiscloud.ImagesFilter{ -// Region: pulumi.StringRef("ARC-IS-HAF-1"), +// Region: pulumi.StringRef("NORD-NO-KRS-1"), // Type: "snapshot", // }, // }, nil) @@ -83,14 +83,20 @@ type ImagesResult struct { func ImagesOutput(ctx *pulumi.Context, args ImagesOutputArgs, opts ...pulumi.InvokeOption) ImagesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ImagesResult, error) { + ApplyT(func(v interface{}) (ImagesResultOutput, error) { args := v.(ImagesArgs) - r, err := Images(ctx, &args, opts...) - var s ImagesResult - if r != nil { - s = *r + opts = internal.PkgInvokeDefaultOpts(opts) + var rv ImagesResult + secret, err := ctx.InvokePackageRaw("genesiscloud:index/images:Images", args, &rv, "", opts...) + if err != nil { + return ImagesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ImagesResultOutput) + if secret { + return pulumi.ToSecret(output).(ImagesResultOutput), nil + } + return output, nil }).(ImagesResultOutput) } diff --git a/sdk/go/genesiscloud/init.go b/sdk/go/genesiscloud/init.go index 015832c..107b431 100644 --- a/sdk/go/genesiscloud/init.go +++ b/sdk/go/genesiscloud/init.go @@ -27,6 +27,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &FloatingIp{} case "genesiscloud:index/instance:Instance": r = &Instance{} + case "genesiscloud:index/instanceStatus:InstanceStatus": + r = &InstanceStatus{} case "genesiscloud:index/sSHKey:SSHKey": r = &SSHKey{} case "genesiscloud:index/securityGroup:SecurityGroup": @@ -81,6 +83,11 @@ func init() { "index/instance", &module{version}, ) + pulumi.RegisterResourceModule( + "genesiscloud", + "index/instanceStatus", + &module{version}, + ) pulumi.RegisterResourceModule( "genesiscloud", "index/sSHKey", diff --git a/sdk/go/genesiscloud/instance.go b/sdk/go/genesiscloud/instance.go index 5e67a49..5bc10e6 100644 --- a/sdk/go/genesiscloud/instance.go +++ b/sdk/go/genesiscloud/instance.go @@ -29,8 +29,8 @@ import ( // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { // _, err := genesiscloud.NewInstance(ctx, "example", &genesiscloud.InstanceArgs{ -// Image: pulumi.String("my-image-id"), -// Region: pulumi.String("ARC-IS-HAF-1"), +// Image: pulumi.String("ubuntu:22.04"), +// Region: pulumi.String("NORD-NO-KRS-1"), // SshKeyIds: pulumi.StringArray{ // pulumi.String("my-ssh-key-id"), // }, @@ -48,9 +48,7 @@ import ( // ## Import // // ```sh -// -// $ pulumi import genesiscloud:index/instance:Instance example 18efeec8-94f0-4776-8ff2-5e9b49c74608 -// +// $ pulumi import genesiscloud:index/instance:Instance example 18efeec8-94f0-4776-8ff2-5e9b49c74608 // ``` type Instance struct { pulumi.CustomResourceState @@ -63,48 +61,45 @@ type Instance struct { DnsName pulumi.StringOutput `pulumi:"dnsName"` // The floating IP attached to the instance. FloatingIpId pulumi.StringPtrOutput `pulumi:"floatingIpId"` - // The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - // attribute is configured and changes, Terraform will destroy and recreate the resource. - Hostname pulumi.StringOutput `pulumi:"hostname"` + Hostname pulumi.StringOutput `pulumi:"hostname"` // The source image id, image slug or snapshot id of the instance. The image version can also specified together with the // image slug in this format `:`. Learn more about images - // [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - // recreate the resource. + // [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + // replaced. Image pulumi.StringOutput `pulumi:"image"` // The resulting image ID of the instance. ImageId pulumi.StringOutput `pulumi:"imageId"` - // Option to provide metadata. Currently supported is `startup_script`. + // Option to provide metadata. Currently supported is `startupScript`. Metadata InstanceMetadataPtrOutput `pulumi:"metadata"` // The human-readable name for the instance. Name pulumi.StringOutput `pulumi:"name"` // The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. - // **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - // SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - // length must be at least 16. + // **Please Note**: Only one of `sshKeys` or `password` can be provided. Password is less secure - we recommend you use an + // SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + // least 16. Password pulumi.StringPtrOutput `pulumi:"password"` // The placement option identifier in which instances are physically located relative to each other within a zone. For - // example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + // example A or B. - If the value of this attribute changes, the resource will be replaced. PlacementOption pulumi.StringOutput `pulumi:"placementOption"` // The private IPv4 IP-Address (IPv4 address). PrivateIp pulumi.StringOutput `pulumi:"privateIp"` // The public IPv4 IP-Address (IPv4 address). PublicIp pulumi.StringOutput `pulumi:"publicIp"` - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringOutput `pulumi:"region"` // The id of the reservation the instance is associated with. ReservationId pulumi.StringPtrOutput `pulumi:"reservationId"` // The security groups of the instance. If not provided will be set to the default security group. SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"` - // The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. + // The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. SshKeyIds pulumi.StringArrayOutput `pulumi:"sshKeyIds"` // The instance status. Status pulumi.StringOutput `pulumi:"status"` Timeouts InstanceTimeoutsPtrOutput `pulumi:"timeouts"` // The instance type identifier. Learn more about instance types - // [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - // Terraform will destroy and recreate the resource. + // [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + // resource will be replaced. Type pulumi.StringOutput `pulumi:"type"` // The timestamp when this image was last updated in RFC 3339. UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"` @@ -166,48 +161,45 @@ type instanceState struct { DnsName *string `pulumi:"dnsName"` // The floating IP attached to the instance. FloatingIpId *string `pulumi:"floatingIpId"` - // The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - // attribute is configured and changes, Terraform will destroy and recreate the resource. - Hostname *string `pulumi:"hostname"` + Hostname *string `pulumi:"hostname"` // The source image id, image slug or snapshot id of the instance. The image version can also specified together with the // image slug in this format `:`. Learn more about images - // [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - // recreate the resource. + // [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + // replaced. Image *string `pulumi:"image"` // The resulting image ID of the instance. ImageId *string `pulumi:"imageId"` - // Option to provide metadata. Currently supported is `startup_script`. + // Option to provide metadata. Currently supported is `startupScript`. Metadata *InstanceMetadata `pulumi:"metadata"` // The human-readable name for the instance. Name *string `pulumi:"name"` // The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. - // **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - // SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - // length must be at least 16. + // **Please Note**: Only one of `sshKeys` or `password` can be provided. Password is less secure - we recommend you use an + // SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + // least 16. Password *string `pulumi:"password"` // The placement option identifier in which instances are physically located relative to each other within a zone. For - // example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + // example A or B. - If the value of this attribute changes, the resource will be replaced. PlacementOption *string `pulumi:"placementOption"` // The private IPv4 IP-Address (IPv4 address). PrivateIp *string `pulumi:"privateIp"` // The public IPv4 IP-Address (IPv4 address). PublicIp *string `pulumi:"publicIp"` - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region *string `pulumi:"region"` // The id of the reservation the instance is associated with. ReservationId *string `pulumi:"reservationId"` // The security groups of the instance. If not provided will be set to the default security group. SecurityGroupIds []string `pulumi:"securityGroupIds"` - // The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. + // The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. SshKeyIds []string `pulumi:"sshKeyIds"` // The instance status. Status *string `pulumi:"status"` Timeouts *InstanceTimeouts `pulumi:"timeouts"` // The instance type identifier. Learn more about instance types - // [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - // Terraform will destroy and recreate the resource. + // [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + // resource will be replaced. Type *string `pulumi:"type"` // The timestamp when this image was last updated in RFC 3339. UpdatedAt *string `pulumi:"updatedAt"` @@ -224,48 +216,45 @@ type InstanceState struct { DnsName pulumi.StringPtrInput // The floating IP attached to the instance. FloatingIpId pulumi.StringPtrInput - // The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - // attribute is configured and changes, Terraform will destroy and recreate the resource. - Hostname pulumi.StringPtrInput + Hostname pulumi.StringPtrInput // The source image id, image slug or snapshot id of the instance. The image version can also specified together with the // image slug in this format `:`. Learn more about images - // [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - // recreate the resource. + // [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + // replaced. Image pulumi.StringPtrInput // The resulting image ID of the instance. ImageId pulumi.StringPtrInput - // Option to provide metadata. Currently supported is `startup_script`. + // Option to provide metadata. Currently supported is `startupScript`. Metadata InstanceMetadataPtrInput // The human-readable name for the instance. Name pulumi.StringPtrInput // The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. - // **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - // SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - // length must be at least 16. + // **Please Note**: Only one of `sshKeys` or `password` can be provided. Password is less secure - we recommend you use an + // SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + // least 16. Password pulumi.StringPtrInput // The placement option identifier in which instances are physically located relative to each other within a zone. For - // example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + // example A or B. - If the value of this attribute changes, the resource will be replaced. PlacementOption pulumi.StringPtrInput // The private IPv4 IP-Address (IPv4 address). PrivateIp pulumi.StringPtrInput // The public IPv4 IP-Address (IPv4 address). PublicIp pulumi.StringPtrInput - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringPtrInput // The id of the reservation the instance is associated with. ReservationId pulumi.StringPtrInput // The security groups of the instance. If not provided will be set to the default security group. SecurityGroupIds pulumi.StringArrayInput - // The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. + // The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. SshKeyIds pulumi.StringArrayInput // The instance status. Status pulumi.StringPtrInput Timeouts InstanceTimeoutsPtrInput // The instance type identifier. Learn more about instance types - // [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - // Terraform will destroy and recreate the resource. + // [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + // resource will be replaced. Type pulumi.StringPtrInput // The timestamp when this image was last updated in RFC 3339. UpdatedAt pulumi.StringPtrInput @@ -282,40 +271,37 @@ type instanceArgs struct { DiskSize *int `pulumi:"diskSize"` // The floating IP attached to the instance. FloatingIpId *string `pulumi:"floatingIpId"` - // The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - // attribute is configured and changes, Terraform will destroy and recreate the resource. - Hostname *string `pulumi:"hostname"` + Hostname *string `pulumi:"hostname"` // The source image id, image slug or snapshot id of the instance. The image version can also specified together with the // image slug in this format `:`. Learn more about images - // [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - // recreate the resource. + // [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + // replaced. Image string `pulumi:"image"` - // Option to provide metadata. Currently supported is `startup_script`. + // Option to provide metadata. Currently supported is `startupScript`. Metadata *InstanceMetadata `pulumi:"metadata"` // The human-readable name for the instance. Name *string `pulumi:"name"` // The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. - // **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - // SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - // length must be at least 16. + // **Please Note**: Only one of `sshKeys` or `password` can be provided. Password is less secure - we recommend you use an + // SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + // least 16. Password *string `pulumi:"password"` // The placement option identifier in which instances are physically located relative to each other within a zone. For - // example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + // example A or B. - If the value of this attribute changes, the resource will be replaced. PlacementOption *string `pulumi:"placementOption"` - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region string `pulumi:"region"` // The id of the reservation the instance is associated with. ReservationId *string `pulumi:"reservationId"` // The security groups of the instance. If not provided will be set to the default security group. SecurityGroupIds []string `pulumi:"securityGroupIds"` - // The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. + // The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. SshKeyIds []string `pulumi:"sshKeyIds"` Timeouts *InstanceTimeouts `pulumi:"timeouts"` // The instance type identifier. Learn more about instance types - // [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - // Terraform will destroy and recreate the resource. + // [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + // resource will be replaced. Type string `pulumi:"type"` // The volumes of the instance. VolumeIds []string `pulumi:"volumeIds"` @@ -327,40 +313,37 @@ type InstanceArgs struct { DiskSize pulumi.IntPtrInput // The floating IP attached to the instance. FloatingIpId pulumi.StringPtrInput - // The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - // attribute is configured and changes, Terraform will destroy and recreate the resource. - Hostname pulumi.StringPtrInput + Hostname pulumi.StringPtrInput // The source image id, image slug or snapshot id of the instance. The image version can also specified together with the // image slug in this format `:`. Learn more about images - // [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - // recreate the resource. + // [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + // replaced. Image pulumi.StringInput - // Option to provide metadata. Currently supported is `startup_script`. + // Option to provide metadata. Currently supported is `startupScript`. Metadata InstanceMetadataPtrInput // The human-readable name for the instance. Name pulumi.StringPtrInput // The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. - // **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - // SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - // length must be at least 16. + // **Please Note**: Only one of `sshKeys` or `password` can be provided. Password is less secure - we recommend you use an + // SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + // least 16. Password pulumi.StringPtrInput // The placement option identifier in which instances are physically located relative to each other within a zone. For - // example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + // example A or B. - If the value of this attribute changes, the resource will be replaced. PlacementOption pulumi.StringPtrInput - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringInput // The id of the reservation the instance is associated with. ReservationId pulumi.StringPtrInput // The security groups of the instance. If not provided will be set to the default security group. SecurityGroupIds pulumi.StringArrayInput - // The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. + // The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. SshKeyIds pulumi.StringArrayInput Timeouts InstanceTimeoutsPtrInput // The instance type identifier. Learn more about instance types - // [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - // Terraform will destroy and recreate the resource. + // [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + // resource will be replaced. Type pulumi.StringInput // The volumes of the instance. VolumeIds pulumi.StringArrayInput @@ -473,16 +456,14 @@ func (o InstanceOutput) FloatingIpId() pulumi.StringPtrOutput { return o.ApplyT(func(v *Instance) pulumi.StringPtrOutput { return v.FloatingIpId }).(pulumi.StringPtrOutput) } -// The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this -// attribute is configured and changes, Terraform will destroy and recreate the resource. func (o InstanceOutput) Hostname() pulumi.StringOutput { return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.Hostname }).(pulumi.StringOutput) } // The source image id, image slug or snapshot id of the instance. The image version can also specified together with the // image slug in this format `:`. Learn more about images -// [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and -// recreate the resource. +// [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be +// replaced. func (o InstanceOutput) Image() pulumi.StringOutput { return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.Image }).(pulumi.StringOutput) } @@ -492,7 +473,7 @@ func (o InstanceOutput) ImageId() pulumi.StringOutput { return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.ImageId }).(pulumi.StringOutput) } -// Option to provide metadata. Currently supported is `startup_script`. +// Option to provide metadata. Currently supported is `startupScript`. func (o InstanceOutput) Metadata() InstanceMetadataPtrOutput { return o.ApplyT(func(v *Instance) InstanceMetadataPtrOutput { return v.Metadata }).(InstanceMetadataPtrOutput) } @@ -503,15 +484,15 @@ func (o InstanceOutput) Name() pulumi.StringOutput { } // The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. -// **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an -// SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string -// length must be at least 16. +// **Please Note**: Only one of `sshKeys` or `password` can be provided. Password is less secure - we recommend you use an +// SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at +// least 16. func (o InstanceOutput) Password() pulumi.StringPtrOutput { return o.ApplyT(func(v *Instance) pulumi.StringPtrOutput { return v.Password }).(pulumi.StringPtrOutput) } // The placement option identifier in which instances are physically located relative to each other within a zone. For -// example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. +// example A or B. - If the value of this attribute changes, the resource will be replaced. func (o InstanceOutput) PlacementOption() pulumi.StringOutput { return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.PlacementOption }).(pulumi.StringOutput) } @@ -526,8 +507,8 @@ func (o InstanceOutput) PublicIp() pulumi.StringOutput { return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.PublicIp }).(pulumi.StringOutput) } -// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The -// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. +// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one +// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. func (o InstanceOutput) Region() pulumi.StringOutput { return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) } @@ -542,8 +523,7 @@ func (o InstanceOutput) SecurityGroupIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *Instance) pulumi.StringArrayOutput { return v.SecurityGroupIds }).(pulumi.StringArrayOutput) } -// The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the -// resource. +// The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. func (o InstanceOutput) SshKeyIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *Instance) pulumi.StringArrayOutput { return v.SshKeyIds }).(pulumi.StringArrayOutput) } @@ -558,8 +538,8 @@ func (o InstanceOutput) Timeouts() InstanceTimeoutsPtrOutput { } // The instance type identifier. Learn more about instance types -// [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, -// Terraform will destroy and recreate the resource. +// [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the +// resource will be replaced. func (o InstanceOutput) Type() pulumi.StringOutput { return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) } diff --git a/sdk/go/genesiscloud/instanceStatus.go b/sdk/go/genesiscloud/instanceStatus.go new file mode 100644 index 0000000..398918e --- /dev/null +++ b/sdk/go/genesiscloud/instanceStatus.go @@ -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 genesiscloud + +import ( + "context" + "reflect" + + "errors" + "github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// InstanceStatus resource +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/genesiscloud/pulumi-genesiscloud/sdk/go/genesiscloud" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// exampleInstance, err := genesiscloud.NewInstance(ctx, "exampleInstance", &genesiscloud.InstanceArgs{ +// Region: pulumi.String("NORD-NO-KRS-1"), +// Image: pulumi.String("ubuntu:22.04"), +// Type: pulumi.String("vcpu-2_memory-4g"), +// SshKeyIds: pulumi.StringArray{ +// pulumi.String("my-ssh-key-id"), +// }, +// }) +// if err != nil { +// return err +// } +// _, err = genesiscloud.NewInstanceStatus(ctx, "exampleInstanceStatus", &genesiscloud.InstanceStatusArgs{ +// InstanceId: exampleInstance.ID(), +// Status: pulumi.String("active"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// ```sh +// $ pulumi import genesiscloud:index/instanceStatus:InstanceStatus example 18efeec8-94f0-4776-8ff2-5e9b49c74608 +// ``` +type InstanceStatus struct { + pulumi.CustomResourceState + + // The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + InstanceId pulumi.StringOutput `pulumi:"instanceId"` + // The target instance status. - The value must be one of: ["active" "stopped"]. + Status pulumi.StringOutput `pulumi:"status"` + Timeouts InstanceStatusTimeoutsPtrOutput `pulumi:"timeouts"` +} + +// NewInstanceStatus registers a new resource with the given unique name, arguments, and options. +func NewInstanceStatus(ctx *pulumi.Context, + name string, args *InstanceStatusArgs, opts ...pulumi.ResourceOption) (*InstanceStatus, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.InstanceId == nil { + return nil, errors.New("invalid value for required argument 'InstanceId'") + } + if args.Status == nil { + return nil, errors.New("invalid value for required argument 'Status'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource InstanceStatus + err := ctx.RegisterResource("genesiscloud:index/instanceStatus:InstanceStatus", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetInstanceStatus gets an existing InstanceStatus 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 GetInstanceStatus(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *InstanceStatusState, opts ...pulumi.ResourceOption) (*InstanceStatus, error) { + var resource InstanceStatus + err := ctx.ReadResource("genesiscloud:index/instanceStatus:InstanceStatus", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering InstanceStatus resources. +type instanceStatusState struct { + // The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + InstanceId *string `pulumi:"instanceId"` + // The target instance status. - The value must be one of: ["active" "stopped"]. + Status *string `pulumi:"status"` + Timeouts *InstanceStatusTimeouts `pulumi:"timeouts"` +} + +type InstanceStatusState struct { + // The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + InstanceId pulumi.StringPtrInput + // The target instance status. - The value must be one of: ["active" "stopped"]. + Status pulumi.StringPtrInput + Timeouts InstanceStatusTimeoutsPtrInput +} + +func (InstanceStatusState) ElementType() reflect.Type { + return reflect.TypeOf((*instanceStatusState)(nil)).Elem() +} + +type instanceStatusArgs struct { + // The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + InstanceId string `pulumi:"instanceId"` + // The target instance status. - The value must be one of: ["active" "stopped"]. + Status string `pulumi:"status"` + Timeouts *InstanceStatusTimeouts `pulumi:"timeouts"` +} + +// The set of arguments for constructing a InstanceStatus resource. +type InstanceStatusArgs struct { + // The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + InstanceId pulumi.StringInput + // The target instance status. - The value must be one of: ["active" "stopped"]. + Status pulumi.StringInput + Timeouts InstanceStatusTimeoutsPtrInput +} + +func (InstanceStatusArgs) ElementType() reflect.Type { + return reflect.TypeOf((*instanceStatusArgs)(nil)).Elem() +} + +type InstanceStatusInput interface { + pulumi.Input + + ToInstanceStatusOutput() InstanceStatusOutput + ToInstanceStatusOutputWithContext(ctx context.Context) InstanceStatusOutput +} + +func (*InstanceStatus) ElementType() reflect.Type { + return reflect.TypeOf((**InstanceStatus)(nil)).Elem() +} + +func (i *InstanceStatus) ToInstanceStatusOutput() InstanceStatusOutput { + return i.ToInstanceStatusOutputWithContext(context.Background()) +} + +func (i *InstanceStatus) ToInstanceStatusOutputWithContext(ctx context.Context) InstanceStatusOutput { + return pulumi.ToOutputWithContext(ctx, i).(InstanceStatusOutput) +} + +// InstanceStatusArrayInput is an input type that accepts InstanceStatusArray and InstanceStatusArrayOutput values. +// You can construct a concrete instance of `InstanceStatusArrayInput` via: +// +// InstanceStatusArray{ InstanceStatusArgs{...} } +type InstanceStatusArrayInput interface { + pulumi.Input + + ToInstanceStatusArrayOutput() InstanceStatusArrayOutput + ToInstanceStatusArrayOutputWithContext(context.Context) InstanceStatusArrayOutput +} + +type InstanceStatusArray []InstanceStatusInput + +func (InstanceStatusArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*InstanceStatus)(nil)).Elem() +} + +func (i InstanceStatusArray) ToInstanceStatusArrayOutput() InstanceStatusArrayOutput { + return i.ToInstanceStatusArrayOutputWithContext(context.Background()) +} + +func (i InstanceStatusArray) ToInstanceStatusArrayOutputWithContext(ctx context.Context) InstanceStatusArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(InstanceStatusArrayOutput) +} + +// InstanceStatusMapInput is an input type that accepts InstanceStatusMap and InstanceStatusMapOutput values. +// You can construct a concrete instance of `InstanceStatusMapInput` via: +// +// InstanceStatusMap{ "key": InstanceStatusArgs{...} } +type InstanceStatusMapInput interface { + pulumi.Input + + ToInstanceStatusMapOutput() InstanceStatusMapOutput + ToInstanceStatusMapOutputWithContext(context.Context) InstanceStatusMapOutput +} + +type InstanceStatusMap map[string]InstanceStatusInput + +func (InstanceStatusMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*InstanceStatus)(nil)).Elem() +} + +func (i InstanceStatusMap) ToInstanceStatusMapOutput() InstanceStatusMapOutput { + return i.ToInstanceStatusMapOutputWithContext(context.Background()) +} + +func (i InstanceStatusMap) ToInstanceStatusMapOutputWithContext(ctx context.Context) InstanceStatusMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(InstanceStatusMapOutput) +} + +type InstanceStatusOutput struct{ *pulumi.OutputState } + +func (InstanceStatusOutput) ElementType() reflect.Type { + return reflect.TypeOf((**InstanceStatus)(nil)).Elem() +} + +func (o InstanceStatusOutput) ToInstanceStatusOutput() InstanceStatusOutput { + return o +} + +func (o InstanceStatusOutput) ToInstanceStatusOutputWithContext(ctx context.Context) InstanceStatusOutput { + return o +} + +// The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. +func (o InstanceStatusOutput) InstanceId() pulumi.StringOutput { + return o.ApplyT(func(v *InstanceStatus) pulumi.StringOutput { return v.InstanceId }).(pulumi.StringOutput) +} + +// The target instance status. - The value must be one of: ["active" "stopped"]. +func (o InstanceStatusOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v *InstanceStatus) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) +} + +func (o InstanceStatusOutput) Timeouts() InstanceStatusTimeoutsPtrOutput { + return o.ApplyT(func(v *InstanceStatus) InstanceStatusTimeoutsPtrOutput { return v.Timeouts }).(InstanceStatusTimeoutsPtrOutput) +} + +type InstanceStatusArrayOutput struct{ *pulumi.OutputState } + +func (InstanceStatusArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*InstanceStatus)(nil)).Elem() +} + +func (o InstanceStatusArrayOutput) ToInstanceStatusArrayOutput() InstanceStatusArrayOutput { + return o +} + +func (o InstanceStatusArrayOutput) ToInstanceStatusArrayOutputWithContext(ctx context.Context) InstanceStatusArrayOutput { + return o +} + +func (o InstanceStatusArrayOutput) Index(i pulumi.IntInput) InstanceStatusOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *InstanceStatus { + return vs[0].([]*InstanceStatus)[vs[1].(int)] + }).(InstanceStatusOutput) +} + +type InstanceStatusMapOutput struct{ *pulumi.OutputState } + +func (InstanceStatusMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*InstanceStatus)(nil)).Elem() +} + +func (o InstanceStatusMapOutput) ToInstanceStatusMapOutput() InstanceStatusMapOutput { + return o +} + +func (o InstanceStatusMapOutput) ToInstanceStatusMapOutputWithContext(ctx context.Context) InstanceStatusMapOutput { + return o +} + +func (o InstanceStatusMapOutput) MapIndex(k pulumi.StringInput) InstanceStatusOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *InstanceStatus { + return vs[0].(map[string]*InstanceStatus)[vs[1].(string)] + }).(InstanceStatusOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*InstanceStatusInput)(nil)).Elem(), &InstanceStatus{}) + pulumi.RegisterInputType(reflect.TypeOf((*InstanceStatusArrayInput)(nil)).Elem(), InstanceStatusArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*InstanceStatusMapInput)(nil)).Elem(), InstanceStatusMap{}) + pulumi.RegisterOutputType(InstanceStatusOutput{}) + pulumi.RegisterOutputType(InstanceStatusArrayOutput{}) + pulumi.RegisterOutputType(InstanceStatusMapOutput{}) +} diff --git a/sdk/go/genesiscloud/pulumiTypes.go b/sdk/go/genesiscloud/pulumiTypes.go index f9ae8d7..73c3fe9 100644 --- a/sdk/go/genesiscloud/pulumiTypes.go +++ b/sdk/go/genesiscloud/pulumiTypes.go @@ -757,6 +757,8 @@ func (o ImagesTimeoutsPtrOutput) Read() pulumi.StringPtrOutput { } type InstanceMetadata struct { + // A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). + // - If the value of this attribute changes, the resource will be replaced. StartupScript *string `pulumi:"startupScript"` } @@ -772,6 +774,8 @@ type InstanceMetadataInput interface { } type InstanceMetadataArgs struct { + // A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). + // - If the value of this attribute changes, the resource will be replaced. StartupScript pulumi.StringPtrInput `pulumi:"startupScript"` } @@ -852,6 +856,8 @@ func (o InstanceMetadataOutput) ToInstanceMetadataPtrOutputWithContext(ctx conte }).(InstanceMetadataPtrOutput) } +// A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). +// - If the value of this attribute changes, the resource will be replaced. func (o InstanceMetadataOutput) StartupScript() pulumi.StringPtrOutput { return o.ApplyT(func(v InstanceMetadata) *string { return v.StartupScript }).(pulumi.StringPtrOutput) } @@ -880,6 +886,8 @@ func (o InstanceMetadataPtrOutput) Elem() InstanceMetadataOutput { }).(InstanceMetadataOutput) } +// A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). +// - If the value of this attribute changes, the resource will be replaced. func (o InstanceMetadataPtrOutput) StartupScript() pulumi.StringPtrOutput { return o.ApplyT(func(v *InstanceMetadata) *string { if v == nil { @@ -889,6 +897,200 @@ func (o InstanceMetadataPtrOutput) StartupScript() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +type InstanceStatusTimeouts struct { + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + Create *string `pulumi:"create"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + Delete *string `pulumi:"delete"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + Read *string `pulumi:"read"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + Update *string `pulumi:"update"` +} + +// InstanceStatusTimeoutsInput is an input type that accepts InstanceStatusTimeoutsArgs and InstanceStatusTimeoutsOutput values. +// You can construct a concrete instance of `InstanceStatusTimeoutsInput` via: +// +// InstanceStatusTimeoutsArgs{...} +type InstanceStatusTimeoutsInput interface { + pulumi.Input + + ToInstanceStatusTimeoutsOutput() InstanceStatusTimeoutsOutput + ToInstanceStatusTimeoutsOutputWithContext(context.Context) InstanceStatusTimeoutsOutput +} + +type InstanceStatusTimeoutsArgs struct { + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + Create pulumi.StringPtrInput `pulumi:"create"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + Delete pulumi.StringPtrInput `pulumi:"delete"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + Read pulumi.StringPtrInput `pulumi:"read"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + Update pulumi.StringPtrInput `pulumi:"update"` +} + +func (InstanceStatusTimeoutsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*InstanceStatusTimeouts)(nil)).Elem() +} + +func (i InstanceStatusTimeoutsArgs) ToInstanceStatusTimeoutsOutput() InstanceStatusTimeoutsOutput { + return i.ToInstanceStatusTimeoutsOutputWithContext(context.Background()) +} + +func (i InstanceStatusTimeoutsArgs) ToInstanceStatusTimeoutsOutputWithContext(ctx context.Context) InstanceStatusTimeoutsOutput { + return pulumi.ToOutputWithContext(ctx, i).(InstanceStatusTimeoutsOutput) +} + +func (i InstanceStatusTimeoutsArgs) ToInstanceStatusTimeoutsPtrOutput() InstanceStatusTimeoutsPtrOutput { + return i.ToInstanceStatusTimeoutsPtrOutputWithContext(context.Background()) +} + +func (i InstanceStatusTimeoutsArgs) ToInstanceStatusTimeoutsPtrOutputWithContext(ctx context.Context) InstanceStatusTimeoutsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(InstanceStatusTimeoutsOutput).ToInstanceStatusTimeoutsPtrOutputWithContext(ctx) +} + +// InstanceStatusTimeoutsPtrInput is an input type that accepts InstanceStatusTimeoutsArgs, InstanceStatusTimeoutsPtr and InstanceStatusTimeoutsPtrOutput values. +// You can construct a concrete instance of `InstanceStatusTimeoutsPtrInput` via: +// +// InstanceStatusTimeoutsArgs{...} +// +// or: +// +// nil +type InstanceStatusTimeoutsPtrInput interface { + pulumi.Input + + ToInstanceStatusTimeoutsPtrOutput() InstanceStatusTimeoutsPtrOutput + ToInstanceStatusTimeoutsPtrOutputWithContext(context.Context) InstanceStatusTimeoutsPtrOutput +} + +type instanceStatusTimeoutsPtrType InstanceStatusTimeoutsArgs + +func InstanceStatusTimeoutsPtr(v *InstanceStatusTimeoutsArgs) InstanceStatusTimeoutsPtrInput { + return (*instanceStatusTimeoutsPtrType)(v) +} + +func (*instanceStatusTimeoutsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**InstanceStatusTimeouts)(nil)).Elem() +} + +func (i *instanceStatusTimeoutsPtrType) ToInstanceStatusTimeoutsPtrOutput() InstanceStatusTimeoutsPtrOutput { + return i.ToInstanceStatusTimeoutsPtrOutputWithContext(context.Background()) +} + +func (i *instanceStatusTimeoutsPtrType) ToInstanceStatusTimeoutsPtrOutputWithContext(ctx context.Context) InstanceStatusTimeoutsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(InstanceStatusTimeoutsPtrOutput) +} + +type InstanceStatusTimeoutsOutput struct{ *pulumi.OutputState } + +func (InstanceStatusTimeoutsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*InstanceStatusTimeouts)(nil)).Elem() +} + +func (o InstanceStatusTimeoutsOutput) ToInstanceStatusTimeoutsOutput() InstanceStatusTimeoutsOutput { + return o +} + +func (o InstanceStatusTimeoutsOutput) ToInstanceStatusTimeoutsOutputWithContext(ctx context.Context) InstanceStatusTimeoutsOutput { + return o +} + +func (o InstanceStatusTimeoutsOutput) ToInstanceStatusTimeoutsPtrOutput() InstanceStatusTimeoutsPtrOutput { + return o.ToInstanceStatusTimeoutsPtrOutputWithContext(context.Background()) +} + +func (o InstanceStatusTimeoutsOutput) ToInstanceStatusTimeoutsPtrOutputWithContext(ctx context.Context) InstanceStatusTimeoutsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v InstanceStatusTimeouts) *InstanceStatusTimeouts { + return &v + }).(InstanceStatusTimeoutsPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). +func (o InstanceStatusTimeoutsOutput) Create() pulumi.StringPtrOutput { + return o.ApplyT(func(v InstanceStatusTimeouts) *string { return v.Create }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. +func (o InstanceStatusTimeoutsOutput) Delete() pulumi.StringPtrOutput { + return o.ApplyT(func(v InstanceStatusTimeouts) *string { return v.Delete }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. +func (o InstanceStatusTimeoutsOutput) Read() pulumi.StringPtrOutput { + return o.ApplyT(func(v InstanceStatusTimeouts) *string { return v.Read }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). +func (o InstanceStatusTimeoutsOutput) Update() pulumi.StringPtrOutput { + return o.ApplyT(func(v InstanceStatusTimeouts) *string { return v.Update }).(pulumi.StringPtrOutput) +} + +type InstanceStatusTimeoutsPtrOutput struct{ *pulumi.OutputState } + +func (InstanceStatusTimeoutsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**InstanceStatusTimeouts)(nil)).Elem() +} + +func (o InstanceStatusTimeoutsPtrOutput) ToInstanceStatusTimeoutsPtrOutput() InstanceStatusTimeoutsPtrOutput { + return o +} + +func (o InstanceStatusTimeoutsPtrOutput) ToInstanceStatusTimeoutsPtrOutputWithContext(ctx context.Context) InstanceStatusTimeoutsPtrOutput { + return o +} + +func (o InstanceStatusTimeoutsPtrOutput) Elem() InstanceStatusTimeoutsOutput { + return o.ApplyT(func(v *InstanceStatusTimeouts) InstanceStatusTimeouts { + if v != nil { + return *v + } + var ret InstanceStatusTimeouts + return ret + }).(InstanceStatusTimeoutsOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). +func (o InstanceStatusTimeoutsPtrOutput) Create() pulumi.StringPtrOutput { + return o.ApplyT(func(v *InstanceStatusTimeouts) *string { + if v == nil { + return nil + } + return v.Create + }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. +func (o InstanceStatusTimeoutsPtrOutput) Delete() pulumi.StringPtrOutput { + return o.ApplyT(func(v *InstanceStatusTimeouts) *string { + if v == nil { + return nil + } + return v.Delete + }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. +func (o InstanceStatusTimeoutsPtrOutput) Read() pulumi.StringPtrOutput { + return o.ApplyT(func(v *InstanceStatusTimeouts) *string { + if v == nil { + return nil + } + return v.Read + }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). +func (o InstanceStatusTimeoutsPtrOutput) Update() pulumi.StringPtrOutput { + return o.ApplyT(func(v *InstanceStatusTimeouts) *string { + if v == nil { + return nil + } + return v.Update + }).(pulumi.StringPtrOutput) +} + type InstanceTimeouts struct { // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Create *string `pulumi:"create"` @@ -2007,6 +2209,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ImagesTimeoutsPtrInput)(nil)).Elem(), ImagesTimeoutsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InstanceMetadataInput)(nil)).Elem(), InstanceMetadataArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InstanceMetadataPtrInput)(nil)).Elem(), InstanceMetadataArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*InstanceStatusTimeoutsInput)(nil)).Elem(), InstanceStatusTimeoutsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*InstanceStatusTimeoutsPtrInput)(nil)).Elem(), InstanceStatusTimeoutsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InstanceTimeoutsInput)(nil)).Elem(), InstanceTimeoutsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InstanceTimeoutsPtrInput)(nil)).Elem(), InstanceTimeoutsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SSHKeyTimeoutsInput)(nil)).Elem(), SSHKeyTimeoutsArgs{}) @@ -2030,6 +2234,8 @@ func init() { pulumi.RegisterOutputType(ImagesTimeoutsPtrOutput{}) pulumi.RegisterOutputType(InstanceMetadataOutput{}) pulumi.RegisterOutputType(InstanceMetadataPtrOutput{}) + pulumi.RegisterOutputType(InstanceStatusTimeoutsOutput{}) + pulumi.RegisterOutputType(InstanceStatusTimeoutsPtrOutput{}) pulumi.RegisterOutputType(InstanceTimeoutsOutput{}) pulumi.RegisterOutputType(InstanceTimeoutsPtrOutput{}) pulumi.RegisterOutputType(SSHKeyTimeoutsOutput{}) diff --git a/sdk/go/genesiscloud/securityGroup.go b/sdk/go/genesiscloud/securityGroup.go index b0e8ac7..2a12c59 100644 --- a/sdk/go/genesiscloud/securityGroup.go +++ b/sdk/go/genesiscloud/securityGroup.go @@ -17,9 +17,7 @@ import ( // ## Import // // ```sh -// -// $ pulumi import genesiscloud:index/securityGroup:SecurityGroup example 18efeec8-94f0-4776-8ff2-5e9b49c74608 -// +// $ pulumi import genesiscloud:index/securityGroup:SecurityGroup example 18efeec8-94f0-4776-8ff2-5e9b49c74608 // ``` type SecurityGroup struct { pulumi.CustomResourceState @@ -30,8 +28,8 @@ type SecurityGroup struct { Description pulumi.StringOutput `pulumi:"description"` // The human-readable name for the security group. Name pulumi.StringOutput `pulumi:"name"` - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringOutput `pulumi:"region"` Rules SecurityGroupRuleArrayOutput `pulumi:"rules"` // The security group status. @@ -81,8 +79,8 @@ type securityGroupState struct { Description *string `pulumi:"description"` // The human-readable name for the security group. Name *string `pulumi:"name"` - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region *string `pulumi:"region"` Rules []SecurityGroupRule `pulumi:"rules"` // The security group status. @@ -97,8 +95,8 @@ type SecurityGroupState struct { Description pulumi.StringPtrInput // The human-readable name for the security group. Name pulumi.StringPtrInput - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringPtrInput Rules SecurityGroupRuleArrayInput // The security group status. @@ -115,8 +113,8 @@ type securityGroupArgs struct { Description *string `pulumi:"description"` // The human-readable name for the security group. Name *string `pulumi:"name"` - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region string `pulumi:"region"` Rules []SecurityGroupRule `pulumi:"rules"` Timeouts *SecurityGroupTimeouts `pulumi:"timeouts"` @@ -128,8 +126,8 @@ type SecurityGroupArgs struct { Description pulumi.StringPtrInput // The human-readable name for the security group. Name pulumi.StringPtrInput - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringInput Rules SecurityGroupRuleArrayInput Timeouts SecurityGroupTimeoutsPtrInput @@ -237,8 +235,8 @@ func (o SecurityGroupOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *SecurityGroup) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } -// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The -// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. +// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one +// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. func (o SecurityGroupOutput) Region() pulumi.StringOutput { return o.ApplyT(func(v *SecurityGroup) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) } diff --git a/sdk/go/genesiscloud/snapshot.go b/sdk/go/genesiscloud/snapshot.go index 57354af..8ed186f 100644 --- a/sdk/go/genesiscloud/snapshot.go +++ b/sdk/go/genesiscloud/snapshot.go @@ -48,17 +48,14 @@ import ( // ## Import // // ```sh -// -// $ pulumi import genesiscloud:index/snapshot:Snapshot example 18efeec8-94f0-4776-8ff2-5e9b49c74608 -// +// $ pulumi import genesiscloud:index/snapshot:Snapshot example 18efeec8-94f0-4776-8ff2-5e9b49c74608 // ``` type Snapshot struct { pulumi.CustomResourceState // The timestamp when this snapshot was created in RFC 3339. CreatedAt pulumi.StringOutput `pulumi:"createdAt"` - // The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. + // The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. InstanceId pulumi.StringOutput `pulumi:"instanceId"` // The human-readable name for the snapshot. Name pulumi.StringOutput `pulumi:"name"` @@ -66,7 +63,7 @@ type Snapshot struct { Region pulumi.StringOutput `pulumi:"region"` // Flag to retain the snapshot when the resource is deleted. - Sets the default value "false" if the attribute is not set. RetainOnDelete pulumi.BoolOutput `pulumi:"retainOnDelete"` - // The storage size of this snapshot given in bytes. + // The storage size of this snapshot given in GiB. Size pulumi.IntOutput `pulumi:"size"` // The snapshot status. Status pulumi.StringOutput `pulumi:"status"` @@ -108,8 +105,7 @@ func GetSnapshot(ctx *pulumi.Context, type snapshotState struct { // The timestamp when this snapshot was created in RFC 3339. CreatedAt *string `pulumi:"createdAt"` - // The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. + // The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. InstanceId *string `pulumi:"instanceId"` // The human-readable name for the snapshot. Name *string `pulumi:"name"` @@ -117,7 +113,7 @@ type snapshotState struct { Region *string `pulumi:"region"` // Flag to retain the snapshot when the resource is deleted. - Sets the default value "false" if the attribute is not set. RetainOnDelete *bool `pulumi:"retainOnDelete"` - // The storage size of this snapshot given in bytes. + // The storage size of this snapshot given in GiB. Size *int `pulumi:"size"` // The snapshot status. Status *string `pulumi:"status"` @@ -127,8 +123,7 @@ type snapshotState struct { type SnapshotState struct { // The timestamp when this snapshot was created in RFC 3339. CreatedAt pulumi.StringPtrInput - // The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. + // The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. InstanceId pulumi.StringPtrInput // The human-readable name for the snapshot. Name pulumi.StringPtrInput @@ -136,7 +131,7 @@ type SnapshotState struct { Region pulumi.StringPtrInput // Flag to retain the snapshot when the resource is deleted. - Sets the default value "false" if the attribute is not set. RetainOnDelete pulumi.BoolPtrInput - // The storage size of this snapshot given in bytes. + // The storage size of this snapshot given in GiB. Size pulumi.IntPtrInput // The snapshot status. Status pulumi.StringPtrInput @@ -148,8 +143,7 @@ func (SnapshotState) ElementType() reflect.Type { } type snapshotArgs struct { - // The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. + // The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. InstanceId string `pulumi:"instanceId"` // The human-readable name for the snapshot. Name *string `pulumi:"name"` @@ -160,8 +154,7 @@ type snapshotArgs struct { // The set of arguments for constructing a Snapshot resource. type SnapshotArgs struct { - // The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. + // The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. InstanceId pulumi.StringInput // The human-readable name for the snapshot. Name pulumi.StringPtrInput @@ -262,8 +255,7 @@ func (o SnapshotOutput) CreatedAt() pulumi.StringOutput { return o.ApplyT(func(v *Snapshot) pulumi.StringOutput { return v.CreatedAt }).(pulumi.StringOutput) } -// The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the -// resource. +// The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. func (o SnapshotOutput) InstanceId() pulumi.StringOutput { return o.ApplyT(func(v *Snapshot) pulumi.StringOutput { return v.InstanceId }).(pulumi.StringOutput) } @@ -283,7 +275,7 @@ func (o SnapshotOutput) RetainOnDelete() pulumi.BoolOutput { return o.ApplyT(func(v *Snapshot) pulumi.BoolOutput { return v.RetainOnDelete }).(pulumi.BoolOutput) } -// The storage size of this snapshot given in bytes. +// The storage size of this snapshot given in GiB. func (o SnapshotOutput) Size() pulumi.IntOutput { return o.ApplyT(func(v *Snapshot) pulumi.IntOutput { return v.Size }).(pulumi.IntOutput) } diff --git a/sdk/go/genesiscloud/sshkey.go b/sdk/go/genesiscloud/sshkey.go index 656fba0..75eb31b 100644 --- a/sdk/go/genesiscloud/sshkey.go +++ b/sdk/go/genesiscloud/sshkey.go @@ -43,9 +43,7 @@ import ( // ## Import // // ```sh -// -// $ pulumi import genesiscloud:index/sSHKey:SSHKey example 18efeec8-94f0-4776-8ff2-5e9b49c74608 -// +// $ pulumi import genesiscloud:index/sSHKey:SSHKey example 18efeec8-94f0-4776-8ff2-5e9b49c74608 // ``` type SSHKey struct { pulumi.CustomResourceState @@ -56,7 +54,7 @@ type SSHKey struct { Fingerprint pulumi.StringOutput `pulumi:"fingerprint"` // The human-readable name for the SSH key. Name pulumi.StringOutput `pulumi:"name"` - // SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + // SSH public key. - If the value of this attribute changes, the resource will be replaced. PublicKey pulumi.StringOutput `pulumi:"publicKey"` Timeouts SSHKeyTimeoutsPtrOutput `pulumi:"timeouts"` } @@ -100,7 +98,7 @@ type sshkeyState struct { Fingerprint *string `pulumi:"fingerprint"` // The human-readable name for the SSH key. Name *string `pulumi:"name"` - // SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + // SSH public key. - If the value of this attribute changes, the resource will be replaced. PublicKey *string `pulumi:"publicKey"` Timeouts *SSHKeyTimeouts `pulumi:"timeouts"` } @@ -112,7 +110,7 @@ type SSHKeyState struct { Fingerprint pulumi.StringPtrInput // The human-readable name for the SSH key. Name pulumi.StringPtrInput - // SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + // SSH public key. - If the value of this attribute changes, the resource will be replaced. PublicKey pulumi.StringPtrInput Timeouts SSHKeyTimeoutsPtrInput } @@ -124,7 +122,7 @@ func (SSHKeyState) ElementType() reflect.Type { type sshkeyArgs struct { // The human-readable name for the SSH key. Name *string `pulumi:"name"` - // SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + // SSH public key. - If the value of this attribute changes, the resource will be replaced. PublicKey string `pulumi:"publicKey"` Timeouts *SSHKeyTimeouts `pulumi:"timeouts"` } @@ -133,7 +131,7 @@ type sshkeyArgs struct { type SSHKeyArgs struct { // The human-readable name for the SSH key. Name pulumi.StringPtrInput - // SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + // SSH public key. - If the value of this attribute changes, the resource will be replaced. PublicKey pulumi.StringInput Timeouts SSHKeyTimeoutsPtrInput } @@ -240,7 +238,7 @@ func (o SSHKeyOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *SSHKey) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } -// SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. +// SSH public key. - If the value of this attribute changes, the resource will be replaced. func (o SSHKeyOutput) PublicKey() pulumi.StringOutput { return o.ApplyT(func(v *SSHKey) pulumi.StringOutput { return v.PublicKey }).(pulumi.StringOutput) } diff --git a/sdk/go/genesiscloud/volume.go b/sdk/go/genesiscloud/volume.go index da70adb..f39275e 100644 --- a/sdk/go/genesiscloud/volume.go +++ b/sdk/go/genesiscloud/volume.go @@ -29,7 +29,7 @@ import ( // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { // _, err := genesiscloud.NewVolume(ctx, "example", &genesiscloud.VolumeArgs{ -// Region: pulumi.String("ARC-IS-HAF-1"), +// Region: pulumi.String("NORD-NO-KRS-1"), // Size: pulumi.Int(50), // Type: pulumi.String("hdd"), // }) @@ -45,9 +45,7 @@ import ( // ## Import // // ```sh -// -// $ pulumi import genesiscloud:index/volume:Volume example 18efeec8-94f0-4776-8ff2-5e9b49c74608 -// +// $ pulumi import genesiscloud:index/volume:Volume example 18efeec8-94f0-4776-8ff2-5e9b49c74608 // ``` type Volume struct { pulumi.CustomResourceState @@ -58,19 +56,18 @@ type Volume struct { Description pulumi.StringOutput `pulumi:"description"` // The human-readable name for the volume. Name pulumi.StringOutput `pulumi:"name"` - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringOutput `pulumi:"region"` // Flag to retain the volume when the resource is deleted - Sets the default value "false" if the attribute is not set. RetainOnDelete pulumi.BoolOutput `pulumi:"retainOnDelete"` - // The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - // recreate the resource. - The value must be at least 1. + // The storage size of this volume given in GiB. - The value must be at least 1. Size pulumi.IntOutput `pulumi:"size"` // The volume status. Status pulumi.StringOutput `pulumi:"status"` Timeouts VolumeTimeoutsPtrOutput `pulumi:"timeouts"` - // The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["hdd" "ssd"]. + // The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["hdd" "ssd"]. Type pulumi.StringOutput `pulumi:"type"` } @@ -119,19 +116,18 @@ type volumeState struct { Description *string `pulumi:"description"` // The human-readable name for the volume. Name *string `pulumi:"name"` - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region *string `pulumi:"region"` // Flag to retain the volume when the resource is deleted - Sets the default value "false" if the attribute is not set. RetainOnDelete *bool `pulumi:"retainOnDelete"` - // The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - // recreate the resource. - The value must be at least 1. + // The storage size of this volume given in GiB. - The value must be at least 1. Size *int `pulumi:"size"` // The volume status. Status *string `pulumi:"status"` Timeouts *VolumeTimeouts `pulumi:"timeouts"` - // The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["hdd" "ssd"]. + // The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["hdd" "ssd"]. Type *string `pulumi:"type"` } @@ -142,19 +138,18 @@ type VolumeState struct { Description pulumi.StringPtrInput // The human-readable name for the volume. Name pulumi.StringPtrInput - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringPtrInput // Flag to retain the volume when the resource is deleted - Sets the default value "false" if the attribute is not set. RetainOnDelete pulumi.BoolPtrInput - // The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - // recreate the resource. - The value must be at least 1. + // The storage size of this volume given in GiB. - The value must be at least 1. Size pulumi.IntPtrInput // The volume status. Status pulumi.StringPtrInput Timeouts VolumeTimeoutsPtrInput - // The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["hdd" "ssd"]. + // The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["hdd" "ssd"]. Type pulumi.StringPtrInput } @@ -167,17 +162,16 @@ type volumeArgs struct { Description *string `pulumi:"description"` // The human-readable name for the volume. Name *string `pulumi:"name"` - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region string `pulumi:"region"` // Flag to retain the volume when the resource is deleted - Sets the default value "false" if the attribute is not set. RetainOnDelete *bool `pulumi:"retainOnDelete"` - // The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - // recreate the resource. - The value must be at least 1. + // The storage size of this volume given in GiB. - The value must be at least 1. Size int `pulumi:"size"` Timeouts *VolumeTimeouts `pulumi:"timeouts"` - // The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["hdd" "ssd"]. + // The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["hdd" "ssd"]. Type string `pulumi:"type"` } @@ -187,17 +181,16 @@ type VolumeArgs struct { Description pulumi.StringPtrInput // The human-readable name for the volume. Name pulumi.StringPtrInput - // The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - // value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + // The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + // of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. Region pulumi.StringInput // Flag to retain the volume when the resource is deleted - Sets the default value "false" if the attribute is not set. RetainOnDelete pulumi.BoolPtrInput - // The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - // recreate the resource. - The value must be at least 1. + // The storage size of this volume given in GiB. - The value must be at least 1. Size pulumi.IntInput Timeouts VolumeTimeoutsPtrInput - // The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - // resource. - The value must be one of: ["hdd" "ssd"]. + // The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + // must be one of: ["hdd" "ssd"]. Type pulumi.StringInput } @@ -303,8 +296,8 @@ func (o VolumeOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *Volume) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } -// The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The -// value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. +// The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one +// of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. func (o VolumeOutput) Region() pulumi.StringOutput { return o.ApplyT(func(v *Volume) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) } @@ -314,8 +307,7 @@ func (o VolumeOutput) RetainOnDelete() pulumi.BoolOutput { return o.ApplyT(func(v *Volume) pulumi.BoolOutput { return v.RetainOnDelete }).(pulumi.BoolOutput) } -// The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and -// recreate the resource. - The value must be at least 1. +// The storage size of this volume given in GiB. - The value must be at least 1. func (o VolumeOutput) Size() pulumi.IntOutput { return o.ApplyT(func(v *Volume) pulumi.IntOutput { return v.Size }).(pulumi.IntOutput) } @@ -329,8 +321,8 @@ func (o VolumeOutput) Timeouts() VolumeTimeoutsPtrOutput { return o.ApplyT(func(v *Volume) VolumeTimeoutsPtrOutput { return v.Timeouts }).(VolumeTimeoutsPtrOutput) } -// The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the -// resource. - The value must be one of: ["hdd" "ssd"]. +// The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value +// must be one of: ["hdd" "ssd"]. func (o VolumeOutput) Type() pulumi.StringOutput { return o.ApplyT(func(v *Volume) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) } diff --git a/sdk/nodejs/filesystem.ts b/sdk/nodejs/filesystem.ts index 565f9ef..c09997b 100644 --- a/sdk/nodejs/filesystem.ts +++ b/sdk/nodejs/filesystem.ts @@ -26,7 +26,7 @@ import * as utilities from "./utilities"; * ## Import * * ```sh - * $ pulumi import genesiscloud:index/filesystem:Filesystem example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + * $ pulumi import genesiscloud:index/filesystem:Filesystem example 18efeec8-94f0-4776-8ff2-5e9b49c74608 * ``` */ export class Filesystem extends pulumi.CustomResource { @@ -78,8 +78,8 @@ export class Filesystem extends pulumi.CustomResource { */ public readonly name!: pulumi.Output; /** - * The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - * destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + * replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ public readonly region!: pulumi.Output; /** @@ -96,8 +96,8 @@ export class Filesystem extends pulumi.CustomResource { public /*out*/ readonly status!: pulumi.Output; public readonly timeouts!: pulumi.Output; /** - * The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. - The value must be one of: ["vast"]. + * The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + * must be one of: ["vast"]. */ public readonly type!: pulumi.Output; @@ -178,8 +178,8 @@ export interface FilesystemState { */ name?: pulumi.Input; /** - * The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - * destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + * replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ region?: pulumi.Input; /** @@ -196,8 +196,8 @@ export interface FilesystemState { status?: pulumi.Input; timeouts?: pulumi.Input; /** - * The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. - The value must be one of: ["vast"]. + * The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + * must be one of: ["vast"]. */ type?: pulumi.Input; } @@ -215,8 +215,8 @@ export interface FilesystemArgs { */ name?: pulumi.Input; /** - * The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - * destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + * replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ region: pulumi.Input; /** @@ -229,8 +229,8 @@ export interface FilesystemArgs { size: pulumi.Input; timeouts?: pulumi.Input; /** - * The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. - The value must be one of: ["vast"]. + * The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + * must be one of: ["vast"]. */ type: pulumi.Input; } diff --git a/sdk/nodejs/floatingIp.ts b/sdk/nodejs/floatingIp.ts index 0ed1f53..a787834 100644 --- a/sdk/nodejs/floatingIp.ts +++ b/sdk/nodejs/floatingIp.ts @@ -16,8 +16,7 @@ import * as utilities from "./utilities"; * import * as genesiscloud from "@genesiscloud/pulumi-genesiscloud"; * * const floatingIp = new genesiscloud.FloatingIp("floatingIp", { - * description: "The description for you terraform floating IP.", - * region: "ARC-IS-HAF-1", + * region: "NORD-NO-KRS-1", * version: "ipv4", * }); * ``` @@ -25,7 +24,7 @@ import * as utilities from "./utilities"; * ## Import * * ```sh - * $ pulumi import genesiscloud:index/floatingIp:FloatingIp example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + * $ pulumi import genesiscloud:index/floatingIp:FloatingIp example 18efeec8-94f0-4776-8ff2-5e9b49c74608 * ``` */ export class FloatingIp extends pulumi.CustomResource { @@ -77,8 +76,8 @@ export class FloatingIp extends pulumi.CustomResource { */ public readonly name!: pulumi.Output; /** - * The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - * value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + * of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ public readonly region!: pulumi.Output; /** @@ -91,8 +90,8 @@ export class FloatingIp extends pulumi.CustomResource { */ public /*out*/ readonly updatedAt!: pulumi.Output; /** - * The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. - The value must be one of: ["ipv4"]. + * The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + * must be one of: ["ipv4"]. */ public readonly version!: pulumi.Output; @@ -168,8 +167,8 @@ export interface FloatingIpState { */ name?: pulumi.Input; /** - * The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - * value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + * of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ region?: pulumi.Input; /** @@ -182,8 +181,8 @@ export interface FloatingIpState { */ updatedAt?: pulumi.Input; /** - * The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. - The value must be one of: ["ipv4"]. + * The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + * must be one of: ["ipv4"]. */ version?: pulumi.Input; } @@ -201,14 +200,14 @@ export interface FloatingIpArgs { */ name?: pulumi.Input; /** - * The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - * value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + * of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ region: pulumi.Input; timeouts?: pulumi.Input; /** - * The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. - The value must be one of: ["ipv4"]. + * The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + * must be one of: ["ipv4"]. */ version: pulumi.Input; } diff --git a/sdk/nodejs/images.ts b/sdk/nodejs/images.ts index 3a1392b..9773a74 100644 --- a/sdk/nodejs/images.ts +++ b/sdk/nodejs/images.ts @@ -22,7 +22,7 @@ import * as utilities from "./utilities"; * }); * const snapshots = genesiscloud.Images({ * filter: { - * region: "ARC-IS-HAF-1", + * region: "NORD-NO-KRS-1", * type: "snapshot", * }, * }); @@ -34,7 +34,6 @@ import * as utilities from "./utilities"; * ``` */ export function images(args: ImagesArgs, opts?: pulumi.InvokeOptions): Promise { - opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("genesiscloud:index/images:Images", { "filter": args.filter, @@ -75,7 +74,7 @@ export interface ImagesResult { * }); * const snapshots = genesiscloud.Images({ * filter: { - * region: "ARC-IS-HAF-1", + * region: "NORD-NO-KRS-1", * type: "snapshot", * }, * }); @@ -87,7 +86,11 @@ export interface ImagesResult { * ``` */ export function imagesOutput(args: ImagesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { - return pulumi.output(args).apply((a: any) => images(a, opts)) + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("genesiscloud:index/images:Images", { + "filter": args.filter, + "timeouts": args.timeouts, + }, opts); } /** diff --git a/sdk/nodejs/index.ts b/sdk/nodejs/index.ts index 026adb6..4fabc53 100644 --- a/sdk/nodejs/index.ts +++ b/sdk/nodejs/index.ts @@ -25,6 +25,11 @@ export type Instance = import("./instance").Instance; export const Instance: typeof import("./instance").Instance = null as any; utilities.lazyLoad(exports, ["Instance"], () => require("./instance")); +export { InstanceStatusArgs, InstanceStatusState } from "./instanceStatus"; +export type InstanceStatus = import("./instanceStatus").InstanceStatus; +export const InstanceStatus: typeof import("./instanceStatus").InstanceStatus = null as any; +utilities.lazyLoad(exports, ["InstanceStatus"], () => require("./instanceStatus")); + export { ProviderArgs } from "./provider"; export type Provider = import("./provider").Provider; export const Provider: typeof import("./provider").Provider = null as any; @@ -70,6 +75,8 @@ const _module = { return new FloatingIp(name, undefined, { urn }) case "genesiscloud:index/instance:Instance": return new Instance(name, undefined, { urn }) + case "genesiscloud:index/instanceStatus:InstanceStatus": + return new InstanceStatus(name, undefined, { urn }) case "genesiscloud:index/sSHKey:SSHKey": return new SSHKey(name, undefined, { urn }) case "genesiscloud:index/securityGroup:SecurityGroup": @@ -86,6 +93,7 @@ const _module = { pulumi.runtime.registerResourceModule("genesiscloud", "index/filesystem", _module) pulumi.runtime.registerResourceModule("genesiscloud", "index/floatingIp", _module) pulumi.runtime.registerResourceModule("genesiscloud", "index/instance", _module) +pulumi.runtime.registerResourceModule("genesiscloud", "index/instanceStatus", _module) pulumi.runtime.registerResourceModule("genesiscloud", "index/sSHKey", _module) pulumi.runtime.registerResourceModule("genesiscloud", "index/securityGroup", _module) pulumi.runtime.registerResourceModule("genesiscloud", "index/snapshot", _module) diff --git a/sdk/nodejs/instance.ts b/sdk/nodejs/instance.ts index d402a10..d74a69c 100644 --- a/sdk/nodejs/instance.ts +++ b/sdk/nodejs/instance.ts @@ -16,8 +16,8 @@ import * as utilities from "./utilities"; * import * as genesiscloud from "@genesiscloud/pulumi-genesiscloud"; * * const example = new genesiscloud.Instance("example", { - * image: "my-image-id", - * region: "ARC-IS-HAF-1", + * image: "ubuntu:22.04", + * region: "NORD-NO-KRS-1", * sshKeyIds: ["my-ssh-key-id"], * type: "vcpu-2_memory-4g", * }); @@ -26,7 +26,7 @@ import * as utilities from "./utilities"; * ## Import * * ```sh - * $ pulumi import genesiscloud:index/instance:Instance example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + * $ pulumi import genesiscloud:index/instance:Instance example 18efeec8-94f0-4776-8ff2-5e9b49c74608 * ``` */ export class Instance extends pulumi.CustomResource { @@ -73,16 +73,12 @@ export class Instance extends pulumi.CustomResource { * The floating IP attached to the instance. */ public readonly floatingIpId!: pulumi.Output; - /** - * The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - * attribute is configured and changes, Terraform will destroy and recreate the resource. - */ public readonly hostname!: pulumi.Output; /** * The source image id, image slug or snapshot id of the instance. The image version can also specified together with the * image slug in this format `:`. Learn more about images - * [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - * recreate the resource. + * [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + * replaced. */ public readonly image!: pulumi.Output; /** @@ -90,7 +86,7 @@ export class Instance extends pulumi.CustomResource { */ public /*out*/ readonly imageId!: pulumi.Output; /** - * Option to provide metadata. Currently supported is `startup_script`. + * Option to provide metadata. Currently supported is `startupScript`. */ public readonly metadata!: pulumi.Output; /** @@ -99,14 +95,14 @@ export class Instance extends pulumi.CustomResource { public readonly name!: pulumi.Output; /** * The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. - * **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - * SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - * length must be at least 16. + * **Please Note**: Only one of `sshKeys` or `password` can be provided. Password is less secure - we recommend you use an + * SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + * least 16. */ public readonly password!: pulumi.Output; /** * The placement option identifier in which instances are physically located relative to each other within a zone. For - * example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + * example A or B. - If the value of this attribute changes, the resource will be replaced. */ public readonly placementOption!: pulumi.Output; /** @@ -118,8 +114,8 @@ export class Instance extends pulumi.CustomResource { */ public /*out*/ readonly publicIp!: pulumi.Output; /** - * The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - * value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + * of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ public readonly region!: pulumi.Output; /** @@ -131,8 +127,7 @@ export class Instance extends pulumi.CustomResource { */ public readonly securityGroupIds!: pulumi.Output; /** - * The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. + * The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. */ public readonly sshKeyIds!: pulumi.Output; /** @@ -142,8 +137,8 @@ export class Instance extends pulumi.CustomResource { public readonly timeouts!: pulumi.Output; /** * The instance type identifier. Learn more about instance types - * [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - * Terraform will destroy and recreate the resource. + * [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + * resource will be replaced. */ public readonly type!: pulumi.Output; /** @@ -251,16 +246,12 @@ export interface InstanceState { * The floating IP attached to the instance. */ floatingIpId?: pulumi.Input; - /** - * The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - * attribute is configured and changes, Terraform will destroy and recreate the resource. - */ hostname?: pulumi.Input; /** * The source image id, image slug or snapshot id of the instance. The image version can also specified together with the * image slug in this format `:`. Learn more about images - * [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - * recreate the resource. + * [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + * replaced. */ image?: pulumi.Input; /** @@ -268,7 +259,7 @@ export interface InstanceState { */ imageId?: pulumi.Input; /** - * Option to provide metadata. Currently supported is `startup_script`. + * Option to provide metadata. Currently supported is `startupScript`. */ metadata?: pulumi.Input; /** @@ -277,14 +268,14 @@ export interface InstanceState { name?: pulumi.Input; /** * The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. - * **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - * SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - * length must be at least 16. + * **Please Note**: Only one of `sshKeys` or `password` can be provided. Password is less secure - we recommend you use an + * SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + * least 16. */ password?: pulumi.Input; /** * The placement option identifier in which instances are physically located relative to each other within a zone. For - * example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + * example A or B. - If the value of this attribute changes, the resource will be replaced. */ placementOption?: pulumi.Input; /** @@ -296,8 +287,8 @@ export interface InstanceState { */ publicIp?: pulumi.Input; /** - * The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - * value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + * of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ region?: pulumi.Input; /** @@ -309,8 +300,7 @@ export interface InstanceState { */ securityGroupIds?: pulumi.Input[]>; /** - * The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. + * The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. */ sshKeyIds?: pulumi.Input[]>; /** @@ -320,8 +310,8 @@ export interface InstanceState { timeouts?: pulumi.Input; /** * The instance type identifier. Learn more about instance types - * [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - * Terraform will destroy and recreate the resource. + * [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + * resource will be replaced. */ type?: pulumi.Input; /** @@ -346,20 +336,16 @@ export interface InstanceArgs { * The floating IP attached to the instance. */ floatingIpId?: pulumi.Input; - /** - * The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - * attribute is configured and changes, Terraform will destroy and recreate the resource. - */ hostname?: pulumi.Input; /** * The source image id, image slug or snapshot id of the instance. The image version can also specified together with the * image slug in this format `:`. Learn more about images - * [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - * recreate the resource. + * [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + * replaced. */ image: pulumi.Input; /** - * Option to provide metadata. Currently supported is `startup_script`. + * Option to provide metadata. Currently supported is `startupScript`. */ metadata?: pulumi.Input; /** @@ -368,19 +354,19 @@ export interface InstanceArgs { name?: pulumi.Input; /** * The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. - * **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - * SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - * length must be at least 16. + * **Please Note**: Only one of `sshKeys` or `password` can be provided. Password is less secure - we recommend you use an + * SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + * least 16. */ password?: pulumi.Input; /** * The placement option identifier in which instances are physically located relative to each other within a zone. For - * example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + * example A or B. - If the value of this attribute changes, the resource will be replaced. */ placementOption?: pulumi.Input; /** - * The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - * value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + * of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ region: pulumi.Input; /** @@ -392,15 +378,14 @@ export interface InstanceArgs { */ securityGroupIds?: pulumi.Input[]>; /** - * The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. + * The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. */ sshKeyIds?: pulumi.Input[]>; timeouts?: pulumi.Input; /** * The instance type identifier. Learn more about instance types - * [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - * Terraform will destroy and recreate the resource. + * [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + * resource will be replaced. */ type: pulumi.Input; /** diff --git a/sdk/nodejs/instanceStatus.ts b/sdk/nodejs/instanceStatus.ts new file mode 100644 index 0000000..5bcd056 --- /dev/null +++ b/sdk/nodejs/instanceStatus.ts @@ -0,0 +1,135 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; +import * as utilities from "./utilities"; + +/** + * InstanceStatus resource + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as genesiscloud from "@genesiscloud/pulumi-genesiscloud"; + * + * const exampleInstance = new genesiscloud.Instance("exampleInstance", { + * region: "NORD-NO-KRS-1", + * image: "ubuntu:22.04", + * type: "vcpu-2_memory-4g", + * sshKeyIds: ["my-ssh-key-id"], + * }); + * const exampleInstanceStatus = new genesiscloud.InstanceStatus("exampleInstanceStatus", { + * instanceId: exampleInstance.id, + * status: "active", + * }); + * ``` + * + * ## Import + * + * ```sh + * $ pulumi import genesiscloud:index/instanceStatus:InstanceStatus example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + * ``` + */ +export class InstanceStatus extends pulumi.CustomResource { + /** + * Get an existing InstanceStatus resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state Any extra arguments used during the lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, state?: InstanceStatusState, opts?: pulumi.CustomResourceOptions): InstanceStatus { + return new InstanceStatus(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'genesiscloud:index/instanceStatus:InstanceStatus'; + + /** + * Returns true if the given object is an instance of InstanceStatus. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is InstanceStatus { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === InstanceStatus.__pulumiType; + } + + /** + * The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + */ + public readonly instanceId!: pulumi.Output; + /** + * The target instance status. - The value must be one of: ["active" "stopped"]. + */ + public readonly status!: pulumi.Output; + public readonly timeouts!: pulumi.Output; + + /** + * Create a InstanceStatus resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: InstanceStatusArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: InstanceStatusArgs | InstanceStatusState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as InstanceStatusState | undefined; + resourceInputs["instanceId"] = state ? state.instanceId : undefined; + resourceInputs["status"] = state ? state.status : undefined; + resourceInputs["timeouts"] = state ? state.timeouts : undefined; + } else { + const args = argsOrState as InstanceStatusArgs | undefined; + if ((!args || args.instanceId === undefined) && !opts.urn) { + throw new Error("Missing required property 'instanceId'"); + } + if ((!args || args.status === undefined) && !opts.urn) { + throw new Error("Missing required property 'status'"); + } + resourceInputs["instanceId"] = args ? args.instanceId : undefined; + resourceInputs["status"] = args ? args.status : undefined; + resourceInputs["timeouts"] = args ? args.timeouts : undefined; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(InstanceStatus.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering InstanceStatus resources. + */ +export interface InstanceStatusState { + /** + * The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + */ + instanceId?: pulumi.Input; + /** + * The target instance status. - The value must be one of: ["active" "stopped"]. + */ + status?: pulumi.Input; + timeouts?: pulumi.Input; +} + +/** + * The set of arguments for constructing a InstanceStatus resource. + */ +export interface InstanceStatusArgs { + /** + * The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + */ + instanceId: pulumi.Input; + /** + * The target instance status. - The value must be one of: ["active" "stopped"]. + */ + status: pulumi.Input; + timeouts?: pulumi.Input; +} diff --git a/sdk/nodejs/package.json b/sdk/nodejs/package.json index d3412f5..2e147c1 100644 --- a/sdk/nodejs/package.json +++ b/sdk/nodejs/package.json @@ -24,5 +24,6 @@ "resource": true, "name": "genesiscloud", "server": "github://api.github.com/genesiscloud" - } + }, + "packageManager": "yarn@1.22.22+sha1.ac34549e6aa8e7ead463a7407e1c7390f61a6610" } diff --git a/sdk/nodejs/securityGroup.ts b/sdk/nodejs/securityGroup.ts index 701d59d..517fd50 100644 --- a/sdk/nodejs/securityGroup.ts +++ b/sdk/nodejs/securityGroup.ts @@ -12,7 +12,7 @@ import * as utilities from "./utilities"; * ## Import * * ```sh - * $ pulumi import genesiscloud:index/securityGroup:SecurityGroup example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + * $ pulumi import genesiscloud:index/securityGroup:SecurityGroup example 18efeec8-94f0-4776-8ff2-5e9b49c74608 * ``` */ export class SecurityGroup extends pulumi.CustomResource { @@ -56,8 +56,8 @@ export class SecurityGroup extends pulumi.CustomResource { */ public readonly name!: pulumi.Output; /** - * The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - * value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + * of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ public readonly region!: pulumi.Output; public readonly rules!: pulumi.Output; @@ -125,8 +125,8 @@ export interface SecurityGroupState { */ name?: pulumi.Input; /** - * The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - * value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + * of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ region?: pulumi.Input; rules?: pulumi.Input[]>; @@ -150,8 +150,8 @@ export interface SecurityGroupArgs { */ name?: pulumi.Input; /** - * The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - * value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + * of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ region: pulumi.Input; rules: pulumi.Input[]>; diff --git a/sdk/nodejs/snapshot.ts b/sdk/nodejs/snapshot.ts index d80868f..9a65032 100644 --- a/sdk/nodejs/snapshot.ts +++ b/sdk/nodejs/snapshot.ts @@ -27,7 +27,7 @@ import * as utilities from "./utilities"; * ## Import * * ```sh - * $ pulumi import genesiscloud:index/snapshot:Snapshot example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + * $ pulumi import genesiscloud:index/snapshot:Snapshot example 18efeec8-94f0-4776-8ff2-5e9b49c74608 * ``` */ export class Snapshot extends pulumi.CustomResource { @@ -63,8 +63,7 @@ export class Snapshot extends pulumi.CustomResource { */ public /*out*/ readonly createdAt!: pulumi.Output; /** - * The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. + * The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. */ public readonly instanceId!: pulumi.Output; /** @@ -80,7 +79,7 @@ export class Snapshot extends pulumi.CustomResource { */ public readonly retainOnDelete!: pulumi.Output; /** - * The storage size of this snapshot given in bytes. + * The storage size of this snapshot given in GiB. */ public /*out*/ readonly size!: pulumi.Output; /** @@ -138,8 +137,7 @@ export interface SnapshotState { */ createdAt?: pulumi.Input; /** - * The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. + * The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. */ instanceId?: pulumi.Input; /** @@ -155,7 +153,7 @@ export interface SnapshotState { */ retainOnDelete?: pulumi.Input; /** - * The storage size of this snapshot given in bytes. + * The storage size of this snapshot given in GiB. */ size?: pulumi.Input; /** @@ -170,8 +168,7 @@ export interface SnapshotState { */ export interface SnapshotArgs { /** - * The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. + * The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. */ instanceId: pulumi.Input; /** diff --git a/sdk/nodejs/sshkey.ts b/sdk/nodejs/sshkey.ts index 57b8c94..30eafe9 100644 --- a/sdk/nodejs/sshkey.ts +++ b/sdk/nodejs/sshkey.ts @@ -21,7 +21,7 @@ import * as utilities from "./utilities"; * ## Import * * ```sh - * $ pulumi import genesiscloud:index/sSHKey:SSHKey example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + * $ pulumi import genesiscloud:index/sSHKey:SSHKey example 18efeec8-94f0-4776-8ff2-5e9b49c74608 * ``` */ export class SSHKey extends pulumi.CustomResource { @@ -65,7 +65,7 @@ export class SSHKey extends pulumi.CustomResource { */ public readonly name!: pulumi.Output; /** - * SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + * SSH public key. - If the value of this attribute changes, the resource will be replaced. */ public readonly publicKey!: pulumi.Output; public readonly timeouts!: pulumi.Output; @@ -121,7 +121,7 @@ export interface SSHKeyState { */ name?: pulumi.Input; /** - * SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + * SSH public key. - If the value of this attribute changes, the resource will be replaced. */ publicKey?: pulumi.Input; timeouts?: pulumi.Input; @@ -136,7 +136,7 @@ export interface SSHKeyArgs { */ name?: pulumi.Input; /** - * SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + * SSH public key. - If the value of this attribute changes, the resource will be replaced. */ publicKey: pulumi.Input; timeouts?: pulumi.Input; diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index c5ba064..1ce3970 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -20,6 +20,7 @@ "images.ts", "index.ts", "instance.ts", + "instanceStatus.ts", "provider.ts", "securityGroup.ts", "snapshot.ts", diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 8c86cda..136af48 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -84,9 +84,32 @@ export interface ImagesTimeoutsArgs { } export interface InstanceMetadata { + /** + * A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). + * - If the value of this attribute changes, the resource will be replaced. + */ startupScript?: pulumi.Input; } +export interface InstanceStatusTimeouts { + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + */ + create?: pulumi.Input; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + */ + delete?: pulumi.Input; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + */ + read?: pulumi.Input; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + */ + update?: pulumi.Input; +} + export interface InstanceTimeouts { /** * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index 7c08515..a338079 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -95,9 +95,32 @@ export interface ImagesTimeouts { } export interface InstanceMetadata { + /** + * A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). + * - If the value of this attribute changes, the resource will be replaced. + */ startupScript?: string; } +export interface InstanceStatusTimeouts { + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + */ + create?: string; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + */ + delete?: string; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + */ + read?: string; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + */ + update?: string; +} + export interface InstanceTimeouts { /** * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). diff --git a/sdk/nodejs/volume.ts b/sdk/nodejs/volume.ts index b2021c2..68849b9 100644 --- a/sdk/nodejs/volume.ts +++ b/sdk/nodejs/volume.ts @@ -16,7 +16,7 @@ import * as utilities from "./utilities"; * import * as genesiscloud from "@genesiscloud/pulumi-genesiscloud"; * * const example = new genesiscloud.Volume("example", { - * region: "ARC-IS-HAF-1", + * region: "NORD-NO-KRS-1", * size: 50, * type: "hdd", * }); @@ -25,7 +25,7 @@ import * as utilities from "./utilities"; * ## Import * * ```sh - * $ pulumi import genesiscloud:index/volume:Volume example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + * $ pulumi import genesiscloud:index/volume:Volume example 18efeec8-94f0-4776-8ff2-5e9b49c74608 * ``` */ export class Volume extends pulumi.CustomResource { @@ -69,8 +69,8 @@ export class Volume extends pulumi.CustomResource { */ public readonly name!: pulumi.Output; /** - * The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - * value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + * of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ public readonly region!: pulumi.Output; /** @@ -78,8 +78,7 @@ export class Volume extends pulumi.CustomResource { */ public readonly retainOnDelete!: pulumi.Output; /** - * The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - * recreate the resource. - The value must be at least 1. + * The storage size of this volume given in GiB. - The value must be at least 1. */ public readonly size!: pulumi.Output; /** @@ -88,8 +87,8 @@ export class Volume extends pulumi.CustomResource { public /*out*/ readonly status!: pulumi.Output; public readonly timeouts!: pulumi.Output; /** - * The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. - The value must be one of: ["hdd" "ssd"]. + * The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + * must be one of: ["hdd" "ssd"]. */ public readonly type!: pulumi.Output; @@ -158,8 +157,8 @@ export interface VolumeState { */ name?: pulumi.Input; /** - * The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - * value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + * of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ region?: pulumi.Input; /** @@ -167,8 +166,7 @@ export interface VolumeState { */ retainOnDelete?: pulumi.Input; /** - * The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - * recreate the resource. - The value must be at least 1. + * The storage size of this volume given in GiB. - The value must be at least 1. */ size?: pulumi.Input; /** @@ -177,8 +175,8 @@ export interface VolumeState { status?: pulumi.Input; timeouts?: pulumi.Input; /** - * The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. - The value must be one of: ["hdd" "ssd"]. + * The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + * must be one of: ["hdd" "ssd"]. */ type?: pulumi.Input; } @@ -196,8 +194,8 @@ export interface VolumeArgs { */ name?: pulumi.Input; /** - * The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - * value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + * The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + * of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. */ region: pulumi.Input; /** @@ -205,14 +203,13 @@ export interface VolumeArgs { */ retainOnDelete?: pulumi.Input; /** - * The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - * recreate the resource. - The value must be at least 1. + * The storage size of this volume given in GiB. - The value must be at least 1. */ size: pulumi.Input; timeouts?: pulumi.Input; /** - * The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - * resource. - The value must be one of: ["hdd" "ssd"]. + * The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + * must be one of: ["hdd" "ssd"]. */ type: pulumi.Input; } diff --git a/sdk/python/pulumi_genesiscloud/__init__.py b/sdk/python/pulumi_genesiscloud/__init__.py index 816138d..2ca015b 100644 --- a/sdk/python/pulumi_genesiscloud/__init__.py +++ b/sdk/python/pulumi_genesiscloud/__init__.py @@ -9,6 +9,7 @@ from .floating_ip import * from .images import * from .instance import * +from .instance_status import * from .provider import * from .security_group import * from .snapshot import * @@ -51,6 +52,14 @@ "genesiscloud:index/instance:Instance": "Instance" } }, + { + "pkg": "genesiscloud", + "mod": "index/instanceStatus", + "fqn": "pulumi_genesiscloud", + "classes": { + "genesiscloud:index/instanceStatus:InstanceStatus": "InstanceStatus" + } + }, { "pkg": "genesiscloud", "mod": "index/sSHKey", diff --git a/sdk/python/pulumi_genesiscloud/_inputs.py b/sdk/python/pulumi_genesiscloud/_inputs.py index 236ce46..08c056a 100644 --- a/sdk/python/pulumi_genesiscloud/_inputs.py +++ b/sdk/python/pulumi_genesiscloud/_inputs.py @@ -4,25 +4,66 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = [ 'FilesystemTimeoutsArgs', + 'FilesystemTimeoutsArgsDict', 'FloatingIpTimeoutsArgs', + 'FloatingIpTimeoutsArgsDict', 'ImagesFilterArgs', + 'ImagesFilterArgsDict', 'ImagesTimeoutsArgs', + 'ImagesTimeoutsArgsDict', 'InstanceMetadataArgs', + 'InstanceMetadataArgsDict', + 'InstanceStatusTimeoutsArgs', + 'InstanceStatusTimeoutsArgsDict', 'InstanceTimeoutsArgs', + 'InstanceTimeoutsArgsDict', 'SSHKeyTimeoutsArgs', + 'SSHKeyTimeoutsArgsDict', 'SecurityGroupRuleArgs', + 'SecurityGroupRuleArgsDict', 'SecurityGroupTimeoutsArgs', + 'SecurityGroupTimeoutsArgsDict', 'SnapshotTimeoutsArgs', + 'SnapshotTimeoutsArgsDict', 'VolumeTimeoutsArgs', + 'VolumeTimeoutsArgsDict', ] +MYPY = False + +if not MYPY: + class FilesystemTimeoutsArgsDict(TypedDict): + create: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + delete: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + read: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + """ + update: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ +elif False: + FilesystemTimeoutsArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class FilesystemTimeoutsArgs: def __init__(__self__, *, @@ -94,6 +135,27 @@ def update(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "update", value) +if not MYPY: + class FloatingIpTimeoutsArgsDict(TypedDict): + create: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + delete: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + read: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + """ + update: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ +elif False: + FloatingIpTimeoutsArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class FloatingIpTimeoutsArgs: def __init__(__self__, *, @@ -165,6 +227,21 @@ def update(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "update", value) +if not MYPY: + class ImagesFilterArgsDict(TypedDict): + type: str + """ + Filter by the kind of image. + - The value must be one of: ["base-os" "cloud-image" "preconfigured" "snapshot"]. + """ + region: NotRequired[str] + """ + Filter by the region identifier. + - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + """ +elif False: + ImagesFilterArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class ImagesFilterArgs: def __init__(__self__, *, @@ -207,6 +284,15 @@ def region(self, value: Optional[str]): pulumi.set(self, "region", value) +if not MYPY: + class ImagesTimeoutsArgsDict(TypedDict): + read: NotRequired[str] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ +elif False: + ImagesTimeoutsArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class ImagesTimeoutsArgs: def __init__(__self__, *, @@ -230,16 +316,34 @@ def read(self, value: Optional[str]): pulumi.set(self, "read", value) +if not MYPY: + class InstanceMetadataArgsDict(TypedDict): + startup_script: NotRequired[pulumi.Input[str]] + """ + A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). + - If the value of this attribute changes, the resource will be replaced. + """ +elif False: + InstanceMetadataArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class InstanceMetadataArgs: def __init__(__self__, *, startup_script: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] startup_script: A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). + - If the value of this attribute changes, the resource will be replaced. + """ if startup_script is not None: pulumi.set(__self__, "startup_script", startup_script) @property @pulumi.getter(name="startupScript") def startup_script(self) -> Optional[pulumi.Input[str]]: + """ + A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). + - If the value of this attribute changes, the resource will be replaced. + """ return pulumi.get(self, "startup_script") @startup_script.setter @@ -247,6 +351,119 @@ def startup_script(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "startup_script", value) +if not MYPY: + class InstanceStatusTimeoutsArgsDict(TypedDict): + create: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + delete: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + read: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + """ + update: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ +elif False: + InstanceStatusTimeoutsArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class InstanceStatusTimeoutsArgs: + def __init__(__self__, *, + create: Optional[pulumi.Input[str]] = None, + delete: Optional[pulumi.Input[str]] = None, + read: Optional[pulumi.Input[str]] = None, + update: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] create: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + :param pulumi.Input[str] delete: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + :param pulumi.Input[str] read: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + :param pulumi.Input[str] update: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + if create is not None: + pulumi.set(__self__, "create", create) + if delete is not None: + pulumi.set(__self__, "delete", delete) + if read is not None: + pulumi.set(__self__, "read", read) + if update is not None: + pulumi.set(__self__, "update", update) + + @property + @pulumi.getter + def create(self) -> Optional[pulumi.Input[str]]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + return pulumi.get(self, "create") + + @create.setter + def create(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "create", value) + + @property + @pulumi.getter + def delete(self) -> Optional[pulumi.Input[str]]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + return pulumi.get(self, "delete") + + @delete.setter + def delete(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "delete", value) + + @property + @pulumi.getter + def read(self) -> Optional[pulumi.Input[str]]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + """ + return pulumi.get(self, "read") + + @read.setter + def read(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "read", value) + + @property + @pulumi.getter + def update(self) -> Optional[pulumi.Input[str]]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + return pulumi.get(self, "update") + + @update.setter + def update(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "update", value) + + +if not MYPY: + class InstanceTimeoutsArgsDict(TypedDict): + create: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + delete: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + read: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + """ + update: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ +elif False: + InstanceTimeoutsArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class InstanceTimeoutsArgs: def __init__(__self__, *, @@ -318,6 +535,27 @@ def update(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "update", value) +if not MYPY: + class SSHKeyTimeoutsArgsDict(TypedDict): + create: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + delete: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + read: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + """ + update: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ +elif False: + SSHKeyTimeoutsArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class SSHKeyTimeoutsArgs: def __init__(__self__, *, @@ -389,6 +627,31 @@ def update(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "update", value) +if not MYPY: + class SecurityGroupRuleArgsDict(TypedDict): + direction: pulumi.Input[str] + """ + The direction of the rule. + - The value must be one of: ["egress" "ingress"]. + """ + protocol: pulumi.Input[str] + """ + The protocol of the rule. + - The value must be one of: ["all" "icmp" "tcp" "udp"]. + """ + port_range_max: NotRequired[pulumi.Input[int]] + """ + The maximum port number of the rule. + - The value must be between 1 and 65535. + """ + port_range_min: NotRequired[pulumi.Input[int]] + """ + The minimum port number of the rule. + - The value must be between 1 and 65535. + """ +elif False: + SecurityGroupRuleArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class SecurityGroupRuleArgs: def __init__(__self__, *, @@ -466,6 +729,27 @@ def port_range_min(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "port_range_min", value) +if not MYPY: + class SecurityGroupTimeoutsArgsDict(TypedDict): + create: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + delete: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + read: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + """ + update: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ +elif False: + SecurityGroupTimeoutsArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class SecurityGroupTimeoutsArgs: def __init__(__self__, *, @@ -537,6 +821,27 @@ def update(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "update", value) +if not MYPY: + class SnapshotTimeoutsArgsDict(TypedDict): + create: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + delete: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + read: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + """ + update: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ +elif False: + SnapshotTimeoutsArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class SnapshotTimeoutsArgs: def __init__(__self__, *, @@ -608,6 +913,27 @@ def update(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "update", value) +if not MYPY: + class VolumeTimeoutsArgsDict(TypedDict): + create: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + delete: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + read: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + """ + update: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ +elif False: + VolumeTimeoutsArgsDict: TypeAlias = Mapping[str, Any] + @pulumi.input_type class VolumeTimeoutsArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_genesiscloud/_utilities.py b/sdk/python/pulumi_genesiscloud/_utilities.py index 35f9638..f25c4be 100644 --- a/sdk/python/pulumi_genesiscloud/_utilities.py +++ b/sdk/python/pulumi_genesiscloud/_utilities.py @@ -4,6 +4,7 @@ import asyncio +import functools import importlib.metadata import importlib.util import inspect @@ -11,14 +12,19 @@ import os import sys import typing +import warnings +import base64 import pulumi import pulumi.runtime from pulumi.runtime.sync_await import _sync_await +from pulumi.runtime.proto import resource_pb2 from semver import VersionInfo as SemverVersion from parver import Version as PEP440Version +C = typing.TypeVar("C", bound=typing.Callable) + def get_env(*args): for v in args: @@ -96,10 +102,6 @@ def _get_semver_version(): _version = _get_semver_version() _version_str = str(_version) - -def get_version(): - return _version_str - def get_resource_opts_defaults() -> pulumi.ResourceOptions: return pulumi.ResourceOptions( version=get_version(), @@ -262,7 +264,7 @@ def call_plain( output = pulumi.runtime.call(tok, props, res, typ) # Ingoring deps silently. They are typically non-empty, r.f() calls include r as a dependency. - result, known, secret, _ = _sync_await(asyncio.ensure_future(_await_output(output))) + result, known, secret, _ = _sync_await(asyncio.create_task(_await_output(output))) problem = None if not known: @@ -287,5 +289,39 @@ async def _await_output(o: pulumi.Output[typing.Any]) -> typing.Tuple[object, bo await o._resources, ) + +# This is included to provide an upgrade path for users who are using a version +# of the Pulumi SDK (<3.121.0) that does not include the `deprecated` decorator. +def deprecated(message: str) -> typing.Callable[[C], C]: + """ + Decorator to indicate a function is deprecated. + + As well as inserting appropriate statements to indicate that the function is + deprecated, this decorator also tags the function with a special attribute + so that Pulumi code can detect that it is deprecated and react appropriately + in certain situations. + + message is the deprecation message that should be printed if the function is called. + """ + + def decorator(fn: C) -> C: + if not callable(fn): + raise TypeError("Expected fn to be callable") + + @functools.wraps(fn) + def deprecated_fn(*args, **kwargs): + warnings.warn(message) + pulumi.warn(f"{fn.__name__} is deprecated: {message}") + + return fn(*args, **kwargs) + + deprecated_fn.__dict__["_pulumi_deprecated_callable"] = fn + return typing.cast(C, deprecated_fn) + + return decorator + def get_plugin_download_url(): return "github://api.github.com/genesiscloud" + +def get_version(): + return _version_str diff --git a/sdk/python/pulumi_genesiscloud/config/__init__.pyi b/sdk/python/pulumi_genesiscloud/config/__init__.pyi index 07ea806..0e0144b 100644 --- a/sdk/python/pulumi_genesiscloud/config/__init__.pyi +++ b/sdk/python/pulumi_genesiscloud/config/__init__.pyi @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities endpoint: Optional[str] diff --git a/sdk/python/pulumi_genesiscloud/config/vars.py b/sdk/python/pulumi_genesiscloud/config/vars.py index 192dd33..fff3c0b 100644 --- a/sdk/python/pulumi_genesiscloud/config/vars.py +++ b/sdk/python/pulumi_genesiscloud/config/vars.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities import types diff --git a/sdk/python/pulumi_genesiscloud/filesystem.py b/sdk/python/pulumi_genesiscloud/filesystem.py index f8d8df7..4b820a7 100644 --- a/sdk/python/pulumi_genesiscloud/filesystem.py +++ b/sdk/python/pulumi_genesiscloud/filesystem.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities from . import outputs from ._inputs import * @@ -25,11 +30,11 @@ def __init__(__self__, *, timeouts: Optional[pulumi.Input['FilesystemTimeoutsArgs']] = None): """ The set of arguments for constructing a Filesystem resource. - :param pulumi.Input[str] region: The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[int] size: The storage size of this filesystem given in GiB. - The value must be at least 1. - :param pulumi.Input[str] type: The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["vast"]. + :param pulumi.Input[str] type: The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["vast"]. :param pulumi.Input[str] description: The human-readable description for the filesystem. - Sets the default value "" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the filesystem. :param pulumi.Input[bool] retain_on_delete: Flag to retain the filesystem when the resource is deleted - Sets the default value "false" if the attribute is not set. @@ -50,8 +55,8 @@ def __init__(__self__, *, @pulumi.getter def region(self) -> pulumi.Input[str]: """ - The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -75,8 +80,8 @@ def size(self, value: pulumi.Input[int]): @pulumi.getter def type(self) -> pulumi.Input[str]: """ - The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["vast"]. + The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["vast"]. """ return pulumi.get(self, "type") @@ -151,13 +156,13 @@ def __init__(__self__, *, :param pulumi.Input[str] mount_base_path: The base path on the server under which the mount point can be accessed. :param pulumi.Input[Sequence[pulumi.Input[str]]] mount_endpoint_ranges: The start and end IP of the mount endpoint range. Expressed as a array with two entries. :param pulumi.Input[str] name: The human-readable name for the filesystem. - :param pulumi.Input[str] region: The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[bool] retain_on_delete: Flag to retain the filesystem when the resource is deleted - Sets the default value "false" if the attribute is not set. :param pulumi.Input[int] size: The storage size of this filesystem given in GiB. - The value must be at least 1. :param pulumi.Input[str] status: The filesystem status. - :param pulumi.Input[str] type: The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["vast"]. + :param pulumi.Input[str] type: The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["vast"]. """ if created_at is not None: pulumi.set(__self__, "created_at", created_at) @@ -246,8 +251,8 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: """ - The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -304,8 +309,8 @@ def timeouts(self, value: Optional[pulumi.Input['FilesystemTimeoutsArgs']]): @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: """ - The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["vast"]. + The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["vast"]. """ return pulumi.get(self, "type") @@ -324,7 +329,7 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, retain_on_delete: Optional[pulumi.Input[bool]] = None, size: Optional[pulumi.Input[int]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['FilesystemTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['FilesystemTimeoutsArgs', 'FilesystemTimeoutsArgsDict']]] = None, type: Optional[pulumi.Input[str]] = None, __props__=None): """ @@ -346,19 +351,19 @@ def __init__(__self__, ## Import ```sh - $ pulumi import genesiscloud:index/filesystem:Filesystem example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/filesystem:Filesystem example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: The human-readable description for the filesystem. - Sets the default value "" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the filesystem. - :param pulumi.Input[str] region: The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[bool] retain_on_delete: Flag to retain the filesystem when the resource is deleted - Sets the default value "false" if the attribute is not set. :param pulumi.Input[int] size: The storage size of this filesystem given in GiB. - The value must be at least 1. - :param pulumi.Input[str] type: The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["vast"]. + :param pulumi.Input[str] type: The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["vast"]. """ ... @overload @@ -385,7 +390,7 @@ def __init__(__self__, ## Import ```sh - $ pulumi import genesiscloud:index/filesystem:Filesystem example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/filesystem:Filesystem example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. @@ -408,7 +413,7 @@ def _internal_init(__self__, region: Optional[pulumi.Input[str]] = None, retain_on_delete: Optional[pulumi.Input[bool]] = None, size: Optional[pulumi.Input[int]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['FilesystemTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['FilesystemTimeoutsArgs', 'FilesystemTimeoutsArgsDict']]] = None, type: Optional[pulumi.Input[str]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -455,7 +460,7 @@ def get(resource_name: str, retain_on_delete: Optional[pulumi.Input[bool]] = None, size: Optional[pulumi.Input[int]] = None, status: Optional[pulumi.Input[str]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['FilesystemTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['FilesystemTimeoutsArgs', 'FilesystemTimeoutsArgsDict']]] = None, type: Optional[pulumi.Input[str]] = None) -> 'Filesystem': """ Get an existing Filesystem resource's state with the given name, id, and optional extra @@ -469,13 +474,13 @@ def get(resource_name: str, :param pulumi.Input[str] mount_base_path: The base path on the server under which the mount point can be accessed. :param pulumi.Input[Sequence[pulumi.Input[str]]] mount_endpoint_ranges: The start and end IP of the mount endpoint range. Expressed as a array with two entries. :param pulumi.Input[str] name: The human-readable name for the filesystem. - :param pulumi.Input[str] region: The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[bool] retain_on_delete: Flag to retain the filesystem when the resource is deleted - Sets the default value "false" if the attribute is not set. :param pulumi.Input[int] size: The storage size of this filesystem given in GiB. - The value must be at least 1. :param pulumi.Input[str] status: The filesystem status. - :param pulumi.Input[str] type: The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["vast"]. + :param pulumi.Input[str] type: The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["vast"]. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -538,8 +543,8 @@ def name(self) -> pulumi.Output[str]: @pulumi.getter def region(self) -> pulumi.Output[str]: """ - The identifier for the region this filesystem exists in. - If the value of this attribute changes, Terraform will - destroy and recreate the resource. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The identifier for the region this filesystem exists in. - If the value of this attribute changes, the resource will be + replaced. - The value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -576,8 +581,8 @@ def timeouts(self) -> pulumi.Output[Optional['outputs.FilesystemTimeouts']]: @pulumi.getter def type(self) -> pulumi.Output[str]: """ - The storage type of the filesystem. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["vast"]. + The storage type of the filesystem. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["vast"]. """ return pulumi.get(self, "type") diff --git a/sdk/python/pulumi_genesiscloud/floating_ip.py b/sdk/python/pulumi_genesiscloud/floating_ip.py index 34a624e..3211aed 100644 --- a/sdk/python/pulumi_genesiscloud/floating_ip.py +++ b/sdk/python/pulumi_genesiscloud/floating_ip.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities from . import outputs from ._inputs import * @@ -23,10 +28,10 @@ def __init__(__self__, *, timeouts: Optional[pulumi.Input['FloatingIpTimeoutsArgs']] = None): """ The set of arguments for constructing a FloatingIp resource. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. - :param pulumi.Input[str] version: The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["ipv4"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] version: The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["ipv4"]. :param pulumi.Input[str] description: The human-readable description set for the floating IP. - Sets the default value "" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the floating IP. """ @@ -43,8 +48,8 @@ def __init__(__self__, *, @pulumi.getter def region(self) -> pulumi.Input[str]: """ - The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -56,8 +61,8 @@ def region(self, value: pulumi.Input[str]): @pulumi.getter def version(self) -> pulumi.Input[str]: """ - The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["ipv4"]. + The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["ipv4"]. """ return pulumi.get(self, "version") @@ -119,12 +124,12 @@ def __init__(__self__, *, :param pulumi.Input[str] ip_address: The IP address of the floating IP. :param pulumi.Input[bool] is_public: Whether the floating IP is public or private. - Sets the default value "true" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the floating IP. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[str] status: The floating IP status. :param pulumi.Input[str] updated_at: The timestamp when this image was last updated in RFC 3339. - :param pulumi.Input[str] version: The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["ipv4"]. + :param pulumi.Input[str] version: The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["ipv4"]. """ if created_at is not None: pulumi.set(__self__, "created_at", created_at) @@ -211,8 +216,8 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: """ - The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -257,8 +262,8 @@ def updated_at(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def version(self) -> Optional[pulumi.Input[str]]: """ - The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["ipv4"]. + The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["ipv4"]. """ return pulumi.get(self, "version") @@ -275,7 +280,7 @@ def __init__(__self__, description: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[str]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['FloatingIpTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['FloatingIpTimeoutsArgs', 'FloatingIpTimeoutsArgsDict']]] = None, version: Optional[pulumi.Input[str]] = None, __props__=None): """ @@ -288,25 +293,24 @@ def __init__(__self__, import pulumi_genesiscloud as genesiscloud floating_ip = genesiscloud.FloatingIp("floatingIp", - description="The description for you terraform floating IP.", - region="ARC-IS-HAF-1", + region="NORD-NO-KRS-1", version="ipv4") ``` ## Import ```sh - $ pulumi import genesiscloud:index/floatingIp:FloatingIp example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/floatingIp:FloatingIp example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: The human-readable description set for the floating IP. - Sets the default value "" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the floating IP. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. - :param pulumi.Input[str] version: The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["ipv4"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] version: The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["ipv4"]. """ ... @overload @@ -324,15 +328,14 @@ def __init__(__self__, import pulumi_genesiscloud as genesiscloud floating_ip = genesiscloud.FloatingIp("floatingIp", - description="The description for you terraform floating IP.", - region="ARC-IS-HAF-1", + region="NORD-NO-KRS-1", version="ipv4") ``` ## Import ```sh - $ pulumi import genesiscloud:index/floatingIp:FloatingIp example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/floatingIp:FloatingIp example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. @@ -353,7 +356,7 @@ def _internal_init(__self__, description: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[str]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['FloatingIpTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['FloatingIpTimeoutsArgs', 'FloatingIpTimeoutsArgsDict']]] = None, version: Optional[pulumi.Input[str]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -395,7 +398,7 @@ def get(resource_name: str, name: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[str]] = None, status: Optional[pulumi.Input[str]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['FloatingIpTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['FloatingIpTimeoutsArgs', 'FloatingIpTimeoutsArgsDict']]] = None, updated_at: Optional[pulumi.Input[str]] = None, version: Optional[pulumi.Input[str]] = None) -> 'FloatingIp': """ @@ -410,12 +413,12 @@ def get(resource_name: str, :param pulumi.Input[str] ip_address: The IP address of the floating IP. :param pulumi.Input[bool] is_public: Whether the floating IP is public or private. - Sets the default value "true" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the floating IP. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[str] status: The floating IP status. :param pulumi.Input[str] updated_at: The timestamp when this image was last updated in RFC 3339. - :param pulumi.Input[str] version: The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["ipv4"]. + :param pulumi.Input[str] version: The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["ipv4"]. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -477,8 +480,8 @@ def name(self) -> pulumi.Output[str]: @pulumi.getter def region(self) -> pulumi.Output[str]: """ - The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -507,8 +510,8 @@ def updated_at(self) -> pulumi.Output[str]: @pulumi.getter def version(self) -> pulumi.Output[str]: """ - The version of the floating IP. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["ipv4"]. + The version of the floating IP. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["ipv4"]. """ return pulumi.get(self, "version") diff --git a/sdk/python/pulumi_genesiscloud/images.py b/sdk/python/pulumi_genesiscloud/images.py index 4369ad1..9fc971e 100644 --- a/sdk/python/pulumi_genesiscloud/images.py +++ b/sdk/python/pulumi_genesiscloud/images.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities from . import outputs from ._inputs import * @@ -70,8 +75,8 @@ def __await__(self): timeouts=self.timeouts) -def images(filter: Optional[pulumi.InputType['ImagesFilterArgs']] = None, - timeouts: Optional[pulumi.InputType['ImagesTimeoutsArgs']] = None, +def images(filter: Optional[Union['ImagesFilterArgs', 'ImagesFilterArgsDict']] = None, + timeouts: Optional[Union['ImagesTimeoutsArgs', 'ImagesTimeoutsArgsDict']] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableImagesResult: """ Images data source @@ -82,16 +87,16 @@ def images(filter: Optional[pulumi.InputType['ImagesFilterArgs']] = None, import pulumi import pulumi_genesiscloud as genesiscloud - cloud_images = genesiscloud.images(filter=genesiscloud.ImagesFilterArgs( - type="cloud-image", - )) - snapshots = genesiscloud.images(filter=genesiscloud.ImagesFilterArgs( - region="ARC-IS-HAF-1", - type="snapshot", - )) - preconfigured_images = genesiscloud.images(filter=genesiscloud.ImagesFilterArgs( - type="preconfigured", - )) + cloud_images = genesiscloud.images(filter={ + "type": "cloud-image", + }) + snapshots = genesiscloud.images(filter={ + "region": "NORD-NO-KRS-1", + "type": "snapshot", + }) + preconfigured_images = genesiscloud.images(filter={ + "type": "preconfigured", + }) ``` """ __args__ = dict() @@ -105,11 +110,8 @@ def images(filter: Optional[pulumi.InputType['ImagesFilterArgs']] = None, id=pulumi.get(__ret__, 'id'), images=pulumi.get(__ret__, 'images'), timeouts=pulumi.get(__ret__, 'timeouts')) - - -@_utilities.lift_output_func(images) -def images_output(filter: Optional[pulumi.Input[pulumi.InputType['ImagesFilterArgs']]] = None, - timeouts: Optional[pulumi.Input[Optional[pulumi.InputType['ImagesTimeoutsArgs']]]] = None, +def images_output(filter: Optional[pulumi.Input[Union['ImagesFilterArgs', 'ImagesFilterArgsDict']]] = None, + timeouts: Optional[pulumi.Input[Optional[Union['ImagesTimeoutsArgs', 'ImagesTimeoutsArgsDict']]]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[ImagesResult]: """ Images data source @@ -120,16 +122,25 @@ def images_output(filter: Optional[pulumi.Input[pulumi.InputType['ImagesFilterAr import pulumi import pulumi_genesiscloud as genesiscloud - cloud_images = genesiscloud.images(filter=genesiscloud.ImagesFilterArgs( - type="cloud-image", - )) - snapshots = genesiscloud.images(filter=genesiscloud.ImagesFilterArgs( - region="ARC-IS-HAF-1", - type="snapshot", - )) - preconfigured_images = genesiscloud.images(filter=genesiscloud.ImagesFilterArgs( - type="preconfigured", - )) + cloud_images = genesiscloud.images(filter={ + "type": "cloud-image", + }) + snapshots = genesiscloud.images(filter={ + "region": "NORD-NO-KRS-1", + "type": "snapshot", + }) + preconfigured_images = genesiscloud.images(filter={ + "type": "preconfigured", + }) ``` """ - ... + __args__ = dict() + __args__['filter'] = filter + __args__['timeouts'] = timeouts + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke_output('genesiscloud:index/images:Images', __args__, opts=opts, typ=ImagesResult) + return __ret__.apply(lambda __response__: ImagesResult( + filter=pulumi.get(__response__, 'filter'), + id=pulumi.get(__response__, 'id'), + images=pulumi.get(__response__, 'images'), + timeouts=pulumi.get(__response__, 'timeouts'))) diff --git a/sdk/python/pulumi_genesiscloud/instance.py b/sdk/python/pulumi_genesiscloud/instance.py index c37b02c..15dc7ea 100644 --- a/sdk/python/pulumi_genesiscloud/instance.py +++ b/sdk/python/pulumi_genesiscloud/instance.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities from . import outputs from ._inputs import * @@ -35,29 +40,26 @@ def __init__(__self__, *, The set of arguments for constructing a Instance resource. :param pulumi.Input[str] image: The source image id, image slug or snapshot id of the instance. The image version can also specified together with the image slug in this format `:`. Learn more about images - [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - recreate the resource. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + replaced. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[str] type: The instance type identifier. Learn more about instance types - [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - Terraform will destroy and recreate the resource. + [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + resource will be replaced. :param pulumi.Input[int] disk_size: The disk size of the instance in GB. :param pulumi.Input[str] floating_ip_id: The floating IP attached to the instance. - :param pulumi.Input[str] hostname: The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - attribute is configured and changes, Terraform will destroy and recreate the resource. :param pulumi.Input['InstanceMetadataArgs'] metadata: Option to provide metadata. Currently supported is `startup_script`. :param pulumi.Input[str] name: The human-readable name for the instance. :param pulumi.Input[str] password: The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - length must be at least 16. + SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + least 16. :param pulumi.Input[str] placement_option: The placement option identifier in which instances are physically located relative to each other within a zone. For - example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + example A or B. - If the value of this attribute changes, the resource will be replaced. :param pulumi.Input[str] reservation_id: The id of the reservation the instance is associated with. :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: The security groups of the instance. If not provided will be set to the default security group. - :param pulumi.Input[Sequence[pulumi.Input[str]]] ssh_key_ids: The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + :param pulumi.Input[Sequence[pulumi.Input[str]]] ssh_key_ids: The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. :param pulumi.Input[Sequence[pulumi.Input[str]]] volume_ids: The volumes of the instance. """ pulumi.set(__self__, "image", image) @@ -94,8 +96,8 @@ def image(self) -> pulumi.Input[str]: """ The source image id, image slug or snapshot id of the instance. The image version can also specified together with the image slug in this format `:`. Learn more about images - [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - recreate the resource. + [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + replaced. """ return pulumi.get(self, "image") @@ -107,8 +109,8 @@ def image(self, value: pulumi.Input[str]): @pulumi.getter def region(self) -> pulumi.Input[str]: """ - The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -121,8 +123,8 @@ def region(self, value: pulumi.Input[str]): def type(self) -> pulumi.Input[str]: """ The instance type identifier. Learn more about instance types - [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - Terraform will destroy and recreate the resource. + [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + resource will be replaced. """ return pulumi.get(self, "type") @@ -157,10 +159,6 @@ def floating_ip_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def hostname(self) -> Optional[pulumi.Input[str]]: - """ - The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - attribute is configured and changes, Terraform will destroy and recreate the resource. - """ return pulumi.get(self, "hostname") @hostname.setter @@ -197,8 +195,8 @@ def password(self) -> Optional[pulumi.Input[str]]: """ The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - length must be at least 16. + SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + least 16. """ return pulumi.get(self, "password") @@ -211,7 +209,7 @@ def password(self, value: Optional[pulumi.Input[str]]): def placement_option(self) -> Optional[pulumi.Input[str]]: """ The placement option identifier in which instances are physically located relative to each other within a zone. For - example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + example A or B. - If the value of this attribute changes, the resource will be replaced. """ return pulumi.get(self, "placement_option") @@ -247,8 +245,7 @@ def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[ @pulumi.getter(name="sshKeyIds") def ssh_key_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. """ return pulumi.get(self, "ssh_key_ids") @@ -309,33 +306,30 @@ def __init__(__self__, *, :param pulumi.Input[int] disk_size: The disk size of the instance in GB. :param pulumi.Input[str] dns_name: The dns name of the instance. :param pulumi.Input[str] floating_ip_id: The floating IP attached to the instance. - :param pulumi.Input[str] hostname: The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - attribute is configured and changes, Terraform will destroy and recreate the resource. :param pulumi.Input[str] image: The source image id, image slug or snapshot id of the instance. The image version can also specified together with the image slug in this format `:`. Learn more about images - [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - recreate the resource. + [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + replaced. :param pulumi.Input[str] image_id: The resulting image ID of the instance. :param pulumi.Input['InstanceMetadataArgs'] metadata: Option to provide metadata. Currently supported is `startup_script`. :param pulumi.Input[str] name: The human-readable name for the instance. :param pulumi.Input[str] password: The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - length must be at least 16. + SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + least 16. :param pulumi.Input[str] placement_option: The placement option identifier in which instances are physically located relative to each other within a zone. For - example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + example A or B. - If the value of this attribute changes, the resource will be replaced. :param pulumi.Input[str] private_ip: The private IPv4 IP-Address (IPv4 address). :param pulumi.Input[str] public_ip: The public IPv4 IP-Address (IPv4 address). - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[str] reservation_id: The id of the reservation the instance is associated with. :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: The security groups of the instance. If not provided will be set to the default security group. - :param pulumi.Input[Sequence[pulumi.Input[str]]] ssh_key_ids: The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + :param pulumi.Input[Sequence[pulumi.Input[str]]] ssh_key_ids: The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. :param pulumi.Input[str] status: The instance status. :param pulumi.Input[str] type: The instance type identifier. Learn more about instance types - [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - Terraform will destroy and recreate the resource. + [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + resource will be replaced. :param pulumi.Input[str] updated_at: The timestamp when this image was last updated in RFC 3339. :param pulumi.Input[Sequence[pulumi.Input[str]]] volume_ids: The volumes of the instance. """ @@ -435,10 +429,6 @@ def floating_ip_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def hostname(self) -> Optional[pulumi.Input[str]]: - """ - The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - attribute is configured and changes, Terraform will destroy and recreate the resource. - """ return pulumi.get(self, "hostname") @hostname.setter @@ -451,8 +441,8 @@ def image(self) -> Optional[pulumi.Input[str]]: """ The source image id, image slug or snapshot id of the instance. The image version can also specified together with the image slug in this format `:`. Learn more about images - [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - recreate the resource. + [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + replaced. """ return pulumi.get(self, "image") @@ -502,8 +492,8 @@ def password(self) -> Optional[pulumi.Input[str]]: """ The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - length must be at least 16. + SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + least 16. """ return pulumi.get(self, "password") @@ -516,7 +506,7 @@ def password(self, value: Optional[pulumi.Input[str]]): def placement_option(self) -> Optional[pulumi.Input[str]]: """ The placement option identifier in which instances are physically located relative to each other within a zone. For - example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + example A or B. - If the value of this attribute changes, the resource will be replaced. """ return pulumi.get(self, "placement_option") @@ -552,8 +542,8 @@ def public_ip(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: """ - The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -589,8 +579,7 @@ def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[ @pulumi.getter(name="sshKeyIds") def ssh_key_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. """ return pulumi.get(self, "ssh_key_ids") @@ -624,8 +613,8 @@ def timeouts(self, value: Optional[pulumi.Input['InstanceTimeoutsArgs']]): def type(self) -> Optional[pulumi.Input[str]]: """ The instance type identifier. Learn more about instance types - [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - Terraform will destroy and recreate the resource. + [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + resource will be replaced. """ return pulumi.get(self, "type") @@ -667,7 +656,7 @@ def __init__(__self__, floating_ip_id: Optional[pulumi.Input[str]] = None, hostname: Optional[pulumi.Input[str]] = None, image: Optional[pulumi.Input[str]] = None, - metadata: Optional[pulumi.Input[pulumi.InputType['InstanceMetadataArgs']]] = None, + metadata: Optional[pulumi.Input[Union['InstanceMetadataArgs', 'InstanceMetadataArgsDict']]] = None, name: Optional[pulumi.Input[str]] = None, password: Optional[pulumi.Input[str]] = None, placement_option: Optional[pulumi.Input[str]] = None, @@ -675,7 +664,7 @@ def __init__(__self__, reservation_id: Optional[pulumi.Input[str]] = None, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, ssh_key_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['InstanceTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['InstanceTimeoutsArgs', 'InstanceTimeoutsArgsDict']]] = None, type: Optional[pulumi.Input[str]] = None, volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): @@ -689,8 +678,8 @@ def __init__(__self__, import pulumi_genesiscloud as genesiscloud example = genesiscloud.Instance("example", - image="my-image-id", - region="ARC-IS-HAF-1", + image="ubuntu:22.04", + region="NORD-NO-KRS-1", ssh_key_ids=["my-ssh-key-id"], type="vcpu-2_memory-4g") ``` @@ -698,36 +687,33 @@ def __init__(__self__, ## Import ```sh - $ pulumi import genesiscloud:index/instance:Instance example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/instance:Instance example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[int] disk_size: The disk size of the instance in GB. :param pulumi.Input[str] floating_ip_id: The floating IP attached to the instance. - :param pulumi.Input[str] hostname: The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - attribute is configured and changes, Terraform will destroy and recreate the resource. :param pulumi.Input[str] image: The source image id, image slug or snapshot id of the instance. The image version can also specified together with the image slug in this format `:`. Learn more about images - [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - recreate the resource. - :param pulumi.Input[pulumi.InputType['InstanceMetadataArgs']] metadata: Option to provide metadata. Currently supported is `startup_script`. + [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + replaced. + :param pulumi.Input[Union['InstanceMetadataArgs', 'InstanceMetadataArgsDict']] metadata: Option to provide metadata. Currently supported is `startup_script`. :param pulumi.Input[str] name: The human-readable name for the instance. :param pulumi.Input[str] password: The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - length must be at least 16. + SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + least 16. :param pulumi.Input[str] placement_option: The placement option identifier in which instances are physically located relative to each other within a zone. For - example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + example A or B. - If the value of this attribute changes, the resource will be replaced. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[str] reservation_id: The id of the reservation the instance is associated with. :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: The security groups of the instance. If not provided will be set to the default security group. - :param pulumi.Input[Sequence[pulumi.Input[str]]] ssh_key_ids: The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + :param pulumi.Input[Sequence[pulumi.Input[str]]] ssh_key_ids: The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. :param pulumi.Input[str] type: The instance type identifier. Learn more about instance types - [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - Terraform will destroy and recreate the resource. + [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + resource will be replaced. :param pulumi.Input[Sequence[pulumi.Input[str]]] volume_ids: The volumes of the instance. """ ... @@ -746,8 +732,8 @@ def __init__(__self__, import pulumi_genesiscloud as genesiscloud example = genesiscloud.Instance("example", - image="my-image-id", - region="ARC-IS-HAF-1", + image="ubuntu:22.04", + region="NORD-NO-KRS-1", ssh_key_ids=["my-ssh-key-id"], type="vcpu-2_memory-4g") ``` @@ -755,7 +741,7 @@ def __init__(__self__, ## Import ```sh - $ pulumi import genesiscloud:index/instance:Instance example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/instance:Instance example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. @@ -777,7 +763,7 @@ def _internal_init(__self__, floating_ip_id: Optional[pulumi.Input[str]] = None, hostname: Optional[pulumi.Input[str]] = None, image: Optional[pulumi.Input[str]] = None, - metadata: Optional[pulumi.Input[pulumi.InputType['InstanceMetadataArgs']]] = None, + metadata: Optional[pulumi.Input[Union['InstanceMetadataArgs', 'InstanceMetadataArgsDict']]] = None, name: Optional[pulumi.Input[str]] = None, password: Optional[pulumi.Input[str]] = None, placement_option: Optional[pulumi.Input[str]] = None, @@ -785,7 +771,7 @@ def _internal_init(__self__, reservation_id: Optional[pulumi.Input[str]] = None, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, ssh_key_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['InstanceTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['InstanceTimeoutsArgs', 'InstanceTimeoutsArgsDict']]] = None, type: Optional[pulumi.Input[str]] = None, volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): @@ -844,7 +830,7 @@ def get(resource_name: str, hostname: Optional[pulumi.Input[str]] = None, image: Optional[pulumi.Input[str]] = None, image_id: Optional[pulumi.Input[str]] = None, - metadata: Optional[pulumi.Input[pulumi.InputType['InstanceMetadataArgs']]] = None, + metadata: Optional[pulumi.Input[Union['InstanceMetadataArgs', 'InstanceMetadataArgsDict']]] = None, name: Optional[pulumi.Input[str]] = None, password: Optional[pulumi.Input[str]] = None, placement_option: Optional[pulumi.Input[str]] = None, @@ -855,7 +841,7 @@ def get(resource_name: str, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, ssh_key_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['InstanceTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['InstanceTimeoutsArgs', 'InstanceTimeoutsArgsDict']]] = None, type: Optional[pulumi.Input[str]] = None, updated_at: Optional[pulumi.Input[str]] = None, volume_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None) -> 'Instance': @@ -870,33 +856,30 @@ def get(resource_name: str, :param pulumi.Input[int] disk_size: The disk size of the instance in GB. :param pulumi.Input[str] dns_name: The dns name of the instance. :param pulumi.Input[str] floating_ip_id: The floating IP attached to the instance. - :param pulumi.Input[str] hostname: The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - attribute is configured and changes, Terraform will destroy and recreate the resource. :param pulumi.Input[str] image: The source image id, image slug or snapshot id of the instance. The image version can also specified together with the image slug in this format `:`. Learn more about images - [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - recreate the resource. + [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + replaced. :param pulumi.Input[str] image_id: The resulting image ID of the instance. - :param pulumi.Input[pulumi.InputType['InstanceMetadataArgs']] metadata: Option to provide metadata. Currently supported is `startup_script`. + :param pulumi.Input[Union['InstanceMetadataArgs', 'InstanceMetadataArgsDict']] metadata: Option to provide metadata. Currently supported is `startup_script`. :param pulumi.Input[str] name: The human-readable name for the instance. :param pulumi.Input[str] password: The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - length must be at least 16. + SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + least 16. :param pulumi.Input[str] placement_option: The placement option identifier in which instances are physically located relative to each other within a zone. For - example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + example A or B. - If the value of this attribute changes, the resource will be replaced. :param pulumi.Input[str] private_ip: The private IPv4 IP-Address (IPv4 address). :param pulumi.Input[str] public_ip: The public IPv4 IP-Address (IPv4 address). - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[str] reservation_id: The id of the reservation the instance is associated with. :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: The security groups of the instance. If not provided will be set to the default security group. - :param pulumi.Input[Sequence[pulumi.Input[str]]] ssh_key_ids: The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + :param pulumi.Input[Sequence[pulumi.Input[str]]] ssh_key_ids: The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. :param pulumi.Input[str] status: The instance status. :param pulumi.Input[str] type: The instance type identifier. Learn more about instance types - [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - Terraform will destroy and recreate the resource. + [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + resource will be replaced. :param pulumi.Input[str] updated_at: The timestamp when this image was last updated in RFC 3339. :param pulumi.Input[Sequence[pulumi.Input[str]]] volume_ids: The volumes of the instance. """ @@ -963,10 +946,6 @@ def floating_ip_id(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter def hostname(self) -> pulumi.Output[str]: - """ - The hostname of your instance. If not provided will be initially set to the `name` attribute. - If the value of this - attribute is configured and changes, Terraform will destroy and recreate the resource. - """ return pulumi.get(self, "hostname") @property @@ -975,8 +954,8 @@ def image(self) -> pulumi.Output[str]: """ The source image id, image slug or snapshot id of the instance. The image version can also specified together with the image slug in this format `:`. Learn more about images - [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, Terraform will destroy and - recreate the resource. + [here](https://developers.genesiscloud.com/images). - If the value of this attribute changes, the resource will be + replaced. """ return pulumi.get(self, "image") @@ -1010,8 +989,8 @@ def password(self) -> pulumi.Output[Optional[str]]: """ The password to access the instance. Your password must have upper and lower chars, digits and length between 8-72. **Please Note**: Only one of `ssh_keys` or `password` can be provided. Password is less secure - we recommend you use an - SSH key-pair. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The string - length must be at least 16. + SSH key-pair. - If the value of this attribute changes, the resource will be replaced. - The string length must be at + least 16. """ return pulumi.get(self, "password") @@ -1020,7 +999,7 @@ def password(self) -> pulumi.Output[Optional[str]]: def placement_option(self) -> pulumi.Output[str]: """ The placement option identifier in which instances are physically located relative to each other within a zone. For - example A or B. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + example A or B. - If the value of this attribute changes, the resource will be replaced. """ return pulumi.get(self, "placement_option") @@ -1044,8 +1023,8 @@ def public_ip(self) -> pulumi.Output[str]: @pulumi.getter def region(self) -> pulumi.Output[str]: """ - The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -1069,8 +1048,7 @@ def security_group_ids(self) -> pulumi.Output[Sequence[str]]: @pulumi.getter(name="sshKeyIds") def ssh_key_ids(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - The ssh keys of the instance. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + The ssh keys of the instance. - If the value of this attribute changes, the resource will be replaced. """ return pulumi.get(self, "ssh_key_ids") @@ -1092,8 +1070,8 @@ def timeouts(self) -> pulumi.Output[Optional['outputs.InstanceTimeouts']]: def type(self) -> pulumi.Output[str]: """ The instance type identifier. Learn more about instance types - [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, - Terraform will destroy and recreate the resource. + [here](https://developers.genesiscloud.com/instances#instance-types). - If the value of this attribute changes, the + resource will be replaced. """ return pulumi.get(self, "type") diff --git a/sdk/python/pulumi_genesiscloud/instance_status.py b/sdk/python/pulumi_genesiscloud/instance_status.py new file mode 100644 index 0000000..e13c7b9 --- /dev/null +++ b/sdk/python/pulumi_genesiscloud/instance_status.py @@ -0,0 +1,279 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from . import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['InstanceStatusArgs', 'InstanceStatus'] + +@pulumi.input_type +class InstanceStatusArgs: + def __init__(__self__, *, + instance_id: pulumi.Input[str], + status: pulumi.Input[str], + timeouts: Optional[pulumi.Input['InstanceStatusTimeoutsArgs']] = None): + """ + The set of arguments for constructing a InstanceStatus resource. + :param pulumi.Input[str] instance_id: The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + :param pulumi.Input[str] status: The target instance status. - The value must be one of: ["active" "stopped"]. + """ + pulumi.set(__self__, "instance_id", instance_id) + pulumi.set(__self__, "status", status) + if timeouts is not None: + pulumi.set(__self__, "timeouts", timeouts) + + @property + @pulumi.getter(name="instanceId") + def instance_id(self) -> pulumi.Input[str]: + """ + The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + """ + return pulumi.get(self, "instance_id") + + @instance_id.setter + def instance_id(self, value: pulumi.Input[str]): + pulumi.set(self, "instance_id", value) + + @property + @pulumi.getter + def status(self) -> pulumi.Input[str]: + """ + The target instance status. - The value must be one of: ["active" "stopped"]. + """ + return pulumi.get(self, "status") + + @status.setter + def status(self, value: pulumi.Input[str]): + pulumi.set(self, "status", value) + + @property + @pulumi.getter + def timeouts(self) -> Optional[pulumi.Input['InstanceStatusTimeoutsArgs']]: + return pulumi.get(self, "timeouts") + + @timeouts.setter + def timeouts(self, value: Optional[pulumi.Input['InstanceStatusTimeoutsArgs']]): + pulumi.set(self, "timeouts", value) + + +@pulumi.input_type +class _InstanceStatusState: + def __init__(__self__, *, + instance_id: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None, + timeouts: Optional[pulumi.Input['InstanceStatusTimeoutsArgs']] = None): + """ + Input properties used for looking up and filtering InstanceStatus resources. + :param pulumi.Input[str] instance_id: The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + :param pulumi.Input[str] status: The target instance status. - The value must be one of: ["active" "stopped"]. + """ + if instance_id is not None: + pulumi.set(__self__, "instance_id", instance_id) + if status is not None: + pulumi.set(__self__, "status", status) + if timeouts is not None: + pulumi.set(__self__, "timeouts", timeouts) + + @property + @pulumi.getter(name="instanceId") + def instance_id(self) -> Optional[pulumi.Input[str]]: + """ + The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + """ + return pulumi.get(self, "instance_id") + + @instance_id.setter + def instance_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "instance_id", value) + + @property + @pulumi.getter + def status(self) -> Optional[pulumi.Input[str]]: + """ + The target instance status. - The value must be one of: ["active" "stopped"]. + """ + return pulumi.get(self, "status") + + @status.setter + def status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "status", value) + + @property + @pulumi.getter + def timeouts(self) -> Optional[pulumi.Input['InstanceStatusTimeoutsArgs']]: + return pulumi.get(self, "timeouts") + + @timeouts.setter + def timeouts(self, value: Optional[pulumi.Input['InstanceStatusTimeoutsArgs']]): + pulumi.set(self, "timeouts", value) + + +class InstanceStatus(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + instance_id: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None, + timeouts: Optional[pulumi.Input[Union['InstanceStatusTimeoutsArgs', 'InstanceStatusTimeoutsArgsDict']]] = None, + __props__=None): + """ + InstanceStatus resource + + ## Example Usage + + ```python + import pulumi + import pulumi_genesiscloud as genesiscloud + + example_instance = genesiscloud.Instance("exampleInstance", + region="NORD-NO-KRS-1", + image="ubuntu:22.04", + type="vcpu-2_memory-4g", + ssh_key_ids=["my-ssh-key-id"]) + example_instance_status = genesiscloud.InstanceStatus("exampleInstanceStatus", + instance_id=example_instance.id, + status="active") + ``` + + ## Import + + ```sh + $ pulumi import genesiscloud:index/instanceStatus:InstanceStatus example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] instance_id: The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + :param pulumi.Input[str] status: The target instance status. - The value must be one of: ["active" "stopped"]. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: InstanceStatusArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + InstanceStatus resource + + ## Example Usage + + ```python + import pulumi + import pulumi_genesiscloud as genesiscloud + + example_instance = genesiscloud.Instance("exampleInstance", + region="NORD-NO-KRS-1", + image="ubuntu:22.04", + type="vcpu-2_memory-4g", + ssh_key_ids=["my-ssh-key-id"]) + example_instance_status = genesiscloud.InstanceStatus("exampleInstanceStatus", + instance_id=example_instance.id, + status="active") + ``` + + ## Import + + ```sh + $ pulumi import genesiscloud:index/instanceStatus:InstanceStatus example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + ``` + + :param str resource_name: The name of the resource. + :param InstanceStatusArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(InstanceStatusArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + instance_id: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None, + timeouts: Optional[pulumi.Input[Union['InstanceStatusTimeoutsArgs', 'InstanceStatusTimeoutsArgsDict']]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = InstanceStatusArgs.__new__(InstanceStatusArgs) + + if instance_id is None and not opts.urn: + raise TypeError("Missing required property 'instance_id'") + __props__.__dict__["instance_id"] = instance_id + if status is None and not opts.urn: + raise TypeError("Missing required property 'status'") + __props__.__dict__["status"] = status + __props__.__dict__["timeouts"] = timeouts + super(InstanceStatus, __self__).__init__( + 'genesiscloud:index/instanceStatus:InstanceStatus', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + instance_id: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None, + timeouts: Optional[pulumi.Input[Union['InstanceStatusTimeoutsArgs', 'InstanceStatusTimeoutsArgsDict']]] = None) -> 'InstanceStatus': + """ + Get an existing InstanceStatus resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] instance_id: The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + :param pulumi.Input[str] status: The target instance status. - The value must be one of: ["active" "stopped"]. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _InstanceStatusState.__new__(_InstanceStatusState) + + __props__.__dict__["instance_id"] = instance_id + __props__.__dict__["status"] = status + __props__.__dict__["timeouts"] = timeouts + return InstanceStatus(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="instanceId") + def instance_id(self) -> pulumi.Output[str]: + """ + The id of the instance this refers to. - If the value of this attribute changes, the resource will be replaced. + """ + return pulumi.get(self, "instance_id") + + @property + @pulumi.getter + def status(self) -> pulumi.Output[str]: + """ + The target instance status. - The value must be one of: ["active" "stopped"]. + """ + return pulumi.get(self, "status") + + @property + @pulumi.getter + def timeouts(self) -> pulumi.Output[Optional['outputs.InstanceStatusTimeouts']]: + return pulumi.get(self, "timeouts") + diff --git a/sdk/python/pulumi_genesiscloud/outputs.py b/sdk/python/pulumi_genesiscloud/outputs.py index f118f6b..a7ca598 100644 --- a/sdk/python/pulumi_genesiscloud/outputs.py +++ b/sdk/python/pulumi_genesiscloud/outputs.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = [ @@ -16,6 +21,7 @@ 'ImagesImageResult', 'ImagesTimeoutsResult', 'InstanceMetadata', + 'InstanceStatusTimeouts', 'InstanceTimeouts', 'SSHKeyTimeouts', 'SecurityGroupRule', @@ -292,15 +298,78 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, startup_script: Optional[str] = None): + """ + :param str startup_script: A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). + - If the value of this attribute changes, the resource will be replaced. + """ if startup_script is not None: pulumi.set(__self__, "startup_script", startup_script) @property @pulumi.getter(name="startupScript") def startup_script(self) -> Optional[str]: + """ + A plain text bash script or "cloud-config" file that will be executed after the first instance boot. It is limited to 64 KiB in size. You can use it to configure your instance, e.g. installing the NVIDIA GPU driver. Learn more about [startup scripts and installing the GPU driver](https://support.genesiscloud.com/support/solutions/articles/47001122478). + - If the value of this attribute changes, the resource will be replaced. + """ return pulumi.get(self, "startup_script") +@pulumi.output_type +class InstanceStatusTimeouts(dict): + def __init__(__self__, *, + create: Optional[str] = None, + delete: Optional[str] = None, + read: Optional[str] = None, + update: Optional[str] = None): + """ + :param str create: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + :param str delete: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + :param str read: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + :param str update: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + if create is not None: + pulumi.set(__self__, "create", create) + if delete is not None: + pulumi.set(__self__, "delete", delete) + if read is not None: + pulumi.set(__self__, "read", read) + if update is not None: + pulumi.set(__self__, "update", update) + + @property + @pulumi.getter + def create(self) -> Optional[str]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + return pulumi.get(self, "create") + + @property + @pulumi.getter + def delete(self) -> Optional[str]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + return pulumi.get(self, "delete") + + @property + @pulumi.getter + def read(self) -> Optional[str]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled. + """ + return pulumi.get(self, "read") + + @property + @pulumi.getter + def update(self) -> Optional[str]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + return pulumi.get(self, "update") + + @pulumi.output_type class InstanceTimeouts(dict): def __init__(__self__, *, diff --git a/sdk/python/pulumi_genesiscloud/provider.py b/sdk/python/pulumi_genesiscloud/provider.py index 8804901..2714b6e 100644 --- a/sdk/python/pulumi_genesiscloud/provider.py +++ b/sdk/python/pulumi_genesiscloud/provider.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities __all__ = ['ProviderArgs', 'Provider'] diff --git a/sdk/python/pulumi_genesiscloud/security_group.py b/sdk/python/pulumi_genesiscloud/security_group.py index 783308b..fa6a8dc 100644 --- a/sdk/python/pulumi_genesiscloud/security_group.py +++ b/sdk/python/pulumi_genesiscloud/security_group.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities from . import outputs from ._inputs import * @@ -23,8 +28,8 @@ def __init__(__self__, *, timeouts: Optional[pulumi.Input['SecurityGroupTimeoutsArgs']] = None): """ The set of arguments for constructing a SecurityGroup resource. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[str] description: The human-readable description for the security group. - Sets the default value "" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the security group. """ @@ -41,8 +46,8 @@ def __init__(__self__, *, @pulumi.getter def region(self) -> pulumi.Input[str]: """ - The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -108,8 +113,8 @@ def __init__(__self__, *, :param pulumi.Input[str] created_at: The timestamp when this security group was created in RFC 3339. :param pulumi.Input[str] description: The human-readable description for the security group. - Sets the default value "" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the security group. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[str] status: The security group status. """ if created_at is not None: @@ -167,8 +172,8 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: """ - The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -215,8 +220,8 @@ def __init__(__self__, description: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[str]] = None, - rules: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecurityGroupRuleArgs']]]]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['SecurityGroupTimeoutsArgs']]] = None, + rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecurityGroupRuleArgs', 'SecurityGroupRuleArgsDict']]]]] = None, + timeouts: Optional[pulumi.Input[Union['SecurityGroupTimeoutsArgs', 'SecurityGroupTimeoutsArgsDict']]] = None, __props__=None): """ Security group resource @@ -224,15 +229,15 @@ def __init__(__self__, ## Import ```sh - $ pulumi import genesiscloud:index/securityGroup:SecurityGroup example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/securityGroup:SecurityGroup example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: The human-readable description for the security group. - Sets the default value "" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the security group. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ ... @overload @@ -246,7 +251,7 @@ def __init__(__self__, ## Import ```sh - $ pulumi import genesiscloud:index/securityGroup:SecurityGroup example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/securityGroup:SecurityGroup example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. @@ -267,8 +272,8 @@ def _internal_init(__self__, description: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[str]] = None, - rules: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecurityGroupRuleArgs']]]]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['SecurityGroupTimeoutsArgs']]] = None, + rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecurityGroupRuleArgs', 'SecurityGroupRuleArgsDict']]]]] = None, + timeouts: Optional[pulumi.Input[Union['SecurityGroupTimeoutsArgs', 'SecurityGroupTimeoutsArgsDict']]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -303,9 +308,9 @@ def get(resource_name: str, description: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, region: Optional[pulumi.Input[str]] = None, - rules: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SecurityGroupRuleArgs']]]]] = None, + rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecurityGroupRuleArgs', 'SecurityGroupRuleArgsDict']]]]] = None, status: Optional[pulumi.Input[str]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['SecurityGroupTimeoutsArgs']]] = None) -> 'SecurityGroup': + timeouts: Optional[pulumi.Input[Union['SecurityGroupTimeoutsArgs', 'SecurityGroupTimeoutsArgsDict']]] = None) -> 'SecurityGroup': """ Get an existing SecurityGroup resource's state with the given name, id, and optional extra properties used to qualify the lookup. @@ -316,8 +321,8 @@ def get(resource_name: str, :param pulumi.Input[str] created_at: The timestamp when this security group was created in RFC 3339. :param pulumi.Input[str] description: The human-readable description for the security group. - Sets the default value "" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the security group. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[str] status: The security group status. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -361,8 +366,8 @@ def name(self) -> pulumi.Output[str]: @pulumi.getter def region(self) -> pulumi.Output[str]: """ - The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") diff --git a/sdk/python/pulumi_genesiscloud/snapshot.py b/sdk/python/pulumi_genesiscloud/snapshot.py index d098ba4..a5d2a32 100644 --- a/sdk/python/pulumi_genesiscloud/snapshot.py +++ b/sdk/python/pulumi_genesiscloud/snapshot.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities from . import outputs from ._inputs import * @@ -22,8 +27,7 @@ def __init__(__self__, *, timeouts: Optional[pulumi.Input['SnapshotTimeoutsArgs']] = None): """ The set of arguments for constructing a Snapshot resource. - :param pulumi.Input[str] instance_id: The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + :param pulumi.Input[str] instance_id: The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. :param pulumi.Input[str] name: The human-readable name for the snapshot. :param pulumi.Input[bool] retain_on_delete: Flag to retain the snapshot when the resource is deleted. - Sets the default value "false" if the attribute is not set. """ @@ -39,8 +43,7 @@ def __init__(__self__, *, @pulumi.getter(name="instanceId") def instance_id(self) -> pulumi.Input[str]: """ - The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. """ return pulumi.get(self, "instance_id") @@ -96,12 +99,11 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering Snapshot resources. :param pulumi.Input[str] created_at: The timestamp when this snapshot was created in RFC 3339. - :param pulumi.Input[str] instance_id: The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + :param pulumi.Input[str] instance_id: The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. :param pulumi.Input[str] name: The human-readable name for the snapshot. :param pulumi.Input[str] region: The region identifier. :param pulumi.Input[bool] retain_on_delete: Flag to retain the snapshot when the resource is deleted. - Sets the default value "false" if the attribute is not set. - :param pulumi.Input[int] size: The storage size of this snapshot given in bytes. + :param pulumi.Input[int] size: The storage size of this snapshot given in GiB. :param pulumi.Input[str] status: The snapshot status. """ if created_at is not None: @@ -137,8 +139,7 @@ def created_at(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="instanceId") def instance_id(self) -> Optional[pulumi.Input[str]]: """ - The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. """ return pulumi.get(self, "instance_id") @@ -186,7 +187,7 @@ def retain_on_delete(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter def size(self) -> Optional[pulumi.Input[int]]: """ - The storage size of this snapshot given in bytes. + The storage size of this snapshot given in GiB. """ return pulumi.get(self, "size") @@ -224,7 +225,7 @@ def __init__(__self__, instance_id: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, retain_on_delete: Optional[pulumi.Input[bool]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['SnapshotTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['SnapshotTimeoutsArgs', 'SnapshotTimeoutsArgsDict']]] = None, __props__=None): """ Snapshot resource @@ -246,13 +247,12 @@ def __init__(__self__, ## Import ```sh - $ pulumi import genesiscloud:index/snapshot:Snapshot example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/snapshot:Snapshot example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] instance_id: The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + :param pulumi.Input[str] instance_id: The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. :param pulumi.Input[str] name: The human-readable name for the snapshot. :param pulumi.Input[bool] retain_on_delete: Flag to retain the snapshot when the resource is deleted. - Sets the default value "false" if the attribute is not set. """ @@ -282,7 +282,7 @@ def __init__(__self__, ## Import ```sh - $ pulumi import genesiscloud:index/snapshot:Snapshot example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/snapshot:Snapshot example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. @@ -303,7 +303,7 @@ def _internal_init(__self__, instance_id: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, retain_on_delete: Optional[pulumi.Input[bool]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['SnapshotTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['SnapshotTimeoutsArgs', 'SnapshotTimeoutsArgsDict']]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -340,7 +340,7 @@ def get(resource_name: str, retain_on_delete: Optional[pulumi.Input[bool]] = None, size: Optional[pulumi.Input[int]] = None, status: Optional[pulumi.Input[str]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['SnapshotTimeoutsArgs']]] = None) -> 'Snapshot': + timeouts: Optional[pulumi.Input[Union['SnapshotTimeoutsArgs', 'SnapshotTimeoutsArgsDict']]] = None) -> 'Snapshot': """ Get an existing Snapshot resource's state with the given name, id, and optional extra properties used to qualify the lookup. @@ -349,12 +349,11 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] created_at: The timestamp when this snapshot was created in RFC 3339. - :param pulumi.Input[str] instance_id: The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + :param pulumi.Input[str] instance_id: The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. :param pulumi.Input[str] name: The human-readable name for the snapshot. :param pulumi.Input[str] region: The region identifier. :param pulumi.Input[bool] retain_on_delete: Flag to retain the snapshot when the resource is deleted. - Sets the default value "false" if the attribute is not set. - :param pulumi.Input[int] size: The storage size of this snapshot given in bytes. + :param pulumi.Input[int] size: The storage size of this snapshot given in GiB. :param pulumi.Input[str] status: The snapshot status. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -383,8 +382,7 @@ def created_at(self) -> pulumi.Output[str]: @pulumi.getter(name="instanceId") def instance_id(self) -> pulumi.Output[str]: """ - The id of the instance to snapshot. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. + The id of the instance to snapshot. - If the value of this attribute changes, the resource will be replaced. """ return pulumi.get(self, "instance_id") @@ -416,7 +414,7 @@ def retain_on_delete(self) -> pulumi.Output[bool]: @pulumi.getter def size(self) -> pulumi.Output[int]: """ - The storage size of this snapshot given in bytes. + The storage size of this snapshot given in GiB. """ return pulumi.get(self, "size") diff --git a/sdk/python/pulumi_genesiscloud/ssh_key.py b/sdk/python/pulumi_genesiscloud/ssh_key.py index 3163096..8743638 100644 --- a/sdk/python/pulumi_genesiscloud/ssh_key.py +++ b/sdk/python/pulumi_genesiscloud/ssh_key.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities from . import outputs from ._inputs import * @@ -21,7 +26,7 @@ def __init__(__self__, *, timeouts: Optional[pulumi.Input['SSHKeyTimeoutsArgs']] = None): """ The set of arguments for constructing a SSHKey resource. - :param pulumi.Input[str] public_key: SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + :param pulumi.Input[str] public_key: SSH public key. - If the value of this attribute changes, the resource will be replaced. :param pulumi.Input[str] name: The human-readable name for the SSH key. """ pulumi.set(__self__, "public_key", public_key) @@ -34,7 +39,7 @@ def __init__(__self__, *, @pulumi.getter(name="publicKey") def public_key(self) -> pulumi.Input[str]: """ - SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + SSH public key. - If the value of this attribute changes, the resource will be replaced. """ return pulumi.get(self, "public_key") @@ -77,7 +82,7 @@ def __init__(__self__, *, :param pulumi.Input[str] created_at: The timestamp when this SSH key was created in RFC 3339. :param pulumi.Input[str] fingerprint: The fingerprint of the SSH key. :param pulumi.Input[str] name: The human-readable name for the SSH key. - :param pulumi.Input[str] public_key: SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + :param pulumi.Input[str] public_key: SSH public key. - If the value of this attribute changes, the resource will be replaced. """ if created_at is not None: pulumi.set(__self__, "created_at", created_at) @@ -130,7 +135,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="publicKey") def public_key(self) -> Optional[pulumi.Input[str]]: """ - SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + SSH public key. - If the value of this attribute changes, the resource will be replaced. """ return pulumi.get(self, "public_key") @@ -155,7 +160,7 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, name: Optional[pulumi.Input[str]] = None, public_key: Optional[pulumi.Input[str]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['SSHKeyTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['SSHKeyTimeoutsArgs', 'SSHKeyTimeoutsArgsDict']]] = None, __props__=None): """ SSH key resource @@ -172,13 +177,13 @@ def __init__(__self__, ## Import ```sh - $ pulumi import genesiscloud:index/sSHKey:SSHKey example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/sSHKey:SSHKey example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] name: The human-readable name for the SSH key. - :param pulumi.Input[str] public_key: SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + :param pulumi.Input[str] public_key: SSH public key. - If the value of this attribute changes, the resource will be replaced. """ ... @overload @@ -201,7 +206,7 @@ def __init__(__self__, ## Import ```sh - $ pulumi import genesiscloud:index/sSHKey:SSHKey example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/sSHKey:SSHKey example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. @@ -221,7 +226,7 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, name: Optional[pulumi.Input[str]] = None, public_key: Optional[pulumi.Input[str]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['SSHKeyTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['SSHKeyTimeoutsArgs', 'SSHKeyTimeoutsArgsDict']]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -252,7 +257,7 @@ def get(resource_name: str, fingerprint: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, public_key: Optional[pulumi.Input[str]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['SSHKeyTimeoutsArgs']]] = None) -> 'SSHKey': + timeouts: Optional[pulumi.Input[Union['SSHKeyTimeoutsArgs', 'SSHKeyTimeoutsArgsDict']]] = None) -> 'SSHKey': """ Get an existing SSHKey resource's state with the given name, id, and optional extra properties used to qualify the lookup. @@ -263,7 +268,7 @@ def get(resource_name: str, :param pulumi.Input[str] created_at: The timestamp when this SSH key was created in RFC 3339. :param pulumi.Input[str] fingerprint: The fingerprint of the SSH key. :param pulumi.Input[str] name: The human-readable name for the SSH key. - :param pulumi.Input[str] public_key: SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + :param pulumi.Input[str] public_key: SSH public key. - If the value of this attribute changes, the resource will be replaced. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -304,7 +309,7 @@ def name(self) -> pulumi.Output[str]: @pulumi.getter(name="publicKey") def public_key(self) -> pulumi.Output[str]: """ - SSH public key. - If the value of this attribute changes, Terraform will destroy and recreate the resource. + SSH public key. - If the value of this attribute changes, the resource will be replaced. """ return pulumi.get(self, "public_key") diff --git a/sdk/python/pulumi_genesiscloud/volume.py b/sdk/python/pulumi_genesiscloud/volume.py index f235197..5fa698b 100644 --- a/sdk/python/pulumi_genesiscloud/volume.py +++ b/sdk/python/pulumi_genesiscloud/volume.py @@ -4,9 +4,14 @@ import copy import warnings +import sys import pulumi import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias from . import _utilities from . import outputs from ._inputs import * @@ -25,12 +30,11 @@ def __init__(__self__, *, timeouts: Optional[pulumi.Input['VolumeTimeoutsArgs']] = None): """ The set of arguments for constructing a Volume resource. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. - :param pulumi.Input[int] size: The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - recreate the resource. - The value must be at least 1. - :param pulumi.Input[str] type: The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["hdd" "ssd"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[int] size: The storage size of this volume given in GiB. - The value must be at least 1. + :param pulumi.Input[str] type: The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["hdd" "ssd"]. :param pulumi.Input[str] description: The human-readable description for the volume. - Sets the default value "" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the volume. :param pulumi.Input[bool] retain_on_delete: Flag to retain the volume when the resource is deleted - Sets the default value "false" if the attribute is not set. @@ -51,8 +55,8 @@ def __init__(__self__, *, @pulumi.getter def region(self) -> pulumi.Input[str]: """ - The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -64,8 +68,7 @@ def region(self, value: pulumi.Input[str]): @pulumi.getter def size(self) -> pulumi.Input[int]: """ - The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - recreate the resource. - The value must be at least 1. + The storage size of this volume given in GiB. - The value must be at least 1. """ return pulumi.get(self, "size") @@ -77,8 +80,8 @@ def size(self, value: pulumi.Input[int]): @pulumi.getter def type(self) -> pulumi.Input[str]: """ - The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["hdd" "ssd"]. + The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["hdd" "ssd"]. """ return pulumi.get(self, "type") @@ -149,14 +152,13 @@ def __init__(__self__, *, :param pulumi.Input[str] created_at: The timestamp when this volume was created in RFC 3339. :param pulumi.Input[str] description: The human-readable description for the volume. - Sets the default value "" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the volume. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[bool] retain_on_delete: Flag to retain the volume when the resource is deleted - Sets the default value "false" if the attribute is not set. - :param pulumi.Input[int] size: The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - recreate the resource. - The value must be at least 1. + :param pulumi.Input[int] size: The storage size of this volume given in GiB. - The value must be at least 1. :param pulumi.Input[str] status: The volume status. - :param pulumi.Input[str] type: The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["hdd" "ssd"]. + :param pulumi.Input[str] type: The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["hdd" "ssd"]. """ if created_at is not None: pulumi.set(__self__, "created_at", created_at) @@ -217,8 +219,8 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def region(self) -> Optional[pulumi.Input[str]]: """ - The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -242,8 +244,7 @@ def retain_on_delete(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter def size(self) -> Optional[pulumi.Input[int]]: """ - The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - recreate the resource. - The value must be at least 1. + The storage size of this volume given in GiB. - The value must be at least 1. """ return pulumi.get(self, "size") @@ -276,8 +277,8 @@ def timeouts(self, value: Optional[pulumi.Input['VolumeTimeoutsArgs']]): @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: """ - The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["hdd" "ssd"]. + The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["hdd" "ssd"]. """ return pulumi.get(self, "type") @@ -296,7 +297,7 @@ def __init__(__self__, region: Optional[pulumi.Input[str]] = None, retain_on_delete: Optional[pulumi.Input[bool]] = None, size: Optional[pulumi.Input[int]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['VolumeTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['VolumeTimeoutsArgs', 'VolumeTimeoutsArgsDict']]] = None, type: Optional[pulumi.Input[str]] = None, __props__=None): """ @@ -309,7 +310,7 @@ def __init__(__self__, import pulumi_genesiscloud as genesiscloud example = genesiscloud.Volume("example", - region="ARC-IS-HAF-1", + region="NORD-NO-KRS-1", size=50, type="hdd") ``` @@ -317,20 +318,19 @@ def __init__(__self__, ## Import ```sh - $ pulumi import genesiscloud:index/volume:Volume example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/volume:Volume example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: The human-readable description for the volume. - Sets the default value "" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the volume. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[bool] retain_on_delete: Flag to retain the volume when the resource is deleted - Sets the default value "false" if the attribute is not set. - :param pulumi.Input[int] size: The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - recreate the resource. - The value must be at least 1. - :param pulumi.Input[str] type: The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["hdd" "ssd"]. + :param pulumi.Input[int] size: The storage size of this volume given in GiB. - The value must be at least 1. + :param pulumi.Input[str] type: The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["hdd" "ssd"]. """ ... @overload @@ -348,7 +348,7 @@ def __init__(__self__, import pulumi_genesiscloud as genesiscloud example = genesiscloud.Volume("example", - region="ARC-IS-HAF-1", + region="NORD-NO-KRS-1", size=50, type="hdd") ``` @@ -356,7 +356,7 @@ def __init__(__self__, ## Import ```sh - $ pulumi import genesiscloud:index/volume:Volume example 18efeec8-94f0-4776-8ff2-5e9b49c74608 + $ pulumi import genesiscloud:index/volume:Volume example 18efeec8-94f0-4776-8ff2-5e9b49c74608 ``` :param str resource_name: The name of the resource. @@ -379,7 +379,7 @@ def _internal_init(__self__, region: Optional[pulumi.Input[str]] = None, retain_on_delete: Optional[pulumi.Input[bool]] = None, size: Optional[pulumi.Input[int]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['VolumeTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['VolumeTimeoutsArgs', 'VolumeTimeoutsArgsDict']]] = None, type: Optional[pulumi.Input[str]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -422,7 +422,7 @@ def get(resource_name: str, retain_on_delete: Optional[pulumi.Input[bool]] = None, size: Optional[pulumi.Input[int]] = None, status: Optional[pulumi.Input[str]] = None, - timeouts: Optional[pulumi.Input[pulumi.InputType['VolumeTimeoutsArgs']]] = None, + timeouts: Optional[pulumi.Input[Union['VolumeTimeoutsArgs', 'VolumeTimeoutsArgsDict']]] = None, type: Optional[pulumi.Input[str]] = None) -> 'Volume': """ Get an existing Volume resource's state with the given name, id, and optional extra @@ -434,14 +434,13 @@ def get(resource_name: str, :param pulumi.Input[str] created_at: The timestamp when this volume was created in RFC 3339. :param pulumi.Input[str] description: The human-readable description for the volume. - Sets the default value "" if the attribute is not set. :param pulumi.Input[str] name: The human-readable name for the volume. - :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + :param pulumi.Input[str] region: The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. :param pulumi.Input[bool] retain_on_delete: Flag to retain the volume when the resource is deleted - Sets the default value "false" if the attribute is not set. - :param pulumi.Input[int] size: The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - recreate the resource. - The value must be at least 1. + :param pulumi.Input[int] size: The storage size of this volume given in GiB. - The value must be at least 1. :param pulumi.Input[str] status: The volume status. - :param pulumi.Input[str] type: The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["hdd" "ssd"]. + :param pulumi.Input[str] type: The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["hdd" "ssd"]. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -486,8 +485,8 @@ def name(self) -> pulumi.Output[str]: @pulumi.getter def region(self) -> pulumi.Output[str]: """ - The region identifier. - If the value of this attribute changes, Terraform will destroy and recreate the resource. - The - value must be one of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. + The region identifier. - If the value of this attribute changes, the resource will be replaced. - The value must be one + of: ["ARC-IS-HAF-1" "EUC-DE-MUC-1" "NORD-NO-KRS-1"]. """ return pulumi.get(self, "region") @@ -503,8 +502,7 @@ def retain_on_delete(self) -> pulumi.Output[bool]: @pulumi.getter def size(self) -> pulumi.Output[int]: """ - The storage size of this volume given in GiB. - If the value of this attribute changes, Terraform will destroy and - recreate the resource. - The value must be at least 1. + The storage size of this volume given in GiB. - The value must be at least 1. """ return pulumi.get(self, "size") @@ -525,8 +523,8 @@ def timeouts(self) -> pulumi.Output[Optional['outputs.VolumeTimeouts']]: @pulumi.getter def type(self) -> pulumi.Output[str]: """ - The storage type of the volume. - If the value of this attribute changes, Terraform will destroy and recreate the - resource. - The value must be one of: ["hdd" "ssd"]. + The storage type of the volume. - If the value of this attribute changes, the resource will be replaced. - The value + must be one of: ["hdd" "ssd"]. """ return pulumi.get(self, "type") diff --git a/sdk/python/setup.py b/sdk/python/setup.py index 3108ce6..b9a9d2f 100644 --- a/sdk/python/setup.py +++ b/sdk/python/setup.py @@ -3,13 +3,12 @@ # *** Do not edit by hand unless you're certain you know what you are doing! *** import errno -import os from setuptools import setup, find_packages from setuptools.command.install import install from subprocess import check_call -VERSION = os.getenv("PULUMI_PYTHON_VERSION", "0.0.0") +VERSION = "0.0.0" def readme(): try: with open('README.md', encoding='utf-8') as f: @@ -40,6 +39,7 @@ def readme(): install_requires=[ 'parver>=0.2.1', 'pulumi>=3.0.0,<4.0.0', - 'semver>=2.8.1' + 'semver>=2.8.1', + 'typing-extensions>=4.11,<5; python_version < "3.11"' ], zip_safe=False)