-
Clone the repo with
git clone git@github.com:rajat19/Doomsday.git cd Doomsday
-
Download the latest Gor binary from https://github.com/buger/gor/releases (they provide precompiled binaries for Windows, Linux x64 and Mac OS), or you can compile by yourself seeCompilation.
-
Build the project with
./scripts/compile.sh
-
Run the project with
./scripts/run.sh
You can update go-replay options by editing
scripts/run.sh
NOTE: If above commands show Permission Denied
try running with sudo
or rather use below commands
sh scripts/compile.sh
sh scripts/run.sh
GoReplay will send each request that was sent to the production server to your staging server. This middleware will compare the response from the acceptation server to that of the production server.
The middleware allows you to write rules that
- prevent certain requests from being replicated to the auth server
- modify the replay request. To replace auth headers for example.
- modify the original or replay response.
- To overwrite the replay response's date with the one from the original.
- To unchunk the response.
- To unzip the response so that they can be better compared.
Gor sends the requests and responses in an undefined order to the middleware, but your rule's methods will always be called with the data you need (the middleware stores data if needed and waits for the rest to arrive).
At the moment you're expected to write your own rules and add the to the constructor call in Application.java if there is a need I could make it more configurable and let you specify what rules to load in the command line.