diff --git a/.github/workflows/go-test.yaml b/.github/workflows/go-test.yaml new file mode 100644 index 0000000..5ba6c53 --- /dev/null +++ b/.github/workflows/go-test.yaml @@ -0,0 +1,38 @@ +name: Go Tests + +on: + push: + branches: + - main + pull_request: + +jobs: + test: + name: Run Go Tests + runs-on: ubuntu-latest + steps: + - name: Check out code + uses: actions/checkout@v4 + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: "1.22" + + - name: Install dependencies + run: go mod download + + - name: Test rpc package + run: go test -v ./pkg/rpc + + - name: Test solana_exporter + run: go test -v ./cmd/solana_exporter + + - name: Run all tests with coverage + run: go test -v -coverprofile=coverage.out ./... + + - name: Upload coverage report + uses: actions/upload-artifact@v3 + with: + name: coverage-report + path: coverage.out \ No newline at end of file diff --git a/.github/workflows/gofmt.yaml b/.github/workflows/gofmt.yaml new file mode 100644 index 0000000..3d9fe8d --- /dev/null +++ b/.github/workflows/gofmt.yaml @@ -0,0 +1,26 @@ +name: Go Format Check + +on: + pull_request: + +jobs: + gofmt-check: + name: Check Go Formatting + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: "1.22" + + - name: Check gofmt + run: | + unformatted=$(gofmt -l .) + if [ -n "$unformatted" ]; then + echo "The following files are not formatted correctly:" + echo "$unformatted" + exit 1 + fi \ No newline at end of file