????

Your IP : 52.14.255.122


Current Path : /opt/cpanel/ea-ruby27/src/passenger-release-6.0.23/dev/ci/tests/rpm/
Upload File :
Current File : //opt/cpanel/ea-ruby27/src/passenger-release-6.0.23/dev/ci/tests/rpm/Jenkinsfile

def setupTest(enablerFlag, distribution, architecture, block) {
  if (enablerFlag) {
    node("linux && ${architecture}") {
      withEnv([
        "CACHE_DIR=${env.JENKINS_HOME}/cache/${env.JOB_NAME}/${distribution}-${architecture}",
        "DISTRIBUTION=${distribution}",
        "ARCHITECTURE=${architecture}"
      ], block)
    }
  } else {
    echo 'Test skipped.'
  }
}

pipeline {
  agent { node { label 'master-pipeline' } }

  options {
    buildDiscarder(logRotator(numToKeepStr: '10'))
    timeout(time: 45, unit: 'MINUTES')
    disableConcurrentBuilds()
    timestamps()
  }

  parameters {
    booleanParam(name: 'EL8', defaultValue: true, description: 'RHEL 8 tests')
    booleanParam(name: 'EL9', defaultValue: true, description: 'RHEL 9 tests')
  }

  stages {
    stage('Initialize') {
      steps {
        script {
          if (env.JOB_NAME.indexOf('Enterprise') != -1) {
            env.ENTERPRISE = '1'
          } else {
            env.ENTERPRISE = '0'
          }

          // For debugging purposes
          sh 'env | sort'
        }
      }
    }

    stage('Test') {
      steps {
        script {
          parallel(
            'el8 x86_64': {
              setupTest(params.EL8, 'el8', 'x86_64') {
                checkout scm
                sh './dev/ci/tests/rpm/run'
              }
            },
            'el9 x86_64': {
              setupTest(params.EL9, 'el9', 'x86_64') {
                checkout scm
                sh './dev/ci/tests/rpm/run'
              }
            },
            'el8 aarch64': {
              setupTest(params.EL8, 'el8', 'aarch64') {
                checkout scm
                sh './dev/ci/tests/rpm/run'
              }
            },
            'el9 aarch64': {
              setupTest(params.EL9, 'el9', 'aarch64') {
                checkout scm
                sh './dev/ci/tests/rpm/run'
              }
            }
          )
        }
      }
    }
  }
}