Skip to content
Snippets Groups Projects
Jenkinsfile 2.16 KiB
Newer Older
  • Learn to ignore specific revisions
  • pipeline {
     agent {
       kubernetes {
       cloud 'openshift'
         label 'maven-openjdk18'
    	 yaml """
    spec:
      containers:
      - name: jnlp
        image: quay.io/openshift/origin-jenkins-agent-maven:v4.0.0
        volumeMounts:
        - mountPath: "/tmp"
          name: "workspace-volume"
          readOnly: false
        workingDir: "/tmp"
        securityContext:
          privileged: false	
        tty: false
        resources:
          limits: 
            cpu: 200m
            memory: 2Gi
          requests: 
            cpu: 200m
            memory: 2Gi    
      restartPolicy: "Never"
    """		 
       }
     }
    
     environment { 
      
     //Cluster environment variable(CLS_ENV). Like QA, DEV, PERF, PROD etc.
     CLS_ENV = "dev"
     
     //Service variable(CORE_SERVICE). Like indexer, search, delivery, storage, legal etc.
     CORE_SERVICE = "legal"
     
     //GitHub repo URL credential ID for Environment variable files which saved as Secure text in Jenkins Credential.
     GIT_ENV_VAR_PATH_URL =  credentials('GitRepo-URL-For-Environment-variables') 
     
     //Personal token variable ID which saved as Secure text in Jenkins Credential. Like: GitHub-PRIVATE-TOKEN.
     PRIVATE_TOKEN  = credentials('GitHub-PRIVATE-TOKEN')
     
     def runShell =  sh (returnStdout: true, script: "curl --header 'PRIVATE-TOKEN: $PRIVATE_TOKEN' ''$GIT_ENV_VAR_PATH_URL'%2F'$CORE_SERVICE'_'$CLS_ENV'_env.json/raw?ref=master' -s -o env.json")
    
     }
    
       stages {
          stage('Integration_test') {
              environment {
                def readContent = readJSON file: 'env.json'
    
    			AUTH_USER_ACCESS = "${readContent['AUTH_USER_ACCESS']}"
    			AUTH_USER_ACCESS_PASSWORD = "${readContent['AUTH_USER_ACCESS_PASSWORD']}"
    			KEYCLOAK_CLIENT_ID = "${readContent['KEYCLOAK_CLIENT_ID']}"   
    			KEYCLOAK_CLIENT_SECRET = "${readContent['KEYCLOAK_CLIENT_SECRET']}"  
    			KEYCLOAK_REALM = "${readContent['KEYCLOAK_REALM']}"  
    			KEYCLOAK_URL = "${readContent['KEYCLOAK_URL']}"  
    			HOST_URL = "${readContent['HOST_URL']}"  
    			HOST_URL_dev = "${readContent['HOST_URL_dev']}"  
    			MY_TENANT = "${readContent['MY_TENANT']}"
    			MY_TENANT_PROJECT = "${readContent['MY_TENANT_PROJECT']}"
    
              }  
                steps {
                   script {
                      sh 'mvn -f testing/legal-test-ibm/pom.xml test'
                   }
                }
           }
        }
    
    }