-
Notifications
You must be signed in to change notification settings - Fork 1
Home
arthurgreef edited this page Jan 27, 2018
·
31 revisions
Overviews, notes, etc. for sawtooth-uom development
How I reset my environment to get to version 1.0 of HL/ST.
- Remove all docker images using this command
docker rmi -f $(docker images -a -q)
- Bring down the latest sawtooth compose file
sawtooth-default.yaml
- Execute compose
docker-compose -f ~/sawtooth.misc/sawtooth-default.yaml up
- Clone the latest repository
- Go to the root directory of the repo
cd ~\sawtooth-core
- At a minimum do
bin\build_all -l python
- I am using java so I do a
bin\build_all -l java
as well
Contrary to previous beliefs, one does not need to develop from within a sawtooth sdk image.
$ cd ~/sawtooth/core/sdk/java
$ mvn install
$ cd ~/sawtooth-uom/examples/uom_intkey
$ mvn package
$ docker build . -t uomkey
A sawtooth-uom ready composition is in this repos example directory
$ cd ~/sawtooth-uom/examples
$ docker-compose -f sawtooth-local.yaml up
# You will see this beautiful line in the log being produced
sawtooth-validator-local | [2018-01-22 08:45:38.652 INFO processor_handlers] registered transaction processor: connection_id=307972120e668399cd386bd106076e5d19f1512b1a7b0232098cd65bc9ba980ef189090455599a1a901cf4980c61c15c33ceae5c4077878e5b89cea9d7fd6cab, family=uomkey, version=1.0, namespaces=['f526a9']
uomkey-local | UOM TP Ready for execution. Entering event thread
# log into the client image
$ cd ~/sawtooth-uom/examples
$ docker-compose -f sawtooth-local.yaml exec client bash
# Generate and run a transaction batch
root@a0d42cccf53a:~# intkey create_batch --count 10 --key-count 5
root@a0d42cccf53a:~# intkey load -f batches.intkey -U http://rest-api:8008
At this point you will see something like the following in the sawtooth screen:
uomkey-local | UOM in apply!!!
uomkey-local | UOM decodePayload called
uomkey-local | OyAHTT
uomkey-local | apply verb dec
uomkey-local | UOM decodeState called
uomkey-local | UOM encodeState called
uomkey-local | Jan 22, 2018 10:54:16 AM sawtooth.uom.intkey.IntegerKeyHandler apply
uomkey-local | INFO: Verb: dec Name: OyAHTT value: 8
uomkey-local | UOM family name requested
uomkey-local | UOM version requested
uomkey-local | UOM in apply!!!
uomkey-local | UOM decodePayload called
uomkey-local | OyAHTT
uomkey-local | apply verb dec
uomkey-local | UOM decodeState called
uomkey-local | UOM encodeState called
uomkey-local | Jan 22, 2018 10:54:16 AM sawtooth.uom.intkey.IntegerKeyHandler apply
uomkey-local | INFO: Verb: dec Name: OyAHTT value: 1
uomkey-local | UOM family name requested
uomkey-local | UOM version requested
uomkey-local | UOM in apply!!!
uomkey-local | UOM decodePayload called
uomkey-local | OyAHTT
uomkey-local | apply verb inc
uomkey-local | UOM decodeState called
uomkey-local | UOM encodeState called
uomkey-local | Jan 22, 2018 10:54:16 AM sawtooth.uom.intkey.IntegerKeyHandler apply
uomkey-local | INFO: Verb: inc Name: OyAHTT value: 1
uomkey-local | UOM family name requested
uomkey-local | UOM version requested
uomkey-local | UOM in apply!!!
uomkey-local | UOM decodePayload called
uomkey-local | LMlmkn
uomkey-local | apply verb inc
uomkey-local | UOM decodeState called
uomkey-local | UOM encodeState called
uomkey-local | Jan 22, 2018 10:54:16 AM sawtooth.uom.intkey.IntegerKeyHandler apply
uomkey-local | INFO: Verb: inc Name: LMlmkn value: 9
uomkey-local | UOM family name requested
uomkey-local | UOM version requested
uomkey-local | UOM in apply!!!
uomkey-local | UOM decodePayload called
uomkey-local | zVtdht
uomkey-local | apply verb inc
uomkey-local | UOM decodeState called
uomkey-local | UOM encodeState called
uomkey-local | Jan 22, 2018 10:54:16 AM sawtooth.uom.intkey.IntegerKeyHandler apply
uomkey-local | INFO: Verb: inc Name: zVtdht value: 4
uomkey-local | UOM family name requested
uomkey-local | UOM version requested
uomkey-local | UOM in apply!!!
uomkey-local | UOM decodePayload called
uomkey-local | LMlmkn
uomkey-local | apply verb inc
uomkey-local | UOM decodeState called
uomkey-local | UOM encodeState called
uomkey-local | Jan 22, 2018 10:54:16 AM sawtooth.uom.intkey.IntegerKeyHandler apply
uomkey-local | INFO: Verb: inc Name: LMlmkn value: 2
Add an test_tp_settings_override.yaml file with the following content to prevent the test container from exiting.
version: "2.1"
services:
test-tp-settings:
command: ["tail", "-f", "/dev/null"]
'''
Run the following command in one shell.
```bash
export SAWTOOTH_CORE=$(pwd)
export ISOLATION_ID=latest
docker-compose -p latest -f ./families/settings/tests/test_tp_settings.yaml -f ./families/settings/tests/test_tp_settings_override.yaml up
In a second shell run the following command to open a shell to the test container.
docker-compose -p latest -f ./families/settings/tests/test_tp_settings.yaml exec test-tp-settings bash
Run python3 in the container and then execute a test.
>>> import unittest
>>> from test_tp_settings import *
>>> ts=unittest.TestSuite()
>>> ts.addTest(TestSettings('test_allow_set_authorized_keys_when_initially_empty'))
>>> tr=unittest.TestResult()
>>> ts.run(tr)
Export PYTHONPATH to the python module folders.
export PYTHONPATH=${PYTHONPATH}:/project/sawtooth-core/families/settings:/project/sawtooth-core/families/settings/sawtooth_settings:/project/sawtooth-core/sdkpythonbuildlib:/project/sawtooth-core/sdk/python/build/lib:/project/sawtooth-core/signing/build/lib