Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
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'
}
}
}
}
}