git.net

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Fineract CN observations from a newcomer


Hello Juhan,

Thank you for the taking time to edit those wiki pages. That was very
helpful and fast.

Besides the updates to the *Importing Microservices in IntelliJ* wiki page,
I think tabulating Step 1 of the *How-To-Build* wiki page and allowing
developers to choose when to fork the Apache repositories in Step 2 is a
good approach.

Let me attempt to answer your questions:

1. You have to ensure that Cassandra and MySQL/MariaDB are services running
locally only when Option B is used. This is because by adding option
`-Ddemoserver.persistent=true` (which Option B is all about) indicates that
you have chosen to have persistence happen locally.
2 -> 4. When running Option A, you're using the microservice datastores
which are fineract-cn-cassandra and fineract-cn-mariadb. Just make mysql
service inactive or free port 3306 if mysql service is active (similar to
cassandra and 9042). When you choose `-Ddemoserver.provision=true` whether
Option A or Option B i.), you're choosing to create the playground and
seshat databases in Cassandra and MySQL. You're right, I also see
fineract-cn-cassandra and fineract-cn-mariadb as middlemen.

Keep up the good work.

Seasons greetings,
Isaac Kamga.


On Fri, Dec 21, 2018 at 10:42 AM Juhan Aasaru <aasaru@xxxxxxxxx> wrote:

> Hi!
>
> Thanks for the edit privileges, Ed and Isaac.
> I now made changes to both wiki pages.
>
> In "How to build Fineract CN"
>
> https://cwiki.apache.org/confluence/display/FINERACT/How+To+Build+Apache+Fineract+CN
> I restructured step 1 into a table for better readability across Linux/Mac.
> I hope one day someone with Windows adds a separate column for Windows
> specific instructions.
>
> I made forking all the libraries optional in step 2. If someone comes back
> with why the forking is needed
> then I'm happy to remove the option that suggests directly cloning apache
> repositories.
>
> I still have trouble understanding Step 3 so I couldn't do anything there
> now.
> Is there anyone who could please explain to me how this works.
> I tried to formalize my confusion into concrete questions:
>
> 1. Do I have to run Cassandra and MySQL/MariaDB locally for both options -
> A and B described under step 3?
> 2. Is running fineract-cn-cassandra and fineract-cn-mariadb optional (when
> choosing option B)?
> 3. If one chooses Option A and runs fineract-cn-cassandra and
> fineract-cn-mariadb microservices then what is the value added by these
> services?
> Are these services like middlemen between the actual database?
> 4. How do the ports work when one decides to run fineract-cn-cassandra.
> Locally installed Cassandra listens port 9042, fineract-cn-cassandra
> connects to that but what port does it serve?
>
> Thanks!
> Juhan Aasaru
>
>
> Kontakt Isaac Kamga (<isaac.kamga@xxxxxxxxx>) kirjutas kuupäeval N, 20.
> detsember 2018 kell 03:07:
>
> > Hello Juhan,
> >
> > Thank you for taking the time to email your suggestions. I wrote some
> > of the pages you referred to and personally appreciate your feedback.
> >
> > Please be aware that this is open source space and your suggestions
> > are ALWAYS WELCOME. So kindly use the privileges granted your
> > confluence account by Ed to edit your ideas into the said pages. If
> > you don't receive any objections to your suggestions within a week, I
> > think it generally means it's a go ahead as it doesn't break anything
> > for anybody.
> >
> > Thanks once again and I look forward to working with you.
> >
> > Seasons greetings,
> > Isaac Kamga.
> >
> > On Wed, Dec 19, 2018 at 7:39 PM Juhan Aasaru <aasaru@xxxxxxxxx> wrote:
> > >
> > > Hi, community!
> > >
> > > I discovered Fineract CN project just recently and found it very
> > > interesting and ambitious and it raised a great interest in me. I went
> > > through all the documentation and materials I could find. I thought I
> > share
> > > my first impressions and ideas on how I think the project could be
> > further
> > > improved and highlight some minor issues that I found.
> > >
> > > 1. Fineract CN is targeted to a wider audience than its predecessors so
> > in
> > > my opinion, Fineract CN materials and discussions should be separated
> > from
> > > the Fineract project as it causes confusion and noise. I see that there
> > is
> > > a separate Jira project created for Fineract CN but not yet a separate
> > > Confluence space nor separate developers list. Fineract CN materials
> are
> > > mostly grouped under "Fineract CN" but there is also some material
> found
> > > elsewhere (for example Fineract User Zone -> Apache Fineract CN Users
> > > Guide).
> > >
> > > 2. I had some comments about Confluence pages. First I thought to
> > register
> > > myself as a Confluence user but after that, I still didn't have any
> > > permissions to add comments to pages. So I thought I write them here
> for
> > > now.
> > >
> > > 2.1. Comments on "How to build Apache Fineract CN
> > > <
> >
> https://cwiki.apache.org/confluence/display/FINERACT/How+To+Build+Apache+Fineract+CN
> > >
> > > "
> > >
> > > The wiki page has a lot of info and organizing it into logical steps
> > would
> > > help a newcomer out and it wouldn't hurt to add a few lines explaining
> > why
> > > some step is done and also add a link to demo_server Readme.md
> > >
> > > Luckily wiki page has all the info in there and so eventually I managed
> > to
> > > get the app running in my local environment (Mac). For some reason, I
> > > couldn't get Cassandra working but I managed to solve this by running
> > > Cassandra from a Docker image instead:
> > > docker run -p9042:9042 -p7199:7199 cassandra:3.11
> > > This brought me to an idea that a docker-compose.yml could be set up to
> > > create an environment with all the running services (you can google
> > "docker
> > > compose npm local" for more info). I know it adds overhead (won't
> > probably
> > > work well on slow computers) but it would speed up getting the demo
> > server
> > > running locally.
> > >
> > > All FN projects have Gradle wrapper in use so I don't see why there is
> a
> > > need to install Gradle (Mac users are suggested to install Maven as
> > > well). Also, I didn't get why there is a need for Nginx. Creating a
> fork
> > of
> > > all the Fineract CN Github repositories could be an optional step - one
> > > could just clone the repos directly and switch to a fork only if he
> > > actually plans contributing.
> > >
> > > 2.2. Comments on "Importing Fineract CN Microservices Into IntelliJ
> > > <
> >
> https://cwiki.apache.org/confluence/display/FINERACT/Importing+Fineract+CN+Microservices+Into+IntelliJ
> > >
> > > "
> > >
> > > I think it would be good to suggest also importing modules under
> > > "integration-tests/*" into IntelliJ IDEA
> > >
> > > 3. I was surprised to see that Fineract CN is based on Spring Boot 1. I
> > > didn't find from anywhere in the roadmap about any plans to migrating
> on
> > > Spring Boot 2. I think that at this stage it would be wise to stay up
> to
> > > date with the base framework.
> > >
> > > Spring Boot 2 comes with Hikari Connection Pool that is very fast and
> in
> > my
> > > opinion, Hikari combined with "com.mysql.jdbc.Driver" would solve the
> > > licensing problem described by
> > > https://issues.apache.org/jira/browse/FINCN-26 as well.
> > >
> > > Some minor bugs in documentation that caught my attention:
> > >
> > > 1. This page http://fineract.apache.org/ says
> > > "To subscribe, send a blank email to
> user-subscribe@xxxxxxxxxxxxxxxxxxx"
> > > I got a response back:
> > > Fineract user list is closed. Please see dev.at.fineract list instead
> > >
> > > 2. https://cwiki.apache.org/confluence/display/FINERACT/Fineract+Home
> > > Says: "On Jira tickets, please see the label CN.  "
> > > This made me search for issues in project
> > > https://issues.apache.org/jira/projects/FINERACT/ (with labels=CN) but
> > some
> > > time later I found out that correct Jira project link for Fineract CN
> is
> > > actually:
> > > https://issues.apache.org/jira/projects/FINCN
> > >
> > > Thank you for your attention and I hope to become a contributor soon.
> > >
> > > Kind regards
> > > Juhan Aasaru
> >
>