15.1.0 • Published 5 months ago

@mojaloop/thirdparty-api-svc v15.1.0

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
5 months ago

thirdparty-api-svc

Git Commit Git Releases CircleCI

The thirdparty-api-svc service handles HTTP Requests from the Mojaloop Third Party API

Overview

Runtime Configuration

Runtime configuration is handled by rc, and can be specified using either Environment Variables, or a .json file.

See ./config/default.json for an example config file.

When setting configuration using environment variables, the THIRD_PARTY environment variable prefix is required. See src/shared/config.ts to understand how these variables are configured.

Key Config Options

*Note: See ./config/default.json for all available config options, and their default values.*

NameEnv VarjsonPathDescription
PORTTHIRD_PARTY_PORT.PORTThe TCP port the Hapi server should start on
HOSTTHIRD_PARTY_HOST.HOSTThe hostname the Hapi server should bind to
ENDPOINT_SERVICE_URLENDPOINT_SERVICE_URL.ENDPOINT_SERVICE_URLThe internal service used to retrieve endpoints for Mojaloop Participants. Currently this is the central-ledger.

Setup

Clone repo

git clone git@github.com:mojaloop/thirdparty-api-svc.git

Improve local DNS resolver

Add the 127.0.0.1 thirdparty-api-svc.local entry in your /etc/hosts so the thirdparty-api-svc is reachable on http://thirdparty-api-svc.local:3008. Elsewhere use http://localhost:3008

Install service dependencies

cd thirdparty-api-svc
npm ci

Run local dockerized thirdparty-api-svc

npm run docker:build
npm run docker:run

To check the thirdparty-api-svc health visit http://thirdparty-api-svc.local:3008/health

Auditing Dependencies

We use audit-ci along with npm audit to check dependencies for node vulnerabilities, and keep track of resolved dependencies with an audit-ci.jsonc file.

To start a new resolution process, run:

npm run audit:fix

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

npm run audit:check

The audit-ci.jsonc contains any audit-exceptions that cannot be fixed to ensure that CircleCI will build correctly.