Skip to content

fix: Caching storage mode validation for modulith and caching service accepts empty password#4805

Open
richard-salac wants to merge 8 commits into
v3.x.xfrom
reboot/fix/caching_service_keyring_and_vsam
Open

fix: Caching storage mode validation for modulith and caching service accepts empty password#4805
richard-salac wants to merge 8 commits into
v3.x.xfrom
reboot/fix/caching_service_keyring_and_vsam

Conversation

@richard-salac

Copy link
Copy Markdown
Contributor

Description

This PR is related to potential issues while upgrading v2 to v3.5.

Issues resolved:

  • When v2 zowe.yaml contains no password for keyring, caching service eureka client does not start. Other apiml components are fine. This PR enables the caching service eureka client (from enabler) start.
  • Modulith requires caching storage mode set to infinispan. If the old installation use different storage mode like vsam, modulith fails to start. This PR adds a validation and prevent APIML from starting if the value is incorrect.

Linked to # (issue)
Part of the # (epic)

Type of change

Please delete options that are not relevant.

  • fix: Bug fix (non-breaking change which fixes an issue)
  • feat: New feature (non-breaking change which adds functionality)
  • docs: Change in a documentation
  • refactor: Refactor the code
  • chore: Chore, repository cleanup, updates the dependencies.
  • BREAKING CHANGE or !: Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

  • My code follows the style guidelines of this project
  • PR title conforms to commit message guideline ## Commit Message Structure Guideline
  • I have commented my code, particularly in hard-to-understand areas. In JS I did provide JSDoc
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • The java tests in the area I was working on leverage @nested annotations
  • Any dependent changes have been merged and published in downstream modules

For more details about how should the code look like read the Contributing guideline

Signed-off-by: Richard Salac <richard.salac@broadcom.com>
Signed-off-by: Richard Salac <richard.salac@broadcom.com>
@richard-salac richard-salac marked this pull request as ready for review July 14, 2026 16:22
################################################################################

print_formatted_debug "ZWELS" "apiml-service,bin/validate.sh:${LINENO}" "- Checking API ML single service caching storage mode is infinispan"
validate_this "(storage_mode=\"\${ZWE_components_caching_service_storage_mode:-\${ZWE_configs_storage_mode}}\"; [ -n \"\$storage_mode\" ] && [ \"\$(printf '%s' \"\$storage_mode\" | tr '[:upper:]' '[:lower:]')\" != \"infinispan\" ] && { echo \"API ML single service requires caching storage mode set to infinispan\"; exit 1; }; true; ) 2>&1" "apiml-service,bin/validate.sh:${LINENO}"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

wouldn't it be more robust and readable if it is written as a script and then pass the string result to the validate_this function?

@richard-salac richard-salac Jul 15, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Agreed. It's beautified.

@sonarqubecloud

Copy link
Copy Markdown

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.

3 participants