diff options
Diffstat (limited to 'coin/instructions')
-rw-r--r-- | coin/instructions/cmake_module_build_instructions.yaml | 3 | ||||
-rw-r--r-- | coin/instructions/cmake_qtbase_build_instructions.yaml | 3 | ||||
-rw-r--r-- | coin/instructions/cmake_regular_test_instructions.yaml | 19 | ||||
-rw-r--r-- | coin/instructions/cmake_regular_test_instructions_common.yaml | 13 | ||||
-rw-r--r-- | coin/instructions/cmake_regular_test_instructions_enforced.yaml | 4 | ||||
-rw-r--r-- | coin/instructions/cmake_run_ctest.yaml (renamed from coin/instructions/cmake_run_ctest_enforce_exit_code.yaml) | 39 | ||||
-rw-r--r-- | coin/instructions/cmake_run_ctest_ignore_exit_code.yaml | 20 | ||||
-rw-r--r-- | coin/instructions/coin_module_test_template_v2.yaml | 3 | ||||
-rw-r--r-- | coin/instructions/coin_module_test_template_v3.yaml | 2 | ||||
-rw-r--r-- | coin/instructions/prepare_building_env.yaml | 20 |
10 files changed, 74 insertions, 52 deletions
diff --git a/coin/instructions/cmake_module_build_instructions.yaml b/coin/instructions/cmake_module_build_instructions.yaml index a589941701..262fbfe540 100644 --- a/coin/instructions/cmake_module_build_instructions.yaml +++ b/coin/instructions/cmake_module_build_instructions.yaml @@ -84,6 +84,9 @@ instructions: - condition: property property: features contains_value: Packaging + - condition: property + property: host.arch + equals_value: X86_64 # Sign only on X86 until Coin has support for arm signing directory: "{{.InstallRoot}}/{{.AgentWorkingDir}}" maxTimeInSeconds: 1200 maxTimeBetweenOutput: 1200 diff --git a/coin/instructions/cmake_qtbase_build_instructions.yaml b/coin/instructions/cmake_qtbase_build_instructions.yaml index 01eb7f3264..05c05d0bfb 100644 --- a/coin/instructions/cmake_qtbase_build_instructions.yaml +++ b/coin/instructions/cmake_qtbase_build_instructions.yaml @@ -81,6 +81,9 @@ instructions: - condition: property property: features contains_value: Packaging + - condition: property + property: host.arch + equals_value: X86_64 # Sign only on X86 until Coin has support for arm signing directory: "{{.InstallRoot}}/{{.AgentWorkingDir}}" maxTimeInSeconds: 1200 maxTimeBetweenOutput: 1200 diff --git a/coin/instructions/cmake_regular_test_instructions.yaml b/coin/instructions/cmake_regular_test_instructions.yaml index 5d3571c5d8..4b21c47b72 100644 --- a/coin/instructions/cmake_regular_test_instructions.yaml +++ b/coin/instructions/cmake_regular_test_instructions.yaml @@ -1,8 +1,15 @@ type: Group instructions: - - !include "{{qt/qtbase}}/cmake_regular_test_instructions_common.yaml" - - !include "{{qt/qtbase}}/cmake_run_ctest_ignore_exit_code.yaml" -disable_if: - condition: property - property: configureArgs - contains_value: "-DBUILD_SHARED_LIBS=OFF" + - type: MakeDirectory + directory: "{{.SourceDir}}_standalone_tests" + - type: InstallTestBinaryArchive + relativeStoragePath: "{{.Env.MODULE_ARTIFACTS_RELATIVE_STORAGE_PATH}}/tests.tar.gz" + directory: "{{.SourceDir}}_standalone_tests" + maxTimeInSeconds: 1200 + maxTimeBetweenOutput: 1200 + userMessageOnFailure: > + Failed to install tests archive. + - type: ChangeDirectory + directory: "{{.SourceDir}}_standalone_tests" + + - !include "{{qt/qtbase}}/cmake_run_ctest.yaml" diff --git a/coin/instructions/cmake_regular_test_instructions_common.yaml b/coin/instructions/cmake_regular_test_instructions_common.yaml deleted file mode 100644 index ec6f23a3f7..0000000000 --- a/coin/instructions/cmake_regular_test_instructions_common.yaml +++ /dev/null @@ -1,13 +0,0 @@ -type: Group -instructions: - - type: MakeDirectory - directory: "{{.SourceDir}}_standalone_tests" - - type: InstallTestBinaryArchive - relativeStoragePath: "{{.Env.MODULE_ARTIFACTS_RELATIVE_STORAGE_PATH}}/tests.tar.gz" - directory: "{{.SourceDir}}_standalone_tests" - maxTimeInSeconds: 1200 - maxTimeBetweenOutput: 1200 - userMessageOnFailure: > - Failed to install tests archive. - - type: ChangeDirectory - directory: "{{.SourceDir}}_standalone_tests" diff --git a/coin/instructions/cmake_regular_test_instructions_enforced.yaml b/coin/instructions/cmake_regular_test_instructions_enforced.yaml deleted file mode 100644 index 197b925c2a..0000000000 --- a/coin/instructions/cmake_regular_test_instructions_enforced.yaml +++ /dev/null @@ -1,4 +0,0 @@ -type: Group -instructions: - - !include "{{qt/qtbase}}/cmake_regular_test_instructions_common.yaml" - - !include "{{qt/qtbase}}/cmake_run_ctest_enforce_exit_code.yaml" diff --git a/coin/instructions/cmake_run_ctest_enforce_exit_code.yaml b/coin/instructions/cmake_run_ctest.yaml index a7039b5015..e51c9bbd76 100644 --- a/coin/instructions/cmake_run_ctest_enforce_exit_code.yaml +++ b/coin/instructions/cmake_run_ctest.yaml @@ -104,14 +104,37 @@ instructions: property: features contains_value: TestOnly - - type: ExecuteCommand - command: "{{.Env.TESTS_ENV_PREFIX}} ctest {{.Env.CTEST_ARGS}}" - executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution - ignoreExitCode: false - maxTimeInSeconds: 10800 - maxTimeBetweenOutput: "{{.Env.COIN_COMMAND_OUTPUT_TIMEOUT}}" - userMessageOnFailure: > - Failed to run tests. + # Run CTest, with or without ignoring exit code + # FIXME: De-duplicate the CTest instruction when + # ignoreExitCode expands environment variables. + - type: Group + enable_if: + condition: runtime + env_var: COIN_CTEST_IGNORE_EXIT_CODE + not_equals_value: "1" + instructions: + - type: ExecuteCommand + command: "{{.Env.TESTS_ENV_PREFIX}} ctest {{.Env.CTEST_ARGS}}" + executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution + ignoreExitCode: false + maxTimeInSeconds: 10800 + maxTimeBetweenOutput: "{{.Env.COIN_COMMAND_OUTPUT_TIMEOUT}}" + userMessageOnFailure: > + Failed to run tests. + - type: Group + enable_if: + condition: runtime + env_var: COIN_CTEST_IGNORE_EXIT_CODE + equals_value: "1" + instructions: + - type: ExecuteCommand + command: "{{.Env.TESTS_ENV_PREFIX}} ctest {{.Env.CTEST_ARGS}}" + executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution + ignoreExitCode: true + maxTimeInSeconds: 10800 + maxTimeBetweenOutput: "{{.Env.COIN_COMMAND_OUTPUT_TIMEOUT}}" + userMessageOnFailure: > + Failed to run tests. - type: Group instructions: diff --git a/coin/instructions/cmake_run_ctest_ignore_exit_code.yaml b/coin/instructions/cmake_run_ctest_ignore_exit_code.yaml deleted file mode 100644 index b94717730b..0000000000 --- a/coin/instructions/cmake_run_ctest_ignore_exit_code.yaml +++ /dev/null @@ -1,20 +0,0 @@ -type: Group -instructions: - - type: EnvironmentVariable - variableName: CTEST_ARGS - variableValue: "-V --rerun-failed --force-new-ctest-process" - - type: AppendToEnvironmentVariable - variableName: CTEST_ARGS - variableValue: " --stop-on-failure" - enable_if: - condition: property - property: features - contains_value: AbortTestingOnFirstFailure - - type: ExecuteCommand - command: "{{.Env.TESTS_ENV_PREFIX}} ctest {{.Env.CTEST_ARGS}}" - executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution - ignoreExitCode: true - maxTimeInSeconds: 10800 - maxTimeBetweenOutput: 900 - userMessageOnFailure: > - Failed to run tests. diff --git a/coin/instructions/coin_module_test_template_v2.yaml b/coin/instructions/coin_module_test_template_v2.yaml index 423d292bf7..3776584689 100644 --- a/coin/instructions/coin_module_test_template_v2.yaml +++ b/coin/instructions/coin_module_test_template_v2.yaml @@ -5,6 +5,9 @@ instructions: - !include "{{qt/qtbase}}/coin_module_test_template_common.yaml" - type: Group instructions: + - type: EnvironmentVariable + variableName: COIN_CTEST_IGNORE_EXIT_CODE + variableValue: "1" - !include "{{qt/qtbase}}/cmake_regular_test_instructions.yaml" enable_if: condition: or diff --git a/coin/instructions/coin_module_test_template_v3.yaml b/coin/instructions/coin_module_test_template_v3.yaml index de870b9d45..83b40c141b 100644 --- a/coin/instructions/coin_module_test_template_v3.yaml +++ b/coin/instructions/coin_module_test_template_v3.yaml @@ -5,7 +5,7 @@ instructions: - !include "{{qt/qtbase}}/coin_module_test_template_common.yaml" - type: Group instructions: - - !include "{{qt/qtbase}}/cmake_regular_test_instructions_enforced.yaml" + - !include "{{qt/qtbase}}/cmake_regular_test_instructions.yaml" enable_if: condition: or conditions: diff --git a/coin/instructions/prepare_building_env.yaml b/coin/instructions/prepare_building_env.yaml index a3ac5c3f0b..373a2ea115 100644 --- a/coin/instructions/prepare_building_env.yaml +++ b/coin/instructions/prepare_building_env.yaml @@ -473,6 +473,26 @@ instructions: property: features contains_value: UseConfigure + # SBOM + - type: Group + enable_if: + condition: property + property: features + contains_value: GenerateSBOM + instructions: + - type: AppendToEnvironmentVariable + variableName: COMMON_CMAKE_ARGS + variableValue: " -DQT_GENERATE_SBOM=ON" + - type: AppendToEnvironmentVariable + variableName: COMMON_NON_QTBASE_CMAKE_ARGS + variableValue: " -DQT_GENERATE_SBOM=ON" + - type: AppendToEnvironmentVariable + variableName: COMMON_TARGET_CMAKE_ARGS + variableValue: " -DQT_GENERATE_SBOM=ON" + - type: AppendToEnvironmentVariable + variableName: COMMON_NON_QTBASE_TARGET_CMAKE_ARGS + variableValue: " -DQT_GENERATE_SBOM=ON" + - type: Group instructions: - type: AppendToEnvironmentVariable |