Add Axivion analysis commands
Task-number: QTQAINFRA-5244 Change-Id: Ib577237d73863140386edce9acc2913acc9e2813 Reviewed-by: Toni Saario <toni.saario@qt.io>
This commit is contained in:
parent
15eca98214
commit
5379e93c65
65
coin/axivion/ci_config_linux.json
Normal file
65
coin/axivion/ci_config_linux.json
Normal file
@ -0,0 +1,65 @@
|
||||
{
|
||||
"Project": {
|
||||
"Git": {
|
||||
"_active": true,
|
||||
"sourceserver_gitdir": "/data/axivion/databases/$(env:TESTED_MODULE_COIN).git"
|
||||
},
|
||||
"BuildSystemIntegration": {
|
||||
"child_order": [
|
||||
"GCCSetup",
|
||||
"CMake",
|
||||
"LinkLibraries"
|
||||
]
|
||||
},
|
||||
"CMake": {
|
||||
"_active": true,
|
||||
"_copy_from": "CMakeIntegration",
|
||||
"build_environment": {},
|
||||
"build_options": "-j4",
|
||||
"generate_options": "--fresh",
|
||||
"generator": "Ninja"
|
||||
},
|
||||
"GCCSetup": {
|
||||
"_active": true,
|
||||
"_copy_from": "Command",
|
||||
"build_command": "gccsetup --cc gcc --cxx g++ --config ../../../axivion/"
|
||||
},
|
||||
"LinkLibraries": {
|
||||
"_active": true,
|
||||
"_copy_from": "AxivionLinker",
|
||||
"input_files": [
|
||||
"build/lib/lib*.so*.ir"
|
||||
],
|
||||
"ir": "build/$(env:TESTED_MODULE_COIN).ir",
|
||||
"plugin_files": [
|
||||
"build/plugins/*/lib*.so*.ir"
|
||||
]
|
||||
},
|
||||
"Project-GlobalOptions": {
|
||||
"ci_mode": {
|
||||
"clean_before": false
|
||||
},
|
||||
"directory": "../work/qt/$(env:TESTED_MODULE_COIN)",
|
||||
"ir": "build/$(env:TESTED_MODULE_COIN).ir",
|
||||
"name": "qt_$(env:TESTED_MODULE_COIN)_dev_$(env:TARGET_OS_COIN)"
|
||||
}
|
||||
},
|
||||
"Results": {
|
||||
"Dashboard": {
|
||||
"dashboard_url": "https://axivion-srv.ci.qt.io/axivion/"
|
||||
},
|
||||
"Database": {
|
||||
"ci_mode": {
|
||||
"directory": "/data/axivion/databases"
|
||||
}
|
||||
}
|
||||
},
|
||||
"_Format": "1.0",
|
||||
"_Version": "trunk-9e0ef9c5818",
|
||||
"_VersionNum": [
|
||||
7,
|
||||
6,
|
||||
9999,
|
||||
11489
|
||||
]
|
||||
}
|
98
coin/instructions/coin_module_axivion_template_v2.yaml
Normal file
98
coin/instructions/coin_module_axivion_template_v2.yaml
Normal file
@ -0,0 +1,98 @@
|
||||
analysis_instructions_axivion: &analysis_instructions_axivion
|
||||
type: Group
|
||||
instructions:
|
||||
- type: Group
|
||||
instructions:
|
||||
- type: EnvironmentVariable
|
||||
variableName: AXIVION_CHAINLOAD_TOOLCHAIN_FILE
|
||||
variableValue: "{{.AgentWorkingDir}}/install/lib/cmake/Qt6/qt.toolchain.cmake"
|
||||
- type: EnvironmentVariable
|
||||
variableName: CMAKE_PREFIX_PATH
|
||||
variableValue: "{{.AgentWorkingDir}}/install/lib/cmake"
|
||||
enable_if:
|
||||
condition: runtime
|
||||
env_var: TESTED_MODULE_COIN
|
||||
not_equals_value: "qtbase"
|
||||
- type: Group
|
||||
instructions:
|
||||
- type: Rename
|
||||
sourcePath: "{{.SourceDir}}/coin/axivion/ci_config_{{.Env.TARGET_OS_COIN}}.json"
|
||||
targetPath: "{{.Env.HOME}}/axivion/ci_config.json"
|
||||
userMessageOnFailure: "Moving ci_config.json failed. Make sure you have included the file in coin/axivion/ -folder"
|
||||
- type: SetBuildDirectory
|
||||
directory: "{{.SourceDir}}"
|
||||
- type: ChangeDirectory
|
||||
directory: "{{.BuildDir}}"
|
||||
- type: ExecuteCommand
|
||||
command: ["../../../axivion/start_analysis.sh"]
|
||||
maxTimeInSeconds: 28800
|
||||
maxTimeBetweenOutput: 28800
|
||||
userMessageOnFailure: "Failed to run analysis"
|
||||
|
||||
build_environment_axivion: &build_environment_axivion
|
||||
type: Group
|
||||
instructions:
|
||||
- type: ExecuteCommand
|
||||
command: ["sudo", "mkdir", "-p","/data/axivion"]
|
||||
maxTimeInSeconds: 100
|
||||
maxTimeBetweenOutput: 100
|
||||
userMessageOnFailure: "Create mount point for results failed"
|
||||
- type: ExecuteCommand
|
||||
command: ["sudo", "mount", "-o", "rw", "10.212.0.93:/data/axivion", "/data/axivion"]
|
||||
maxTimeInSeconds: 100
|
||||
maxTimeBetweenOutput: 100
|
||||
userMessageOnFailure: "Mount failed"
|
||||
- type: ExecuteCommand
|
||||
command: ["rm","-rf","{{.SourceDir}}"]
|
||||
maxTimeInSeconds: 100
|
||||
maxTimeBetweenOutput: 100
|
||||
userMessageOnFailure: "Failed to remove source directory"
|
||||
- type: MakeDirectory
|
||||
directory: "{{.SourceDir}}"
|
||||
- type: ChangeDirectory
|
||||
directory: "{{.SourceDir}}"
|
||||
- type: ExecuteCommand
|
||||
command: ["git", "clone", "--jobs={{.NumCPU}}", "-n","--depth=50", "git://{{.Env.QT_COIN_GIT_DAEMON}}/qt-project/qt/{{.Env.TESTED_MODULE_COIN}}","."]
|
||||
maxTimeInSeconds: 900
|
||||
maxTimeBetweenOutput: 900
|
||||
userMessageOnFailure: "Failed to clone repository"
|
||||
- type: ExecuteCommand
|
||||
command: ["git", "fetch", "--recurse-submodules", "origin", "{{.Env.TESTED_MODULE_REVISION_COIN}}"]
|
||||
maxTimeInSeconds: 900
|
||||
maxTimeBetweenOutput: 900
|
||||
userMessageOnFailure: "Failed to fetch sources"
|
||||
- type: ExecuteCommand
|
||||
command: ["git", "checkout", "--force", "{{.Env.TESTED_MODULE_REVISION_COIN}}"]
|
||||
maxTimeInSeconds: 900
|
||||
maxTimeBetweenOutput: 900
|
||||
userMessageOnFailure: "Failed to checkout sources"
|
||||
- type: ExecuteCommand
|
||||
command: ["git", "submodule", "update", "--init", "--recursive"]
|
||||
maxTimeInSeconds: 1800
|
||||
maxTimeBetweenOutput: 900
|
||||
userMessageOnFailure: "Failed to initialize git submodules"
|
||||
- type: Group
|
||||
instructions:
|
||||
- !include "{{qt/qtbase}}/cmake_module_build_instructions.yaml"
|
||||
enable_if:
|
||||
condition: runtime
|
||||
env_var: TESTED_MODULE_COIN
|
||||
not_equals_value: "qtbase"
|
||||
- type: Group
|
||||
instructions:
|
||||
- !include "{{qt/qtbase}}/cmake_qtbase_build_instructions.yaml"
|
||||
enable_if:
|
||||
condition: runtime
|
||||
env_var: TESTED_MODULE_COIN
|
||||
equals_value: "qtbase"
|
||||
|
||||
type: Group
|
||||
instructions:
|
||||
- !include "{{qt/qtbase}}/prepare_building_env.yaml"
|
||||
- *build_environment_axivion
|
||||
- *analysis_instructions_axivion
|
||||
enable_if:
|
||||
condition: property
|
||||
property: features
|
||||
contains_value: Axivion
|
||||
|
@ -27,6 +27,30 @@ instructions:
|
||||
- condition: property
|
||||
property: features
|
||||
not_contains_value: "DebianPackaging"
|
||||
- condition: property
|
||||
property: features
|
||||
not_contains_value: Axivion
|
||||
- type: Group
|
||||
instructions:
|
||||
- !include "{{qt/qtbase}}/coin_module_axivion_template_v2.yaml"
|
||||
enable_if:
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: property
|
||||
property: features
|
||||
contains_value: Axivion
|
||||
- condition: runtime
|
||||
env_var: TESTED_MODULE_COIN
|
||||
not_equals_value: "qtdoc"
|
||||
- condition: runtime
|
||||
env_var: TESTED_MODULE_COIN
|
||||
not_equals_value: "qtquickeffectmaker"
|
||||
- condition: runtime
|
||||
env_var: TESTED_MODULE_COIN
|
||||
not_equals_value: "qttranslations"
|
||||
- condition: runtime
|
||||
env_var: TESTED_MODULE_COIN
|
||||
not_equals_value: "qtwebengine"
|
||||
- type: Group
|
||||
instructions:
|
||||
- !include "{{qt/qtbase}}/cmake_cross_compilation_module_build_instructions.yaml"
|
||||
|
@ -20,7 +20,16 @@ instructions:
|
||||
- condition: property
|
||||
property: features
|
||||
not_contains_value: "DebianPackaging"
|
||||
|
||||
- condition: property
|
||||
property: features
|
||||
not_contains_value: Axivion
|
||||
- type: Group
|
||||
instructions:
|
||||
- !include "{{qt/qtbase}}/coin_module_axivion_template_v2.yaml"
|
||||
enable_if:
|
||||
condition: property
|
||||
property: features
|
||||
contains_value: Axivion
|
||||
- type: Group
|
||||
instructions:
|
||||
- type: Group
|
||||
|
Loading…
Reference in New Issue
Block a user