diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
new file mode 100644
index 0000000..7b5c478
--- /dev/null
+++ b/.github/workflows/ci.yaml
@@ -0,0 +1,61 @@
+name: CI
+
+on:
+ push:
+ branches:
+ - master
+ pull_request:
+ branches:
+ - master
+
+jobs:
+
+ lint:
+ name: Golang-CI Lint
+ timeout-minutes: 10
+ strategy:
+ matrix:
+ platform: [ubuntu-latest, windows-latest]
+ runs-on: ${{ matrix.platform }}
+ steps:
+ - uses: actions/checkout@v2
+ - uses: golangci/golangci-lint-action@v2
+ with:
+ # must be specified without patch version
+ version: v1.36
+ cross:
+ name: Cross
+ timeout-minutes: 10
+ strategy:
+ matrix:
+ go-version: [1.16.x]
+ platform: [ubuntu-latest]
+ runs-on: ${{ matrix.platform }}
+ steps:
+ - name: Install Go
+ uses: actions/setup-go@v2
+ with:
+ go-version: ${{ matrix.go-version }}
+ - name: Checkout code
+ uses: actions/checkout@v2
+ - name: Cross
+ working-directory: ci
+ run: go run mage.go -v -w ../ crossBuild
+
+ test:
+ name: Unit test
+ timeout-minutes: 10
+ strategy:
+ matrix:
+ go-version: [1.14.x, 1.15.x, 1.16.x]
+ platform: [ubuntu-latest, windows-latest]
+ runs-on: ${{ matrix.platform }}
+ steps:
+ - name: Install Go
+ uses: actions/setup-go@v2
+ with:
+ go-version: ${{ matrix.go-version }}
+ - name: Checkout code
+ uses: actions/checkout@v2
+ - name: Test
+ run: go test -race -v ./...
diff --git a/README.md b/README.md
index 5152b6a..b93d566 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# Logrus
[](https://travis-ci.org/sirupsen/logrus) [](https://godoc.org/github.com/sirupsen/logrus)
+# Logrus
[](https://github.com/sirupsen/logrus/actions?query=workflow%3ACI) [](https://travis-ci.org/sirupsen/logrus) [](https://godoc.org/github.com/sirupsen/logrus)
Logrus is a structured logger for Go (golang), completely API compatible with
the standard library logger.