diff --git a/.changelog/release-v15.2.0.md b/.changelog/release-v15.2.0.md index c6b8959b9..47b01b859 100644 --- a/.changelog/release-v15.2.0.md +++ b/.changelog/release-v15.2.0.md @@ -6,7 +6,6 @@ Date | Revision | Description 2023-10-31 | 1 | RC.1 2023-11-03 | 2 | Release -- For *BREAKING CHANGES*, please review the section `#5` "Breaking Changes" below. - For *KNOWN ISSUES*, please review the section `#8` "Known Issues" below. ## 0. Summary @@ -96,8 +95,8 @@ Enhancements and non-breaking changes to the [v15.1.0 Release](https://github.co 14. mojaloop-simulator: v14.0.1 -> [v15.0.0](https://github.com/mojaloop/mojaloop-simulator/releases/tag/v15.0.0) ([Compare](https://github.com/mojaloop/event-sidecar/compare/v14.0.1...v15.0.0)) 15. sdk-scheme-adapter: v23.0.1 -> [v23.1.1](https://github.com/mojaloop/sdk-scheme-adapter/releases/tag/v23.1.1) ([Compare](https://github.com/mojaloop/sdk-scheme-adapter/compare/v23.0.1...v23.1.1)) 16. ml-testing-toolkit: v16.1.1 -> [v17.0.0](https://github.com/mojaloop/ml-testing-toolkit/releases/tag/v17.0.0) ([Compare](https://github.com/mojaloop/sml-testing-toolkit/compare/v16.1.1...v17.0.0)) -17. ml-testing-toolkit-ui: [v15.4.0](https://github.com/mojaloop/ml-testing-toolkit-ui/releases/tag/v15.3.0)22. ml-testing-toolkit-client-lib: [v1.2.0](https://github.com/mojaloop/ml-testing-toolkit-client-lib/releases/tag/v1.2.0) -18. ml-testing-toolkit-client-lib: v1.2.0 -> [v1.2.1](https://github.com/mojaloop/ml-testing-toolkit-client-lib/releases/tag/v1.2.1) ([Compare](https://github.com/mojaloop/ml-testing-toolkit-ui/compare/v1.2.0...v1.2.1)) +17. ml-testing-toolkit-ui: [v15.4.0](https://github.com/mojaloop/ml-testing-toolkit-ui/releases/tag/v15.3.0) +18. ml-testing-toolkit-client-lib: [v1.2.0](https://github.com/mojaloop/ml-testing-toolkit-client-lib/releases/tag/v1.2.0) 19. auth-service: v14.0.0 -> [v15.0.0](https://github.com/mojaloop/auth-service/releases/tag/v15.0.0) ([Compare](https://github.com/mojaloop/auth-service/compare/v14.0.0...v15.0.0)) 20. als-consent-oracle: v0.2.0 -> [v0.2.2](https://github.com/mojaloop/als-consent-oracle/releases/tag/v0.2.2) ([Compare](https://github.com/mojaloop/als-consent-oracle/compare/v0.2.0...v0.2.2)) 21. thirdparty-api-svc: v13.0.2 -> [v14.0.0](https://github.com/mojaloop/thirdparty-api-svc/releases/tag/v14.0.0) ([Compare](https://github.com/mojaloop/thirdparty-api-svc/compare/v13.0.2...v14.0.0)) diff --git a/.changelog/release-v15.3.0.md b/.changelog/release-v15.3.0.md new file mode 100644 index 000000000..e10bdef0a --- /dev/null +++ b/.changelog/release-v15.3.0.md @@ -0,0 +1,127 @@ +# Helm Release Notes + +Date | Revision | Description +---------|----------|--------- + 2023-11-22 | 0 | Initial draft + +- For *KNOWN ISSUES*, please review the section [#6](#6-known-issues) "Known Issues" below. + +## 0. Summary + +Enhancements and non-breaking changes to the [v15.2.0 Release](https://github.com/mojaloop/helm/blob/master/.changelog/release-v15.2.0.md), which includes: + +Performance improvement with the inclusion of _Batch Prepare Handler_ for _Position Prepare_ messages in Central Ledger based on performance characterisation done + +## 1. New Features + +1. **Performance improvement with batching (position prepare):** + * **mojaloop/#3488** Fix the transfer batching design for the position handler [documentation](https://github.com/mojaloop/documentation/pull/415) + * **mojaloop/#3489** Implement the batching design for position prepare messages [central-ledger](https://github.com/mojaloop/central-ledger/pull/454), closes [mojaloop/3489](https://github.com/mojaloop/project/issues/3489) + * **mojaloop/#3577** Add batch handler [helm](https://github.com/mojaloop/helm/pull/582), closes [mojaloop/3577](https://github.com/mojaloop/project/issues/3577) + +## 2. Bug Fixes +1. * **mojaloop/#3581** The notification message published by batch handler is not forwarding the headers properly [central-ledger](https://github.com/mojaloop/central-ledger/pull/968), closes [mojaloop/3581](https://github.com/mojaloop/project/issues/3581) +2. * **mojaloop/#3582** Batch Implementation - Improper error callbacks generated by switch [central-ledger](https://github.com/mojaloop/central-ledger/pull/968), closes [mojaloop/3581](https://github.com/mojaloop/project/issues/3582) +3. * **mojaloop/#3660** Investigate and fix flaky tests in Helm v15.3.0 RC [testing-toolkit-test-cases](https://github.com/mojaloop/testing-toolkit-test-cases/pull/133), closes [mojaloop/3660](https://github.com/mojaloop/project/issues/3660) + +## 3. Application versions + +1. central-ledger: v17.3.2 -> [v17.4.0]((https://github.com/mojaloop/central-ledger/releases/tag/v17.4.0)) ([Compare](https://github.com/mojaloop/central-ledger/compare/v17.3.2...v17.4.0)) +2. ml-api-adapter: [v14.0.5](https://github.com/mojaloop/ml-api-adapter/releases/tag/v14.0.5) +3. account-lookup-service: [v15.0.0](https://github.com/mojaloop/account-lookup-service/releases/tag/v15.0.0) +4. quoting-service: [v15.5.0](https://github.com/mojaloop/quoting-service/releases/tag/v15.5.0) +5. central-settlement: [v16.0.0](https://github.com/mojaloop/central-settlement/releases/tag/v16.0.0) +6. bulk-api-adapter: [v17.0.0](https://github.com/mojaloop/bulk-api-adapter/releases/tag/v17.0.0) +7. central-event-processor: [v12.0.0](https://github.com/mojaloop/central-event-processor/releases/tag/v12.0.0) +8. email-notifier: [v14.0.0](https://github.com/mojaloop/email-notifier/releases/tag/v14.0.0) +9. als-oracle-pathfinder: [v12.0.0](https://github.com/mojaloop/als-oracle-pathfinder/releases/tag/v12.0.0) +10. transaction-requests-service: [v14.1.2](https://github.com/mojaloop/transaction-requests-service/releases/tag/v14.1.2) +11. event-sidecar: [v14.0.0](https://github.com/mojaloop/event-sidecar/releases/tag/v14.0.0) +12. event-stream-processor: [v12.0.0-snapshot.7](https://github.com/mojaloop/event-stream-processor/releases/v12.0.0-snapshot.7) +13. simulator: [12.0.0](https://github.com/mojaloop/simulator/releases/tag/v12.0.0) +14. mojaloop-simulator: [v15.0.0](https://github.com/mojaloop/mojaloop-simulator/releases/tag/v15.0.0) +15. sdk-scheme-adapter: [v23.1.1](https://github.com/mojaloop/sdk-scheme-adapter/releases/tag/v23.1.1) +16. ml-testing-toolkit: [v17.0.0](https://github.com/mojaloop/ml-testing-toolkit/releases/tag/v17.0.0) +17. ml-testing-toolkit-ui: [v15.4.0](https://github.com/mojaloop/ml-testing-toolkit-ui/releases/tag/v15.3.0) +18. ml-testing-toolkit-client-lib: [v1.2.0](https://github.com/mojaloop/ml-testing-toolkit-client-lib/releases/tag/v1.2.0) +19. auth-service: [v15.0.0](https://github.com/mojaloop/auth-service/releases/tag/v15.0.0) +20. als-consent-oracle: [v0.2.2](https://github.com/mojaloop/als-consent-oracle/releases/tag/v0.2.2) +21. thirdparty-api-svc: [v14.0.0](https://github.com/mojaloop/thirdparty-api-svc/releases/tag/v14.0.0) +22. thirdparty-sdk: v15.1.0 -> [v15.1.1](https://github.com/mojaloop/thirdparty-sdk/releases/tag/v15.1.1) + +## 4. API Versions + +This release supports the following versions of the [Mojaloop family of APIs](https://docs.mojaloop.io/api): + +| API | Supported Versions | Notes | +| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ----- | +| FSPIOP | [v1.1](https://docs.mojaloop.io/api/fspiop/v1.1/api-definition.html), [v1.0](https://docs.mojaloop.io/api/fspiop/v1.0/api-definition.html) | | +| Settlements | [v2.0](https://docs.mojaloop.io/api/settlement) | | +| Admin | [v1.0](https://docs.mojaloop.io/api/administration/central-ledger-api.html) | | +| Oracle | [v1.0](https://docs.mojaloop.io/legacy/api/als-oracle-api-specification.html) | | +| Thirdparty | [v1.0](https://docs.mojaloop.io/api/thirdparty) | | + +## 5. Testing notes + +1. This release has been validated against the following Dependency Test Matrix: + + | Dependency | Version | Notes | + | ---------- | ------- | --- | + | Kubernetes | v1.28 | [AWS EKS](https://aws.amazon.com/eks/), [AWS EKS Supported Version Notes](https://docs.aws.amazon.com/eks/latest/userguide/kubernetes-versions.html) | + | containerd | v1.6.19 | | + | Nginx Ingress Controller | [helm-ingress-nginx-4.7.0](https://github.com/kubernetes/ingress-nginx/releases/tag/helm-chart-4.7.0) / [ingress-controller-v1.8.0](https://github.com/kubernetes/ingress-nginx/releases/tag/controller-v1.8.0) | | + | Amazon Linux | v2 | | + | MySQL | bitnami/mysql:8.0.32-debian-11-r0 | | + | Kafka | bitnami/kafka:3.3.1-debian-11-r1 | | + | Redis | bitnami/redis:7.0.5-debian-11-r7 | | + | MongoDB | bitnami/mongodb:6.0.2-debian-11-r11 | | + | Testing Toolkit Test Cases | [v15.3.0](https://github.com/mojaloop/testing-toolkit-test-cases/releases/tag/v15.3.0) | | + | example-mojaloop-backend | v15.0.0 | [README](https://github.com/mojaloop/helm/blob/master/example-mojaloop-backend/README.md) | + +2. It is recommended that all Mojaloop deployments are verified using the [Mojaloop Testing Toolkit](https://docs.mojaloop.io/documentation/mojaloop-technical-overview/ml-testing-toolkit/). More information can be found in the [Mojaloop Deployment Guide](https://docs.mojaloop.io/documentation/deployment-guide). + +3. The [testing-toolkit-test-cases](https://github.com/mojaloop/testing-toolkit-test-cases/releases) (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](https://github.com/mojaloop/mojaloop-simulator) is enabled by default (six instances used for single transfers usually and three more specific to bulk). + - Ensure that correct Postman Scripts are used if you wish to test against the Mojaloop-Simulators using Postman: + - Setup Mojaloop Hub: [MojaloopHub_Setup](https://github.com/mojaloop/postman/blob/v12.0.0/MojaloopHub_Setup.postman_collection.json) + - Setup Mojaloop Simulators for testing : [MojaloopSims_Onboarding](https://github.com/mojaloop/postman/blob/v12.0.0/MojaloopSims_Onboarding.postman_collection.json) + - Golden path tests: [Golden_Path_Mojaloop](https://github.com/mojaloop/postman/blob/v12.0.0/Golden_Path_Mojaloop.postman_collection.json) + - 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](https://github.com/mojaloop/project/issues/2717). 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](https://github.com/mojaloop/helm/blob/master/README.md#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](https://github.com/mojaloop/helm/blob/master/thirdparty/README.md#validating-and-testing-the-3p-api) on how to enabled and execute Thirdparty verification tests. + +8. Testing the new Bulk functionality (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](https://github.com/mojaloop/helm/blob/master/mojaloop-ttk-simulators/README.md). + +## 6. Known Issues + +1. [#2119 - Idempotency for duplicate quote request](https://github.com/mojaloop/project/issues/2119) +2. [#2322 - Helm install failing with with "medium to large" release names](https://github.com/mojaloop/project/issues/2322) +3. [#2317 - Mojaloop Helm deployments are not compatible when deployed to ARM-arch based hosts](https://github.com/mojaloop/project/issues/2317) +4. [#2435 - Quoting-Service is incorrectly handling failed responses to FSPs when forwarding requests](https://github.com/mojaloop/project/issues/2435) +5. Test issues causing instability/intermitant failures on Test Case Results + 1. [#2717 - Thirdparty TTK Test-Collection is not repeatable](https://github.com/mojaloop/project/issues/2717) + 2. [#2925 - Helm Test Intermittent failure with 'Generic ID not found](https://github.com/mojaloop/project/issues/2925) + +## 7. Contributors + +- Organizations: BMGF, InFiTX +- Individuals: @vijayg10, @oderayi, @elnyry-sam-k + +*Note: companies are in alphabetical order, individuals are in no particular order.* + +**Full Changelog**: https://github.com/mojaloop/helm/compare/v15.2.0...v15.3.0 \ No newline at end of file diff --git a/ml-testing-toolkit-cli/Chart.yaml b/ml-testing-toolkit-cli/Chart.yaml index e01718f9a..3c4e6f2e9 100644 --- a/ml-testing-toolkit-cli/Chart.yaml +++ b/ml-testing-toolkit-cli/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 description: ml-testing-toolkit-cli Helm chart for Kubernetes name: ml-testing-toolkit-cli version: 15.3.2 -appVersion: "v1.2.1" +appVersion: "v1.2.0" home: http://mojaloop.io icon: http://mojaloop.io/images/logo.png sources: diff --git a/ml-testing-toolkit-cli/values.yaml b/ml-testing-toolkit-cli/values.yaml index b77001d49..a7db1a87b 100644 --- a/ml-testing-toolkit-cli/values.yaml +++ b/ml-testing-toolkit-cli/values.yaml @@ -4,6 +4,7 @@ replicaCount: 1 image: repository: mojaloop/ml-testing-toolkit-client-lib + # Upgrading ml-testing-toolkit-client-lib to a version above 1.2.0 causes failure in helm setup test (#3603) tag: v1.2.0 pullPolicy: IfNotPresent ## Optionally specify an array of imagePullSecrets. @@ -19,8 +20,6 @@ image: backoffLimit: 0 restartPolicy: Never - - ## Bash script for TTK CLI script: | echo "Downloading the test collection..."; diff --git a/mojaloop/values.yaml b/mojaloop/values.yaml index 0d9aa71fb..1bd02dc76 100644 --- a/mojaloop/values.yaml +++ b/mojaloop/values.yaml @@ -13511,7 +13511,7 @@ ml-ttk-posthook-setup: config: ## Test-case archive zip for test-cases: https://github.com/mojaloop/testing-toolkit-test-cases testCasesZipUrl: &ttkGitUrl https://github.com/mojaloop/testing-toolkit-test-cases/archive/v15.3.0-snapshot.zip - testCasesPathInZip: &ttkGitPathSetup testing-toolkit-test-cases-15.2.0/collections/hub/provisioning + testCasesPathInZip: &ttkGitPathSetup testing-toolkit-test-cases-15.3.0-snapshot/collections/hub/provisioning ttkBackendURL: http://$release_name-ml-testing-toolkit-backend:5050 parameters: <<: *simNames @@ -13524,7 +13524,7 @@ ml-ttk-posthook-tests: config: ## Test-case archive zip for test-cases: https://github.com/mojaloop/testing-toolkit-test-cases testCasesZipUrl: *ttkGitUrl - testCasesPathInZip: &ttkGitPathGP testing-toolkit-test-cases-15.2.0/collections/hub/golden_path + testCasesPathInZip: &ttkGitPathGP testing-toolkit-test-cases-15.3.0-snapshot/collections/hub/golden_path # awsS3BucketName: aws-s3-bucket-name # awsS3FilePath: ttk-tests/reports ttkBackendURL: http://$release_name-ml-testing-toolkit-backend:5050 @@ -13625,7 +13625,7 @@ ml-ttk-cronjob-cleanup: config: ## Test-case archive zip for test-cases: https://github.com/mojaloop/testing-toolkit-test-cases testCasesZipUrl: *ttkGitUrl - testCasesPathInZip: &ttkGitPathCleanup testing-toolkit-test-cases-15.2.0/collections/hub/cleanup + testCasesPathInZip: &ttkGitPathCleanup testing-toolkit-test-cases-15.3.0-snapshot/collections/hub/cleanup # testCasesPathInZip: *ttkGitPathGP # awsS3BucketName: aws-s3-bucket-name # awsS3FilePath: ttk-tests/reports @@ -13734,7 +13734,7 @@ ml-ttk-test-val-bulk: config: ## Test-case archive zip for test-cases: https://github.com/mojaloop/testing-toolkit-test-cases testCasesZipUrl: *ttkGitUrl - testCasesPathInZip: testing-toolkit-test-cases-15.2.0/collections/hub/other_tests/bulk_transfers + testCasesPathInZip: testing-toolkit-test-cases-15.3.0-snapshot/collections/hub/other_tests/bulk_transfers ## Optional config for uploading reports to S3 Buckets. If enabled: WS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION under the 'configCreds' is required. # awsS3BucketName: aws-s3-bucket-name # awsS3FilePath: ttk-tests/reports @@ -13779,7 +13779,7 @@ ml-ttk-test-setup-tp: config: ## Test-case archive zip for test-cases: https://github.com/mojaloop/testing-toolkit-test-cases testCasesZipUrl: *ttkGitUrl - testCasesPathInZip: testing-toolkit-test-cases-15.2.0/collections/hub/provisioning_thirdparty + testCasesPathInZip: testing-toolkit-test-cases-15.3.0-snapshot/collections/hub/provisioning_thirdparty ## Optional config for uploading reports to S3 Buckets. If enabled: WS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION under the 'configCreds' is required. # awsS3BucketName: aws-s3-bucket-name # awsS3FilePath: ttk-tests/reports @@ -13824,7 +13824,7 @@ ml-ttk-test-val-tp: config: ## Test-case archive zip for test-cases: https://github.com/mojaloop/testing-toolkit-test-cases testCasesZipUrl: *ttkGitUrl - testCasesPathInZip: testing-toolkit-test-cases-15.2.0/collections/hub/thirdparty + testCasesPathInZip: testing-toolkit-test-cases-15.3.0-snapshot/collections/hub/thirdparty # awsS3FilePath: ttk-tests/reports testSuiteName: Thirdparty Tests environmentName: Development @@ -13866,7 +13866,7 @@ ml-ttk-test-setup-sdk-bulk: config: ## Test-case archive zip for test-cases: https://github.com/mojaloop/testing-toolkit-test-cases testCasesZipUrl: *ttkGitUrl - testCasesPathInZip: testing-toolkit-test-cases-15.2.0/collections/hub/provisioning_sdkbulk + testCasesPathInZip: testing-toolkit-test-cases-15.3.0-snapshot/collections/hub/provisioning_sdkbulk ## Optional config for uploading reports to S3 Buckets. If enabled: WS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION under the 'configCreds' is required. # awsS3BucketName: aws-s3-bucket-name # awsS3FilePath: ttk-tests/reports @@ -13911,7 +13911,7 @@ ml-ttk-test-val-sdk-bulk: config: ## Test-case archive zip for test-cases: https://github.com/mojaloop/testing-toolkit-test-cases testCasesZipUrl: *ttkGitUrl - testCasesPathInZip: testing-toolkit-test-cases-15.2.0/collections/hub/sdk_scheme_adapter/bulk/basic + testCasesPathInZip: testing-toolkit-test-cases-15.3.0-snapshot/collections/hub/sdk_scheme_adapter/bulk/basic ## Optional config for uploading reports to S3 Buckets. If enabled: WS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION under the 'configCreds' is required. # awsS3BucketName: aws-s3-bucket-name # awsS3FilePath: ttk-tests/reports @@ -13956,7 +13956,7 @@ ml-ttk-test-val-sdk-r2p: config: ## Test-case archive zip for test-cases: https://github.com/mojaloop/testing-toolkit-test-cases testCasesZipUrl: *ttkGitUrl - testCasesPathInZip: testing-toolkit-test-cases-15.2.0/collections/hub/sdk_scheme_adapter/request-to-pay/basic + testCasesPathInZip: testing-toolkit-test-cases-15.3.0-snapshot/collections/hub/sdk_scheme_adapter/request-to-pay/basic ## Optional config for uploading reports to S3 Buckets. If enabled: WS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION under the 'configCreds' is required. # awsS3BucketName: aws-s3-bucket-name # awsS3FilePath: ttk-tests/reports