@mojaloop/connection-manager-api 3.4.0 → 3.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +55 -0
- package/README.md +121 -61
- package/package.json +15 -15
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,61 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
## [3.6.0](https://github.com/mojaloop/connection-manager-api/compare/v3.5.0...v3.6.0) (2026-01-15)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* add docker compose profiles (ci, dev, full) and developer docs ([#176](https://github.com/mojaloop/connection-manager-api/issues/176)) ([8523040](https://github.com/mojaloop/connection-manager-api/commit/85230405ed056af7e47639c7f0063a9b56c29c8f))
|
|
11
|
+
|
|
12
|
+
## [3.5.0](https://github.com/mojaloop/connection-manager-api/compare/v3.4.0...v3.5.0) (2026-01-15)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
* add Traefik and domain-based routing ([f2ccf27](https://github.com/mojaloop/connection-manager-api/commit/f2ccf27e459984c6b76ab2f998457af3f3cad550))
|
|
18
|
+
* add traefik for docker compose domain-based routing ([40c0f16](https://github.com/mojaloop/connection-manager-api/commit/40c0f1670c2b825dcef194e0161b18e418779d73))
|
|
19
|
+
* unify domain routing in docker-compose, and persist Vault ([8a95263](https://github.com/mojaloop/connection-manager-api/commit/8a95263ae0e04bd7dc5673f97baca46cb32fadb4))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### Bug Fixes
|
|
23
|
+
|
|
24
|
+
* deps ([121a7a5](https://github.com/mojaloop/connection-manager-api/commit/121a7a5bb59c3e7e4ff642cd6d90d5bfc31a4316))
|
|
25
|
+
* add jest timeout ([6f59977](https://github.com/mojaloop/connection-manager-api/commit/6f5997717cc76d549eacf24184bb4273520766ef))
|
|
26
|
+
* add more test cases, clean up test logging and suppress DB warnings ([e65f0a7](https://github.com/mojaloop/connection-manager-api/commit/e65f0a7410ed68aac076ef74c48da337dac23cd3))
|
|
27
|
+
* add nvm ([e307275](https://github.com/mojaloop/connection-manager-api/commit/e307275a900c4b345b4f29ac4791c8127b3b60d2))
|
|
28
|
+
* bump deps ([1fcc5cf](https://github.com/mojaloop/connection-manager-api/commit/1fcc5cfbda9af7006ebbcb95e4ec98effdcf7dae))
|
|
29
|
+
* bump deps ([13ce461](https://github.com/mojaloop/connection-manager-api/commit/13ce4616cc24d52f7f9543938fb052adc508f03c))
|
|
30
|
+
* config ([e9e6cee](https://github.com/mojaloop/connection-manager-api/commit/e9e6ceea61d06c3e33fb7cca5c993ada55dd3795))
|
|
31
|
+
* deps ([2793011](https://github.com/mojaloop/connection-manager-api/commit/2793011fac3ee55f277d37345b94bb47a3dc9629))
|
|
32
|
+
* deps ([4b580fd](https://github.com/mojaloop/connection-manager-api/commit/4b580fd33bbbaad66bf53533cf258ee0be699b58))
|
|
33
|
+
* deps ([8cb320b](https://github.com/mojaloop/connection-manager-api/commit/8cb320b2d0cc6d936ca20a1a5b9396a218c1c9a8))
|
|
34
|
+
* deps ([ec5680a](https://github.com/mojaloop/connection-manager-api/commit/ec5680a30e3ec182eeb6f222f1dcf5115692728e))
|
|
35
|
+
* deps ([c29290a](https://github.com/mojaloop/connection-manager-api/commit/c29290a5904487ee304f8d60d13a22b6221541be))
|
|
36
|
+
* dfspId assignment in tests ([d3f10ed](https://github.com/mojaloop/connection-manager-api/commit/d3f10edd05ead7a54c3450fa8d12ddc3e0483bf6))
|
|
37
|
+
* disable auth ([fa68fae](https://github.com/mojaloop/connection-manager-api/commit/fa68fae8ff3afb199ed927d3b6fadea33c3f00d1))
|
|
38
|
+
* docker compose deps ([5bc4aa1](https://github.com/mojaloop/connection-manager-api/commit/5bc4aa131ae3da2f7ff3683cae900f0b5972b567))
|
|
39
|
+
* endpoint ([68962eb](https://github.com/mojaloop/connection-manager-api/commit/68962eb82655fcab695443b233c10996b41aef81))
|
|
40
|
+
* links ([6b86057](https://github.com/mojaloop/connection-manager-api/commit/6b86057cf8edf0c868c38f5a35fa3b3147d90999))
|
|
41
|
+
* resolve Keycloak pagination issues and standardize test configuration ([c0f5e37](https://github.com/mojaloop/connection-manager-api/commit/c0f5e37654a9d9df527827447e2b3c178d7cd291))
|
|
42
|
+
* urls ([1fa67c6](https://github.com/mojaloop/connection-manager-api/commit/1fa67c65f394457e88b5a9a6be18ae3b697e0332))
|
|
43
|
+
* vulnr ([6c7ea34](https://github.com/mojaloop/connection-manager-api/commit/6c7ea34e87c455b38826ea09387b328acd93bfe3))
|
|
44
|
+
* vulnr ([bd76d49](https://github.com/mojaloop/connection-manager-api/commit/bd76d49756650752ef2e300410ce86fd1209487d))
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
### Documentation
|
|
48
|
+
|
|
49
|
+
* update configs and documentation to use domain-based routing (*.mcm.localhost) ([da06d77](https://github.com/mojaloop/connection-manager-api/commit/da06d77d553a86732141f0dc0a738103bbfd7bda))
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
### Chore
|
|
53
|
+
|
|
54
|
+
* bump deps ([4d6bf25](https://github.com/mojaloop/connection-manager-api/commit/4d6bf25a341be11e515a979d5b53217ecdbc5eb2))
|
|
55
|
+
* bump deps ([5eb2ede](https://github.com/mojaloop/connection-manager-api/commit/5eb2ede9076f35e4c74739c2e1f75fd462b9d6d3))
|
|
56
|
+
* cleanup ([68302f5](https://github.com/mojaloop/connection-manager-api/commit/68302f59c761771ad6fc5614579db90090650240))
|
|
57
|
+
* fix lock file ([57c914d](https://github.com/mojaloop/connection-manager-api/commit/57c914dc241d975d6d60553790ce76a3e69332b6))
|
|
58
|
+
* reorder imports ([f9c7865](https://github.com/mojaloop/connection-manager-api/commit/f9c7865bfbb9e707a37f81708da59427c5a4081e))
|
|
59
|
+
|
|
5
60
|
## [3.4.0](https://github.com/mojaloop/connection-manager-api/compare/v3.3.2...v3.4.0) (2025-12-12)
|
|
6
61
|
|
|
7
62
|
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Connection Manager API
|
|
2
2
|
|
|
3
|
-
[](https://github.com/mojaloop/connection-manager-api/actions/workflows/releaseWorkflow.yml)
|
|
4
4
|
|
|
5
5
|
Connection Manager API is a component of the Mojaloop ecosystem that allows an administrator to manage the network configuration and PKI information for the Hub and a set of DFSPs.
|
|
6
6
|
|
|
@@ -29,7 +29,7 @@ The system uses OpenID Connect authentication, which is a provider-agnostic appr
|
|
|
29
29
|
|OPENID_DISCOVERY_URL|OpenID Connect discovery URL|
|
|
30
30
|
|OPENID_CLIENT_ID|Client ID for OpenID authentication|
|
|
31
31
|
|OPENID_CLIENT_SECRET|Client secret for OpenID authentication|
|
|
32
|
-
|OPENID_REDIRECT_URI|Redirect URI for OpenID authentication|http://localhost
|
|
32
|
+
|OPENID_REDIRECT_URI|Redirect URI for OpenID authentication|http://mcm.localhost/api/auth/callback
|
|
33
33
|
|OPENID_JWT_COOKIE_NAME|Cookie name for storing the JWT token|MCM-API_ACCESS_TOKEN
|
|
34
34
|
|OPENID_EVERYONE_ROLE|Role assigned to all authenticated users|everyone
|
|
35
35
|
|OPENID_MTA_ROLE|DFSP Admin role mapping for OpenID|mta
|
|
@@ -49,102 +49,162 @@ P12_PASS_PHRASE="choose your own password" npm start
|
|
|
49
49
|
|
|
50
50
|
The default config requires a `mysql` db running on the default port.
|
|
51
51
|
|
|
52
|
-
Once running, you can access the [Swagger UI interface](http://localhost
|
|
52
|
+
Once running, you can access the [Swagger UI interface](http://mcm.localhost/api/docs)
|
|
53
53
|
|
|
54
54
|
## Running the server + db + web UI locally while developing
|
|
55
55
|
|
|
56
|
-
The API server requires a mysql db. There's also a Web UI [https://github.com/modusbox/connection-manager-ui](https://github.com/modusbox/connection-manager-ui).
|
|
57
|
-
|
|
58
56
|
To run them together, you can use the following setup:
|
|
59
57
|
|
|
60
|
-
- Clone this repo
|
|
61
|
-
- Use the `docker-compose` config in this repo to run a mysql DB, the WebUI and the API server
|
|
58
|
+
- Clone this repo
|
|
59
|
+
- Use the `docker-compose` config in this repo to run a mysql DB, Vault, Keycloak, the WebUI and the API server
|
|
62
60
|
|
|
63
61
|
```bash
|
|
64
|
-
mkdir
|
|
65
|
-
cd
|
|
66
|
-
git clone https://github.com/
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
docker-compose build
|
|
70
|
-
docker-compose up
|
|
62
|
+
mkdir mojaloop
|
|
63
|
+
cd mojaloop
|
|
64
|
+
git clone https://github.com/mojaloop/connection-manager-api
|
|
65
|
+
cd connection-manager-api
|
|
66
|
+
docker compose --profile full up -d --wait
|
|
71
67
|
```
|
|
72
68
|
|
|
73
|
-
|
|
74
|
-
session, execute the following;
|
|
69
|
+
### Docker Compose Profiles
|
|
75
70
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
71
|
+
| Profile | API | UI | Use case |
|
|
72
|
+
|---------|----------------------|-----------|-----------------------|
|
|
73
|
+
| `ci` | container (local) | - | CI/CD, running tests |
|
|
74
|
+
| `dev` | proxy → host | container | Local API development |
|
|
75
|
+
| `full` | container (official) | container | Full environment |
|
|
79
76
|
|
|
80
|
-
|
|
77
|
+
```bash
|
|
78
|
+
# CI/CD (builds local image, runs tests)
|
|
79
|
+
docker compose --profile ci up -d --wait
|
|
81
80
|
|
|
82
|
-
|
|
81
|
+
# Local development (run API on host, UI in container)
|
|
82
|
+
docker compose --profile dev up -d --wait
|
|
83
|
+
npm start # run API locally
|
|
83
84
|
|
|
84
|
-
|
|
85
|
+
# Full environment
|
|
86
|
+
docker compose --profile full up -d --wait
|
|
87
|
+
```
|
|
85
88
|
|
|
86
|
-
|
|
89
|
+
### Accessing Services
|
|
87
90
|
|
|
88
|
-
|
|
91
|
+
The stack includes Traefik for local DNS routing. All services are accessible via `*.mcm.localhost` domains:
|
|
89
92
|
|
|
90
|
-
|
|
93
|
+
| Service | URL | Description |
|
|
94
|
+
|---------|-----|-------------|
|
|
95
|
+
| MCM UI | http://mcm.localhost | Web UI |
|
|
96
|
+
| MCM API | http://mcm.localhost/api | API Server |
|
|
97
|
+
| Vault UI | http://vault.mcm.localhost | Vault UI |
|
|
98
|
+
| Keycloak | http://keycloak.mcm.localhost | Keycloak Admin Console |
|
|
99
|
+
| Mailpit | http://mailpit.mcm.localhost | Email Testing UI |
|
|
100
|
+
| Traefik Dashboard | http://localhost:8090 | Traefik Dashboard |
|
|
91
101
|
|
|
92
|
-
|
|
102
|
+
### Customizing Configuration
|
|
93
103
|
|
|
94
|
-
|
|
104
|
+
You can customize the domain and ports by creating a `.env` file:
|
|
95
105
|
|
|
96
|
-
|
|
106
|
+
```bash
|
|
107
|
+
# .env
|
|
108
|
+
COMPOSE_DOMAIN=myapp.localhost
|
|
109
|
+
TRAEFIK_HTTP_PORT=8080
|
|
110
|
+
DATABASE_PORT=3307
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
This will change all services to use `*.myapp.localhost`, expose Traefik on port 8080, and MySQL on port 3307.
|
|
114
|
+
|
|
115
|
+
**Note**: If port 80 is already in use, set `TRAEFIK_HTTP_PORT` to an available port (e.g., 8080). Access services at `http://ui.myapp.localhost:8080`.
|
|
116
|
+
|
|
117
|
+
### Running Multiple Instances
|
|
118
|
+
|
|
119
|
+
To run multiple instances simultaneously:
|
|
97
120
|
|
|
98
|
-
|
|
121
|
+
```bash
|
|
122
|
+
# Instance 1 (default ports)
|
|
123
|
+
COMPOSE_PROJECT_NAME=mcm1 COMPOSE_DOMAIN=mcm1.localhost docker compose --profile full up -d
|
|
124
|
+
|
|
125
|
+
# Instance 2 (different ports)
|
|
126
|
+
COMPOSE_PROJECT_NAME=mcm2 COMPOSE_DOMAIN=mcm2.localhost TRAEFIK_HTTP_PORT=8080 DATABASE_PORT=3307 docker compose --profile full up -d
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
Access via:
|
|
130
|
+
- Instance 1: http://mcm1.localhost, MySQL at `localhost:3306`
|
|
131
|
+
- Instance 2: http://mcm2.localhost:8080, MySQL at `localhost:3307`
|
|
132
|
+
|
|
133
|
+
See [.env-example](./.env-example) for all available configuration options.
|
|
99
134
|
|
|
100
|
-
|
|
135
|
+
## Configuration
|
|
101
136
|
|
|
102
137
|
|Environment variable|Description|Default Value
|
|
103
138
|
:---|:---|:---
|
|
104
139
|
| **MCM API server configuration**
|
|
105
|
-
|PORT|
|
|
140
|
+
|PORT|MCM API HTTP port|3001
|
|
141
|
+
|CLIENT_URL|MCM UI URL|http://mcm.localhost
|
|
142
|
+
|SWITCH_ID|Switch identifier (required)|
|
|
143
|
+
|SWITCH_FQDN|Switch FQDN|switch.example.com
|
|
144
|
+
| **Docker Compose configuration**
|
|
145
|
+
|COMPOSE_DOMAIN|Domain for Traefik routing (docker-compose only)|mcm.localhost
|
|
106
146
|
| **Authentication features**
|
|
107
|
-
|OPENID_ENABLED|
|
|
108
|
-
|OPENID_ENABLE_2FA|
|
|
147
|
+
|OPENID_ENABLED|Enable OpenID Connect authentication|false
|
|
148
|
+
|OPENID_ENABLE_2FA|Enable two-factor authentication|false
|
|
149
|
+
|OPENID_ALLOW_INSECURE|Allow insecure HTTPS for development|false
|
|
150
|
+
|OPENID_DISCOVERY_URL|OpenID Connect discovery URL|
|
|
151
|
+
|OPENID_CLIENT_ID|Client ID for OpenID authentication|
|
|
152
|
+
|OPENID_CLIENT_SECRET|Client secret for OpenID authentication|
|
|
153
|
+
|LOGIN_CALLBACK|OAuth callback URL|http://mcm.localhost/api/auth/callback
|
|
154
|
+
|OPENID_AUDIENCE|JWT audience claim|connection-manager-api
|
|
155
|
+
|OPENID_JWT_COOKIE_NAME|Cookie name for JWT token|MCM-API_ACCESS_TOKEN
|
|
156
|
+
| **OpenID Connect groups/roles**
|
|
157
|
+
|OPENID_APPLICATION_GROUP|Application group name|Application
|
|
158
|
+
|OPENID_EVERYONE_GROUP|Authenticated users group|everyone
|
|
159
|
+
|OPENID_MTA_GROUP|DFSP Admin group|MTA
|
|
160
|
+
|OPENID_PTA_GROUP|HUB Admin group|PTA
|
|
161
|
+
|OPENID_DFSP_GROUP|DFSP group|DFSP
|
|
109
162
|
| **Session configuration**
|
|
110
|
-
|SESSION_STORE_SECRET|Secret for encrypting session data|
|
|
111
|
-
|
|
|
112
|
-
|SESSION_SAME_SITE|SameSite cookie setting|'strict'
|
|
113
|
-
|SESSION_SECURE|Whether session cookies require HTTPS|true in production
|
|
114
|
-
| **OAuth2 roles**
|
|
115
|
-
|MTA_ROLE|DFSP Admin role|'Application/MTA'
|
|
116
|
-
|PTA_ROLE|HUB Admin Role|'Application/PTA'
|
|
117
|
-
|EVERYONE_ROLE|Authenticated users role|'Internal/everyone'
|
|
163
|
+
|SESSION_STORE_SECRET|Secret for encrypting session data|connection_manager_session_secret
|
|
164
|
+
|SESSION_COOKIE_SAME_SITE_STRICT|Use strict SameSite cookie setting|true
|
|
118
165
|
| **Database configuration**
|
|
119
|
-
|DATABASE_HOST|
|
|
120
|
-
|DATABASE_PORT|
|
|
121
|
-
|DATABASE_USER|
|
|
122
|
-
|DATABASE_PASSWORD|
|
|
123
|
-
|DATABASE_SCHEMA|
|
|
166
|
+
|DATABASE_HOST|MySQL host|localhost
|
|
167
|
+
|DATABASE_PORT|MySQL port (also used for docker-compose host mapping)|3306
|
|
168
|
+
|DATABASE_USER|MySQL user|mcm
|
|
169
|
+
|DATABASE_PASSWORD|MySQL password|mcm
|
|
170
|
+
|DATABASE_SCHEMA|MySQL schema|mcm
|
|
124
171
|
|DATABASE_SSL_ENABLED|Enable SSL for MySQL connection|false
|
|
125
172
|
|DATABASE_SSL_VERIFY|Verify server certificate when using SSL|false
|
|
126
173
|
|DATABASE_SSL_CA|CA certificate string for MySQL SSL|''
|
|
127
|
-
|DB_RETRIES|Times the initial connection to the DB will be retried|10
|
|
128
|
-
|DB_CONNECTION_RETRY_WAIT_MILLISECONDS|Pause between retries|
|
|
129
|
-
|
|
|
130
|
-
|
|
|
131
|
-
|
|
|
132
|
-
|
|
|
133
|
-
|
|
|
134
|
-
|
|
|
135
|
-
|
|
|
174
|
+
|DB_RETRIES|Times the initial connection to the DB will be retried|10
|
|
175
|
+
|DB_CONNECTION_RETRY_WAIT_MILLISECONDS|Pause between retries|1000
|
|
176
|
+
|DB_POOL_SIZE_MAX|Maximum database connection pool size|10
|
|
177
|
+
| **Vault PKI configuration**
|
|
178
|
+
|VAULT_ENDPOINT|Vault server endpoint|http://127.0.0.1:8233
|
|
179
|
+
|VAULT_AUTH_METHOD|Vault auth method (K8S or APP_ROLE)|APP_ROLE (required)
|
|
180
|
+
|VAULT_ROLE_ID_FILE|Path to Vault role ID file|docker/vault/tmp/role-id
|
|
181
|
+
|VAULT_ROLE_SECRET_ID_FILE|Path to Vault secret ID file|docker/vault/tmp/secret-id
|
|
182
|
+
|VAULT_PKI_SERVER_ROLE|Vault PKI role for server certs|(required)
|
|
183
|
+
|VAULT_PKI_CLIENT_ROLE|Vault PKI role for client certs|(required)
|
|
184
|
+
|VAULT_SIGN_EXPIRY_HOURS|Certificate signing expiry in hours|43800
|
|
185
|
+
|PRIVATE_KEY_LENGTH|RSA key length for certificates|4096
|
|
186
|
+
|PRIVATE_KEY_ALGORITHM|Key algorithm|rsa
|
|
187
|
+
|INTERNAL_CA_TTL|Internal CA certificate TTL|8760h
|
|
188
|
+
|VAULT_MOUNT_PKI|Vault PKI mount path|pki
|
|
189
|
+
|VAULT_MOUNT_INTERMEDIATE_PKI|Vault intermediate PKI mount path|pki_int
|
|
190
|
+
|VAULT_MOUNT_KV|Vault KV mount path|secrets
|
|
191
|
+
| **Certificate CSR parameters**
|
|
192
|
+
|CLIENT_CSR_PARAMETERS|Path to client CSR parameters JSON file|
|
|
193
|
+
|SERVER_CSR_PARAMETERS|Path to server CSR parameters JSON file|
|
|
194
|
+
|CA_CSR_PARAMETERS|Path to CA CSR parameters JSON file|
|
|
195
|
+
| **Support for self-signed certificates**
|
|
196
|
+
|EXTRA_CERTIFICATE_CHAIN_FILE_NAME|Extra trusted server certificate chain file name|
|
|
136
197
|
|EXTRA_ROOT_CERT_FILE_NAME|Extra trusted server root certificate file name|
|
|
137
|
-
| **CFSSL**
|
|
138
|
-
|CFSSL_VERSION|Expected CFSSL version to use. Should be updated to keep in sync with the cfssl development|1.3.4
|
|
139
|
-
|CFSSL_COMMAND_PATH|cfssl command; it should be just cfssl if it's in the PATH or the full path|cfssl
|
|
140
198
|
| **Keycloak Integration**
|
|
141
199
|
|KEYCLOAK_ENABLED|Enable Keycloak integration for DFSP account creation|false
|
|
142
|
-
|KEYCLOAK_BASE_URL|Base URL of the Keycloak server|http://localhost
|
|
143
|
-
|KEYCLOAK_DISCOVERY_URL|OpenID Connect discovery URL for Keycloak|http://localhost
|
|
200
|
+
|KEYCLOAK_BASE_URL|Base URL of the Keycloak server|http://keycloak.mcm.localhost
|
|
201
|
+
|KEYCLOAK_DISCOVERY_URL|OpenID Connect discovery URL for Keycloak|http://keycloak.mcm.localhost/realms/dfsps/.well-known/openid-configuration
|
|
144
202
|
|KEYCLOAK_ADMIN_CLIENT_ID|Client ID for Keycloak admin operations|connection-manager-client
|
|
145
203
|
|KEYCLOAK_ADMIN_CLIENT_SECRET|Client secret for Keycloak admin operations|
|
|
146
204
|
|KEYCLOAK_DFSPS_REALM|Keycloak realm for DFSP accounts|dfsps
|
|
147
|
-
|KEYCLOAK_AUTO_CREATE_ACCOUNTS|Automatically create Keycloak accounts when DFSPs are created
|
|
205
|
+
|KEYCLOAK_AUTO_CREATE_ACCOUNTS|Automatically create Keycloak accounts when DFSPs are created|false
|
|
206
|
+
| **Other features**
|
|
207
|
+
|DFSP_WATCHER_ENABLED|Enable DFSP watcher service|false
|
|
148
208
|
|
|
149
209
|
## Testing
|
|
150
210
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mojaloop/connection-manager-api",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.6.0",
|
|
4
4
|
"description": "Mojaloop Connection Manager API",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "ModusBox",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"migrate:rollback": "npm run knex-cli migrate:rollback",
|
|
47
47
|
"migrate:new": "npm run knex-cli migrate:make",
|
|
48
48
|
"knex-cli": "DOTENV_CONFIG_PATH=$(pwd)/.env npx knex --knexfile src/knexfile.js ",
|
|
49
|
-
"backend:start": "docker compose --profile
|
|
49
|
+
"backend:start": "docker compose --profile ci up -d --wait",
|
|
50
50
|
"backend:stop": "docker compose down -v",
|
|
51
51
|
"backend:restart": "npm run backend:stop && npm run backend:start"
|
|
52
52
|
},
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
"sanitize-html": "2.12.1",
|
|
65
65
|
"oas3-tools": {
|
|
66
66
|
"body-parser": "^1.20.3",
|
|
67
|
-
"qs": "^6.14.
|
|
67
|
+
"qs": "^6.14.1",
|
|
68
68
|
"js-yaml": "^3"
|
|
69
69
|
},
|
|
70
70
|
"postcss": {
|
|
@@ -92,16 +92,16 @@
|
|
|
92
92
|
},
|
|
93
93
|
"dependencies": {
|
|
94
94
|
"@hapi/hapi": "21.4.4",
|
|
95
|
-
"@keycloak/keycloak-admin-client": "^26.
|
|
95
|
+
"@keycloak/keycloak-admin-client": "^26.5.1",
|
|
96
96
|
"@kubernetes/client-node": "^1.4.0",
|
|
97
|
-
"@mojaloop/central-services-logger": "11.10.
|
|
97
|
+
"@mojaloop/central-services-logger": "11.10.3",
|
|
98
98
|
"@mojaloop/central-services-metrics": "12.8.3",
|
|
99
|
-
"@mojaloop/central-services-shared": "18.34.
|
|
99
|
+
"@mojaloop/central-services-shared": "18.34.6",
|
|
100
100
|
"@ory/keto-client": "^25.4.0",
|
|
101
101
|
"async-exit-hook": "^2.0.1",
|
|
102
102
|
"async-retry": "^1.3.3",
|
|
103
103
|
"axios": "1.13.2",
|
|
104
|
-
"body-parser": "^2.2.
|
|
104
|
+
"body-parser": "^2.2.2",
|
|
105
105
|
"connect": "^3.7.0",
|
|
106
106
|
"convict": "6.2.4",
|
|
107
107
|
"cookies": "^0.9.1",
|
|
@@ -117,22 +117,22 @@
|
|
|
117
117
|
"jsonwebtoken": "^9.0.3",
|
|
118
118
|
"knex": "^3.1.0",
|
|
119
119
|
"moment": "^2.30.1",
|
|
120
|
-
"mysql2": "^3.
|
|
120
|
+
"mysql2": "^3.16.0",
|
|
121
121
|
"node-forge": "^1.3.3",
|
|
122
122
|
"node-vault": "^0.10.9",
|
|
123
123
|
"oas3-tools": "^2.2.3",
|
|
124
124
|
"openid-client": "^6.8.1",
|
|
125
125
|
"passport": "^0.7.0",
|
|
126
126
|
"passport-jwt": "^4.0.1",
|
|
127
|
-
"qs": "^6.14.
|
|
128
|
-
"soap": "^1.6.
|
|
127
|
+
"qs": "^6.14.1",
|
|
128
|
+
"soap": "^1.6.3",
|
|
129
129
|
"ulid": "3.0.2",
|
|
130
130
|
"winston": "^3.19.0",
|
|
131
131
|
"xml2js": "^0.6.2"
|
|
132
132
|
},
|
|
133
133
|
"devDependencies": {
|
|
134
|
-
"@commitlint/cli": "^20.
|
|
135
|
-
"@commitlint/config-conventional": "^20.
|
|
134
|
+
"@commitlint/cli": "^20.3.1",
|
|
135
|
+
"@commitlint/config-conventional": "^20.3.1",
|
|
136
136
|
"@types/jest": "30.0.0",
|
|
137
137
|
"audit-ci": "^7.1.0",
|
|
138
138
|
"axios-mock-adapter": "2.1.0",
|
|
@@ -144,14 +144,14 @@
|
|
|
144
144
|
"husky": "^9.1.7",
|
|
145
145
|
"jest": "^30.0.2",
|
|
146
146
|
"jest-extended": "^7.0.0",
|
|
147
|
-
"npm-check-updates": "^19.
|
|
147
|
+
"npm-check-updates": "^19.3.1",
|
|
148
148
|
"nyc": "^17.1.0",
|
|
149
|
-
"sinon": "^21.0.
|
|
149
|
+
"sinon": "^21.0.1",
|
|
150
150
|
"snazzy": "^9.0.0",
|
|
151
151
|
"source-map-support": "^0.5.21",
|
|
152
152
|
"standard-version": "^9.5.0",
|
|
153
153
|
"standardx": "^7.0.0",
|
|
154
|
-
"supertest": "^7.
|
|
154
|
+
"supertest": "^7.2.2",
|
|
155
155
|
"tap-xunit": "^2.4.1",
|
|
156
156
|
"tmp": "^0.2.5"
|
|
157
157
|
},
|