1
0
Fork 0

[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
(cherry picked from commit 04846c6a78)
(cherry picked from commit 261026f154)
This commit is contained in:
Earl Warren 2023-10-20 16:00:40 +02:00
parent 100679e94c
commit 777ae8f3d9
No known key found for this signature in database
GPG key ID: 0579CB2928A78A00

View file

@ -10,6 +10,8 @@ on:
jobs:
lint-backend:
runs-on: docker
container:
image: 'docker.io/node:20-bookworm'
steps:
- uses: https://code.forgejo.org/actions/checkout@v3
- uses: https://code.forgejo.org/actions/setup-go@v4
@ -22,6 +24,8 @@ jobs:
TAGS: bindata sqlite sqlite_unlock_notify
checks-backend:
runs-on: docker
container:
image: 'docker.io/node:20-bookworm'
steps:
- uses: https://code.forgejo.org/actions/checkout@v3
- uses: https://code.forgejo.org/actions/setup-go@v4
@ -34,13 +38,13 @@ jobs:
runs-on: docker
needs: [lint-backend, checks-backend]
container:
image: codeberg.org/forgejo/test_env:main
image: 'docker.io/node:20-bookworm'
services:
minio:
image: bitnami/minio:2021.3.17
image: 'docker.io/bitnami/minio:2023.8.31'
env:
MINIO_ACCESS_KEY: 123456
MINIO_SECRET_KEY: 12345678
MINIO_ROOT_USER: 123456
MINIO_ROOT_PASSWORD: 12345678
steps:
- uses: https://code.forgejo.org/actions/checkout@v3
- uses: https://code.forgejo.org/actions/setup-go@v4
@ -48,15 +52,16 @@ jobs:
go-version: "1.21"
- run: |
git config --add safe.directory '*'
chown -R gitea:gitea . /go
adduser --quiet --comment forgejo --disabled-password forgejo
chown -R forgejo:forgejo .
- run: |
su gitea -c 'make deps-backend'
su forgejo -c 'make deps-backend'
- run: |
su gitea -c 'make backend'
su forgejo -c 'make backend'
env:
TAGS: bindata
- run: |
su gitea -c 'make unit-test-coverage test-check'
su forgejo -c 'make unit-test-coverage test-check'
timeout-minutes: 50
env:
RACE_ENABLED: 'true'
@ -65,7 +70,7 @@ jobs:
runs-on: docker
needs: [lint-backend, checks-backend]
container:
image: codeberg.org/forgejo/test_env:main
image: 'docker.io/node:20-bookworm'
services:
mysql8:
image: mysql:8-debian
@ -81,17 +86,24 @@ jobs:
- uses: https://code.forgejo.org/actions/setup-go@v4
with:
go-version: "1.21"
- 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 '*'
chown -R gitea:gitea . /go
adduser --quiet --comment forgejo --disabled-password forgejo
chown -R forgejo:forgejo .
- run: |
su gitea -c 'make deps-backend'
su forgejo -c 'make deps-backend'
- run: |
su gitea -c 'make backend'
su forgejo -c 'make backend'
env:
TAGS: bindata
- run: |
su gitea -c 'make test-mysql8-migration test-mysql8'
su forgejo -c 'make test-mysql8-migration test-mysql8'
timeout-minutes: 50
env:
TAGS: bindata
@ -100,7 +112,7 @@ jobs:
runs-on: docker
needs: [lint-backend, checks-backend]
container:
image: codeberg.org/forgejo/test_env:main
image: 'docker.io/node:20-bookworm'
services:
minio:
image: bitnami/minio:2021.3.17
@ -108,7 +120,7 @@ jobs:
MINIO_ACCESS_KEY: 123456
MINIO_SECRET_KEY: 12345678
pgsql:
image: postgres:15
image: 'docker.io/postgres:15'
env:
POSTGRES_DB: test
POSTGRES_PASSWORD: postgres
@ -117,17 +129,24 @@ jobs:
- uses: https://code.forgejo.org/actions/setup-go@v4
with:
go-version: "1.21"
- 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 '*'
chown -R gitea:gitea . /go
adduser --quiet --comment forgejo --disabled-password forgejo
chown -R forgejo:forgejo .
- run: |
su gitea -c 'make deps-backend'
su forgejo -c 'make deps-backend'
- run: |
su gitea -c 'make backend'
su forgejo -c 'make backend'
env:
TAGS: bindata
- run: |
su gitea -c 'make test-pgsql-migration test-pgsql'
su forgejo -c 'make test-pgsql-migration test-pgsql'
timeout-minutes: 50
env:
TAGS: bindata gogit
@ -138,23 +157,30 @@ jobs:
runs-on: docker
needs: [lint-backend, checks-backend]
container:
image: codeberg.org/forgejo/test_env:main
image: 'docker.io/node:20-bookworm'
steps:
- uses: https://code.forgejo.org/actions/checkout@v3
- uses: https://code.forgejo.org/actions/setup-go@v4
with:
go-version: "1.21"
- 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 '*'
chown -R gitea:gitea . /go
adduser --quiet --comment forgejo --disabled-password forgejo
chown -R forgejo:forgejo .
- run: |
su gitea -c 'make deps-backend'
su forgejo -c 'make deps-backend'
- run: |
su gitea -c 'make backend'
su forgejo -c 'make backend'
env:
TAGS: bindata gogit sqlite sqlite_unlock_notify
- run: |
su gitea -c 'make test-sqlite-migration test-sqlite'
su forgejo -c 'make test-sqlite-migration test-sqlite'
timeout-minutes: 50
env:
TAGS: bindata gogit sqlite sqlite_unlock_notify