1bcfdfae7SPaolo BonziniCustom CI/CD variables 2bcfdfae7SPaolo Bonzini====================== 3bcfdfae7SPaolo Bonzini 4bcfdfae7SPaolo BonziniQEMU CI pipelines can be tuned by setting some CI environment variables. 5bcfdfae7SPaolo Bonzini 6bcfdfae7SPaolo BonziniSet variable globally in the user's CI namespace 7bcfdfae7SPaolo Bonzini------------------------------------------------ 8bcfdfae7SPaolo Bonzini 9bcfdfae7SPaolo BonziniVariables can be set globally in the user's CI namespace setting. 10bcfdfae7SPaolo Bonzini 11bcfdfae7SPaolo BonziniFor further information about how to set these variables, please refer to:: 12bcfdfae7SPaolo Bonzini 13bcfdfae7SPaolo Bonzini https://docs.gitlab.com/ee/ci/variables/#add-a-cicd-variable-to-a-project 14bcfdfae7SPaolo Bonzini 15bcfdfae7SPaolo BonziniSet variable manually when pushing a branch or tag to the user's repository 16bcfdfae7SPaolo Bonzini--------------------------------------------------------------------------- 17bcfdfae7SPaolo Bonzini 18bcfdfae7SPaolo BonziniVariables can be set manually when pushing a branch or tag, using 19bcfdfae7SPaolo Bonzinigit-push command line arguments. 20bcfdfae7SPaolo Bonzini 21bcfdfae7SPaolo BonziniExample setting the QEMU_CI_EXAMPLE_VAR variable: 22bcfdfae7SPaolo Bonzini 23bcfdfae7SPaolo Bonzini.. code:: 24bcfdfae7SPaolo Bonzini 25bcfdfae7SPaolo Bonzini git push -o ci.variable="QEMU_CI_EXAMPLE_VAR=value" myrepo mybranch 26bcfdfae7SPaolo Bonzini 27bcfdfae7SPaolo BonziniFor further information about how to set these variables, please refer to:: 28bcfdfae7SPaolo Bonzini 29bcfdfae7SPaolo Bonzini https://docs.gitlab.com/ee/user/project/push_options.html#push-options-for-gitlab-cicd 30bcfdfae7SPaolo Bonzini 31bcfdfae7SPaolo BonziniHere is a list of the most used variables: 32bcfdfae7SPaolo Bonzini 33bcfdfae7SPaolo BonziniQEMU_CI_AVOCADO_TESTING 34bcfdfae7SPaolo Bonzini~~~~~~~~~~~~~~~~~~~~~~~ 35bcfdfae7SPaolo BonziniBy default, tests using the Avocado framework are not run automatically in 36bcfdfae7SPaolo Bonzinithe pipelines (because multiple artifacts have to be downloaded, and if 37bcfdfae7SPaolo Bonzinithese artifacts are not already cached, downloading them make the jobs 38bcfdfae7SPaolo Bonzinireach the timeout limit). Set this variable to have the tests using the 39bcfdfae7SPaolo BonziniAvocado framework run automatically. 40bcfdfae7SPaolo Bonzini 41bcfdfae7SPaolo BonziniAARCH64_RUNNER_AVAILABLE 42bcfdfae7SPaolo Bonzini~~~~~~~~~~~~~~~~~~~~~~~~ 43bcfdfae7SPaolo BonziniIf you've got access to an aarch64 host that can be used as a gitlab-CI 44bcfdfae7SPaolo Bonzinirunner, you can set this variable to enable the tests that require this 45bcfdfae7SPaolo Bonzinikind of host. The runner should be tagged with "aarch64". 46bcfdfae7SPaolo Bonzini 47*cc44a160SAlex BennéeAARCH32_RUNNER_AVAILABLE 48*cc44a160SAlex Bennée~~~~~~~~~~~~~~~~~~~~~~~~ 49*cc44a160SAlex BennéeIf you've got access to an armhf host or an arch64 host that can run 50*cc44a160SAlex Bennéeaarch32 EL0 code to be used as a gitlab-CI runner, you can set this 51*cc44a160SAlex Bennéevariable to enable the tests that require this kind of host. The 52*cc44a160SAlex Bennéerunner should be tagged with "aarch32". 53*cc44a160SAlex Bennée 54bcfdfae7SPaolo BonziniS390X_RUNNER_AVAILABLE 55bcfdfae7SPaolo Bonzini~~~~~~~~~~~~~~~~~~~~~~ 56bcfdfae7SPaolo BonziniIf you've got access to an IBM Z host that can be used as a gitlab-CI 57bcfdfae7SPaolo Bonzinirunner, you can set this variable to enable the tests that require this 58bcfdfae7SPaolo Bonzinikind of host. The runner should be tagged with "s390x". 59d7c2e2b3SCleber Rosa 60d7c2e2b3SCleber RosaCENTOS_STREAM_8_x86_64_RUNNER_AVAILABLE 61d7c2e2b3SCleber Rosa~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 62d7c2e2b3SCleber RosaIf you've got access to a CentOS Stream 8 x86_64 host that can be 63d7c2e2b3SCleber Rosaused as a gitlab-CI runner, you can set this variable to enable the 64d7c2e2b3SCleber Rosatests that require this kind of host. The runner should be tagged with 65d7c2e2b3SCleber Rosaboth "centos_stream_8" and "x86_64". 66