Hyperledger Caliper is a general-purpose benchmarking tool for distributed systems like DLTs with scalable workload generation, declarative workload definitions and comprehensive data analysis capabilities. The Caliper and Caliper-Benchmarks repositories had build systems to verify pull requests by running unit and integration tests and to deploy the latest packages to NPM and DockerHub. The objective of the project was to optimize the pipelines and reduce the build times to improve the experience of developers contributing to Caliper. The project was split into three phases:
Migrate the Caliper repository from using Azure pipelines to GitHub Actions.
Optimize the builds for Caliper and Caliper-Benchmarks.
Enhance the builds of Caliper and Caliper-Benchmarks with new features.
I would like to thank my mentor David Kelsey from IBM for the guidance throughout the mentorship project.
What did you learn or accomplish?
I developed a good understanding of how Hyperledger Caliper works and, in general, how a benchmarking system is designed.