Skip to content

rasputtintin/central-settlement

 
 

Repository files navigation

central-settlements

Git Commit Git Releases Docker pulls CircleCI

The Central Settlements service is part of the Mojaloop project and deployment.

The central settlements service exposes Settlement API to manage the settlements between FSPs and the Central Hub. The service manages Settlement Windows and Settlements Event Triggers and provides information about FSPs accounts and settlements.

Contents:

Deployment

TBA

Configuration

Currently the only configuration, necessary is kept here

Environmental variables

Currently all is set into the config.

API

The Markdown version of API is available here The actual Swagger API documentation can be found here

Logging

Logs are sent to standard output by default.

Tests

Includes unit tests at the moment. Functional and integration are outstanding.

Running the tests:

npm run test:all

Tests include code coverage via istanbul. See the test/ folder for testing scripts.

Running Integration Tests interactively

If you want to run integration tests in a repetitive manner, you can startup the test containers using docker-compose, login to running central-settlement container like so:

docker-compose -f docker-compose.yml -f docker-compose.integration.yml up

#first time only:
docker exec -it cs_central-ledger sh
npm run migrate

#in a new shell
docker exec -it cs_central-settlement sh
npm run test:int

Auditing Dependencies

We use npm-audit-resolver along with npm audit to check dependencies for vulnerabilities, and keep track of resolved dependencies with an audit-resolv.json file.

To start a new resolution process, run:

npm run audit:resolve

You can then check to see if the CI will pass based on the current dependencies with:

npm run audit:check

And commit the changed audit-resolv.json to ensure that CircleCI will build correctly.

About

Service to expose the Mojaloop Settlements API

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 81.4%
  • Shell 18.4%
  • Dockerfile 0.2%