Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat!: fx and interscheme implementation #353

Merged
merged 53 commits into from
Dec 17, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
9bf52f0
feat(mojaloop/#3689): fx quotes pov implementation (#326)
oderayi Mar 8, 2024
223fbdc
chore(snapshot): 15.8.0-snapshot.11
oderayi Mar 8, 2024
dd5d439
fix(mojaloop/#3689): fx quotes fixes (#328)
oderayi Mar 18, 2024
349ca83
fix(mojaloop/#3689): fx quotes bug fix (#329)
oderayi Mar 18, 2024
8fcf844
feat: enable sending events directly to Kafka (#332)
kalinkrustev May 28, 2024
b2d1418
chore: fix merge conflicts
oderayi May 29, 2024
1b57edc
feat(mojaloop/#3933): update participant accounts validation (#333)
oderayi Jun 6, 2024
cd93ed5
add check for db on api, fix docker compose
kleyow Jun 7, 2024
e72a219
chore(snapshot): 15.8.0-snapshot.17
kleyow Jun 7, 2024
45a5bf8
disable coverage, fix image scan
kleyow Jun 7, 2024
63e5485
chore(snapshot): 15.8.0-snapshot.18
kleyow Jun 7, 2024
d2057b3
disable coverage, fix image scan
kleyow Jun 7, 2024
86ed870
chore(snapshot): 15.8.0-snapshot.19
kleyow Jun 7, 2024
71b7384
image scan
kleyow Jun 7, 2024
29904f6
chore(snapshot): 15.8.0-snapshot.20
kleyow Jun 7, 2024
203abca
revert
kleyow Jun 8, 2024
0bcb479
chore(snapshot): 15.8.0-snapshot.21
kleyow Jun 8, 2024
4bae7f7
feat: allow UUID v7 in the API patterns (#334)
kalinkrustev Jun 10, 2024
ec4259f
Merge branch 'feat/fx-impl' of github.com:mojaloop/quoting-service in…
oderayi Jun 19, 2024
df4d342
feat(csi-20 & csi-164): parameterize 'switch' id (#339)
oderayi Jun 25, 2024
a151555
fix: quotes participants validation (#340)
vijayg10 Jun 27, 2024
39b8bf6
Merge branch 'feat/fx-impl' of github.com:mojaloop/quoting-service in…
oderayi Jun 27, 2024
63fd5cf
chore(snapshot): 15.8.0-snapshot.23
oderayi Jun 27, 2024
5fbe158
chore(snapshot): 15.8.0-snapshot.24
oderayi Jun 27, 2024
8e879f8
feat(mojaloop/#3991): add support for cross-network proxy routing (#341)
oderayi Jul 8, 2024
283f173
fix: deps
kalinkrustev Jul 10, 2024
ac17e67
chore(snapshot): 15.8.0-snapshot.32
kalinkrustev Jul 10, 2024
0a0ca9f
feat(csi-334): updated proxyCache lib to use redis cluster (#342)
geka-evk Jul 24, 2024
ca73b2d
fix(csi-414): fixed TypeError - Cannot read properties of undefined; …
geka-evk Aug 1, 2024
c6b141f
fix(csi-414): updated deps
geka-evk Aug 1, 2024
82ae9f3
chore(snapshot): 15.8.0-snapshot.34
geka-evk Aug 1, 2024
0c94cdf
fix(csi-411): disable validation on proxied request (#346)
kleyow Aug 12, 2024
bf4fce7
fix(csi-498): generated accept/contentType headers based on requested…
geka-evk Aug 16, 2024
5d22d4d
feat(mojaloop/#3885): extend fxquote functionality to persistant mode…
kleyow Aug 19, 2024
a2cae31
feat(mojaloop/#3817): harden fx quotes (#345)
oderayi Aug 20, 2024
91571b9
fix(mojaloop/#3817): restore proxied source validation (#349)
oderayi Aug 21, 2024
0d8fc24
chore: renable coverage and improve coverage (#350)
kleyow Aug 22, 2024
797b63f
fix(csi-550): add logs to QuotesModel (#351)
geka-evk Aug 30, 2024
d4cc0e9
fix: await transaction commit and rollback and avoid unhandledPromise…
kalinkrustev Aug 30, 2024
7acc88f
feat: add ULID support (#355)
kalinkrustev Sep 25, 2024
3ef604e
Merge branch 'main' into feat/fx-impl
kalinkrustev Sep 30, 2024
adcf757
fix: regex
kalinkrustev Sep 30, 2024
7a17575
fix: merge conflict
kalinkrustev Sep 30, 2024
f62cc1a
fix: github-advanced-security alerts
kalinkrustev Oct 21, 2024
00c2f18
fix: bump api version to 2.0
oderayi Dec 17, 2024
5a11158
chore: update dependencies
oderayi Dec 17, 2024
a9f3bfd
Merge branch 'main' of github.com:mojaloop/quoting-service into feat/…
oderayi Dec 17, 2024
d20f4dd
chore: fix audit
oderayi Dec 17, 2024
94c2e09
chore: upgrade eslint and fix peer dependency conflicts
oderayi Dec 17, 2024
ae463f0
doc: add sequence diagram for fx quotes
oderayi Dec 17, 2024
ea33bb8
doc: rename switch
oderayi Dec 17, 2024
feda83e
doc: update fxquotes seq. diagram
oderayi Dec 17, 2024
25e3869
doc: update fxquotes seq. diagram
oderayi Dec 17, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 11 additions & 32 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -281,19 +281,6 @@ jobs:
- run:
name: Create dir for test results
command: mkdir -p ./test/results
# - run:
# name: Build and start the docker containers
# command: |
# ## This is not needed as we are only doing narrow-integration tests.
# # docker-compose build
# ## Lets pull only the Services needed for the Integration Test
# docker-compose pull mysql kafka init-kafka
# ## Lets startup only the Services needed for the Integration Test
# docker-compose up -d mysql kafka init-kafka
# ## Check straight away to see if any containers have exited
# docker-compose ps
# ## wait for services to be up and running
# npm run wait-4-docker
- run:
name: Prepare test environment
command: |
Expand All @@ -305,13 +292,6 @@ jobs:
command: |
npm rebuild
npm run test:int
# environment:
# ENDPOINT_URL: http://localhost:4545/notification
# - store_artifacts:
# path: ./test/results
# destination: test
# - store_test_results:
# path: ./test/results

vulnerability-check:
executor: default-docker
Expand Down Expand Up @@ -452,14 +432,14 @@ jobs:
- run:
name: Pull base image locally
command: |
echo "Pulling docker image: node:$NVMRC_VERSION-alpine"
docker pull node:$NVMRC_VERSION-alpine
echo "Pulling docker image: node:$NVMRC_VERSION-alpine3.19"
docker pull node:$NVMRC_VERSION-alpine3.19
## Analyze the base and derived image
## Note: It seems images are scanned in parallel, so preloading the base image result doesn't give us any real performance gain
- anchore/analyze_local_image:
# Force the older version, version 0.7.0 was just published, and is broken
anchore_version: v0.6.1
image_name: "docker.io/node:${NVMRC_VERSION}-alpine ${DOCKER_ORG:-mojaloop}/$CIRCLE_PROJECT_REPONAME:local"
image_name: "docker.io/node:$NVMRC_VERSION-alpine3.19 ${DOCKER_ORG:-mojaloop}/$CIRCLE_PROJECT_REPONAME:local"
policy_failure: false
timeout: '500'
# Note: if the generated policy is invalid, this will fallback to the default policy, which we don't want!
Expand All @@ -472,7 +452,7 @@ jobs:
aws s3 cp anchore-reports ${AWS_S3_DIR_ANCHORE_REPORTS}/latest/ --recursive
- run:
name: Evaluate failures
command: /tmp/ci-config/container-scanning/anchore-result-diff.js anchore-reports/node_${NVMRC_VERSION}-alpine-policy.json anchore-reports/${CIRCLE_PROJECT_REPONAME}*-policy.json
command: /tmp/ci-config/container-scanning/anchore-result-diff.js anchore-reports/node_${NVMRC_VERSION}-alpine3.19-policy.json anchore-reports/${CIRCLE_PROJECT_REPONAME}*-policy.json
- store_artifacts:
path: anchore-reports
- slack/notify:
Expand Down Expand Up @@ -584,7 +564,7 @@ jobs:
at: /tmp
- run:
name: Load the pre-built docker image from workspace
command: |
command: |
docker load -i /tmp/docker-image.tar
- run:
name: Login to Docker Hub
Expand Down Expand Up @@ -737,7 +717,8 @@ workflows:
- setup
filters:
tags:
only: /.*/
ignore:
- /v[0-9]+(\.[0-9]+)*\-snapshot+((\.[0-9]+)?)/
branches:
ignore:
- /feature*/
Expand Down Expand Up @@ -792,7 +773,7 @@ workflows:
- setup
- test-lint
- test-unit
- test-coverage
# - test-coverage
# - test-integration
# - test-functional
- vulnerability-check
Expand Down Expand Up @@ -831,7 +812,7 @@ workflows:
- test-lint
- test-unit
- test-coverage
# - test-integration
- test-integration
# - test-functional
- vulnerability-check
- audit-licenses
Expand All @@ -858,11 +839,10 @@ workflows:
- test-lint
- test-unit
- test-coverage
# - test-integration
- test-integration
# - test-functional
- vulnerability-check
- audit-licenses
# - test-integration
- license-scan
- image-scan
filters:
Expand All @@ -878,11 +858,10 @@ workflows:
- test-lint
- test-unit
- test-coverage
# - test-integration
- test-integration
# - test-functional
- vulnerability-check
- audit-licenses
# - test-integration
- license-scan
- image-scan
filters:
Expand Down
1 change: 0 additions & 1 deletion .eslintrc.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
{
"extends": "standard",
"plugins": ["jest"],
"parserOptions": {
"ecmaVersion": 13
},
Expand Down
4 changes: 1 addition & 3 deletions .ncurc.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
## Add a comment indicating the reason for each rejected dependency upgrade added to this list, and what should be done to resolve it (i.e. handle it through a story, etc).
reject: [
"json-rules-engine",
"eslint",
"@mojaloop/sdk-standard-components" # Version 17.4.0 introduced the bug: this.logger.isDebugEnabled is not a function
"json-rules-engine"
]
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
18.20.3
18.20.3
7 changes: 3 additions & 4 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -11,20 +11,20 @@ ARG NODE_VERSION=lts-alpine
#

# Build Image
FROM node:${NODE_VERSION} as builder
FROM node:${NODE_VERSION} AS builder
USER root

WORKDIR /opt/app

RUN apk --no-cache add git
RUN apk add --no-cache -t build-dependencies make gcc g++ python3 libtool openssl-dev autoconf automake bash \
RUN apk add --no-cache -t build-dependencies make gcc g++ py3-setuptools python3 libtool openssl-dev autoconf automake bash \
&& cd $(npm root -g)/npm

COPY package.json package-lock.json* /opt/app/

RUN npm ci

RUN apk del build-dependencies
RUN npm prune --omit=dev

COPY src /opt/app/src
COPY config /opt/app/config
Expand All @@ -43,7 +43,6 @@ RUN adduser -D app-user
USER app-user

COPY --chown=app-user --from=builder /opt/app .
RUN npm prune --production

EXPOSE 3002
CMD ["npm", "start"]
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ Both the Payer and Payee FSP should calculate their part of the quote to be able

> [Quoting Service Sequence diagram](diagrams/quotingServiceSequences.puml)

> [FX Quotes Sequence diagram](diagrams/fx-quotes.puml)

## Running Locally

Please follow the instruction in [Onboarding Document](onboarding.md) to setup and run the service locally.
Expand Down
9 changes: 7 additions & 2 deletions audit-ci.jsonc
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@
// Only use one of ["low": true, "moderate": true, "high": true, "critical": true]
"moderate": true,
"allowlist": [
"GHSA-qgmg-gppg-76g5" //https://github.com/advisories/GHSA-qgmg-gppg-76g5 Mock data generator for swagger api, not a security concern at this time.
"GHSA-qgmg-gppg-76g5", // https://github.com/advisories/GHSA-qgmg-gppg-76g5 Mock data generator for swagger api, not a security concern at this time.
"GHSA-c429-5p7v-vgjp", // https://github.com/advisories/GHSA-c429-5p7v-vgjp
"GHSA-8hc4-vh64-cxmj", // https://github.com/advisories/GHSA-8hc4-vh64-cxmj
"GHSA-952p-6rrq-rcjv", // https://github.com/advisories/GHSA-952p-6rrq-rcjv
"GHSA-pppg-cpfq-h7wr", // https://github.com/advisories/GHSA-pppg-cpfq-h7wr Patch not released yet
"GHSA-3xgq-45jj-v275" // https://github.com/advisories/GHSA-3xgq-45jj-v275
]
}
}
Loading
Loading