aboutsummaryrefslogtreecommitdiffstats
path: root/.github/workflows/pull-compliance.yml
diff options
context:
space:
mode:
authortechknowlogick <techknowlogick@gitea.io>2023-05-03 22:04:02 -0400
committerGitHub <noreply@github.com>2023-05-04 02:04:02 +0000
commitf7f078213297ee870301d1282366d2f0b5d9de2b (patch)
tree8e7c0c1222269061f368e89b4a7a9116a3ea0adb /.github/workflows/pull-compliance.yml
parentad8631c069e331c29fe0bca8a0215d2122afaa74 (diff)
downloadgitea-f7f078213297ee870301d1282366d2f0b5d9de2b.tar.gz
gitea-f7f078213297ee870301d1282366d2f0b5d9de2b.zip
Use Actions for DB & E2E tests (#24494)
following https://github.com/go-gitea/gitea/pull/24314 and https://github.com/go-gitea/gitea/pull/24434, this PR moves drone cron pipelines to (GitHub) Actions. As these are mostly compatible with Gitea Actions, when we start to dogfood, these will already be migrated. --------- Co-authored-by: silverwind <me@silverwind.io>
Diffstat (limited to '.github/workflows/pull-compliance.yml')
-rw-r--r--.github/workflows/pull-compliance.yml133
1 files changed, 133 insertions, 0 deletions
diff --git a/.github/workflows/pull-compliance.yml b/.github/workflows/pull-compliance.yml
new file mode 100644
index 0000000000..1239b9caa7
--- /dev/null
+++ b/.github/workflows/pull-compliance.yml
@@ -0,0 +1,133 @@
+name: "Pull: Compliance Tests"
+
+on: [pull_request]
+
+jobs:
+ lint_basic:
+ runs-on: ubuntu-latest
+ steps:
+ - name: checkout
+ uses: actions/checkout@v3
+ - name: setup go
+ uses: actions/setup-go@v4
+ with:
+ go-version: '>=1.20'
+ - name: deps-backend
+ run: make deps-backend deps-tools
+ - name: lint backend
+ run: make lint-backend
+ env:
+ GOPROXY: https://goproxy.io # proxy.golang.org is blocked in China, this proxy is not
+ GOSUMDB: sum.golang.org
+ TAGS: bindata sqlite sqlite_unlock_notify
+ lint_windows:
+ runs-on: ubuntu-latest
+ steps:
+ - name: checkout
+ uses: actions/checkout@v3
+ - name: setup go
+ uses: actions/setup-go@v4
+ with:
+ go-version: '>=1.20'
+ - name: deps-backend
+ run: make deps-backend deps-tools
+ - name: lint-backend-windows
+ run: make lint-go-windows lint-go-vet
+ env:
+ GOPROXY: https://goproxy.io # proxy.golang.org is blocked in China, this proxy is not
+ GOSUMDB: sum.golang.org
+ TAGS: bindata sqlite sqlite_unlock_notify
+ GOOS: windows
+ GOARCH: amd64
+ lint_gogit:
+ runs-on: ubuntu-latest
+ steps:
+ - name: checkout
+ uses: actions/checkout@v3
+ - name: setup go
+ uses: actions/setup-go@v4
+ with:
+ go-version: '>=1.20'
+ - name: deps-backend
+ run: make deps-backend deps-tools
+ - name: lint-backend-gogit
+ run: make lint-backend
+ env:
+ GOPROXY: https://goproxy.io # proxy.golang.org is blocked in China, this proxy is not
+ GOSUMDB: sum.golang.org
+ TAGS: bindata gogit sqlite sqlite_unlock_notify
+ - name: checks backend
+ run: make --always-make checks-backend # ensure the 'go-licenses' make target runs
+ check_backend:
+ runs-on: ubuntu-latest
+ steps:
+ - name: checkout
+ uses: actions/checkout@v3
+ - name: setup go
+ uses: actions/setup-go@v4
+ with:
+ go-version: '>=1.20'
+ - name: deps-backend
+ run: make deps-backend deps-tools
+ - name: checks backend
+ run: make --always-make checks-backend # ensure the 'go-licenses' make target runs
+ frontend:
+ runs-on: ubuntu-latest
+ steps:
+ - name: checkout
+ uses: actions/checkout@v3
+ - name: setup node
+ uses: actions/setup-node@v3
+ with:
+ node-version: 18
+ - name: deps-frontend
+ run: make deps-frontend
+ - name: lint frontend
+ run: make lint-frontend
+ - name: checks frontend
+ run: make checks-frontend
+ - name: test frontend
+ run: make test-frontend
+ backend:
+ runs-on: ubuntu-latest
+ steps:
+ - name: checkout
+ uses: actions/checkout@v3
+ - name: setup go
+ uses: actions/setup-go@v4
+ with:
+ go-version: '>=1.20'
+ - name: setup node
+ uses: actions/setup-node@v3
+ with:
+ node-version: 18
+ - name: deps-backend
+ run: make deps-backend deps-tools
+ - name: deps-frontend
+ run: make deps-frontend
+ - name: build frontend
+ run: make frontend
+ - name: build-backend-no-gcc
+ run: go build -o gitea_no_gcc # test if build succeeds without the sqlite tag
+ env:
+ GOPROXY: https://goproxy.io
+ - name: build-backend-arm64
+ run: make backend # test cross compile
+ env:
+ GOPROXY: https://goproxy.io
+ GOOS: linux
+ GOARCH: arm64
+ TAGS: bindata gogit
+ - name: build-backend-windows
+ run: go build -o gitea_windows
+ env:
+ GOPROXY: https://goproxy.io
+ GOOS: windows
+ GOARCH: amd64
+ TAGS: bindata gogit
+ - name: build-backend-386
+ run: go build -o gitea_linux_386 # test if compatible with 32 bit
+ env:
+ GOPROXY: https://goproxy.io
+ GOOS: linux
+ GOARCH: 386