Commit graph

47 commits

Author SHA1 Message Date
Matthew B White
5f4d0f9551 CORS Enablement
After feedback from the community, this PR adds CORS support in, but as an option
to enable.

Along with warnings that the default wildcard origin might not be applicable
in a production use case

Signed-off-by: Matthew B White <whitemat@uk.ibm.com>
2022-04-01 13:43:15 +01:00
Matthew B White
9fa171f824
Update the REST Example (#689)
1. The default chaincode use Capitalized JSON Names, whereas for new asset the REST validation didn't.. Adjusted
so it matches the chaincode

Signed-off-by: Matthew B White <whitemat@uk.ibm.com>
2022-03-31 08:19:34 -04:00
James Taylor
5d3cc66c25
Convert comments to tsdoc in REST sample (#606)
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2022-02-01 17:12:07 +01:00
James Taylor
887e4a3578
Update REST sample readme (#575)
Move signposts to sample source files from index.ts to the readme and reinforce the key aspects of the sample

Signed-off-by: James Taylor <jamest@uk.ibm.com>
2022-01-12 10:38:44 +00:00
James Taylor
fce803af24 Add jobs spec tests
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-15 14:24:58 +00:00
James Taylor
dfe79f7fb4 Add comments to jobs.ts
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-15 14:24:34 +00:00
James Taylor
711f1f560b Use app.locals to store contracts and jobq
“The app.locals object has properties that are local variables within the application.”

…which looks like a better option than app.get and app.set for app settings.

Also passes app to the initJobQueueWorker function for consistency.

Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:24 +00:00
James Taylor
66199000ca Fix lint errors
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:24 +00:00
James Taylor
5d92abc52d Clarify retry logic
Improve the separation between Fabric logic and the job queue implementation details

Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:24 +00:00
James Taylor
b0256a57b5 Signpost configuration details
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:24 +00:00
James Taylor
ad3fd7e832 Update retry logic
Previously transactions were only retried after being successfully endorsed, and always with the same transaction ID

Transactions will now be added to a queue for processing and will also be retried if endorsement fails (with a different transaction id for invalid transactions)

Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:23 +00:00
James Taylor
0456a9e94c Move error related functions to errors.ts
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:23 +00:00
James Taylor
fd269237d4 Add comments to fabric.ts
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:23 +00:00
James Taylor
00a2dea50b Add block event listener config
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:23 +00:00
James Taylor
f1a9fea77d Fix lint errors
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:23 +00:00
sapthasurendran
9aec7ffd2a Clear Transaction when no contract found
Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>
2021-12-14 14:31:23 +00:00
James Taylor
bf91df7ef3 Update transaction retry to use correct user
Also improves test coverage

Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:21 +00:00
James Taylor
5d1adddd03 Refactor health routes in to separate file
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:21 +00:00
James Taylor
45683b2a1a Simplify fabric code
Attempt to make fabric code easier to document

Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:21 +00:00
James Taylor
862080773e Initial API tests
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:21 +00:00
sapthasurendran
6477333743 redis mock class
code cleanup

created fabric.spec

redis testcases and additional checks

Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>
2021-12-14 14:31:21 +00:00
James Taylor
f904adbf6f Add config spec tests
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:20 +00:00
James Taylor
e81a7a8b46 Update port number config
Discovered that env-var will validate port numbers, which is nice

Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:20 +00:00
sapthasurendran
5bea58e501 retry condition moved to startretryloop
Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>
2021-12-14 14:31:20 +00:00
sapthasurendran
b8509490ad retry count check
build err fix

retry condition testcase

retryCount to maxRetryCount

Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>
2021-12-14 14:31:18 +00:00
James Taylor
9f48a42418 Initial test framework
Add Jest test framework

Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:15 +00:00
sapthasurendran
9ae66c76da switch gateway based on user org
Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>

initialized fabric components to global app const

getcontractforOrg for transaction router

removed org and reused identityOrg1

env.sample file update

liveness api update

Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>
2021-12-14 14:31:15 +00:00
James Taylor
05f7026e58 Update api key header
Use more common X-Api-Key header with no prefix

Also updates Unauthorized response to include a json error body
and simplifies working with new API key via curl and the vscode
rest client

Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:31:13 +00:00
sapthasurendran
c3a34ef559 apikey auth for Org1
Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>

removed auth check from live,ready apis..

code format

http file changes for apikey

comments for getting api key

readme update for apikey usage

replaced -H with --header

apikey config made mandatory

fix linting

Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>
2021-12-14 14:31:13 +00:00
sapthasurendran
d4318c381a liveness
used fabric protos insted of blockdecoder

changed import statement

Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>

revert back eslintrc

Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>

function name change

Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>

format changes

Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>
2021-12-14 14:31:12 +00:00
sapthasurendran
fc769cfcb0 event handler strategy changes
Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>
2021-12-14 14:31:11 +00:00
sapthasurendran
31b08b9151 removed txn commit event handler
Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>
2021-12-14 14:31:10 +00:00
sapthasurendran
5d6e916436 changed getContract arg
Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>
2021-12-14 14:31:09 +00:00
sapthasurendran
550e95f091 Added blockEvent handler
Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>
2021-12-14 14:31:05 +00:00
sapthasurendran
804f4a6468 added getNetwork functionality
Signed-off-by: sapthasurendran <saptha.surendran@ibm.com>
2021-12-14 14:31:00 +00:00
James Taylor
19e28d817b Fix retry
Adding multiple contracts had broken the retry loop

Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:14:57 +00:00
James Taylor
432da5defd Add get transaction endpoint
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:14:56 +00:00
James Taylor
60aedf1b82 Refactor transaction logic
Remove duplication and handle errors from the asset transfer smart contract

Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:14:56 +00:00
James Taylor
400367e8a6 Add get all assets endpoint
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:14:56 +00:00
James Taylor
d810128fcd Add patch endpoint
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:14:56 +00:00
James Taylor
8250359db6 Add delete and put endpoints
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:14:56 +00:00
James Taylor
8ebca62b40 Fix lint errors
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:14:56 +00:00
James Taylor
f06f1eed4b Update logging
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:14:56 +00:00
James Taylor
3b50404763 Initial create asset logic
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:14:56 +00:00
James Taylor
324f1c8683 Specify query handler strategy
Avoid load on a single peer by specifying the PREFER_MSPID_SCOPE_ROUND_ROBIN
strategy

Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:14:56 +00:00
James Taylor
9c98450946 Initial asset route
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:14:56 +00:00
James Taylor
063b21dd3f Initial REST API skeleton
Signed-off-by: James Taylor <jamest@uk.ibm.com>
2021-12-14 14:14:56 +00:00