diff --git a/fwprovider/acme/datasource_acme_account.go b/fwprovider/cluster/acme/datasource_acme_account.go similarity index 100% rename from fwprovider/acme/datasource_acme_account.go rename to fwprovider/cluster/acme/datasource_acme_account.go diff --git a/fwprovider/acme/datasource_acme_accounts.go b/fwprovider/cluster/acme/datasource_acme_accounts.go similarity index 100% rename from fwprovider/acme/datasource_acme_accounts.go rename to fwprovider/cluster/acme/datasource_acme_accounts.go diff --git a/fwprovider/acme/datasource_acme_plugin.go b/fwprovider/cluster/acme/datasource_acme_plugin.go similarity index 100% rename from fwprovider/acme/datasource_acme_plugin.go rename to fwprovider/cluster/acme/datasource_acme_plugin.go diff --git a/fwprovider/acme/datasource_acme_plugins.go b/fwprovider/cluster/acme/datasource_acme_plugins.go similarity index 100% rename from fwprovider/acme/datasource_acme_plugins.go rename to fwprovider/cluster/acme/datasource_acme_plugins.go diff --git a/fwprovider/acme/plugin_model.go b/fwprovider/cluster/acme/plugin_model.go similarity index 100% rename from fwprovider/acme/plugin_model.go rename to fwprovider/cluster/acme/plugin_model.go diff --git a/fwprovider/acme/resource_acme_account.go b/fwprovider/cluster/acme/resource_acme_account.go similarity index 100% rename from fwprovider/acme/resource_acme_account.go rename to fwprovider/cluster/acme/resource_acme_account.go diff --git a/fwprovider/acme/resource_acme_dns_plugin.go b/fwprovider/cluster/acme/resource_acme_dns_plugin.go similarity index 100% rename from fwprovider/acme/resource_acme_dns_plugin.go rename to fwprovider/cluster/acme/resource_acme_dns_plugin.go diff --git a/fwprovider/ha/datasource_hagroup.go b/fwprovider/cluster/ha/datasource_hagroup.go similarity index 100% rename from fwprovider/ha/datasource_hagroup.go rename to fwprovider/cluster/ha/datasource_hagroup.go diff --git a/fwprovider/ha/datasource_hagroups.go b/fwprovider/cluster/ha/datasource_hagroups.go similarity index 100% rename from fwprovider/ha/datasource_hagroups.go rename to fwprovider/cluster/ha/datasource_hagroups.go diff --git a/fwprovider/ha/datasource_haresource.go b/fwprovider/cluster/ha/datasource_haresource.go similarity index 100% rename from fwprovider/ha/datasource_haresource.go rename to fwprovider/cluster/ha/datasource_haresource.go diff --git a/fwprovider/ha/datasource_haresources.go b/fwprovider/cluster/ha/datasource_haresources.go similarity index 100% rename from fwprovider/ha/datasource_haresources.go rename to fwprovider/cluster/ha/datasource_haresources.go diff --git a/fwprovider/ha/hagroup_model.go b/fwprovider/cluster/ha/hagroup_model.go similarity index 100% rename from fwprovider/ha/hagroup_model.go rename to fwprovider/cluster/ha/hagroup_model.go diff --git a/fwprovider/ha/haresource_model.go b/fwprovider/cluster/ha/haresource_model.go similarity index 100% rename from fwprovider/ha/haresource_model.go rename to fwprovider/cluster/ha/haresource_model.go diff --git a/fwprovider/ha/resource_hagroup.go b/fwprovider/cluster/ha/resource_hagroup.go similarity index 100% rename from fwprovider/ha/resource_hagroup.go rename to fwprovider/cluster/ha/resource_hagroup.go diff --git a/fwprovider/ha/resource_haresource.go b/fwprovider/cluster/ha/resource_haresource.go similarity index 100% rename from fwprovider/ha/resource_haresource.go rename to fwprovider/cluster/ha/resource_haresource.go diff --git a/fwprovider/ha/validators.go b/fwprovider/cluster/ha/validators.go similarity index 100% rename from fwprovider/ha/validators.go rename to fwprovider/cluster/ha/validators.go diff --git a/fwprovider/resource_options.go b/fwprovider/cluster/options/resource_options.go similarity index 99% rename from fwprovider/resource_options.go rename to fwprovider/cluster/options/resource_options.go index 8ec546fd..b67803fc 100644 --- a/fwprovider/resource_options.go +++ b/fwprovider/cluster/options/resource_options.go @@ -4,7 +4,7 @@ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -package fwprovider +package options import ( "context" diff --git a/fwprovider/resource_options_test.go b/fwprovider/cluster/options/resource_options_test.go similarity index 99% rename from fwprovider/resource_options_test.go rename to fwprovider/cluster/options/resource_options_test.go index dcccd741..625c75e1 100644 --- a/fwprovider/resource_options_test.go +++ b/fwprovider/cluster/options/resource_options_test.go @@ -6,7 +6,7 @@ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -package fwprovider_test +package options_test import ( "fmt" diff --git a/fwprovider/hardwaremapping/datasource.go b/fwprovider/nodes/hardwaremapping/datasource.go similarity index 100% rename from fwprovider/hardwaremapping/datasource.go rename to fwprovider/nodes/hardwaremapping/datasource.go diff --git a/fwprovider/hardwaremapping/datasource_pci.go b/fwprovider/nodes/hardwaremapping/datasource_pci.go similarity index 100% rename from fwprovider/hardwaremapping/datasource_pci.go rename to fwprovider/nodes/hardwaremapping/datasource_pci.go diff --git a/fwprovider/hardwaremapping/datasource_usb.go b/fwprovider/nodes/hardwaremapping/datasource_usb.go similarity index 100% rename from fwprovider/hardwaremapping/datasource_usb.go rename to fwprovider/nodes/hardwaremapping/datasource_usb.go diff --git a/fwprovider/hardwaremapping/errors.go b/fwprovider/nodes/hardwaremapping/errors.go similarity index 100% rename from fwprovider/hardwaremapping/errors.go rename to fwprovider/nodes/hardwaremapping/errors.go diff --git a/fwprovider/hardwaremapping/models.go b/fwprovider/nodes/hardwaremapping/models.go similarity index 100% rename from fwprovider/hardwaremapping/models.go rename to fwprovider/nodes/hardwaremapping/models.go diff --git a/fwprovider/hardwaremapping/resource_hardware_mapping_test.go b/fwprovider/nodes/hardwaremapping/resource_hardware_mapping_test.go similarity index 100% rename from fwprovider/hardwaremapping/resource_hardware_mapping_test.go rename to fwprovider/nodes/hardwaremapping/resource_hardware_mapping_test.go diff --git a/fwprovider/hardwaremapping/resource_pci.go b/fwprovider/nodes/hardwaremapping/resource_pci.go similarity index 100% rename from fwprovider/hardwaremapping/resource_pci.go rename to fwprovider/nodes/hardwaremapping/resource_pci.go diff --git a/fwprovider/hardwaremapping/resource_usb.go b/fwprovider/nodes/hardwaremapping/resource_usb.go similarity index 100% rename from fwprovider/hardwaremapping/resource_usb.go rename to fwprovider/nodes/hardwaremapping/resource_usb.go diff --git a/fwprovider/hardwaremapping/shared.go b/fwprovider/nodes/hardwaremapping/shared.go similarity index 100% rename from fwprovider/hardwaremapping/shared.go rename to fwprovider/nodes/hardwaremapping/shared.go diff --git a/fwprovider/network/resource_linux_bridge.go b/fwprovider/nodes/network/resource_linux_bridge.go similarity index 100% rename from fwprovider/network/resource_linux_bridge.go rename to fwprovider/nodes/network/resource_linux_bridge.go diff --git a/fwprovider/network/resource_linux_bridge_test.go b/fwprovider/nodes/network/resource_linux_bridge_test.go similarity index 100% rename from fwprovider/network/resource_linux_bridge_test.go rename to fwprovider/nodes/network/resource_linux_bridge_test.go diff --git a/fwprovider/network/resource_linux_vlan.go b/fwprovider/nodes/network/resource_linux_vlan.go similarity index 100% rename from fwprovider/network/resource_linux_vlan.go rename to fwprovider/nodes/network/resource_linux_vlan.go diff --git a/fwprovider/network/resource_linux_vlan_test.go b/fwprovider/nodes/network/resource_linux_vlan_test.go similarity index 100% rename from fwprovider/network/resource_linux_vlan_test.go rename to fwprovider/nodes/network/resource_linux_vlan_test.go diff --git a/fwprovider/resource_download_file.go b/fwprovider/nodes/resource_download_file.go similarity index 99% rename from fwprovider/resource_download_file.go rename to fwprovider/nodes/resource_download_file.go index f08fb3c2..477e4a16 100644 --- a/fwprovider/resource_download_file.go +++ b/fwprovider/nodes/resource_download_file.go @@ -4,7 +4,7 @@ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -package fwprovider +package nodes import ( "context" diff --git a/fwprovider/resource_download_file_test.go b/fwprovider/nodes/resource_download_file_test.go similarity index 99% rename from fwprovider/resource_download_file_test.go rename to fwprovider/nodes/resource_download_file_test.go index b451a2ef..15c28f07 100644 --- a/fwprovider/resource_download_file_test.go +++ b/fwprovider/nodes/resource_download_file_test.go @@ -6,7 +6,7 @@ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -package fwprovider_test +package nodes_test import ( "context" diff --git a/fwprovider/vm/cdrom/model.go b/fwprovider/nodes/vm/cdrom/model.go similarity index 100% rename from fwprovider/vm/cdrom/model.go rename to fwprovider/nodes/vm/cdrom/model.go diff --git a/fwprovider/vm/cdrom/resource.go b/fwprovider/nodes/vm/cdrom/resource.go similarity index 100% rename from fwprovider/vm/cdrom/resource.go rename to fwprovider/nodes/vm/cdrom/resource.go diff --git a/fwprovider/vm/cdrom/resource_schema.go b/fwprovider/nodes/vm/cdrom/resource_schema.go similarity index 100% rename from fwprovider/vm/cdrom/resource_schema.go rename to fwprovider/nodes/vm/cdrom/resource_schema.go diff --git a/fwprovider/vm/cdrom/resource_test.go b/fwprovider/nodes/vm/cdrom/resource_test.go similarity index 100% rename from fwprovider/vm/cdrom/resource_test.go rename to fwprovider/nodes/vm/cdrom/resource_test.go diff --git a/fwprovider/vm/concurrency_test.go b/fwprovider/nodes/vm/concurrency_test.go similarity index 100% rename from fwprovider/vm/concurrency_test.go rename to fwprovider/nodes/vm/concurrency_test.go diff --git a/fwprovider/vm/cpu/datasource_schema.go b/fwprovider/nodes/vm/cpu/datasource_schema.go similarity index 100% rename from fwprovider/vm/cpu/datasource_schema.go rename to fwprovider/nodes/vm/cpu/datasource_schema.go diff --git a/fwprovider/vm/cpu/model.go b/fwprovider/nodes/vm/cpu/model.go similarity index 100% rename from fwprovider/vm/cpu/model.go rename to fwprovider/nodes/vm/cpu/model.go diff --git a/fwprovider/vm/cpu/resource.go b/fwprovider/nodes/vm/cpu/resource.go similarity index 100% rename from fwprovider/vm/cpu/resource.go rename to fwprovider/nodes/vm/cpu/resource.go diff --git a/fwprovider/vm/cpu/resource_schema.go b/fwprovider/nodes/vm/cpu/resource_schema.go similarity index 100% rename from fwprovider/vm/cpu/resource_schema.go rename to fwprovider/nodes/vm/cpu/resource_schema.go diff --git a/fwprovider/vm/cpu/resource_test.go b/fwprovider/nodes/vm/cpu/resource_test.go similarity index 100% rename from fwprovider/vm/cpu/resource_test.go rename to fwprovider/nodes/vm/cpu/resource_test.go diff --git a/fwprovider/vm/datasource.go b/fwprovider/nodes/vm/datasource.go similarity index 100% rename from fwprovider/vm/datasource.go rename to fwprovider/nodes/vm/datasource.go diff --git a/fwprovider/vm/datasource_schema.go b/fwprovider/nodes/vm/datasource_schema.go similarity index 91% rename from fwprovider/vm/datasource_schema.go rename to fwprovider/nodes/vm/datasource_schema.go index a44661da..4b784fba 100644 --- a/fwprovider/vm/datasource_schema.go +++ b/fwprovider/nodes/vm/datasource_schema.go @@ -13,10 +13,10 @@ import ( "github.com/hashicorp/terraform-plugin-framework/datasource" "github.com/hashicorp/terraform-plugin-framework/datasource/schema" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/cpu" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/rng" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/vga" "github.com/bpg/terraform-provider-proxmox/fwprovider/types/stringset" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/cpu" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/rng" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/vga" ) // Schema defines the schema for the resource. diff --git a/fwprovider/vm/model.go b/fwprovider/nodes/vm/model.go similarity index 91% rename from fwprovider/vm/model.go rename to fwprovider/nodes/vm/model.go index 1ac09bda..81de3626 100644 --- a/fwprovider/vm/model.go +++ b/fwprovider/nodes/vm/model.go @@ -15,11 +15,11 @@ import ( "github.com/hashicorp/terraform-plugin-framework/types" "github.com/hashicorp/terraform-plugin-log/tflog" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/cdrom" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/cpu" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/rng" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/vga" "github.com/bpg/terraform-provider-proxmox/fwprovider/types/stringset" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/cdrom" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/cpu" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/rng" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/vga" "github.com/bpg/terraform-provider-proxmox/proxmox" "github.com/bpg/terraform-provider-proxmox/proxmox/api" ) diff --git a/fwprovider/vm/resource.go b/fwprovider/nodes/vm/resource.go similarity index 98% rename from fwprovider/vm/resource.go rename to fwprovider/nodes/vm/resource.go index b51305b5..35956881 100644 --- a/fwprovider/vm/resource.go +++ b/fwprovider/nodes/vm/resource.go @@ -22,10 +22,10 @@ import ( "github.com/hashicorp/terraform-plugin-log/tflog" "github.com/bpg/terraform-provider-proxmox/fwprovider/config" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/cdrom" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/cpu" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/rng" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/vga" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/cdrom" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/cpu" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/rng" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/vga" "github.com/bpg/terraform-provider-proxmox/proxmox" "github.com/bpg/terraform-provider-proxmox/proxmox/api" "github.com/bpg/terraform-provider-proxmox/proxmox/cluster" diff --git a/fwprovider/vm/resource_schema.go b/fwprovider/nodes/vm/resource_schema.go similarity index 93% rename from fwprovider/vm/resource_schema.go rename to fwprovider/nodes/vm/resource_schema.go index 5e3ebeb6..a895b40e 100644 --- a/fwprovider/vm/resource_schema.go +++ b/fwprovider/nodes/vm/resource_schema.go @@ -22,11 +22,11 @@ import ( "github.com/hashicorp/terraform-plugin-framework/resource/schema/planmodifier" "github.com/hashicorp/terraform-plugin-framework/schema/validator" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/cdrom" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/cpu" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/rng" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm/vga" "github.com/bpg/terraform-provider-proxmox/fwprovider/types/stringset" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/cdrom" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/cpu" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/rng" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm/vga" ) // Schema defines the schema for the resource. diff --git a/fwprovider/vm/resource_test.go b/fwprovider/nodes/vm/resource_test.go similarity index 100% rename from fwprovider/vm/resource_test.go rename to fwprovider/nodes/vm/resource_test.go diff --git a/fwprovider/vm/rng/datasource_schema.go b/fwprovider/nodes/vm/rng/datasource_schema.go similarity index 100% rename from fwprovider/vm/rng/datasource_schema.go rename to fwprovider/nodes/vm/rng/datasource_schema.go diff --git a/fwprovider/vm/rng/model.go b/fwprovider/nodes/vm/rng/model.go similarity index 100% rename from fwprovider/vm/rng/model.go rename to fwprovider/nodes/vm/rng/model.go diff --git a/fwprovider/vm/rng/resource.go b/fwprovider/nodes/vm/rng/resource.go similarity index 100% rename from fwprovider/vm/rng/resource.go rename to fwprovider/nodes/vm/rng/resource.go diff --git a/fwprovider/vm/rng/resource_schema.go b/fwprovider/nodes/vm/rng/resource_schema.go similarity index 100% rename from fwprovider/vm/rng/resource_schema.go rename to fwprovider/nodes/vm/rng/resource_schema.go diff --git a/fwprovider/vm/rng/resource_test.go b/fwprovider/nodes/vm/rng/resource_test.go similarity index 100% rename from fwprovider/vm/rng/resource_test.go rename to fwprovider/nodes/vm/rng/resource_test.go diff --git a/fwprovider/vm/vga/datasource_schema.go b/fwprovider/nodes/vm/vga/datasource_schema.go similarity index 100% rename from fwprovider/vm/vga/datasource_schema.go rename to fwprovider/nodes/vm/vga/datasource_schema.go diff --git a/fwprovider/vm/vga/model.go b/fwprovider/nodes/vm/vga/model.go similarity index 100% rename from fwprovider/vm/vga/model.go rename to fwprovider/nodes/vm/vga/model.go diff --git a/fwprovider/vm/vga/resource.go b/fwprovider/nodes/vm/vga/resource.go similarity index 100% rename from fwprovider/vm/vga/resource.go rename to fwprovider/nodes/vm/vga/resource.go diff --git a/fwprovider/vm/vga/resource_schema.go b/fwprovider/nodes/vm/vga/resource_schema.go similarity index 100% rename from fwprovider/vm/vga/resource_schema.go rename to fwprovider/nodes/vm/vga/resource_schema.go diff --git a/fwprovider/vm/vga/resource_test.go b/fwprovider/nodes/vm/vga/resource_test.go similarity index 100% rename from fwprovider/vm/vga/resource_test.go rename to fwprovider/nodes/vm/vga/resource_test.go diff --git a/fwprovider/provider.go b/fwprovider/provider.go index 492d8d4c..ecaae3bc 100644 --- a/fwprovider/provider.go +++ b/fwprovider/provider.go @@ -25,18 +25,20 @@ import ( "github.com/hashicorp/terraform-plugin-log/tflog" "github.com/bpg/terraform-provider-proxmox/fwprovider/access" - "github.com/bpg/terraform-provider-proxmox/fwprovider/acme" + "github.com/bpg/terraform-provider-proxmox/fwprovider/cluster/acme" + "github.com/bpg/terraform-provider-proxmox/fwprovider/cluster/ha" "github.com/bpg/terraform-provider-proxmox/fwprovider/cluster/metrics" + "github.com/bpg/terraform-provider-proxmox/fwprovider/cluster/options" "github.com/bpg/terraform-provider-proxmox/fwprovider/config" - "github.com/bpg/terraform-provider-proxmox/fwprovider/ha" - "github.com/bpg/terraform-provider-proxmox/fwprovider/hardwaremapping" - "github.com/bpg/terraform-provider-proxmox/fwprovider/network" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes" "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/apt" - "github.com/bpg/terraform-provider-proxmox/fwprovider/vm" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/hardwaremapping" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/network" + "github.com/bpg/terraform-provider-proxmox/fwprovider/nodes/vm" "github.com/bpg/terraform-provider-proxmox/proxmox" "github.com/bpg/terraform-provider-proxmox/proxmox/api" "github.com/bpg/terraform-provider-proxmox/proxmox/cluster" - "github.com/bpg/terraform-provider-proxmox/proxmox/nodes" + proxmoxnodes "github.com/bpg/terraform-provider-proxmox/proxmox/nodes" "github.com/bpg/terraform-provider-proxmox/proxmox/ssh" "github.com/bpg/terraform-provider-proxmox/utils" ) @@ -495,32 +497,32 @@ func (p *proxmoxProvider) Configure( func (p *proxmoxProvider) Resources(_ context.Context) []func() resource.Resource { return []func() resource.Resource{ - NewClusterOptionsResource, - NewDownloadFileResource, + access.NewACLResource, + access.NewUserTokenResource, acme.NewACMEAccountResource, acme.NewACMEPluginResource, apt.NewRepositoryResource, apt.NewStandardRepositoryResource, - access.NewACLResource, - access.NewUserTokenResource, ha.NewHAGroupResource, ha.NewHAResourceResource, hardwaremapping.NewPCIResource, hardwaremapping.NewUSBResource, + metrics.NewMetricsServerResource, network.NewLinuxBridgeResource, network.NewLinuxVLANResource, + nodes.NewDownloadFileResource, + options.NewClusterOptionsResource, vm.NewResource, - metrics.NewMetricsServerResource, } } func (p *proxmoxProvider) DataSources(_ context.Context) []func() datasource.DataSource { return []func() datasource.DataSource{ NewVersionDataSource, - acme.NewACMEAccountsDataSource, acme.NewACMEAccountDataSource, - acme.NewACMEPluginsDataSource, + acme.NewACMEAccountsDataSource, acme.NewACMEPluginDataSource, + acme.NewACMEPluginsDataSource, apt.NewRepositoryDataSource, apt.NewStandardRepositoryDataSource, ha.NewHAGroupDataSource, @@ -530,8 +532,8 @@ func (p *proxmoxProvider) DataSources(_ context.Context) []func() datasource.Dat hardwaremapping.NewDataSource, hardwaremapping.NewPCIDataSource, hardwaremapping.NewUSBDataSource, - vm.NewDataSource, metrics.NewMetricsServerDatasource, + vm.NewDataSource, } } @@ -540,7 +542,7 @@ type apiResolver struct { } func (r *apiResolver) Resolve(ctx context.Context, nodeName string) (ssh.ProxmoxNode, error) { - nc := &nodes.Client{Client: r.c, NodeName: nodeName} + nc := &proxmoxnodes.Client{Client: r.c, NodeName: nodeName} networkDevices, err := nc.ListNetworkInterfaces(ctx) if err != nil {