Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


This is work in progress - provisioning doesn't work for some reason (sad)

Fineract-CN contains of more than a dozen of micro services. One doesn't need to run all of them at once - this would be actually quite resource consuming.

...

Once you complete these steps you will get basic understanding how fineract-cn works and how its micro services are provisioned.

Once you have completed these steps you can move on ant try to provision more micro services.


What You will need

  • Java8, Docker, docker-compose, Postman
    • it is possible to go without Docker and Docker compose (you need to install Postgres and Cassandra yourself) but we don't cover it here.

...

Open http://identity-ms:2021/ with your browser. You should get error served by micro service:

HTTP ERROR: 404

Problem accessing /info. Reason:

    Not Found

Check if Identity has registered with Eureka

...

Execute Postman step03.2 Assign identity-v1 for Tenant and obtain Tenant Admin (user antony) Password

→ Now identity tables are created to tenant 'playground' database in cassandra.

→ Identity has a nickname 'isis' and you should see that at least 9 tables (names start with prefix 'isis_' ) have been created under Cassandra Keyspace

→ Identity doesn't keep anything in Postgre database so there are no new tables there.→ for some reason currently this gives error

Execute Postman step03.3 Login Antony (tenant superadmin) with obtained password

Execute Postman step03.4 Change Antony Password to 'antonyPassword'

→ Fineract forces every user to change their password on first login. This is why we are changing the password and logging in again (in next step)

→ If we would log in with Fims Web App then the UI would tell us to change the password.

Execute Postman step03.5 LOGIN ANTONY (tenant SuperAdmin) with pwd 'antonyPassword'

... skip bunch of steps...

Execute Postman step05.1 Create administrator role for tenant "playground"

...

You should have schemas 'seshat' and 'playground' in Cassandra and Postgres databases.

Send your own requests to Identity

Identity Micro Service is responsible for managing users and their roles - a bit more info can be found here: Fineract CN Project Structure#identity

From identity code open UserRestController and find method getUserPermissions - this method serves the same request '05.6 Pull operator permissions' that we just sent with Postman.

Examine yourself what kind of other requests you could send to Identity.

Launch Fims Web App

You should be able to log in to Fims Web App (untested)

git clone https://github.com/apache/fineract-cn-fims-web-app

cd fineract-cn-fims-web-app

npm i

npm run dev

Open localhost:8888 and log in with

tenant: playground

user: operator
password: operatorPassword

How to reset state to start from zero

cd fineract-cn-docker-compose/external_tools

...