Commit Graph

550 Commits

Author SHA1 Message Date
Sergi Delgado Segura
99a9b2f33e Improve return messages from 83df910d5954bf1943e504b84e3aa5e0eb8b21d7 2020-02-14 14:39:50 +01:00
Sergi Delgado Segura
4c9ddd0827 Sets limits for star/end time and to_self_delay for the alpha 2020-02-14 14:39:43 +01:00
Sergi Delgado Segura
de2036b19b Fixes cli console log levels so Cryptographer's sensitive info is only logged in disk 2020-02-14 12:42:47 +01:00
Sergi Delgado Segura
ead74199e5 Adds schema on cli and e2e tests 2020-02-13 19:36:33 +01:00
Sergi Delgado Segura
1471e89855 Adds exception handling for no schema and timeout 2020-02-13 19:24:22 +01:00
Sergi Delgado Segura
452dbb6bee Updates check_appointment to get_appointment and justice to penalty 2020-02-13 19:02:30 +01:00
Sergi Delgado Segura
43975df894 Changes cli to be protocol agnostic and defines https on config file 2020-02-13 19:00:15 +01:00
Sergi Delgado Segura
3ba5db533d Fixes json parsing of None when no json was postesd to the API
h/t @yahgwai for finding this.
2020-02-13 18:42:00 +01:00
Sergi Delgado Segura
f24bb75e07 Fixes formatting issues in cli/README 2020-02-13 17:45:43 +01:00
Chris Buckland
f00e4562e6 Reformatted json appointment block 2020-02-13 17:30:04 +01:00
Sergi Delgado Segura
3b5ff2e92c Removes get_block_count endpoint
get_block_count was only for dummy testing and it's not used anymore
2020-02-13 16:59:06 +01:00
Sergi Delgado Segura
7e29824452 Improves API log and adds logs for get_appointment 2020-02-13 16:51:44 +01:00
Sergi Delgado Segura
adf883868e Improves config section 2020-02-13 16:42:29 +01:00
Sergi Delgado Segura
e2e27d3e9c Adds config file section to install 2020-02-13 16:34:22 +01:00
Chris Buckland
d8977acd2d Typo 2020-02-13 16:34:19 +01:00
Sergi Delgado Segura
02e159faac Moves EncryptedBlob to common 2020-02-13 16:32:51 +01:00
Sergi Delgado Segura
6e40938733 Updates PISA server endpoint 2020-02-13 13:35:59 +01:00
Sergi Delgado Segura
a655eb8b98 Adds module info to INSTALL docs 2020-02-13 13:35:02 +01:00
Sergi Delgado Segura
e6187fc657 Replaces missing occurrences of pisa_cli for wt_cli 2020-02-12 10:40:16 +01:00
Sergi Delgado Segura
c3246a3652 Merge pull request #95 from sr-gi/e2e-testing
Adds E2E testing
2020-02-11 22:53:16 +01:00
Sergi Delgado Segura
7a5a73e9bd Merge pull request #94 from sr-gi/improve-cli
Improve cli
2020-02-11 22:48:39 +01:00
Sergi Delgado Segura
036f879302 Monkeypatches load_keys in e2e tests since add_appointment calls it internally 2020-02-11 22:31:14 +01:00
Sergi Delgado Segura
ea4d6cf345 Updates e2e tests to derive pk from sk intead of using load_keys
Since we're creating a new set of keys in the e2e tests the hardcoded public key of the cli won't work
2020-02-11 21:55:02 +01:00
Sergi Delgado Segura
afcada03bf Improve docs 2020-02-11 20:24:03 +01:00
Sergi Delgado Segura
d447debe54 Temporal fix for Cryptographer logs. Close #91 2020-02-11 20:22:51 +01:00
Sergi Delgado Segura
e2794eff2a Modifies e2e tests to match alpha cli.load_keys 2020-02-11 19:27:33 +01:00
Sergi Delgado Segura
22ded55990 Renames pisa_cli to wt_cli 2020-02-11 18:37:12 +01:00
Sergi Delgado Segura
f492fe7cbb Updates e2e tests to use new cli methods 2020-02-10 16:31:51 +01:00
Sergi Delgado Segura
dd232c678a Updates default cli.log name 2020-02-10 16:31:51 +01:00
Sergi Delgado Segura
ee4269d047 Updates cli tests and adds some missing ones 2020-02-10 16:31:51 +01:00
Sergi Delgado Segura
5a49a93710 Improves cli
- Improves modularity
- Adds missing exceptions
- Adds docstrings
- Simplifies some method names
2020-02-10 16:31:50 +01:00
Sergi Delgado Segura
ab21cbfc8f Moves load_key_file to Cryptographer and updates pisad to use it 2020-02-10 16:31:48 +01:00
Sergi Delgado Segura
4ea6450c0e Merge pull request #93 from sr-gi/remove-sleep
Remove sleep
2020-02-10 16:27:23 +01:00
Sergi Delgado Segura
6913d1cd18 Update tests to remove the asleep flags 2020-02-10 16:21:31 +01:00
Sergi Delgado Segura
a4f7548804 Removes sleep flag and reorders code for redability 2020-02-10 16:21:05 +01:00
Sergi Delgado Segura
aa12fa2cf8 Removes sleep flag from Watcher and Responder
The sleep flag was used to avoid doing useless work when no data was hold by the tower. However, from the implementation of the data persistence on, the Watcher and Responder should at least keep track of the last known block. The current apporach was making this harder.
2020-02-10 16:19:22 +01:00
Sergi Delgado Segura
6c957b067d Adds batch update unit tests for DBManager 2020-01-31 13:57:30 +01:00
Sergi Delgado Segura
4f000298fa Removes zmq_subscriber
The ZMQSubscriber was merged into the ChainMonitor but never deleted
2020-01-31 13:11:59 +01:00
Sergi Delgado Segura
c538ebadd0 Updates Clear unit tests to use dicts for completed_trackers instead of tuples 2020-01-31 13:10:06 +01:00
Sergi Delgado Segura
451311b765 Updates ChainMonitor unit tests to ititialize the db_manager
The Responder needs a DBManager instance to pull the last know block, so None is not valid anymore for this tests
2020-01-31 13:08:55 +01:00
Sergi Delgado Segura
1f88f70c9a Updates test_carrier with issued_receipts
The functionality expected in the test required the issued_receipts dict to be cleare, what is normally performed by the Responder
2020-01-31 13:05:49 +01:00
Sergi Delgado Segura
1a7464f31a Changes db_manager fixture from session to module 2020-01-31 13:04:23 +01:00
Sergi Delgado Segura
32ff13a495 Fixes loading data from disk when both Watcher and Responder need to be brough up to date
The previous approach was not correct, since both actors need to be brought up to date at the same time.
2020-01-31 13:02:32 +01:00
Sergi Delgado Segura
02bc88ed84 Updates Watcher to use db batch updates and avoid multiple decryptions of the same data 2020-01-31 13:00:55 +01:00
Sergi Delgado Segura
a8f2407df9 Updates tests for Responder.check_completed_trackers 2020-01-31 13:00:04 +01:00
Sergi Delgado Segura
d9ce265c00 Updates Responder to minimize data replication operations and properly load data from db
- Uses an instance of the Carrier so it can benefit from issued_receipts and avoid resending multiple copies of the same triggered appointment
- Defines last_known_block to properly load data from db
- Uses task_done from Queue to properly signal task completion when boostraping from db
- Creates a checked_txs dict in get_completed_trackers to avoid querying bitcoind for the same transaction over and over
- Redefines completed_trackers as dict instead of tuple
2020-01-31 12:55:21 +01:00
Sergi Delgado Segura
4848b9a058 Updates cleaner to use db batch updates 2020-01-31 12:53:38 +01:00
Sergi Delgado Segura
5bf8dbd9de Improves load_watcher_appointments and adds methods for batch updating the db
Dumping data into the db became a bottleneck mainly due to not using batch aggregation when dealing with huge amounts of info.
2020-01-31 12:52:12 +01:00
Sergi Delgado Segura
0c4b8eaf4a Adds a dict of sent receipts to act as a cache and avoid sending the same data more than once
The dict is supposed to be reset periodically so it does not grow unbounded
2020-01-31 12:48:11 +01:00
Sergi Delgado Segura
b31e24f655 Adds unit tests for Builder.update_states 2020-01-31 12:46:12 +01:00