...
- You clone Fineract CN repositories directly
- later if you want to contribute to some microservice then you have to create a fork and switch to that fork to create a pull request
- this way you don't have to fork anything and you can use `git pull` to get latest updates
- For this option: download and run the script using `bash initial-setup.sh apache`,
- You fork all the Apache Fineract CN repositories to yourGithubHandle and check out code from there.
- This way you can directly work on your forks (but your forks don't get code updates automatically with git pull)
- after you have logged in to Github with yourGithubHandle and created forks of apache Fineract CN repositories
- download For this option: download and run the script using `bash initial-setup.sh yourGithubHandle`,
Feedback Note : Ensure that you get BUILD SUCCESSFUL after iteration for EACH repository. Also ensure that artifacts show up in $USER_HOME/.m2/repository/org/apache/fineract/cn/
Step 3: Orchestrate Microservices Using The Demo-server
Read what demo server is about.
Note: On average the build will take at least 30 - 40 mins to complete when building on 8 (x86-64) dedicated cores, >=16 GB of memory and an SSD drive.
...
cd into `integration-tests/fineract-cn-demo-server/build/libs/`.You can read more information about demo server.
No services locally listening on ports: 4200, 61616, 2021, 2022, 2022, 2023, 2024, 2025, 2026, 2028, 2029, 2030, 2031, 2032, 2033
Running demo-server with or without persistence
...
If you have successfully used command I to run demo-server before, then use command II HENCEFORTH which uses the local databases created by command I.
Running demo-server after initial run has been successful - use "command II"
Command II: `java -Ddemoserver.persistent=true -Dcustom.cassandra.contactPoints=127.0.0.1:9042 -Dcassandra.cluster.user=cassandra -Dcassandra.cluster.pwd=password -Dcustom.mariadb.host=localhost -Dcustom.mariadb.user=root -Dcustom.mariadb.password=mysql -jar demo-server-0.1.0-BUILD-SNAPSHOT.jar`
Troubleshooting Step 3.
...
- If you encounter an error where MySQL can't connect such as "org.mariadb.jdbc.internal.util.dao.QueryException: Could not connect to address=(host=localhost)(port=3306)(type=master) : Connection refused (Connection refused)", then ensure that bind-address = 127.0.0.1 in your /etc/mysql/mysql.conf.d/mysqld.cnf .
...
- If you experience an error related to insufficient memory when running command II, you might have to stop all java-related processes and run demo-server with the '"Xms2G -Xmx2G" option OR just quickly restart your system altogether.
How to verify demo server started up successfully
...
Service | Port | Link |
---|---|---|
Identity Service: | 2021 | http://localhost:2021/identity/v1 |
Office Service: | 2023 | http://localhost:2023/office/v1 |
Customer Service | 2024 | http://localhost:2024/customer/v1 |
Accounting Service | 2025 | http://localhost:2025/accounting/v1 |
Portfolio Service | 2026 | http://localhost:2026/portfolio/v1 |
Deposit Service | 2027 | http://localhost:2027/deposit/v1 |
Teller Service | 2028 | http://localhost:2028/teller/v1 |
Reporting Service | 2029 | http://localhost:2029/reporting/v1 |
Cheque Service | 2030 | http://localhost:2030/cheques/v1 |
Payroll Service | 2031 | http://localhost:2031/payroll/v1 |
Group Service | 2032 | http://localhost:2032/group/v1 |
Notification Service | 2033 | http://localhost:2033/notification/v1 |
These endpoints below signal The following log statement signals the completion of the build:
...
Only after this has occurred can you move to the next step. Beware Note that the logs won't stop after this statement.
Step 4: Run The Fims Web App
Read brief info about what fims-web-app is about.
- Open a new terminal And cd into ‘integration-tests/fineract-cn-fims-web-app'
- Run ‘npm i’
Feedback Note : If there are packages such as @angular-devkit or @rxjs which you aren’t installed, then do so manually at this point;
Run ’npm run dev’
̂̂̂̂> fims@0.1.0 dev /home/ikamga/Documents/Three/Code/integration-tests/fims-web-app
> ng serve --verbose --proxy-config proxy.conf.json
** NG Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ ** ̂
……
……
……
index.html 3.69 kB 0 Wait until a similar message is displayed in logs:
chunk {0} index.html 1.03 XX kB [entry] [rendered]
webpack: Compiled successfully.
Note that, if you are running the system from a remote server, you will have to replace 'localhost' in 'http://localhost' in lines 3,10,17,etc with the IP address of your server in your proxy.conf.json file.Feedback Note : webpack: Compiled successfully.
- Open http://localhost:4200 on fims - backoffice
- Login to the platform using the credentials,
...