fabric-test
fabric-test copied to clipboard
Add chaos testing for peer gateway into the fabric-test builds
Code base
- [x] add operator based network
- [x] add chaos chaincode from fabric-chaos testing into chaincodes/chaos/node
- [x] add chaos client (don't forget the lint dot file) from fabric-chaos-testing into tools/chaos/client/node
- [x] add chaos engine (don't forget the lint dot file and sample scenarios) from fabric-chaos-testing into tools/chaos/engine
Integration
- [ ] build task to run chaos killing non gateway peers (this could fail occasionally) - see requirements later for this : PR AVAILABLE
- [ ] build task to run complete chaos and ensure client can still recover - see requirements later for this
- [ ] tune the tasks to the build environment they will run in when adding to the CI pipeline
Misc
- [ ] task to do a smoke test of chaos engine when PR submitted
- [ ] provide a readme to document the chaos environment and how to use standalone
For each build task you will need to
- update Makefile to to build chaos chaincode, chaos client, chaos engine (on time only)
- create a directory in regression
- add in an appropriate suite_test.go + test.go files (+go.mod, go.sum)
- create a chaos launcher script (based on coord.sh) to manage syncing the client and chaos engine
- add a scenarios directory with the required scenarios for that build task
- add a .env file which configures the client and is appropriate for that task (probably require tuning)
@davidkel Remind me, how far did we get with this? Wondering if we should close it now...