Skip to content

feat : Add support to specify endpoint of service credentials#851

Merged
vbontempi merged 3 commits intomainfrom
issue_16679
Mar 20, 2026
Merged

feat : Add support to specify endpoint of service credentials#851
vbontempi merged 3 commits intomainfrom
issue_16679

Conversation

@Khuzaima05
Copy link
Member

@Khuzaima05 Khuzaima05 commented Mar 17, 2026

Description

This PR adds endpoint selection support for Redis service credentials created with ibm_resource_key, aligned with the Event Streams implementation pattern.

Reference: Terraform IBM Provider – resource_key parameters

Changes:

  • Updated the ibm_resource_key resource to allow passing the parameters argument so that service credentials can be created for private endpoints (e.g., {"service-endpoints" = "private"}).

issue : https://github.ibm.com/GoldenEye/issues/issues/16679#issue-56112021

Release required?

  • No release
  • Patch release (x.x.X)
  • Minor release (x.X.x)
  • Major release (X.x.x)

Release notes content

Breaking changes

  • Changed service_credential_names input format from map(string) to list(object(...)).
  • Existing configurations using map syntax must be migrated.

New features

  • Added endpoint selection support for service credentials created with ibm_resource_key.
  • Each service credential can now set endpoint to public or private.

Validation updates

  • Added validation for allowed service credential roles.
  • Added validation for allowed endpoint values (public, private).
  • Added cross-validation between service_endpoints and service_credential_names[*].endpoint:
    • service_endpoints = "private" disallows credential endpoint public
    • service_endpoints = "public" disallows credential endpoint private

Migration guide

Old format:

service_credential_names = {
  postgresql_admin    = "Administrator"
  postgresql_operator = "Operator"
  postgresql_viewer   = "Viewer"
}

New format

service_credential_names = [
  {
    name     = "postgresql_admin"
    role     = "Administrator"
    endpoint = "private"
  },
  {
    name     = "postgresql_operator"
    role     = "Operator"
    endpoint = "private"
  },
  {
    name     = "postgresql_viewer"
    role     = "Viewer"
    endpoint = "private"
  }
]

Run the pipeline

If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.

Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:

/run pipeline

Checklist for reviewers

  • If relevant, a test for the change is included or updated with this PR.
  • If relevant, documentation for the change is included or updated with this PR.

For mergers

  • Use a conventional commit message to set the release level. Follow the guidelines.
  • Include information that users need to know about the PR in the commit message. The commit message becomes part of the GitHub release notes.
  • Use the Squash and merge option.

@Khuzaima05
Copy link
Member Author

/run pipeline

@Khuzaima05 Khuzaima05 self-assigned this Mar 17, 2026
@Khuzaima05
Copy link
Member Author

/run pipeline

@Khuzaima05
Copy link
Member Author

Upgrade test is failing due to variable change:

Screenshot 2026-03-17 at 9 51 15 PM

@Khuzaima05
Copy link
Member Author

/run pipeline

Copy link
Contributor

@shemau shemau left a comment

Choose a reason for hiding this comment

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

LGTM

@vbontempi vbontempi merged commit f7cb3e8 into main Mar 20, 2026
2 checks passed
@vbontempi vbontempi deleted the issue_16679 branch March 20, 2026 09:44
@terraform-ibm-modules-ops
Copy link
Contributor

🎉 This PR is included in version 4.11.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants