Skip to content

Releases: microsoft/terraform-provider-power-platform

v3.8.0

03 Jul 20:01
0f4dee6
Compare
Choose a tag to compare

3.8.0 - 2025-07-03

✨ Added

  • #828 Add support for Azure Developer CLI authentication via use_dev_cli provider configuration option and POWER_PLATFORM_USE_DEV_CLI environment variable
  • #782 Add powerplatform_environment_application_admin resource to enable adding Entra service principals as application users with System Administrator role in Dataverse environments
  • #781 support partner_id configuration and opt-out for default Terraform partner ID

💫 Changed

  • #867 powerplatform_tenant_capacity resource is now available in preview with user authentication support only
  • #823 Improved error message formatting and consistency for better user experience across environment templates, tenant isolation policy, and tenant settings resources

⚰️ Deprecated

  • #860 Mark powerplatform_rest resource as deprecated. Known uses do not align with the intent of the resource. Please consider using specific resources for your use case, or opening a GitHub issue requesting a new resource for your use case.

🪲 Fixed

  • #806 Improved error handling in environment group services - fixed missing error wrapping, silent failures, and incorrect error messages
  • #804 Fix pointer handling issues across codebase for better Go idioms
  • #825 Fixed type safety and formatting issues including missing string validation, interface assertions, and escaped newline formatting
  • #798 Fixed duplicated constants and literals issues across codebase to improve maintainability
  • #808 Fixed recursive retry loops and missing return statements in environment services that could lead to infinite loops and data corruption. Added proper error wrapping for better debugging context.
  • #810 fix: add proper API error wrapping and data conversion context across multiple services
  • #812 fix: improve error handling for retry loops, state management, validators, and diagnostic reporting across 9 critical components to prevent silent failures and data corruption
  • #814 Fixed missing return statements after error handling in three datasources to prevent potential panics and undefined behavior
  • #815 Add missing nil pointer validation checks to prevent runtime panics in application API client, authorization resource, and environment models
  • #816 Improved error handling and diagnostics across multiple services: fixed missing parameter context in connection shares error messages, proper error propagation in DLP policy helper functions, handled ignored errors in data record column conversion, and corrected misleading error messages in environment settings
  • #817 Fixed JSON Marshal/Unmarshal issues: added empty response body validation, proper error handling for JSON marshaling, safe type assertions, and corrected Decode usage
  • #818 Fixed infinite polling loop in environment wave UpdateFeature method by adding context deadline checking to respect timeout configuration
  • #820 Improve code structure and maintainability by extracting deeply nested schema definitions into helper functions, reducing duplication in DTO conversion logic, and enhancing error handling for feature state mapping
  • #821 Fixed validation and modifiers issues: improved error handling in validators and plan modifiers, corrected error messages for SHA256 checksums, and enhanced diagnostic context
  • #824 Fix configuration and constants issues: CAE challenge detection strings, RX PowerApps Advisor API domain constants, and AuxiliaryTenantIDs type safety conversion
  • #839 Fixed type assertion safety issues in multiple services to prevent potential runtime panics when API responses have unexpected structure or types
  • #840 Fixed type assertion safety issues in DTO conversions and data transformations to prevent runtime panics. Added proper error handling for type assertions in tenant_settings, environment_group_rule_set, dlp_policy, and data_record services. Improved UUID type equality method to support both value and pointer types.
  • #841 Fixed unsafe type assertions in provider data handling that could cause panics and misleading error messages
  • #842 Fixed reflection and type safety issues in provider code. Replaced unsafe reflection usage in API client, improved error handling with Go 1.13+ patterns, and added validation for conversion functions to prevent runtime panics.
  • #808 Fix recursive retry loops and missing return statements after AddError in environment services

v3.7.2

16 May 15:58
5b2843b
Compare
Choose a tag to compare

3.7.2 - 2025-05-16

🪲 Fixed

  • #775 Fixed issue when powerplatform_environment security_group_id validates unknown values incorrectly

v3.7.1

14 May 07:09
d89bf04
Compare
Choose a tag to compare

3.7.1 - 2025-05-13

🪲 Fixed

  • #702 Fix retryAfter function to properly handle all formats of Retry-After HTTP header as defined in RFC 7231
  • #705 Replace panic with error handling in environment_settings models.go
  • #707 Added nil check for HTTP response in doRequest method to prevent potential nil pointer dereference
  • #708 Improve DeleteEnvironment function behavior: Handle 404 responses gracefully and adjust state management in Delete method
  • #710 Fixed improper error handling by replacing err.Error() calls with properly wrapped errors using fmt.Errorf() with %w verb or directly passing the error object. This preserves error context and enables better debugging.
  • #687 Fixed an issue where required field validation could fail incorrectly if the referenced field was missing or not unique in the configuration.
  • #749 Nil pointer dereference in regex validation.
  • #704 Replaced panic with proper error handling in ExecuteApiRequest function
  • #756 fix: refine current value check in MakeFieldRequiredWhenOtherFieldDoesNotHaveValueValidator
  • #767 feat: implement conflict handling and retry logic for environment operations

📚 Documentation

  • #768 documentation for governance

v3.7.0

29 Apr 06:25
Compare
Choose a tag to compare

3.7.0 - 2025-04-29

✨ Added

  • #719 Operation lifecycle operation continue on HTTP 409 responses

💫 Changed

  • #736 Include debug symbols in goreleaser builds by removing -s -w flags from ldflags

🪲 Fixed

  • #720 Corrected validator logic in OtherFieldRequiredWhenValueOfValidator to properly handle field comparison cases
  • #703 Updated StringSliceToSet function to return an error instead of panicking when conversion fails
  • #706 Replace panic calls with proper error handling in tenant_settings dto.go
  • #709 Fixed misleading error message and debug log typos in the User resource
  • #745 fix: add http.StatusConflict to API response handling in enterprise and managed environment services

📚 Documentation

  • #741 Add security considerations guide

v3.6.0

24 Apr 19:18
cb6ec53
Compare
Choose a tag to compare

3.6.0 - 2025-04-24

✨ Added

  • #652 new powerplatform_environment_wave that allows to install newest wave update in an environment. Currently available only with user authentication login
  • #306 Added Continuous Access Evaluation (CAE) checks

💫 Changed

  • #636 Updated resources with new default values

🪲 Fixed

  • #670 Added custom error message for lack of management application permissions
  • #673 standardize the logging and error messages by replacing ProviderTypeName with FullTypeName
  • #686 Update authorization header check in doRequest function
  • #693 Add support for HTTP status code 499 in AddDataverseToEnvironment function
  • #698 Improved file hashing to check if file is a real file and not a symbolic link
  • #709 Fixed incorrect error message in powerplatform_user delete operation
  • #714 Enhance error handling for 403 & 404 WebApi responses

📚 Documentation

  • #679 added documentation how to turn off Azure CLI telemetry
  • #695 adding documentation and samples for Azure DevOps authentication with Workload Identity Federation.

v3.5.0

20 Mar 21:58
Compare
Choose a tag to compare

3.5.0 - 2025-03-20

✨ Added

  • #566 Added the auxiliary tenant property to supported auth options
  • #612 new tenant_isolation_policy resource to enforce tenant isolation settings
  • #574 new powerplatform_solution_checker_rules datasource for retrieving solution checker validation rules
  • #486 new powerplatform_analytics_data_exports data source

💫 Changed

  • #650 updated descriptions for attributes

🪲 Fixed

  • #616 powerplatform_data_record: added meaningful error when record already exist and HTTP 405 is returned
  • #621 Lifecycle operation will retry if 'Failed' status was return.
  • #622 powerplatform_user: added retry when user is not yet added to the dataverse

📚 Documentation

  • #608 Added dynamic configuration guide to user documentation

v3.4.0

06 Mar 15:39
87bb59b
Compare
Choose a tag to compare

What's Changed

✨ Added

  • #243 Added Managed identity and Workload Identity Federation authentication
  • #548 powerplatform_environment added explicit error when cannot provision new environment in a selected azure region
  • #551 added new powerplatform_copilot_studio_application_insights resource
  • #116 powerplatform_managed_environment adding solution_checker_rule_overrides attribute that allows defining solution checker rules when enabling managed environment
  • #568 powerplatform_environment enhance support for creating developer environment on behalf of a user
  • #572 powerplatform_environment support get new features early with new release_cycle attribute
  • #576 powerplatform_environment_settings adding additional IP firewall settings
  • #589 powerplatform_environment adding allow_bing_search and allow_moving_data_across_regions attributes

💫 Changed

  • #604 powerplatform_environment attributes environment_group_id and billing_policy_id uses empty guid 00000000-0000-0000-0000-000000000000 as no value, instead of ""

🪲 Fixed

  • #557 powerplatform_data_record adding warning when something else than set is used for columns dynamic attribute
  • #565 Fixed issues with powerplatform_environment_group_rule_set throwing RuleSetInvalid error
  • #595 powerplatform_environment fixing bug that updating display_name field triggers managed environment to enable itself

📚 Documentation

  • #538 Improve documentation around powerplatform_environment_application_package_install resource
  • #584 Correct telemetry_optout documentation about User-Agent header

Full Changelog: v3.3.0...v3.4.0

v3.3.0

28 Nov 17:10
577dbde
Compare
Choose a tag to compare

What's Changed

  • powerplatform_environment removing "known-after-apply" message for attributes that had no change by @mawasile in #508
  • Chore(deps): Bump github.com/hashicorp/terraform-plugin-go from 0.24.0 to 0.25.0 by @dependabot in #514
  • Chore(deps): Bump github.com/hashicorp/terraform-plugin-framework-validators from 0.14.0 to 0.15.0 by @dependabot in #516
  • Chore(deps): Bump github.com/hashicorp/terraform-plugin-framework from 1.12.0 to 1.13.0 by @dependabot in #515
  • Add documentation to environment_settings on using data_record to manage setttings by @mattdot in #513
  • Chore(deps): Bump hashicorp/azurerm from 4.7.0 to 4.8.0 in /examples/resources/powerplatform_billing_policy in the all group across 1 directory by @dependabot in #517
  • Chore(deps): Bump goreleaser/goreleaser-action from 6.0.0 to 6.1.0 in /.github/workflows by @dependabot in #521
  • Chore(deps): Bump github.com/hashicorp/terraform-plugin-docs from 0.19.4 to 0.20.0 by @dependabot in #520
  • Chore(deps): Bump hashicorp/azurerm from 4.8.0 to 4.9.0 in /examples/resources/powerplatform_billing_policy in the all group across 1 directory by @dependabot in #522
  • powerplatform_enterprise_policy by @mawasile in #519
  • Chore(deps): Update hashicorp/azurerm requirement from ~>4.8.0 to ~>4.9.0 in /examples/resources/powerplatform_enterprise_policy in the all group across 1 directory by @dependabot in #525
  • Chore(deps): Bump codecov/codecov-action from 4 to 5 in /.github/workflows by @dependabot in #526
  • powerplatform_data_loss_prevention_policy added additional validation for default_action_rule_behavior and action_rules when both are empty by @mawasile in #524
  • Chore(deps): Bump the all group across 2 directories with 1 update by @dependabot in #528
  • Chore(deps): Bump github.com/hashicorp/terraform-plugin-testing from 1.10.0 to 1.11.0 by @dependabot in #531
  • Chore(deps): Bump step-security/harden-runner from 2.10.1 to 2.10.2 in /.github/workflows by @dependabot in #530
  • powerplatform_user support environment without dataverse by @mawasile in #529
  • Chore(deps): Bump the all group across 2 directories with 1 update by @dependabot in #532
  • Chore(deps): Bump github.com/hashicorp/terraform-plugin-docs from 0.20.0 to 0.20.1 by @dependabot in #534
  • Chore(deps): Bump github.com/stretchr/testify from 1.9.0 to 1.10.0 by @dependabot in #533
  • Edsanche/431 add retention policy duration to powerplatform environment settings by @eduardodfmex in #527

Full Changelog: v3.2.0...v3.3.0

v3.2.0

29 Oct 17:01
754f7a0
Compare
Choose a tag to compare

What's Changed

  • Fix invalid character error in powerplatform_data_record conversion by @mawasile in #484
  • Refactor test files to use dynamic resource group names by @mattdot in #483
  • Update changelog for 3.1 by @mattdot in #485
  • Chore(deps): Bump actions/upload-artifact from 4.4.0 to 4.4.2 in /.github/workflows by @dependabot in #491
  • Chore(deps): Bump github.com/Azure/azure-sdk-for-go/sdk/azidentity from 1.7.0 to 1.8.0 by @dependabot in #490
  • Chore(deps): Bump actions/upload-artifact from 4.4.2 to 4.4.3 in /.github/workflows by @dependabot in #493
  • Chore(deps): Bump hashicorp/azurerm from 4.3.0 to 4.4.0 in /examples/resources/powerplatform_billing_policy in the all group across 1 directory by @dependabot in #487
  • Adding new examples in powerplatform_data_record by @mawasile in #492
  • Chore(deps): Bump hashicorp/azurerm from 4.4.0 to 4.5.0 in /examples/resources/powerplatform_billing_policy in the all group across 1 directory by @dependabot in #494
  • Chore(deps): Bump github.com/Azure/azure-sdk-for-go/sdk/azcore from 1.14.0 to 1.16.0 by @dependabot in #498
  • Chore(deps): Bump github.com/hashicorp/terraform-plugin-framework-validators from 0.13.0 to 0.14.0 by @dependabot in #496
  • Chore(deps): Bump hashicorp/azurerm from 4.5.0 to 4.6.0 in /examples/resources/powerplatform_billing_policy in the all group across 1 directory by @dependabot in #497
  • Fix powerplatform_dlp_policies by @mawasile in #499
  • Adding powerplatform_environment_group_rule_set by @mawasile in #501
  • Refactor environment API methods for create and update by @mawasile in #503
  • Chore(deps): Bump hashicorp/azurerm from 4.6.0 to 4.7.0 in /examples/resources/powerplatform_billing_policy in the all group across 1 directory by @dependabot in #506
  • Chore(deps): Bump crazy-max/ghaction-import-gpg from 6.1.0 to 6.2.0 in /.github/workflows by @dependabot in #510
  • Updates to documentation by @mattdot in #511

Full Changelog: v3.1.0...v3.2.0

v3.1.0

03 Oct 16:29
5901298
Compare
Choose a tag to compare

What's Changed

  • Chore(deps): Update hashicorp/azuread requirement from ~>2.53 to ~>3.0 in /examples/resources/powerplatform_admin_management_application in the all group across 1 directory by @dependabot in #470
  • Fix Terraform Registry Documentation tree by @mattdot in #475
  • Adding unique_name to powerplatform_environments & powerplatform_environment by @mawasile in #473
  • Fix power platform rest with only destroy by @mattdot in #477
  • powerplatform_environment: environment_type change triggers update not recreate by @mawasile in #469
  • Update environment.md - added link to ERP-base template doc by @webstean in #472
  • Added disable_on_destroy on powerplatform_data_record by @mawasile in #480
  • Prepare for release of v3.1 by @mattdot in #481

New Contributors

Full Changelog: v3.0.0...v3.1.0