on: push: branches: - main - staging - develop - alpha pull_request: branches: - main - staging - develop - alpha name: CI jobs: build: runs-on: ubuntu-latest steps: - name: Install Go uses: actions/setup-go@v2 with: go-version: 1.18.x - name: Checkout code uses: actions/checkout@v2 - name: Build run: | make geth check: runs-on: ubuntu-latest steps: - name: Install Go uses: actions/setup-go@v2 with: go-version: 1.18.x - name: Checkout code uses: actions/checkout@v2 - name: Lint run: | rm -rf $HOME/.cache/golangci-lint make lint goimports-lint: runs-on: ubuntu-latest steps: - name: Install Go uses: actions/setup-go@v2 with: go-version: 1.18.x - name: Install goimports run: go install golang.org/x/tools/cmd/goimports@latest - name: Checkout code uses: actions/checkout@v2 - run: goimports -local github.com/scroll-tech/go-ethereum/ -w . - run: go mod tidy # If there are any diffs from goimports or go mod tidy, fail. - name: Verify no changes from goimports and go mod tidy run: | if [ -n "$(git status --porcelain)" ]; then exit 1 fi test: runs-on: ubuntu-latest steps: - name: Install Go uses: actions/setup-go@v2 with: go-version: 1.18.x - name: Checkout code uses: actions/checkout@v2 - name: Test run: | go get ./... make test - name: Upload coverage report run: bash <(curl -s https://codecov.io/bash)