aboutsummaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorMark Sagi-Kazar <[email protected]>2025-01-09 01:25:58 +0100
committerMark Sagi-Kazar <[email protected]>2025-01-09 01:33:52 +0100
commitf48cbd1964b57ff7c17e2f233feb49c03efe6417 (patch)
treeb2644e09a07752066e096b253a6b400a4faca692 /.github
parentd5e0c0615acee7028e1e2740a11102313be88de1 (diff)
add github actions
Signed-off-by: Mark Sagi-Kazar <[email protected]>
Diffstat (limited to '.github')
-rw-r--r--.github/.editorconfig2
-rw-r--r--.github/dependabot.yaml12
-rw-r--r--.github/workflows/ci.yaml60
3 files changed, 74 insertions, 0 deletions
diff --git a/.github/.editorconfig b/.github/.editorconfig
new file mode 100644
index 0000000..0902c6a
--- /dev/null
+++ b/.github/.editorconfig
@@ -0,0 +1,2 @@
+[{*.yml,*.yaml}]
+indent_size = 2
diff --git a/.github/dependabot.yaml b/.github/dependabot.yaml
new file mode 100644
index 0000000..73aa36f
--- /dev/null
+++ b/.github/dependabot.yaml
@@ -0,0 +1,12 @@
+version: 2
+
+updates:
+ - package-ecosystem: gomod
+ directory: /
+ schedule:
+ interval: daily
+
+ - package-ecosystem: github-actions
+ directory: /
+ schedule:
+ interval: daily
diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
new file mode 100644
index 0000000..292c29e
--- /dev/null
+++ b/.github/workflows/ci.yaml
@@ -0,0 +1,60 @@
+name: CI
+
+on:
+ push:
+ branches: [master]
+ pull_request:
+
+jobs:
+ test:
+ name: Test
+ runs-on: ubuntu-latest
+
+ strategy:
+ fail-fast: false
+ matrix:
+ go: ["1.21", "1.22", "1.23"]
+
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
+
+ - name: Set up Go
+ uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
+ with:
+ go-version: ${{ matrix.go }}
+
+ - name: Test
+ # Cannot enable shuffle for now because some tests rely on global state and order
+ # run: go test -race -v -shuffle=on ./...
+ run: go test -race -v ./...
+
+ lint:
+ name: Lint
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
+
+ - name: Set up Go
+ uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
+ with:
+ go-version: "1.23"
+
+ - name: Lint
+ uses: golangci/golangci-lint-action@971e284b6050e8a5849b72094c50ab08da042db8 # v6.1.1
+ with:
+ version: v1.63.4
+
+ dependency-review:
+ name: Dependency review
+ runs-on: ubuntu-latest
+ if: github.event_name == 'pull_request'
+
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
+
+ - name: Dependency Review
+ uses: actions/dependency-review-action@3b139cfc5fae8b618d3eae3675e383bb1769c019 # v4.5.0