---
name: CI Go
on:
  push:
    branches: [main]
    paths:
      - cmd/**/*
      - pkg/**/*
      - lib/**/*
      - go.mod
      - dalfox.go
      - Dockerfile
  pull_request:
    branches: [main]
    paths:
      - cmd/**/*
      - pkg/**/*
      - lib/**/*
      - go.mod
      - dalfox.go
      - Dockerfile
jobs:
  build:
    name: Build
    runs-on: ubuntu-latest
    strategy:
      matrix:
        go: ['1.23']
    steps:
      - name: Set up Go ${{ matrix.go }}
        uses: actions/setup-go@v4
        with:
          go-version: ${{ matrix.go }}
        id: go
      - name: Check out code into the Go module directory
        uses: actions/checkout@v3
      - name: Get dependencies
        run: |
          go get -v -t -d ./...
          if [ -f Gopkg.toml ]; then
              curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh
              dep ensure
          fi
      - name: Build
        run: go build -v .
      - name: Library unit-test
        run: go test lib/*
