Add CI job definitions using our new templated pipelines to llvm-project, this way we can enable multi branch pipelines which trigger for changes on a given branch. By storing the Jenkinfile definitions in llvm-project, we gain the benefit of enabling Jenkins multi branch pipelines. This means in the future, expanding a job configuration to build with a new branch is as simple as updating a regular expression in Jenkins (the regular expression represents which branches should be built). The work required for enabling testing new branches becomes minimal, and furthermore we would have a great deal of confidence that job configurations across branches remain identical. I will verify these new jenkinsfiles work before deprecating the old definitions in zorg
17 lines
634 B
Groovy
17 lines
634 B
Groovy
branchName = 'main'
|
|
|
|
library identifier: "zorg-shared-lib@${branchName}",
|
|
retriever: modernSCM([
|
|
$class: 'GitSCMSource',
|
|
remote: "https://github.com/llvm/llvm-zorg.git",
|
|
credentialsId: scm.userRemoteConfigs[0].credentialsId
|
|
])
|
|
|
|
common.testsuite_pipeline(label: 'macos-x86_64') {
|
|
sh """
|
|
CMAKE_FLAGS+=" -C ../config/tasks/cmake/caches/target-arm64-iphoneos.cmake"
|
|
CMAKE_FLAGS+=" -C ../config/tasks/cmake/caches/opt-O0-g.cmake"
|
|
config/tasks/task jenkinsrun config/tasks/test-suite-verify-machineinstrs.sh -a compiler="${params.ARTIFACT}" -D CMAKE_FLAGS="\${CMAKE_FLAGS}"
|
|
"""
|
|
}
|