[CI] Forgejo Actions based CI for PR & branches (squash) use node:20-bookworm

No longer use the custom test-env image, it is unecessary technical
debt.

Also upgrade to bitnami/minio:2023.8.31 to align with what Gitea tests

(cherry picked from commit d9b77fd273)

Conflicts:
	.forgejo/workflows/testing.yml
	* mysql was mysql-8 in v1.21 and below
	* No MINIO testing
	* go 1.20 instead of go 1.21
This commit is contained in:
Earl Warren 2023-10-20 16:00:40 +02:00
parent e58e7bf088
commit ee48c0d5ea
No known key found for this signature in database
GPG key ID: 0579CB2928A78A00

View file

@ -10,6 +10,8 @@ on:
jobs: jobs:
lint-backend: lint-backend:
runs-on: docker runs-on: docker
container:
image: 'docker.io/node:20-bookworm'
steps: steps:
- uses: https://code.forgejo.org/actions/checkout@v3 - uses: https://code.forgejo.org/actions/checkout@v3
- uses: https://code.forgejo.org/actions/setup-go@v4 - uses: https://code.forgejo.org/actions/setup-go@v4
@ -22,6 +24,8 @@ jobs:
TAGS: bindata sqlite sqlite_unlock_notify TAGS: bindata sqlite sqlite_unlock_notify
checks-backend: checks-backend:
runs-on: docker runs-on: docker
container:
image: 'docker.io/node:20-bookworm'
steps: steps:
- uses: https://code.forgejo.org/actions/checkout@v3 - uses: https://code.forgejo.org/actions/checkout@v3
- uses: https://code.forgejo.org/actions/setup-go@v4 - uses: https://code.forgejo.org/actions/setup-go@v4
@ -34,7 +38,7 @@ jobs:
runs-on: docker runs-on: docker
needs: [lint-backend, checks-backend] needs: [lint-backend, checks-backend]
container: container:
image: codeberg.org/forgejo/test_env:1.20 image: 'docker.io/node:20-bookworm'
steps: steps:
- uses: https://code.forgejo.org/actions/checkout@v3 - uses: https://code.forgejo.org/actions/checkout@v3
- uses: https://code.forgejo.org/actions/setup-go@v4 - uses: https://code.forgejo.org/actions/setup-go@v4
@ -42,15 +46,16 @@ jobs:
go-version: "1.20" go-version: "1.20"
- run: | - run: |
git config --add safe.directory '*' git config --add safe.directory '*'
chown -R gitea:gitea . /go adduser --quiet --comment forgejo --disabled-password forgejo
chown -R forgejo:forgejo .
- run: | - run: |
su gitea -c 'make deps-backend' su forgejo -c 'make deps-backend'
- run: | - run: |
su gitea -c 'make backend' su forgejo -c 'make backend'
env: env:
TAGS: bindata TAGS: bindata
- run: | - run: |
su gitea -c 'make unit-test-coverage test-check' su forgejo -c 'make unit-test-coverage test-check'
timeout-minutes: 50 timeout-minutes: 50
env: env:
RACE_ENABLED: 'true' RACE_ENABLED: 'true'
@ -59,7 +64,7 @@ jobs:
runs-on: docker runs-on: docker
needs: [lint-backend, checks-backend] needs: [lint-backend, checks-backend]
container: container:
image: codeberg.org/forgejo/test_env:1.20 image: 'docker.io/node:20-bookworm'
services: services:
mysql8: mysql8:
image: mysql:8-debian image: mysql:8-debian
@ -77,17 +82,24 @@ jobs:
- uses: https://code.forgejo.org/actions/setup-go@v4 - uses: https://code.forgejo.org/actions/setup-go@v4
with: with:
go-version: "1.20" go-version: "1.20"
- run: | - name: install dependencies
run: |
export DEBIAN_FRONTEND=noninteractive
apt-get update -qq
apt-get install --no-install-recommends -qq -y git-lfs
- name: setup user and permissions
run: |
git config --add safe.directory '*' git config --add safe.directory '*'
chown -R gitea:gitea . /go adduser --quiet --comment forgejo --disabled-password forgejo
chown -R forgejo:forgejo .
- run: | - run: |
su gitea -c 'make deps-backend' su forgejo -c 'make deps-backend'
- run: | - run: |
su gitea -c 'make backend' su forgejo -c 'make backend'
env: env:
TAGS: bindata TAGS: bindata
- run: | - run: |
su gitea -c 'make test-mysql8-migration test-mysql8' su forgejo -c 'make test-mysql8-migration test-mysql8'
timeout-minutes: 50 timeout-minutes: 50
env: env:
TAGS: bindata TAGS: bindata
@ -96,10 +108,10 @@ jobs:
runs-on: docker runs-on: docker
needs: [lint-backend, checks-backend] needs: [lint-backend, checks-backend]
container: container:
image: codeberg.org/forgejo/test_env:1.20 image: 'docker.io/node:20-bookworm'
services: services:
pgsql: pgsql:
image: postgres:15 image: 'docker.io/postgres:15'
env: env:
POSTGRES_DB: test POSTGRES_DB: test
POSTGRES_PASSWORD: postgres POSTGRES_PASSWORD: postgres
@ -110,17 +122,24 @@ jobs:
- uses: https://code.forgejo.org/actions/setup-go@v4 - uses: https://code.forgejo.org/actions/setup-go@v4
with: with:
go-version: "1.20" go-version: "1.20"
- run: | - name: install dependencies
run: |
export DEBIAN_FRONTEND=noninteractive
apt-get update -qq
apt-get install --no-install-recommends -qq -y git-lfs
- name: setup user and permissions
run: |
git config --add safe.directory '*' git config --add safe.directory '*'
chown -R gitea:gitea . /go adduser --quiet --comment forgejo --disabled-password forgejo
chown -R forgejo:forgejo .
- run: | - run: |
su gitea -c 'make deps-backend' su forgejo -c 'make deps-backend'
- run: | - run: |
su gitea -c 'make backend' su forgejo -c 'make backend'
env: env:
TAGS: bindata TAGS: bindata
- run: | - run: |
su gitea -c 'make test-pgsql-migration test-pgsql' su forgejo -c 'make test-pgsql-migration test-pgsql'
timeout-minutes: 50 timeout-minutes: 50
env: env:
TAGS: bindata gogit TAGS: bindata gogit
@ -131,23 +150,30 @@ jobs:
runs-on: docker runs-on: docker
needs: [lint-backend, checks-backend] needs: [lint-backend, checks-backend]
container: container:
image: codeberg.org/forgejo/test_env:1.20 image: 'docker.io/node:20-bookworm'
steps: steps:
- uses: https://code.forgejo.org/actions/checkout@v3 - uses: https://code.forgejo.org/actions/checkout@v3
- uses: https://code.forgejo.org/actions/setup-go@v4 - uses: https://code.forgejo.org/actions/setup-go@v4
with: with:
go-version: "1.20" go-version: "1.20"
- run: | - name: install dependencies
run: |
export DEBIAN_FRONTEND=noninteractive
apt-get update -qq
apt-get install --no-install-recommends -qq -y git-lfs
- name: setup user and permissions
run: |
git config --add safe.directory '*' git config --add safe.directory '*'
chown -R gitea:gitea . /go adduser --quiet --comment forgejo --disabled-password forgejo
chown -R forgejo:forgejo .
- run: | - run: |
su gitea -c 'make deps-backend' su forgejo -c 'make deps-backend'
- run: | - run: |
su gitea -c 'make backend' su forgejo -c 'make backend'
env: env:
TAGS: bindata gogit sqlite sqlite_unlock_notify TAGS: bindata gogit sqlite sqlite_unlock_notify
- run: | - run: |
su gitea -c 'make test-sqlite-migration test-sqlite' su forgejo -c 'make test-sqlite-migration test-sqlite'
timeout-minutes: 50 timeout-minutes: 50
env: env:
TAGS: bindata gogit sqlite sqlite_unlock_notify TAGS: bindata gogit sqlite sqlite_unlock_notify