This is an automated email from the ASF dual-hosted git repository.

rantunes pushed a commit to branch main
in repository 
https://gitbox.apache.org/repos/asf/incubator-kie-tools-temporary-rnd-do-not-use.git


The following commit(s) were added to refs/heads/main by this push:
     new 0aec0b2d95 CI - Daily dev publish Jenkins job (#10)
0aec0b2d95 is described below

commit 0aec0b2d95d36f3d1f17da69c2b4cdcbcb3bf73b
Author: Rodrigo Antunes <[email protected]>
AuthorDate: Thu Nov 23 18:38:25 2023 -0300

    CI - Daily dev publish Jenkins job (#10)
    
    * CI - Daily dev publish Jenkins job
    
    * Fix artifacts and build date
    
    * Add env debug
    
    * remove env debug
    
    * Small code improvements
    
    * remove unecessary code
    
    * Start using the kie-tools-pipeline-lib utilities
    
    * Fix identation
    
    * Reflect library changes
    
    * Use shared scripts
    
    * Use shared scripts
    
    * Update image tag
    
    * Update Jenkinsfile name
    
    * Add DOCKER_CONFIG env var
---
 .ci/jenkins/Jenkinsfile.daily-dev-publish | 417 ++++++++++++++++++++++++++++++
 1 file changed, 417 insertions(+)

diff --git a/.ci/jenkins/Jenkinsfile.daily-dev-publish 
b/.ci/jenkins/Jenkinsfile.daily-dev-publish
new file mode 100644
index 0000000000..138d3daefc
--- /dev/null
+++ b/.ci/jenkins/Jenkinsfile.daily-dev-publish
@@ -0,0 +1,417 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+pipeline {
+    agent {
+        docker {
+            image 'quay.io/kie-tools/kie-tools-ci-build:latest'
+            args '--shm-size=2g --privileged --group-add docker'
+        }
+    }
+
+    options {
+        timeout(time: 240, unit: 'MINUTES')
+    }
+
+    environment {
+        KIE_SANDBOX_EXTENDED_SERVICES_VERSION = '0.0.0'
+
+        KIE_TOOLS_BUILD__buildContainerImages = 'true'
+        KIE_TOOLS_BUILD__runLinters = 'false'
+        KIE_TOOLS_BUILD__runTests = 'false'
+        KIE_TOOLS_BUILD__runEndToEndTests = 'false'
+
+        DMN_DEV_DEPLOYMENT_BASE_IMAGE__registry = 'quay.io'
+        DMN_DEV_DEPLOYMENT_BASE_IMAGE__account = 'kie-tools'
+        DMN_DEV_DEPLOYMENT_BASE_IMAGE__name = 'dmn-dev-deployment-base-image'
+        DMN_DEV_DEPLOYMENT_BASE_IMAGE__buildTags = 'daily-dev'
+
+        ONLINE_EDITOR__dmnDevDeploymentBaseImageRegistry = 'quay.io'
+        ONLINE_EDITOR__dmnDevDeploymentBaseImageAccount = 'kie-tools'
+        ONLINE_EDITOR__dmnDevDeploymentBaseImageName = 
'dmn-dev-deployment-base-image'
+        ONLINE_EDITOR__dmnDevDeploymentBaseImageTag = 'daily-dev'
+        ONLINE_EDITOR__corsProxyUrl = 
'https://daily-dev-cors-proxy-kie-sandbox.rhba-0ad6762cc85bcef5745bb684498c2436-0000.us-south.containers.appdomain.cloud'
+
+        EXTENDED_SERVICES__kieSandboxUrl = 
'https://kiegroup.github.io/kogito-online/dev'
+
+        KIE_SANDBOX__imageRegistry = 'quay.io'
+        KIE_SANDBOX__imageAccount = 'kie-tools'
+        KIE_SANDBOX__imageName = 'kie-sandbox-image'
+        KIE_SANDBOX__imageBuildTags = 'daily-dev'
+
+        KIE_SANDBOX_EXTENDED_SERVICES__imageRegistry = 'quay.io'
+        KIE_SANDBOX_EXTENDED_SERVICES__imageAccount = 'kie-tools'
+        KIE_SANDBOX_EXTENDED_SERVICES__imageName = 
'kie-sandbox-extended-services-image'
+        KIE_SANDBOX_EXTENDED_SERVICES__imageBuildTags = 'daily-dev'
+
+        CORS_PROXY_IMAGE__imageRegistry = 'quay.io'
+        CORS_PROXY_IMAGE__imageAccount = 'kie-tools'
+        CORS_PROXY_IMAGE__imageName = 'cors-proxy-image'
+        CORS_PROXY_IMAGE__imageBuildTags = 'daily-dev'
+
+        OPENSHIFT_NAMESPACE = 'kie-sandbox'
+        OPENSHIFT_PART_OF = 'daily-dev-kie-sandbox-app'
+        DEPLOY_TAG = 'daily-dev'
+
+        DASHBUILDER__viewerImageRegistry = 'quay.io'
+        DASHBUILDER__viewerImageAccount = 'kie-tools'
+        DASHBUILDER__viewerImageName = 'dashbuilder-viewer-image'
+        DASHBUILDER__viewerImageBuildTags = 'daily-dev'
+
+        SERVERLESS_LOGIC_WEB_TOOLS__dashbuilderViewerImageTag = 'daily-dev'
+        SERVERLESS_LOGIC_WEB_TOOLS__swfBuilderImageRegistry = 'quay.io'
+        SERVERLESS_LOGIC_WEB_TOOLS__swfBuilderImageAccount = 'kie-tools'
+        SERVERLESS_LOGIC_WEB_TOOLS__swfBuilderImageName = 
'serverless-logic-web-tools-swf-builder-image'
+        SERVERLESS_LOGIC_WEB_TOOLS__swfBuilderImageTag = 'daily-dev'
+        SERVERLESS_LOGIC_WEB_TOOLS__swfBuilderImageBuildTags = 'daily-dev'
+        SERVERLESS_LOGIC_WEB_TOOLS__baseBuilderImageRegistry = 'quay.io'
+        SERVERLESS_LOGIC_WEB_TOOLS__baseBuilderImageAccount = 'kie-tools'
+        SERVERLESS_LOGIC_WEB_TOOLS__baseBuilderImageName = 
'serverless-logic-web-tools-base-builder-image'
+        SERVERLESS_LOGIC_WEB_TOOLS__baseBuilderImageTag = 'daily-dev'
+        SERVERLESS_LOGIC_WEB_TOOLS__baseBuilderImageBuildTags = 'daily-dev'
+        SERVERLESS_LOGIC_WEB_TOOLS__swfDevModeImageRegistry = 'quay.io'
+        SERVERLESS_LOGIC_WEB_TOOLS__swfDevModeImageAccount = 'kie-tools'
+        SERVERLESS_LOGIC_WEB_TOOLS__swfDevModeImageName = 
'serverless-logic-web-tools-swf-dev-mode-image'
+        SERVERLESS_LOGIC_WEB_TOOLS__swfDevModeImageTag = 'daily-dev'
+        SERVERLESS_LOGIC_WEB_TOOLS__swfDevModeImageBuildTags = 'daily-dev'
+        SERVERLESS_LOGIC_WEB_TOOLS__corsProxyUrl = 
'https://daily-dev-cors-proxy-kie-sandbox.rhba-0ad6762cc85bcef5745bb684498c2436-0000.us-south.containers.appdomain.cloud'
+
+        BUILD_DATE = sh(script: "echo `date +'%Y-%m-%d %T'`", returnStdout: 
true).trim()
+
+        DOCKER_CONFIG = "${WORKSPACE}/.docker"
+    }
+
+    stages {
+        stage('Load local shared scripts') {
+            steps {
+                script {
+                    pipelineVars = load 
'.ci/jenkins/shared-scripts/pipelineVars.groovy'
+                    buildUtils = load 
'.ci/jenkins/shared-scripts/buildUtils.groovy'
+                    githubUtils = load 
'.ci/jenkins/shared-scripts/githubUtils.groovy'
+                    openShiftUtils = load 
'.ci/jenkins/shared-scripts/openShiftUtils.groovy'
+                    dockerUtils = load 
'.ci/jenkins/shared-scripts/dockerUtils.groovy'
+                }
+            }
+        }
+
+        stage('Start required services for build and tests (DinD, Xvfb, 
Fluxbox)') {
+            steps {
+                script {
+                    buildUtils.startRequiredServices()
+                }
+            }
+        }
+
+        stage('Clean workspace before build') {
+            steps {
+                cleanWs(deleteDirs: true, disableDeferredWipeout: true)
+            }
+        }
+
+        stage('Checkout kie-tools') {
+            steps {
+                dir('kie-tools') {
+                    checkout scm
+                }
+            }
+        }
+
+        stage('Output version') {
+            steps {
+                dir('kie-tools') {
+                    script {
+                        env.VERSION = sh(returnStdout: true, script: 
"#!/bin/bash -el \n node -e 
\"console.log(require('./package.json').version);\"").trim()
+                    }
+                }
+            }
+        }
+
+        stage('Setup PNPM') {
+            steps {
+                dir('kie-tools') {
+                    script {
+                        buildUtils.setupPnpm()
+                    }
+                }
+            }
+        }
+
+        stage('PNPM Bootstrap') {
+            steps {
+                dir('kie-tools') {
+                    script {
+                        buildUtils.pnpmBootstrap()
+                    }
+                }
+            }
+        }
+
+        stage('Build') {
+            steps {
+                dir('kie-tools') {
+                    sh """#!/bin/bash -el
+                    export WEBPACK__minimize=true
+                    export WEBPACK__tsLoaderTranspileOnly=false
+                    export 
CHROME_EXTENSION__routerTargetOrigin=https://kiegroup.github.io
+                    export 
CHROME_EXTENSION__routerRelativePath=kogito-online/dev/editors/
+                    export 
SWF_CHROME_EXTENSION__routerTargetOrigin=https://kiegroup.github.io
+                    export 
SWF_CHROME_EXTENSION__routerRelativePath=kogito-online/dev/editors/
+                    export 
ONLINE_EDITOR__extendedServicesDownloadUrlLinux=https://github.com/kiegroup/kie-tools/releases/download/${env.KIE_SANDBOX_EXTENDED_SERVICES_VERSION}/kie_sandbox_extended_services_linux_${env.KIE_SANDBOX_EXTENDED_SERVICES_VERSION}.tar.gz
+                    export 
ONLINE_EDITOR__extendedServicesDownloadUrlMacOs=https://github.com/kiegroup/kie-tools/releases/download/${env.KIE_SANDBOX_EXTENDED_SERVICES_VERSION}/kie_sandbox_extended_services_macos_${env.KIE_SANDBOX_EXTENDED_SERVICES_VERSION}.dmg
+                    export 
ONLINE_EDITOR__extendedServicesDownloadUrlWindows=https://github.com/kiegroup/kie-tools/releases/download/${env.KIE_SANDBOX_EXTENDED_SERVICES_VERSION}/kie_sandbox_extended_services_windows_${env.KIE_SANDBOX_EXTENDED_SERVICES_VERSION}.exe
+                    export 
ONLINE_EDITOR__extendedServicesCompatibleVersion=${env.KIE_SANDBOX_EXTENDED_SERVICES_VERSION}
+                    export ONLINE_EDITOR__buildInfo="${env.VERSION} 
(daily-dev) @ ${env.GIT_COMMIT} (${env.BUILD_DATE})"
+                    export 
SERVERLESS_LOGIC_WEB_TOOLS__buildInfo="${env.VERSION} (daily-dev) @ 
${env.GIT_COMMIT} (${env.BUILD_DATE})"
+                    pnpm -r --workspace-concurrency=1 build:prod
+                    """.trim()
+                }
+            }
+        }
+
+        stage('Push dmn-dev-deployment-base-image to quay.io') {
+            steps {
+                script {
+                    dockerUtils.pushImageToRegistry(
+                        
"${env.DMN_DEV_DEPLOYMENT_BASE_IMAGE__registry}/${env.DMN_DEV_DEPLOYMENT_BASE_IMAGE__account}",
+                        "${env.DMN_DEV_DEPLOYMENT_BASE_IMAGE__name}",
+                        "${env.DMN_DEV_DEPLOYMENT_BASE_IMAGE__buildTags}",
+                        "${pipelineVars.quayPushCredentialsId}"
+                    )
+                }
+            }
+        }
+
+        stage('Push kie-sandbox-extended-services-image to quay.io') {
+            steps {
+                script {
+                    dockerUtils.pushImageToRegistry(
+                        
"${env.KIE_SANDBOX_EXTENDED_SERVICES__imageRegistry}/${env.KIE_SANDBOX_EXTENDED_SERVICES__imageAccount}",
+                        "${env.KIE_SANDBOX_EXTENDED_SERVICES__imageName}",
+                        "${env.KIE_SANDBOX_EXTENDED_SERVICES__imageBuildTags}",
+                        "${pipelineVars.quayPushCredentialsId}"
+                    )
+                }
+            }
+        }
+
+        stage('Deploy kie-sandbox-extended-services-image to OpenShift') {
+            steps {
+                script {
+                    appName = 'daily-dev-kie-sandbox-extended-services'
+                    openShiftUtils.createOrUpdateApp(
+                        "${env.OPENSHIFT_NAMESPACE}",
+                        "${appName}",
+                        "${env.DEPLOY_TAG}",
+                        
"${env.KIE_SANDBOX_EXTENDED_SERVICES__imageRegistry}/${env.KIE_SANDBOX_EXTENDED_SERVICES__imageAccount}/${env.KIE_SANDBOX_EXTENDED_SERVICES__imageName}:${env.DEPLOY_TAG}",
+                        "${env.OPENSHIFT_PART_OF}",
+                        'golang',
+                        "${pipelineVars.openshiftCredentialsId}"
+                    )
+                    env.KIE_SANDBOX_EXTENDED_SERVICES_URL = 
openShiftUtils.getAppRoute("${env.OPENSHIFT_NAMESPACE}", "${appName}", 
"${pipelineVars.openshiftCredentialsId}")
+                }
+            }
+        }
+
+        stage('Push cors-proxy-image to quay.io') {
+            steps {
+                script {
+                    dockerUtils.pushImageToRegistry(
+                        
"${env.CORS_PROXY_IMAGE__imageRegistry}/${env.CORS_PROXY_IMAGE__imageAccount}",
+                        "${env.CORS_PROXY_IMAGE__imageName}",
+                        "${env.CORS_PROXY_IMAGE__imageBuildTags}",
+                        "${pipelineVars.quayPushCredentialsId}"
+                    )
+                }
+            }
+        }
+
+        stage('Deploy cors-proxy-image to OpenShift') {
+            steps {
+                script {
+                    appName = 'daily-dev-cors-proxy'
+                    openShiftUtils.createOrUpdateApp(
+                        "${env.OPENSHIFT_NAMESPACE}",
+                        "${appName}",
+                        "${env.DEPLOY_TAG}",
+                        
"${env.CORS_PROXY_IMAGE__imageRegistry}/${env.CORS_PROXY_IMAGE__imageAccount}/${env.CORS_PROXY_IMAGE__imageName}:${env.DEPLOY_TAG}",
+                        "${env.OPENSHIFT_PART_OF}",
+                        'nodejs',
+                        "${pipelineVars.openshiftCredentialsId}"
+                    )
+                    env.KIE_SANDBOX_CORS_PROXY_URL = 
openShiftUtils.getAppRoute("${env.OPENSHIFT_NAMESPACE}", "${appName}", 
"${pipelineVars.openshiftCredentialsId}")
+                }
+            }
+        }
+
+        stage('Push kie-sandbox-image to quay.io') {
+            steps {
+                script {
+                    dockerUtils.pushImageToRegistry(
+                        
"${env.KIE_SANDBOX__imageRegistry}/${env.KIE_SANDBOX__imageAccount}",
+                        "${env.KIE_SANDBOX__imageName}",
+                        "${env.KIE_SANDBOX__imageBuildTags}",
+                        "${pipelineVars.quayPushCredentialsId}"
+                    )
+                }
+            }
+        }
+
+        stage('Prepare environment variables for OpenShift deployment') {
+            steps {
+                sh """#!/bin/bash -el
+                echo 
"KIE_SANDBOX_EXTENDED_SERVICES_URL=${env.KIE_SANDBOX_EXTENDED_SERVICES_URL}" >> 
deployment.env
+                echo 
"KIE_SANDBOX_CORS_PROXY_URL=${env.KIE_SANDBOX_CORS_PROXY_URL}" >> deployment.env
+                """.trim()
+            }
+        }
+
+        stage('Deploy kie-sandbox-image to OpenShift') {
+            steps {
+                script {
+                    openShiftUtils.createOrUpdateApp(
+                        "${env.OPENSHIFT_NAMESPACE}",
+                        'daily-dev-kie-sandbox',
+                        "${env.DEPLOY_TAG}",
+                        
"${env.KIE_SANDBOX__imageRegistry}/${env.KIE_SANDBOX__imageAccount}/${env.KIE_SANDBOX__imageName}:${env.DEPLOY_TAG}",
+                        "${env.OPENSHIFT_PART_OF}",
+                        'js',
+                        "${pipelineVars.openshiftCredentialsId}",
+                        './deployment.env'
+                    )
+                }
+            }
+        }
+
+        stage('Push serverless-logic-web-tools-swf-builder-image to quay.io') {
+            steps {
+                script {
+                    dockerUtils.pushImageToRegistry(
+                        
"${env.SERVERLESS_LOGIC_WEB_TOOLS__swfBuilderImageRegistry}/${env.SERVERLESS_LOGIC_WEB_TOOLS__swfBuilderImageAccount}",
+                        
"${env.SERVERLESS_LOGIC_WEB_TOOLS__swfBuilderImageName}",
+                        
"${env.SERVERLESS_LOGIC_WEB_TOOLS__swfBuilderImageBuildTags}",
+                        "${pipelineVars.quayPushCredentialsId}"
+                    )
+                }
+            }
+        }
+
+        stage('Push serverless-logic-web-tools-base-builder-image to quay.io') 
{
+            steps {
+                script {
+                    dockerUtils.pushImageToRegistry(
+                        
"${env.SERVERLESS_LOGIC_WEB_TOOLS__baseBuilderImageRegistry}/${env.SERVERLESS_LOGIC_WEB_TOOLS__baseBuilderImageAccount}",
+                        
"${env.SERVERLESS_LOGIC_WEB_TOOLS__baseBuilderImageName}",
+                        
"${env.SERVERLESS_LOGIC_WEB_TOOLS__baseBuilderImageBuildTags}",
+                        "${pipelineVars.quayPushCredentialsId}"
+                    )
+                }
+            }
+        }
+
+        stage('Push serverless-logic-web-tools-swf-dev-mode-image to quay.io') 
{
+            steps {
+                script {
+                    dockerUtils.pushImageToRegistry(
+                        
"${env.SERVERLESS_LOGIC_WEB_TOOLS__swfDevModeImageRegistry}/${env.SERVERLESS_LOGIC_WEB_TOOLS__swfDevModeImageAccount}",
+                        
"${env.SERVERLESS_LOGIC_WEB_TOOLS__swfDevModeImageName}",
+                        
"${env.SERVERLESS_LOGIC_WEB_TOOLS__swfDevModeImageBuildTags}",
+                        "${pipelineVars.quayPushCredentialsId}"
+                    )
+                }
+            }
+        }
+
+        stage('Push dashbuilder-viewer-image to quay.io') {
+            steps {
+                script {
+                    dockerUtils.pushImageToRegistry(
+                        
"${env.DASHBUILDER__viewerImageRegistry}/${env.DASHBUILDER__viewerImageAccount}",
+                        "${env.DASHBUILDER__viewerImageName}",
+                        "${env.DASHBUILDER__viewerImageBuildTags}",
+                        "${pipelineVars.quayPushCredentialsId}"
+                    )
+                }
+            }
+        }
+
+        stage('Update kogito-online resources') {
+            steps {
+                dir('kogito-online') {
+                    script {
+                        githubUtils.checkoutRepo(
+                            'https://github.com/kiegroup/kogito-online.git',
+                            'gh-pages',
+                            "${pipelineVars.kieToolsBotGithubCredentialsId}"
+                        )
+
+                        sh """#!/bin/bash -el
+                        git config --global user.email '[email protected]'
+                        git config --global user.name 'KIE Tools Bot 
(kiegroup)'
+                        git checkout gh-pages
+                        rm -rf dev && mkdir -p dev/editors
+                        cp -RL ../kie-tools/packages/stunner-editors/dist/dmn 
dev/editors/
+                        cp -RL ../kie-tools/packages/stunner-editors/dist/bpmn 
dev/editors/
+                        cp -RL 
../kie-tools/packages/stunner-editors/dist/scesim dev/editors/
+                        cp -r ../kie-tools/packages/online-editor/dist/* dev/
+                        rm -rf dev/gwt-editors
+                        ln -s editors dev/gwt-editors
+                        git add . && git commit -m "KIE Tools Daily Dev Build 
resources - ${env.BUILD_DATE}" || echo 'No changes.'
+                        """.trim()
+
+                        withCredentials([usernamePassword(credentialsId: 
"${pipelineVars.kieToolsBotGithubCredentialsId}", usernameVariable: 'GH_USER', 
passwordVariable: 'GH_PASSWORD')]) {
+                            sh('set +x && git push 
https://$GH_USER:[email protected]/kiegroup/kogito-online.git gh-pages')
+                        }
+                    }
+                }
+            }
+        }
+
+        stage('Update serverless-logic-sandbox-deployment') {
+            steps {
+                dir('serverless-logic-sandbox-deployment') {
+                    script {
+                        githubUtils.checkoutRepo(
+                            
'https://github.com/kiegroup/serverless-logic-sandbox-deployment.git',
+                            'gh-pages',
+                            "${pipelineVars.kieToolsBotGithubCredentialsId}"
+                        )
+
+                        sh """#!/bin/bash -el
+                        git config --global user.email '[email protected]'
+                        git config --global user.name 'KIE Tools Bot 
(kiegroup)'
+                        git checkout gh-pages
+                        rm -rf dev && mkdir dev
+                        cp -r 
../kie-tools/packages/serverless-logic-web-tools/dist/* dev/
+                        git add . && git commit -m "KIE Tools Daily Dev Build 
resources - ${env.BUILD_DATE}" || echo 'No changes.'
+                        """.trim()
+
+                        withCredentials([usernamePassword(credentialsId: 
"${pipelineVars.kieToolsBotGithubCredentialsId}", usernameVariable: 'GH_USER', 
passwordVariable: 'GH_PASSWORD')]) {
+                            sh('set +x && git push 
https://$GH_USER:[email protected]/kiegroup/serverless-logic-sandbox-deployment.git
 gh-pages')
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    post {
+        always {
+            archiveArtifacts artifacts: 
"kie-tools/packages/serverless-workflow-vscode-extension/dist/serverless_workflow_vscode_extension_${env.VERSION}.vsix,
 
kie-tools/packages/vscode-extension-dashbuilder-editor/dist/vscode_extension_dashbuilder_editor_${env.VERSION}.vsix,
 
kie-tools/packages/kie-editors-dev-vscode-extension/dist/kie_editors_dev_vscode_extension_${env.VERSION}.vsix,
 
kie-tools/packages/chrome-extension-pack-kogito-kie-editors/dist/chrome_extension_kogito_kie_editors_${e
 [...]
+
+            cleanWs(deleteDirs: true, disableDeferredWipeout: true)
+        }
+    }
+}


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to