-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathJenkinsFile
39 lines (37 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
37
38
39
pipeline {
agent any
stages {
stage('Checkout') {
steps {
echo 'Checkout..'
checkout scm
}
}
stage('Environement') {
steps {
echo 'Env..'
sh 'git --version'
echo "Build number : env.BUILD_NUMBER"
sh 'docker -v'
sh 'docker ps'
}
}
stage('Test & Build') {
steps {
sh "docker build -t boxmetrics-cli ."
}
}
stage('Deploy') {
when { anyOf { branch 'master'; branch 'develop'; branch 'ci-cd' } }
steps {
echo 'Build and push'
withCredentials([string(credentialsId: 'REGISTRY', variable: 'REGISTRY')]) {
withDockerRegistry(credentialsId: 'ecr:us-west-2:aws-cred', url: 'https://${REGISTRY}') {
sh "docker tag boxmetrics-cli ${REGISTRY}/boxmetrics-cli:${env.BRANCH_NAME}-build-${env.BUILD_NUMBER}"
sh "docker push ${REGISTRY}/boxmetrics-cli:${env.BRANCH_NAME}-build-${env.BUILD_NUMBER}"
}
}
}
}
}
}