Skip to content

feat : Added Event Streams DA (Standard and Security-Enforced Variation) #397

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 23 commits into
base: main
Choose a base branch
from

Conversation

Khuzaima05
Copy link
Member

@Khuzaima05 Khuzaima05 commented May 5, 2025

Description

Added Event Streams DA (Standard and Security-Enforced Variation)

issue: https://github.ibm.com/GoldenEye/issues/issues/13014 , https://github.ibm.com/GoldenEye/issues/issues/13484,
https://github.ibm.com/GoldenEye/issues/issues/13582

Release required?

  • No release
  • Patch release (x.x.X)
  • Minor release (x.X.x)
  • Major release (X.x.x)
Release notes content

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 Khuzaima05 self-assigned this May 5, 2025
@Khuzaima05
Copy link
Member Author

/run pipeline

@Khuzaima05
Copy link
Member Author

/run pipeline

@Khuzaima05 Khuzaima05 changed the title [WIP] feat : Added Event Streams DA (Fully configurable variations) [WIP] feat : Added Event Streams DA (Standard and Security-Enforced Variation) May 14, 2025
@Khuzaima05
Copy link
Member Author

The upgrade test is failing because it clones the main branch and looks for the standard DA repo, which doesn’t exist in main yet—we’re introducing it in our current branch. The main branch only contains the quickstart and enterprise DAs, which we’ve are updating. Hence, we are skipping the upgrade test.

Screenshot 2025-05-14 at 2 16 17 PM

@Khuzaima05
Copy link
Member Author

/run pipeline

1 similar comment
@Khuzaima05
Copy link
Member Author

/run pipeline

@Khuzaima05
Copy link
Member Author

/run pipeline

@Khuzaima05 Khuzaima05 marked this pull request as ready for review May 14, 2025 16:39
@Khuzaima05 Khuzaima05 requested review from Ak-sky and akocbek as code owners May 14, 2025 16:39
@Khuzaima05 Khuzaima05 changed the title [WIP] feat : Added Event Streams DA (Standard and Security-Enforced Variation) feat : Added Event Streams DA (Standard and Security-Enforced Variation) May 14, 2025
@Khuzaima05
Copy link
Member Author

Catalog Tile Overview and Features:

Screenshot 2025-05-14 at 10 27 38 PM

Security Enforced Variant:

Screenshot 2025-05-14 at 10 28 40 PM Screenshot 2025-05-14 at 10 29 05 PM

Standard Variant:

Screenshot 2025-05-14 at 10 31 24 PM Screenshot 2025-05-14 at 10 31 34 PM

@Khuzaima05
Copy link
Member Author

/run pipeline

@Khuzaima05
Copy link
Member Author

/run pipeline

@Khuzaima05
Copy link
Member Author

/run pipeline

@Khuzaima05
Copy link
Member Author

/run pipeline

@Khuzaima05
Copy link
Member Author

/run pipeline

@Khuzaima05
Copy link
Member Author

/run pipeline

@ocofaigh
Copy link
Contributor

@Khuzaima05 Can we re-discuss the variation name "Standard" on tomorrow deep dive? I would really like to find a better name, but as we dicsussed "Fully configurable" doesn't make sense in this case

@ocofaigh
Copy link
Contributor

As per deep dive, 2 variation names should be:

  • Quickstart
  • Security-enforced

@Khuzaima05
Copy link
Member Author

/run pipeline

Copy link
Member

@Ak-sky Ak-sky left a comment

Choose a reason for hiding this comment

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

  • Left few comments, also need to update the URL in variables in exisitng code to use security-enforced instead of enterprise.
  • Few typos below needs to be fixed, PR in progress to add codespell to check for typos.

modules/fscloud/variables.tf:10: Steams ==> Streams
modules/fscloud/variables.tf:16: Steams ==> Streams
solutions/quickstart/README.md:45: Steams ==> Streams
solutions/quickstart/README.md:46: Steams ==> Streams
examples/basic/variables.tf:27: Steams ==> Streams
examples/fscloud/variables.tf:27: Steams ==> Streams
modules/fscloud/README.md:29: Steams ==> Streams
modules/fscloud/README.md:47: Steams ==> Streams
solutions/quickstart/main.tf:37: intance ==> instance, intense
README.md:164: Steams ==> Streams
solutions/security-enforced/variables.tf:66: Steams ==> Streams
solutions/security-enforced/variables.tf:72: Steams ==> Streams
solutions/security-enforced/README.md:5: wan't ==> want, wasn't
solutions/security-enforced/README.md:12: instace ==> instance
solutions/security-enforced/README.md:57: Steams ==> Streams
solutions/security-enforced/README.md:58: Steams ==> Streams
variables.tf:27: Steams ==> Streams
examples/complete/variables.tf:27: Steams ==> Streams
examples/complete/variables.tf:33: Steams ==> Streams
solutions/security-enforced/main.tf:169: intance ==> instance, intense
solutions/quickstart/variables.tf:76: Steams ==> Streams
solutions/quickstart/variables.tf:82: Steams ==> Streams

variable "topics" {
type = list(object(
{
name = string
partitions = number
config = map(string)
config = object({})
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
config = object({})
config = map(string)

Refer this.

"prefix": $PREFIX,
"resource_group_name": $PREFIX,
"existing_resource_group_name": $PREFIX,
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
"existing_resource_group_name": $PREFIX,
"existing_resource_group_name": "geretain-test-event-streams",


## Prerequisites
- An existing resource group
- An existing KMS instance (or key) if you wan't to encrypt the Event Streams instance.
Copy link
Member

Choose a reason for hiding this comment

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

Here it should not be if as this is security-enforced variation.

TF_VAR_provider_visibility: "public"
TF_VAR_use_existing_resource_group: false
TF_VAR_kms_endpoint_type: "public"
TF_VAR_prefix: "test"
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
TF_VAR_prefix: "test"
TF_VAR_prefix: "test-se"

CRA_IGNORE_RULES_FILE: "cra-tf-validate-ignore-rules.json" # CRA Ignore file to use. If not provided, it checks the repo root directory for `cra-tf-validate-ignore-rules.json`
PROFILE_ID: "fe96bd4d-9b37-40f2-b39f-a62760e326a3" # SCC profile ID (currently set to 'IBM Cloud Framework for Financial Services' '1.7.0' profile).
CRA_ENVIRONMENT_VARIABLES:
TF_VAR_existing_kms_instance_crn: "crn:v1:bluemix:public:hs-crypto:us-south:a/abac0df06b644a9cabc6e44f55b3880e:e6dce284-e80f-46e1-a3c1-830f7adff7a9::"
TF_VAR_resource_group_name: "test-event-s-cra"
TF_VAR_existing_resource_group_name: "Default"
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
TF_VAR_existing_resource_group_name: "Default"
TF_VAR_existing_resource_group_name: "geretain-test-event-streams"

default = []
description = "Service credential secrets configuration for Event Streams. [Learn more](https://github.com/terraform-ibm-modules/terraform-ibm-event-streams/tree/main/solutions/quickstart/DA-types.md#service-credential-secrets)."
nullable = false
description = "Service credential secrets configuration for Event Streams. [Learn more](https://github.com/terraform-ibm-modules/terraform-ibm-event-streams/tree/main/solutions/enterprise/DA-types.md#service-credential-secrets)."
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
description = "Service credential secrets configuration for Event Streams. [Learn more](https://github.com/terraform-ibm-modules/terraform-ibm-event-streams/tree/main/solutions/enterprise/DA-types.md#service-credential-secrets)."
description = "Service credential secrets configuration for Event Streams. [Learn more](https://github.com/terraform-ibm-modules/terraform-ibm-event-streams/tree/main/solutions/security-enforced/DA-types.md#service-credential-secrets)."

- Topics to apply to resources.
- Schemas to apply to resources.
- Mirroring of existing event stream instace.

Copy link
Member

Choose a reason for hiding this comment

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

Missing points on

  • Quotas
  • Metrices

})))
})
}))
description = "The list of schema objects. Include the `schema_id`, `type` and `name` of the schema in the `schema` object. Learn more: https://github.com/terraform-ibm-modules/terraform-ibm-event-streams/tree/main/solutions/enterprise/DA-schemas-topics-cbr.md#options-with-schemas."
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
description = "The list of schema objects. Include the `schema_id`, `type` and `name` of the schema in the `schema` object. Learn more: https://github.com/terraform-ibm-modules/terraform-ibm-event-streams/tree/main/solutions/enterprise/DA-schemas-topics-cbr.md#options-with-schemas."
description = "The list of schema objects. Include the `schema_id`, `type` and `name` of the schema in the `schema` object. Learn more: https://github.com/terraform-ibm-modules/terraform-ibm-event-streams/tree/main/solutions/security-enforced/DA-schemas-topics-cbr.md#options-with-schemas."

@@ -139,6 +134,36 @@ variable "quotas" {
default = []
}

variable "service_credential_names" {
description = "The mapping of names and roles for service credentials that you want to create for the Event streams.[Learn more](https://github.com/terraform-ibm-modules/terraform-ibm-event-streams/tree/main/solutions/enterprise/DA-types.md#svc-credential-name)"
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
description = "The mapping of names and roles for service credentials that you want to create for the Event streams.[Learn more](https://github.com/terraform-ibm-modules/terraform-ibm-event-streams/tree/main/solutions/enterprise/DA-types.md#svc-credential-name)"
description = "The mapping of names and roles for service credentials that you want to create for the Event streams.[Learn more](https://github.com/terraform-ibm-modules/terraform-ibm-event-streams/tree/main/solutions/security-enforced/DA-types.md#svc-credential-name)"

}))) }))
enforcement_mode = string
}))
description = "A single context-based restriction rule to create. [Learn more](https://github.com/terraform-ibm-modules/terraform-ibm-event-streams/tree/main/solutions/enterprise/DA-schemas-topics-cbr.md#options-with-cbr)."
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
description = "A single context-based restriction rule to create. [Learn more](https://github.com/terraform-ibm-modules/terraform-ibm-event-streams/tree/main/solutions/enterprise/DA-schemas-topics-cbr.md#options-with-cbr)."
description = "A single context-based restriction rule to create. [Learn more](https://github.com/terraform-ibm-modules/terraform-ibm-event-streams/tree/main/solutions/security-enforced/DA-schemas-topics-cbr.md#options-with-cbr)."

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.

3 participants