name: Validate on: pull_request: branches: - '*' env: GO_VERSION: 1.16 MISSSPELL_VERSION: v0.3.4 PRE_TARGET: "" jobs: validate: runs-on: ubuntu-20.04 defaults: run: working-directory: ${{ github.workspace }}/go/src/github.com/traefik/traefik steps: - name: Set up Go ${{ env.GO_VERSION }} uses: actions/setup-go@v2 with: go-version: ${{ env.GO_VERSION }} - name: Check out code uses: actions/checkout@v2 with: path: go/src/github.com/traefik/traefik fetch-depth: 0 - name: Cache Go modules uses: actions/cache@v2 with: path: | ~/go/pkg/mod ~/.cache/go-build key: ${{ runner.os }}-validate-go-${{ hashFiles('**/go.sum') }} restore-keys: ${{ runner.os }}-validate-go- - name: Install golint run: go install golang.org/x/lint/golint@latest - name: Install missspell ${{ env.MISSSPELL_VERSION }} run: curl -sfL https://raw.githubusercontent.com/client9/misspell/master/install-misspell.sh | sh -s -- -b $(go env GOPATH)/bin ${MISSSPELL_VERSION} - name: Install gobindata run: | curl -fsSL -o $(go env GOPATH)/bin/go-bindata https://github.com/containous/go-bindata/releases/download/v1.0.0/go-bindata chmod +x $(go env GOPATH)/bin/go-bindata - name: Avoid generating webui run: mkdir -p webui/static && touch webui/static/index.html - name: Validate env: DOCKER_RUN_TRAEFIK: "" run: make validate validate-generate: runs-on: ubuntu-20.04 defaults: run: working-directory: ${{ github.workspace }}/go/src/github.com/traefik/traefik steps: - name: Set up Go ${{ env.GO_VERSION }} uses: actions/setup-go@v2 with: go-version: ${{ env.GO_VERSION }} - name: Check out code uses: actions/checkout@v2 with: path: go/src/github.com/traefik/traefik fetch-depth: 0 - name: Cache Go modules uses: actions/cache@v2 with: path: | ~/go/pkg/mod ~/.cache/go-build key: ${{ runner.os }}-validate-generate-go-${{ hashFiles('**/go.sum') }} restore-keys: ${{ runner.os }}-validate-generate-go- - name: Install gobindata run: | curl -fsSL -o $(go env GOPATH)/bin/go-bindata https://github.com/containous/go-bindata/releases/download/v1.0.0/go-bindata chmod +x $(go env GOPATH)/bin/go-bindata - name: go generate run: | go generate git diff --exit-code - name: go mod tidy run: | go mod tidy git diff --exit-code