-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathWindows-JenkinsFile
66 lines (57 loc) · 1.84 KB
/
Windows-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
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
pipeline {
agent any
tools{
jdk 'JDK21'
maven 'Maven3'
}
stages{
stage("Git Checkout"){
steps{
git branch: 'main', changelog: false, poll: false, url: 'https://github.com/dorbanianas/devops-presentation.git'
}
}
stage("Build"){
steps {
bat "mvn clean package"
}
}
stage("Sonarqube Analysis "){
steps{
bat """
mvn sonar:sonar -Dsonar.url=http://localhost:9000/ -Dsonar.login=squ_72258a66a1bdd1e1e12c47858ca2d253ceb758ad -Dsonar.projectName=Devops \
-Dsonar.java.binaries=. \
-Dsonar.projectKey=Devops
"""
}
}
// stage("Docker build "){
// steps{
// bat "docker build -t devopspresentation/myapp:latest ."
// }
// }
stage("Docker login"){
steps {
withCredentials([string(credentialsId: 'dockerpresentation', variable: 'dockerhubpwd')]) {
bat "docker login -u dockerpresentation -p ${dockerhubpwd}"
}
}
}
stage("Docker push"){
steps {
bat """
docker tag devopspresentation/myapp:latest dockerpresentation/myapp
docker push dockerpresentation/myapp
"""
}
}
stage("Docker run"){
steps {
bat """
docker stop myapp
docker rm myapp
docker run --name myapp -d -p 8000:8080 dockerpresentation/myapp
"""
}
}
}
}