Skip to content

v17.0.0 - Irrawaddy

Latest
Compare
Choose a tag to compare
@elnyry-sam-k elnyry-sam-k released this 27 Mar 18:58
· 10 commits to main since this release
c1ab7f7

Helm Release Notes

Date Revision Description
2025-03-25 0 Initial draft
2025-03-28 0 Initial release

0. Summary

Enhancements and breaking changes to the v16.0.4 Release and v16.0.0 Release releases, which include:

  1. FX feature support in Mojaloop: https://docs.mojaloop.io/product/features/fx.html
  2. ISO 20022 messages supported in Mojaloop: https://github.com/mojaloop/iso-20022-docs/blob/main/Workstream%20documents/MarketPracticeDoc/MarketPracticeDocument.md
  3. Inter-scheme supported: https://docs.mojaloop.io/product/features/interscheme.html
  4. Mojaloop FSPIOP API 2.0 now supported (FX, inter-scheme included in)
  5. General maintenance: bug fixes, updates to license headers and license files for compliance and Nodejs upgrades
  6. Performance improvements in Central Ledger via batching of prepare, filfill messages including error scenarios. Batching now natively supported with batch-size being configurable.
  7. Merchant payments enhancements (adjacent)

Notes:
Release issue for reference: mojaloop/project#3847
Guidance for upgrade: https://docs.mojaloop.io/technical/technical/deployment-guide/upgrade-strategy-guide.html

1. New Features

2. Bug Fixes

3. Application Versions

  1. central-event-processor: v12.1.0 -> v12.1.1 (Compare)
  2. bulk-api-adapter: v17.0.0 -> v17.1.9 (Compare)
  3. event-sidecar: v14.0.0 -> v14.0.3 (Compare)
  4. ml-testing-toolkit-ui: v15.4.2 -> v16.2.0 (Compare)
  5. als-oracle-pathfinder: v12.1.0 -> v12.1.3 (Compare)
  6. auth-service: v15.0.0 -> v15.1.2 (Compare)
  7. ml-testing-toolkit: v17.1.1 -> v18.11.0 (Compare)
  8. als-msisdn-oracle-svc: -> v0.0.14 (Compare)
  9. transaction-requests-service: v14.1.2 -> v14.3.9 (Compare)
  10. ml-api-adapter: v14.0.5 -> v16.3.2 (Compare)
  11. ml-testing-toolkit-client-lib: v1.2.2 -> v1.9.0 (Compare)
  12. sdk-scheme-adapter: v23.4.0 -> v24.6.2 (Compare)
  13. mojaloop-simulator: v15.0.0 -> v15.3.0 (Compare)
  14. thirdparty-api-svc: v14.0.0 -> v15.0.2 (Compare)
  15. als-consent-oracle: v0.2.2 -> v1.0.1 (Compare)
  16. account-lookup-service: v15.2.3 -> v17.6.0 (Compare)
  17. simulator: v12.1.0 -> v12.2.5 (Compare)
  18. inter-scheme-proxy-adapter: -> v1.4.1 (Compare)
  19. quoting-service: v15.7.0 -> v17.6.0 (Compare)
  20. central-ledger: v17.6.1 -> v19.3.0 (Compare)
  21. thirdparty-sdk: v15.1.1 -> v15.1.3 (Compare)
  22. event-stream-processor: v12.0.0-snapshot.9 -> v12.0.0-snapshot.14 (Compare)
  23. central-settlement: v16.0.0 -> v17.0.6 (Compare)
  24. email-notifier: v14.0.0 -> v14.0.3 (Compare)

4. API Versions

This release supports the following versions of the Mojaloop family of APIs:

API Supported Versions Notes
FSPIOP v1.1, v2.0
Settlements v2.0
Admin v1.0
ALS Oracle v1.0
Thirdparty v1.0

5. Testing notes

  1. This release has been validated against the following Dependency Test Matrix:

    Dependency Version Notes
    Kubernetes v1.32 AWS EKS, AWS EKS Supported Version Notes
    containerd v1.7.25
    Nginx Ingress Controller helm-ingress-nginx-4.7.0 / ingress-controller-v1.8.0
    Amazon Linux v2
    MySQL bitnami/mysql:8.0.36-debian-11-r4
    Kafka bitnami/kafka:3.9.0-debian-12-r12
    Redis bitnami/redis:7.4.2-debian-12-r6
    Redis Cache bitnami/redis-cluster:7.2.5-debian-12-r3
    MongoDB bitnami/mongodb:8.0.6-debian-12-r0
    Nodejs 18.20.6
    Testing Toolkit Test Cases v17.0.0
    example-mojaloop-backend v17.0.0 README
  2. It is recommended that all Mojaloop deployments are verified using the Mojaloop Testing Toolkit. More information can be found in the Mojaloop Deployment Guide.

  3. The testing-toolkit-test-cases (See above Dependency Test Matrix for exact version required for this release) Golden Path collections expects:

    • the Quoting service operating mode to be set quoting-service.config.simple_routing_mode_enabled=true (in helm mojaloop/values.yaml under quoting-service config). If this is incorrectly configured, it will result in several failures in the quoting-service tests (7 expected failures). If this is disabled, ensure that you update the corresponding test-case environment variable parameter SIMPLE_ROUTING_MODE_ENABLED ( in helm mojaloop/values.yaml ml-testing-toolkit -> extraEnvironments.hub-k8s-default-environment.json.inputValues) to match.
    • the on-us transfers (in mojaloop/values.yaml "enable_on_us_transfers: false" under centralledger-handler-transfer-prepare -> config and cl-handler-bulk-transfer-prepare -> config) configuration to be disabled. The test-case environment variable parameter (ON_US_TRANSFERS_ENABLED (in helm mojaloop/values.yaml ml-testing-toolkit -> extraEnvironments.hub-k8s-default-environment.json.inputValues), the same name used on postman collections) must similarly match this value.
  4. Simulators

    • We recommend using Testing Toolkit instead of Postman which is better suited for the async nature of the Mojaloop API specification (see above)
    • Mojaloop-Simulator is enabled by default (six instances used for single transfers usually and three more specific to bulk).
    • The Mojaloop Testing Toolkit is used to simulate FSPs for several test cases in the test collections and these can be run from the TTK UI or command line (CLI) options
    • Legacy Simulators are still required and deployed by default; disabling this will cause issues since there is Account Lookup directory mocking functionality in this service.
  5. Thirdparty Testing Toolkit Test Collections are not repeatable. Please refer to the following issue for more information #2717 - Thirdparty TTK Test-Collection is not repeatable. It is possible to manually cleanup persistent data to re-run the test if required.

  6. Bulk API Helm Tests

    Refer to the Testing Deployments section in the main README for detailed information on how to enable bulk-api-adapter tests.

  7. Thirdparty API Helm Tests

    Refer to thirdparty/README.md#validating-and-testing-the-3p-api on how to enabled and execute Thirdparty verification tests.

  8. Testing the Bulk functionality including "sdk-scheme-adapter"

    For details regarding deployment and validation of simulators needed for bulk (for adoption provided in sdk-scheme-adapter) refer to deploying Mojaloop TTK simulators.

  9. Sample / reference test results for scenarios run with Mojaloop v17.0.0 on a dev environment: mojaloop/project#3847 (comment)

6. Configuration Options:

Mojaloop Helm deployments currently include the following configuration options:

Helm Test Test Cases Description Enabled by default? Notes
ml-ttk-test-setup.tests hub/provisioning Standard Provisioning Collection Yes Required as a pre-requisite for all tests.
ml-ttk-test-val-gp hub/golden_path Golden-Path (GP) Test Collection FSPIOP Mode Yes Previously named ml-ttk-test-validation prior to v13.1.0 release.
ml-ttk-test-val-gp (ISO) hub/golden_path Golden-Path (GP) Test Collection ISO20022 Mode No api_type: &API_TYPE "iso20022", ttk_transformer_name: &TTK_TRANSFORMER_NAME "fspiopToISO20022", SDK_ILP_VERSION: &SDK_ILP_VERSION "4", validCondition: &validCondition "$param_validConditionV4", ilpPacket: &ilpPacket "$param_validIlpPacketV4", validFulfillment: &validFulfillment "$param_validFulfillmentV4" This configuration needs to be set while disabling API_TYPE=fspiop.
ml-ttk-test-setup-interscheme hub/inter_scheme Inter-scheme Provisioning Collection No interscheme_enabled: true. This configuration needs to be set along with cl_payee_participant_currency_validation_enabled: false (otherwise tests fail; to confirm payee fsp validation is disabled in inter-scheme mode).
ml-ttk-test-val-interscheme hub/inter_scheme Inter-scheme Test Collection No interscheme_enabled: true. This configuration needs to be set along with cl_payee_participant_currency_validation_enabled: false (otherwise tests fail; to confirm payee fsp validation is disabled in inter-scheme mode).
ml-ttk-test-val-bulk hub/other_tests/bulk_transfers Bulk Test Collection No mojaloop-bulk.enabled=true must be set to deploy the Bulk-API-Adapter components.
ml-ttk-test-setup-sdk-bulk hub/provisioning_sdkbulk SDK Bulk Provisioning Collection No mojaloop-bulk.enabled=true & mojaloop-ttk-simulators.enabled=true must be set to deploy the Bulk-API-Adapter and TTK Simulators components.
ml-ttk-test-val-sdk-bulk hub/sdk_scheme_adapter/bulk SDK Bulk Test Collection No mojaloop-bulk.enabled=true & mojaloop-ttk-simulators.enabled=true must be set to deploy Bulk-API-Adapter and TTK Simulators components. components.
ml-ttk-test-val-sdk-r2p hub/sdk_scheme_adapter/request-to-pay SDK Request To Pay Test Collection No mojaloop-ttk-simulators.enabled=true must be set to deploy the TTK Simulators components. components.
ml-ttk-test-setup-tp hub/provisioning_thirdparty Thirdparty Provisioning Collection No thirdparty.enabled=true, account-lookup-service.account-lookup-service.config.featureEnableExtendedPartyIdType=true & account-lookup-service.account-lookup-service-admin.config.featureEnableExtendedPartyIdType=true must be set to deploy the Thirdparty components.
ml-ttk-test-val-tp hub/thirdparty Thirdparty Test Collection No thirdparty.enabled=true, account-lookup-service.account-lookup-service.config.featureEnableExtendedPartyIdType=true & account-lookup-service.account-lookup-service-admin.config.featureEnableExtendedPartyIdType=true must be set to deploy the Bulk-API-Adapter components.
ml-ttk-test-cleanup hub/cleanup Cleanup Collection Yes Post cleanup scripts, e.g. executes position reset test collection. Note that ml-ttk-test-cleanup.test.config.saveReport is disabled by default.

7. Breaking Changes

central-ledger

  • Configuration changes in central-ledger config files
  • Database changes to central-ledger to support new features (FX, Inter-scheme, ISO 20022 messaging)

ml-api-adapter

  • Configuration changes
  • API changes to support FSPIOP 2.0 and ISO 20022 messaging

bulk-api-adapter

  • Configuration changes
  • API changes to support FSPIOP 2.0 and ISO 20022 messaging

transaction-requests-service

  • Configuration changes
  • API changes to support FSPIOP 2.0

quoting-service

  • Configuration changes
  • API changes to support FSPIOP 2.0 and ISO 20022 messaging

account-lookup-service

  • Configuration changes
  • API changes to support FSPIOP 2.0 and ISO 20022 messaging

8. Known Issues

  1. #2119 - Idempotency for duplicate quote request - Mitigation: this is not critical and only applies in persistent mode; will cause error even in persistent mode
  2. #2322 - Helm install failing with with "medium to large" release names: Use release names within the character limit
  3. #2317 - Mojaloop Helm deployments are not compatible when deployed to ARM-arch based hosts: Mitigation: Not a significant issue anymore as scripts are provided to build images for various architectures
  4. #2435 - Quoting-Service is incorrectly handling failed responses to FSPs when forwarding requests: Mitigation: low severity and still causes errors (and times-out )
  5. Test issues causing instability/intermitant failures on Test Case Results (No repro so far with v17 but keeping open in case an occurence comes up)
    1. #2717 - Thirdparty TTK Test-Collection is not repeatable
    2. #2925 - Helm Test Intermittent failure with 'Generic ID not found

9. Contributors

Note: names are listed in alphabetical order.

Full Changelog: v16.0.4...v17.0.0