mirror of
				https://codeberg.org/forgejo/forgejo.git
				synced 2025-10-30 22:11:07 +00:00 
			
		
		
		
	[CI] Forgejo Actions based CI for PR & branches
(cherry picked from commitf9d75d4705) (cherry picked from commit64f76f4ab2) (cherry picked from commit5d02454155) [CI] Forgejo Actions workflows (cherry picked from commit3ff59b5379) (cherry picked from commit8af826a6f7) (cherry picked from commitd7c09d9cc8) [CI] use the docker label instead of ubuntu-latest (cherry picked from commitb6a6470db6) [CI] all tests need compliance before proceeding (cherry picked from commitb35c496f2c) (cherry picked from commit36a4148a8e) (cherry picked from commit7ffcffa653) (cherry picked from commit8a246d296e) (cherry picked from commitdd0b6e1826) [CI] Forgejo Actions based release process (squash) MySQL optimization Refs: https://codeberg.org/forgejo/forgejo/issues/976 (cherry picked from commitb4b8c489e6) (cherry picked from commit1e861db4af) (cherry picked from commita6c0e00330) (cherry picked from commitf97b336465) (cherry picked from commit 6d65d5f0d6f798556a8f9e547896be03a5ee2f87) (cherry picked from commit79bfbadbed) (cherry picked from commite86c40a34a) (cherry picked from commitda0c454adb) (cherry picked from commitb49d892cda) [CI] enable minio tests (cherry picked from commit4d8f438031) (cherry picked from commitc4eeb0a61e) [CI] Forgejo Actions based CI for PR & branches (squash) cleanup (cherry picked from commit80eb20e842) (cherry picked from commitd2ff589858) (cherry picked from commitf6eedecb67) (cherry picked from commitcf458091e2) (cherry picked from commitddd322cb2d) (cherry picked from commitf0f5729b64) Conflicts: .github/workflows/pull-db-tests.yml https://codeberg.org/forgejo/forgejo/pulls/1573 (cherry picked from commitbb347aedd4) (cherry picked from commit0f5ebe8c3e) (cherry picked from commit9101cb4715) (cherry picked from commitab118fe4ef) [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 commitd9b77fd273) (cherry picked from commitef8f099f9e) (cherry picked from commit6d3c675d20) (cherry picked from commitfc00ff45f2) (cherry picked from commitb7f02b9846) (cherry picked from commitd23d86e567) (cherry picked from commite68e65460c) (cherry picked from commit96f93a1fdb) (cherry picked from commit2ff3080018)
This commit is contained in:
		
					parent
					
						
							
								d531861850
							
						
					
				
			
			
				commit
				
					
						8ea00bcff4
					
				
			
		
					 2 changed files with 190 additions and 1 deletions
				
			
		
							
								
								
									
										189
									
								
								.forgejo/workflows/testing.yml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										189
									
								
								.forgejo/workflows/testing.yml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,189 @@ | |||
| name: testing | ||||
| 
 | ||||
| on: | ||||
|   pull_request: | ||||
|   push: | ||||
|     branches: | ||||
|       - 'forgejo*' | ||||
|       - 'v*/forgejo*' | ||||
| 
 | ||||
| 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 | ||||
|         with: | ||||
|           go-version: ">=1.21" | ||||
|           check-latest: true | ||||
|       - run: make deps-backend deps-tools | ||||
|       - run: make lint-backend | ||||
|         env: | ||||
|           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 | ||||
|         with: | ||||
|           go-version: ">=1.21" | ||||
|           check-latest: true | ||||
|       - run: make deps-backend deps-tools | ||||
|       - run: make --always-make checks-backend # ensure the "go-licenses" make target runs | ||||
|   test-unit: | ||||
|     runs-on: docker | ||||
|     needs: [lint-backend, checks-backend] | ||||
|     container: | ||||
|       image: 'docker.io/node:20-bookworm' | ||||
|     services: | ||||
|       minio: | ||||
|         image: 'docker.io/bitnami/minio:2023.8.31' | ||||
|         env: | ||||
|           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 | ||||
|         with: | ||||
|           go-version: ">=1.21" | ||||
|       - run: | | ||||
|           git config --add safe.directory '*' | ||||
|           adduser --quiet --comment forgejo --disabled-password forgejo | ||||
|           chown -R forgejo:forgejo . | ||||
|       - run: | | ||||
|           su forgejo -c 'make deps-backend' | ||||
|       - run: | | ||||
|           su forgejo -c 'make backend' | ||||
|         env: | ||||
|           TAGS: bindata | ||||
|       - run: | | ||||
|           su forgejo -c 'make unit-test-coverage test-check' | ||||
|         timeout-minutes: 50 | ||||
|         env: | ||||
|           RACE_ENABLED: 'true' | ||||
|           TAGS: bindata | ||||
|   test-mysql: | ||||
|     runs-on: docker | ||||
|     needs: [lint-backend, checks-backend] | ||||
|     container: | ||||
|       image: 'docker.io/node:20-bookworm' | ||||
|     services: | ||||
|       mysql: | ||||
|         image: 'docker.io/mysql:8-debian' | ||||
|         env: | ||||
|           MYSQL_ALLOW_EMPTY_PASSWORD: yes | ||||
|           MYSQL_DATABASE: testgitea | ||||
|         # | ||||
|         # See also https://codeberg.org/forgejo/forgejo/issues/976 | ||||
|         # | ||||
|         cmd: ['mysqld', '--innodb-adaptive-flushing=OFF', '--innodb-buffer-pool-size=4G', '--innodb-log-buffer-size=128M', '--innodb-flush-log-at-trx-commit=0', '--innodb-flush-log-at-timeout=30', '--innodb-flush-method=nosync', '--innodb-fsync-threshold=1000000000'] | ||||
|     steps: | ||||
|       - uses: https://code.forgejo.org/actions/checkout@v3 | ||||
|       - uses: https://code.forgejo.org/actions/setup-go@v4 | ||||
|         with: | ||||
|           go-version: "1.21" | ||||
|       - 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 '*' | ||||
|           adduser --quiet --comment forgejo --disabled-password forgejo | ||||
|           chown -R forgejo:forgejo . | ||||
|       - run: | | ||||
|           su forgejo -c 'make deps-backend' | ||||
|       - run: | | ||||
|           su forgejo -c 'make backend' | ||||
|         env: | ||||
|           TAGS: bindata | ||||
|       - run: | | ||||
|           su forgejo -c 'make test-mysql-migration test-mysql' | ||||
|         timeout-minutes: 50 | ||||
|         env: | ||||
|           TAGS: bindata | ||||
|           USE_REPO_TEST_DIR: 1 | ||||
|   test-pgsql: | ||||
|     runs-on: docker | ||||
|     needs: [lint-backend, checks-backend] | ||||
|     container: | ||||
|       image: 'docker.io/node:20-bookworm' | ||||
|     services: | ||||
|       minio: | ||||
|         image: bitnami/minio:2021.3.17 | ||||
|         env: | ||||
|           MINIO_ACCESS_KEY: 123456 | ||||
|           MINIO_SECRET_KEY: 12345678 | ||||
|       pgsql: | ||||
|         image: 'docker.io/postgres:15' | ||||
|         env: | ||||
|           POSTGRES_DB: test | ||||
|           POSTGRES_PASSWORD: postgres | ||||
|     steps: | ||||
|       - uses: https://code.forgejo.org/actions/checkout@v3 | ||||
|       - uses: https://code.forgejo.org/actions/setup-go@v4 | ||||
|         with: | ||||
|           go-version: "1.21" | ||||
|       - 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 '*' | ||||
|           adduser --quiet --comment forgejo --disabled-password forgejo | ||||
|           chown -R forgejo:forgejo . | ||||
|       - run: | | ||||
|           su forgejo -c 'make deps-backend' | ||||
|       - run: | | ||||
|           su forgejo -c 'make backend' | ||||
|         env: | ||||
|           TAGS: bindata | ||||
|       - run: | | ||||
|           su forgejo -c 'make test-pgsql-migration test-pgsql' | ||||
|         timeout-minutes: 50 | ||||
|         env: | ||||
|           TAGS: bindata gogit | ||||
|           RACE_ENABLED: true | ||||
|           TEST_TAGS: gogit | ||||
|           USE_REPO_TEST_DIR: 1 | ||||
|   test-sqlite: | ||||
|     runs-on: docker | ||||
|     needs: [lint-backend, checks-backend] | ||||
|     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 | ||||
|         with: | ||||
|           go-version: "1.21" | ||||
|       - 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 '*' | ||||
|           adduser --quiet --comment forgejo --disabled-password forgejo | ||||
|           chown -R forgejo:forgejo . | ||||
|       - run: | | ||||
|           su forgejo -c 'make deps-backend' | ||||
|       - run: | | ||||
|           su forgejo -c 'make backend' | ||||
|         env: | ||||
|           TAGS: bindata gogit sqlite sqlite_unlock_notify | ||||
|       - run: | | ||||
|           su forgejo -c 'make test-sqlite-migration test-sqlite' | ||||
|         timeout-minutes: 50 | ||||
|         env: | ||||
|           TAGS: bindata gogit sqlite sqlite_unlock_notify | ||||
|           RACE_ENABLED: true | ||||
|           TEST_TAGS: gogit sqlite sqlite_unlock_notify | ||||
|           USE_REPO_TEST_DIR: 1 | ||||
|  | @ -22,7 +22,7 @@ func TestMinioStorageIterator(t *testing.T) { | |||
| 	} | ||||
| 	testStorageIterator(t, setting.MinioStorageType, &setting.Storage{ | ||||
| 		MinioConfig: setting.MinioStorageConfig{ | ||||
| 			Endpoint:        "127.0.0.1:9000", | ||||
| 			Endpoint:        "minio:9000", | ||||
| 			AccessKeyID:     "123456", | ||||
| 			SecretAccessKey: "12345678", | ||||
| 			Bucket:          "gitea", | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue