mirror of
https://github.com/juanfont/headscale.git
synced 2024-11-29 18:33:05 +00:00
1815040d98
This commit configures the CI to run specific parts of the CI when relevant changes has been made. This should help us not have to deal with the integration tests when we do doc/admin changes.
69 lines
1.6 KiB
YAML
69 lines
1.6 KiB
YAML
---
|
|
name: CI
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
golangci-lint:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Get changed files
|
|
id: changed-files
|
|
uses: tj-actions/changed-files@v14.1
|
|
with:
|
|
files: |
|
|
go.*
|
|
**/*.go
|
|
integration_test/
|
|
config-example.yaml
|
|
|
|
- name: golangci-lint
|
|
if: steps.changed-files.outputs.any_changed == 'true'
|
|
uses: golangci/golangci-lint-action@v2
|
|
with:
|
|
version: latest
|
|
|
|
# Only block PRs on new problems.
|
|
# If this is not enabled, we will end up having PRs
|
|
# blocked because new linters has appared and other
|
|
# parts of the code is affected.
|
|
only-new-issues: true
|
|
|
|
prettier-lint:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Get changed files
|
|
id: changed-files
|
|
uses: tj-actions/changed-files@v14.1
|
|
with:
|
|
files: |
|
|
**/*.md
|
|
**/*.yml
|
|
**/*.yaml
|
|
**/*.ts
|
|
**/*.js
|
|
**/*.sass
|
|
**/*.css
|
|
**/*.scss
|
|
**/*.html
|
|
|
|
- name: Prettify code
|
|
uses: creyD/prettier_action@v4.0
|
|
with:
|
|
prettier_options: >-
|
|
--check **/*.{ts,js,md,yaml,yml,sass,css,scss,html}
|
|
only_changed: false
|
|
dry: true
|
|
|
|
proto-lint:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: bufbuild/buf-setup-action@v0.7.0
|
|
- uses: bufbuild/buf-lint-action@v1
|
|
with:
|
|
input: "proto"
|