Skip to content

Conversation

@bryantbiggs
Copy link
Member

@bryantbiggs bryantbiggs commented Nov 10, 2025

Description

List of backwards incompatible changes

  • Terraform v1.5.7 is now minimum supported version
  • AWS provider v6.19 is now minimum supported version
  • Kubernetes provider v2.38 is now minimum supported version (EMR on EKS virtual cluster sub-module)
  • aws_security_group_rule resources have been split into aws_vpc_security_group_ingress_rule and aws_vpc_security_group_egress_rule resources to better match the AWS API and allow for more flexibility in defining security group rules. Prior variable names of *_security_group_rules have been split into *_security_group_ingress_rules and *_security_group_egress_rules to match.

Additional changes

Added

  • Support for region parameter to specify the AWS region for the resources created if different from the provider region.

Modified

  • Variable definitions now contain detailed object types in place of the previously used any type.
  • Ensure data sources are gated behind create flags to prevent unnecessary API calls.
  • release_label_filters.prefix now defaults to emr-7, was previously emr-6.
  • unhealthy_node_replacement now defaults to true
  • aws_service_principal data source is now used to fetch the correct service principals (instead of trying to construct them psuedo-manually with the DNS suffix).

Variable and output changes

  1. Removed variables:

    • serverless sub-module

      • None
    • studio sub-module

      • None
    • virtual_cluster sub-module

  2. Renamed variables:

    • master_security_group_rules -> master_security_group_ingress_rules and master_security_group_egress_rules

    • slave_security_group_rules -> slave_security_group_ingress_rules and slave_security_group_egress_rules

    • service_security_group_rules -> service_security_group_ingress_rules and service_security_group_egress_rules

    • serverless sub-module

      • security_group_rules -> security_group_ingress_rules and security_group_egress_rules
      • release_label_prefix -> release_label_filters
    • studio sub-module

      • engine_security_group_rules -> engine_security_group_ingress_rules and engine_security_group_egress_rules
      • workspace_security_group_rules -> workspace_security_group_ingress_rules and workspace_security_group_egress_rules
    • virtual_cluster sub-module

      • eks_cluster_id -> eks_cluster_name to better match API of EKS module/resources
      • oidc_provider_arn -> eks_oidc_provider_arn for clarity to show its related to EKS authentication
  3. Added variables:

    • os_release_label

    • serverless sub-module

      • monitoring_configuration
      • runtime_configuration
      • scheduler_configuration
    • studio sub-module

      • None
    • virtual_cluster sub-module

      • cloudwatch_log_group_class

Motivation and Context

Breaking Changes

  • Yes

How Has This Been Tested?

  • I have updated at least one of the examples/* to demonstrate and validate my change(s)
  • I have tested and validated these changes using one or more of the provided examples/* projects
  • I have executed pre-commit run -a on my pull request

@bryantbiggs bryantbiggs marked this pull request as ready for review November 14, 2025 20:21
@bryantbiggs bryantbiggs changed the title feat!: Upgrade AWS provider and min required Terraform version to 6.2 and 1.5.7 respectively feat!: Upgrade AWS provider and min required Terraform version to 6.19 and 1.5.7 respectively Nov 14, 2025
Copy link
Member

@antonbabenko antonbabenko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, minor things

# Only the affected attributes are shown

# Copy and paste from output to maintain backwards compatibility
# This was added by the AWS Redshift API and provider in v6.x
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Redshift?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

too many modules at once 😅 - corrected in e6b4943

@bryantbiggs bryantbiggs merged commit a674683 into master Nov 14, 2025
13 checks passed
@bryantbiggs bryantbiggs deleted the feat/upgrade branch November 14, 2025 21:35
antonbabenko pushed a commit that referenced this pull request Nov 14, 2025
## [3.0.0](v2.4.3...v3.0.0) (2025-11-14)

### ⚠ BREAKING CHANGES

* Upgrade AWS provider and min required Terraform version to `6.19` and `1.5.7` respectively (#45)

### Features

* Upgrade AWS provider and min required Terraform version to `6.19` and `1.5.7` respectively ([#45](#45)) ([a674683](a674683))
@antonbabenko
Copy link
Member

This PR is included in version 3.0.0 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add support for Runtime and Monitoring configuring in aws_emrserverless_application Add SchedulerConfiguration to EMR serverless module

3 participants