mirror of
				https://github.com/qemu/qemu.git
				synced 2025-10-30 19:15:42 +00:00 
			
		
		
		
	gitlab: Extract default build/test jobs templates
To be able to reuse the mainstream build/test jobs templates, extract them into a new file (buildtest-template.yml). Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Willian Rampazzo <willianr@redhat.com> Message-Id: <20210519185504.2198573-8-f4bug@amsat.org> [thuth: Keep the "acceptance_test_job_template" name for now] Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
		
							parent
							
								
									07df3dfafa
								
							
						
					
					
						commit
						6cd5251b40
					
				
							
								
								
									
										69
									
								
								.gitlab-ci.d/buildtest-template.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										69
									
								
								.gitlab-ci.d/buildtest-template.yml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,69 @@ | ||||
| .native_build_job_template: | ||||
|   stage: build | ||||
|   image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest | ||||
|   before_script: | ||||
|     - JOBS=$(expr $(nproc) + 1) | ||||
|   script: | ||||
|     - if test -n "$LD_JOBS"; | ||||
|       then | ||||
|         scripts/git-submodule.sh update meson ; | ||||
|       fi | ||||
|     - mkdir build | ||||
|     - cd build | ||||
|     - if test -n "$TARGETS"; | ||||
|       then | ||||
|         ../configure --enable-werror --disable-docs ${LD_JOBS:+--meson=git} $CONFIGURE_ARGS --target-list="$TARGETS" ; | ||||
|       else | ||||
|         ../configure --enable-werror --disable-docs ${LD_JOBS:+--meson=git} $CONFIGURE_ARGS ; | ||||
|       fi || { cat config.log meson-logs/meson-log.txt && exit 1; } | ||||
|     - if test -n "$LD_JOBS"; | ||||
|       then | ||||
|         ../meson/meson.py configure . -Dbackend_max_links="$LD_JOBS" ; | ||||
|       fi || exit 1; | ||||
|     - make -j"$JOBS" | ||||
|     - if test -n "$MAKE_CHECK_ARGS"; | ||||
|       then | ||||
|         make -j"$JOBS" $MAKE_CHECK_ARGS ; | ||||
|       fi | ||||
| 
 | ||||
| .native_test_job_template: | ||||
|   stage: test | ||||
|   image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest | ||||
|   script: | ||||
|     - scripts/git-submodule.sh update | ||||
|         $(sed -n '/GIT_SUBMODULES=/ s/.*=// p' build/config-host.mak) | ||||
|     - cd build | ||||
|     - find . -type f -exec touch {} + | ||||
|     # Avoid recompiling by hiding ninja with NINJA=":" | ||||
|     - make NINJA=":" $MAKE_CHECK_ARGS | ||||
| 
 | ||||
| .acceptance_test_job_template: | ||||
|   extends: .native_test_job_template | ||||
|   cache: | ||||
|     key: "${CI_JOB_NAME}-cache" | ||||
|     paths: | ||||
|       - ${CI_PROJECT_DIR}/avocado-cache | ||||
|     policy: pull-push | ||||
|   artifacts: | ||||
|     name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" | ||||
|     when: always | ||||
|     expire_in: 2 days | ||||
|     paths: | ||||
|       - build/tests/results/latest/results.xml | ||||
|       - build/tests/results/latest/test-results | ||||
|     reports: | ||||
|       junit: build/tests/results/latest/results.xml | ||||
|   before_script: | ||||
|     - mkdir -p ~/.config/avocado | ||||
|     - echo "[datadir.paths]" > ~/.config/avocado/avocado.conf | ||||
|     - echo "cache_dirs = ['${CI_PROJECT_DIR}/avocado-cache']" | ||||
|            >> ~/.config/avocado/avocado.conf | ||||
|     - echo -e '[job.output.testlogs]\nstatuses = ["FAIL", "INTERRUPT"]' | ||||
|            >> ~/.config/avocado/avocado.conf | ||||
|     - if [ -d ${CI_PROJECT_DIR}/avocado-cache ]; then | ||||
|         du -chs ${CI_PROJECT_DIR}/avocado-cache ; | ||||
|       fi | ||||
|     - export AVOCADO_ALLOW_UNTRUSTED_CODE=1 | ||||
|   after_script: | ||||
|     - cd build | ||||
|     - du -chs ${CI_PROJECT_DIR}/avocado-cache | ||||
| @ -4,78 +4,9 @@ include: | ||||
|   - local: '/.gitlab-ci.d/opensbi.yml' | ||||
|   - local: '/.gitlab-ci.d/containers.yml' | ||||
|   - local: '/.gitlab-ci.d/crossbuilds.yml' | ||||
|   - local: '/.gitlab-ci.d/buildtest-template.yml' | ||||
|   - local: '/.gitlab-ci.d/static_checks.yml' | ||||
| 
 | ||||
| .native_build_job_template: | ||||
|   stage: build | ||||
|   image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest | ||||
|   before_script: | ||||
|     - JOBS=$(expr $(nproc) + 1) | ||||
|   script: | ||||
|     - if test -n "$LD_JOBS"; | ||||
|       then | ||||
|         scripts/git-submodule.sh update meson ; | ||||
|       fi | ||||
|     - mkdir build | ||||
|     - cd build | ||||
|     - if test -n "$TARGETS"; | ||||
|       then | ||||
|         ../configure --enable-werror --disable-docs ${LD_JOBS:+--meson=git} $CONFIGURE_ARGS --target-list="$TARGETS" ; | ||||
|       else | ||||
|         ../configure --enable-werror --disable-docs ${LD_JOBS:+--meson=git} $CONFIGURE_ARGS ; | ||||
|       fi || { cat config.log meson-logs/meson-log.txt && exit 1; } | ||||
|     - if test -n "$LD_JOBS"; | ||||
|       then | ||||
|         ../meson/meson.py configure . -Dbackend_max_links="$LD_JOBS" ; | ||||
|       fi || exit 1; | ||||
|     - make -j"$JOBS" | ||||
|     - if test -n "$MAKE_CHECK_ARGS"; | ||||
|       then | ||||
|         make -j"$JOBS" $MAKE_CHECK_ARGS ; | ||||
|       fi | ||||
| 
 | ||||
| .native_test_job_template: | ||||
|   stage: test | ||||
|   image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest | ||||
|   script: | ||||
|     - scripts/git-submodule.sh update | ||||
|         $(sed -n '/GIT_SUBMODULES=/ s/.*=// p' build/config-host.mak) | ||||
|     - cd build | ||||
|     - find . -type f -exec touch {} + | ||||
|     # Avoid recompiling by hiding ninja with NINJA=":" | ||||
|     - make NINJA=":" $MAKE_CHECK_ARGS | ||||
| 
 | ||||
| .acceptance_test_job_template: | ||||
|   extends: .native_test_job_template | ||||
|   cache: | ||||
|     key: "${CI_JOB_NAME}-cache" | ||||
|     paths: | ||||
|       - ${CI_PROJECT_DIR}/avocado-cache | ||||
|     policy: pull-push | ||||
|   artifacts: | ||||
|     name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" | ||||
|     when: always | ||||
|     expire_in: 2 days | ||||
|     paths: | ||||
|       - build/tests/results/latest/results.xml | ||||
|       - build/tests/results/latest/test-results | ||||
|     reports: | ||||
|       junit: build/tests/results/latest/results.xml | ||||
|   before_script: | ||||
|     - mkdir -p ~/.config/avocado | ||||
|     - echo "[datadir.paths]" > ~/.config/avocado/avocado.conf | ||||
|     - echo "cache_dirs = ['${CI_PROJECT_DIR}/avocado-cache']" | ||||
|            >> ~/.config/avocado/avocado.conf | ||||
|     - echo -e '[job.output.testlogs]\nstatuses = ["FAIL", "INTERRUPT"]' | ||||
|            >> ~/.config/avocado/avocado.conf | ||||
|     - if [ -d ${CI_PROJECT_DIR}/avocado-cache ]; then | ||||
|         du -chs ${CI_PROJECT_DIR}/avocado-cache ; | ||||
|       fi | ||||
|     - export AVOCADO_ALLOW_UNTRUSTED_CODE=1 | ||||
|   after_script: | ||||
|     - cd build | ||||
|     - du -chs ${CI_PROJECT_DIR}/avocado-cache | ||||
| 
 | ||||
| build-system-alpine: | ||||
|   extends: .native_build_job_template | ||||
|   needs: | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Philippe Mathieu-Daudé
						Philippe Mathieu-Daudé