fabric-test icon indicating copy to clipboard operation
fabric-test copied to clipboard

Add chaos testing for peer gateway into the fabric-test builds

Open davidkel opened this issue 4 years ago • 1 comments

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 avatar Dec 17 '21 12:12 davidkel

@davidkel Remind me, how far did we get with this? Wondering if we should close it now...

denyeart avatar Oct 03 '22 16:10 denyeart