diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..1ee5d30 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,30 @@ +name: Test + +on: + pull_request: + branches: '*' + push: + branches: + - main + - ci-test + +jobs: + test: + name: Run unit tests + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-go@v4 + with: + go-version-file: 'go.mod' + check-latest: true + - name: Set up Gitea access token + env: + TOKEN: ${{ secrets.CICD_REPO_TOKEN }} + run: | + git config --global url."https://$TOKEN:@git.vdb.to/".insteadOf https://git.vdb.to/ + - name: Build tools + run: make dumpdiff.plugeth dumpdiff.geth + - name: Run diff comparison + run: ./scripts/compare-diffs.sh + diff --git a/README.md b/README.md index e11594c..60c53bb 100644 --- a/README.md +++ b/README.md @@ -3,3 +3,11 @@ Tooling to directly verify and benchmark the results of go-ethereum state diffs. Specifically, compares `plugeth-statediff`- and `go-ethereum/statediff`-built diffs. + +## Usage + +``` +make dumpdiff.plugeth dumpdiff.geth + +./scripts/compare-diffs.sh +``` diff --git a/scripts/compare-diffs.sh b/scripts/compare-diffs.sh index 601a0e4..5cf9095 100755 --- a/scripts/compare-diffs.sh +++ b/scripts/compare-diffs.sh @@ -1,9 +1,9 @@ #!/bin/bash -set -ex +set -e -PLUGIN_OUTPUT=$(mktemp -d -t plugin_) -GETH_OUTPUT=$(mktemp -d -t geth_) +PLUGIN_OUTPUT=$(mktemp -d -t plugin_XXXX) +GETH_OUTPUT=$(mktemp -d -t geth_XXXX) ./dumpdiff.plugeth $PLUGIN_OUTPUT ./dumpdiff.geth $GETH_OUTPUT @@ -11,4 +11,5 @@ GETH_OUTPUT=$(mktemp -d -t geth_) for file in $(ls $PLUGIN_OUTPUT) do diff "$PLUGIN_OUTPUT/$file" "$GETH_OUTPUT/$file" + echo Files match: "$PLUGIN_OUTPUT/$file" "$GETH_OUTPUT/$file" done