0x4b53/amqp-rpc

View on GitHub
.github/workflows/pr-and-merge.yaml

Summary

Maintainability
Test Coverage
---
name: CI
on:
  push:
    branches:
      - master
  pull_request:

jobs:
  golangci-lint:
    name: golangci-lint
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Install Go
        uses: actions/setup-go@v5
        with:
          go-version: "1.22"

      - name: Run golangci-lint
        uses: golangci/golangci-lint-action@v6
        with:
          version: v1.58.1

  tests:
    name: tests
    # run after golangci-lint action to not produce duplicated errors
    needs: golangci-lint
    runs-on: ubuntu-latest
    services:
      rabbitmq:
        image: rabbitmq:3-management
        ports:
          - 5672:5672
          - 15672:15672
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Install Go
        uses: actions/setup-go@v5
        with:
          go-version: "1.22"

      - name: Test code
        run: go test -race -v ./...

  coverage:
    name: coverage
    runs-on: ubuntu-latest
    services:
      rabbitmq:
        image: rabbitmq:3-management
        ports:
          - 5672:5672
          - 15672:15672

    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Install Go
        uses: actions/setup-go@v5
        with:
          go-version: "1.22"

      - name: Code Climate Coverage Action
        uses: paambaati/codeclimate-action@v6.0.0
        env:
          CC_TEST_REPORTER_ID: ${{secrets.CC_TEST_REPORTER_ID}}
        with:
          # Hack to resolve package:
          # https://github.com/paambaati/codeclimate-action/issues/109#issuecomment-751311299
          coverageCommand: make coverage
          prefix: ${{ github.event.repository.name }}
          coverageLocations: "${{github.workspace}}/c.out:gocov"