Skip to content

Commit

Permalink
DROOLS-7533 Added kie-jpmml-integration config (#5459)
Browse files Browse the repository at this point in the history
* DROOLS-7533 Added `kie-jpmml-integration` config

* correction
  • Loading branch information
radtriste authored Aug 16, 2023
1 parent fe73ad5 commit 91d3e97
Show file tree
Hide file tree
Showing 9 changed files with 83 additions and 2 deletions.
8 changes: 8 additions & 0 deletions .ci/buildchain-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -67,3 +67,11 @@ build:
mvn -f ${{ env.KOGITO_EXAMPLES_SUBFOLDER_POM }}pom.xml clean ${{ env.MVN_CMD }} ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_CURRENT }} ${{ env.KOGITO_EXAMPLES_BUILD_MVN_OPTS }}
upstream: |
mvn clean install -Dquickly ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_UPSTREAM }} ${{ env.KOGITO_EXAMPLES_BUILD_MVN_OPTS_UPSTREAM }}
- project: kiegroup/kie-jpmml-integration
build-command:
current: |
export MVN_CMD=`bash -c "if [ '${{ env.ENABLE_DEPLOY }}' = 'true' ]; then printf 'deploy ${{ env.DEPLOY_MVN_OPTS }} ${{ env.KIE_JPMML_INTEGRATION_DEPLOY_MVN_OPTS }}'; else printf 'install'; fi"`
mvn clean ${{ env.MVN_CMD }} ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_CURRENT }} ${{ env.KIE_JPMML_INTEGRATION_BUILD_MVN_OPTS }}
upstream: |
mvn clean install -DskipTests ${{ env.BUILD_MVN_OPTS }} ${{ env.BUILD_MVN_OPTS_UPSTREAM }} ${{ env.KIE_JPMML_INTEGRATION_BUILD_MVN_OPTS_UPSTREAM }}
5 changes: 5 additions & 0 deletions .ci/buildchain-project-dependencies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -59,3 +59,8 @@ dependencies:
exclude:
- kiegroup/kogito-apps
- kiegroup/kogito-runtimes

- project: kiegroup/kie-jpmml-integration
dependencies:
- project: kiegroup/drools
# no mapping needed
1 change: 1 addition & 0 deletions .ci/jenkins/config/branch.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ repositories:
- name: drools
- name: drools-website
- name: kie-benchmarks
- name: kie-jpmml-integration
productized_repositories:
- name: drools
git:
Expand Down
4 changes: 4 additions & 0 deletions .ci/jenkins/config/main.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ ecosystem:
- name: drools
regexs:
- drools.*
- name: kie-jpmml-integration
ignore_productization: true
regexs:
- kie-jpmml-integration.*
- name: kie-benchmarks
ignore_release: true
ignore_productization: true
Expand Down
5 changes: 4 additions & 1 deletion .ci/jenkins/dsl/jobs.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ void setupProjectNightlyJob() {
JENKINS_EMAIL_CREDS_ID: "${JENKINS_EMAIL_CREDS_ID}",

GIT_BRANCH_NAME: "${GIT_BRANCH}",

DROOLS_STREAM: getDroolsStream(),
])
KogitoJobTemplate.createPipelineJob(this, jobParams)?.with {
Expand Down Expand Up @@ -177,6 +177,9 @@ Map getMultijobPRConfig(JenkinsFolder jobFolder) {
env : [
KOGITO_EXAMPLES_SUBFOLDER_POM: 'serverless-workflow-examples/',
],
], [
id: 'kie-jpmml-integration',
repository: 'kie-jpmml-integration'
]
]
]
Expand Down
17 changes: 17 additions & 0 deletions .ci/jenkins/project/Jenkinsfile.nightly
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import org.jenkinsci.plugins.workflow.libs.Library

// Deploy jobs
DROOLS_DEPLOY = 'drools.build-and-deploy'
KIE_JPMML_INTEGRATION_DEPLOY = 'kie-jpmml-integration.build-and-deploy'

// Map of executed jobs
// See https://javadoc.jenkins.io/plugin/workflow-support/org/jenkinsci/plugins/workflow/support/steps/build/RunWrapper.html
Expand Down Expand Up @@ -59,6 +60,22 @@ pipeline {
}
}
}
stage('Build & Deploy KIE jpmml integration') {
steps {
script {
def buildParams = getDefaultBuildParams()
addSkipTestsParam(buildParams)
addSkipIntegrationTestsParam(buildParams)

buildJob(KIE_JPMML_INTEGRATION_DEPLOY, buildParams)
}
}
post {
failure {
addFailedStage(KIE_JPMML_INTEGRATION_DEPLOY)
}
}
}
}
post {
unsuccessful {
Expand Down
26 changes: 26 additions & 0 deletions .ci/jenkins/project/Jenkinsfile.release
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import org.jenkinsci.plugins.workflow.libs.Library
@Library('jenkins-pipeline-shared-libraries')_

droolsRepo = 'drools'
kieJpmmlIntegrationRepo = 'kie-jpmml-integration'

ARTIFACTS_STAGING_STAGE = 'stage.artifacts.staging'
ARTIFACTS_RELEASE_STAGE = 'stage.artifacts.release'
Expand Down Expand Up @@ -71,6 +72,17 @@ pipeline {
}
}

stage('Build & Deploy KIE jpmml integration') {
steps {
script {
def buildParams = getDefaultBuildParams()
addSkipTestsParam(buildParams)

buildJob(getDeployJobName(kieJpmmlIntegrationRepo), buildParams)
}
}
}

stage('Artifacts\' staging finalization') {
steps {
script {
Expand Down Expand Up @@ -114,6 +126,20 @@ pipeline {
}
}

stage('Promote KIE jpmml integration') {
when {
expression { return isJobConsideredOk(getDeployJobName(kieJpmmlIntegrationRepo)) }
}
steps {
script {
def buildParams = getDefaultBuildParams()
addDeployBuildUrlParam(buildParams, getDeployJobName(kieJpmmlIntegrationRepo))

buildJob(getPromoteJobName(kieJpmmlIntegrationRepo), buildParams)
}
}
}

stage('Setup next snapshot version') {
steps {
script {
Expand Down
15 changes: 15 additions & 0 deletions .ci/jenkins/project/Jenkinsfile.setup-branch
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,21 @@ pipeline {
}
}

stage('Init KIE jpmml integration') {
steps {
script {
def buildParams = getDefaultBuildParams()
addDroolsVersionParam(buildParams)
buildJob('kie-jpmml-integration', buildParams)
}
}
post {
failure {
addFailedStage('kie-jpmml-integration')
}
}
}

// Launch the nightly to deploy all artifacts from the branch
stage('Launch the nightly') {
when {
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/pr-downstream.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
timeout-minutes: 180
strategy:
matrix:
job_name: [ kogito-runtimes, kogito-apps, kogito-quarkus-examples, kogito-springboot-examples, serverless-workflow-examples ]
job_name: [ kogito-runtimes, kogito-apps, kogito-quarkus-examples, kogito-springboot-examples, serverless-workflow-examples, kie-jpmml-integration ]
os: [ubuntu-latest]
java-version: [11]
maven-version: ['3.8.7']
Expand All @@ -39,6 +39,8 @@ jobs:
- job_name: serverless-workflow-examples
repository: kogito-examples
env_KOGITO_EXAMPLES_SUBFOLDER_POM: serverless-workflow-examples/
- job_name: kie-jpmml-integration
repository: kie-jpmml-integration
fail-fast: false
runs-on: ${{ matrix.os }}
name: ${{ matrix.job_name }} (${{ matrix.os }} / Java-${{ matrix.java-version }} / Maven-${{ matrix.maven-version }})
Expand Down

0 comments on commit 91d3e97

Please sign in to comment.