Apache Fineract CN library to support unit, component, and integration testing for services and libraries.

Clone this repo:
  1. 9ad3e9c Delete travis.sh by aasaru · 1 year, 4 months ago develop
  2. 5baaf5c Delete .travis.yml by aasaru · 1 year, 4 months ago
  3. d61e23a Merge pull request #12 from aasaru/gradle_4.10.3 by aasaru · 4 years, 7 months ago
  4. 687c1fc FINCN-179 gradle to 4.10.3, FINCN-178 make Travis build forks by Juhan Aasaru · 4 years, 7 months ago
  5. 537e140 Merge pull request #11 from apache/FINCN-114 by Isaac Kamga · 4 years, 8 months ago

Apache Fineract CN Test Build Status

Abstract

Apache Fineract CN is an application framework for digital financial services, a system to support nationwide and cross-national financial transactions and help to level and speed the creation of an inclusive, interconnected digital economy for every nation in the world.

Prerequisites

Runtime

Install Java 8 as described at https://docs.oracle.com/javase/8/docs/technotes/guides/install/install_overview.html.

PostgreSQL

Install PostgreSQL as described at https://www.digitalocean.com/community/tutorials/how-to-install-and-use-postgresql-on-ubuntu-16-04.

After installation you need to create the meta database:

sudo -i -u postgres psql
CREATE DATABASE system_console;

Cassandra

Install Apache Cassandra as described at https://wiki.apache.org/cassandra/GettingStarted.

After installation you need to create the meta keyspace:

cqlsh
CREATE KEYSPACE IF NOT EXISTS system_console
  WITH REPLICATION = {
      'class' : 'SimpleStrategy',
      'replication_factor' : 3
  };

Multi-tenancy

Multi-tenancy is reached by providing separate data storage on a per tenant basis.

For every tenant a new database instance, and a new keyspace is created internally. A tenant aware component provides transparent access to these resources.

Versioning

The version numbers follow the Semantic Versioning scheme.

In addition to MAJOR.MINOR.PATCH the following postfixes are used to indicate the development state.

  • BUILD-SNAPSHOT - A release currently in development.
  • RELEASE - General availability indicates that this release is the best available version and is recommended for all usage.

The versioning layout is {MAJOR}.{MINOR}.{PATCH}-{INDICATOR}[.{PATCH}]. Only milestones and release candidates can have patch versions. Some examples:

1.2.3-BUILD-SNAPSHOT
1.3.5-RELEASE

License

See LICENSE file.