mirror of
https://github.com/planetmint/planetmint.git
synced 2026-03-06 17:11:16 +00:00
GitHub actions (#234)
* creating first github action Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * fix syntax error Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * renamed action, using black stable Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * updated checkout action on workflow black Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * formatted code with black Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * replaced lint with black service Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * removed black service added black check to makefile Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * replaced flake8 with black Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added pull_request to black actions trigger Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * replaced flake8 with black style checker (#212) * updated version number to 1.0.0 Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * creating first github action Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * fix syntax error Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * renamed action, using black stable Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * updated checkout action on workflow black Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * formatted code with black Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * version bumpt Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * removed some comments and unsused import Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * replaced lint with black service Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * removed black service added black check to makefile Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * replaced flake8 with black Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added pull_request to black actions trigger Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * started on unit test workflow Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * removed run step Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * fixed typo Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * testing docker-compose Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * check docker-compose Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * try running pytest Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * check out -f Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * changed path Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * increased health check retries, added job dependency Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added path to docker-compose.yml to test action Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * moved container startup to test step Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added checkout step to test job Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * different kind of execution Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * checking build step Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * fixed missing keyword Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added checkout to build step Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * storing artifacts Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added needs Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * changed Dockerfile-dev to python-slim Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added job matrix back in Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added abci to build job matrix Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * updated test job steps Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * fixed typo Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * replaced docker exec with docker-compose exec for abci test Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added first version of acceptance and integration test action Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added runs-on Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * fixed syntax error Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * reverted to docker exec Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added copyright notice and env to start container step Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * separated abci from non abci test job Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * renamed pytest workflow to unit-test Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added codecov workflow Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added pytest install to codecov step Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added pip install Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * moved codecov to unit-test Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * show files Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * changed paths Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * removed debug job steps Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * renamed black to lint, added audit workflow Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * checking if dc down is necessary Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * removed dc down step from acceptance and integration Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * fixed lint error Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added tox documentation to github acitons (#226) * added documentation job Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added docs dependency install to docs workflow Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * add more dependencies Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * install rapidjson manually Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added python-rapidjson to docs requirements text Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * changed gh config on tox.ini Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added base58 to docs require Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * changed docs require to dev Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * reversed changes to docs require Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * changed gh to gh-actions Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * increased verbosity for debugging Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * added -e docsroot manually Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * removed verbosity Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * removed travis ci files Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> * changed audit step to trigger on schedule Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com> Co-authored-by: enesturk <enes.m.turk@gmail.com>
This commit is contained in:
committed by
GitHub
parent
e88bb41c70
commit
8abbef00fe
@@ -17,10 +17,7 @@ def generate_create_and_transfer(keypair=None):
|
||||
keypair = generate_key_pair()
|
||||
priv_key, pub_key = keypair
|
||||
create_tx = Create.generate([pub_key], [([pub_key], 10)]).sign([priv_key])
|
||||
transfer_tx = Transfer.generate(
|
||||
create_tx.to_inputs(),
|
||||
[([pub_key], 10)],
|
||||
asset_id=create_tx.id).sign([priv_key])
|
||||
transfer_tx = Transfer.generate(create_tx.to_inputs(), [([pub_key], 10)], asset_id=create_tx.id).sign([priv_key])
|
||||
return create_tx, transfer_tx
|
||||
|
||||
|
||||
@@ -30,10 +27,9 @@ def test_validation_worker_process_multiple_transactions(b):
|
||||
|
||||
keypair = generate_key_pair()
|
||||
create_tx, transfer_tx = generate_create_and_transfer(keypair)
|
||||
double_spend = Transfer.generate(
|
||||
create_tx.to_inputs(),
|
||||
[([keypair.public_key], 10)],
|
||||
asset_id=create_tx.id).sign([keypair.private_key])
|
||||
double_spend = Transfer.generate(create_tx.to_inputs(), [([keypair.public_key], 10)], asset_id=create_tx.id).sign(
|
||||
[keypair.private_key]
|
||||
)
|
||||
|
||||
in_queue, results_queue = mp.Queue(), mp.Queue()
|
||||
vw = ValidationWorker(in_queue, results_queue)
|
||||
@@ -86,17 +82,15 @@ def test_parallel_validator_routes_transactions_correctly(b, monkeypatch):
|
||||
# Validate is now a passthrough, and every time it is called it will emit
|
||||
# the PID of its worker to the designated queue.
|
||||
def validate(self, dict_transaction):
|
||||
validation_called_by.put((os.getpid(), dict_transaction['id']))
|
||||
validation_called_by.put((os.getpid(), dict_transaction["id"]))
|
||||
return dict_transaction
|
||||
|
||||
monkeypatch.setattr(
|
||||
'planetmint.parallel_validation.ValidationWorker.validate',
|
||||
validate)
|
||||
monkeypatch.setattr("planetmint.parallel_validation.ValidationWorker.validate", validate)
|
||||
|
||||
# Transaction routing uses the `id` of the transaction. This test strips
|
||||
# down a transaction to just its `id`. We have two workers, so even ids
|
||||
# will be processed by one worker, odd ids by the other.
|
||||
transactions = [{'id': '0'}, {'id': '1'}, {'id': '2'}, {'id': '3'}]
|
||||
transactions = [{"id": "0"}, {"id": "1"}, {"id": "2"}, {"id": "3"}]
|
||||
|
||||
pv = ParallelValidator(number_of_workers=2)
|
||||
pv.start()
|
||||
@@ -109,7 +103,7 @@ def test_parallel_validator_routes_transactions_correctly(b, monkeypatch):
|
||||
for _ in range(2):
|
||||
# First, we push the transactions to the parallel validator instance
|
||||
for transaction in transactions:
|
||||
pv.validate(dumps(transaction).encode('utf8'))
|
||||
pv.validate(dumps(transaction).encode("utf8"))
|
||||
|
||||
assert pv.result(timeout=1) == transactions
|
||||
|
||||
@@ -128,7 +122,8 @@ def test_parallel_validator_routes_transactions_correctly(b, monkeypatch):
|
||||
# route for odd transactions. Since we don't know which worker
|
||||
# processed what, we test that the transactions processed by a
|
||||
# worker are all even or all odd.
|
||||
assert (all(filter(lambda x: int(x) % 2 == 0, transaction_ids)) or
|
||||
all(filter(lambda x: int(x) % 2 == 1, transaction_ids)))
|
||||
assert all(filter(lambda x: int(x) % 2 == 0, transaction_ids)) or all(
|
||||
filter(lambda x: int(x) % 2 == 1, transaction_ids)
|
||||
)
|
||||
|
||||
pv.stop()
|
||||
|
||||
Reference in New Issue
Block a user