Members of the KDE Community are recommended to subscribe to the kde-community mailing list at to allow them to participate in important discussions and receive other important announcements

Commit e7fa054b authored by Hannah von Reth's avatar Hannah von Reth

Craft: gather src packages

parent 02884f97
......@@ -177,3 +177,51 @@ pipelineJob( "Craft_Builder_Cleanup" ) {
// gath src files
def srcJobsToParse = readFileFromWorkspace('craft-cache/experimental-pipelines/gathered-jobs.json')
def srcExperimentalJobs = new groovy.json.JsonSlurper().parseText( srcJobsToParse )
knownSrcJobs.each {
// Create our job name
def jobName = "Craft_Build_Src_Cache_${it.craftPlatform}"
// Read in the necessary Pipeline template
def pipelineTemplate = readFileFromWorkspace("craft-cache/src-pipelines/${it.buildPipeline}.pipeline")
// Now we can construct our Pipeline script
// We append a series of variables to the top of it to provide a variety of useful information to the otherwise templated script
// These appended variables are what makes one build different to the next, aside from the template which was used
def pipelineScript = """
|def craftPlatform = "${it.craftPlatform}"
// Actually create the job now
pipelineJob( jobName ) {
properties {
// We don't want to keep build results forever
// We'll set it to keep the last 10 builds and discard everything else
buildDiscarder {
strategy {
logRotator {
// We don't want to be building the same project more than once
// This is to prevent one project hogging resources
// And also has a practical component as otherwise an older build could finish afterwards and upload old build results
// This is where the Pipeline script actually happens :)
definition {
cps {
script( pipelineScript )
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment