about summary refs log tree commit diff stats
path: root/.github/workflows/ci.yml
diff options
context:
space:
mode:
authorMarkus Wüstenberg2022-05-25 10:21:27 +0200
committerGitHub2022-05-25 08:21:27 +0000
commitb016f271d7891627f2017b6a385e80159009ad6b (patch)
tree65e6863d3803802bd8710c6bff811a140d34f103 /.github/workflows/ci.yml
parent565c60a8e400de41c540b1f61cfda67fdeb05952 (diff)
downloadgomponents-b016f271d7891627f2017b6a385e80159009ad6b.tar.lz
gomponents-b016f271d7891627f2017b6a385e80159009ad6b.tar.zst
gomponents-b016f271d7891627f2017b6a385e80159009ad6b.zip
Update CI config (#98)
- Drop current test workflows if a new one has come in
- Use newer checkout and setup actions
- Delete CodeQL workflow
Diffstat (limited to '.github/workflows/ci.yml')
-rw-r--r--.github/workflows/ci.yml59
1 files changed, 59 insertions, 0 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..ab3ffe3
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,59 @@
+name: CI
+
+on:
+  push:
+    branches: [ master ]
+  pull_request:
+    branches: [ master ]
+
+concurrency:
+  group: ${{ github.workflow }}-${{ github.ref_name }}
+  cancel-in-progress: true
+
+jobs:
+  test:
+    name: Test
+    runs-on: ubuntu-latest
+
+    strategy:
+      matrix:
+        go:
+          - 1.16
+          - 1.17
+          - 1.18
+
+    steps:
+      - name: Checkout
+        uses: actions/checkout@v3
+
+      - name: Setup Go
+        uses: actions/setup-go@v3
+        with:
+          go-version: ${{ matrix.go }}
+          check-latest: true
+
+      - name: Build
+        run: go build -v ./...
+
+      - name: Test
+        if: ${{ matrix.go != '1.16' }}
+        run: go test -v -coverprofile=coverage.txt -shuffle on ./...
+
+      - name: Test
+        if: ${{ matrix.go == '1.16' }}
+        run: go test -v -coverprofile=coverage.txt ./...
+
+      - name: Coverage
+        uses: codecov/codecov-action@v2
+
+  lint:
+    name: Lint
+    runs-on: ubuntu-latest
+    steps:
+      - name: Checkout
+        uses: actions/checkout@v3
+
+      - name: Lint
+        uses: golangci/golangci-lint-action@v2
+        with:
+          version: latest