Skip to content

Add Opt-In Support for Major OpenShift Version Upgrades via Terraform #744

@vburckhardt

Description

@vburckhardt

Description

Context:
There is a need to support major OpenShift version upgrades (e.g., 4.12 → 4.13) via Terraform. Currently, the kube_version field is included in lifecycle.ignore_changes, which prevents this. While this behavior is intentional to avoid drift due to IBM-managed patch updates, some users manage major upgrades manually and require Terraform to reflect those changes.

Introduce an opt-in mechanism in the module by doing the following steps:

  • Add a new resource variant that excludes lifecycle.ignore_changes on kube_version.
  • This variant should be activated only when explicitly requested by the user (e.g., via a module input variable).
  • The default behavior of the module must remain unchanged: users will continue to receive the resource with ignore_changes enabled unless they opt in.
  • Document the need for a one-time terraform state mv to migrate existing clusters to the new resource. Document also the need to regularly run terraform refresh to accommodate patch changes managed by IBM.

Impact:

  • Enables users with specific operational models to manage major version upgrades via Terraform.
  • Maintains safety defaults for all other users.
  • Requires manual state migration per cluster for those opting in.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions