diff options
author | Boon Khai Ng <boon.khai.ng@intel.com> | 2022-08-16 03:11:58 +0800 |
---|---|---|
committer | Lokanathan, Raaj <raaj.lokanathan@intel.com> | 2022-10-11 14:41:50 +0800 |
commit | f3e61b4c1a10f2833290f2ce5cfd6582ecb8c607 (patch) | |
tree | 2480604d04bb2031878ebef59759e30571c98d72 | |
parent | 89e6036a576a007f8b0421f050ae708bbf504bcf (diff) | |
download | u-boot-socfpga-f3e61b4c1a10f2833290f2ce5cfd6582ecb8c607.tar.gz |
jenkins: Enable PR CI/CD
Added .jenkins forlder to enable build status
check in Pull Request PRcoess. This is just a
downstream patch only needed as part of PR Process
Signed-off-by: Boon Khai Ng <boon.khai.ng@intel.com>
-rw-r--r-- | .jenkins/Jenkinsfile | 242 |
1 files changed, 242 insertions, 0 deletions
diff --git a/.jenkins/Jenkinsfile b/.jenkins/Jenkinsfile new file mode 100644 index 0000000000..99f174fcf2 --- /dev/null +++ b/.jenkins/Jenkinsfile @@ -0,0 +1,242 @@ +#!/usr/bin/env groovy +def linuxBuildStageLabel = "Linux-Build-${UUID.randomUUID().toString()}" +def jenkinsSlaveContainerName = 'jnlp' +def jenkinsSlaveImage = 'amr-registry-pre.caas.intel.com/pse-pswe-software-ba/jenkins/jnlp-slave' +def buildNumber = currentBuild.number +containerImage ='' + +def cloudName = 'kubernetes_embedded' +def containerName = 'embedded' + +pipeline { + agent { + node { + label 'LinuxHost' + } + } + + stages { + + stage("Init") { + agent { + kubernetes { + cloud cloudName + label linuxBuildStageLabel + yaml """ +kind: Pod +apiVersion: v1 +spec: + securityContext: + runAsUser: 42554 + runAsGroup: 20927 + fsGroup: 15902 + volumes: + - name: "sys-gsrd-data" + persistentVolumeClaim: + claimName: "sys-gsrd-data" + readOnly: false + - name: "sys-gsrd-home" + persistentVolumeClaim: + claimName: "sys-gsrd-home" + readOnly: false + - name: "sys-gsrd-work" + persistentVolumeClaim: + claimName: "sys-gsrd-work" + readOnly: false + - name: "swbldarchive2" + persistentVolumeClaim: + claimName: "swbldarchive2" + readOnly: false + - name: "swbldreleases1" + persistentVolumeClaim: + claimName: "swbldreleases1" + readOnly: true + - name: "etools" + persistentVolumeClaim: + claimName: "etools" + readOnly: true + - name: "itoolsubuntu" + persistentVolumeClaim: + claimName: "itoolsubuntu" + readOnly: true + - name: "ecnetbatch" + persistentVolumeClaim: + claimName: "ecnetbatch" + readOnly: true + - name: "sclocal" + persistentVolumeClaim: + claimName: "sclocal" + readOnly: true + - name: "genadm" + persistentVolumeClaim: + claimName: "genadm" + readOnly: true + - name: "nbconf" + persistentVolumeClaim: + claimName: "nbconf" + readOnly: true + - name: "ctools" + persistentVolumeClaim: + claimName: "ctools" + readOnly: true + - name: "swbldreleases2" + persistentVolumeClaim: + claimName: "swbldreleases2" + readOnly: true + - name: "swbldreleases5" + persistentVolumeClaim: + claimName: "swbldreleases5" + readOnly: true + - name: "flowscommon" + persistentVolumeClaim: + claimName: "flowscommon" + readOnly: true + - name: "flowsppe" + persistentVolumeClaim: + claimName: "flowsppe" + readOnly: true + - name: "flowssw" + persistentVolumeClaim: + claimName: "flowssw" + readOnly: true + - name: "flowshw" + persistentVolumeClaim: + claimName: "flowshw" + readOnly: true + - name: "gsrdhome" + persistentVolumeClaim: + claimName: "gsrdhome" + readOnly: false + - name: "psgdata" + persistentVolumeClaim: + claimName: "psgdata" + readOnly: false + - name: "platvalhub" + persistentVolumeClaim: + claimName: "platvalhub" + readOnly: false + - name: "swbldops7" + persistentVolumeClaim: + claimName: "swbldops7" + readOnly: false + containers: + - name: ${jenkinsSlaveContainerName} + image: ${jenkinsSlaveImage} + tty: true + imagePullPolicy: Always + - name: ${containerName} + image: 'amr-registry-pre.caas.intel.com/pse-pswe-software-ba/embedded_kw:ubuntu20.04.3-sys-gsrd' + tty: true + imagePullPolicy: Always + restartPolicy: "Never" + resources: + limits: + cpu: "4" + memory: 5Gi + requests: + cpu: "4" + memory: 5Gi + volumeMounts: + - mountPath: "/nfs/site/disks/psg_data_41" + name: "sys-gsrd-data" + readOnly: false + - mountPath: "/nfs/site/home/sys_gsrd" + name: "sys-gsrd-home" + readOnly: false + - mountPath: "/nfs/sc/disks/swuser_work_sys_gsrd" + name: "sys-gsrd-work" + readOnly: false + - mountPath: "/nfs/site/disks/swbld_releases_1" + name: "swbldreleases1" + readOnly: true + - mountPath: "/nfs/site/disks/psg_ctools_1" + name: "ctools" + readOnly: true + - mountPath: "/nfs/site/disks/swbld_releases_2" + name: "swbldreleases2" + readOnly: true + - mountPath: "/nfs/site/disks/swbld_releases_5" + name: "swbldreleases5" + readOnly: true + - mountPath: "/nfs/site/disks/psg_flowscommon_1" + name: "flowscommon" + readOnly: true + - mountPath: "/nfs/sc/disks/psg_flowsppe_1" + name: "flowsppe" + readOnly: true + - mountPath: "/nfs/site/disks/psg_flowssw_1" + name: "flowssw" + readOnly: true + - mountPath: "/nfs/site/disks/psg_flowshw_1" + name: "flowshw" + readOnly: true + - mountPath: "/nfs/site/home/gsrd" + name: "gsrdhome" + readOnly: false + - mountPath: "/nfs/site/disks/psg_data_31" + name: "psgdata" + readOnly: false + - mountPath: "/nfs/sc/disks/swbld_ops_7" + name: "swbldops7" + readOnly: false + - mountPath: "/nfs/sc/disks/psg_lsf_1" + name: "nbconf" + readOnly: true + - mountPath: "/nfs/site/itools" + name: "itoolsubuntu" + readOnly: true + - mountPath: "/nfs/sc/gen/adm" + name: "genadm" + readOnly: true + - mountPath: "/nfs/sc/local" + name: "sclocal" + readOnly: true + - mountPath: "/nfs/sc/disks/ec_netbatch" + name: "ecnetbatch" + readOnly: true + - mountPath: "/nfs/sc/disks/swip_etools_1" + name: "etools" + readOnly: true + - mountPath: "/nfs/site/disks/swbld_archive_2" + name: "swbldarchive2" + readOnly: true + command: + - /bin/sh + args: + - -c + - cat +""" + } + } + steps { + container(containerName) { + script{ + try { + sh """#!/bin/bash -x + cd $WORKSPACE + git clone https://github.com/intel-sandbox/application.devops.github.pr.buildscript.git + cd application.devops.github.pr.buildscript + git checkout uboot-socfpga + cp * ../.jenkins + cd .. + chmod 755 .jenkins/buildScript_main.sh + .jenkins/buildScript_main.sh ${buildNumber} + + """ + } catch (Exception e) { + error 'Test error' + exit -1 + } + } + } + } + } + stage("Regtest") { + steps { + script { + build job: "Embedded_CI/u-boot-regtest", parameters: [string(name: 'JOB_NO_BUILD', value: String.valueOf(BUILD_NUMBER)), string(name: 'GIT_BRANCH_NAME', value: env.BRANCH_NAME)], wait: true + } + } + } + } +} |