summaryrefslogtreecommitdiff
path: root/.github/workflows/ci.yml
blob: ccead32bd5a831f22cb26c51fbece38c97272157 (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
42
43
44
45
46
47
# Copyright (c) 2023 Nicolas Paul All rights reserved.
# Use of this source code is governed by a BSD-style
# license that can be found in the LICENSE file.

name: Continuous Integration
on:
  push:
jobs:
  ci:
    name: Continuous Integration
    runs-on: ${{ matrix.os }}
    timeout-minutes: 5
    strategy:
      matrix:
        go:
          - "1.20"
        os:
          - ubuntu-latest
    steps:
      - uses: actions/checkout@v3
        name: Cloning repository
      - uses: actions/setup-go@v4
        name: Installing Go ${{ matrix.go_version }}
        with:
          go-version: ${{ matrix.go_version }}
      - name: Building project
        run: make
      - name: Testing project
        run: make test
      - name: Downloading CI dependencies
        run: |
          go install golang.org/x/tools/cmd/goimports@latest
          go install github.com/google/addlicense@latest
      - name: Check formatting
        run: ./tools/check_goimports.sh
      - name: Check license headers
        run: ./tools/check_addlicense.sh
      - name: Build documentation
        run: ./doc/build.sh
      - name: Deploy site
        uses: cloudflare/pages-action@1
        with:
          apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
          accountId: 8279a0db87c255a58a89ca7fd11612ab
          projectName: crocc
          directory: doc/dst
          gitHubToken: ${{ secrets.GITHUB_TOKEN }}