headscale/.github/workflows/lint.yml

76 lines
2.3 KiB
YAML
Raw Normal View History

name: Lint
2024-03-13 12:43:06 +00:00
on: [pull_request]
concurrency:
group: ${{ github.workflow }}-$${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
golangci-lint:
runs-on: ubuntu-latest
steps:
2024-03-13 12:43:06 +00:00
- uses: actions/checkout@v4
2022-01-30 09:54:26 +00:00
with:
fetch-depth: 2
- name: Get changed files
id: changed-files
2024-03-13 12:43:06 +00:00
uses: dorny/paths-filter@v3
with:
2024-03-13 12:43:06 +00:00
filters: |
files:
- '*.nix'
- 'go.*'
- '**/*.go'
- 'integration_test/'
- 'config-example.yaml'
- uses: DeterminateSystems/nix-installer-action@main
2024-03-13 12:43:06 +00:00
if: steps.changed-files.outputs.files == 'true'
- uses: DeterminateSystems/magic-nix-cache-action@main
2024-03-13 12:43:06 +00:00
if: steps.changed-files.outputs.files == 'true'
- name: golangci-lint
2024-03-13 12:43:06 +00:00
if: steps.changed-files.outputs.files == 'true'
run: nix develop --command -- golangci-lint run --new-from-rev=${{github.event.pull_request.base.sha}} --out-format=colored-line-number
2022-01-28 17:40:39 +00:00
prettier-lint:
runs-on: ubuntu-latest
steps:
2024-03-13 12:43:06 +00:00
- uses: actions/checkout@v4
2022-01-30 09:54:26 +00:00
with:
fetch-depth: 2
- name: Get changed files
id: changed-files
2024-03-13 12:43:06 +00:00
uses: dorny/paths-filter@v3
with:
2024-03-13 12:43:06 +00:00
filters: |
files:
- '*.nix'
- '**/*.md'
- '**/*.yml'
- '**/*.yaml'
- '**/*.ts'
- '**/*.js'
- '**/*.sass'
- '**/*.css'
- '**/*.scss'
- '**/*.html'
- uses: DeterminateSystems/nix-installer-action@main
2024-03-13 12:43:06 +00:00
if: steps.changed-files.outputs.files == 'true'
- uses: DeterminateSystems/magic-nix-cache-action@main
2024-03-13 12:43:06 +00:00
if: steps.changed-files.outputs.files == 'true'
- name: Prettify code
2024-03-13 12:43:06 +00:00
if: steps.changed-files.outputs.files == 'true'
run: nix develop --command -- prettier --no-error-on-unmatched-pattern --ignore-unknown --check **/*.{ts,js,md,yaml,yml,sass,css,scss,html}
proto-lint:
runs-on: ubuntu-latest
steps:
2024-03-13 12:43:06 +00:00
- uses: actions/checkout@v4
- uses: DeterminateSystems/nix-installer-action@main
- uses: DeterminateSystems/magic-nix-cache-action@main
- name: Buf lint
run: nix develop --command -- buf lint proto