3. Dockerizing your Environment

The environment that your Chainwalker runs within must be Dockerized. This allows blockchains to build in the languages and tools they are most comfortable, while the Chainwalker framework remains language agnostic. The dockerfile should contain any libraries or external packages that you used to write the scripts above.

If your team is not up to speed with Docker, we're more than happy to guide you through this part of the process. Please reach out to us on slack!

Your environment should be containerized in the Dockerfile. After creating this container, run the following command to build and tag an image:

docker build . -t chainwalkers_{blockchain_name}:latest

Then you should be able to execute the following commands:

> docker run chainwalkers_{blockchain_name}:latest bash get_height.sh
{
"height": Integer
}
> docker run chainwalkers_{blockchain_name}:latest bash parse_blocks.sh 2913247 2913248 2913249
[
{
"hash": "d448e31d3d020f3723b6d091a06e4f42c4a636fa63ec50bbc08037c9d2c0bdd4",
"number": 2913249,
...
"transactions": [
{...},
...
]
},
...
]

After Dockerizing your environment, if the above commands run successfully, your Chainwalker is complete. Contact the Flipside team on Slack for a final review.

Pushing Your Code

Push all of the development code up to a development branch on the repo we're working in:

git checkout -b development
git add .
git commit -m {your commit message}

On every push to the development branch our suite of automated tests will run to ensure the outputs of your parser match the agreed upon JSON schema. Once those tests pass, we’ll conduct another manual review to make sure both of our teams are in sync with the data we’re getting.