0423814a2f
Create a new test instructions yaml template that does not ignore the exit code of running tests. This template can be included by repositories where tests pass in all configurations tested by the CI. The template should be included in module_config.yaml via Test: - !include "{{qt/qtbase}}/coin_module_test_template_v3.yaml" This allows us to opt into enforcing test runs per repository, rather than waiting to fix all tests in all qt5.git repositories. Implementation notes Try to extract the common parts of the instructions as much as possible to avoid duplication. Unfortunately some duplication still remains due to the restricted yaml language supported by Coin. Add a short README.md file that describes the differences between the existing templates. The v2 non-enforcing test template should probably be removed in the future. Task-number: QTBUG-84886 Task-number: QTBUG-85364 Change-Id: I718fc3cb44d6aefdbebc2fd2088a910a8095a375 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> |
||
---|---|---|
.. | ||
call_cmake_for_standalone_tests.yaml | ||
call_cmake.yaml | ||
call_host_cmake.yaml | ||
call_host_install.yaml | ||
call_target_cmake.yaml | ||
call_target_install.yaml | ||
cmake_build_and_upload_test_artifacts_host.yaml | ||
cmake_build_and_upload_test_artifacts_target.yaml | ||
cmake_build_and_upload_test_artifacts.yaml | ||
cmake_cross_compilation_module_build_instructions.yaml | ||
cmake_cross_compilation_qtbase_build_instructions.yaml | ||
cmake_module_build_instructions.yaml | ||
cmake_qtbase_build_instructions.yaml | ||
cmake_regular_test_instructions_common.yaml | ||
cmake_regular_test_instructions_enforced.yaml | ||
cmake_regular_test_instructions.yaml | ||
cmake_run_ctest_enforce_exit_code.yaml | ||
cmake_run_ctest_ignore_exit_code.yaml | ||
cmake_setup_running_tests_env_vars.yaml | ||
coin_module_build_template_v2.yaml | ||
coin_module_test_qemu_env_vars.yaml | ||
coin_module_test_template_common.yaml | ||
coin_module_test_template_v2.yaml | ||
coin_module_test_template_v3.yaml | ||
coin_qtbase_build_template_v2.yaml | ||
prepare_building_env.yaml | ||
README.md |
Information about Coin instruction templates
Build templates
coin_qtbase_build_template_v2.yaml
did not exist. The build instructions were directly embedded intomodule_config.yaml
and did not support repos outside of qtbase, also no cross-compilation.coin_qtbase_build_template_v2
introduced support for building other repos, and also enabled build cross-compiling targets likeAndroid
andiOS
. A bit later the template gained the ability to buildqemu
cross-compiling configurations. The counterpart to qtbase to build other repositories iscoin_module_build_template_v2
Test templates
coin_module_test_template_v1
did not exist. The test instructions were directly embedded intomodule_config.yaml
and did not support repos outside of qtbase, also no cross-compilation.coin_module_test_template_v2
introduced support for building tests for other repos, and made sure not to build and run tests on cross-compiling configuration. A bit later the template gained the ability to build and run tests forqemu
cross-compiling configurations.coin_module_test_template_v3
changed the run test instructions to not ignore the exit code and thus enforce that tests pass in the CI.