aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/check-formatting.yml
blob: c32aaff1f66f1e0d248b73b20c3250195bec13b9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
name: Check formatting

# Controls when the action will run.
on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

  workflow_dispatch:

jobs:
  check_formatting:
    runs-on: ubuntu-20.04

    steps:
      - uses: actions/checkout@v2

      - name: Setup Go environment
        uses: actions/setup-go@v2
        with:
          go-version: '^1.15.5'

      - name: Install formatters
        run: |
          wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
          sudo apt-get install software-properties-common
          sudo add-apt-repository 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-13 main'
          sudo apt-get install clang-format-13
          curl -sSLO https://github.com/pinterest/ktlint/releases/download/0.42.1/ktlint && chmod a+x ktlint && sudo mv ktlint /usr/bin/ktlint
          go get -u github.com/google/addlicense
          go get github.com/bazelbuild/buildtools/buildifier

      - name: Run format.sh and print changes
        run: |
          ./format.sh
          clang-format --version
          git diff

      - name: Check for changes
        run: "[ $(git status --porcelain | wc -l) -eq 0 ]"