Complete rewrite of the VirtFusion Terraform provider with full API coverage: - 20 managed resources (server, build, SSH key, user, firewall, IP blocks, etc.) - 30 data sources (hypervisors, packages, servers, IP blocks, self-service, etc.) - New HTTP client with proper error handling, query parameter support, and automatic multipage pagination via GetAllPages (fetches all pages from Laravel-style paginated endpoints and merges into a single response) - Fixed type mismatches against live API: ServerData.Suspended (int→bool), IPBlockData.Type (string→int), PackageData json tags (primaryStorage, etc.), ServerData nested CPU/Settings/Resources structure, HypervisorGroupResources array response - Configurable results-per-page (default 300) on all list data sources - Migrated CI from GitHub Actions to Gitea Actions - Updated goreleaser config, go.mod dependencies, and examples Verified against live VirtFusion instance at cp.vps.ezscale.tech: all data sources return correct data with full pagination support. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
72 lines
3.2 KiB
Modula-2
72 lines
3.2 KiB
Modula-2
module terraform-provider-virtfusion
|
|
|
|
go 1.23
|
|
|
|
require (
|
|
github.com/hashicorp/terraform-plugin-docs v0.19.4
|
|
github.com/hashicorp/terraform-plugin-framework v1.13.0
|
|
)
|
|
|
|
require (
|
|
github.com/BurntSushi/toml v1.2.1 // indirect
|
|
github.com/Kunde21/markdownfmt/v3 v3.1.0 // indirect
|
|
github.com/Masterminds/goutils v1.1.1 // indirect
|
|
github.com/Masterminds/semver/v3 v3.2.0 // indirect
|
|
github.com/Masterminds/sprig/v3 v3.2.3 // indirect
|
|
github.com/ProtonMail/go-crypto v1.1.0-alpha.2 // indirect
|
|
github.com/apparentlymart/go-textseg/v15 v15.0.0 // indirect
|
|
github.com/armon/go-radix v1.0.0 // indirect
|
|
github.com/bgentry/speakeasy v0.1.0 // indirect
|
|
github.com/bmatcuk/doublestar/v4 v4.6.1 // indirect
|
|
github.com/cloudflare/circl v1.3.7 // indirect
|
|
github.com/fatih/color v1.16.0 // indirect
|
|
github.com/golang/protobuf v1.5.4 // indirect
|
|
github.com/google/uuid v1.6.0 // indirect
|
|
github.com/hashicorp/cli v1.1.6 // indirect
|
|
github.com/hashicorp/errwrap v1.1.0 // indirect
|
|
github.com/hashicorp/go-checkpoint v0.5.0 // indirect
|
|
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
|
|
github.com/hashicorp/go-hclog v1.5.0 // indirect
|
|
github.com/hashicorp/go-multierror v1.1.1 // indirect
|
|
github.com/hashicorp/go-plugin v1.6.2 // indirect
|
|
github.com/hashicorp/go-uuid v1.0.3 // indirect
|
|
github.com/hashicorp/go-version v1.7.0 // indirect
|
|
github.com/hashicorp/hc-install v0.7.0 // indirect
|
|
github.com/hashicorp/terraform-exec v0.21.0 // indirect
|
|
github.com/hashicorp/terraform-json v0.22.1 // indirect
|
|
github.com/hashicorp/terraform-plugin-go v0.25.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/yamux v0.1.1 // indirect
|
|
github.com/huandu/xstrings v1.3.3 // indirect
|
|
github.com/imdario/mergo v0.3.15 // indirect
|
|
github.com/mattn/go-colorable v0.1.13 // indirect
|
|
github.com/mattn/go-isatty v0.0.20 // indirect
|
|
github.com/mattn/go-runewidth v0.0.9 // indirect
|
|
github.com/mitchellh/copystructure v1.2.0 // indirect
|
|
github.com/mitchellh/go-testing-interface v1.14.1 // indirect
|
|
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
|
github.com/oklog/run v1.0.0 // indirect
|
|
github.com/posener/complete v1.2.3 // indirect
|
|
github.com/shopspring/decimal v1.3.1 // indirect
|
|
github.com/spf13/cast v1.5.0 // indirect
|
|
github.com/vmihailenco/msgpack/v5 v5.4.1 // indirect
|
|
github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect
|
|
github.com/yuin/goldmark v1.7.1 // indirect
|
|
github.com/yuin/goldmark-meta v1.1.0 // indirect
|
|
github.com/zclconf/go-cty v1.14.4 // indirect
|
|
go.abhg.dev/goldmark/frontmatter v0.2.0 // indirect
|
|
golang.org/x/crypto v0.26.0 // indirect
|
|
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df // indirect
|
|
golang.org/x/mod v0.17.0 // indirect
|
|
golang.org/x/net v0.28.0 // indirect
|
|
golang.org/x/sys v0.24.0 // indirect
|
|
golang.org/x/text v0.17.0 // indirect
|
|
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 // indirect
|
|
google.golang.org/grpc v1.67.1 // indirect
|
|
google.golang.org/protobuf v1.35.1 // indirect
|
|
gopkg.in/yaml.v2 v2.3.0 // indirect
|
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
|
)
|