I’m just getting started with Blockcert-python and trying to run it on my local system.
Here are the steps I did:
- Clone the cert-issuer GitHub repo
- Create a virtual environment for Python 3.5.4 on Mac OS
- Run
python setup.py experimental --blockchain=etheruem
command
- It gives an error, then I edit the site-packages to fix the pysha3 version conflict
- Then I configure the
conf.ini
and put all the necessary information like issuer_address etc.
- after that, I run
python setup.py install
and it goes well
- Now when I run
cert-issuer -c conf.ini
, it gives an error that no module named rpl
- Then I install the
rpl
module and forced its version below 1.
- Now, it’s giving another error as
ImportError: No module named 'ethereum'
and here’s the complete error statement:
WARNING - Your app is configured to skip the wifi check when the USB is plugged in. Read the documentation to ensure this is what you want, since this is less secure
INFO - This run will try to issue on the ethereum_ropsten chain
Traceback (most recent call last):
File “/Users/abdul/PycharmProjects/cert-issuer/venv/bin/cert-issuer”, line 11, in
load_entry_point(‘cert-issuer==2.0.22’, ‘console_scripts’, ‘cert-issuer’)()
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/main.py”, line 17, in cert_issuer_main
issue_certificates.main(parsed_config)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/issue_certificates.py”, line 31, in main
from cert_issuer.blockchain_handlers import ethereum
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/blockchain_handlers/ethereum/init.py”, line 9, in
from cert_issuer.blockchain_handlers.ethereum.signer import EthereumSigner
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/blockchain_handlers/ethereum/signer.py”, line 2, in
from ethereum import transactions
ImportError: No module named ‘ethereum’
I think the problem is that you’re overriding your first installation by running python setup.py install
after python setup.py experimental --blockchain=etheruem
.
Only run python setup.py experimental --blockchain=etheruem
if you intend on using ethereum.
I have to run it for ethereum, so If I run python setup.py experimental --blockchain=etheruem
it gives another error as: AssertionError: Invalid blockchain!
My other installation was work on this step but it was giving a different error while issuing(cert-issuer -c conf.ini) the certificate.
Here’s the complete Traceback:
Traceback (most recent call last):
File “/Users/abdul/PycharmProjects/cert-issuer/venv/bin/cert-issuer”, line 11, in
load_entry_point(‘cert-issuer==2.0.22’, ‘console_scripts’, ‘cert-issuer’)()
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/main.py”, line 17, in cert_issuer_main
issue_certificates.main(parsed_config)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/issue_certificates.py”, line 36, in main
return issue(app_config, certificate_batch_handler, transaction_handler)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/issue_certificates.py”, line 22, in issue
tx_id = issuer.issue(app_config.chain)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/issuer.py”, line 27, in issue
txid = self.transaction_handler.issue_transaction(blockchain_bytes)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/blockchain_handlers/ethereum/transaction_handlers.py”, line 61, in issue_transaction
self.verify_transaction(signed_tx, eth_data_field)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/blockchain_handlers/ethereum/transaction_handlers.py”, line 92, in verify_transaction
tx_utils.verify_eth_transaction(signed_tx, eth_data_field)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/blockchain_handlers/ethereum/tx_utils.py”, line 24, in verify_eth_transaction
for s in signed_hextx.split(‘80a0’):
AttributeError: ‘dict’ object has no attribute ‘split’