Skip to content

ci: proto break change doesnt run all the time #7773

ci: proto break change doesnt run all the time

ci: proto break change doesnt run all the time #7773

Workflow file for this run

# This document explains why this runs on GitHub over Circle
# https://www.notion.so/kurtosistech/Why-we-have-our-Linter-as-a-Github-Action-572b44c4a9b445009515b7b41d5f74ff
# we use `skip-pkg-cache:true` as we run into https://github.com/golangci/golangci-lint-action/issues/244 if we don't
name: Golang Lint
# We only want one run of this on a branch
# if you push another commit the previous run should cancel
concurrency:
group: "go-linter-${{ github.ref }}"
cancel-in-progress: true
permissions:
contents: read
on:
pull_request:
merge_group:
env:
GOLINT_VERSION: v1.53.3
jobs:
check-if-code-change:
runs-on: ubuntu-latest
outputs:
change: ${{ steps.check.change }}
steps:
- uses: actions/checkout@v4
with:
go-version: '1.20'
fetch-depth: 0
- run: |
if git --no-pager diff --exit-code origin/main...HEAD -- . ':!docs' ':!*.md'; then
echo "::set-output name=change::false"
else
echo "::set-output name=change::true"
fi
id: check
golangci:
needs: check-if-code-change
if: ${{ needs.check-if-code-change.outputs.change == true }}
name: golang-lint
runs-on: ubuntu-latest
steps:
- uses: actions/setup-go@v4
with:
go-version: '1.20'
- uses: actions/checkout@v3
# Generate versions
- run: scripts/generate-kurtosis-version.sh
- name: lint-container-engine-lib
uses: golangci/golangci-lint-action@v3
with:
version: ${{ env.GOLINT_VERSION }}
working-directory: container-engine-lib/
args: --timeout=3m
skip-pkg-cache: true
- name: lint-contexts-config-store
uses: golangci/golangci-lint-action@v3
with:
version: ${{ env.GOLINT_VERSION }}
working-directory: contexts-config-store/
args: --timeout=3m
skip-pkg-cache: true
- name: lint-grpc-file-transfer
uses: golangci/golangci-lint-action@v3
with:
version: ${{ env.GOLINT_VERSION }}
working-directory: grpc-file-transfer/golang/
args: --timeout=3m
skip-pkg-cache: true
- name: lint-metrics-library
uses: golangci/golangci-lint-action@v3
with:
version: ${{ env.GOLINT_VERSION }}
working-directory: metrics-library/golang
args: --timeout=3m
skip-pkg-cache: true
- name: lint-name-generator
uses: golangci/golangci-lint-action@v3
with:
version: ${{ env.GOLINT_VERSION }}
working-directory: name_generator/
args: --timeout=3m
skip-pkg-cache: true
- name: lint-api-golang
uses: golangci/golangci-lint-action@v3
with:
version: ${{ env.GOLINT_VERSION }}
working-directory: api/golang/
args: --timeout=3m
skip-pkg-cache: true
- name: lint-core-server
uses: golangci/golangci-lint-action@v3
with:
version: ${{ env.GOLINT_VERSION }}
working-directory: core/server
args: --timeout=3m
skip-pkg-cache: true
- name: lint-core-launcher
uses: golangci/golangci-lint-action@v3
with:
version: ${{ env.GOLINT_VERSION }}
working-directory: core/launcher/
args: --timeout=3m
skip-pkg-cache: true
- name: lint-engine-server
uses: golangci/golangci-lint-action@v3
with:
version: ${{ env.GOLINT_VERSION }}
working-directory: engine/server/
args: --timeout=3m
skip-pkg-cache: true
- name: lint-engine-launcher
uses: golangci/golangci-lint-action@v3
with:
version: ${{ env.GOLINT_VERSION }}
working-directory: engine/launcher/
args: --timeout=3m
skip-pkg-cache: true
- name: lint-internal-test-suites
uses: golangci/golangci-lint-action@v3
with:
version: ${{ env.GOLINT_VERSION }}
working-directory: internal_testsuites/golang/
args: --timeout=3m
skip-pkg-cache: true
- name: lint-cli
uses: golangci/golangci-lint-action@v3
with:
version: ${{ env.GOLINT_VERSION }}
working-directory: cli/cli/
args: --timeout=3m
skip-pkg-cache: true