You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kie.apache.org by js...@apache.org on 2023/09/19 11:01:47 UTC
[incubator-kie-optaplanner] 01/01: kie-issues#574 Initial ASF Jenkins CI Setup
This is an automated email from the ASF dual-hosted git repository.
jstastnycz pushed a commit to branch apache_migration
in repository https://gitbox.apache.org/repos/asf/incubator-kie-optaplanner.git
commit 37536d698e0c9a84c4d8f35e3016908c3f8b412e
Author: radtriste <tr...@redhat.com>
AuthorDate: Tue Sep 5 11:11:51 2023 +0200
kie-issues#574 Initial ASF Jenkins CI Setup
update
Remove PR job
updated dsl config
[apache_migration] Update pipelines (#2967)
Update pipelines
remove optaplanner-website
PR multibranchPipelineJob (#2975)
* PR multibranchPipelineJob
* set Jenkinsfile timeout time as int
---------
Co-authored-by: jstastny-cz <ja...@ibm.com>
Update kiegroup references to apache (#2981)
Co-authored-by: radtriste <tr...@redhat.com>
Co-authored-by: jstastny-cz <ja...@ibm.com>
Fix CI references to kie-docs and kie-benchmarks (#2982)
Co-authored-by: jstastny-cz <ja...@ibm.com>
use apache/incubator-kie-benchmarks in branch config (#2983)
Co-authored-by: jstastny-cz <ja...@ibm.com>
Remove branch override for quickstarts from branch config (#2984)
Co-authored-by: jstastny-cz <ja...@ibm.com>
Switch to main branch in config
---
.ci/buildchain-config.yaml | 4 +-
.ci/buildchain-project-dependencies.yaml | 6 +-
.ci/environments/common/update_quarkus.sh | 2 +-
.ci/jenkins/Jenkinsfile | 44 ++++
.ci/jenkins/Jenkinsfile.deploy | 35 +--
.ci/jenkins/Jenkinsfile.prod.nightly | 291 ---------------------
.ci/jenkins/Jenkinsfile.promote | 22 +-
.ci/jenkins/Jenkinsfile.setup-branch | 19 +-
.ci/jenkins/Jenkinsfile.turtle | 17 +-
.ci/jenkins/config/branch.yaml | 88 +++----
.ci/jenkins/config/main.yaml | 22 +-
.ci/jenkins/dsl/jobs.groovy | 21 +-
.ci/jenkins/dsl/test.sh | 8 +-
.ci/jenkins/project/Jenkinsfile.drools | 23 +-
.ci/jenkins/project/Jenkinsfile.nightly | 10 +-
.ci/jenkins/project/Jenkinsfile.post-release | 103 +++-----
.ci/jenkins/project/Jenkinsfile.release | 12 +-
.ci/jenkins/project/Jenkinsfile.setup-branch | 9 +-
.ci/nightly-build-config.yaml | 42 ---
.ci/nightly-project-dependencies.yaml | 15 --
.ci/project-dependencies-rhbop.yaml | 25 --
.ci/pull-request-config-rhbop.yaml | 35 ---
.github/pull_request_template.md | 8 +-
.github/workflows/full-downstream.yml | 2 +-
.github/workflows/generate_status_page.yaml | 4 +-
.github/workflows/generate_status_page_data.yaml | 6 +-
.github/workflows/jenkins-tests-PR.yml | 4 +-
.github/workflows/pull_request.yml | 4 +-
.../workflows/rhbop_productized_pull_request.yml | 58 ----
29 files changed, 202 insertions(+), 737 deletions(-)
diff --git a/.ci/buildchain-config.yaml b/.ci/buildchain-config.yaml
index 7de9ecc290..9540bf5687 100644
--- a/.ci/buildchain-config.yaml
+++ b/.ci/buildchain-config.yaml
@@ -25,7 +25,7 @@ default:
docker system prune -f
build:
- - project: kiegroup/optaplanner
+ - project: apache/incubator-kie-optaplanner
build-command:
before:
upstream: |
@@ -35,7 +35,7 @@ build:
upstream: |
mvn clean install -Dquickly ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_UPSTREAM }} ${{ env.OPTAPLANNER_BUILD_MVN_OPTS_UPSTREAM }}
- - project: kiegroup/optaplanner-quickstarts
+ - project: apache/incubator-kie-optaplanner-quickstarts
build-command:
current: |
mvn clean install ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_CURRENT }} ${{ env.OPTAPLANNER_QUICKSTARTS_BUILD_MVN_OPTS }}
diff --git a/.ci/buildchain-project-dependencies.yaml b/.ci/buildchain-project-dependencies.yaml
index f4c6113d2a..7d5a5b45a6 100644
--- a/.ci/buildchain-project-dependencies.yaml
+++ b/.ci/buildchain-project-dependencies.yaml
@@ -1,9 +1,9 @@
version: "2.1"
dependencies:
- - project: kiegroup/optaplanner
- - project: kiegroup/optaplanner-quickstarts
+ - project: apache/incubator-kie-optaplanner
+ - project: apache/incubator-kie-optaplanner-quickstarts
dependencies:
- - project: kiegroup/optaplanner
+ - project: apache/incubator-kie-optaplanner
mapping:
dependencies:
default:
diff --git a/.ci/environments/common/update_quarkus.sh b/.ci/environments/common/update_quarkus.sh
index 192f946390..9f4ecaf749 100755
--- a/.ci/environments/common/update_quarkus.sh
+++ b/.ci/environments/common/update_quarkus.sh
@@ -22,7 +22,7 @@ set -euo pipefail
mvn_cmd="mvn ${BUILD_MVN_OPTS:-} ${BUILD_MVN_OPTS_QUARKUS_UPDATE:-}"
-source <(curl -s https://raw.githubusercontent.com/kiegroup/kogito-pipelines/main/dsl/seed/scripts/install_quarkus.sh)
+source <(curl -s https://raw.githubusercontent.com/apache/incubator-kie-kogito-pipelines/main/dsl/seed/scripts/install_quarkus.sh)
echo "Update project with Quarkus version ${QUARKUS_VERSION}"
diff --git a/.ci/jenkins/Jenkinsfile b/.ci/jenkins/Jenkinsfile
new file mode 100644
index 0000000000..8f360bd068
--- /dev/null
+++ b/.ci/jenkins/Jenkinsfile
@@ -0,0 +1,44 @@
+@Library('jenkins-pipeline-shared-libraries')_
+
+pr_check_script = null
+
+pipeline {
+ agent {
+ label 'ubuntu'
+ }
+ options {
+ timestamps()
+ timeout(time: 360, unit: 'MINUTES')
+ }
+ environment {
+ BUILDCHAIN_PROJECT = 'apache/incubator-kie-optaplanner'
+ BUILDCHAIN_CONFIG_REPO = 'incubator-kie-optaplanner'
+ BUILDCHAIN_CONFIG_FILE_PATH = '.ci/buildchain-config.yaml'
+
+ ENABLE_SONARCLOUD = 'true'
+ SONARCLOUD_ANALYSIS_MVN_OPTS = '-Dsonar.projectKey=org.optaplanner:optaplanner'
+ OPTAPLANNER_BUILD_MVN_OPTS = '-Prun-code-coverage'
+ }
+ stages {
+ stage('Initialize') {
+ steps {
+ script {
+ // load `pr_check.groovy` file from kogito-pipelines:main
+ dir('kogito-pipelines') {
+ checkout(githubscm.resolveRepository('incubator-kie-kogito-pipelines', 'apache', 'main', false, 'ASF_Cloudbees_Jenkins_ci-builds'))
+ pr_check_script = load 'dsl/scripts/pr_check.groovy'
+ }
+ }
+ }
+ }
+ stage('PR check') {
+ steps {
+ script {
+ dir('kogito-pipelines') {
+ pr_check_script.launch()
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/.ci/jenkins/Jenkinsfile.deploy b/.ci/jenkins/Jenkinsfile.deploy
index 5e799a6249..e1e895a708 100644
--- a/.ci/jenkins/Jenkinsfile.deploy
+++ b/.ci/jenkins/Jenkinsfile.deploy
@@ -7,19 +7,17 @@ import org.kie.jenkins.MavenStagingHelper
deployProperties = [:]
-optaplannerRepository = 'optaplanner'
-quickstartsRepository = 'optaplanner-quickstarts'
+optaplannerRepository = 'incubator-kie-optaplanner'
+quickstartsRepository = 'incubator-kie-optaplanner-quickstarts'
imageUtils = null
pipeline {
agent {
- label 'kie-rhel8 && docker && kie-mem16g && !built-in'
- }
-
- tools {
- maven env.BUILD_MAVEN_TOOL
- jdk env.BUILD_JDK_TOOL
+ docker {
+ image env.AGENT_DOCKER_BUILDER_IMAGE
+ args env.AGENT_DOCKER_BUILDER_ARGS
+ }
}
options {
@@ -28,21 +26,13 @@ pipeline {
disableConcurrentBuilds(abortPrevious: true)
}
- // parameters {
- // For parameters, check into .jenkins/dsl/jobs.groovy file
- // }
-
environment {
- // Some generated env is also defined into .jenkins/dsl/jobs.groovy file
-
OPTAPLANNER_CI_EMAIL_TO = credentials("${JENKINS_EMAIL_CREDS_ID}")
- MAVEN_OPTS = '-Xms1024m -Xmx4g'
-
PR_BRANCH_HASH = "${util.generateHash(10)}"
// Maven configuration
- MAVEN_DEPLOY_LOCAL_DIR = "${WORKSPACE}/maven_deploy_dir"
+ MAVEN_DEPLOY_LOCAL_DIR = "/tmp/maven_deploy_dir"
}
stages {
@@ -197,9 +187,6 @@ pipeline {
when {
expression { return shouldStageArtifacts() }
}
- tools {
- jdk 'kie-jdk11'
- }
steps {
script {
// Stage release artifacts
@@ -320,7 +307,7 @@ void checkoutRepo(String repo, String dirName = repo) {
dir(dirName) {
deleteDir()
if (params.PR_TARGET_BRANCH) {
- githubscm.checkoutIfExists(repo, getGitAuthor(), getBuildBranch(), 'kiegroup', getFallbackBranch(repo), true)
+ githubscm.checkoutIfExists(repo, getGitAuthor(), getBuildBranch(), 'apache', getFallbackBranch(repo), true)
} else {
checkout(githubscm.resolveRepository(repo, getGitAuthor(), getBuildBranch(), false))
}
@@ -331,7 +318,7 @@ void checkoutQuickstarts(String dirName = quickstartsRepository) {
dir(dirName) {
deleteDir()
if (params.PR_TARGET_BRANCH) {
- githubscm.checkoutIfExists(quickstartsRepository, getGitAuthor(), getBuildBranch(), 'kiegroup', getQuickStartsBranch(), true)
+ githubscm.checkoutIfExists(quickstartsRepository, getGitAuthor(), getBuildBranch(), 'apache', getQuickStartsBranch(), true)
} else {
checkout(githubscm.resolveRepository(quickstartsRepository, getGitAuthor(), getQuickStartsBranch(), false))
}
@@ -339,7 +326,7 @@ void checkoutQuickstarts(String dirName = quickstartsRepository) {
}
String getFallbackBranch(String repo) {
- def repositoryScm = githubscm.getRepositoryScm(repo, 'kiegroup', params.PR_TARGET_BRANCH)
+ def repositoryScm = githubscm.getRepositoryScm(repo, 'apache', params.PR_TARGET_BRANCH)
return repositoryScm ? params.PR_TARGET_BRANCH : 'main'
}
@@ -452,7 +439,7 @@ boolean shouldDeployToRepository() {
}
boolean isNotTestingBuild() {
- return getGitAuthor() == 'kiegroup'
+ return getGitAuthor() == 'apache'
}
boolean isRelease() {
diff --git a/.ci/jenkins/Jenkinsfile.prod.nightly b/.ci/jenkins/Jenkinsfile.prod.nightly
deleted file mode 100644
index eb16656766..0000000000
--- a/.ci/jenkins/Jenkinsfile.prod.nightly
+++ /dev/null
@@ -1,291 +0,0 @@
-@Library('jenkins-pipeline-shared-libraries')_
-
-pipeline {
- agent {
- label 'rhel8 && docker && !built-in'
- }
- tools {
- maven 'kie-maven-3.8.7'
- jdk 'kie-jdk11'
- nodejs 'nodejs-16.2.0'
- }
- parameters {
- string(description: 'The deployment URL', name: 'KIE_GROUP_DEPLOYMENT_REPO_URL')
- string(description: 'The UMB message version', name: 'UMB_VERSION', defaultValue: 'main')
- string(description: 'The product version, if not provided the optaplanner main branch one will be used', name: 'PRODUCT_VERSION')
- string(description: 'The drools product version, if not provided the drools main branch one will be used', name: 'DROOLS_PRODUCT_VERSION')
- string(description: 'The config repository branch', name: 'CONFIG_BRANCH', defaultValue: 'master')
- }
- options {
- buildDiscarder logRotator(artifactDaysToKeepStr: '', artifactNumToKeepStr: '', daysToKeepStr: '', numToKeepStr: '10')
- }
- environment {
- DATE_TIME_SUFFIX_FORMAT = 'yyyyMMddHH'
- }
- stages {
- stage('Initialize') {
- steps {
- script {
- // Fetch versions from pom if not provided
- env.PRODUCT_VERSION = "${PRODUCT_VERSION ?: parseVersionFromPom('kiegroup/optaplanner')}"
- env.DROOLS_PRODUCT_VERSION = "${DROOLS_PRODUCT_VERSION ?: parseVersionFromPom('kiegroup/drools')}"
- }
- }
- }
- stage('Install build-chain tool') {
- steps {
- script {
- println "[INFO] Installing build-chain tool"
-
- def buildChainActionFilePath = "${env.WORKSPACE}/build_chain_action.yaml"
- sh "curl https://raw.githubusercontent.com/kiegroup/kogito-pipelines/main/.ci/actions/build-chain/action.yml -o ${buildChainActionFilePath}"
-
- def buildChainVersion = buildChain.getBuildChainVersionFromCompositeActionFile(buildChainActionFilePath)
- if ([null, 'null'].contains(buildChainVersion)) {
- def errorMessage = "[ERROR] The build-chain version can't be recovered. Please contact administrator"
- println errorMessage
- error(errorMessage)
- }
- println "[INFO] build-chain version recovered '${buildChainVersion}'"
-
- sh "npm install -g @kie/build-chain-action@${buildChainVersion}${env.NPM_REGISTRY_URL ? " -registry=${NPM_REGISTRY_URL}" : ''}"
-
- sh "npm list -g | grep build-chain"
- }
- }
- }
- stage('Clone and parse build configuration repo') {
- steps {
- script {
- def currentBranch = getBuildConfigBranch()
- println "Checking out ${env.BUILD_CONFIGURATION_REPO_URL}:${currentBranch} into build_config folder"
- sh "git clone -b ${currentBranch} --single-branch ${env.BUILD_CONFIGURATION_REPO_URL} build_config"
-
- // export PME parameters and build scripts from nightly build config
- def buildConfigAdditionalVariables = [
- 'productVersion': env.PRODUCT_VERSION,
- 'droolsProductVersion': env.DROOLS_PRODUCT_VERSION
- ]
- pmebuild.parseBuildConfig("$WORKSPACE/build_config/rhbop/nightly", buildConfigAdditionalVariables)
-
- // export Quarkus community version as QUARKUS_VERSION_COMMUNITY
- def PME_BUILD_VARIABLES = env.PME_BUILD_VARIABLES.split(';').collect{ it.split('=')}.inject([:]) {map, item -> map << [(item.length == 2 ? item[0] : null): (item.length == 2 ? item[1] : null)]}
- env.QUARKUS_VERSION_COMMUNITY = PME_BUILD_VARIABLES['quarkusVersionCommunity']
- env.QUARKUS_VERSION = PME_BUILD_VARIABLES['quarkusVersion'].replaceAll("\\{\\{.*\\}\\}", env.QUARKUS_VERSION_COMMUNITY)
- }
- }
- }
- stage('Build Nightly projects') {
- steps {
- script {
- withCredentials([string(credentialsId: "kie-ci1-token", variable: 'GITHUB_TOKEN')]) {
- def SETTINGS_XML_ID = '5d9884a1-178a-4d67-a3ac-9735d2df2cef'
- def buildBranch = getBuildBranch()
- def definitionFile = "https://raw.githubusercontent.com/\\\${GROUP:kiegroup}/optaplanner/${getDefinitionFileBranch()}/.ci/nightly-build-config.yaml"
-
- configFileProvider([configFile(fileId: "${SETTINGS_XML_ID}", variable: 'PME_MAVEN_SETTINGS_XML')]) {
- sh "build-chain build branch --token=${GITHUB_TOKEN} -f ${definitionFile} -b ${buildBranch} -o bc -p kiegroup/optaplanner --fullProjectDependencyTree --skipParallelCheckout"
- }
- }
- }
- }
- }
- stage('Upload artifacts to repository') {
- steps {
- script {
- echo "[INFO] Start uploading ${env.WORKSPACE}/deployDirectory"
- dir("${env.WORKSPACE}/deployDirectory") {
- withCredentials([usernameColonPassword(credentialsId: "${env.NIGHTLY_DEPLOYMENT_CREDENTIAL}", variable: 'deploymentCredentials')]) {
- sh "zip -qr kiegroup ."
- sh "curl --fail --upload-file kiegroup.zip -u $deploymentCredentials -v ${KIE_GROUP_DEPLOYMENT_REPO_URL}"
- }
- }
- }
- }
- }
- stage('Upload optaplanner sources') {
- steps {
- script {
- echo "[INFO] Start uploading sources zip files.."
-
- def folder="rhbop/RHBOP-${PRODUCT_VERSION}.nightly"
-
- // zip source directories
- dir("${env.WORKSPACE}/deployDirectory/org/kie/rhbop/rhbop/${PRODUCT_VERSION}.redhat-${env.DATE_TIME_SUFFIX}") {
- def optaplannerSourcesFilename = computeSourcesFilename("optaplanner", env.DATE_TIME_SUFFIX)
- uploadSources(optaplannerSourcesFilename, folder)
-
- def quickstartsSourcesFilename = computeSourcesFilename("optaplanner-quickstarts", env.DATE_TIME_SUFFIX)
- uploadSources(quickstartsSourcesFilename, folder)
- }
- }
- }
- }
- stage ('Extract Git Information') {
- steps {
- script {
- def projectFolders = sh(returnStdout: true, script: "ls ${env.WORKSPACE}/bc").trim().split("\n")
- for (f in projectFolders) {
- dir("${env.WORKSPACE}/bc/${f}") {
- def projectName = f.replace("_", "/")
- // extract git infos
- util.storeGitInformation(projectName)
- env.ALREADY_BUILT_PROJECTS = "${env.ALREADY_BUILT_PROJECTS ?: ''}${projectName};"
-
- env["VERSION_${f}"] = maven.mvnGetVersionProperty('project.version')
- }
- }
-
- sh 'printenv'
- }
- }
- }
- stage ('Send UMB Message to QE.') {
- steps {
- script {
- echo '[INFO] Sending RHBOP UMB message to QE.'
- def optaplannerArchiveUrl = "https://${env.LOCAL_NEXUS_IP}:8443/nexus/content/groups/rhbop-${calculateArchiveRepoBranch()}-nightly/"
- def optaplannerSourcesFileUrl = "${env.STAGING_SERVER_URL}rhbop/RHBOP-${PRODUCT_VERSION}.nightly/rhbop-${PRODUCT_VERSION}.redhat-${env.DATE_TIME_SUFFIX}-optaplanner-sources.zip"
- def optaplannerQuickstartsSourcesFileUrl = "${env.STAGING_SERVER_URL}rhbop/RHBOP-${PRODUCT_VERSION}.nightly/rhbop-${PRODUCT_VERSION}.redhat-${env.DATE_TIME_SUFFIX}-optaplanner-quickstarts-sources.zip"
-
- def topic = "VirtualTopic.qe.ci.ba.rhbop.${env.UMB_VERSION}.nightly.trigger"
- def eventType = "rhbop-${env.UMB_VERSION}-nightly-qe-trigger"
- def messageBody = getMessageBody(
- optaplannerArchiveUrl,
- optaplannerSourcesFileUrl,
- optaplannerQuickstartsSourcesFileUrl,
- env.ALREADY_BUILT_PROJECTS,
- [
- 'rhbop': env['VERSION_kiegroup_optaplanner'],
- 'optaplanner': env['VERSION_kiegroup_optaplanner'],
- 'drools': env['VERSION_kiegroup_drools'],
- 'quarkus.bom': env['QUARKUS_VERSION'],
- 'platform.quarkus.bom': env['QUARKUS_VERSION']
- ],
- gitHashesToCollection(env.GIT_INFORMATION_HASHES)
- )
-
- echo "[INFO] Message Body: ${messageBody}"
- echo "[INFO] Topic: ${topic}"
- echo "[INFO] Event Type: ${eventType}"
- build job: env.SEND_UMB_MESSAGE_JOB_PATH, parameters: [
- [$class: 'StringParameterValue', name: 'MESSAGE_BODY', value: messageBody],
- [$class: 'StringParameterValue', name: 'TOPIC', value: topic],
- [$class: 'StringParameterValue', name: 'EVENT_TYPE', value: eventType]
- ]
- echo '[SUCCESS] Message was successfully sent.'
- }
- }
- }
- }
- post {
- failure {
- emailext body: 'RHBOP ${PRODUCT_VERSION}:nightly-build #${BUILD_NUMBER} was: ' + "${currentBuild.currentResult}" + '\n' +
- 'Please look here: ${BUILD_URL} \n' +
- ' \n' +
- '${BUILD_LOG, maxLines=750}', subject: 'RHBOP ${PRODUCT_VERSION}:nightly-build #${BUILD_NUMBER}: ' + "${currentBuild.currentResult}", to: 'kie-jenkins-builds@redhat.com'
- }
- unstable {
- emailext body: 'RHBOP ${PRODUCT_VERSION}:nightly-build #${BUILD_NUMBER} was: ' + "${currentBuild.currentResult}" + '\n' +
- 'Please look here: ${BUILD_URL} \n' +
- ' \n' +
- 'Failed tests: ${BUILD_URL}/testReport \n' +
- ' \n' +
- '${BUILD_LOG, maxLines=750}', subject: 'RHBOP ${PRODUCT_VERSION}:nightly-build #${BUILD_NUMBER}: ' + "${currentBuild.currentResult}", to: 'kie-jenkins-builds@redhat.com'
- }
- fixed {
- emailext body: 'RHBOP ${PRODUCT_VERSION}:nightly-build #${BUILD_NUMBER} was: ' + "${currentBuild.currentResult}" + '\n' +
- 'Please look here: ${BUILD_URL}', subject: 'RHBOP ${PRODUCT_VERSION}:nightly-build #${BUILD_NUMBER}: ' + "${currentBuild.currentResult}", to: 'kie-jenkins-builds@redhat.com'
- }
- always {
- archiveArtifacts artifacts: '**/*.maven.log', fingerprint: false, defaultExcludes: true, caseSensitive: true, allowEmptyArchive: true
-
- echo 'Generating JUnit report...'
- junit allowEmptyResults: true, healthScaleFactor: 1.0, testResults: '**/target/*-reports/TEST-*.xml'
-
- echo 'Archiving logs...'
- archiveArtifacts excludes: '**/target/checkstyle.log', artifacts: '**/*.maven.log,**/target/*.log', fingerprint: false, defaultExcludes: true, caseSensitive: true, allowEmptyArchive: true
- }
- cleanup {
- cleanWs()
- }
- }
-}
-
-String getBuildConfigBranch() {
- return env.CONFIG_BRANCH ?: env.DEFAULT_CONFIG_BRANCH ?: env.BRANCH_NAME ?: env.GIT_BRANCH
-}
-
-String getBuildBranch() {
- // Fallback to main if none exist
- return env.BRANCH_NAME ?: env.GIT_BRANCH ?: 'main'
-}
-
-String getDefinitionFileBranch() {
- // Fallback to getBuildBranch if DEFINITION_FILE_BRANCH not set
- return env.DEFINITION_FILE_BRANCH ?: getBuildBranch()
-}
-
-def getMessageBody(String optaplannerArchiveUrl, String optaplannerSourcesUrl, String optaplannerQuickstartsSourcesUrl, String alreadyBuiltProjects, Map<String, String> versions, Map<String, String> scmHashes) {
- def alreadyBuiltProjectsArray = (alreadyBuiltProjects ?: '').split(";")
- return """
-{
- "version": ${new groovy.json.JsonBuilder(versions).toString()},
- "scm_hash": ${new groovy.json.JsonBuilder(scmHashes).toString()},
- "built_projects": ${new groovy.json.JsonBuilder(alreadyBuiltProjectsArray).toString()},
- "archives": "${optaplannerArchiveUrl}",
- "sources": {
- "optaplanner": "${optaplannerSourcesUrl}",
- "optaplanner-quickstarts": "${optaplannerQuickstartsSourcesUrl}"
- }
-}"""
-}
-
-def computeSourcesFilename(String project, String suffix) {
- return "rhbop-${PRODUCT_VERSION}.redhat-${suffix}-${project}-sources.zip"
-}
-
-def uploadSources(String sourcesFilename, String folder) {
- echo "[INFO] Start uploading $sourcesFilename sources zip file.."
- util.withKerberos('rhba-prod-keytab') {
- sh "ssh 'rhba-prod@${env.RCM_HOST}' 'mkdir -p ${env.RCM_GUEST_FOLDER}/${folder}'"
- sh "rsync -rlp --info=progress2 $sourcesFilename rhba-prod@${env.RCM_HOST}:staging/${folder}"
- }
-}
-
-def gitHashesToCollection(String gitInformationHashes) {
- return gitInformationHashes.replaceAll(/([\w\d\-\_\.]*\/)([\w\d\-\_\.]*)/,'$2').split(';').findAll { it.split('=').size() }.collectEntries{ [it.split('=')[0], it.split('=')[1]] }
-}
-
-String getCurrentBranch() {
- return env.CHANGE_BRANCH ?: env.BRANCH_NAME
-}
-
-String getOptaPlannerQuickstartsBranch() {
- def branch = getCurrentBranch()
- return branch == 'main' ? 'development' : branch
-}
-
-String calculateArchiveRepoBranch() {
- def branch = getCurrentBranch()
- String [] branchSplit = branch.split("\\.")
- if (branchSplit.length == 3) {
- // e.g., 8.29.x --> 8.29
- return "${branchSplit[0]}.${branchSplit[1]}"
- }
- // e.g., main
- return branch
-}
-
-
-// Parse version from main branch of the given project
-// * project: in the form of owner/repository
-def parseVersionFromPom(String project) {
- def currentBranch = getCurrentBranch() ?: env.GIT_BRANCH
- def pomFilename = "${project.replaceAll("/", "_")}_pom.xml"
- def pomPath = "${env.WORKSPACE}/${pomFilename}"
-
- sh "curl https://raw.githubusercontent.com/${project}/${currentBranch}/pom.xml -o ${pomPath}"
- def pom = readMavenPom file: pomPath
- return pom.getVersion().replaceAll('-SNAPSHOT', '')
-}
diff --git a/.ci/jenkins/Jenkinsfile.promote b/.ci/jenkins/Jenkinsfile.promote
index b82c0da169..341460b3e4 100644
--- a/.ci/jenkins/Jenkinsfile.promote
+++ b/.ci/jenkins/Jenkinsfile.promote
@@ -6,19 +6,17 @@ import org.kie.jenkins.MavenCommand
deployProperties = [:]
pipelineProperties = [:]
-String optaplannerRepository = 'optaplanner'
-String quickstartsRepository = 'optaplanner-quickstarts'
+String optaplannerRepository = 'incubator-kie-optaplanner'
+String quickstartsRepository = 'incubator-kie-optaplanner-quickstarts'
imageUtils = null
pipeline {
agent {
- label 'kie-rhel8 && docker && !built-in'
- }
-
- tools {
- maven env.BUILD_MAVEN_TOOL
- jdk env.BUILD_JDK_TOOL
+ docker {
+ image env.AGENT_DOCKER_BUILDER_IMAGE
+ args env.AGENT_DOCKER_BUILDER_ARGS
+ }
}
options {
@@ -27,13 +25,7 @@ pipeline {
disableConcurrentBuilds(abortPrevious: true)
}
- // parameters {
- // For parameters, check into .jenkins/dsl/jobs.groovy file
- // }
-
environment {
- // Some generated env is also defined into .jenkins/dsl/jobs.groovy file
-
OPTAPLANNER_CI_EMAIL_TO = credentials("${JENKINS_EMAIL_CREDS_ID}")
PR_BRANCH_HASH = "${util.generateHash(10)}"
@@ -181,7 +173,7 @@ String getParamOrDeployProperty(String paramKey, String deployPropertyKey) {
//////////////////////////////////////////////////////////////////////////////
boolean isNotTestingBuild() {
- return getGitAuthor() == 'kiegroup'
+ return getGitAuthor() == 'apache'
}
String getProjectVersion() {
diff --git a/.ci/jenkins/Jenkinsfile.setup-branch b/.ci/jenkins/Jenkinsfile.setup-branch
index 6f7b303f04..196f687fbc 100644
--- a/.ci/jenkins/Jenkinsfile.setup-branch
+++ b/.ci/jenkins/Jenkinsfile.setup-branch
@@ -5,12 +5,10 @@ import org.kie.jenkins.MavenCommand
pipeline {
agent {
- label 'kie-rhel8 && !built-in'
- }
-
- tools {
- maven env.BUILD_MAVEN_TOOL
- jdk env.BUILD_JDK_TOOL
+ docker {
+ image env.AGENT_DOCKER_BUILDER_IMAGE
+ args env.AGENT_DOCKER_BUILDER_ARGS
+ }
}
options {
@@ -18,18 +16,9 @@ pipeline {
timeout(time: 60, unit: 'MINUTES')
}
- // parameters {
- // For parameters, check into ./dsl/jobs.groovy file
- // }
-
environment {
- // Static env is defined into ./dsl/jobs.groovy file
-
OPTAPLANNER_CI_EMAIL_TO = credentials("${JENKINS_EMAIL_CREDS_ID}")
- // Keep here for visitibility
- MAVEN_OPTS = '-Xms1024m -Xmx4g'
-
BRANCH_HASH = "${util.generateHash(10)}"
}
diff --git a/.ci/jenkins/Jenkinsfile.turtle b/.ci/jenkins/Jenkinsfile.turtle
index bb5742dd33..2130facecb 100644
--- a/.ci/jenkins/Jenkinsfile.turtle
+++ b/.ci/jenkins/Jenkinsfile.turtle
@@ -2,26 +2,21 @@
import org.kie.jenkins.MavenCommand
-optaplannerRepo = 'optaplanner'
+optaplannerRepo = 'incubator-kie-optaplanner'
pipeline {
agent {
- label 'kie-rhel8 && docker && kie-mem16g && !built-in'
- }
- tools {
- maven env.BUILD_MAVEN_TOOL
- jdk env.BUILD_JDK_TOOL
+ docker {
+ image env.AGENT_DOCKER_BUILDER_IMAGE
+ args env.AGENT_DOCKER_BUILDER_ARGS
+ }
}
options {
timestamps()
timeout(time: 3, unit: 'DAYS') // Turtle tests take ~2 days to complete.
disableConcurrentBuilds(abortPrevious: true)
}
- // parameters {
- // For parameters, check the .jenkins/dsl/jobs.groovy file.
- // }
environment {
- MAVEN_OPTS = '-Xms1024m -Xmx4g'
// Contains the email address of the team's Zulip channel.
OPTAPLANNER_CI_EMAIL_TO = credentials("${JENKINS_EMAIL_CREDS_ID}")
}
@@ -38,7 +33,7 @@ pipeline {
script {
new MavenCommand(this)
// Use the same settings.xml as for the nightly builds, including a maven mirror.
- .withSettingsXmlId('kogito_release_settings')
+ .withSettingsXmlId('kie-release-settings')
.inDirectory(optaplannerRepo)
.withOptions(['-U', '-e', '-fae', '-ntp'])
.withProperty('full')
diff --git a/.ci/jenkins/config/branch.yaml b/.ci/jenkins/config/branch.yaml
index b6d9a2655c..d953bf41c9 100644
--- a/.ci/jenkins/config/branch.yaml
+++ b/.ci/jenkins/config/branch.yaml
@@ -17,52 +17,29 @@ environments:
QUARKUS_BRANCH: '2.16'
ids:
- quarkus
- quarkus-lts:
- pull_request_default_check: false
- env_vars:
- BUILD_MVN_OPTS: -Dproductized
- QUARKUS_BRANCH: '2.13'
- ids:
- - quarkus
- - lts
- - prod
- native-lts:
- env_vars:
- NATIVE: true
- BUILD_MVN_OPTS: -Dproductized
- BUILD_MVN_OPTS_CURRENT: -Dnative -Dquarkus.native.container-build=true
- QUARKUS_BRANCH: '2.13'
- QUARKUS_NATIVE_BUILDER_IMAGE: mandrel
- ADDITIONAL_TIMEOUT: 720
- ids:
- - native
- - prod
- - lts
ecosystem:
auto_generation: false
ids:
- ecosystem
-productized_branch: true
disable:
- triggers: false
+ triggers: true # TODO to set back
repositories:
-- name: optaplanner
- branch: main
-- name: optaplanner-quickstarts
- branch: 8.x
-- name: optaplanner-website
- branch: main
-- name: kie-benchmarks
- branch: main
-productized_repositories:
-- name: optaplanner
-- name: optaplanner-quickstarts
-- name: optaplanner-website
+- name: incubator-kie-optaplanner
+ job_display_name: optaplanner
+- name: incubator-kie-optaplanner-quickstarts
+ job_display_name: optaplanner-quickstarts
+# Not migrated to Apache yet
+# - name: incubator-kie-optaplanner-website
+# job_display_name: optaplanner-website
+- name: incubator-kie-benchmarks
+ job_display_name: kie-benchmarks
git:
author:
- name: kiegroup
- credentials_id: kie-ci5
- token_credentials_id: kie-ci5-token
+ name: apache
+ # Taken from https://ci-builds.apache.org/credentials/
+ # Need to be verified
+ credentials_id: 399061d0-5ab5-4142-a186-a52081fef742
+ token_credentials_id: ci-builds
fork_author:
name: kie-ci
credentials_id: kie-ci
@@ -74,30 +51,31 @@ git:
jenkins_config_path: .ci/jenkins
buildchain_config:
git:
- repository: optaplanner
+ repository: incubator-kie-optaplanner
file_path: .ci/buildchain-config.yaml
maven:
- settings_file_id: kogito_release_settings
+ settings_file_id: kie-release-settings
nexus:
- release_url: https://repository.jboss.org/nexus
- release_repository: jboss-releases-repository
- staging_profile_url: https://repository.jboss.org/nexus/content/groups/kogito-public/
- staging_profile_id: 2161b7b8da0080
- build_promotion_profile_id: ea49ccd6f174
+ release_url: TO_DEFINE
+ release_repository: TO_DEFINE
+ staging_profile_url: TO_DEFINE
+ staging_profile_id: TO_DEFINE
+ build_promotion_profile_id: TO_DEFINE
artifacts_repository: ''
- pr_checks:
- repository:
- url: https://bxms-qe.rhev-ci-vms.eng.rdu2.redhat.com:8443/nexus/content/repositories/kogito-runtimes-pr-full-testing/
- creds_id: unpacks-zip-on-qa-nexus
cloud:
image:
- registry_credentials: optaplanner-quay-token
+ registry_credentials: tradisso_registry_token # TODO set to `kogito-quay-token`
registry: quay.io
- namespace: optaplanner
+ namespace: tradisso
latest_git_branch: main
jenkins:
- email_creds_id: OPTAPLANNER_CI_EMAIL
+ email_creds_id: OPTAPLANNER_CI_NOTIFICATION_EMAILS
+ agent:
+ docker:
+ builder:
+ image: quay.io/kiegroup/kogito-ci-build:latest
+ args: -v /var/run/docker.sock:/var/run/docker.sock --group-add docker --group-add input --group-add render
default_tools:
- jdk: kie-jdk17
- maven: kie-maven-3.8.7
- sonar_jdk: kie-jdk17
+ jdk: jdk_17_latest
+ maven: maven_3.8.6
+ sonar_jdk: jdk_17_latest
diff --git a/.ci/jenkins/config/main.yaml b/.ci/jenkins/config/main.yaml
index 8c4cdc9ed4..4eded94d4b 100644
--- a/.ci/jenkins/config/main.yaml
+++ b/.ci/jenkins/config/main.yaml
@@ -3,34 +3,24 @@ ecosystem:
projects:
- name: optaplanner
regexs:
+ - incubator-kie-opta.*
- opta.*
- name: kie-benchmarks
ignore_release: true
- ignore_productization: true
regexs:
- - kie-benchmarks.*
+ - incubator-kie-benchmarks.*
git:
branches:
- name: main
main_branch: true
- seed:
- branch: main
- - name: 8.38.x-prod
- seed:
- branch: seed-optaplanner-8.38.x
- - name: 8.44.x
- seed:
- branch: seed-optaplanner-8.44.x
- main_branch:
- default: main
seed:
config_file:
git:
- repository: optaplanner
+ repository: incubator-kie-optaplanner
author:
- name: kiegroup
- credentials_id: kie-ci5
+ name: apache
+ credentials_id: ASF_Cloudbees_Jenkins_ci-builds
branch: main
path: .ci/jenkins/config/branch.yaml
jenkins:
- email_creds_id: OPTAPLANNER_CI_EMAIL
+ email_creds_id: OPTAPLANNER_CI_NOTIFICATION_EMAILS
diff --git a/.ci/jenkins/dsl/jobs.groovy b/.ci/jenkins/dsl/jobs.groovy
index 155442f786..d15dc4719d 100644
--- a/.ci/jenkins/dsl/jobs.groovy
+++ b/.ci/jenkins/dsl/jobs.groovy
@@ -21,10 +21,10 @@
* This file is describing all the Jenkins jobs in the DSL format (see https://plugins.jenkins.io/job-dsl/)
* needed by the Kogito pipelines.
*
-* The main part of Jenkins job generation is defined into the https://github.com/kiegroup/kogito-pipelines repository.
+* The main part of Jenkins job generation is defined into the https://github.com/apache/incubator-kie-kogito-pipelines repository.
*
* This file is making use of shared libraries defined in
-* https://github.com/kiegroup/kogito-pipelines/tree/main/dsl/seed/src/main/groovy/org/kie/jenkins/jobdsl.
+* https://github.com/apache/incubator-kie-kogito-pipelines/tree/main/dsl/seed/src/main/groovy/org/kie/jenkins/jobdsl.
*/
import org.kie.jenkins.jobdsl.model.JenkinsFolder
@@ -66,7 +66,7 @@ KogitoJobUtils.createMainQuarkusUpdateToolsJob(this,
void setupProjectDroolsJob(String droolsBranch) {
def jobParams = JobParamsUtils.getBasicJobParamsWithEnv(this, 'optaplanner-drools-snapshot', JobType.NIGHTLY, 'ecosystem', "${jenkins_path_project}/Jenkinsfile.drools", 'Optaplanner testing against Drools snapshot')
- JobParamsUtils.setupJobParamsDefaultMavenConfiguration(this, jobParams)
+ JobParamsUtils.setupJobParamsAgentDockerBuilderImageConfiguration(this, jobParams)
jobParams.triggers = [ cron : 'H 2 * * *' ]
jobParams.env.putAll([
JENKINS_EMAIL_CREDS_ID: "${JENKINS_EMAIL_CREDS_ID}",
@@ -149,7 +149,7 @@ void setupProjectReleaseJob() {
void setupProjectPostReleaseJob() {
def jobParams = JobParamsUtils.getBasicJobParams(this, 'optaplanner-post-release', JobType.RELEASE, "${jenkins_path_project}/Jenkinsfile.post-release", 'Optaplanner Post Release')
- JobParamsUtils.setupJobParamsDefaultMavenConfiguration(this, jobParams)
+ JobParamsUtils.setupJobParamsAgentDockerBuilderImageConfiguration(this, jobParams)
jobParams.env.putAll([
JENKINS_EMAIL_CREDS_ID: "${JENKINS_EMAIL_CREDS_ID}",
@@ -198,7 +198,7 @@ Map getMultijobPRConfig(JenkinsFolder jobFolder) {
]
], [
id: 'optaplanner-quickstarts',
- repository: 'optaplanner-quickstarts',
+ repository: 'incubator-kie-optaplanner-quickstarts',
env : [
BUILD_MVN_OPTS_CURRENT: '-Dfull',
OPTAPLANNER_BUILD_MVN_OPTS_UPSTREAM: '-Dfull',
@@ -211,7 +211,7 @@ Map getMultijobPRConfig(JenkinsFolder jobFolder) {
}
// Optaplanner PR checks
-KogitoJobUtils.createAllEnvironmentsPerRepoPRJobs(this) { jobFolder -> getMultijobPRConfig(jobFolder) }
+Utils.isMainBranch(this) && KogitoJobTemplate.createPullRequestMultibranchPipelineJob(this, "${jenkins_path}/Jenkinsfile")
// Setup branch branch
createSetupBranchJob()
@@ -251,9 +251,8 @@ void setupSpecificBuildChainNightlyJob(String envName) {
void createSetupBranchJob() {
def jobParams = JobParamsUtils.getBasicJobParams(this, 'optaplanner', JobType.SETUP_BRANCH, "${jenkins_path}/Jenkinsfile.setup-branch", 'OptaPlanner Setup Branch')
- JobParamsUtils.setupJobParamsDefaultMavenConfiguration(this, jobParams)
+ JobParamsUtils.setupJobParamsAgentDockerBuilderImageConfiguration(this, jobParams)
jobParams.env.putAll([
- REPO_NAME: 'optaplanner',
JENKINS_EMAIL_CREDS_ID: "${JENKINS_EMAIL_CREDS_ID}",
GIT_AUTHOR: "${GIT_AUTHOR_NAME}",
@@ -279,7 +278,7 @@ void createSetupBranchJob() {
void setupDeployJob(JobType jobType, String envName = '') {
def jobParams = JobParamsUtils.getBasicJobParamsWithEnv(this, 'optaplanner-deploy', jobType, envName, "${jenkins_path}/Jenkinsfile.deploy", 'Optaplanner Deploy')
- JobParamsUtils.setupJobParamsDefaultMavenConfiguration(this, jobParams)
+ JobParamsUtils.setupJobParamsAgentDockerBuilderImageConfiguration(this, jobParams)
if (jobType == JobType.PULL_REQUEST) {
jobParams.git.branch = '${BUILD_BRANCH_NAME}'
jobParams.git.author = '${GIT_AUTHOR}'
@@ -357,7 +356,7 @@ void setupDeployJob(JobType jobType, String envName = '') {
void setupPromoteJob(JobType jobType) {
def jobParams = JobParamsUtils.getBasicJobParams(this, 'optaplanner-promote', jobType, "${jenkins_path}/Jenkinsfile.promote", 'Optaplanner Promote')
- JobParamsUtils.setupJobParamsDefaultMavenConfiguration(this, jobParams)
+ JobParamsUtils.setupJobParamsAgentDockerBuilderImageConfiguration(this, jobParams)
jobParams.env.putAll([
JENKINS_EMAIL_CREDS_ID: "${JENKINS_EMAIL_CREDS_ID}",
@@ -400,7 +399,7 @@ void setupPromoteJob(JobType jobType) {
void setupOptaPlannerTurtleTestsJob(String constraintStreamImplType) {
def jobParams = JobParamsUtils.getBasicJobParams(this, "optaplanner-turtle-tests-${constraintStreamImplType}", JobType.OTHER, "${jenkins_path}/Jenkinsfile.turtle",
"Run OptaPlanner turtle tests with CS-${constraintStreamImplType} on a weekly basis.")
- JobParamsUtils.setupJobParamsDefaultMavenConfiguration(this, jobParams)
+ JobParamsUtils.setupJobParamsAgentDockerBuilderImageConfiguration(this, jobParams)
jobParams.env.putAll([
CONSTRAINT_STREAM_IMPL_TYPE: "${constraintStreamImplType}",
JENKINS_EMAIL_CREDS_ID: "${JENKINS_EMAIL_CREDS_ID}"
diff --git a/.ci/jenkins/dsl/test.sh b/.ci/jenkins/dsl/test.sh
index d43b6ddc04..d412c5b3e0 100755
--- a/.ci/jenkins/dsl/test.sh
+++ b/.ci/jenkins/dsl/test.sh
@@ -41,13 +41,13 @@ fi
git_author="$(echo ${git_url} | awk -F"${git_server_url}" '{print $2}' | awk -F. '{print $1}' | awk -F/ '{print $1}')"
-export DSL_DEFAULT_MAIN_CONFIG_FILE_REPO="${git_author}"/optaplanner
-export DSL_DEFAULT_FALLBACK_MAIN_CONFIG_FILE_REPO=kiegroup/optaplanner
+export DSL_DEFAULT_MAIN_CONFIG_FILE_REPO="${git_author}"/incubator-kie-optaplanner
+export DSL_DEFAULT_FALLBACK_MAIN_CONFIG_FILE_REPO=apache/incubator-kie-optaplanner
export DSL_DEFAULT_MAIN_CONFIG_FILE_PATH=.ci/jenkins/config/main.yaml
-export DSL_DEFAULT_BRANCH_CONFIG_FILE_REPO="${git_author}"/optaplanner
+export DSL_DEFAULT_BRANCH_CONFIG_FILE_REPO="${git_author}"/incubator-kie-optaplanner
file=$(mktemp)
# For more usage of the script, use ./test.sh -h
-curl -o ${file} https://raw.githubusercontent.com/kiegroup/kogito-pipelines/main/dsl/seed/scripts/seed_test.sh
+curl -o ${file} https://raw.githubusercontent.com/apache/incubator-kie-kogito-pipelines/main/dsl/seed/scripts/seed_test.sh
chmod u+x ${file}
${file} $@
\ No newline at end of file
diff --git a/.ci/jenkins/project/Jenkinsfile.drools b/.ci/jenkins/project/Jenkinsfile.drools
index b6cf03f559..6c6c1d7471 100644
--- a/.ci/jenkins/project/Jenkinsfile.drools
+++ b/.ci/jenkins/project/Jenkinsfile.drools
@@ -2,24 +2,19 @@
import org.kie.jenkins.MavenCommand
-droolsRepo = 'drools'
-optaplannerRepo = 'optaplanner'
-quickstartsRepo = 'optaplanner-quickstarts'
+droolsRepo = 'incubator-kie-drools'
+optaplannerRepo = 'incubator-kie-optaplanner'
+quickstartsRepo = 'incubator-kie-optaplanner-quickstarts'
pipeline {
agent {
- label 'kie-rhel8 && docker && kie-mem16g'
+ docker {
+ image env.AGENT_DOCKER_BUILDER_IMAGE
+ args env.AGENT_DOCKER_BUILDER_ARGS
+ }
}
environment {
- // DROOLS_BRANCH should be defined directly into the job environment
-
OPTAPLANNER_CI_EMAIL_TO = credentials("${JENKINS_EMAIL_CREDS_ID}")
-
- MAVEN_OPTS = '-Xms1024m -Xmx4g'
- }
- tools {
- maven env.BUILD_MAVEN_TOOL
- jdk env.BUILD_JDK_TOOL
}
options {
timestamps()
@@ -145,13 +140,13 @@ void checkoutOptaplannerQuickstartsRepo() {
void checkoutDroolsRepo() {
dir(droolsRepo) {
- checkout(githubscm.resolveRepository(droolsRepo, 'kiegroup', getDroolsBranch(), false))
+ checkout(githubscm.resolveRepository(droolsRepo, 'apache', getDroolsBranch(), false))
}
}
MavenCommand getMavenCommand(String directory) {
def mvnCmd = new MavenCommand(this, ['-fae', '-ntp'])
- .withSettingsXmlId('kogito_release_settings')
+ .withSettingsXmlId('kie-release-settings')
.inDirectory(directory)
if (env.BUILD_MVN_OPTS) {
mvnCmd.withOptions([ env.BUILD_MVN_OPTS ])
diff --git a/.ci/jenkins/project/Jenkinsfile.nightly b/.ci/jenkins/project/Jenkinsfile.nightly
index 9d5d5133d8..63234592fb 100644
--- a/.ci/jenkins/project/Jenkinsfile.nightly
+++ b/.ci/jenkins/project/Jenkinsfile.nightly
@@ -1,7 +1,7 @@
import org.jenkinsci.plugins.workflow.libs.Library
@Library('jenkins-pipeline-shared-libraries')_
-String optaPlannerRepository = 'optaplanner'
+String optaPlannerRepository = 'incubator-kie-optaplanner'
String optaPlannerMainBranch = 'main'
String optaPlanner9xBranch = '9.x'
@@ -19,20 +19,14 @@ UNSTABLE_STAGES = [:]
// Should be multibranch pipeline
pipeline {
agent {
- label 'rhel8 && !built-in'
+ label 'ubuntu'
}
options {
timeout(time: 1380, unit: 'MINUTES')
}
- // parameters {
- // For parameters, check into ./dsl/jobs.groovy file
- // }
-
environment {
- // Some generated env is also defined into ./dsl/jobs.groovy file
-
OPTAPLANNER_CI_EMAIL_TO = credentials("${JENKINS_EMAIL_CREDS_ID}")
// Use branch name in nightly tag as we may have parallel main and release branch builds
diff --git a/.ci/jenkins/project/Jenkinsfile.post-release b/.ci/jenkins/project/Jenkinsfile.post-release
index 53fe3c8292..4a4bfb8c21 100644
--- a/.ci/jenkins/project/Jenkinsfile.post-release
+++ b/.ci/jenkins/project/Jenkinsfile.post-release
@@ -4,18 +4,16 @@ import org.jenkinsci.plugins.workflow.libs.Library
import org.kie.jenkins.MavenCommand
-String optaplannerRepository = 'optaplanner'
-String quickstartsRepository = 'optaplanner-quickstarts'
+String optaplannerRepository = 'incubator-kie-optaplanner'
+String quickstartsRepository = 'incubator-kie-optaplanner-quickstarts'
String stableBranchName = 'stable'
pipeline {
agent {
- label 'kie-rhel8 && !built-in'
- }
-
- tools {
- maven env.BUILD_MAVEN_TOOL
- jdk env.BUILD_JDK_TOOL
+ docker {
+ image env.AGENT_DOCKER_BUILDER_IMAGE
+ args env.AGENT_DOCKER_BUILDER_ARGS
+ }
}
options {
@@ -24,13 +22,7 @@ pipeline {
disableConcurrentBuilds(abortPrevious: true)
}
- // parameters {
- // For parameters, check into .jenkins/dsl/jobs.groovy file
- // }
-
environment {
- // Some generated env is also defined into .jenkins/dsl/jobs.groovy file
-
OPTAPLANNER_CI_EMAIL_TO = credentials("${JENKINS_EMAIL_CREDS_ID}")
PR_BRANCH_HASH = "${util.generateHash(10)}"
@@ -48,10 +40,7 @@ pipeline {
// Verify version is set and if on right release branch
assert getProjectVersion()
-
assert getBuildBranch() == util.getReleaseBranchFromVersion(getProjectVersion())
-
- installGithubCLI()
}
}
}
@@ -93,40 +82,41 @@ pipeline {
}
}
- stage('Update OptaPlanner website') {
- steps {
- script {
- final String websiteRepository = 'optaplanner-website'
- String prLink = null
- String prBranchName = "${getProjectVersion().toLowerCase()}-${env.PR_BRANCH_HASH}"
- dir("$websiteRepository-pr") {
- checkoutRepo(websiteRepository, 'main') // there is no other branch
- githubscm.createBranch(prBranchName)
-
- // Update versions in links on the website and in the docs.
- sh "./build/update-versions.sh ${getProjectVersion()} ${getNextMinorSnapshotVersion(getProjectVersion())}"
-
- // Update the XSDs. OptaPlanner must be cloned and build with the full profile before.
- String optaplannerRoot = "${WORKSPACE}/${optaplannerRepository}"
- String optaplannerWebsiteModule = 'optaplanner-website-root'
- String optaplannerWebsiteXsd = "${optaplannerWebsiteModule}/content/xsd"
- String optaplannerWebsiteDocs = 'optaplanner-website-docs'
- sh "cp ${optaplannerRoot}/core/optaplanner-core-impl/target/classes/solver.xsd ${optaplannerWebsiteXsd}/solver/solver-${env.OPTAPLANNER_LATEST_STREAM}.xsd"
- sh "cp ${optaplannerRoot}/optaplanner-benchmark/target/classes/benchmark.xsd ${optaplannerWebsiteXsd}/benchmark/benchmark-${env.OPTAPLANNER_LATEST_STREAM}.xsd"
-
- // Add changed files, commit, open and merge PR
- prLink = commitAndCreatePR("Release OptaPlanner ${getProjectVersion()}",
- { sh "git add $optaplannerWebsiteXsd/\\*.xsd $optaplannerWebsiteModule/data/pom.yml $optaplannerWebsiteDocs/antora-playbook.yml" },
- prBranchName, 'main')
- }
- dir(websiteRepository) {
- checkoutRepo(websiteRepository, 'main')
- mergeAndPush(prLink, 'main')
- githubscm.removeRemoteBranch('origin', prBranchName, getGitAuthorCredsID())
- }
- }
- }
- }
+ // Optaplanner website is not migrated to Apache
+ // stage('Update OptaPlanner website') {
+ // steps {
+ // script {
+ // final String websiteRepository = 'optaplanner-website'
+ // String prLink = null
+ // String prBranchName = "${getProjectVersion().toLowerCase()}-${env.PR_BRANCH_HASH}"
+ // dir("$websiteRepository-pr") {
+ // checkoutRepo(websiteRepository, 'main') // there is no other branch
+ // githubscm.createBranch(prBranchName)
+
+ // // Update versions in links on the website and in the docs.
+ // sh "./build/update-versions.sh ${getProjectVersion()} ${getNextMinorSnapshotVersion(getProjectVersion())}"
+
+ // // Update the XSDs. OptaPlanner must be cloned and build with the full profile before.
+ // String optaplannerRoot = "${WORKSPACE}/${optaplannerRepository}"
+ // String optaplannerWebsiteModule = 'optaplanner-website-root'
+ // String optaplannerWebsiteXsd = "${optaplannerWebsiteModule}/content/xsd"
+ // String optaplannerWebsiteDocs = 'optaplanner-website-docs'
+ // sh "cp ${optaplannerRoot}/core/optaplanner-core-impl/target/classes/solver.xsd ${optaplannerWebsiteXsd}/solver/solver-${env.OPTAPLANNER_LATEST_STREAM}.xsd"
+ // sh "cp ${optaplannerRoot}/optaplanner-benchmark/target/classes/benchmark.xsd ${optaplannerWebsiteXsd}/benchmark/benchmark-${env.OPTAPLANNER_LATEST_STREAM}.xsd"
+
+ // // Add changed files, commit, open and merge PR
+ // prLink = commitAndCreatePR("Release OptaPlanner ${getProjectVersion()}",
+ // { sh "git add $optaplannerWebsiteXsd/\\*.xsd $optaplannerWebsiteModule/data/pom.yml $optaplannerWebsiteDocs/antora-playbook.yml" },
+ // prBranchName, 'main')
+ // }
+ // dir(websiteRepository) {
+ // checkoutRepo(websiteRepository, 'main')
+ // mergeAndPush(prLink, 'main')
+ // githubscm.removeRemoteBranch('origin', prBranchName, getGitAuthorCredsID())
+ // }
+ // }
+ // }
+ // }
}
post {
unsuccessful {
@@ -150,7 +140,7 @@ void sendErrorNotification() {
//////////////////////////////////////////////////////////////////////////////
boolean isNotTestingBuild() {
- return getGitAuthor() == 'kiegroup'
+ return getGitAuthor() == 'apache'
}
String getProjectVersion() {
@@ -232,15 +222,6 @@ void commitAndForcePushBranch(String repo, String branch) {
}
}
-void installGithubCLI() {
- sh """
- wget https://github.com/cli/cli/releases/download/v${env.GITHUB_CLI_VERSION}/gh_${env.GITHUB_CLI_VERSION}_linux_amd64.tar.gz
- tar xzf gh_${env.GITHUB_CLI_VERSION}_linux_amd64.tar.gz
- mv gh_${env.GITHUB_CLI_VERSION}_linux_amd64/bin/gh .
- rm -r gh_${env.GITHUB_CLI_VERSION}_linux_amd64*
- """
-}
-
void uploadDistribution(String directory) {
if (isNotTestingBuild()) {
echo "uploadDistribution for ${directory}"
diff --git a/.ci/jenkins/project/Jenkinsfile.release b/.ci/jenkins/project/Jenkinsfile.release
index d39ec1f8cc..50b036cb0a 100644
--- a/.ci/jenkins/project/Jenkinsfile.release
+++ b/.ci/jenkins/project/Jenkinsfile.release
@@ -18,16 +18,10 @@ releaseProperties = [:]
pipeline {
agent {
- label 'rhel8 && !built-in'
+ label 'ubuntu'
}
- // parameters {
- // For parameters, check into ./dsl/jobs.groovy file
- // }
-
environment {
- // Some generated env is also defined into ./dsl/jobs.groovy file
-
CI_EMAIL = credentials("${JENKINS_EMAIL_CREDS_ID}")
}
@@ -48,8 +42,8 @@ pipeline {
sendNotification("Release Pipeline has started...\nOptaplanner version = ${getOptaPlannerVersion()}\n=> ${env.BUILD_URL}")
// Safety measure to not publish to main JBoss
- if (getGitAuthor() != 'kiegroup' && !getArtifactsRepositoryParam()) {
- sendNotification("Git Author is different from `kiegroup` and no `ARTIFACTS_REPOSITORY` parameter has been provided. Are you sure you want to continue ? => ${env.BUILD_URL}input")
+ if (getGitAuthor() != 'apache' && !getArtifactsRepositoryParam()) {
+ sendNotification("Git Author is different from `apache` and no `ARTIFACTS_REPOSITORY` parameter has been provided. Are you sure you want to continue ? => ${env.BUILD_URL}input")
input message: 'Should the pipeline continue with no `ARTIFACTS_REPOSITORY` defined ?', ok: 'Yes'
}
}
diff --git a/.ci/jenkins/project/Jenkinsfile.setup-branch b/.ci/jenkins/project/Jenkinsfile.setup-branch
index c6a75a10c8..11d417b835 100644
--- a/.ci/jenkins/project/Jenkinsfile.setup-branch
+++ b/.ci/jenkins/project/Jenkinsfile.setup-branch
@@ -10,23 +10,16 @@ JOBS = [:]
FAILED_STAGES = [:]
UNSTABLE_STAGES = [:]
-// Should be multibranch pipeline
pipeline {
agent {
- label 'kie-rhel8 && !built-in'
+ label 'ubuntu'
}
options {
timeout(time: 360, unit: 'MINUTES')
}
- // parameters {
- // For parameters, check into ./dsl/jobs.groovy file
- // }
-
environment {
- // Some generated env is also defined into ./dsl/jobs.groovy file
-
OPTAPLANNER_CI_EMAIL_TO = credentials("${JENKINS_EMAIL_CREDS_ID}")
// Use branch name in nightly tag as we may have parallel main and release branch builds
diff --git a/.ci/nightly-build-config.yaml b/.ci/nightly-build-config.yaml
deleted file mode 100644
index e655100557..0000000000
--- a/.ci/nightly-build-config.yaml
+++ /dev/null
@@ -1,42 +0,0 @@
-version: "2.1"
-
-dependencies: ./nightly-project-dependencies.yaml
-
-pre: |
- export PME_CMD="java -jar ${{ env.PME_CLI_PATH }} -s ${{ env.PME_MAVEN_SETTINGS_XML }} -DallowConfigFilePrecedence=true -DprojectSrcSkip=false"
- echo "PME_CMD=${{ env.PME_CMD }}"
- export BUILD_MVN_OPTS="${{ env.BUILD_MVN_OPTS }} -s ${{ env.PME_MAVEN_SETTINGS_XML }}"
- echo "BUILD_MVN_OPTS=${{ env.BUILD_MVN_OPTS }}"
- export ALIGN_QUARKUS="mvn versions:compare-dependencies -DremotePom=io.quarkus:quarkus-bom:${{ env.QUARKUS_VERSION_COMMUNITY }} -DupdatePropertyVersions=true -DupdateDependencies=true -DgenerateBackupPoms=false -s ${{ env.PME_MAVEN_SETTINGS_XML }}"
- echo "ALIGN_QUARKUS=${{ env.ALIGN_QUARKUS }}"
-
-default:
- build-command:
- current: mvn clean install -Dproductized=true -DskipTests=true ${{ env.BUILD_MVN_OPTS }}
- upstream: mvn clean install -Dquickly -Dproductized=true -DskipTests=true ${{ env.BUILD_MVN_OPTS }}
- downstream: mvn clean install -Dquickly -Dproductized=true -DskipTests=true ${{ env.BUILD_MVN_OPTS }}
- after:
- current: |
- docker system prune -f
-
-build:
- - project: kiegroup/drools
- build-command:
- upstream: |
- ${{ env.PME_CMD }} ${{ env.PME_ALIGNMENT_PARAMS_kiegroup_drools }}
- bash -c "${{ env.ALIGN_QUARKUS }} -pl :drools-build-parent ; set -o pipefail ; ${{ env.PME_BUILD_SCRIPT_kiegroup_drools }} ${{ env.BUILD_MVN_OPTS }} | tee ${{ env.WORKSPACE }}/drools.maven.log"
- - project: kiegroup/optaplanner
- build-command:
- current: |
- ${{ env.PME_CMD }} ${{ env.PME_ALIGNMENT_PARAMS_kiegroup_optaplanner }}
- bash -c "set -o pipefail ; ${{ env.PME_BUILD_SCRIPT_kiegroup_optaplanner }} ${{ env.BUILD_MVN_OPTS }} | tee ${{ env.WORKSPACE }}/optaplanner.maven.log"
- - project: kiegroup/optaplanner-quickstarts
- build-command:
- downstream: |
- ${{ env.PME_CMD }} ${{ env.PME_ALIGNMENT_PARAMS_kiegroup_optaplanner_quickstarts }}
- bash -c "set -o pipefail ; ${{ env.PME_BUILD_SCRIPT_kiegroup_optaplanner_quickstarts }} ${{ env.BUILD_MVN_OPTS }} | tee ${{ env.WORKSPACE }}/optaplanner_quickstarts.maven.log"
- - project: jboss-integration/rhbop-optaplanner
- build-command:
- downstream: |
- ${{ env.PME_CMD }} ${{ env.PME_ALIGNMENT_PARAMS_jboss_integration_rhbop_optaplanner }}
- bash -c "set -o pipefail ; ${{ env.PME_BUILD_SCRIPT_jboss_integration_rhbop_optaplanner }} ${{ env.BUILD_MVN_OPTS }} | tee ${{ env.WORKSPACE }}/rhbop_optaplanner.maven.log"
\ No newline at end of file
diff --git a/.ci/nightly-project-dependencies.yaml b/.ci/nightly-project-dependencies.yaml
deleted file mode 100644
index 668bd6c588..0000000000
--- a/.ci/nightly-project-dependencies.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-version: "2.1"
-
-extends: ./project-dependencies-rhbop.yaml
-
-dependencies:
- - project: kiegroup/drools
- mapping:
- dependencies:
- default:
- - source: main-integration-quarkus-lts
- target: main
- dependant:
- default:
- - source: main
- target: main-integration-quarkus-lts
diff --git a/.ci/project-dependencies-rhbop.yaml b/.ci/project-dependencies-rhbop.yaml
deleted file mode 100644
index 60faddc132..0000000000
--- a/.ci/project-dependencies-rhbop.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-version: "2.1"
-
-dependencies:
- - project: kiegroup/drools
-
- - project: kiegroup/optaplanner
- dependencies:
- - project: kiegroup/drools
-
- - project: kiegroup/optaplanner-quickstarts
- dependencies:
- - project: kiegroup/optaplanner
- mapping:
- dependencies:
- default:
- - source: 8.x
- target: main
- dependant:
- default:
- - source: main
- target: 8.x
-
- - project: jboss-integration/rhbop-optaplanner
- dependencies:
- - project: kiegroup/optaplanner-quickstarts
\ No newline at end of file
diff --git a/.ci/pull-request-config-rhbop.yaml b/.ci/pull-request-config-rhbop.yaml
deleted file mode 100644
index f1baa3c7df..0000000000
--- a/.ci/pull-request-config-rhbop.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-version: "2.1"
-
-dependencies: ./project-dependencies-rhbop.yaml
-
-pre: |
- export BUILD_MVN_OPTS="${{ env.BUILD_MVN_OPTS }} -nsu -ntp -fae -e -DskipTests=true -Dproductized=true -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3"
- echo "BUILD_MVN_OPTS=${{ env.BUILD_MVN_OPTS }}"
- export BUILD_MVN_OPTS_CURRENT="${{ env.BUILD_MVN_OPTS_CURRENT }} dependency:tree"
- echo "BUILD_MVN_OPTS_CURRENT=${{ env.BUILD_MVN_OPTS_CURRENT }}"
-default:
- build-command:
- current: mvn clean install ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_CURRENT }}
- upstream: mvn clean install -Dquickly ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_UPSTREAM }}
- after:
- current: |
- docker system prune -f
-build:
- - project: kiegroup/drools
- build-command:
- current: mvn clean install -Dfull ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_CURRENT }} ${{ env.DROOLS_BUILD_MVN_OPTS }}
- upstream: mvn clean install -Dquickly ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_UPSTREAM }} ${{ env.DROOLS_BUILD_MVN_OPTS_UPSTREAM }}
- after:
- upstream: |
- export DROOLS_VERSION=`mvn org.apache.maven.plugins:maven-help-plugin:3.2.0:evaluate -Dexpression=project.version -q -DforceStdout`
- echo "DROOLS_VERSION=${{ env.DROOLS_VERSION }}"
-
- - project: kiegroup/optaplanner
- build-command:
- current: mvn clean install -Dfull ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_CURRENT }} ${{ env.OPTAPLANNER_BUILD_MVN_OPTS }} -Dversion.org.drools=${{ env.DROOLS_VERSION }}
- upstream: mvn clean install -Dquickly ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_UPSTREAM }} ${{ env.OPTAPLANNER_BUILD_MVN_OPTS_UPSTREAM }} -Dversion.org.drools=${{ env.DROOLS_VERSION }}
-
- - project: kiegroup/optaplanner-quickstarts
- build-command:
- current: mvn clean install ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_CURRENT }} ${{ env.OPTAPLANNER_QUICKSTARTS_BUILD_MVN_OPTS }} -Dversion.org.drools=${{ env.DROOLS_VERSION }}
- upstream: mvn clean install -Dquickly ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_UPSTREAM }} ${{ env..OPTAPLANNER_QUICKSTARTS_BUILD_MVN_OPTS_UPSTREAM }} -Dversion.org.drools=${{ env.DROOLS_VERSION }}
\ No newline at end of file
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index b76b3608fa..6be679386e 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -13,11 +13,11 @@ a section if that type of information is not available.
### Referenced pull requests
<!-- Add URLs of all referenced pull requests if they exist. This is only required when making
-changes that span multiple kiegroup repositories and depend on each other. -->
+changes that span multiple apache repositories and depend on each other. -->
<!-- Example:
- https://github.com/kiegroup/droolsjbpm-build-bootstrap/pull/1234
-- https://github.com/kiegroup/drools/pull/3000
-- https://github.com/kiegroup/optaplanner/pull/899
+- https://github.com/apache/incubator-kie-drools/pull/3000
+- https://github.com/apache/incubator-kie-optaplanner/pull/899
- etc.
-->
@@ -106,7 +106,7 @@ How to retest this PR or trigger a specific build:
### CI Status
- You can check OptaPlanner repositories CI status from [Chain Status webpage](https://kiegroup.github.io/optaplanner/).
+ You can check OptaPlanner repositories CI status from [Chain Status webpage](https://apache.github.io/incubator-kie-optaplanner/).
<details>
<summary>
diff --git a/.github/workflows/full-downstream.yml b/.github/workflows/full-downstream.yml
index edb2bc13f1..1b677fcc47 100644
--- a/.github/workflows/full-downstream.yml
+++ b/.github/workflows/full-downstream.yml
@@ -43,7 +43,7 @@ jobs:
- name: Build Chain
uses: kiegroup/kie-ci/.ci/actions/build-chain@main
with:
- definition-file: https://raw.githubusercontent.com/${GROUP:kiegroup}/optaplanner/${BRANCH:main}/.ci/buildchain-config.yaml
+ definition-file: https://raw.githubusercontent.com/${GROUP:apache}/incubator-kie-optaplanner/${BRANCH:main}/.ci/buildchain-config.yaml
annotations-prefix: ${{ runner.os }}-${{ matrix.java-version }}/${{ matrix.maven-version }}
github-token: "${{ secrets.GITHUB_TOKEN }}"
flow-type: full-downstream
diff --git a/.github/workflows/generate_status_page.yaml b/.github/workflows/generate_status_page.yaml
index 041fbdd694..4774a93861 100644
--- a/.github/workflows/generate_status_page.yaml
+++ b/.github/workflows/generate_status_page.yaml
@@ -4,7 +4,7 @@ on: workflow_dispatch
jobs:
generate-status-page:
- if: github.repository == 'kiegroup/optaplanner'
+ if: github.repository == 'apache/incubator-kie-optaplanner'
concurrency:
group: generate-status-page
cancel-in-progress: true
@@ -18,6 +18,6 @@ jobs:
- name: Generate status page
uses: kiegroup/chain-status/.ci/actions/generate-app@main
with:
- info-md-url: "https://raw.githubusercontent.com/kiegroup/optaplanner/main/.ci/chain-status-info.md"
+ info-md-url: "https://raw.githubusercontent.com/apache/incubator-kie-optaplanner/main/.ci/chain-status-info.md"
github-token: "${{ secrets.GITHUB_TOKEN }}"
diff --git a/.github/workflows/generate_status_page_data.yaml b/.github/workflows/generate_status_page_data.yaml
index 65aeb72291..8af962d554 100644
--- a/.github/workflows/generate_status_page_data.yaml
+++ b/.github/workflows/generate_status_page_data.yaml
@@ -6,7 +6,7 @@ on:
- cron: '0 * * * *'
jobs:
generate-status-page-data:
- if: github.repository == 'kiegroup/optaplanner'
+ if: github.repository == 'apache/incubator-kie-optaplanner'
concurrency:
group: generate-status-page-data
cancel-in-progress: true
@@ -20,11 +20,11 @@ jobs:
- name: Generate status page data
uses: kiegroup/chain-status/.ci/actions/generate-data@main
with:
- definition-file: https://raw.githubusercontent.com/kiegroup/optaplanner/main/.ci/builchain-config.yaml
+ definition-file: https://raw.githubusercontent.com/apache/incubator-kie-optaplanner/main/.ci/builchain-config.yaml
title: Pull Request Status
subtitle: OptaPlanner organization repositories CI Status
base-branch-filter: main,8\.*
- project-filter: kiegroup/opta.*$
+ project-filter: apache/incubator-kie-opta.*$
created-by: GitHub Action
created-url: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}
github-token: "${{ secrets.GITHUB_TOKEN }}"
diff --git a/.github/workflows/jenkins-tests-PR.yml b/.github/workflows/jenkins-tests-PR.yml
index 09ff92f65c..c83cc488e9 100644
--- a/.github/workflows/jenkins-tests-PR.yml
+++ b/.github/workflows/jenkins-tests-PR.yml
@@ -20,6 +20,6 @@ jobs:
uses: kiegroup/kie-ci/.ci/actions/dsl-tests@main
with:
project: optaplanner
- main-config-file-repo: kiegroup/optaplanner
+ main-config-file-repo: apache/incubator-kie-optaplanner
main-config-file-path: .ci/jenkins/config/main.yaml
- branch-config-file-repo: kiegroup/optaplanner
+ branch-config-file-repo: apache/incubator-kie-optaplanner
diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml
index c64e99628f..04e6d7ba82 100644
--- a/.github/workflows/pull_request.yml
+++ b/.github/workflows/pull_request.yml
@@ -59,9 +59,9 @@ jobs:
# maven-assembly-plugin occasionally fails on heap space when building the ZIP in optaplanner-docs
MAVEN_OPTS: "-Xmx2048m"
with:
- definition-file: https://raw.githubusercontent.com/${GROUP:kiegroup}/optaplanner/${BRANCH:main}/.ci/buildchain-config.yaml
+ definition-file: https://raw.githubusercontent.com/${GROUP:apache}/incubator-kie-optaplanner/${BRANCH:main}/.ci/buildchain-config.yaml
annotations-prefix: ${{ runner.os }}-${{ matrix.java-version }}/${{ matrix.maven-version }}
- starting-project: kiegroup/optaplanner
+ starting-project: apache/incubator-kie-optaplanner
flow-type: ${{ env.FLOW_TYPE }}
github-token: "${{ secrets.GITHUB_TOKEN }}"
- name: Surefire Report
diff --git a/.github/workflows/rhbop_productized_pull_request.yml b/.github/workflows/rhbop_productized_pull_request.yml
deleted file mode 100644
index f9d97586d2..0000000000
--- a/.github/workflows/rhbop_productized_pull_request.yml
+++ /dev/null
@@ -1,58 +0,0 @@
-# Tests RHBOP productized profile builds on PRs
-name: Productized Build Chain
-
-on:
- pull_request:
- types: [opened, synchronize, reopened, labeled]
- branches:
- - main
- - 8.*
- paths-ignore:
- - 'LICENSE*'
- - '.gitignore'
- - '**.md'
- - '**.adoc'
- - '*.txt'
- - '.ci/jenkins/**'
-
-defaults:
- run:
- shell: bash
-
-jobs:
- productized-build-chain:
- concurrency:
- group: rhbop_pull_request-${{ github.event_name }}-${{ github.head_ref }}-${{ matrix.os }}-${{ matrix.java-version }}
- cancel-in-progress: true
- timeout-minutes: 120
- strategy:
- matrix:
- os: [ubuntu-latest]
- java-version: [11]
- maven-version: ['3.8.7']
- fail-fast: false
- runs-on: ${{ matrix.os }}
- name: ${{ matrix.os }} - Java ${{ matrix.java-version }} - Maven
- steps:
- - name: Clean Disk Space
- uses: kiegroup/kie-ci/.ci/actions/ubuntu-disk-space@main
- - name: Java and Maven Setup
- uses: kiegroup/kie-ci/.ci/actions/maven@main
- with:
- java-version: ${{ matrix.java-version }}
- maven-version: ${{ matrix.maven-version }}
- cache-key-prefix: ${{ runner.os }}-${{ matrix.java-version }}-maven${{ matrix.maven-version }}
- - name: Productized Build Chain
- uses: kiegroup/kie-ci/.ci/actions/build-chain@main
- env:
- # maven-assembly-plugin occasionally fails on heap space when building the ZIP in optaplanner-docs
- MAVEN_OPTS: "-Xmx2048m"
- with:
- definition-file: https://raw.githubusercontent.com/${GROUP:kiegroup}/optaplanner/${BRANCH:main}/.ci/pull-request-config-rhbop.yaml
- annotations-prefix: ${{ runner.os }}-${{ matrix.java-version }}/${{ matrix.maven-version }}
- github-token: "${{ secrets.GITHUB_TOKEN }}"
- - name: Surefire Report
- uses: kiegroup/kie-ci/.ci/actions/surefire-report@main
- if: ${{ always() }}
- with:
- report_paths: '**/*-reports/TEST-*.xml'
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@kie.apache.org
For additional commands, e-mail: commits-help@kie.apache.org