dragonfly-api 2.0.133

Canonical location of the Dragonfly API definition
name: Lint

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:
  golang-lint:
    name: Golang Lint
    runs-on: ubuntu-latest
    timeout-minutes: 10
    steps:
      - name: Checkout code
        uses: actions/checkout@v4
        with:
          fetch-depth: '0'

      - name: Golangci lint
        uses: golangci/golangci-lint-action@v6
        with:
          version: v1.54
          args: --verbose

  rust-lint:
    name: Rust Lint
    runs-on: ubuntu-latest
    timeout-minutes: 10
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Install protobuf-compiler
        run: sudo apt-get install protobuf-compiler

      - name: Install toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          override: true

      - name: Run cargo check
        uses: actions-rs/cargo@v1
        with:
          command: check

      - name: Run cargo clippy
        uses: actions-rs/cargo@v1
        with:
          command: clippy
          args: -- -D warnings

  markdown-lint:
    name: Markdown Lint
    runs-on: ubuntu-latest
    timeout-minutes: 10
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Markdown lint
        uses: docker://avtodev/markdown-lint:v1
        with:
          config: '.markdownlint.yml'
          args: '**/*.md'