summaryrefslogtreecommitdiffstats
path: root/coin/instructions
diff options
context:
space:
mode:
Diffstat (limited to 'coin/instructions')
-rw-r--r--coin/instructions/cmake_module_build_instructions.yaml3
-rw-r--r--coin/instructions/cmake_qtbase_build_instructions.yaml3
-rw-r--r--coin/instructions/cmake_regular_test_instructions.yaml19
-rw-r--r--coin/instructions/cmake_regular_test_instructions_common.yaml13
-rw-r--r--coin/instructions/cmake_regular_test_instructions_enforced.yaml4
-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.yaml20
-rw-r--r--coin/instructions/coin_module_test_template_v2.yaml3
-rw-r--r--coin/instructions/coin_module_test_template_v3.yaml2
-rw-r--r--coin/instructions/prepare_building_env.yaml20
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