Skip to content

Hive

Hive #300

Workflow file for this run

name: Hive
on:
push:
branches:
- devel
- alpha
- stable
- op-erigon
pull_request:
branches:
- devel
- alpha
- stable
- op-erigon
types:
- opened
- reopened
- synchronize
- ready_for_review
schedule:
- cron: "0 01 * * *" # run at 1 am UTC every day
workflow_dispatch:
jobs:
hive:
runs-on: ubuntu-latest
steps:
- uses: AutoModality/action-clean@v1
- uses: actions/checkout@v3
with:
fetch-depth: 0 # fetch git tags for "git describe"
- name: build erigon image
run: DOCKER_TAG=testinprod/op-erigon:latest DOCKER_UID=$(id -u) DOCKER_GID=$(id -g) make docker
# check with root permissions, should be cached from previous build
- name: build erigon image (root permissions)
run: sudo DOCKER_TAG=testinprod/op-erigon:latest DOCKER_UID=$(id -u) DOCKER_GID=$(id -g) make docker
# exclude optimism/daisy-chain because it exhausts github ci disk space for downloading op-goerli database
- name: run hive and parse output
run: |
sudo mkdir -p /results-${{ github.run_id }}
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -v ${{ github.workspace }}:/work testinprod/hive:latest --sim "^optimism/(rpc|l1ops|p2p)$" --results-root=/work/results-${{ github.run_id }} --client go-ethereum,op-erigon,op-proposer,op-batcher,op-node
docker run --rm --pull always -v /var/run/docker.sock:/var/run/docker.sock -v ${{ github.workspace }}:/work --entrypoint /app/hivecioutput testinprod/hive:latest --resultsdir=/work/results-${{ github.run_id }} --outdir=/work/results-${{ github.run_id }} --exclusionsfile=/work/hive/exclusions.json
- name: clean up containers
if: always()
run: |
ids=$(docker ps -a -q)
for id in $ids
do
echo "stopping/removing container: $id"
docker stop $id && docker rm $id
done
- name: parse hive results
uses: phoenix-actions/test-reporting@v10
with:
name: Tests
path: results-${{ github.run_id }}/*.xml
reporter: java-junit