Skip to content

Commit

Permalink
chore(mojaloop/#2650): run 3ppi ttk tests with 3ppi services enabled (#…
Browse files Browse the repository at this point in the history
…467)

chore: run 3ppi ttk tests with 3ppi services enabled - mojaloop/project#2650
- fixed thirdparty helm chart deployment issues
- fixed thirdparty helm chart configuration issue to successfully run the Thirdparty TTK tests
- added Thirdparty Provisioning and Verification Collections as optional Helm Tests
- added Mojaloop-Simulators as a dependency to the Thirdparty wrapper chart
   - configured Simulators for DFSPA, DFSPB and PISP to support the Thirdparty Verification tests
- added thirdparty charts to update-charts-dep.sh
- upgraded thirdparty auth-svc docker image from v11.10.1 to v11.11.1
- added init-containers to thirdparty helm charts (auth-svc & consent-svc) to run database migration/seed scripts
- updated README documentation to clarify instructions on how to enable/test Thirdparty features
- updated release notes
- fixes and minor optimization to CI-CD config - merged `build` job into `test` job as it's required for `helm lint` command to run
  • Loading branch information
mdebarros committed Mar 11, 2022
1 parent ee22334 commit a29be6f
Show file tree
Hide file tree
Showing 21 changed files with 1,716 additions and 80 deletions.
52 changes: 47 additions & 5 deletions .changelog/release-v13.1.0.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ Date | Revision | Description

### 1. Maintenance updates

1. change endpoint types to line up with enums ([#863](https://github.com/mojaloop/central-ledger/issues/863))
1. Change endpoint types to line up with enums ([#863](https://github.com/mojaloop/central-ledger/issues/863))
2. Added Helm Tests for Thirdparty Provisioning and Verification Collections ([#2650](https://github.com/mojaloop/project/issues/2650))

### 2. New Features

Expand Down Expand Up @@ -72,6 +73,10 @@ Date | Revision | Description
19. sdk-scheme-adapter: v11.18.8 -> **v11.18.11**
20. ml-testing-toolkit: v13.5.1 -> **v14.0.4**
21. ml-testing-toolkit-ui: v13.5.2 -> **v13.5.5**
22. auth-service: v11.11.1
23. als-consent-service: v0.0.8
24. thirdparty-api-svc: v11.21.0
25. thirdparty-sdk: v11.55.1

## 5. Application release notes

Expand All @@ -94,9 +99,12 @@ Date | Revision | Description
17. simulator - https://github.com/mojaloop/simulator/releases/tag/v11.1.3
18. mojaloop-simulator - https://github.com/mojaloop/mojaloop-simulator/releases/tag/v11.6.1
19. sdk-scheme-adapter - https://github.com/mojaloop/sdk-scheme-adapter/releases/tag/v11.18.11
20. thirdparty-sdk-adapter - https://github.com/mojaloop/thirdparty-sdk/releases/tag/v11.55.1
21. ml-testing-toolkit - https://github.com/mojaloop/ml-testing-toolkit/releases/tag/v14.0.4
22. ml-testing-toolkit-ui - https://github.com/mojaloop/ml-testing-toolkit-ui/releases/tag/v13.5.5
20. ml-testing-toolkit - https://github.com/mojaloop/ml-testing-toolkit/releases/tag/v14.0.4
21. ml-testing-toolkit-ui - https://github.com/mojaloop/ml-testing-toolkit-ui/releases/tag/v13.5.5
22. auth-service - https://github.com/mojaloop/auth-service/releases/tag/v11.11.1
23. als-consent-service - https://github.com/mojaloop/als-consent-oracle/releases/tag/v0.0.8
24. thirdparty-api-svc - https://github.com/mojaloop/thirdparty-api-svc/releases/tag/v11.21.0
25. thirdparty-sdk-adapter - https://github.com/mojaloop/thirdparty-sdk/releases/tag/v11.55.1

## 6. Operational Chart versions

Expand Down Expand Up @@ -170,6 +178,31 @@ Take note that existing rules may not work without modifying the path to add a `
- TESTFSP4_CALLBACK_URL
- TESTFSP4_SDK_TESTAPI_URL
- TESTFSP4_SDK_TESTAPI_WS_URL
- HOST_ORACLE_CONSENT
- DFSPA_NAME
- DFSPA_CB_FSPIOP
- DFSPA_CB_THIRDPARTY
- DFSPB_NAME
- DFSPB_CB_FSPIOP
- DFSPB_CB_THIRDPARTY
- PISP_NAME
- PISP_CB_FSPIOP
- PISP_CB_THIRDPARTY
- CENTRALAUTH_NAME
- CENTRALAUTH_CB_FSPIOP
- PISP_THIRDPARTY_SDK_OUTBOUND_URL
- PISP_BACKEND_TESTAPI_URL
- PISP_CALLBACK_URL
- PISP_SDK_TESTAPI_URL
- PISP_SDK_TESTAPI_WS_URL
- DFSPA_BACKEND_TESTAPI_URL
- DFSPA_CALLBACK_URL
- DFSPA_SDK_TESTAPI_URL
- DFSPA_SDK_TESTAPI_WS_URL
- DFSPB_BACKEND_TESTAPI_URL
- DFSPB_CALLBACK_URL
- DFSPB_SDK_TESTAPI_URL
- DFSPB_SDK_TESTAPI_WS_URL

3. Bulk API Helm Tests

Expand Down Expand Up @@ -207,6 +240,10 @@ Refer to the [Testing Deployments](../README.md#testing-deployments) section in

Note the above configuration is optional, as it will default to what is shown above if not overridden by a set configuration.

5. Thirdparty deployment

Refer to [thirdparty/README.md](../thirdparty/README.md#deploying-the-3p-api) for more information on what pre-requisites are required to enable Thirdparty components and how to manually deploy backend dependencies.

## 9. Testing notes

1. 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).
Expand All @@ -229,14 +266,19 @@ Refer to the [Testing Deployments](../README.md#testing-deployments) section in
- Nginx Ingress Controllers: 0.43.0
- Testing Toolkit Test Cases: [v13.1.0](https://github.com/mojaloop/testing-toolkit-test-cases/releases/tag/v13.1.0)

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. Refer to [thirdparty/README.md#validating-and-testing-the-3p-api](../thirdparty/README.md#validating-and-testing-the-3p-api) on how to enabled and execute Thirdparty verification tests.

## 10. 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. [#2352 - Mojaloop Helm support for Kubernetes 1.22](https://github.com/mojaloop/project/issues/2352)
4. [#2448 - Nginx Ingress Controller v1.0.0 is incompatible with Mojaloop Helm v13.0.x releases](https://github.com/mojaloop/project/issues/2448)
5. [#2317 - Mojaloop Helm deployments are not compatible when deployed to ARM-arch based hosts](https://github.com/mojaloop/project/issues/2317)
6. [#2654 - Unstable GP tests for 13.1.0 Release Candidate](https://github.com/mojaloop/project/issues/2654) **BLOCKER PENDING***
6. ~[#2654 - Unstable GP tests for 13.1.0 Release Candidate](https://github.com/mojaloop/project/issues/2654)~
7. [#2717 - Thirdparty TTK Test-Collection is not repeatable](https://github.com/mojaloop/project/issues/2717)

## 11. Contributors

Expand Down
48 changes: 27 additions & 21 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@ defaults_Environment: &defaults_environment
helm repo add elastic https://helm.elastic.co
helm repo add codecentric https://codecentric.github.io/helm-charts
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo add mojaloop-charts https://docs.mojaloop.io/charts/repo
helm repo update
##
# Executors
Expand Down Expand Up @@ -87,6 +89,10 @@ jobs:
- checkout
- run:
<<: *defaults_environment
- run:
name: Update Helm Charts
command: |
bash update-charts-dep.sh
- run:
name: Linting Helm Charts
command: |
Expand Down Expand Up @@ -133,18 +139,18 @@ jobs:
path: /tmp/license-scanner/results
prefix: licenses

build:
executor: default-docker-helm
steps:
- run:
<<: *defaults_Dependencies
- checkout
- run:
<<: *defaults_environment
- run:
name: Update Helm Charts
command: |
bash update-charts-dep.sh
# build:
# executor: default-docker-helm
# steps:
# - run:
# <<: *defaults_Dependencies
# - checkout
# - run:
# <<: *defaults_environment
# - run:
# name: Update Helm Charts
# command: |
# bash update-charts-dep.sh

deploy:
executor: default-docker-helm
Expand Down Expand Up @@ -220,18 +226,18 @@ workflows:
filters:
tags:
only: /.*/
- build:
context: org-global
requires:
- test
- audit-licenses
filters:
tags:
only: /.*/
# - build:
# context: org-global
# requires:
# - test
# - audit-licenses
# filters:
# tags:
# only: /.*/
- deploy:
context: org-global
requires:
- build
- test
filters:
tags:
only: /v[0-9]+(\.[0-9]+)*/
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ Or alternatively add `--set` for each of the above parameters on the install com

`helm install ... --set ml-ttk-test-setup.tests.enabled=true --set ml-ttk-test-val-gp.tests.enabled=true --set ml-ttk-test-val-bulk=true --set ml-ttk-test-val-bulk.tests.enabled=true`

1. Run Tests
2. Run Tests

Run tests:
`helm test <RELEASE_NAME>`
Expand Down
2 changes: 1 addition & 1 deletion mojaloop-simulator/templates/_helpers.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ Prefix is truncated to 10 characters long.
{{- if kindIs "invalid" .Values.prefix -}}
{{- printf "%s-sim-" .Release.Name -}}
{{- else -}}
{{- .Values.prefix | trunc 10 | trimAll " " -}}
{{- tpl .Values.prefix $ | trimAll " " -}}
{{- end -}}
{{- end -}}

Expand Down
2 changes: 1 addition & 1 deletion mojaloop-simulator/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -644,7 +644,7 @@ defaults: &defaults
},
"SHARED": {
"AUTH_SERVICE_PARTICIPANT_ID": 'centralauth',
"PEER_ENDPOINT": "mojaloop-switch",
"THIRDPARTY_REQUESTS_ENDPOINT": "tp-api-svc:3008",
"DFSP_ID": "$name",
"DFSP_BACKEND_URI": "$full_name-backend:3000",
"DFSP_BACKEND_HTTP_SCHEME": "http",
Expand Down
10 changes: 10 additions & 0 deletions mojaloop/requirements.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,16 @@ dependencies:
version: 14.0.0
repository: "file://../ml-testing-toolkit-cli"
condition: ml-ttk-test-val-bulk.tests.enabled
- name: ml-testing-toolkit-cli
alias: ml-ttk-test-setup-tp
version: 14.0.0
repository: "file://../ml-testing-toolkit-cli"
condition: ml-ttk-test-setup-tp.tests.enabled
- name: ml-testing-toolkit-cli
alias: ml-ttk-test-val-tp
version: 14.0.0
repository: "file://../ml-testing-toolkit-cli"
condition: ml-ttk-test-val-tp.tests.enabled
- name: ml-testing-toolkit-cli
alias: ml-ttk-posthook-setup
version: 14.0.0
Expand Down
Loading

0 comments on commit a29be6f

Please sign in to comment.