Merge pull request #7 from Izakey/FINCN-114

Migrate test library from MariaDB to PostgreSQL
tree: 7547c0b04730d40b7993e91645be035e743a49a2
  1. gradle/
  2. src/
  3. .gitignore
  4. .travis.yml
  5. build.gradle
  6. gradlew
  7. gradlew.bat
  8. HEADER
  9. LICENSE
  10. NOTICE.txt
  11. README.md
  12. settings.gradle
  13. travis.sh
README.md

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.