Skip to content

Latest commit

 

History

History
804 lines (641 loc) · 74 KB

CHANGELOG.md

File metadata and controls

804 lines (641 loc) · 74 KB

3.7.0 (TBC)

Changes in progress for v3.7.0 are available at .changes/v3.7.0 until the release.

3.6.0 (April 14, 2022)

FEATURES

  • New Data Source: vcd_org_group allows to fetch an Organization Group to use it with other resources (#798)
  • Add catalog_version, number_of_vapp_templates, number_of_media, is_shared, is_published, publish_subscription_type computed fields to catalog resource and datasource (#800)
  • Update vcd_catalog datasource so now it can take org from provider level or datasource level like modern resources/datasources (#800)
  • New Resource: vcd_nsxt_distributed_firewall manages Distributed Firewall Rules in VDC Groups (#810)
  • New Data Source: vcd_nsxt_distributed_firewall provides lookup functionality for Distributed Firewall rules in VDC Groups (#810)
  • New Data Source: vcd_nsxt_network_context_profile allows user to lookup Network Context Profile ID for usage in vcd_nsxt_distributed_firewall (#810)

IMPROVEMENTS

  • resource/vcd_catalog add support for metadata so this field can be set when creating/updating catalogs. (#780)
  • datasource/vcd_catalog add support for metadata so this field can be retrieved when reading from catalogs. (#780)
  • data/vcd_storage_profile add IOPS settings properties iops_limiting_enabled, maximum_disk_iops, default_disk_iops, disk_iops_per_gb_max, iops_limit and other data attributes limit, units, used_storage, default, enabled, iops_allocated to the state (#782)
  • resource/vcd_nsxt_edgegateway and datasource/vcd_nsxt_edgegateway support VDC Groups via new field owner_id replacing vdc (#793)
  • Update codebase to be compatible with changes in go-vcloud-director due to bump to VCD API V35.0 (#795)
  • vcd_org resource adds support for metadata so this field can be set when creating/updating organizations. (#797)
  • vcd_org data source adds support for metadata so this field can be retrieved when reading from organizations. (#797)
  • vcd_independent_disk resource adds support for metadata so this field can be set when creating/updating independent disks. (#797)
  • vcd_independent_disk data source adds support for metadata so this field can be retrieved when reading from independent disks. (#797)
  • vcd_org_user resource and data source have now is_external attribute to support the importing of LDAP users into the Organization (#798)
  • vcd_org_user resource does not have a default value for deployed_vm_quota and stored_vm_quota. Local users will have unlimited quota by default, imported from LDAP will have no quota (#798)
  • vcd_org_user resource and data source have now group_names attribute to list group names if the user comes from an LDAP group (#798)
  • vcd_org_group resource and data source have now user_names attribute to list user names if the user was imported from LDAP (#798)
  • resource/vcd_network_routed_v2 and datasource/vcd_network_routed_v2 support VDC Groups by inheriting parent VDC or VDC Group from Edge Gateway (#801)
  • resource/vcd_network_isolated_v2 and datasource/vcd_network_isolated_v2 support VDC Groups via new field owner_id replacing vdc (#801)
  • resource/vcd_nsxt_network_imported and datasource/vcd_nsxt_network_imported support VDC Groups via new field owner_id replacing vdc (#801)
  • Add support for can_publish_external_catalogs and can_subscribe_external_catalogs in datasource_vcd_org and resource_vcd_org (#803)
  • resource/vcd_network_direct add support for metadata so this field can be set when creating/updating direct networks. (#804)
  • datasource/vcd_network_direct add support for metadata so this field can be retrieved when reading from direct networks. (#804)
  • resource/vcd_network_isolated add support for metadata so this field can be set when creating/updating isolated networks. (#804)
  • datasource/vcd_network_isolated add support for metadata so this field can be retrieved when reading from isolated networks. (#804)
  • resource/vcd_network_routed add support for metadata so this field can be set when creating/updating routed networks. (#804)
  • datasource/vcd_network_routed add support for metadata so this field can be retrieved when reading from routed networks. (#804)
  • resource/vcd_nsxt_ip_set and datasource/vcd_nsxt_ip_set support VDC Groups by inheriting parent VDC or VDC Group from Edge Gateway (#809)
  • Data source vcd_storage_profile supports metadata so this field can be populated when reading VDC storage profiles. (#811)
  • resource/vcd_nsxt_app_port_profile and datasource/vcd_nsxt_app_port_profile add support for VDC Groups with new field context_id (#812)
  • resource/vcd_nsxt_security_group and datasource/vcd_nsxt_security_group support VDC Groups by inheriting parent VDC or VDC Group from Edge Gateway (#814)
  • resource/vcd_network_isolated_v2 add support for metadata so this field can be set when creating/updating isolated NSX-T networks. (#816)
  • datasource/vcd_network_isolated_v2 add support for metadata so this field can be retrieved when reading from isolated NSX-T networks. (#816)
  • resource/vcd_network_routed_v2 add support for metadata so this field can be set when creating/updating routed NSX-T networks. (#816)
  • datasource/vcd_network_routed_v2 add support for metadata so this field can be retrieved when reading from routed NSX-T networks. (#816)
  • vcd_catalog_item allows using ovf_url to upload vApp template from URL (#770)
  • vcd_catalog_item update allows changing name and description (#770)
  • vcd_catalog allows to publish a catalog externally to make its vApp templates and media files available for subscription by organizations outside the Cloud Director installation (#772], [#773)
  • vcd_vapp_vm, vcd_vm allows configuring advanced compute settings (shares and reservations) for VM (#779)
  • vcd_independent_disk allows creating additionally shared disks types by configuring sharing_type (VCD 10.3+). Also, add update support. Add new disk type NVME and new attributes encrypted and uuid. Import now allows listing all independent disks in VDC (#789, #810)

BUG FIXES

  • Fixes Issue #754 where VDC creation with storage profile enabled=false wasn't working (#781)
  • Fix Issue #611 when read of vcd_vapp_vm and vcd_vm resource failed when VM isn't found. Now allows Terraform to recreate resource when it isn't found. (#783)
  • Fix Issue #759 where enable_ip_masquerade handling in vcd_vapp_nat_rules resource wasn't correct (#784)
  • Fix bug in datasource/vcd_nsxt_app_port_profile where a lookup of a TENANT scope profile could fail finding exact Application Port Profile in case Org has multiple VDCs (#812)

NOTES

  • Default values for deployed_vm_quota and stored_vm_quota for org_user have changed from 10 to 0 (unlimited) (#798)
  • Internal functions lockParentEdgeGtw, unLockParentEdgeGtw, lockEdgeGateway, unlockEdgeGateway were converted to use just their ID for lock key instead of full path org:vdc:edge_id. This is done because paths for VDC and VDC Groups can differ, but UUID is unique so it makes it simpler to manage (#801)
  • Additional locking mechanisms lockIfOwnerIsVdcGroup, unLockIfOwnerIsVdcGroup, lockById, unlockById (#801)
  • Bump staticheck tool to 2022.1 to support Go 1.18 and fix newly detected errors (#813)
  • Improve docs for vcd_nsxt_network_dhcp VDC Group support (#818)
  • Improves VDC Group guide documentation (#818)

3.5.1 (January 13, 2022)

BUG FIXES

Fix Issue #769 "Plugin did not respond: terraform-provider-vcd may crash with Terraform 1.1+ on some OSes".

The consequences of this fix are that some messages that were directed at the standard output (such as progress percentage during uploads or suggestions when using outdated resources) are now written to the regular log file (go-vcloud-director.log) using the special tag [SCREEN] for easy filtering. #771

3.5.0 (January 7, 2022)

FEATURES

  • New Resource: vcd_nsxt_alb_settings for managing NSX-T ALB on NSX-T Edge Gateways (#726)
  • New Data source: vcd_nsxt_alb_settings for reading NSX-T ALB on NSX-T Edge Gateways (#726)
  • New Resource: vcd_library_certificate for managing certificates in library (provider configuration) (#733)
  • New Data source: vcd_library_certificate for reading certificates in library (#733)
  • New Resource: vcd_nsxt_alb_edgegateway_service_engine_group for managing NSX-T ALB Service Engine Groups assignments to Edge Gateways (#738, #764)
  • New Data source: vcd_nsxt_alb_edgegateway_service_engine_group for reading NSX-T ALB Service Engine Groups assignments to Edge Gateways (#738, #764)
  • New Resource: vcd_vdc_group for managing VDC Groups (#752)
  • New Data source: vcd_vdc_group for reading VDC Groups (#752)
  • New Resource: vcd_nsxt_alb_pool for NSX-T Load Balancer pools (#756)
  • New Data source: vcd_nsxt_alb_pool for reading NSX-T Load Balancer pools (#756)
  • New Resource: vcd_nsxt_alb_virtual_service for managing NSX-T ALB Virtual Service on NSX-T Edge Gateways (#757, #764)
  • New Data source: vcd_nsxt_alb_virtual_service for reading NSX-T ALB Virtual Service on NSX-T Edge Gateways (#757, #764)

IMPROVEMENTS

  • Remove Coverity warnings from code (#734)
  • resource/vcd_vapp_vm, resource/vcd_vm_internal_disk add support for disk controller type nvme (#680,#739)
  • Add property api_token to provider, supporting API token authentication (#742)
  • Bump Terraform SDK to 2.10.0 (#751)
  • resource/vcd_vapp add support for lease settings management. [#762)
  • datasource/vcd_vapp add support for lease settings visualization. (#762)

BUG FIXES

  • Fix bootable media connection in vcd_vm by sending media reference in CreateVM (#714)
  • Fix broken documentation links (#721)
  • Fix bug where using vcd_vm_internal_disk could remove description field in vcd_vapp_vm and vcd_vm (#758)
  • Skip tests for resources not available in 10.1 (#761)
  • Fix wrong references in TestAccVcdVAppVmMultiNIC (#761)

NOTES

  • Add Guest Customization docs with examples to "guides" section (#729)
  • Improve HCL samples in documentation to only contain single newline spaces and adjust automated check to catch it (#747)
  • Add support for Terraform 1.1 CLI by upgrading Terraform Plugin SDK from v2.7.0 to v2.10.0 (there was a crash with older SDK version) (#751)

3.4.0 (September 30, 2021)

FEATURES

  • New Resource: vcd_nsxt_alb_controller for managing NSX-T ALB Controllers (provider configuration) (#709)
  • New Data source: vcd_nsxt_alb_controller for reading NSX-T ALB Controllers (provider configuration) (#709,#718)
  • New Resource: vcd_nsxt_alb_cloud for managing NSX-T ALB Clouds (provider configuration) (#709)
  • New Data source: vcd_nsxt_alb_cloud for reading NSX-T ALB Clouds (provider configuration) (#709,#718)
  • New Data source: vcd_nsxt_alb_importable_cloud for reading NSX-T ALB Importable Clouds (provider configuration) (#709,#718)
  • New Resource: vcd_nsxt_alb_service_engine_group for managing NSX-T ALB Service Engine Groups (provider configuration) (#709)
  • New Data source: vcd_nsxt_alb_service_engine_group for reading NSX-T ALB Service Engine Groups (provider configuration) (#709,#718)

IMPROVEMENTS

  • Resource and Data source vcd_external_network_v2 support NSX-T Segment backed network (#711)
  • vcd_org_vdc: it is now possible adding and removing storage profiles (#698)
  • data/vcd_nsxt_edge_cluster add documentation for missing fields (#700)
  • Bump Terraform SDK to 2.7.0 (#701)
  • Formatted HCL docs using terraform fmt (#705)
  • Updated attribute syntax to use first class expressions (#705)
  • Align build tags to match go fmt with Go 1.17 (#707)
  • Improve test-tags.sh script to handle new build tag format (#707)
  • Prevent invalid space in the base64 encoded authentication string in the token scripts specific for Linux (#708)

BUG FIXES

  • Fix Issue #696: Catalog deletion failure returns as success (#698)
  • Fix Issue #648 vcd_org_vdc: adding a storage profile requires the vdc to be replaced (#698)
  • Primary NIC removal for vcd_vapp_vm and vcd_vapp is done in cold fashion (#716)
  • Change broken docs reference links with final docs format

NOTES

  • Drop support for VCD 10.0 (#704)

3.3.1 (July 5, 2021)

BUG FIXES

  • (Issue #689) resource/vcd_vm and resource/vcd_vapp_vm cannot find templates in shared catalogs from other Orgs (#691)

3.3.0 (June 30, 2021)

FEATURES

  • New Resource: vcd_nsxt_security_group for NSX-T Edge Gateways (#663)
  • New Data source: vcd_nsxt_security_group for NSX-T Edge Gateways (#663)
  • New Resource: vcd_nsxt_ip_set for NSX-T IP Set management (#668)
  • New Data source: vcd_nsxt_ip_set for NSX-T IP Set management (#668)
  • New Resource: vcd_nsxt_app_port_profile for NSX-T Application Port Profile management (#673)
  • New Data source: vcd_nsxt_app_port_profile for NSX-T Application Port Profile management (#673)
  • New Resource: vcd_nsxt_firewall for NSX-T Edge Gateways (#663)
  • New Data Source: vcd_nsxt_firewall for NSX-T Edge Gateways (#663)
  • New Resource: vcd_nsxt_nat_rule for NSX-T Edge Gateways (#676)
  • New Data source: vcd_nsxt_nat_rule for NSX-T Edge Gateways (#676)
  • New Resource: vcd_role for provider and tenant role management (#677)
  • New Resource: vcd_global_role for provider role management (#677)
  • New Resource: vcd_rights_bundle for provider role management (#677)
  • New Data source: vcd_right for provider and tenant role management (#677)
  • New Data source: vcd_role for provider and tenant role management (#677)
  • New Data source: vcd_global_role for provider role management (#677)
  • New Data source: vcd_rights_bundle for provider role management (#677)
  • New Resource: vcd_nsxt_ipsec_vpn_tunnel for NSX-T IPsec VPN Tunnel management (#678)
  • New Data source: vcd_nsxt_ipsec_vpn_tunnel for NSX-T IPsec VPN Tunnel management (#678)

IMPROVEMENTS

  • Fix a few typos and add example in Routed Network V2 docs (#663)
  • Add compatibility with Terraform 0.15.0 for TestAccVcdNsxtStandaloneVmTemplate and TestAccVcdStandaloneVmTemplate (#663)
  • Tests: add optional test config variable Misc.LdapContainer to override default LDAP container location.
    (can be used to overcome Docker registry throttling issues for pulling testing LDAP container) (#673)
  • datasource/vcd_resource_list adds vcd_right, vcd_role, vcd_global_role, vcd_rights_bundle to the supported resource types (#677)
  • Replace vdc.ComposeRawVApp with vdc.CreateRawVApp (#681)
  • Change "vCloud Director" or "vCloudDirector" to "VMware Cloud Director" in all docs. (#682)
  • Update org_user docs to include creation of system users. (#682)

BUG FIXES

  • resource/vcd_edgegateway not retrieved when there are more than 25 items (#660)
  • (Issue #633) vApp description was ignored in creation and update. (#664)
  • (Issue #634) Setting CPU count to less than what the template has throws error. (#673)
  • Tests: LDAP related tests had incorrect port mapping after image update (#673)
  • resource/vcd_org_vdc complained about storage profile name update from empty to specified on some VCD versions (#676)

NOTES

  • Bump terraform-plugin-sdk to 2.4.4 (#657)
  • Add VCDClient.GetNsxtEdgeGateway, VCDClient.GetNsxtEdgeGatewayById, and GetNsxtEdgeGatewayFromResourceById convenience functions (#663)
  • Add importStateIdNsxtEdgeGatewayObject function for import testing of NSX-T Edge Gateway child objects (#663)

3.2.0 (March 11, 2021)

FEATURES

  • New Resource: vcd_network_routed_v2 for NSX-T and NSX-V routed networks (#628)
  • New Data source: vcd_network_routed_v2 for NSX-T and NSX-V routed networks (#628)
  • New Resource: vcd_network_isolated_v2 for NSX-T and NSX-V isolated networks (#636)
  • New Data source: vcd_network_isolated_v2 for NSX-T and NSX-V isolated networks (#636)
  • New Resource: vcd_vm - Standalone VM (#638)
  • New Data source: vcd_vm - Standalone VM (#638)
  • New Resource: vcd_nsxt_network_imported for NSX-T imported networks (#645)
  • New Data source: vcd_nsxt_network_imported for NSX-T imported networks (#645)
  • New Resource: vcd_nsxt_network_dhcp for NSX-T routed network DHCP configuration (#650)
  • New Data source: vcd_nsxt_network_dhcp for NSX-T routed network DHCP configuration (#650)

IMPROVEMENTS

  • make install will use lightweight tags for build version injection (#628)
  • datasource/vcd_resource_list adds vcd_vm to the supported resource types (#638)
  • datasource/vcd_resource_list adds vcd_network_routed_v2 to the supported resource types (#628)
  • datasource/vcd_resource_list adds vcd_network_isolated_v2 to the supported resource types (#636)
  • datasource/vcd_resource_list adds vcd_nsxt_network_imported to the supported resource types (#645)
  • vcd_edgegateway resource and datasource throws error (on create, import and datasource read) and refers to vcd_nsxt_edgegateway for NSX-T backed VDC (#650)
  • vcd_network_isolatedand vcd_network_routed throw warnings on create and errors on import by referring to vcd_network_isolated_v2and vcd_network_routed_v2 for NSX VDCs (#650)
  • vcd_vapp_network throws error when org_network_name is specified for NSX-T VDC (because NSX-T networks cannot be attached to vApp networks) (#650)

NOTES

  • Internal functions lockParentEdgeGtw and unLockParentEdgeGtw will handle Edge Gateway locks when name or id reference is used (#628)

3.1.0 (December 18, 2020)

FEATURES

  • New Resource: vcd_nsxt_edgegateway - NSX-T edge gateway (#600, #608)
  • New Data source: vcd_nsxt_edgegateway - NSX-T edge gateway (#600)
  • New Data source: vcd_nsxt_edge_cluster - allows to lookup ID and other details of NSX-T Edge Cluster (#600)
  • New Data source: vcd_resource_list info about VCD entities (#594)
  • New Data source: vcd_resource_schema definition of VCD resources schema (#594)
  • New Data Source: vcd_storage_profile for storage profile lookup (#602)

IMPROVEMENTS

  • resource/vcd_vapp_vm adds support to update storage_profile (#580)
  • resource/vcd_org_vdc adds support to update storage_profile (#583)
  • resource/vcd_org_vdc new computed field storage_used_in_mb (#583)
  • resource/vcd_catalog allows to set and update storage_profile_id (#602)
  • resource/vcd_catalog adds support to update description (#602)
  • datasource/vcd_catalog exports storage_profile_id (#602)
  • Provider: add support for bearer tokens in addition to authorization tokens (#590)
  • Provider: automatically use /cloudapi/1.0.0/sessions/provider when /api/sessions is disabled (#590)

BUG FIXES

  • resource/vcd_external_network_v2 may fail when creating NSX-V network backed by standard vSwitch port group (#600)

NOTES

  • Bump terraform-plugin-sdk to v2.2.0 (#576, #594)

3.0.0 (October 16, 2020)

FEATURES

  • New Resource: vcd_vapp_access_control Access control for vApps #543
  • New Data Source: vcd_org_user Org User #543
  • New Resource: vcd_vm_sizing_policy VDC VM sizing policy #553
  • New Data Source: vcd_vm_sizing_policy VDC VM sizing policy #553
  • New Resource: vcd_edgegateway_settings Changes LB and FW global settings for Edge Gateway #557
  • New Resource: vcd_external_network_v2 with NSX-T support #560
  • New Data Source: vcd_external_network_v2 with NSX-T support #560
  • New Data Source: vcd_vcenter useful for vcd_external_network_v2 resource when used with NSX-V #560
  • New Data Source: vcd_portgroup useful for vcd_external_network_v2 resource when used with NSX-V #560
  • New Data Source: vcd_nsxt_manager useful for vcd_external_network_v2 resource when used with NSX-T #560
  • New Data Source: vcd_nsxt_tier0_router useful for vcd_external_network_v2 resource when used with NSX-T #560

IMPROVEMENTS

  • Added command make tagverify to check testing tags isolation. It also runs when calling make test #532
  • Added directory .changes and script ./scripts/make-changelog.sh to handle CHANGELOG entries #534
  • resource/vcd_vapp_vm allows toggle network connection with network.connected #535
  • resource/vcd_vapp_vm allows toggle memory and vCPU hot add with cpu_hot_add_enabled and memory_hot_add_enabled #536
  • resource/vcd_vapp_vm allows change network parameters without VM power off #536
  • Repository has a new home! Moved from https://github.com/terraform-providers/terraform-provider-vcd to https://github.com/vmware/terraform-provider-vcd #542
  • Added support for NSX-T Org VDC #550
  • resource/vcd_org_vdc new fields for assigning VM sizing policies vm_sizing_policy_ids and default_vm_sizing_policy_id #553
  • resource/vcd_vapp_vm new field sizing_policy_id uses VM sizing policy #553

BUG FIXES

  • resource/vcd_vapp_vm removed default value for cpus and cpu_cores #553
  • resource/vcd_vapp_vm fix ignoring is_primary=false #556

NOTES

  • Added support for VCD 10.2 #544
  • Dropped support for VCD 9.5 #544
  • resource/vcd_nsxv_firewall_rule virtual_machine_ids renamed to vm_ids #558
  • resource/vcd_vm_affinity_rule virtual_machine_ids renamed to vm_ids #558
  • Provider will send HTTP User-Agent while performing API calls #566
  • Added conditional skips for some checks in test TestAccVcdVAppVmDhcpWait

REMOVALS

  • Fixed vcd_independent_disk.size issue, new field size_in_mb replaces the size #588
  • Removed deprecated resource vcd_network #543
  • Removed deprecated resources vcd_dnat, vcd_snat, and vcd_firewall_rules #557
  • Removed deprecated attributes ip, network_name, vapp_network_name, network_href, mac, initscript from vcd_vapp_vm #563
  • Removed deprecated attributes external_networks, default_gateway_network, advaced from vcd_edgegateway #588
  • Removed vcd_independent_disk.size in favor of vcd_independent_disk.size_in_mb #588
  • Removed deprecated attributes template_name, catalog_name, network_name, memory, cpus, ip, storage_profile, initscript, ovf, accept_all_eulas from vcd_vapp #588

2.9.0 (June 30, 2020)

FEATURES:

  • New Resource: vcd_vm_affinity_rule VM affinity and anti-affinity rules (#514)
  • New Data Source: vcd_vm_affinity_rule VM affinity and anti-affinity rules (#514)
  • Add support for SAML auth with Active Directory Federation Services (ADFS) as IdP using "/adfs/services/trust/13/usernamemixed" endpoint usin auth_type="saml_adfs". (#504)
  • Add support for LDAP authentication using auth_type="integrated". (#504)
  • New Resource: vcd_org_group Org Group management (#513)
  • New Resource: resource/vcd_vapp_firewall_rules vApp network firewall rules (#511)
  • New Resource: resource/vcd_vapp_nat_rules vApp network NAT rules (#518)
  • New Resource: resource/vcd_vapp_static_routing vApp network static routing rules (#520)

IMPROVEMENTS:

  • resource/vcd_vapp_vm allows creating empty VM. New fields added boot_image, os_type and hardware_version. Also, supports description updates. (#484)
  • Data sources vcd_edgegateway, vcd_catalog, vcd_catalog_item, vcd_catalog_media, vcd_network_* allow search by filter. (#487)
  • Removed code that handled specific cases for API 29.0 and 30.0. This library now supports VCD versions from 9.5 to 10.1 included (#499)
  • Added command line flags to test suite, corresponding to environment variables listed in TESTING.md (#505)
  • resource/vcd_vapp_vm allows creating VM from multi VM vApp template (#501)

BUG FIXES:

  • resource/vcd_vapp_vm and datasource/vcd_vapp_vm can report network.X.is_primary attribute incorrectly when VM is imported to Terraform and NIC indexes in vCD do not start with 0. [#512]
  • Rename docs files from .markdown to .html.markdown (Add test to check file name consistency) (#522)
  • nat_enabled and firewall_enabled were incorrectly added to vcd_vapp_network and would collide with the depending resources. Now moved to respective resources vcd_vapp_nat_rules and vcd_vapp_firewall_rules.

DEPRECATIONS:

  • Deprecated vcd_snat (replaced by vcd_nsxv_snat), vcd_dnat (replaced by vcd_nsxv_dnat), and vcd_firewall_rules (replaced by vcd_nsxv_firewall_rule) (#518) The deprecated resources are to be used only with non-advanced edge gateway.

NOTES:

  • Dropped support for vCD 9.1 (#492)

2.8.0 (April 16, 2020)

IMPROVEMENTS:

  • resource/vcd_network_routed, resource/vcd_network_direct, and resource/vcd_network_isolated now support in place updates. (#465)
  • vcd_vapp_network, vcd_vapp_org_network has now missing import documentation [#481]
  • resource/vcd_vapp_vm and datasource/vcd_vapp_vm simplifies network adapter validation when it is not attached to network (network.x.type=none and network.x.ip_allocation_mode=none) and network_dhcp_wait_seconds is defined. This is required for vCD 10.1 support (#485)

BUG FIXES

  • Using wrong defaults for vcd_network_isolated and vcd_network_routed DNS (#434)
  • external_network_gateway not filled in datasource vcd_network_direct (#450)
  • resource/vcd_vapp_vm sometimes reports incorrect vcd_vapp_vm.ip and vcd_vapp_vm.mac fields in deprecated network configuration (when using vcd_vapp_vm.network_name and vcd_vapp_vm.vapp_network_name parameters instead of vcd_vapp_vm.network blocks) (#478)
  • resource/vcd_vapp_org_network fix potential error 'NAT rule cannot be configured for nics with DHCP addressing mode' during removal (#489)
  • resource/vcd_org_vdc supports vCD 10.1 and resolves "no provider VDC found" errors (#489)

DEPRECATIONS:

  • vCD 9.1 support is deprecated. Next version will require at least version 9.5 (#489)

NOTES:

  • Bump terraform-plugin-sdk to v1.8.0 (#479)
  • Update Travis to use Go 1.14 (#479)

2.7.0 (March 13, 2020)

FEATURES:

  • New Resource: vcd_vm_internal_disk VM internal disk configuration (#412)
  • New Resource: vcd_vapp_org_network vApp organization network (#455)
  • New Data Source: vcd_vapp_org_network vApp org network (#455)
  • New Data Source: vcd_vapp_network vApp network (#455)

IMPROVEMENTS:

  • vcd_vapp_network supports isolated network and vApp network connected to Org VDC networks (#455,#468)
  • vcd_vapp_network does not default dns1 and dns2 fields to 8.8.8.8 and 8.8.4.4 respectively (#455,#468)
  • vcd_org_vdc can be created with Flex allocation model in vCD 9.7 and later. Also two new fields added for Flex - elasticity, include_vm_memory_overhead (#443)
  • resource/vcd_org and datasource/vcd_org include a section vapp_lease and a section vapp_template_lease to define lease related parameters of depending entities - (#432)
  • resource/vcd_vapp_vm Internal disks in VM template can be edited by override_template_disk field (#412)
  • vcd_vapp_vm disk has new attribute size_in_mb (#433)
  • resource/vcd_vapp_vm and datasource/vcd_vapp_vm get optional network_dhcp_wait_seconds field to ensure ip is reported when ip_allocation_mode=DHCP is used (#436)
  • resource/vcd_vapp_vm and datasource/vcd_vapp_vm include a field adapter_type in network definition to specify NIC type - (#441)
  • resource/vcd_vapp_vm and datasource/vcd_vapp_vm customization block supports all available features (#462, #469, #477)
  • datasource/* - all data sources return an error when object is not found (#446, #470)
  • vcd_vapp_vm allows to add routed vApp network, not only isolated one. network.name can reference vcd_vapp_network.name of a vApp network with org_network_name set (#472)

DEPRECATIONS:

  • resource/vcd_vapp_vm network.name deprecates automatic attachment of vApp Org network when network.type=org and it is not attached with vcd_vapp_org_network before referencing it. (#455)
  • resource/vcd_vapp_vm field initscript is now deprecated in favor of customization.0.initscript to group all guest customization settings (#462)

BUG FIXES:

  • resource/vcd_vapp_vm read - independent disks where losing bus_number and unit_number values after refresh (#433)
  • datasource/vcd_nsxv_dhcp_relay crashes if no DHCP relay settings are present in Edge Gateway (#446)
  • resource/vcd_vapp_vm network block changes caused MAC address changes in existing NICs (#436,#407)
  • Fix a potential data race in client connection caching when VCD_CACHE is enabled (#453)
  • resource/vcd_vapp_vm when customization.0.force=false crashes with interface {} is nil (#462)
  • resource/vcd_vapp_vm customization.0.force=true could have skipped "Forced customization" on each apply (#462, #477)

NOTES:

  • Drop support for vCD 9.0
  • Bump terraform-plugin-sdk to v1.5.0 (#442)
  • make seqtestacc and make test-binary use -race flags for go test to check if there are no data races. Additionally GNUMakefile supports make installrace and make buildrace to build binary with race detection enabled. (#453)
  • Add make test-upgrade-prepare directive (#462)

2.6.0 (December 13, 2019)

FEATURES:

  • New Resource: vcd_nsxv_dhcp_relay Edge gateway DHCP relay configuration - (#416)
  • New Resource: vcd_nsxv_ip_set IP set - (#406,#411)
  • New Data Source: vcd_nsxv_dhcp_relay Edge gateway DHCP relay configuration - (#416)
  • New Data Source: vcd_vapp_vm VM - (#218)
  • New Data Source: vcd_nsxv_ip_set IP set - (#406,#411)
  • New build command: make test-upgrade to run an upgrade test from the previous released version

IMPROVEMENTS:

  • Switch to Terraform terraform-plugin-sdk v1.3.0 as per recent HashiCorp recommendation - (#382, #406)

  • resource/vcd_vapp_vm VM state ID changed from VM name to vCD ID

  • resource/vcd_vapp_vm Add properties description and storage_profile

  • resource/vcd_vapp_vm Add import capability and full read support (#218)

  • resource/vcd_nsxv_dnat and resource/vcd_nsxv_dnat more precise error message when network is not found - (#384)

  • resource/vcd_nsxv_dnat and resource/vcd_nsxv_dnat rule_tag must be int to avoid vCD internal exception passthrough - (#384)

  • resource/vcd_nsxv_dnat put correct name in doc example - (#384)

  • resource/vcd_nsxv_dnat and resource/vcd_nsxv_dnat avoid rule replacement because of changed rule_tag when rule is altered via UI - (#384)

  • resource/vcd_nsxv_firewall_rule add explicit protocol validation to avoid odd NSX-V API error - (#384)

  • resource/vcd_nsxv_firewall_rule rule_tag must be int to avoid vCD internal exception passthrough - (#384)

  • Fix code warnings from staticcheck and add command make static to Travis tests

  • resource/vcd_edge_gateway and datasource/vcd_edge_gateway add default_external_network_ip and external_network_ips fields to export default edge gateway IP address and other external network IPs used on gateway interfaces - (#389, #401)

  • Add token to the vcd provider for the ability of connecting with an authorization token - (#280)

  • Add command make token to create an authorization token from testing credentials

  • Clean up interpolation-only expressions from tests (as allowed in terraform v0.12.11+)

  • Increment vCD API version used from 27.0 to 29.0 (#396)

  • resource/vcd_network_routed Add properties description and interface_type (#321,#342,#374)

  • resource/vcd_network_isolated Add property description (#373)

  • resource/vcd_network_direct Add property description

  • resource/vcd_network_routed Add check for valid IPs (#374)

  • resource/vcd_network_isolated Add check for valid IPs (#373)

  • resource/vcd_nsxv_firewall_rule Add support for IP sets (#411)

  • resource/vcd_edgegateway new fields fips_mode_enabled, use_default_route_for_dns_relay

  • resource/vcd_edgegateway new external_network block for advanced configurations of external networks including multiple subnets, IP pool sub-allocation and rate limits - (#401,#418)

  • resource/vcd_edgegateway enables read support for field distributed_routing after switch to vCD API v29.0 - (#401)

  • vcd_nsxv_firewall_rule - improve internal lookup mechanism for gateway_interfaces field in source and/or destination (#419)

BUG FIXES:

  • Fix vcd_org_vdc datasource read. When user was Organization administrator datasource failed. Fields provider_vdc_name, storage_profile, memory_guaranteed, cpu_guaranteed, cpu_speed, enable_thin_provisioning, enable_fast_provisioning, network_pool_name won't have values for org admin.
  • Removed power_on property from data source vcd_vapp, as it is a directive used during vApp build. Its state is never updated and the fields status and status_text already provide the necessary information. (#379)
  • Fix vcd_independent_disk reapply issue, which was seen when optional bus_sub_type and bus_type wasn't used - (#394)
  • Fix vcd_vapp_network apply issue, where the property guest_vlan_allowed was applied only to the last of multiple networks.
  • datasource/vcd_network_direct is now readable by Org User (previously it was only by Sys Admin), as this change made it possible to get the details of External Network as Org User (#408)

DEPRECATIONS:

  • Deprecated property storage_profile in resource vcd_vapp, as the corresponding field is now enabled in vcd_vapp_vm
  • resource/vcd_edgegateway deprecates fields external_networks and default_gateway_network in favor of new external_network block(s) - [#401]

2.5.0 (October 28, 2019)

FEATURES:

  • New Resource: vcd_nsxv_dnat DNAT for advanced edge gateways using proxied NSX-V API - (#328)
  • New Resource: vcd_nsxv_snat SNAT for advanced edge gateways using proxied NSX-V API - (#328)
  • New Resource: vcd_nsxv_firewall_rule firewall for advanced edge gateways using proxied NSX-V API - (#341, #358)
  • New Data Source: vcd_org Organization - (#218)
  • New Data Source: vcd_catalog Catalog - (#218)
  • New Data Source: vcd_catalog_item CatalogItem - (#218)
  • New Data Source: vcd_org_vdc Organization VDC - (#324)
  • New Data Source: vcd_external_network External Network - (#218)
  • New Data Source: vcd_edgegateway Edge Gateway - (#218)
  • New Data Source: vcd_network_routed Routed Network - (#218)
  • New Data Source: vcd_network_isolated Isolated Network - (#218)
  • New Data Source: vcd_network_direct Direct Network - (#218)
  • New Data Source: vcd_vapp vApp - (#218)
  • New Data Source: vcd_nsxv_dnat DNAT for advanced edge gateways using proxied NSX-V API - (#328)
  • New Data Source: vcd_nsxv_snat SNAT for advanced edge gateways using proxied NSX-V API - (#328)
  • New Data Source: vcd_nsxv_firewall_rule firewall for advanced edge gateways using proxied NSX-V API - (#341)
  • New Data Source: vcd_independent_disk Independent disk - (#349)
  • New Data Source: vcd_catalog_media Media item - (#340)

IMPROVEMENTS:

  • Add support for vCD 10.0
  • resource/vcd_org Add import capability and full read support (#218)
  • resource/vcd_catalog Add import capability and full read support (#218)
  • resource/vcd_catalog_item Add import capability and full read support (#218)
  • resource/vcd_external_network Add import capability and full read support (#218)
  • resource/vcd_edgegateway Add import capability and full read support (#218)
  • resource/vcd_network_routed Add import capability and full read support (#218)
  • resource/vcd_network_isolated Add import capability and full read support (#218)
  • resource/vcd_network_direct Add import capability and full read support (#218)
  • resource/vcd_vapp Add import capability and full read support (#218)
  • resource/vcd_network_direct: Direct network state ID changed from network name to vCD ID
  • resource/vcd_network_isolated: Isolated network state ID changed from network name to vCD ID
  • resource/vcd_network_routed: Routed network state ID changed from network name to vCD ID
  • resource/vcd_vapp: vApp state ID changed from vApp name to vCD ID
  • resource/vcd_vapp: Add properties status and status_text
  • resource/catalog_item added catalog item metadata support [#285]
  • resource/vcd_catalog: Catalog state ID changed from catalog name to vCD ID
  • resource/vcd_catalog_item: CatalogItem state ID changed from colon separated list of catalog name and item name to vCD ID
  • resource/catalog_item added catalog item metadata support [#298]
  • resource/catalog_media added catalog media item metadata support (#298)
  • resource/vcd_vapp_vm supports update for network block (#310)
  • resource/vcd_vapp_vm allows to force guest customization (#310)
  • resource/vcd_vapp supports guest properties (#319)
  • resource/vcd_vapp_vm supports guest properties (#319)
  • resource/vcd_network_direct Add computed properties (external network gateway, netmask, DNS, and DNS suffix) (#330)
  • vcd_org_vdc Add import capability and full read support (#218)
  • Upgrade Terraform SDK dependency to 0.12.8 (#320)
  • resource/vcd_vapp_vm has new field computer_name (#334)
  • Import functions can now use custom separators instead of "." (#343)
  • resource/vcd_independent_disk Add computed properties (iops, owner_name, datastore_name, is_attached) and read support for all fields except the size (#349)
  • resource/vcd_independent_disk Disk state ID changed from name of disk to vCD ID (#349)
  • Import functions can now use a custom separator instead of "." (#343)
  • resource/vcd_catalog_media Add computed properties (is_iso, owner_name, is_published, creation_date, size, status, storage_profile_name) and full read support (#340)
  • resource/vcd_catalog_media MediaItem state ID changed from colon separated list of catalog name and media name to vCD ID (#340)
  • Import functions can now use custom separators instead of "." (#343)
  • resource/vcd_vapp_vm has new field computer_name (#334, #347)

BUG FIXES:

  • Change default value for vcd_org.deployed_vm_quota and vcd_org.stored_vm_quota. It was incorrectly set at -1 instead of 0.
  • Change Org ID from partial task ID to real Org ID during creation.
  • Wait for task completion on creation and update, where tasks were not handled at all.
  • resource/vcd_firewall_rules force recreation of the resource when attributes of the sub-element rule are changed (fixes a situation when it tried to update a rule).
  • resource/vcd_network_isolated Fix definition of DHCP, which was created automatically with leftovers from static IP pool even when not requested.
  • resource/vcd_network_routed Fix retrieval with early vCD versions. (#344)
  • resource/vcd_edgegateway_vpn Required replacement every time for shared_secret field. (#361)

DEPRECATIONS

  • The ability of deploying a VM implicitly within a vApp is deprecated. Users are encouraged to set an empty vApp and add explicit VM resources vcd_vapp_vm. For this reason, the following fields in vcd_vapp are deprecated:
    • template_name
    • catalog_name
    • network_name
    • ip
    • cpus
    • memory
    • network_name
    • initscript
    • ovf
    • accept_all_eulas

NOTES:

  • Drop support for vCD 8.20

2.4.0 (July 29, 2019)

FEATURES:

  • New Resource: vcd_lb_service_monitor Load Balancer Service Monitor - (#256, #290)
  • New Resource: vcd_edgegateway creates and deletes edge gateways, manages general load balancing settings - (#262, #288)
  • New Resource: vcd_lb_server_pool Load Balancer Server Pool - (#268, #290, #297)
  • New Resource: vcd_lb_app_profile Load Balancer Application profile - (#274, #290, #297)
  • New Resource: vcd_lb_app_rule Load Balancer Application rule - (#278, #290)
  • New Resource: vcd_lb_virtual_server Load Balancer Virtual Server - (#284, #290, #297)
  • New Resource: vcd_org_user Organization User - (#279)
  • New Data Source: vcd_lb_service_monitor Load Balancer Service Monitor - (#256, #290)
  • New Data Source: vcd_lb_server_pool Load Balancer Server Pool - (#268, #290, #297)
  • New Data Source: vcd_lb_app_profile Load Balancer Application profile - (#274, #290, #297)
  • New Data Source: vcd_lb_app_rule Load Balancer Application rule - (#278, #290)
  • New Data Source: vcd_lb_virtual_server Load Balancer Virtual Server - (#284, #290, #297)
  • New build commands make test-env-init and make test-env-apply can configure an empty vCD to run the test suite. See TESTING.md for details.
  • resource/vcd_org_vdc added Org VDC update and full state read - (#275)
  • resource/vcd_org_vdc added Org VDC metadata support - (#276)
  • resource/vcd_snat added ability to choose network name and type. [#282]
  • resource/vcd_dnat added ability to choose network name and type. (#282, #292, #293)

IMPROVEMENTS:

  • resource/vcd_org_vdc: Fix ignoring of resource guarantee values - (#265)
  • resource/vcd_org_vdc: Org VDC state ID changed from name to vCD ID - (#275)
  • Change resource handling to use locking mechanism when resource parallel handling is not supported by vCD. [#255]
  • Fix issue when vApp is power cycled during member VM deletion. (#261)
  • resource/vcd_dnat, resource/vcd_snat has got full read functionality. This means that on the next plan/apply it will detect if configuration has changed in vCD and propose to update it.

BUG FIXES:

  • resource/vcd_dnat and resource/vcd_snat - fix resource destroy as it would still leave NAT rule in edge gateway. Fix works if network_name and network_type is used. (#282)

NOTES:

  • resource/vcd_dnat protocol requires lower case values to be consistent with the underlying NSX API. This may result in invalid configuration if upper case was used previously!
  • resource/vcd_dnat default value for protocol field changed from upper case TCP to lower case tcp, which may result in a single update when running plan on a configuration with a state file from an older version.

2.3.0 (May 29, 2019)

IMPROVEMENTS:

  • Switch to Terraform 0.12 SDK which is required for Terraform 0.12 support. HCL (HashiCorp configuration language) parsing behaviour may have changed as a result of changes made by the new SDK version (#254)

NOTES:

  • Provider plugin will still work with Terraform 0.11 executable

2.2.0 (May 16, 2019)

FEATURES:

  • vcd_vapp_vm - Ability to add metadata to a VM. For previous behaviour please see BACKWARDS INCOMPATIBILITIES (#158)
  • vcd_vapp_vm - Ability to enable hardware assisted CPU virtualization for VM. It allows hypervisor nesting. (#219)
  • New Resource: external network - vcd_external_network - (#230)
  • New Resource: VDC resource vcd_org_vdc - (#236)
  • resource/vcd_vapp_vm: Add network argument for multiple NIC support and more flexible configuration (#233)
  • resource/vcd_vapp_vm: Add mac argument to store MAC address in state file (#233)

BUG FIXES:

  • vcd_vapp - Ability to add metadata to empty vApp. For previous behaviour please see BACKWARDS INCOMPATIBILITIES (#158)

BACKWARDS INCOMPATIBILITIES / NOTES:

  • vcd_vapp - Metadata is no longer added to first VM in vApp it will be added to vApp directly instead. (#158)
  • Tests files are now all tagged. Running them through Makefile works as before, but manual execution requires specific tags. Run go test -v . for tags list.
  • vcd_vapp_vm - Deprecated attributes network_name, vapp_network_name, network_href and ip in favor of network (#118)

2.1.0 (March 27, 2019)

NOTES:

  • Please look for "v2.1+" keyword in documentation which is used to emphasize new features.
  • Project switched to using Go modules, while vendor is left for backwards build compatibility only. It is worth having a look at README.md to understand how Go modules impact build and development (#178)
  • Project dependency of github.com/hashicorp/terraform updated from v0.10.0 to v0.11.13 (#181)
  • MaxRetryTimeout is shared with underlying SDK go-vcloud-director (#189)
  • Improved testing functionality (#166)

FEATURES:

  • New Resource: disk resource - vcd_independent_disk (#188)
  • resource/vcd_vapp_vm has ability to attach independent disk (#188)
  • New Resource: vApp network - vcd_vapp_network (#155)
  • resource/vcd_vapp_vm has ability to use vApp network (#155)

IMPROVEMENTS:

  • resource/vcd_inserted_media now supports force ejecting on running VM (#184)
  • resource/vcd_vapp_vm now support CPU cores configuration (#174)

BUG FIXES:

  • resource/vcd_vapp, resource/vcd_vapp_vm add vApp status handling when environment is very fast (#68)
  • resource/vcd_vapp_vm add additional validation to check if vApp template is OK [#157]

2.0.0 (January 30, 2019)

Please look for "v2.0+" keyword in documentation which is used to emphasize changes and new features.

ARCHITECTURAL:

  • Vendor (vCD Golang SDK) switch from the old govcloudair to the newly supported go-vcloud-director

FEATURES:

  • vCD 8.2, 9.0, 9.1 and 9.5 version support
  • Sys admin login support (required to support new higher privileged operations) - provider.org = "System" or provider.sysorg = "System"
  • Ability to select Org and VDC at resource level - org and vdc parameters
  • New Org resource - vcd_org
  • New Catalog resource - vcd_catalog
  • New Catalog item resource (upload OVA) - vcd_catalog_item
  • New Catalog media resource (upload ISO) - vcd_catalog_media
  • New direct and isolated Org VDC network resources (complements the routed network) - vcd_network_direct, vcd_network_isolated and vcd_network_routed
  • DNAT protocol and ICMP sub type setting - vcd_dnat.protocol and vcd_dnat.icmp_sub_type
  • Ability to accept EULAs when deploying VM - vcd_vapp_vm.accept_all_eulas
  • Setting to log API calls for troubleshooting - provider.logging and provider.logging_file

IMPROVEMENTS:

  • Fixes for guest customization issues
  • Improvements to error handling and error messages
  • New tests and test framework improvements
  • Provisional support for connection caching (disabled by default)

BACKWARDS INCOMPATIBILITIES / NOTES:

  • Resource vcd_network deprecated in favor of a new name vcd_network_routed
  • Previously deprecated parameter provider.maxRetryTimeout removed completely in favor of provider.max_retry_timeout

TESTS:

  • Test configuration is now included in a file (create vcd_test_config.json from sample_vcd_test_config.json) instead of being defined by environment variables

IMPROVEMENTS:

  • vcd_vapp - Fixes an issue with Networks in vApp templates being required, also introduced in 0.1.2 (#38)

FEATURES:

  • vcd_vapp - Add support for defining shared vcd_networks (#46)
  • vcd_vapp - Added options to configure dhcp lease times (#47)

1.0.0 (August 17, 2017)

IMPROVEMENTS:

  • vcd_vapp - Fixes an issue with storage profiles introduced in 0.1.2 (#39)

BACKWARDS INCOMPATIBILITIES / NOTES:

  • provider: Deprecate maxRetryTimeout in favour of max_retry_timeout (#40)

0.1.3 (August 09, 2017)

IMPROVEMENTS:

  • vcd_vapp - Setting the computer name regardless of init script (#31)
  • vcd_vapp - Fixes the power_on issue introduced in 0.1.2 (#33)
  • vcd_vapp - Fixes issue with allocated IP address affecting tf plan (#17 & #29)
  • vcd_vapp_vm - Setting the computer name regardless of init script (#31)
  • vcd_firewall_rules - corrected typo in docs (#35)

0.1.2 (August 03, 2017)

IMPROVEMENTS:

  • Possibility to add OVF parameters to a vApp (#1)
  • Added storage profile support (#23)

0.1.1 (June 28, 2017)

FEATURES:

  • New VM Resource: vcd_vapp_vm (#9)
  • New VPN Resource: vcd_edgegateway_vpn

IMPROVEMENTS:

  • resource/vcd_dnat: Added a new (optional) param translated_port (#14)

0.1.0 (June 20, 2017)

NOTES:

  • Same functionality as that of Terraform 0.9.8. Repacked as part of Provider Splitout