Merge pull request #9 from aasaru/fix_typos_in_postman_scripts
Fix typos in postman scripts, add all conf parameters to docker-compose.yml, update readme
diff --git a/README.md b/README.md
index 775501d..35a75c6 100644
--- a/README.md
+++ b/README.md
@@ -5,11 +5,13 @@
- Docker
- Docker-compose
-## Deploy and provision Fineract CN
+# Deploy and provision Fineract CN
-You can either deploy and provision Fineract CN automatically using bash scripts or manually using postman.
+You can either deploy and provision Fineract CN automatically using bash scripts or manually using Postman.
+Postman is the preferred way as it is more tested and this way you understand better what is happening.
+Also this way you don't have to start all the micro services (helpful if your workstation is lacking resources).
-## 1. Deploy Fineract automtically using bash scripts
+# 1. Deploy and provision Fineract automtically using bash scripts
- To start up all the Fineract CN services run:
@@ -63,7 +65,7 @@
For example you could start the following additional micro services and an fims-web-app:
```
-docker-compose up rhythm-ms identity-ms customer-ms accounting-ms deposit-ms portfolio-ms fims-web-app
+docker-compose up rhythm-ms identity-ms customer-ms accounting-ms deposit-ms portfolio-ms office-ms fims-web-app
```
If you want you can add other micro services (listed in docker-compose.yml) to the list.
@@ -116,7 +118,7 @@
2. Reach out to [mailing list](https://lists.apache.org/list.html?dev@fineract.apache.org) with the relevant details
-### Sign-in using fims-web-app
+# Sign-in using fims-web-app
Prerequisites: Fineract-CN has been successfully provisioned by following the instructions in the previous sections
User ```mifos``` is created in the the last two requests (user creation and role assignment) in the postman request-list.
@@ -133,7 +135,7 @@
```
### Use the Postman scripts when running locally
-Postman scripts use service names (postgres, provisioner-ms, etc) when refering to different services.
+Postman scripts use service names (postgres, provisioner-ms, etc) when referring to different services.
If you want to use the same Postman scripts when running micro services locally then add into your hosts (/etc/hosts in Unix) file:
```
@@ -159,6 +161,8 @@
### How to reset everything and start from scratch
+Run ./shut-down-and-reset.sh or
+
```
cd external-tools
docker-compose stop
@@ -171,9 +175,10 @@
## Note:
**These scripts are ideal for a docker swarm deployment environment. If you are to deploy Fineract CN using Docker swarm you will have remove the network configuration from the docker-compose script and implement a load balancer (using docker swarm) that reflects the network configuratioin you just removed from the compose file.**
-## TODO
+### Automating Postman scripts
+You can use [Newman](https://learning.getpostman.com/docs/postman/collection_runs/command_line_integration_with_newman/) to run Postman scripts from command line.
-- Provision the web services using a script
+## TODO
- Adjust scripts for Kubernetes
There are some scripts in [https://github.com/openMF/fineract-cn-containers](https://github.com/openMF/fineract-cn-containers)
diff --git a/docker-compose.yml b/docker-compose.yml
index 750907e..cb72194 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -16,6 +16,8 @@
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
postgresql.host: ${POSTGRESQL_HOST}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2020
spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat
system.initialclientid: ${SYSTEM_INITIAL_CLIENT_ID}
system.privateKey.exponent: ${PRIVATE_KEY_EXPONENT}
@@ -26,7 +28,7 @@
deploy:
replicas: 1
restart_policy:
- condition: on-failure
+ condition: any
delay: 10s
max_attempts: 3
networks:
@@ -39,6 +41,10 @@
ports:
- "2021:2021"
environment:
+ bonecp.partitionCount: 1
+ bonecp.maxConnectionsPerPartition: 4
+ bonecp.minConnectionsPerPartition: 1
+ bonecp.acquireIncrement: 1
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
cassandra.cluster.pwd: ${CASSANDRA_CLUSTER_PASSWORD}
cassandra.cluster.user: ${CASSANDRA_CLUSTER_USER}
@@ -46,15 +52,18 @@
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE}
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
+ identity.token.refresh.secureCookie: "false" # demoserver
postgresql.host: ${POSTGRESQL_HOST}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2021
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
deploy:
replicas: 1
restart_policy:
- condition: on-failure
+ condition: any
delay: 10s
max_attempts: 3
networks:
@@ -69,25 +78,27 @@
- "2022:2022"
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
+ cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE}
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
postgresql.host: ${POSTGRESQL_HOST}
+ rhythm.beatCheckRate: 600000
+ rhythm.user: ${SCHEDULER_USER_NAME}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2022
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
- rhythm.beatCheckRate: 600000
deploy:
replicas: 1
restart_policy:
condition: on-failure
- delay: 10s
- max_attempts: 3
networks:
external_tools_default:
fineract:
- ipv4_address: ${RHYTHM_IP}
+ ipv4_address: ${RHYTHM_IP}
office-ms:
image: apache/fineract-cn-office:latest
@@ -95,23 +106,20 @@
- "2023:2023"
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
+ cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE}
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
postgresql.host: ${POSTGRESQL_HOST}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2023
spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
system.privateKey.exponent: ${PRIVATE_KEY_EXPONENT}
system.privateKey.modulus: ${PRIVATE_KEY_MODULUS}
- deploy:
- replicas: 1
- restart_policy:
- condition: on-failure
- delay: 10s
- max_attempts: 3
networks:
external_tools_default:
fineract:
@@ -123,21 +131,19 @@
- "2024:2024"
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
+ cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE}
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
postgresql.host: ${POSTGRESQL_HOST}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2024
spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat
+ system.initialclientid: ${SYSTEM_INITIAL_CLIENT_ID}
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
- deploy:
- replicas: 1
- restart_policy:
- condition: on-failure
- delay: 10s
- max_attempts: 3
networks:
external_tools_default:
fineract:
@@ -149,21 +155,18 @@
image: apache/fineract-cn-accounting:latest
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
+ cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE}
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
postgresql.host: ${POSTGRESQL_HOST}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2025
spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
- deploy:
- replicas: 1
- restart_policy:
- condition: on-failure
- delay: 10s
- max_attempts: 3
networks:
external_tools_default:
fineract:
@@ -175,6 +178,7 @@
- "2026:2026"
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
+ cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE}
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
@@ -182,16 +186,12 @@
custom.postgresql.user: ${POSTGRESQL_USER}
postgresql.host: ${POSTGRESQL_HOST}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2026
spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
- deploy:
- replicas: 1
- restart_policy:
- condition: on-failure
- delay: 10s
- max_attempts: 3
networks:
external_tools_default:
fineract:
@@ -203,21 +203,18 @@
- "2027:2027"
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
+ cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE}
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
postgresql.host: ${POSTGRESQL_HOST}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2027
spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
- deploy:
- replicas: 1
- restart_policy:
- condition: on-failure
- delay: 10s
- max_attempts: 3
networks:
external_tools_default:
fineract:
@@ -229,21 +226,18 @@
- "2028:2028"
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
+ cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE}
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
postgresql.host: ${POSTGRESQL_HOST}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2028
spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
- deploy:
- replicas: 1
- restart_policy:
- condition: on-failure
- delay: 10s
- max_attempts: 3
networks:
external_tools_default:
fineract:
@@ -255,21 +249,18 @@
- "2029:2029"
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
+ cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE}
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
postgresql.host: ${POSTGRESQL_HOST}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2029
spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
- deploy:
- replicas: 1
- restart_policy:
- condition: on-failure
- delay: 10s
- max_attempts: 3
networks:
external_tools_default:
fineract:
@@ -281,21 +272,18 @@
- "2030:2030"
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
+ cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE}
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
postgresql.host: ${POSTGRESQL_HOST}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2030
spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
- deploy:
- replicas: 1
- restart_policy:
- condition: on-failure
- delay: 10s
- max_attempts: 3
networks:
external_tools_default:
fineract:
@@ -307,21 +295,18 @@
- "2031:2031"
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
+ cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE}
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
postgresql.host: ${POSTGRESQL_HOST}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2031
spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
- deploy:
- replicas: 1
- restart_policy:
- condition: on-failure
- delay: 10s
- max_attempts: 3
networks:
external_tools_default:
fineract:
@@ -333,21 +318,18 @@
- "2032:2032"
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
+ cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE}
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
postgresql.host: ${POSTGRESQL_HOST}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2032
spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
- deploy:
- replicas: 1
- restart_policy:
- condition: on-failure
- delay: 10s
- max_attempts: 3
networks:
external_tools_default:
fineract:
@@ -356,24 +338,21 @@
notifications-ms:
image: apache/fineract-cn-notifications:latest
ports:
- - "2033:2033"
+ - "2033:2033"
environment:
activemq.brokerUrl: ${ACTIVEMQ_BROKER_URL}
+ cassandra.clusterName: ${CASSANDRA_CLUSTER_NAME}
cassandra.contactPoints: ${CASSANDRA_CONTACT_POINTS}
eureka.client.serviceUrl.defaultZone: ${EUREKA_CLIENT_SERVICE_URL_DEFAULT_ZONE}
eureka.instance.hostname: ${EUREKA_INSTANCE_HOSTNAME}
postgresql.host: ${POSTGRESQL_HOST}
ribbon.listOfServers: ${RIBBON_EUREKA_SERVER}
+ server.max-http-header-size: ${SERVER_MAX_HTTP_HEADER_SIZE}
+ server.port: 2033
spring.datasource.url: jdbc:postgresql://${POSTGRESQL_HOST}:${POSTGRESQL_PORT}/seshat
system.publicKey.exponent: ${PUBLIC_KEY_EXPONENT}
system.publicKey.modulus: ${PUBLIC_KEY_MODULUS}
system.publicKey.timestamp: ${PUBLIC_KEY_TIMESTAMP}
- deploy:
- replicas: 1
- restart_policy:
- condition: on-failure
- delay: 10s
- max_attempts: 3
networks:
external_tools_default:
fineract:
@@ -383,12 +362,6 @@
image: apache/fineract-cn-fims-web-app:latest
ports:
- "8888:8888"
- deploy:
- replicas: 1
- restart_policy:
- condition: on-failure
- delay: 10s
- max_attempts: 3
networks:
external_tools_default:
fineract:
diff --git a/env_variables b/env_variables
index 12b167a..b17564f 100644
--- a/env_variables
+++ b/env_variables
@@ -13,6 +13,7 @@
POSTGRESQL_USER=postgres
RIBBON_EUREKA_SERVER=eureka:9090
SYSTEM_INITIAL_CLIENT_ID=service-runner
+SCHEDULER_USER_NAME=imhotep
FIMS_WEB_APP_IP=172.16.238.19
PROVISIONER_IP=172.16.238.20
IDENTITY_IP=172.16.238.21
diff --git a/external_tools/docker-compose.yml b/external_tools/docker-compose.yml
index 67e2579..010666d 100644
--- a/external_tools/docker-compose.yml
+++ b/external_tools/docker-compose.yml
@@ -16,7 +16,7 @@
deploy:
replicas: 1
restart_policy:
- condition: on-failure
+ condition: any
delay: 10s
max_attempts: 3
@@ -32,7 +32,7 @@
deploy:
replicas: 1
restart_policy:
- condition: on-failure
+ condition: any
delay: 10s
max_attempts: 3
@@ -48,16 +48,6 @@
POSTGRES_PASSWORD: postgres
ports:
- "5432:5432"
- healthcheck:
- test: ["CMD-SHELL", "pg_isready -U postgres"]
- interval: 1m
- retries: 5
- deploy:
- replicas: 1
- restart_policy:
- condition: on-failure
- delay: 10s
- max_attempts: 3
volumes:
- postgres-volume:/var/lib/postgresql/data
@@ -73,7 +63,7 @@
deploy:
replicas: 1
restart_policy:
- condition: on-failure
+ condition: any
delay: 10s
max_attempts: 3
volumes:
diff --git a/postman_scripts/Fineract-Cn-Initial-Requests.postman_collection.json b/postman_scripts/Fineract-Cn-Initial-Requests.postman_collection.json
index ef7e4af..51d6707 100644
--- a/postman_scripts/Fineract-Cn-Initial-Requests.postman_collection.json
+++ b/postman_scripts/Fineract-Cn-Initial-Requests.postman_collection.json
@@ -490,7 +490,7 @@
"raw": "[\n\t{\n\t\t\"name\": \"identity-v1\"\n\t}\n]"
},
"url": {
- "raw": "http://{{provisionerUrl}}/provisioner/v1/tenants/s{{tenantIdentifier}}/applications",
+ "raw": "http://{{provisionerUrl}}/provisioner/v1/tenants/{{tenantIdentifier}}/applications",
"protocol": "http",
"host": [
"{{provisionerUrl}}"
@@ -499,7 +499,7 @@
"provisioner",
"v1",
"tenants",
- "s{{tenantIdentifier}}",
+ "{{tenantIdentifier}}",
"applications"
]
}
@@ -519,6 +519,19 @@
},
{
"name": "04.000 Create rhythm-v1 application",
+ "event": [
+ {
+ "listen": "test",
+ "script": {
+ "id": "4d75f048-905b-41af-b767-4314d5e3a050",
+ "exec": [
+ "tests[\"Status code is 202\"] = responseCode.code === 202;",
+ ""
+ ],
+ "type": "text/javascript"
+ }
+ }
+ ],
"request": {
"method": "POST",
"header": [
@@ -543,7 +556,7 @@
],
"body": {
"mode": "raw",
- "raw": "{\n\t\"name\": \"rhythm-v1\",\n\t\"description\": \"Customer Service\",\n\t\"vendor\": \"Apache Fineract\",\n\t\"homepage\": \"http://rhythym-ms:2022/rhythm/v1\"\n}",
+ "raw": "{\n\t\"name\": \"rhythm-v1\",\n\t\"description\": \"Customer Service\",\n\t\"vendor\": \"Apache Fineract\",\n\t\"homepage\": \"http://rhythm-ms:2022/rhythm/v1\"\n}",
"options": {
"raw": {
"language": "json"
@@ -567,6 +580,19 @@
},
{
"name": "04.001 Assign rhythm-v1 for Tenant",
+ "event": [
+ {
+ "listen": "test",
+ "script": {
+ "id": "ba66d4b9-95a1-45de-9d59-d54308c72273",
+ "exec": [
+ "tests[\"Status code is 202\"] = responseCode.code === 202;",
+ ""
+ ],
+ "type": "text/javascript"
+ }
+ }
+ ],
"request": {
"method": "PUT",
"header": [
@@ -1985,6 +2011,7 @@
"id": "c64b529c-6e8a-4ef1-ab0d-a58b9499ade9",
"exec": [
"tests[\"Status code is 202\"] = responseCode.code === 202;",
+ "setTimeout(function(){}, [3000]);",
""
],
"type": "text/javascript"
@@ -2032,6 +2059,19 @@
},
{
"name": "05.2 Create Admin User mifos",
+ "event": [
+ {
+ "listen": "test",
+ "script": {
+ "id": "9486d316-2aca-409a-88ff-f17770249dca",
+ "exec": [
+ "tests[\"Status code is 202\"] = responseCode.code === 202;",
+ ""
+ ],
+ "type": "text/javascript"
+ }
+ }
+ ],
"request": {
"method": "POST",
"header": [
@@ -2094,6 +2134,16 @@
],
"type": "text/javascript"
}
+ },
+ {
+ "listen": "prerequest",
+ "script": {
+ "id": "f0680830-0535-4a81-9151-84e78309789c",
+ "exec": [
+ "var delay3seconds = setTimeout(function(){}, [3000]);"
+ ],
+ "type": "text/javascript"
+ }
}
],
"request": {
@@ -2428,6 +2478,16 @@
],
"type": "text/javascript"
}
+ },
+ {
+ "listen": "prerequest",
+ "script": {
+ "id": "5e84b9b4-361a-4ab5-9ef7-1766a05d940e",
+ "exec": [
+ "var delay3seconds = setTimeout(function(){}, [3000]);"
+ ],
+ "type": "text/javascript"
+ }
}
],
"request": {
@@ -2662,7 +2722,7 @@
"script": {
"id": "5830a8cd-f000-4b41-bfd2-1ac8c96812e4",
"exec": [
- "tests[\"Status code is 200\"] = responseCode.code === 200;",
+ "tests[\"Status code is 202\"] = responseCode.code === 202;",
"",
"",
"",
@@ -2800,6 +2860,19 @@
},
{
"name": "07.1 Create INCOME ledgers",
+ "event": [
+ {
+ "listen": "test",
+ "script": {
+ "id": "6260a2d4-def6-40e4-a87e-38f3d01f16b3",
+ "exec": [
+ "tests[\"Status code is 202\"] = responseCode.code === 202;",
+ ""
+ ],
+ "type": "text/javascript"
+ }
+ }
+ ],
"request": {
"method": "POST",
"header": [
@@ -2841,6 +2914,19 @@
},
{
"name": "07.2 Create EXPENSE Ledgers",
+ "event": [
+ {
+ "listen": "test",
+ "script": {
+ "id": "be1a9019-cb18-4084-802b-cc6169e0b091",
+ "exec": [
+ "tests[\"Status code is 202\"] = responseCode.code === 202;",
+ ""
+ ],
+ "type": "text/javascript"
+ }
+ }
+ ],
"request": {
"method": "POST",
"header": [
@@ -2882,6 +2968,19 @@
},
{
"name": "07.3 Create ASSETS ledgers",
+ "event": [
+ {
+ "listen": "test",
+ "script": {
+ "id": "3585bd0e-9598-43e6-b678-645bd64855dd",
+ "exec": [
+ "tests[\"Status code is 202\"] = responseCode.code === 202;",
+ ""
+ ],
+ "type": "text/javascript"
+ }
+ }
+ ],
"request": {
"method": "POST",
"header": [
@@ -2923,6 +3022,19 @@
},
{
"name": "07.4 Create LIABILITY ledgers",
+ "event": [
+ {
+ "listen": "test",
+ "script": {
+ "id": "708e63ea-73ac-4c20-a92d-915fba3135f6",
+ "exec": [
+ "tests[\"Status code is 202\"] = responseCode.code === 202;",
+ ""
+ ],
+ "type": "text/javascript"
+ }
+ }
+ ],
"request": {
"method": "POST",
"header": [
@@ -2964,6 +3076,19 @@
},
{
"name": "07.5 Create EQUITY ledgers",
+ "event": [
+ {
+ "listen": "test",
+ "script": {
+ "id": "e240003c-12d2-492c-bf43-970ed16564d5",
+ "exec": [
+ "tests[\"Status code is 202\"] = responseCode.code === 202;",
+ ""
+ ],
+ "type": "text/javascript"
+ }
+ }
+ ],
"request": {
"method": "POST",
"header": [
@@ -3644,7 +3769,7 @@
"response": []
},
{
- "name": "11.2. Get customer products",
+ "name": "11.20. Get customer products",
"protocolProfileBehavior": {
"disableBodyPruning": true
},
@@ -3694,6 +3819,56 @@
"response": []
},
{
+ "name": "11.21. Get member1 products",
+ "protocolProfileBehavior": {
+ "disableBodyPruning": true
+ },
+ "request": {
+ "method": "GET",
+ "header": [
+ {
+ "key": "Authorization",
+ "value": "{{adminUserToken}}"
+ },
+ {
+ "key": "User",
+ "value": "{{adminUser}}"
+ },
+ {
+ "key": "Content-Type",
+ "value": "application/json"
+ },
+ {
+ "key": "X-Tenant-Identifier",
+ "value": "{{tenantIdentifier}}"
+ }
+ ],
+ "body": {
+ "mode": "raw",
+ "raw": ""
+ },
+ "url": {
+ "raw": "http://{{depositUrl}}/deposit/v1/instances?customer=member1",
+ "protocol": "http",
+ "host": [
+ "{{depositUrl}}"
+ ],
+ "path": [
+ "deposit",
+ "v1",
+ "instances"
+ ],
+ "query": [
+ {
+ "key": "customer",
+ "value": "member1"
+ }
+ ]
+ }
+ },
+ "response": []
+ },
+ {
"name": "11.3 Get customer address",
"protocolProfileBehavior": {
"disableBodyPruning": true
@@ -3743,4 +3918,4 @@
}
],
"protocolProfileBehavior": {}
-}
\ No newline at end of file
+}