Terraform Provider Vcd Versions Save

Terraform VMware Cloud Director provider

v3.12.1

4 weeks ago

IMPROVEMENTS

  • Improve page links for authentication methods in main documentation page (#1241)
  • Rename VMware NSX Advanced Load Balancer (Avi) to VMware Avi Load Balancer (#1241)

BUG FIXES

  • Fix Issue #1242: panic when edge gateway IP count returns empty (#1244)
  • Fix Issue #1248 that prevents CSE Kubernetes clusters from being upgraded to an OVA with higher Kubernetes version but same TKG version, and to an OVA with a higher patch version of Kubernetes (#1247)
  • Fix Issue #1248 that prevents CSE Kubernetes clusters from being upgraded to TKG v2.5.0 with Kubernetes v1.26.11 as it performed an invalid upgrade of CoreDNS (#1247)
  • Fix Issue #1252 that prevents reading the SSH Public Key from provisioned CSE Kubernetes clusters (#1247)

NOTES

v3.12.0

1 month ago

FEATURES

  • New Resource: vcd_cse_kubernetes_cluster to create and manage Kubernetes clusters in a VCD with Container Service Extension 4.2.1, 4.2.0, 4.1.1 or 4.1.0 installed and running (#1195, #1218, #1222)
  • New Data Source: vcd_cse_kubernetes_cluster to read Kubernetes clusters from a VCD with Container Service Extension 4.2.1, 4.2.0, 4.1.1 or 4.1.0 installed and running (#1195, #1218, #1222)
  • New Data Source: vcd_version to get the VCD version and perform additional checks with version constraints (#1195, #1218)

IMPROVEMENTS

  • Resource vcd_provider_vdc adds ability of creating a provider VDC without network pool or NSX-T manager (issue #1186) (#1220)
  • Add route advertisement support to vcd_network_routed_v2 via field route_advertisement_enabled (#1203)
  • vcd_vapp_vm and vcd_vm add field consolidate_disks_on_create that helps to change template disk sizes using override_template_disk in fast provisioned VDCs (#1206)
  • vcd_vapp_vm and vcd_vm add support for VM Copy operation by using copy_from_vm_id field (#1210, #1218, #1219)
  • Resources and data sources vcd_vapp_vm/vcd_vm expose computed field vapp_id (#1215)
  • Resource vcd_catalog_vapp_template supports creating templates from existing vApps and standalone VMs using new capture_vapp configuration block (#1215)
  • Resource vcd_catalog_vapp_template exposes attribute catalog_item_id for related Catalog Item ID (#1215, #1219)

BUG FIXES

  • Fix Issue #1121 Portgroup backed network pool can't have a data source (#1220)

DEPRECATIONS

  • Resource vcd_cse_kubernetes_cluster deprecates the Container Service Extension cluster management guide, so users should not use vcd_rde resources to create a Kubernetes cluster anymore (#1195)

NOTES

  • Bump terraform-plugin-sdk to v2.31.0 (#1193)
  • Bump go-vcloud-director to v2.23.0 (SDK this provider uses for low level access to the VCD) (#1225)

v3.11.0

5 months ago

FEATURES

  • Add support for VMware Cloud Director 10.5.1
  • Add support for Container Service Extension 4.1 by updating both the installation and the cluster management guides (#1063, #1139)
  • New Resource: vcd_network_pool to create and manage network pools (#1115)
  • New Data Source: vcd_nsxt_segment_ip_discovery_profile to read NSX-T IP Discovery Segment Profiles (#1120)
  • New Data Source: vcd_nsxt_segment_mac_discovery_profile to read NSX-T MAC Discovery Segment Profiles (#1120)
  • New Data Source: vcd_nsxt_segment_spoof_guard_profile to read NSX-T Spoof Guard Profiles (#1120)
  • New Data Source: vcd_nsxt_segment_qos_profile to read NSX-T QoS Profiles (#1120)
  • New Data Source: vcd_nsxt_segment_security_profile to read NSX-T Segment Security Profiles (#1120)
  • New Resource: vcd_nsxt_segment_profile_template to manage NSX-T Segment Profile Templates (#1120)
  • New Data Source: vcd_nsxt_segment_profile_template to read NSX-T Segment Profile Templates (#1120)
  • New Resource: vcd_nsxt_global_default_segment_profile_template to manage NSX-T Global Default Segment Profile Templates (#1120)
  • New Data Source: vcd_nsxt_global_default_segment_profile_template to read NSX-T Global Default Segment Profile Templates (#1120)
  • New Resource: vcd_org_vdc_nsxt_network_profile to manage default Segment Profile Templates for NSX-T VDCs (#1120)
  • New Data Source: vcd_org_vdc_nsxt_network_profile to read default Segment Profile Templates for NSX-T VDCs (#1120)
  • New Resource: vcd_nsxt_network_segment_profile to manage individual Segment Profiles or Segment Profile Templates for NSX-T Org VDC Networks (#1120)
  • New Data Source: vcd_nsxt_network_segment_profile to read individual Segment Profiles or Segment Profile Templates for NSX-T Org VDC Networks (#1120)
  • New Resource: vcd_nsxt_edgegateway_l2_vpn_tunnel to manage Edge Gateway L2 VPN Tunnel sessions (#1061)
  • New Data Source: vcd_nsxt_edgegateway_l2_vpn_tunnel to read Edge Gateway L2 VPN Tunnel sessions (#1061)
  • New Resource: vcd_nsxt_edgegateway_dns to manage Edge Gateway DNS forwarder configuration (#1154)
  • New Data Source: vcd_nsxt_edgegateway_dns to read Edge Gateway DNS forwarder configuration (#1154)

EXPERIMENTAL FEATURES

  • New guide Importing resources on how to import resources with new experimental Terraform import blocks (#1104)
  • New example Importing catalog contents showing how to import shared catalogs (#1104)
  • New example Importing cloned vApps showing how to import vApps and VMs from cloned vApps (#1104)
  • New Data Source: vcd_rde_behavior_invocation to invoke a Behavior of a given RDE (#1117, #1136)
  • New Resource: vcd_vm_vgpu_policy to manage VM vGPU compute policy configuration (#1167)
  • New Data Source: vcd_vm_vgpu_policy to read VM vGPU compute policies (#1167)

IMPROVEMENTS

  • Add metadata_entry attribute to vcd_rde resource and data source to manage metadata entries of type String, Number and Bool in Runtime Defined Entities (#1018, #1164)
  • Resource vcd_catalog_access_control adds property read_only_shared_with_all_orgs to share the catalog as read-only with all organizations (#1020)
  • Resource and data source vcd_org add properties number_of_vdcs, number_of_catalogs, list_of_vdcs, list_of_catalogs (#1020)
  • Resources vcd_vapp_network and vcd_vapp_org_network will additionally check if vApp is in RESOLVED (in addition to already checked POWERED_OFF) state before attempting a reboot when reboot_vapp_on_removal flag is set to true (#1092)
  • Resource vcd_vdc_group supports force deletion using new parameter force_delete (#1071)
  • Add fields name_regex and import_file_name to vcd_resource_list to facilitate creation of import blocks (#1104)
  • Properties delete_force and delete_recursive in vcd_org, vcd_org_vdc, and vcd_catalog are now optional, to facilitate import operations (#1104)
  • Properties ova_path and ovf_url in vcd_catalog_item and vcd_vapp_template are now optional, to facilitate import operations (#1104)
  • Property ova_path in vcd_catalog_media is now optional, to facilitate import operations (#1104)
  • Add field ssl_enabled to resource and data source vcd_nsxt_alb_pool to set SSL support on demand (#1108)
  • Introduce new attributes firmware and boot_options to vcd_vm and vcd_vapp_vm, allowing to specify boot options of a VM (VCD 10.4.1+) (#1109)
  • Resource and data source vcd_nsxt_edgegateway support attachment of NSX-T Segment backed External Networks via external_network block (#1111, #1172)
  • Data source vcd_resource_list can now list network pools, vCenters, NSX-T transfer zones, distributed switches, and importable port groups (#1115)
  • Data source vcd_network_pool includes all properties of the corresponding resource (#1115)
  • Field rde_type_id from resource vcd_rde does not force a deletion when updated, to allow easier RDE Type version upgrades (#1117)
  • Resource vcd_rde_type supports Behavior hooks with the new hook blocks, that allow to automatically invoke Behaviors on certain RDE lifecycle events (#1122)
  • Data source vcd_rde_type supports reading Behavior hooks from VCD and store their information in the new hook blocks (#1122)
  • Add property upload_any_file to resource vcd_catalog_media to allow uploading any file as catalog media item (#1123)
  • Add property download_to_file to data source vcd_catalog_media to allow downloading a catalog media item into a file (#1124)
  • Resource vcd_provider_vdc supports metadata with metadata_entry blocks (#1126)
  • Resource and data source vcd_catalog_vapp_template add property lease with field storage_lease_in_sec to handle the VApp Template lease (#1130)
  • Add property custom_user_ou to vcd_org_ldap to specify custom attributes when ldap_mode = "SYSTEM" (#1142)
  • Add support to the metadata that gets automatically created on vcd_vapp_vm and vcd_vm when they are created by a VM from a vApp Template in VCD 10.5.1+, with the new inherited_metadata computed map. Example of metadata entries of this kind: vm.origin.id, vm.origin.name, vm.origin.type (#1146, #1173)
  • Add support to the metadata that gets automatically created on vcd_vapp when it is created by a vApp Template or another vApp in VCD 10.5.1+, with the new inherited_metadata computed map. Example of metadata entries of this kind: vapp.origin.id, vapp.origin.name, vapp.origin.type (#1146, #1173)
  • Add missing property value to vcd_ip_space_ip_allocation to specify IP or Prefix value on VCD 10.4.2+ (#1147)
  • Add vcd_independent_disk to the resources retrieved by vcd_resource_list (#1155)
  • Resource and data source vcd_ip_space support NAT and Firewall creation configuration using fields default_firewall_rule_creation_enabled, default_no_snat_rule_creation_enabled, default_snat_rule_creation_enabled (#1156)

BUG FIXES

  • Minimize risk of latency-induced test failures in TestAccVcdSubscribedCatalog (#1101)
  • Fix Issue #1112: Data source vcd_vcenter fails when name contains spaces (#1115)
  • Fix a bug that made impossible to delete vcd_rde_type_behavior_acl resources when the Access Level is the last one in the Behavior (#1117)
  • Fix the resource vcd_rde_type_behavior_acl to avoid race conditions when creating, updating or deleting more than one Access Level (#1117)
  • Fix media item detection in vcd_resource_list: it was incorrectly listing also vApp templates (#1119)
  • Fix Issue #1127 (Incorrect behavior of vcd_resource_list, which can retrieve Edge Gateways belonging to a VDC, but not belonging to a VDC Group) (#1129)
  • Fix test TestAccVcdRightsContainers and expand it to test most available items (#1135)
  • Fix a bug in vcd_rde that caused a RDE created in a certain Organization to be unreachable by a user belonging to a different Organization despite having the required rights (#1139, #1164)
  • Fix organization retrieval in vcd_resource_list when users fill the "parent" field instead of "org" (#1140)
  • Fix organization retrieval in vcd_resource_list when field "org" from the provider block was not used (#1140)
  • Fix Issue 1134 : Can't use SYSTEM ldap_mode (#1142)
  • Fix a bug in ignore_metadata_changes provider configuration block when conflict_action = warn, that caused an operation to fail immediately instead of continuing without an error when a conflict was found (#1164, #1173)
  • Fix usage example for datasource vcd_nsxt_edgegateway_bgp_ip_prefix_list in registry documentation (#1169)

DEPRECATIONS

  • Resource vcd_org_vdc deprecates edge_cluster_id in favor of new resource vcd_org_vdc_nsxt_network_profile that can configure NSX-T Edge Clusters and default Segment Profile Templates for NSX-T VDCs (#1120)

NOTES

  • Drop support for VCD 10.3.x (#1108)
  • Add ability to split the test suite across several VCDs (#1110)
  • Patch tests TestAccVcdVAppVmCustomizationSettings and TestAccVcdStandaloneVmCustomizationSettings to use valid guest customization settings (#1113)
  • Improve TestAccVcdIpv6Support to avoid subnet clashes (#1133)
  • Bump terraform-plugin-sdk to v2.29.0 (#1148)
  • Bump minimum Go requirement to 1.20 because such version is required by terraform-plugin-sdk v2.29.0 (#1148)
  • Improve documentation of the provider_scoped and tenant_scoped attributes from vcd_ui_plugin resource (#1180)
  • go-vcloud-director, the SDK this provider uses for low level access to the VCD, released with version v2.22.0

v3.10.0

9 months ago

FEATURES

  • Add a new guide to create and manage Kubernetes Clusters using Container Service Extension v4.0 (#1030)
  • New Resource: vcd_nsxt_edgegateway_dhcp_forwarding to manage NSX-T Edge Gateway DHCP Forwarding configuration (#1056)
  • New Data Source: vcd_nsxt_edgegateway_dhcp_forwarding to read NSX-T Edge Gateway DHCP Forwarding configuration (#1056)
  • New Resource: vcd_ui_plugin to programmatically install and manage UI Plugins (#1059)
  • New Data Source: vcd_ui_plugin to fetch existing UI Plugins (#1059)
  • New Resource: vcd_ip_space to manage IP Spaces in VCD 10.4.1+ (#1061)
  • New Data Source: vcd_ip_space to read IP Spaces in VCD 10.4.1+ (#1061)
  • New Resource: vcd_ip_space_uplink to manage IP Space Uplinks for External Networks (Provider gateways) in VCD 10.4.1+ (#1062)
  • New Data Source: vcd_ip_space_uplink to read IP Space Uplinks for External Networks (Provider gateways) in VCD 10.4.1+ (#1062)
  • New Resource: vcd_ip_space_ip_allocation to manage IP Space IP Allocations in VCD 10.4.1+ (#1062)
  • New Data Source: vcd_ip_space_ip_allocation to read IP Space IP Allocations in VCD 10.4.1+ (#1062)
  • New Resource: vcd_ip_space_custom_quota to manage Custom IP Space Quotas for individual Organizations in VCD 10.4.1+ (#1062)
  • New Data Source: vcd_ip_space_custom_quota to read Custom IP Space Quotas for individual Organizations in VCD 10.4.1+ (#1062)
  • New Resource: vcd_org_saml to manage an organization SAML configuration (#1064)
  • New Data Source: vcd_org_saml to read an organization SAML configuration (#1064)
  • New Data Source: vcd_org_saml_metadata to read an organization SAML service provider metadata (#1064)
  • New Resource: vcd_api_token to manage API tokens (#1070)
  • New Resource: vcd_service_account to manage Service Accounts (#1070)
  • New Data Source: vcd_service_account to read Service Accounts (#1070)
  • New Resource: vcd_nsxt_edgegateway_dhcpv6 to manage NSX-T Edge Gateway DHCPv6 configuration (#1071,#1083)
  • New Data Source: vcd_nsxt_edgegateway_dhcpv6 to read NSX-T Edge Gateway DHCPv6 configuration (#1071,#1083)
  • New Resource: vcd_provider_vdc to manage provider VDCs (#1073)
  • New Data Source: vcd_resource_pool to read vCenter Resource Pools (#1073)
  • New Data Source: vcd_network_pool to read Network Pools (#1073)
  • New Resource: vcd_rde_interface_behavior to manage RDE Interface Behaviors, which can be invoked by RDEs and overridden by RDE Types (#1074)
  • New Data Source: vcd_rde_interface_behavior to read RDE Interface Behaviors, so they can be used in RDE Type Behavior overrides (#1074)
  • New Resource: vcd_rde_type_behavior to manage Behaviors in RDE Types, which can override those defined in RDE Interfaces (#1074)
  • New Data Source: vcd_rde_type_behavior to read RDE Type Behaviors (#1074)
  • New Resource: vcd_rde_type_behavior_acl to manage the access to Behaviors in RDE Types and RDE Interfaces (#1074)
  • New Data Source: vcd_rde_type_behavior_acl to read Access Levels from Behaviors of RDE Types and RDE Interfaces (#1074)
  • New Resource: vcd_nsxt_edgegateway_static_route to manage NSX-T Edge Gateway Static Routes on VCD 10.4.0+ (#1075)
  • New Data Source: vcd_nsxt_edgegateway_static_route to read NSX-T Edge Gateway Static Routes on VCD 10.4.0+ (#1075)
  • New Resource: vcd_nsxt_distributed_firewall_rule to manage NSX-T Distributed Firewall one by one. Rules will not be created in parallel because the API provides no direct endpoint to create a single rule and this functionality uses a custom-made function that abstracts the "update all" endpoint (#1076)
  • New Data Source: vcd_nsxt_distributed_firewall_rule to read NSX-T Distributed Firewall one by one (#1076)
  • New Resource: vcd_cloned_vapp to create a vApp from either a vApp template or another vApp (#1081)

EXPERIMENTAL

(Experimental features and improvements may change in future releases, until declared stable.)

  • Add ignore_metadata_changes argument to the Provider configuration to be able to specify metadata entries that should not be managed by Terraform when using metadata_entry configuration blocks (#1057, #1089)

IMPROVEMENTS

  • The guide to install the Container Service Extension v4.0 now additionally explains how to install the Kubernetes Container Clusters UI Plugin (#1059)
  • vcd_external_network_v2 resource and data source support IP Spaces on VCD 10.4.1+ by adding use_ip_spaces and dedicated_org_id fields (#1062)
  • vcd_nsxt_edgegateway resource supports IP Spaces by not requiring subnet specification (#1062)
  • Resource and data source vcd_nsxt_alb_virtual_service support IPv6 on VCD 10.4.0+ via new field ipv6_virtual_ip_address (#1071)
  • Resource and data source vcd_network_routed_v2 support Dual-Stack mode using dual_stack_enabled and secondary_gateway, secondary_prefix_length, secondary_static_ip_pool fields (#1071)
  • Resource and data source vcd_network_isolated_v2 support Dual-Stack mode using dual_stack_enabled and secondary_gateway, secondary_prefix_length, secondary_static_ip_pool fields (#1071)
  • Resource and data source vcd_nsxt_network_imported support Dual-Stack mode using dual_stack_enabled and secondary_gateway, secondary_prefix_length, secondary_static_ip_pool fields (#1071)
  • Resource and data source vcd_nsxt_network_dhcp_binding support dhcp_v6_config config (#1071)
  • Validate possibility to perform end to end IPv6 configuration via additional tests (#1071)
  • Resource vcd_vdc_group adds new field remove_default_firewall_rule to remove default Distributed Firewall Rule after creation (#1076)
  • The attribute description of vcd_vm_placement_policy is now Computed, as latest VCD versions set a default description automatically if it is not set (#1082)

BUG FIXES

  • Fix Issue #1058 - Multiple SYSTEM scope data source vcd_nsxt_app_port_profile when multiple NSX-T managers are configured (#1065)
  • Fix Issue #1069 - Inconsistent security_profile_customization field during vcd_nsxt_ipsec_vpn_tunnel update (#1072)
  • Fix Issue #1066 - Not possible to handle more than 128 storage profiles (#1073)
  • Fix a bug that caused vcd_catalog creation to fail if it is created with deprecated metadata argument in VCD 10.5 (#1085)

NOTES

  • Internal - replaces takeBoolPointer, takeIntPointer, takeInt64Pointer with generic addrOf (#1055)
  • Bump terraform-plugin-sdk to v2.27.0 (#1079)
  • Resource vcd_nsxt_edgegateway_bgp_configuration will send existing GracefulRestart to avoid API validation errors in VCD 10.5.0+ (#1083)
  • go-vcloud-director, the SDK this provider uses for low level access to the VCD, released with version v2.21.0

v3.9.0

1 year ago

FEATURES

  • New guide to install Container Service Extension (CSE) v4.0 in VCD 10.4+ (#1003, #1053)
  • New Resource: vcd_rde_interface to manage Runtime Defined Entity Interfaces which are required for using Runtime Defined Entity (RDE) types (#965)
  • New Data Source: vcd_rde_interface to fetch existing Runtime Defined Entity Interfaces (#965)
  • New Resource: vcd_rde_type to manage Runtime Defined Entity Types which are required for using Runtime Defined Entities (RDEs) (#973)
  • New Data Source: vcd_rde_type to fetch existing Runtime Defined Entity Types (#973)
  • New Resource: vcd_rde to manage Runtime Defined Entities (#977)
  • New Data Source: vcd_rde to fetch existing Runtime Defined Entities (#977)
  • New Resource: vcd_nsxv_distributed_firewall to create and manage NSX-V distributed firewall (#988)
  • New Data Source: vcd_nsxv_distributed_firewall to fetch existing NSX-V distributed firewall (#988)
  • New Data Source: vcd_nsxv_application_finder to search applications and application groups to use with a NSX-V distributed firewall (#988)
  • New Data Source: vcd_nsxv_application to fetch existing application to use with a NSX-V distributed firewall (#988)
  • New Data Source: vcd_nsxv_application_group to fetch existing application_group to use with a NSX-V distributed firewall (#988)
  • New Resource: vcd_nsxt_network_dhcp_binding to manage NSX-T DHCP Bindings (#1039)
  • New Data Source: vcd_nsxt_network_dhcp_binding to read NSX-T DHCP Bindings (#1039)
  • New Resource: vcd_nsxt_edgegateway_rate_limiting to manage NSX-T Edge Gateway Rate Limiting (#1042)
  • New Data Source: vcd_nsxt_edgegateway_rate_limiting to read NSX-T Edge Gateway Rate Limiting (#1042)
  • New Data Source: vcd_nsxt_edgegateway_qos_profile to read QoS profiles available for vcd_nsxt_edgegateway_rate_limiting resource (#1042)

IMPROVEMENTS

  • vcd_external_network_v2 allows setting DNS fields dns1, dns2 and dns_suffix for NSX-T backed entities so that it can be inherited by direct Org VDC networks (#984)
  • vcd_org_vdc includes a property enable_nsxv_distributed_firewall to enable or disable a NSX-V distributed firewall (#988)
  • vcd_nsxt_edgegateway resource and data source got automatic IP allocation support using new configuration fields subnet_with_total_ip_count, subnet_with_ip_count and total_allocated_ip_count fields (#991)
  • vcd_nsxt_edgegateway resource and data source expose used_ip_count and unused_ip_count attributes (#991, #1047)
  • vcd_nsxt_alb_settings resource and data source adds two new fields is_transparent_mode_enabled and ipv6_service_network_specification (#996)
  • Resources vcd_vapp_network and vcd_vapp_org_network add convenience flag reboot_vapp_on_removal. When enabled, it will power off parent vApp (and power back on after if it was before) during vApp network removal. This improves workflows with VCD 10.4.1+ which returns an error when removing vApp networks from powered on vApps (#1004)
  • vcd_vapp_vm and vcd_vm resources support security tag management via new field security_tags (#1006, #1046)
  • Resource vcd_nsxt_ipsec_vpn_tunnel adds support for custom remote_id field and certificate based auth via fields authentication_mode, certificate_id, ca_certificate_id (#1010)
  • vcd_org_group adds OAUTH as an option to argument provider_type (#1013)
  • Resource and data source vcd_nsxt_alb_virtual_service add support for Transparent mode in VCD 10.4.1+ via field is_transparent_mode_enabled (#1024)
  • Resource and data source vcd_nsxt_alb_pool add support for Pool Group Membership via field member_group_id (#1024)
  • Resource and data source vcd_nsxt_network_imported support Distributed Virtual Port Group (DVPG) backed Org VDC network (#1043)
  • Support provider authentication using Active Service Accounts (#1040)

BUG FIXES

  • Fix a bug that prevented returning a specific error while authenticating provider with invalid password (#962)
  • Add prefix_length field to vcd_vapp_network as creating IPv6 vApp networks was not supported due to the lack of a suitable subnet representation (Issue #999) (#1007, #1031)
  • Remove incorrect default value from vcd_vapp_network netmask field, as it prevents using IPv6 networks. Users of already defined resources need to add a netmask = "255.255.255.0" when using IPv4 (#1007)

DEPRECATIONS

  • Deprecate netmask in favor of prefix_length for vcd_vapp_network (#1007)

NOTES

  • Add missing test name fields for TestAccVcdNsxtEdgeBgpConfigIntegrationVdc and TestAccVcdNsxtEdgeBgpConfigIntegrationVdcGroup (#958)
  • Create TestAccVcdCatalogRename, which checks that renaming a catalog works correctly (#992)
  • Removed disk update steps from TestAccVcdIndependentDiskBasic, as it was sometimes failing due to a bug in VCD. Created a new one TestAccVcdIndependentDiskBasicWithUpdates which will be run only on new releases of VCD (>=v10.4.1) (#1014)
  • Increased sleep in between testing steps in TestAccVcdNsxtDynamicSecurityGroupVdcGroupCriteriaWithVms from 15s to 25s to let VMs get created (#1014)
  • Added skipping of TestAccVcdVsphereSubscriber and TestAccVcdSubscribedCatalog if VCD version is older than v10.4.0 as there was a bug with catalog sharing rights that caused the tests to fail (#1014)
  • Update CODING_GUIDELINES.md with documentation notes (#1015)
  • Bump terraform-plugin-sdk to v2.26.1 (#1002, #1023)
  • Bump golang.org/x/net to v0.7.0 to address vulnerability reports (#1002)
  • Add support for Go 1.20 in testing workflows (#1034)
  • Bump staticcheck to 2023.1.3 (#1034)

v3.9.0-beta.2

1 year ago

DOCUMENTATION IMPROVEMENTS

  • v3.9.0-beta.2 has only Terraform registry documentation improvements over v3.9.0-beta.1

FEATURES

  • New Resource: vcd_rde_interface to manage Runtime Defined Entity Interfaces which are required for using Runtime Defined Entity (RDE) Types (#965)
  • New Data Source: vcd_rde_interface to fetch existing Runtime Defined Entity Interfaces (#965)
  • New Resource: vcd_rde_type to manage Runtime Defined Entity Types which are required for using Runtime Defined Entities (RDEs) (#973)
  • New Data Source: vcd_rde_type to fetch existing Runtime Defined Entity Types (#973)
  • New Resource: vcd_rde to manage Runtime Defined Entities (#977)
  • New Data Source: vcd_rde to fetch existing Runtime Defined Entities (#977)
  • New Resource: vcd_nsxv_distributed_firewall to create and manage NSX-V distributed firewall (#988)
  • New Data Source: vcd_nsxv_distributed_firewall to fetch existing NSX-V distributed firewall (#988)
  • New Data Source: vcd_nsxv_application_finder to search applications and application groups to use with a NSX-V distributed firewall (#988)
  • New Data Source: vcd_nsxv_application to fetch existing application to use with a NSX-V distributed firewall (#988)
  • New Data Source: vcd_nsxv_application_group to fetch existing application_group to use with a NSX-V distributed firewall (#988)

IMPROVEMENTS

  • vcd_external_network_v2 allows setting DNS fields dns1, dns2 and dns_suffix for NSX-T backed entities so that it can be inherited by direct Org VDC networks (#984]
  • vcd_org_vdc includes a property enable_nsxv_distributed_firewall to enable or disable a NSX-V distributed firewall [#988)
  • vcd_nsxt_edgegateway resource and data source got automatic IP allocation support using new configuration fields subnet_with_total_ip_count, subnet_with_ip_count and total_allocated_ip_count fields (#991)
  • vcd_nsxt_edgegateway resource and data source expose used_ip_count and unused_ip_count attributes (#991)
  • vcd_nsxt_alb_settings resource and data source adds two new fields is_transparent_mode_enabled and ipv6_service_network_specification (#996)
  • Resources vcd_vapp_network and vcd_vapp_org_network add convenience flag reboot_vapp_on_removal. When enabled, it will power off parent vApp (and power back on after if it was before) during vApp network removal. This improves workflows with VCD 10.4.1+ which returns an error when removing vApp networks from powered on vApps (#1004)
  • vcd_org_group adds OAUTH as an option to argument provider_type (#1013)

BUG FIXES

  • Fix a bug that prevented returning a specific error while authenticating provider with invalid password (#962)
  • Add prefix_length field to vcd_vapp_network as creating IPv6 vApp networks was not supported due to the lack of a suitable subnet representation (Issue #999) (#1007)
  • Remove incorrect default value from vcd_vapp_network netmask field, as it prevents using IPV6 networks. Users of already defined resources need to add a netmask = "255.255.255.0" when using Ipv4 (#1007)

DEPRECATIONS

  • Deprecate netmask in vcd_vapp_network (#1007)

NOTES

  • Add missing test name fields for TestAccVcdNsxtEdgeBgpConfigIntegrationVdc and TestAccVcdNsxtEdgeBgpConfigIntegrationVdcGroup (#958)
  • Create TestAccVcdCatalogRename, which checks that renaming a catalog works correctly (#992)
  • Bump terraform-plugin-sdk to v2.25.0 (#1002)
  • Bump golang.org/x/net to v0.7.0 to address vulnerability reports (#1002)
  • Removed disk update steps from TestAccVcdIndependentDiskBasic, as it was sometimes failing due to a bug in VCD. Created a new one TestAccVcdIndependentDiskBasicWithUpdates which will be run only on new releases of VCD (>=v10.4.1) (#1014)
  • Increased sleep in between testing steps in TestAccVcdNsxtDynamicSecurityGroupVdcGroupCriteriaWithVms from 15s to 25s to let VMs get created (#1014)
  • Added skipping of TestAccVcdVsphereSubscriber and TestAccVcdSubscribedCatalog if VCD version is older than v10.4.0 as there was a bug with catalog sharing rights that caused the tests to fail (#1014]
  • Update CODING_GUIDELINES.md with documentation notes [#1015)

v3.8.2

1 year ago

IMPROVEMENTS

  • Add catalog_id to resource and data source vcd_catalog_media to allow handling similarly to vcd_catalog_vapp_template (#972)

BUG FIXES

  • Change vcd_catalog, vcd_catalog_media, vcd_catalog_vapp_template, and vcd_catalog_item to access their entities without the need to use a full Org object, thus allowing the access to shared catalogs from other organizations (Issue #960) (#972)
  • Fix a bug that caused inconsistent plan when using group_id in vcd_catalog_access_control, vcd_org_vdc_access_control and vcd_vapp_access_control resources (#963)
  • Remove unnecessary URL checks from vcd_subscribed_catalog creation, to allow subscribing to non-VCD entities, such as vSphere shared library (#972)
  • Remove unnecessary validation that prevents attaching NSX-T Org network to vApp using org_network_name field in vcd_vapp_network resource (#975)

DEPRECATIONS

  • Deprecate usage of catalog in favor of catalog_id in vcd_catalog_media (#972)

NOTES

  • Add mini-framework for running tests with several Organizations (#972)
  • Try to amend quirky test TestAccVcdNsxtDynamicSecurityGroupVdcGroupCriteriaWithVm that sometimes fails due to a bad filter. It now uses a shorter name for the Dynamic Security Groups to try to not break the resulting filter chain (#980)

v3.8.1

1 year ago

IMPROVEMENTS

  • Add vdc_id to data source vcd_vm_placement_policy to allow tenant users to fetch VM Placement Policies from the ones assigned to VDCs (#948)
  • Resource and data source vcd_catalog and vcd_subscribed_catalog introduce new computed field is_local to specify whether the catalog originated from the current org (#949)
  • Improve usage of org field in vcd_catalog to accept sharing Org name for shared catalogs and improve error messages (#949)

BUG FIXES

  • Fix a bug that caused vcd_vm_group data source to fail when the backing Provider VDC had multiple resource pools (#948)
  • Fix issue #944 - shared catalog datasource not accessible to Org users (#949)
  • Fix issue #672 - update Org with invalid or extended LDAP settings (#952, #955)

v3.8.0

1 year ago

FEATURES

  • New Resource: vcd_catalog_vapp_template to manage the upload and usage of vApp Templates (#899)
  • New Data Source: vcd_catalog_vapp_template to fetch existing vApp Templates (#899)
  • New Resource: vcd_vm_placement_policy that allows creating VM Placement Policies (#904, #911)
  • New Data Source: vcd_vm_placement_policy that allows fetching existing VM Placement Policies (#904, #911)
  • New Data Source: vcd_provider_vdc that allows fetching existing Provider VDCs (#904)
  • New Data Source: vcd_vm_group that allows fetching existing VM Groups, to be able to create VM Placement Policies (#904)
  • New Resource: vcd_org_ldap that allows configuring LDAP settings for an organization (#909)
  • New Data Source: vcd_org_ldap that allows exploring LDAP settings for an organization (#909)
  • New Resource: vcd_catalog_access_control that allows sharing a catalog with users, groups, or Orgs (#915)
  • New Resource: vcd_subscribed_catalog that allows subscribing to a published catalog (#916)
  • New Data Source: vcd_subscribed_catalog that allows reading a subscribed catalog (#916)
  • New Data Source: vcd_task that allows reading a VCD task (#916)

IMPROVEMENTS

  • Add attribute metadata_entry to the following data sources: vcd_catalog, vcd_catalog_media, vcd_independent_disk, vcd_network_direct, vcd_network_isolated, vcd_network_isolated_v2, vcd_network_routed, vcd_network_routed_v2, vcd_org, vcd_org_vdc, vcd_provider_vdc, vcd_storage_profile, vcd_vapp, vcd_vapp_vm. This new attribute replaces metadata to add support of metadata visibility (user access levels), all the available types and domains for every metadata entry (#917)
  • Add attribute metadata_entry to the following resources: vcd_catalog, vcd_catalog_media, vcd_independent_disk, vcd_network_direct, vcd_network_isolated, vcd_network_isolated_v2, vcd_network_routed, vcd_network_routed_v2, vcd_org, vcd_org_vdc, vcd_vapp, vcd_vapp_vm. This new attribute replaces metadata to add support of metadata visibility (user access levels), all the available types and domains for every metadata entry (#917)
  • Add placement_policy_id attribute to vcd_vapp_vm and vcd_vm resource and data source, to support the usage of VM Placement Policies in VMs (#922)
  • Resources and data sources vcd_vapp_vm and vcd_vm have new computed fields status and status_text (#901)
  • Add vm_placement_policy_ids attribute to vcd_org_vdc resource and data source to assign existing VM Placement Policies to VDCs (#904, #911)
  • Add default_compute_policy_id attribute to vcd_org_vdc resource and data source to specify a default VM Sizing Policy, VM Placement Policy or vGPU Policy for the VDC (#904, #911)
  • Add attributes href, vapp_template_list, media_item_list, and publishing_url to vcd_catalog resource and data source to show published items (#916)
  • Add subscribed_catalog to examples (#916)
  • Upgrade Terraform SDK dependency to v2.24.1 (#920, #930)
  • Resource and data source vcd_org_vdc introduce new field edge_cluster_id to specify NSX-T Edge Cluster for VDC (#921)
  • Resources, that are removed outside of Terraform control are removed from state and recreated instead of returning error (#925)
    • vcd_edgegateway_settings
    • vcd_vapp_network
    • vcd_vm_internal_disk
    • vcd_nsxv_dhcp_relay
    • vcd_vapp_static_routing
    • vcd_vapp_nat_rules
    • vcd_vapp_firewall_rules
    • vcd_vapp_access_control
    • vcd_nsxt_alb_edgegateway_service_engine_group
    • vcd_org_vdc
    • vcd_org_user
    • vcd_external_network
  • Resource and data source vcd_nsxt_network_dhcp support Isolated networks, different DHCP modes ('EDGE', 'NETWORK', 'RELAY') and lease time (#929)
  • Add the new attributes vapp_template_id, boot_image_id to the resources vcd_vapp_vm and vcd_vm to be able to use unique URNs to reference vApp Templates and Media items through data sources, to build strong dependencies in Terraform configuration (#931)
  • Data source vcd_nsxt_edge_cluster supports NSX-T Edge Cluster filtering by vdc_id, vdc_group_id, and provider_vdc_id (#921)

BUG FIXES

  • Fix bug where VM was power cycled multiple times during creation (#901)
  • Fix bug where storage_profile is ignored for empty (non template) VM (#901)
  • resource/vcd_nsxt_alb_edgegateway_service_engine_group field reserved_virtual_services accepts "0" as value (#923)
  • Fix a bug in resource/vcd_vapp that would prevent to Power off vApp when previous state was power_on=true (#932)

DEPRECATIONS

  • Deprecate vcd_external_network in favor of vcd_external_network_v2 (#903)
  • Deprecate default_vm_sizing_policy_id field in vcd_org_vdc resource and data source. This field is misleading as it can contain not only VM Sizing Policies but also VM Placement Policies or vGPU Policies. Its replacement is the default_compute_policy_id attribute (#904)
  • Deprecate attribute metadata in favor of metadata_entry in the following data sources: vcd_catalog, vcd_catalog_media, vcd_catalog_vapp_template, vcd_independent_disk, vcd_network_direct, vcd_network_isolated, vcd_network_isolated_v2, vcd_network_routed, vcd_network_routed_v2, vcd_org, vcd_org_vdc, vcd_provider_vdc, vcd_storage_profile, vcd_vapp, vcd_vapp_vm (#917)
  • Deprecate attribute metadata in favor of metadata_entry in the following resources: vcd_catalog, vcd_catalog_media, vcd_catalog_vapp_template, vcd_independent_disk, vcd_network_direct, vcd_network_isolated, vcd_network_isolated_v2, vcd_network_routed, vcd_network_routed_v2, vcd_org, vcd_org_vdc, vcd_vapp, vcd_vapp_vm (#917)
  • Deprecate attribute catalog_item_metadata in favor of metadata_entry in the vcd_catalog_item resource and data source. (#917)
  • Deprecate template_name in favor of vapp_template_id in vcd_vapp_vm and vcd_vm to be able to use unique URNs instead of catalog dependent names (#931)
  • Deprecate boot_image in favor of boot_image_id in vcd_vapp_vm and vcd_vm to be able to use URNs instead of catalog dependent names (#931)
  • Deprecate catalog_name in favor of vapp_template_id or boot_image_id, which don't require a catalog name anymore (#931)
  • Data source vcd_nsxt_edge_cluster deprecates vdc field in favor of three new fields to define NSX-T Edge Cluster lookup scope - vdc_id, vdc_group_id, and provider_vdc_id (#921)

NOTES

  • Drop support for EOL VCD 10.2.x (#903)
  • Add a guide and examples on Catalog subscribing and sharing to the documentation (#916)
  • All non-NSX-V resources and data sources use the new SDK signatures with Context and Diagnostics (#895)
  • Refactor VM Creation code, which should result in identifiable parts creation for all types of VMs. Behind the scenes, there are 4 different types of VMs with respective different API calls as listed below (#901)
    • vcd_vapp_vm built from vApp template
    • vcd_vm built from vApp template
    • vcd_vapp_vm built without vApp template (empty VM)
    • vcd_vm built without vApp template (empty VM)
  • Bump Go to 1.19 in go.mod as the minimum required version. (#902, #916)
  • Code documentation formatting is adjusted using Go 1.19 (make fmt) (#902)
  • Adjust GitHub actions in pipeline to use the latest code (#902)
  • staticcheck switched version naming from 2021.1.2 to v0.3.3 in downloads section. This PR also updates the code to fetch correct staticcheck (#902)
  • package io/ioutil is deprecated as of Go 1.16. staticcheck started complaining about usage of deprecated packages. As a result this PR switches packages to either io or os (still the same functions are used) (#902)
  • Add a new GitHub Action to run gosec on every push and pull request (#928)

v3.7.0

1 year ago

FEATURES

  • Add a guide and examples to configure and install Container Service Extension (CSE) 3.1.x using Terraform (#856, #882, #876)
  • New Resource: vcd_security_tag that allows creating security tags (#845)
  • New Resource: vcd_org_vdc_access_control to manage VDC access control (#850)
  • New Resource: vcd_nsxt_route_advertisement that allows NSX-T Edge Gateway to advertise subnets to Tier-0 Gateway (#858, #888)
  • New Data Source: vcd_nsxt_route_advertisement that reads the NSX-T Edge Gateway routes that are being advertised (#858, #888)
  • New Resource: vcd_nsxt_edgegateway_bgp_configuration for NSX-T Edge Gateway BGP Configuration (#798, #887)
  • New Data Source: vcd_nsxt_edgegateway_bgp_configuration for reading NSX-T Edge Gateway BGP Configuration (#798, #887)
  • New Resource: vcd_nsxt_dynamic_security_group to manage dynamic security groups (#877)
  • New Data Source: vcd_nsxt_dynamic_security_group to lookup existing dynamic security groups (#877)
  • New Resource: vcd_nsxt_edgegateway_bgp_ip_prefix_list allows users to configure NSX-T Edge Gateway BGP IP Prefix Lists (#879, #887, #888)
  • New Data Source: vcd_nsxt_edgegateway_bgp_ip_prefix_list allows users to read NSX-T Edge Gateway BGP IP Prefix Lists (#879, #887, #888)
  • New Resource: vcd_nsxt_edgegateway_bgp_neighbor allows users to configure NSX-T Edge Gateway BGP Neighbors (#879, #887, #888)
  • New Data Source: vcd_nsxt_edgegateway_bgp_neighbor allows users to read NSX-T Edge Gateway BGP Neighbors (#879, #887, #888)

IMPROVEMENTS

  • resource/vcd_nsxt_network_dhcp and datasource/vcd_nsxt_firewall now support dns_servers (#830)
  • Add VDC Group compatibility for resource/vcd_nsxt_firewall and datasource/vcd_nsxt_firewall (#841, #888)
  • Add VDC Group compatibility for resource/vcd_nsxt_nat_rule and datasource/vcd_nsxt_nat_rule (#841, #888)
  • Add VDC Group compatibility for resource/vcd_nsxt_ipsec_vpn_tunnel and datasource/vcd_nsxt_ipsec_vpn_tunnel (#841, #888)
  • Add VDC Group compatibility for resource/vcd_nsxt_alb_settings and datasource/vcd_nsxt_alb_settings (#841)
  • Add VDC Group compatibility for resource/vcd_nsxt_alb_edgegateway_service_engine_group and datasource/vcd_nsxt_alb_edgegateway_service_engine_group (#841, #854)
  • Add VDC Group compatibility for resource/vcd_nsxt_alb_virtual_service and datasource/vcd_nsxt_alb_virtual_service (#841)
  • Add VDC Group compatibility for resource/vcd_nsxt_alb_pool and datasource/vcd_nsxt_alb_pool (#841)
  • resource/vcd_vm_sizing_policy: remove (deprecate) unneeded org property (#843)
  • datasource/vcd_vm_sizing_policy: remove (deprecate) unneeded org property (#843)
  • Upgrade Terraform SDK dependency to v2.17.0 [#844, #853]
  • Add changes to allow running tests on CDS and make NSX-V configuration optional (#848)
  • resource/vcd_catalog_item and datasource/vcd_catalog_item now support metadata for the CatalogItem entity with catalog_item_metadata attribute (#851)
  • metadata attribute on every compatible resource and data source is now more performant when adding and updating metadata (#853)
  • Make license_type attribute on vcd_nsxt_alb_controller optional as it is not used from VCD v10.4 onwards (#878)
  • Add supported_feature_set to vcd_nsxt_alb_service_engine_group resource and data source to be compatible with VCD v10.4, which replaces the vcd_nsxt_alb_controller license_type (#878)
  • Add supported_feature_set to vcd_nsxt_alb_settings resource and data source to be compatible with VCD v10.4, which replaces the vcd_nsxt_alb_controller license_type (#878)

BUG FIXES

  • Fix typo in documentation for resource/vcd_vapp_vm to fix broken attribute rendering (#828)
  • Skip binary and upgrade tests for NVMe in VCD < 10.2.2 (#838)
  • Network lookup could return incorrect ID for vcd_vapp_network and vcd_vapp_org_network (#838)
  • Set missing org and vdc fields during import of vcd_independent_disk (#838)
  • Add missing None mode in independent disk sharing_type (#849)
  • vcd_vm_internal_disk now uses default IOPS value from storage profile when custom IOPS value isn't provided (#863)
  • Fix vcd_inserted_media locking mechanism to avoid race condition with vcd_vm_internal_disk (#870, #888)
  • Fix a bug that causes vcd_vapp_vm to fail on creation if attribute sizing_policy_id is set and corresponds to a Sizing Policy with CPU or memory defined, template_name is used and power_on is true (#883)

DEPRECATIONS

  • Deprecate vdc field in NSX-T Edge Gateway child entities. This field is no longer precise as with introduction of VDC Group support an Edge Gateway can be bound either to a VDC, either to a VDC Group. Parent VDC or VDC Group is now inherited from edge_gateway_id field. Impacted resources and data sources are: vcd_nsxt_firewall, vcd_nsxt_nat_rule, vcd_nsxt_ipsec_vpn_tunnel, ,vcd_nsxt_alb_settings, vcd_nsxt_alb_edgegateway_service_engine_group, vcd_nsxt_alb_virtual_service, vcd_nsxt_alb_pool (#841)
  • resource/vcd_nsxt_network_dhcp and datasource/vcd_nsxt_network_dhcp deprecate vdc field to make consumption more friendly with VDC Groups (#846)

NOTES

  • Apply gofmt -s -w . to cleanup code (#833)
  • Adjust role data source and resource documentation for rights attribute to reflect its Set nature (#834)
  • Adjust rights_bundle data source and resource documentation for rights and tenants attribute to reflect its Set nature (#834)
  • Add an example about using CloudInit to Guest Customization guides page (#852)
  • Testing infrastructure: make NSX-T VDC primary for tests instead of NSX-V one (required for CDS certification) (#886)
  • Add Cloud Director Service (CDS) as supported (#890)