-
Notifications
You must be signed in to change notification settings - Fork 28
Expand file tree
/
Copy pathJenkinsfile2
More file actions
33 lines (31 loc) · 1.77 KB
/
Jenkinsfile2
File metadata and controls
33 lines (31 loc) · 1.77 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
import groovy.json.JsonSlurper
node {
ws('netcore') {
stage('SCM') {
git branch: 'main', url: 'https://github.com/Stywar/netcore50-api-test'
}
stage('Build') {
dotnet_build();
}
stage('Docker') {
//bat(script: 'docker login --username %UsernameDockerHub% --password %PasswordDocker%', returnStdout: true);
bat(script: 'docker build -t antony0618/servicenet5 .', returnStdout: true);
bat(script: 'docker push antony0618/servicenet5', returnStdout: true);
}
stage('Deploy Dev') {
bat(script: 'az login --service-principal --username 2f514113-c8ab-4185-9c4e-de9e6c887e36 --password WsT8dFTf_gkEgW55k.4_jk4zoTft7V.Lzt --tenant 74343d69-5375-4c7a-8cc9-08986488c964', returnStdout: true);
bat(script: 'az account set --subscription "Developer"', returnStdout: true);
bat(script: 'az container restart --name microtestservice --resource-group jenkinsdevops', returnStdout: true);
}
stage('Deploy Prod') {
bat(script: 'az aks get-credentials --resource-group jenkinsdevops --name jenkins-noviembre21 & kubectl config get-contexts --kubeconfig=%KUBE_PATH_CONFIG%', returnStdout: true);
bat(script: 'kubectl config use-context jenkins-noviembre21 --kubeconfig=%KUBE_PATH_CONFIG%', returnStdout: true);
bat(script: 'Kubectl delete --all pods --kubeconfig=%KUBE_PATH_CONFIG% & kubectl apply -f k8s.yml --kubeconfig=%KUBE_PATH_CONFIG%', returnStdout: true);
}
}
}
def dotnet_build() {
bat(script: 'dotnet restore', returnStdout: true);
bat(script: 'dotnet build', returnStdout: true);
bat(script: 'dotnet test', returnStdout: true);
}