mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-12 12:27:33 +00:00
94 lines
2.7 KiB
YAML
94 lines
2.7 KiB
YAML
name: Lint
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
node_version:
|
|
required: true
|
|
type: string
|
|
buf_version:
|
|
required: true
|
|
type: string
|
|
go_lint_version:
|
|
required: true
|
|
type: string
|
|
core_cache_key:
|
|
required: true
|
|
type: string
|
|
core_cache_path:
|
|
required: true
|
|
type: string
|
|
|
|
jobs:
|
|
lint-skip:
|
|
name: lint skip
|
|
runs-on: ubuntu-latest
|
|
if: ${{ github.event_name != 'pull_request' }}
|
|
steps:
|
|
- name: Lint skip
|
|
run: |
|
|
echo "Linting outside of pull requests is skipped"
|
|
|
|
api:
|
|
name: api
|
|
runs-on: ubuntu-latest
|
|
continue-on-error: true
|
|
if: ${{ github.event_name == 'pull_request' }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: bufbuild/buf-setup-action@v1
|
|
with:
|
|
version: ${{ inputs.buf_version }}
|
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
- name: lint
|
|
uses: bufbuild/buf-lint-action@v1
|
|
- uses: bufbuild/buf-breaking-action@v1
|
|
with:
|
|
against: "https://github.com/${{ github.repository }}.git#branch=${{ github.base_ref }}"
|
|
|
|
turbo-lint-unit:
|
|
if: ${{ github.event_name == 'pull_request' }}
|
|
name: turbo-lint-unit
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
- name: Install Dev Container CLI
|
|
run: npm install -g @devcontainers/cli@0.80.0
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
- name: Lint and Unit Test All JavaScript Code
|
|
run: npm run devcontainer:lint-unit
|
|
- name: Fix Failures
|
|
if: failure()
|
|
run: |
|
|
echo "Reproduce this check locally:"
|
|
echo "npm run devcontainer:lint-unit"
|
|
echo "If you have pnpm installed, most linting errors can be fixed automatically:"
|
|
echo "pnpm turbo lint:fix"
|
|
echo "In other cases, you can open the dev container called \"Turbo Lint and Unit Tests\"."
|
|
echo "You will have the same environment as the pipeline check as well as some guidance on how to fix the errors."
|
|
|
|
core:
|
|
name: core
|
|
runs-on: ubuntu-latest
|
|
if: ${{ github.event_name == 'pull_request' }}
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
- uses: actions/setup-go@v5
|
|
with:
|
|
go-version-file: "go.mod"
|
|
- uses: actions/cache/restore@v4
|
|
timeout-minutes: 1
|
|
name: restore core
|
|
with:
|
|
path: ${{ inputs.core_cache_path }}
|
|
key: ${{ inputs.core_cache_key }}
|
|
fail-on-cache-miss: true
|
|
- uses: golangci/golangci-lint-action@v8
|
|
with:
|
|
version: ${{ inputs.go_lint_version }}
|
|
github-token: ${{ github.token }}
|
|
only-new-issues: true
|