commit | 252574ee0a8c540adee4d0917ae684f4720cefeb | [log] [tgz] |
---|---|---|
author | Juhan Aasaru <Juhan.Aasaru@nortal.com> | Thu Sep 05 17:10:44 2019 +0300 |
committer | Juhan Aasaru <Juhan.Aasaru@nortal.com> | Thu Sep 05 17:10:44 2019 +0300 |
tree | 8f5676a0b32e22b5cef6a01727de08c7cc349cac | |
parent | fb8b48b92b80b69f4dddc90b19bc90538e049fee [diff] |
add fims-web-app add Postman provisioning scripts taken from https://github.com/vishwasbabu/ProvisioningFineractCN rename ledger-ms to accounting-ms
This project contains Docker Compose Scripts for running Fineract CN especially in Development.
java -cp external_tools/lang-0.1.0-BUILD-SNAPSHOT.jar org.apache.fineract.cn.lang.security.RsaKeyPairFactory UNIX > .env
This library is taken from fineract-cn-lang. If needed you can pull a fresh copy of it:
wget https://mifos.jfrog.io/mifos/libs-snapshot-local/org/apache/fineract/cn/lang/0.1.0-BUILD-SNAPSHOT/lang-0.1.0-BUILD-SNAPSHOT.jar lang-0.1.0-BUILD-SNAPSHOT.jar
cat env_variables >> .env
If you run some service from localhost then you need to change the host parameter to ‘localhost’ of that service in .env file.
cd external-tools docker-compose up
In the docker-compose.yml (that resides in project root) there are more than 10 services defined. Running all services together consumes a lot of memory.
First only start provisioner-ms by running following in project root:
docker-compose up provisioner-ms
after it has started (and created table seshat to postgres) stop it and start a subset of services.
For example you could start the following micro services and an fims-web-app
docker-compose up provisioner-ms identity-ms office-ms customer-ms accounting-ms fims-web-app
If you want you can add other micro services (listed in docker-compose.yml) to the list, for example you could also add deposit-account-management-ms
We provide a postman-request-collection as well as a postman-environment that defines variables that are used to hold values received in responses. Both files are located under postman-initial-requests folder:
postman_scripts/Fineract-Cn-Initial-Requests.postman_collection.json postman_scripts/Fineract-Cn-Initial-Setup-Environment.postman_environment.json
Initialize Postman as follows:
Import
and then selecting the file.The first request will retrieve a token. The response should look like this, with a different token:
{ "token": "Bearer eyJhbGciOiJSUzUxMiJ9.eyJhdWQiOiJwcm92aXNpb25lci12MSIsInN1YiI6IndlcGVtbmVmcmV0IiwiL21pZm9zLmlvL3NpZ25hdHVyZVRpbWVzdGFtcCI6IjIwMTctMDQtMThUMDlfNDRfMjIiLCIvbWlmb3MuaW8vdG9rZW5Db250ZW50IjoiUk9MRV9BRE1JTiIsImlzcyI6InN5c3RlbSIsImlhdCI6MTUwMDA1NjgxNywiZXhwIjoxNTAwNDE2ODE3fQ.OfxTUTStJbKQc4rAPW5PLIQYNjCG_uqcNPR4up6pIQBWLDxkgEiU9EF1WrB5NQdzXBJIHqjDFQpaVywm5DersIh4LxPGD3MZj3TqZK5_LUcZvBDTa4Xgb41e3xXkWB4TkN6KqfmiK12Ngjrrj7qZGBdtypDmFmZwKQRZIOL6T3QbI7LpbPGpeWjpWZirFgtcn5B1Z_h3r9rirCzecUdVjlaplQufxDuVFJS0R3N67pyuGQENvCAC716ID5KbokTQtITXfjnCztFuQBbtCPcYLIzxsKv_-E5k6Gd0pv01OC0XpY3NSgfAolVVgvSXKoRnL3NwAMP2yuzX6i8hR_q82Q", "accessTokenExpiration": "2019-07-18T22:26:57.784" }
If you don't get a token there is something wrong with your setup. The token is necessary for authentication in other requests thus be sure that this steps works.
Important: Be sure to execute the requests in the right order! If you execute the requests that gives you the initial password (request “03.2 Create Identity Service for Tenant”) twice you will not be able to retrieve the initial password again (due to the implementation of the identity service). If that happens the variable antonyUserPassword is empty (undefined) and you will not be able to sign in antony and change his password (03.3, 03.4).
docker-compose logs provisioner-ms
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. This user has admin rights and is able to manage offices,customers and thier deposits.
Navigate to http://localhost:8888 in your browser and enter the credentials of the user you want to sign in with.
The following user-profile is available in fims-web-app after above setup was completed successfully:
tenant: playground user: mifos password: password
Postman scripts use service names (postgres, provisioner-ms, etc) when refering 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:
127.0.0.1 provisioner-ms 127.0.0.1 identity-ms 127.0.0.1 office-ms 127.0.0.1 customer-ms 127.0.0.1 portfolio-ms 127.0.0.1 accounting-ms 127.0.0.1 deposit-account-management-ms 127.0.0.1 teller-ms 127.0.0.1 reporting-ms 127.0.0.1 cheques-ms 127.0.0.1 payroll-ms 127.0.0.1 group-ms 127.0.0.1 postgres
cd external-tools docker-compose stop docker-compose rm docker volume rm external_tools_cassandra-volume docker volume rm external_tools_postgres-volume docker-compose up
There are some scripts in https://github.com/openMF/fineract-cn-containers that have been developed in the past for this purpose.