-
Notifications
You must be signed in to change notification settings - Fork 1.3k
/
Copy pathJenkinsfile
36 lines (29 loc) · 1 KB
/
Jenkinsfile
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
pipeline{
agent any
tools{
maven 'maven3.8'
}
stages{
stage('Build Maven'){
steps{
checkout scmGit(branches: [[name: '*/main']], extensions: [], userRemoteConfigs: [[url: 'https://github.com/BilalHaiderRizvi/devops-automation']])
bat 'mvn clean install'
}
}
stage('Build Docker Image'){
steps{
script{
bat 'docker build -t haiderbilal/devops-integration .'
}
}
}
stage('Push Image To DockerHub'){
steps {
withCredentials([usernamePassword(credentialsId: 'docker-hub', usernameVariable: 'DOCKER_USERNAME', passwordVariable: 'DOCKER_PASSWORD')]) {
bat 'docker login -u %DOCKER_USERNAME% -p %DOCKER_PASSWORD%'
}
bat 'docker push haiderbilal/devops-integration:latest'
}
}
}
}