@mojaloop/sdk-scheme-adapter 12.0.1 → 12.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.circleci/config.yml +619 -0
- package/CHANGELOG.md +7 -0
- package/CODEOWNERS +2 -0
- package/Dockerfile +35 -0
- package/LICENSE.md +10 -0
- package/PROXY.md +84 -0
- package/README.md +228 -0
- package/SECURITY.md +18 -0
- package/docker/ml-testing-toolkit/secrets/keygen.sh +5 -0
- package/docker/ml-testing-toolkit/secrets/privatekey.pem +27 -0
- package/docker/ml-testing-toolkit/secrets/publickey.cer +21 -0
- package/docker/ml-testing-toolkit/secrets/tls/createSecrets.sh +29 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_client.csr +28 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_client_cacert.pem +32 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_client_cakey.key +51 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_client_key.key +51 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_server.csr +28 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_server_cacert.pem +32 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_server_cacert.srl +1 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_server_cakey.key +51 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_server_cert.pem +33 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_server_key.key +51 -0
- package/docker/ml-testing-toolkit/secrets/tls/openssl.conf +17 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/central_admin_9.3/api_spec.yaml +2450 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/central_admin_9.3/response_map.json +96 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.0/api_spec.yaml +4187 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.0/callback_map.json +542 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.0/mockRef.json +83 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.0/trigger_templates/transaction_request_followup.json +125 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.1/api_spec.yaml +3703 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.1/callback_map.json +568 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.1/mockRef.json +83 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.1/trigger_templates/transaction_request_followup.json +125 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/settlements_1.0/api_spec.yaml +983 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/settlements_1.0/mockRef.json +38 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/settlements_1.0/response_map.json +34 -0
- package/docker/ml-testing-toolkit/spec_files/reports/templates/newman/html_template.html +1074 -0
- package/docker/ml-testing-toolkit/spec_files/reports/templates/newman/pdf_template.html +765 -0
- package/docker/ml-testing-toolkit/spec_files/reports/templates/newman/script.js +98 -0
- package/docker/ml-testing-toolkit/spec_files/rules_callback/config.json +3 -0
- package/docker/ml-testing-toolkit/spec_files/rules_callback/default.json +426 -0
- package/docker/ml-testing-toolkit/spec_files/rules_response/config.json +3 -0
- package/docker/ml-testing-toolkit/spec_files/rules_response/default.json +1623 -0
- package/docker/ml-testing-toolkit/spec_files/rules_response/default_pisp_rules.json +161 -0
- package/docker/ml-testing-toolkit/spec_files/rules_validation/config.json +3 -0
- package/docker/ml-testing-toolkit/spec_files/rules_validation/default.json +672 -0
- package/docker/ml-testing-toolkit/spec_files/system_config.json +62 -0
- package/docker/ml-testing-toolkit/spec_files/user_config.json +45 -0
- package/docker/wait4/setup_hosts_file.sh +25 -0
- package/docker/wait4/wait4.config.js +71 -0
- package/docker/wait4/wait4.js +204 -0
- package/docker-compose.yml +67 -0
- package/docs/Mojaloop - Modusbox Onboarding functionality.pdf +0 -0
- package/docs/dfspInboundApi.yaml +1091 -0
- package/jest.config.js +4 -1
- package/junit.xml +515 -0
- package/package.json +9 -8
- package/secrets/jwsSigningKey.key +27 -0
- package/secrets/jwsVerificationKeys/mojaloop-sdk.pem +9 -0
- package/secrets/jwsVerificationKeys/switch.pem +9 -0
- package/sequences.puml +99 -0
- package/{InboundServer → src/InboundServer}/api.yaml +0 -0
- package/src/InboundServer/api_template.yaml +69 -0
- package/{InboundServer → src/InboundServer}/handlers.js +0 -0
- package/{InboundServer → src/InboundServer}/index.js +0 -0
- package/{InboundServer → src/InboundServer}/middlewares.js +0 -0
- package/{OAuthTestServer → src/OAuthTestServer}/index.js +0 -0
- package/{OAuthTestServer → src/OAuthTestServer}/model.js +0 -0
- package/{OutboundServer → src/OutboundServer}/api.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_interfaces/index.d.ts +0 -0
- package/{OutboundServer → src/OutboundServer}/api_interfaces/openapi.d.ts +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/parameters/bulkQuoteId.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/parameters/bulkTransferId.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/parameters/requestToPayTransactionId.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/parameters/transferId.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/accountsCreationCompleted.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/accountsCreationError.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/accountsCreationTimeout.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkQuoteBadRequest.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkQuoteServerError.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkQuoteSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkQuoteTimeout.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkTransferBadRequest.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkTransferServerError.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkTransferSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkTransferTimeout.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/partiesByIdError404.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/partiesByIdSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/quotesPostSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/quotesServerError.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/requestToPaySuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/requestToPayTransferBadRequest.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/requestToPayTransferSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/simpleTransfersPostSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/simpleTransfersServerError.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/transferBadRequest.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/transferServerError.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/transferSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/transferTimeout.yaml +0 -0
- package/src/OutboundServer/api_template/components/schemas/accountCreationStatus.yaml +18 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/accountsCreationState.yaml +0 -0
- package/src/OutboundServer/api_template/components/schemas/accountsRequest.yaml +20 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/accountsResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/async2SyncCurrentState.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkQuoteErrorResponse.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkQuoteRequest.yaml +2 -2
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkQuoteResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkQuoteStatus.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkQuoteStatusResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkTransferErrorResponse.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkTransferRequest.yaml +2 -2
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkTransferResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkTransferStatus.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkTransferStatusResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/errorAccountsResponse.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/errorQuotesResponse.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/errorResponse.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/errorSimpleTransfersResponse.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/errorTransferResponse.yaml +0 -0
- package/src/OutboundServer/api_template/components/schemas/extensionListEmptiable.yaml +6 -0
- package/src/OutboundServer/api_template/components/schemas/individualQuote.yaml +32 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/individualQuoteResult.yaml +5 -5
- package/src/OutboundServer/api_template/components/schemas/individualTransfer.yaml +32 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/individualTransferFulfilment.yaml +2 -2
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/individualTransferResult.yaml +6 -6
- package/src/OutboundServer/api_template/components/schemas/mojaloopError.yaml +5 -0
- package/src/OutboundServer/api_template/components/schemas/mojaloopTransactionRequestState.yaml +2 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/partiesByIdResponse.yaml +1 -1
- package/src/OutboundServer/api_template/components/schemas/quote.yaml +3 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/quoteError.yaml +0 -0
- package/src/OutboundServer/api_template/components/schemas/quotesPostRequest.yaml +13 -0
- package/src/OutboundServer/api_template/components/schemas/quotesPostResponse.yaml +48 -0
- package/src/OutboundServer/api_template/components/schemas/requestToPayRequest.yaml +39 -0
- package/src/OutboundServer/api_template/components/schemas/requestToPayResponse.yaml +41 -0
- package/src/OutboundServer/api_template/components/schemas/requestToPayTransferRequest.yaml +42 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/requestToPayTransferResponse.yaml +6 -6
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/simpleTransferServerError.yaml +0 -0
- package/src/OutboundServer/api_template/components/schemas/simpleTransfersPostRequest.yaml +12 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/simpleTransfersPostResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transactionType.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferContinuationAcceptOTP.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferContinuationAcceptParty.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferContinuationAcceptQuote.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferError.yaml +0 -0
- package/src/OutboundServer/api_template/components/schemas/transferFulfilment.yaml +3 -0
- package/src/OutboundServer/api_template/components/schemas/transferParty.yaml +40 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferRequest.yaml +4 -4
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferResponse.yaml +6 -6
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferStatus.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferStatusResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/health.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/openapi.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/accounts.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/bulkQuotes.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/bulkQuotes_bulkQuoteId.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/bulkTransfers.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/bulkTransfers_bulkTransferId.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/parties_Type_ID.yaml +2 -2
- package/{OutboundServer → src/OutboundServer}/api_template/paths/parties_Type_ID_SubId.yaml +3 -3
- package/{OutboundServer → src/OutboundServer}/api_template/paths/quotes.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/requestToPay.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/requestToPayTransfer.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/requestToPayTransfer_requestToPayTransactionId.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/simpleTransfers.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/transfers.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/transfers_transferId.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/handlers.js +0 -0
- package/{OutboundServer → src/OutboundServer}/index.js +0 -0
- package/{OutboundServer → src/OutboundServer}/middlewares.js +0 -0
- package/{TestServer → src/TestServer}/api.yaml +0 -0
- package/{TestServer → src/TestServer}/handlers.js +0 -0
- package/{TestServer → src/TestServer}/index.js +0 -0
- package/{config.js → src/config.js} +0 -0
- package/{index.d.ts → src/index.d.ts} +0 -0
- package/{index.js → src/index.js} +0 -0
- package/{lib → src/lib}/api/index.js +0 -0
- package/{lib → src/lib}/cache.js +0 -0
- package/{lib → src/lib}/check.js +0 -0
- package/{lib → src/lib}/model/AccountsModel.js +0 -0
- package/{lib → src/lib}/model/Async2SyncModel.js +0 -0
- package/{lib → src/lib}/model/InboundTransfersModel.js +0 -0
- package/{lib → src/lib}/model/OutboundBulkQuotesModel.js +0 -0
- package/{lib → src/lib}/model/OutboundBulkTransfersModel.js +0 -0
- package/{lib → src/lib}/model/OutboundRequestToPayModel.js +0 -0
- package/{lib → src/lib}/model/OutboundRequestToPayTransferModel.js +0 -0
- package/{lib → src/lib}/model/OutboundTransfersModel.js +0 -0
- package/{lib → src/lib}/model/PartiesModel.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/MatchRules/Expression.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/MatchRules/Headers.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/MatchRules/MatchRule.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/MatchRules/Path.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/MatchRules/Query.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/MatchRules/index.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/Route.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/configSchema.json +0 -0
- package/{lib → src/lib}/model/ProxyModel/index.js +0 -0
- package/{lib → src/lib}/model/QuotesModel.js +0 -0
- package/{lib → src/lib}/model/TransfersModel.js +0 -0
- package/{lib → src/lib}/model/common/BackendError.js +0 -0
- package/{lib → src/lib}/model/common/PersistentStateMachine.js +0 -0
- package/{lib → src/lib}/model/common/index.js +0 -0
- package/{lib → src/lib}/model/index.js +0 -0
- package/{lib → src/lib}/model/lib/deferredJob.js +0 -0
- package/{lib → src/lib}/model/lib/index.js +0 -0
- package/{lib → src/lib}/model/lib/requests/backendRequests.js +0 -0
- package/{lib → src/lib}/model/lib/requests/common.js +0 -0
- package/{lib → src/lib}/model/lib/requests/index.js +0 -0
- package/{lib → src/lib}/model/lib/shared.js +0 -0
- package/{lib → src/lib}/randomphrase/index.js +0 -0
- package/{lib → src/lib}/randomphrase/words.json +0 -0
- package/{lib → src/lib}/router.js +0 -0
- package/{lib → src/lib}/validate.js +0 -0
- package/test/integration/lib/cache.test.js +3 -3
- package/test/unit/InboundServer.test.js +4 -4
- package/test/unit/TestServer.test.js +5 -5
- package/test/unit/api/utils.js +5 -5
- package/test/unit/config.test.js +9 -9
- package/test/unit/inboundApi/handlers.test.js +6 -6
- package/test/unit/index.test.js +1 -1
- package/test/unit/lib/cache.test.js +1 -1
- package/test/unit/lib/model/AccountsModel.test.js +2 -2
- package/test/unit/lib/model/InboundTransfersModel.test.js +5 -5
- package/test/unit/lib/model/OutboundBulkQuotesModel.test.js +2 -2
- package/test/unit/lib/model/OutboundBulkTransfersModel.test.js +2 -2
- package/test/unit/lib/model/OutboundRequestToPayModel.test.js +3 -3
- package/test/unit/lib/model/OutboundRequestToPayTransferModel.test.js +2 -2
- package/test/unit/lib/model/OutboundTransfersModel.test.js +3 -3
- package/test/unit/lib/model/PartiesModel.test.js +28 -28
- package/test/unit/lib/model/QuotesModel.test.js +31 -31
- package/test/unit/lib/model/TransfersModel.test.js +3 -3
- package/test/unit/lib/model/common/PersistentStateMachine.test.js +13 -13
- package/test/unit/lib/model/mockedLibRequests.js +1 -1
- package/test/unit/outboundApi/handlers.test.js +3 -3
- package/.eslintignore +0 -2
- package/InboundServer/api_template.yaml +0 -69
- package/OutboundServer/api_template/components/schemas/accountCreationStatus.yaml +0 -18
- package/OutboundServer/api_template/components/schemas/accountsRequest.yaml +0 -20
- package/OutboundServer/api_template/components/schemas/extensionListEmptiable.yaml +0 -6
- package/OutboundServer/api_template/components/schemas/individualQuote.yaml +0 -32
- package/OutboundServer/api_template/components/schemas/individualTransfer.yaml +0 -32
- package/OutboundServer/api_template/components/schemas/mojaloopError.yaml +0 -5
- package/OutboundServer/api_template/components/schemas/mojaloopTransactionRequestState.yaml +0 -2
- package/OutboundServer/api_template/components/schemas/quote.yaml +0 -3
- package/OutboundServer/api_template/components/schemas/quotesPostRequest.yaml +0 -13
- package/OutboundServer/api_template/components/schemas/quotesPostResponse.yaml +0 -48
- package/OutboundServer/api_template/components/schemas/requestToPayRequest.yaml +0 -39
- package/OutboundServer/api_template/components/schemas/requestToPayResponse.yaml +0 -41
- package/OutboundServer/api_template/components/schemas/requestToPayTransferRequest.yaml +0 -42
- package/OutboundServer/api_template/components/schemas/simpleTransfersPostRequest.yaml +0 -12
- package/OutboundServer/api_template/components/schemas/transferFulfilment.yaml +0 -3
- package/OutboundServer/api_template/components/schemas/transferParty.yaml +0 -40
|
@@ -0,0 +1,619 @@
|
|
|
1
|
+
# CircleCI v2.1 Config
|
|
2
|
+
version: 2.1
|
|
3
|
+
|
|
4
|
+
##
|
|
5
|
+
# orbs
|
|
6
|
+
#
|
|
7
|
+
# Orbs used in this pipeline
|
|
8
|
+
###
|
|
9
|
+
orbs:
|
|
10
|
+
anchore: anchore/anchore-engine@1.6.0
|
|
11
|
+
slack: circleci/slack@3.4.2
|
|
12
|
+
pr-tools: mojaloop/pr-tools@0.1.10
|
|
13
|
+
github-release: h-matsuo/github-release@0.1.3
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
##
|
|
17
|
+
# defaults
|
|
18
|
+
#
|
|
19
|
+
# YAML defaults templates, in alphabetical order
|
|
20
|
+
##
|
|
21
|
+
defaults_Dependencies: &defaults_Dependencies |
|
|
22
|
+
apk --no-cache add git
|
|
23
|
+
apk --no-cache add ca-certificates
|
|
24
|
+
apk --no-cache add curl
|
|
25
|
+
apk --no-cache add openssh-client
|
|
26
|
+
apk --no-cache add bash
|
|
27
|
+
apk add --no-cache -t build-dependencies make gcc g++ python3 libtool autoconf automake
|
|
28
|
+
npm config set unsafe-perm true
|
|
29
|
+
npm install -g node-gyp
|
|
30
|
+
|
|
31
|
+
defaults_awsCliDependencies: &defaults_awsCliDependencies |
|
|
32
|
+
apk upgrade --no-cache
|
|
33
|
+
apk --no-cache add \
|
|
34
|
+
python3 \
|
|
35
|
+
py3-pip \
|
|
36
|
+
groff \
|
|
37
|
+
less \
|
|
38
|
+
mailcap
|
|
39
|
+
pip3 install --upgrade pip awscli==1.14.5 s3cmd==2.0.1 python-magic
|
|
40
|
+
|
|
41
|
+
defaults_license_scanner: &defaults_license_scanner
|
|
42
|
+
name: Install and set up license-scanner
|
|
43
|
+
command: |
|
|
44
|
+
git clone https://github.com/mojaloop/license-scanner /tmp/license-scanner
|
|
45
|
+
cd /tmp/license-scanner && make build default-files set-up
|
|
46
|
+
|
|
47
|
+
defaults_npm_auth: &defaults_npm_auth
|
|
48
|
+
name: Update NPM registry auth token
|
|
49
|
+
command: echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" > .npmrc
|
|
50
|
+
|
|
51
|
+
defaults_npm_publish_release: &defaults_npm_publish_release
|
|
52
|
+
name: Publish NPM $RELEASE_TAG artifact
|
|
53
|
+
command: |
|
|
54
|
+
source $BASH_ENV
|
|
55
|
+
echo "Publishing tag $RELEASE_TAG"
|
|
56
|
+
npm publish --tag $RELEASE_TAG --access public
|
|
57
|
+
|
|
58
|
+
##
|
|
59
|
+
# Executors
|
|
60
|
+
#
|
|
61
|
+
# CircleCI Executors
|
|
62
|
+
##
|
|
63
|
+
executors:
|
|
64
|
+
default-docker:
|
|
65
|
+
working_directory: /home/circleci/project
|
|
66
|
+
docker:
|
|
67
|
+
- image: node:16-alpine
|
|
68
|
+
|
|
69
|
+
default-machine:
|
|
70
|
+
machine:
|
|
71
|
+
image: ubuntu-2004:202010-01
|
|
72
|
+
|
|
73
|
+
##
|
|
74
|
+
# Jobs
|
|
75
|
+
#
|
|
76
|
+
# A map of CircleCI jobs
|
|
77
|
+
##
|
|
78
|
+
jobs:
|
|
79
|
+
setup:
|
|
80
|
+
executor: default-docker
|
|
81
|
+
steps:
|
|
82
|
+
- run:
|
|
83
|
+
name: Install general dependencies
|
|
84
|
+
command: *defaults_Dependencies
|
|
85
|
+
- checkout
|
|
86
|
+
- run:
|
|
87
|
+
name: Access npm folder as root
|
|
88
|
+
command: cd $(npm root -g)/npm
|
|
89
|
+
- run:
|
|
90
|
+
name: Update NPM install (using `npm ci`)
|
|
91
|
+
command: npm ci
|
|
92
|
+
- run:
|
|
93
|
+
name: Delete build dependencies
|
|
94
|
+
command: apk del build-dependencies
|
|
95
|
+
- save_cache:
|
|
96
|
+
key: dependency-cache-v3-{{ checksum "package-lock.json" }}
|
|
97
|
+
paths:
|
|
98
|
+
- node_modules
|
|
99
|
+
|
|
100
|
+
test-unit:
|
|
101
|
+
executor: default-docker
|
|
102
|
+
steps:
|
|
103
|
+
- run:
|
|
104
|
+
name: Install general dependencies
|
|
105
|
+
command: *defaults_Dependencies
|
|
106
|
+
- checkout
|
|
107
|
+
- restore_cache:
|
|
108
|
+
key: dependency-cache-v3-{{ checksum "package-lock.json" }}
|
|
109
|
+
- run:
|
|
110
|
+
name: Execute unit tests
|
|
111
|
+
command: npm run test
|
|
112
|
+
- store_test_results:
|
|
113
|
+
path: /home/circleci/project/
|
|
114
|
+
- store_artifacts:
|
|
115
|
+
path: /home/circleci/project/junit.xml
|
|
116
|
+
|
|
117
|
+
test-integration:
|
|
118
|
+
executor: default-machine
|
|
119
|
+
steps:
|
|
120
|
+
- checkout
|
|
121
|
+
- run:
|
|
122
|
+
name: Install Docker Compose
|
|
123
|
+
command: |
|
|
124
|
+
curl -L https://github.com/docker/compose/releases/download/1.28.2/docker-compose-`uname -s`-`uname -m` > ~/docker-compose
|
|
125
|
+
chmod +x ~/docker-compose
|
|
126
|
+
sudo mv ~/docker-compose /usr/local/bin/docker-compose
|
|
127
|
+
- restore_cache:
|
|
128
|
+
key: dependency-cache-v3-{{ checksum "package-lock.json" }}
|
|
129
|
+
- run:
|
|
130
|
+
name: Set up NVM
|
|
131
|
+
command: |
|
|
132
|
+
echo ${NVM_DIR}
|
|
133
|
+
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
|
|
134
|
+
nvm install v16.14
|
|
135
|
+
nvm alias default v16.14
|
|
136
|
+
- run:
|
|
137
|
+
name: Start docker-compose
|
|
138
|
+
command: |
|
|
139
|
+
docker-compose pull
|
|
140
|
+
docker-compose build
|
|
141
|
+
docker-compose up -d
|
|
142
|
+
- run:
|
|
143
|
+
name: Execute Wait4 script
|
|
144
|
+
command: |
|
|
145
|
+
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
|
|
146
|
+
chmod +x ./docker/wait4/wait4.js
|
|
147
|
+
# chmod +x ./docker/wait4/setup_hosts_file.sh
|
|
148
|
+
# sh -c "./docker/wait4/setup_hosts_file.sh"
|
|
149
|
+
sh -c "./docker/wait4/wait4.js cicd-integration-tests"
|
|
150
|
+
- run:
|
|
151
|
+
name: Execute integration tests
|
|
152
|
+
command: |
|
|
153
|
+
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
|
|
154
|
+
npm ci
|
|
155
|
+
npm run test:int
|
|
156
|
+
- run:
|
|
157
|
+
name: prepare test/results
|
|
158
|
+
command: |
|
|
159
|
+
mkdir -p test/results
|
|
160
|
+
mv junit.xml test/results
|
|
161
|
+
- store_artifacts:
|
|
162
|
+
path: ./test/results
|
|
163
|
+
- store_test_results:
|
|
164
|
+
path: ./test/results
|
|
165
|
+
|
|
166
|
+
validate-openapi:
|
|
167
|
+
executor: default-docker
|
|
168
|
+
steps:
|
|
169
|
+
- run:
|
|
170
|
+
name: Install general dependencies
|
|
171
|
+
command: *defaults_Dependencies
|
|
172
|
+
- checkout
|
|
173
|
+
- restore_cache:
|
|
174
|
+
key: dependency-cache-v3-{{ checksum "package-lock.json" }}
|
|
175
|
+
- run:
|
|
176
|
+
name: Execute unit tests
|
|
177
|
+
command: npm run build:openapi && npm run validate:api
|
|
178
|
+
|
|
179
|
+
lint:
|
|
180
|
+
executor: default-docker
|
|
181
|
+
steps:
|
|
182
|
+
- run:
|
|
183
|
+
name: Install general dependencies
|
|
184
|
+
command: *defaults_Dependencies
|
|
185
|
+
- checkout
|
|
186
|
+
- restore_cache:
|
|
187
|
+
key: dependency-cache-v3-{{ checksum "package-lock.json" }}
|
|
188
|
+
- run:
|
|
189
|
+
name: Create dir for lint results
|
|
190
|
+
command: mkdir -p /lintresults
|
|
191
|
+
- run:
|
|
192
|
+
name: Execute linting
|
|
193
|
+
command: (npm run lint > /lintresults/results.txt)
|
|
194
|
+
- store_artifacts:
|
|
195
|
+
path: /lintresults
|
|
196
|
+
|
|
197
|
+
vulnerability-check:
|
|
198
|
+
executor: default-docker
|
|
199
|
+
steps:
|
|
200
|
+
- run:
|
|
201
|
+
name: Install general dependencies
|
|
202
|
+
command: *defaults_Dependencies
|
|
203
|
+
- checkout
|
|
204
|
+
- restore_cache:
|
|
205
|
+
key: dependency-cache-v3-{{ checksum "package-lock.json" }}
|
|
206
|
+
- run:
|
|
207
|
+
name: Create dir for test results
|
|
208
|
+
command: mkdir -p ./audit/results
|
|
209
|
+
- run:
|
|
210
|
+
name: Check for new npm vulnerabilities
|
|
211
|
+
command: npm run audit:check --silent -- --json > ./audit/results/auditResults.json
|
|
212
|
+
- store_artifacts:
|
|
213
|
+
path: ./audit/results
|
|
214
|
+
|
|
215
|
+
audit-licenses:
|
|
216
|
+
executor: default-docker
|
|
217
|
+
steps:
|
|
218
|
+
- run:
|
|
219
|
+
name: Install general dependencies
|
|
220
|
+
command: *defaults_Dependencies
|
|
221
|
+
- checkout
|
|
222
|
+
- run:
|
|
223
|
+
<<: *defaults_license_scanner
|
|
224
|
+
- restore_cache:
|
|
225
|
+
key: dependency-cache-v3-{{ checksum "package-lock.json" }}
|
|
226
|
+
- run:
|
|
227
|
+
name: Prune non-production packages before running license-scanner
|
|
228
|
+
command: npm prune --production
|
|
229
|
+
- run:
|
|
230
|
+
name: Run the license-scanner
|
|
231
|
+
command: cd /tmp/license-scanner && pathToRepo=$CIRCLE_WORKING_DIRECTORY make run
|
|
232
|
+
- store_artifacts:
|
|
233
|
+
path: /tmp/license-scanner/results
|
|
234
|
+
|
|
235
|
+
build-local:
|
|
236
|
+
executor: default-machine
|
|
237
|
+
steps:
|
|
238
|
+
- checkout
|
|
239
|
+
- run:
|
|
240
|
+
name: Build Docker local image for testing
|
|
241
|
+
command: |
|
|
242
|
+
echo "Building Docker image: local"
|
|
243
|
+
docker build -t mojaloop/$CIRCLE_PROJECT_REPONAME:local .
|
|
244
|
+
- run:
|
|
245
|
+
name: Save docker image to workspace
|
|
246
|
+
command: docker save -o /tmp/docker-image.tar mojaloop/$CIRCLE_PROJECT_REPONAME:local
|
|
247
|
+
- persist_to_workspace:
|
|
248
|
+
root: /tmp
|
|
249
|
+
paths:
|
|
250
|
+
- ./docker-image.tar
|
|
251
|
+
|
|
252
|
+
license-scan:
|
|
253
|
+
executor: default-machine
|
|
254
|
+
steps:
|
|
255
|
+
- checkout
|
|
256
|
+
- attach_workspace:
|
|
257
|
+
at: /tmp
|
|
258
|
+
- run:
|
|
259
|
+
name: Load the pre-built docker image from workspace
|
|
260
|
+
command: docker load -i /tmp/docker-image.tar
|
|
261
|
+
- run:
|
|
262
|
+
<<: *defaults_license_scanner
|
|
263
|
+
- run:
|
|
264
|
+
name: Run the license-scanner
|
|
265
|
+
command: cd /tmp/license-scanner && mode=docker dockerImages=mojaloop/$CIRCLE_PROJECT_REPONAME:local make run
|
|
266
|
+
- store_artifacts:
|
|
267
|
+
path: /tmp/license-scanner/results
|
|
268
|
+
|
|
269
|
+
image-scan:
|
|
270
|
+
executor: anchore/anchore_engine
|
|
271
|
+
steps:
|
|
272
|
+
- setup_remote_docker
|
|
273
|
+
- checkout
|
|
274
|
+
- run:
|
|
275
|
+
name: Install AWS CLI dependencies
|
|
276
|
+
command: *defaults_awsCliDependencies
|
|
277
|
+
- attach_workspace:
|
|
278
|
+
at: /tmp
|
|
279
|
+
- run:
|
|
280
|
+
name: Load the pre-built docker image from workspace
|
|
281
|
+
command: docker load -i /tmp/docker-image.tar
|
|
282
|
+
- anchore/analyze_local_image:
|
|
283
|
+
dockerfile_path: ./Dockerfile
|
|
284
|
+
image_name: mojaloop/${CIRCLE_PROJECT_REPONAME}:local
|
|
285
|
+
# Anchore bug: if policy_failure is `true`, reports don't get written - we manually check for failures below
|
|
286
|
+
policy_failure: false
|
|
287
|
+
timeout: '500'
|
|
288
|
+
- run:
|
|
289
|
+
name: Evaluate Failures.
|
|
290
|
+
command: |
|
|
291
|
+
if [[ ! $(which jq) ]]; then
|
|
292
|
+
(set +o pipefail; apk add jq || apt-get install -y jq || yum install -y jq)
|
|
293
|
+
fi
|
|
294
|
+
if [[ $(ls anchore-reports/*content-os*.json 2> /dev/null) ]]; then
|
|
295
|
+
printf "\n%s\n" "The following OS packages are installed:"
|
|
296
|
+
jq '[.content | sort_by(.package) | .[] | {package: .package, version: .version}]' anchore-reports/*content-os*.json
|
|
297
|
+
fi
|
|
298
|
+
if [[ $(ls anchore-reports/*vuln*.json 2> /dev/null) ]]; then
|
|
299
|
+
printf "\n%s\n" "The following vulnerabilities were found:"
|
|
300
|
+
jq '[.vulnerabilities | group_by(.package) | .[] | {package: .[0].package, vuln: [.[].vuln]}]' anchore-reports/*vuln*.json
|
|
301
|
+
fi
|
|
302
|
+
# - run:
|
|
303
|
+
# name: Upload Anchore reports to s3
|
|
304
|
+
# command: |
|
|
305
|
+
# aws s3 cp anchore-reports ${AWS_S3_DIR_ANCHORE_REPORTS}/${CIRCLE_PROJECT_REPONAME}/ --recursive
|
|
306
|
+
# aws s3 rm ${AWS_S3_DIR_ANCHORE_REPORTS}/latest/ --recursive --exclude "*" --include "${CIRCLE_PROJECT_REPONAME}*"
|
|
307
|
+
# aws s3 cp anchore-reports ${AWS_S3_DIR_ANCHORE_REPORTS}/latest/ --recursive
|
|
308
|
+
|
|
309
|
+
# TODO: Enable this when we want to increase the strictness of our security policies
|
|
310
|
+
# failCount=$(cat anchore-reports/*policy*.json | grep 'fail' | wc -l)
|
|
311
|
+
# echo "FailCount is: ${failCount}"
|
|
312
|
+
# if [ $failCount -gt 0 ]; then
|
|
313
|
+
# printf "Failed with a policy failure count of: ${failCount}"
|
|
314
|
+
# exit 1
|
|
315
|
+
# fi
|
|
316
|
+
- store_artifacts:
|
|
317
|
+
path: anchore-reports
|
|
318
|
+
|
|
319
|
+
release:
|
|
320
|
+
executor: default-docker
|
|
321
|
+
steps:
|
|
322
|
+
- run:
|
|
323
|
+
name: Install general dependencies
|
|
324
|
+
command: *defaults_Dependencies
|
|
325
|
+
- checkout
|
|
326
|
+
- restore_cache:
|
|
327
|
+
key: dependency-cache-v3-{{ checksum "package-lock.json" }}
|
|
328
|
+
- run:
|
|
329
|
+
name: Configure git
|
|
330
|
+
command: |
|
|
331
|
+
git config user.email ${GIT_CI_EMAIL}
|
|
332
|
+
git config user.name ${GIT_CI_USER}
|
|
333
|
+
git checkout ${CIRCLE_BRANCH}
|
|
334
|
+
- run:
|
|
335
|
+
name: Configure ssh
|
|
336
|
+
command: |
|
|
337
|
+
mkdir -p ~/.ssh
|
|
338
|
+
ssh-keyscan -p 443 ssh.github.com >> ~/.ssh/known_hosts
|
|
339
|
+
ssh-keyscan github.com >> ~/.ssh/known_hosts
|
|
340
|
+
- run:
|
|
341
|
+
name: Generate changelog and bump package version
|
|
342
|
+
command: npm run release
|
|
343
|
+
- run:
|
|
344
|
+
name: Push the release
|
|
345
|
+
command: git push --follow-tags origin ${CIRCLE_BRANCH}
|
|
346
|
+
|
|
347
|
+
github-release:
|
|
348
|
+
executor: default-machine
|
|
349
|
+
steps:
|
|
350
|
+
- run:
|
|
351
|
+
name: Install git
|
|
352
|
+
command: |
|
|
353
|
+
sudo apt-get update && sudo apt-get install -y git
|
|
354
|
+
- checkout
|
|
355
|
+
- run:
|
|
356
|
+
name: Fetch updated release branch
|
|
357
|
+
command: |
|
|
358
|
+
git config user.email ${GIT_CI_EMAIL}
|
|
359
|
+
git config user.name ${GIT_CI_USER}
|
|
360
|
+
git fetch origin
|
|
361
|
+
git checkout origin/${CIRCLE_BRANCH}
|
|
362
|
+
- run:
|
|
363
|
+
# Note: this is rather imperfect, but will do for now
|
|
364
|
+
name: Format the changelog into the github release body and get release tag
|
|
365
|
+
command: |
|
|
366
|
+
git diff --no-indent-heuristic master~1 HEAD CHANGELOG.md | sed -n '/^+[^+]/ s/^+//p' > /tmp/changes
|
|
367
|
+
echo 'export RELEASE_CHANGES=`cat /tmp/changes`' >> $BASH_ENV
|
|
368
|
+
echo 'export RELEASE_TAG=`cat package-lock.json | jq -r .version`' >> $BASH_ENV
|
|
369
|
+
- run:
|
|
370
|
+
name: check the release changes
|
|
371
|
+
command: |
|
|
372
|
+
echo "Changes are: ${RELEASE_CHANGES}"
|
|
373
|
+
- github-release/create:
|
|
374
|
+
github-token-variable: ${GITHUB_TOKEN}
|
|
375
|
+
tag: v${RELEASE_TAG}
|
|
376
|
+
title: v${RELEASE_TAG} Release
|
|
377
|
+
description: ${RELEASE_CHANGES}
|
|
378
|
+
file-path: CHANGELOG.md
|
|
379
|
+
- slack/status:
|
|
380
|
+
webhook: "$SLACK_WEBHOOK_ANNOUNCEMENT"
|
|
381
|
+
success_message: '*"${CIRCLE_PROJECT_REPONAME}"* - Release \`"v${RELEASE_TAG}"\` \nhttps://github.com/mojaloop/"${CIRCLE_PROJECT_REPONAME}"/releases/tag/"v${RELEASE_TAG}"'
|
|
382
|
+
|
|
383
|
+
publish-docker:
|
|
384
|
+
executor: default-machine
|
|
385
|
+
steps:
|
|
386
|
+
- checkout
|
|
387
|
+
- attach_workspace:
|
|
388
|
+
at: /tmp
|
|
389
|
+
- run:
|
|
390
|
+
name: Load the pre-built docker image from workspace
|
|
391
|
+
command: docker load -i /tmp/docker-image.tar
|
|
392
|
+
- run:
|
|
393
|
+
name: Login to Docker Hub
|
|
394
|
+
command: docker login -u $DOCKER_USER -p $DOCKER_PASS
|
|
395
|
+
- run:
|
|
396
|
+
name: Re-tag pre built image
|
|
397
|
+
command: |
|
|
398
|
+
docker tag $DOCKER_ORG/$CIRCLE_PROJECT_REPONAME:local $DOCKER_ORG/$CIRCLE_PROJECT_REPONAME:latest
|
|
399
|
+
docker tag $DOCKER_ORG/$CIRCLE_PROJECT_REPONAME:local $DOCKER_ORG/$CIRCLE_PROJECT_REPONAME:$CIRCLE_TAG
|
|
400
|
+
- run:
|
|
401
|
+
name: Publish Docker image $CIRCLE_TAG & Latest tag to Docker Hub
|
|
402
|
+
command: |
|
|
403
|
+
echo "Publishing $DOCKER_ORG/$CIRCLE_PROJECT_REPONAME:$CIRCLE_TAG"
|
|
404
|
+
docker push $DOCKER_ORG/$CIRCLE_PROJECT_REPONAME:$CIRCLE_TAG
|
|
405
|
+
echo "Publishing $DOCKER_ORG/$CIRCLE_PROJECT_REPONAME:latest"
|
|
406
|
+
docker push $DOCKER_ORG/$CIRCLE_PROJECT_REPONAME:latest
|
|
407
|
+
|
|
408
|
+
publish-npm:
|
|
409
|
+
executor: default-docker
|
|
410
|
+
steps:
|
|
411
|
+
- checkout
|
|
412
|
+
- run:
|
|
413
|
+
name: Install general dependencies
|
|
414
|
+
command: *defaults_Dependencies
|
|
415
|
+
- restore_cache:
|
|
416
|
+
key: dependency-cache-v3-{{ checksum "package-lock.json" }}
|
|
417
|
+
- run:
|
|
418
|
+
name: setup environment vars for LATEST release
|
|
419
|
+
command: |
|
|
420
|
+
echo 'export RELEASE_TAG=$RELEASE_TAG_PROD' >> $BASH_ENV
|
|
421
|
+
- run:
|
|
422
|
+
<<: *defaults_npm_auth
|
|
423
|
+
- run:
|
|
424
|
+
<<: *defaults_npm_publish_release
|
|
425
|
+
##
|
|
426
|
+
# Workflows
|
|
427
|
+
#
|
|
428
|
+
# CircleCI Workflow config
|
|
429
|
+
##
|
|
430
|
+
workflows:
|
|
431
|
+
version: 2
|
|
432
|
+
build_and_test:
|
|
433
|
+
jobs:
|
|
434
|
+
- pr-tools/pr-title-check:
|
|
435
|
+
context: org-global
|
|
436
|
+
- setup:
|
|
437
|
+
context: org-global
|
|
438
|
+
filters:
|
|
439
|
+
tags:
|
|
440
|
+
only: /.*/
|
|
441
|
+
branches:
|
|
442
|
+
ignore:
|
|
443
|
+
- /feature*/
|
|
444
|
+
- /bugfix*/
|
|
445
|
+
|
|
446
|
+
- test-unit:
|
|
447
|
+
context: org-global
|
|
448
|
+
requires:
|
|
449
|
+
- setup
|
|
450
|
+
filters:
|
|
451
|
+
tags:
|
|
452
|
+
only: /.*/
|
|
453
|
+
branches:
|
|
454
|
+
ignore:
|
|
455
|
+
- /feature*/
|
|
456
|
+
- /bugfix*/
|
|
457
|
+
|
|
458
|
+
- validate-openapi:
|
|
459
|
+
context: org-global
|
|
460
|
+
requires:
|
|
461
|
+
- setup
|
|
462
|
+
filters:
|
|
463
|
+
tags:
|
|
464
|
+
only: /.*/
|
|
465
|
+
branches:
|
|
466
|
+
ignore:
|
|
467
|
+
- /feature*/
|
|
468
|
+
- /bugfix*/
|
|
469
|
+
|
|
470
|
+
- lint:
|
|
471
|
+
context: org-global
|
|
472
|
+
requires:
|
|
473
|
+
- setup
|
|
474
|
+
filters:
|
|
475
|
+
tags:
|
|
476
|
+
only: /.*/
|
|
477
|
+
branches:
|
|
478
|
+
ignore:
|
|
479
|
+
- /feature*/
|
|
480
|
+
- /bugfix*/
|
|
481
|
+
|
|
482
|
+
- test-integration:
|
|
483
|
+
context: org-global
|
|
484
|
+
requires:
|
|
485
|
+
- setup
|
|
486
|
+
filters:
|
|
487
|
+
tags:
|
|
488
|
+
only: /.*/
|
|
489
|
+
branches:
|
|
490
|
+
ignore:
|
|
491
|
+
- /feature*/
|
|
492
|
+
- /bugfix*/
|
|
493
|
+
|
|
494
|
+
- vulnerability-check:
|
|
495
|
+
context: org-global
|
|
496
|
+
requires:
|
|
497
|
+
- setup
|
|
498
|
+
filters:
|
|
499
|
+
tags:
|
|
500
|
+
only: /.*/
|
|
501
|
+
branches:
|
|
502
|
+
ignore:
|
|
503
|
+
- /feature*/
|
|
504
|
+
- /bugfix*/
|
|
505
|
+
- audit-licenses:
|
|
506
|
+
context: org-global
|
|
507
|
+
requires:
|
|
508
|
+
- setup
|
|
509
|
+
filters:
|
|
510
|
+
tags:
|
|
511
|
+
only: /.*/
|
|
512
|
+
branches:
|
|
513
|
+
ignore:
|
|
514
|
+
- /feature*/
|
|
515
|
+
- /bugfix*/
|
|
516
|
+
|
|
517
|
+
- build-local:
|
|
518
|
+
context: org-global
|
|
519
|
+
requires:
|
|
520
|
+
- test-integration
|
|
521
|
+
- validate-openapi
|
|
522
|
+
- test-unit
|
|
523
|
+
filters:
|
|
524
|
+
tags:
|
|
525
|
+
only: /v[0-9]+(\.[0-9]+)*(\-snapshot)?/
|
|
526
|
+
branches:
|
|
527
|
+
ignore:
|
|
528
|
+
- /feature*/
|
|
529
|
+
- /bugfix*/
|
|
530
|
+
|
|
531
|
+
- image-scan:
|
|
532
|
+
context: org-global
|
|
533
|
+
requires:
|
|
534
|
+
- build-local
|
|
535
|
+
filters:
|
|
536
|
+
tags:
|
|
537
|
+
only: /v[0-9]+(\.[0-9]+)*(\-snapshot)?/
|
|
538
|
+
branches:
|
|
539
|
+
ignore:
|
|
540
|
+
- /feature*/
|
|
541
|
+
- /bugfix*/
|
|
542
|
+
|
|
543
|
+
- license-scan:
|
|
544
|
+
context: org-global
|
|
545
|
+
requires:
|
|
546
|
+
- build-local
|
|
547
|
+
filters:
|
|
548
|
+
tags:
|
|
549
|
+
only: /v[0-9]+(\.[0-9]+)*(\-snapshot)?/
|
|
550
|
+
branches:
|
|
551
|
+
ignore:
|
|
552
|
+
- /feature*/
|
|
553
|
+
- /bugfix*/
|
|
554
|
+
|
|
555
|
+
# New commits to master release automatically
|
|
556
|
+
- release:
|
|
557
|
+
context: org-global
|
|
558
|
+
requires:
|
|
559
|
+
- build-local
|
|
560
|
+
- pr-tools/pr-title-check
|
|
561
|
+
- validate-openapi
|
|
562
|
+
- test-unit
|
|
563
|
+
- vulnerability-check
|
|
564
|
+
- audit-licenses
|
|
565
|
+
- test-integration
|
|
566
|
+
- license-scan
|
|
567
|
+
- image-scan
|
|
568
|
+
filters:
|
|
569
|
+
branches:
|
|
570
|
+
only:
|
|
571
|
+
- master
|
|
572
|
+
- /release\/v.*/
|
|
573
|
+
|
|
574
|
+
- github-release:
|
|
575
|
+
context: org-global
|
|
576
|
+
requires:
|
|
577
|
+
- release
|
|
578
|
+
filters:
|
|
579
|
+
branches:
|
|
580
|
+
only:
|
|
581
|
+
- master
|
|
582
|
+
- /release\/v.*/
|
|
583
|
+
|
|
584
|
+
- publish-docker:
|
|
585
|
+
context: org-global
|
|
586
|
+
requires:
|
|
587
|
+
- build-local
|
|
588
|
+
- pr-tools/pr-title-check
|
|
589
|
+
- validate-openapi
|
|
590
|
+
- test-unit
|
|
591
|
+
- vulnerability-check
|
|
592
|
+
- audit-licenses
|
|
593
|
+
- test-integration
|
|
594
|
+
- license-scan
|
|
595
|
+
- image-scan
|
|
596
|
+
filters:
|
|
597
|
+
tags:
|
|
598
|
+
only: /.*/
|
|
599
|
+
branches:
|
|
600
|
+
ignore:
|
|
601
|
+
- /.*/
|
|
602
|
+
|
|
603
|
+
- publish-npm:
|
|
604
|
+
context: org-global
|
|
605
|
+
requires:
|
|
606
|
+
- pr-tools/pr-title-check
|
|
607
|
+
- validate-openapi
|
|
608
|
+
- test-unit
|
|
609
|
+
- vulnerability-check
|
|
610
|
+
- audit-licenses
|
|
611
|
+
- test-integration
|
|
612
|
+
- license-scan
|
|
613
|
+
- image-scan
|
|
614
|
+
filters:
|
|
615
|
+
tags:
|
|
616
|
+
only: /.*/
|
|
617
|
+
branches:
|
|
618
|
+
ignore:
|
|
619
|
+
- /.*/
|
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
# Changelog: [mojaloop/thirdparty-api-svc](https://github.com/mojaloop/thirdparty-api-svc)
|
|
2
|
+
### [12.0.2](https://github.com/mojaloop/sdk-scheme-adapter/compare/v12.0.1...v12.0.2) (2022-04-19)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Chore
|
|
6
|
+
|
|
7
|
+
* move files out of src/ ([#300](https://github.com/mojaloop/sdk-scheme-adapter/issues/300)) ([b80f943](https://github.com/mojaloop/sdk-scheme-adapter/commit/b80f943760a2bfc09415c64fd31faf84782a523e))
|
|
8
|
+
|
|
2
9
|
### [12.0.1](https://github.com/mojaloop/sdk-scheme-adapter/compare/v12.0.0...v12.0.1) (2022-04-19)
|
|
3
10
|
|
|
4
11
|
|
package/CODEOWNERS
ADDED
package/Dockerfile
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
FROM node:16-alpine as builder
|
|
2
|
+
|
|
3
|
+
RUN apk add --no-cache git python3 build-base
|
|
4
|
+
|
|
5
|
+
EXPOSE 3000
|
|
6
|
+
|
|
7
|
+
WORKDIR /src
|
|
8
|
+
|
|
9
|
+
# This is super-ugly, but it means we don't have to re-run npm install every time any of the source
|
|
10
|
+
# files change- only when any dependencies change- which is a superior developer experience when
|
|
11
|
+
# relying on docker-compose.
|
|
12
|
+
COPY ./package.json .
|
|
13
|
+
COPY ./package-lock.json .
|
|
14
|
+
RUN npm ci --only=production
|
|
15
|
+
FROM node:16-alpine
|
|
16
|
+
|
|
17
|
+
ARG BUILD_DATE
|
|
18
|
+
ARG VCS_URL
|
|
19
|
+
ARG VCS_REF
|
|
20
|
+
ARG VERSION
|
|
21
|
+
|
|
22
|
+
# See http://label-schema.org/rc1/ for label schema info
|
|
23
|
+
LABEL org.label-schema.schema-version="1.0"
|
|
24
|
+
LABEL org.label-schema.name="sdk-scheme-adapter"
|
|
25
|
+
LABEL org.label-schema.build-date=$BUILD_DATE
|
|
26
|
+
LABEL org.label-schema.vcs-url=$VCS_URL
|
|
27
|
+
LABEL org.label-schema.vcs-ref=$VCS_REF
|
|
28
|
+
LABEL org.label-schema.url="https://mojaloop.io/"
|
|
29
|
+
LABEL org.label-schema.version=$VERSION
|
|
30
|
+
|
|
31
|
+
COPY --from=builder /src/ /src
|
|
32
|
+
COPY ./src ./src
|
|
33
|
+
COPY ./secrets /
|
|
34
|
+
|
|
35
|
+
CMD ["node", "src/index.js"]
|
package/LICENSE.md
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# LICENSE
|
|
2
|
+
|
|
3
|
+
Copyright © 2017 Bill & Melinda Gates Foundation
|
|
4
|
+
|
|
5
|
+
The Mojaloop files are made available by the Bill & Melinda Gates Foundation under the Apache License, Version 2.0
|
|
6
|
+
(the "License") and you may not use these files except in compliance with the [License](http://www.apache.org/licenses/LICENSE-2.0). You may obtain a copy of the License at
|
|
7
|
+
|
|
8
|
+
[http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
|
|
9
|
+
|
|
10
|
+
Unless required by applicable law or agreed to in writing, the Mojaloop files are distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the [License](http://www.apache.org/licenses/LICENSE-2.0).
|