-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathJenkinsfile
More file actions
88 lines (88 loc) · 2.71 KB
/
Jenkinsfile
File metadata and controls
88 lines (88 loc) · 2.71 KB
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
pipeline {
parameters {
string(
name: 'TEST_K8S_IP',
defaultValue: '10.3.132.116',
description: 'K8s setup IP address to test on',
trim: true
)
}
options {
disableConcurrentBuilds()
}
agent {
node {
label 'solutions-126'
}
}
environment {
TESTRAIL_URL = 'https://testrail.nexenta.com/testrail'
TESTRAIL = credentials('solutions-napalm')
}
stages {
stage('Build') {
steps {
sh 'make container-build'
}
}
stage('Tests [unit]') {
steps {
echo "here it will be unit tests"
}
}
stage('Tests [csi-sanity]') {
steps {
sh 'make test-csi-sanity-container'
}
}
stage('Push [local registry]') {
steps {
sh 'make container-push-local'
}
}
stage('Tests [local registry]') {
steps {
sh "TEST_K8S_IP=${params.TEST_K8S_IP} TESTRAIL_URL=${TESTRAIL_URL} TESTRAIL_USR=${TESTRAIL_USR} TESTRAIL_PSWD=${TESTRAIL_PSW} make test-e2e-k8s-local-image-container"
}
}
stage('Push [hub.docker.com]') {
when {
anyOf {
branch 'master'
branch pattern: '\\d\\.\\d\\.\\d', comparator: 'REGEXP'
}
}
environment {
DOCKER = credentials('docker-hub-credentials')
}
steps {
sh '''
docker login -u ${DOCKER_USR} -p ${DOCKER_PSW};
make container-push-remote;
'''
}
}
stage('Tests [k8s hub.docker.com]') {
when {
anyOf {
branch 'master'
branch pattern: '\\d\\.\\d\\.\\d', comparator: 'REGEXP'
}
}
steps {
sh "TEST_K8S_IP=${params.TEST_K8S_IP} TESTRAIL_URL=${TESTRAIL_URL} TESTRAIL_USR=${TESTRAIL_USR} TESTRAIL_PSWD=${TESTRAIL_PSW} make test-e2e-k8s-remote-image-container"
}
}
}
post {
success {
slackSend color: "#317a3b", message: "${env.JOB_NAME} ${env.BUILD_NUMBER} (<${env.BUILD_URL}|Open>) - build status is success"
}
failure {
slackSend color: "#e02514", message: "${env.JOB_NAME} ${env.BUILD_NUMBER} (<${env.BUILD_URL}|Open>) - build status is failed"
}
aborted {
slackSend color: "#7a7a7a", message: "${env.JOB_NAME} ${env.BUILD_NUMBER} (<${env.BUILD_URL}|Open>) - build status is aborted"
}
}
}