jenkins-pipelines/pipelines/parts/patch-make.Jenkinsfile
Dostoievski Batista 0eec407738 Add jenkins pipeline for patch creation
This change adds support for creating a patch on top of specified build
state using Jenkins:
- patch-monolithic: Main job where all the stages are listed and called.
- ostree-pull: Part where we pull the ostree from the remote build home.
- patch-make: Part where "patch-builder" is executed and the patch gets
    created.
- patch-iso: Part where the "create-prepatched-iso" is executed and the
    pre-patched ISO is created.
- publish-patch: Part where the publish directory for the pre-patched
    ISO and patch is created.
We also update the build-packages part to support "reuse_maximum" option
when running build-pkgs.

Test plan:
    PASS: Run full monolithic pipeline
    PASS: Run full patch-monolithic pipeline

Story: 2010226
Task: 50700

Change-Id: I7c7d688f2c568532a0b23844dcfd81349ca96476
Signed-off-by: Dostoievski Batista <dostoievski.albinobatista@windriver.com>
2024-09-11 14:50:05 -03:00

70 lines
1.4 KiB
Plaintext

// vim: syn=groovy
//
// Copyright (c) 2024 Wind River Systems, Inc.
//
// SPDX-License-Identifier: Apache-2.0
//
library "common@${params.JENKINS_SCRIPTS_BRANCH}"
setBuildDescr()
pipeline {
agent any
options {
timestamps()
}
parameters {
string(
name: 'MASTER_JOB_NAME'
)
string(
name: 'MASTER_BUILD_NUMBER'
)
string(
name: 'JENKINS_SCRIPTS_BRANCH'
)
string(
name: 'SW_VERSION'
)
string(
name: 'PATCH_NUM'
)
string(
name: 'TIMESTAMP'
)
booleanParam(
name: 'SHELL_XTRACE'
)
booleanParam(
name: 'DRY_RUN'
)
string (
name: 'BUILD_HOME'
)
string(
name: 'CUSTOM_PATCH_RECIPE',
description: "Allow you to specify the path to a custom patch recipe to be used when creating the patch.",
defaultValue: ""
)
string(
name: 'PATCH_NAME',
description: "Allow you to specify a custom patch name for the .patch file.",
defaultValue: ""
)
}
stages {
stage("patch-make") {
steps {
sh("bash ${Constants.SCRIPTS_DIR}/patch-make.sh")
}
}
}
post {
cleanup {
cleanupPartJob()
}
}
}