Update Jenkinsfile
This commit is contained in:
46
docker/Jenkinsfile
vendored
46
docker/Jenkinsfile
vendored
@@ -11,32 +11,32 @@ pipeline {
|
|||||||
agent any
|
agent any
|
||||||
|
|
||||||
stages {
|
stages {
|
||||||
stage('Cleanup Workspace') {
|
stage("Cleanup Workspace") {
|
||||||
steps {
|
steps {
|
||||||
// Using Workspace Cleanup Plugin (if installed and configured)
|
// Using Workspace Cleanup Plugin (if installed and configured)
|
||||||
cleanWs()
|
cleanWs()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
stage('Checkout') {
|
stage("Checkout") {
|
||||||
steps {
|
steps {
|
||||||
checkout([
|
checkout([
|
||||||
$class: 'GitSCM',
|
$class: "GitSCM",
|
||||||
branches: [[ name: '*/main' ]],
|
branches: [[ name: "*/main" ]],
|
||||||
userRemoteConfigs: [[
|
userRemoteConfigs: [[
|
||||||
url: 'https://github.com/Trance-0/NoteNextra',
|
url: "https://github.com/Trance-0/NoteNextra",
|
||||||
]]
|
]]
|
||||||
])
|
])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
stage('Build and test'){
|
stage("Build and test"){
|
||||||
parallel {
|
parallel {
|
||||||
stage('Build Math') {
|
stage("Build Math") {
|
||||||
steps {
|
steps {
|
||||||
script {
|
script {
|
||||||
echo "Building docker image ${registry}-math:${version}.${env.BUILD_ID}"
|
echo "Building docker image ${registry}-math:${version}.${env.BUILD_ID}"
|
||||||
def customImage = docker.build("${registry}-math:v${version}.${env.BUILD_ID}","-f ./docker/math/Dockerfile --no-cache --progress=plain .")
|
def customImage = docker.build("${registry}-math:v${version}.${env.BUILD_ID}","-f ./docker/math/Dockerfile --no-cache --progress=plain .")
|
||||||
echo "Logging in to docker hub"
|
echo "Logging in to docker hub"
|
||||||
// docker.withRegistry('https://registry.hub.docker.com', 'docker-hub-creds') {
|
// docker.withRegistry("https://registry.hub.docker.com", "docker-hub-creds") {
|
||||||
// echo "Pushing docker image ${registry}:v${version}.${env.BUILD_ID}"
|
// echo "Pushing docker image ${registry}:v${version}.${env.BUILD_ID}"
|
||||||
// customImage.push()
|
// customImage.push()
|
||||||
// }
|
// }
|
||||||
@@ -44,13 +44,13 @@ pipeline {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
stage('Build CSE') {
|
stage("Build CSE") {
|
||||||
steps {
|
steps {
|
||||||
script {
|
script {
|
||||||
echo "Building docker image ${registry}-cse:${version}.${env.BUILD_ID}"
|
echo "Building docker image ${registry}-cse:${version}.${env.BUILD_ID}"
|
||||||
def customImage = docker.build("${registry}-cse:v${version}.${env.BUILD_ID}","-f ./docker/cse/Dockerfile --no-cache --progress=plain -t .")
|
def customImage = docker.build("${registry}-cse:v${version}.${env.BUILD_ID}","-f ./docker/cse/Dockerfile --no-cache --progress=plain .")
|
||||||
echo "Logging in to docker hub"
|
echo "Logging in to docker hub"
|
||||||
// docker.withRegistry('https://registry.hub.docker.com', 'docker-hub-creds') {
|
// docker.withRegistry("https://registry.hub.docker.com", "docker-hub-creds") {
|
||||||
// echo "Pushing docker image ${registry}:v${version}.${env.BUILD_ID}"
|
// echo "Pushing docker image ${registry}:v${version}.${env.BUILD_ID}"
|
||||||
// customImage.push()
|
// customImage.push()
|
||||||
// }
|
// }
|
||||||
@@ -60,50 +60,50 @@ pipeline {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
stage('Cleanup Docker tags') {
|
stage("Cleanup Docker tags") {
|
||||||
steps {
|
steps {
|
||||||
script {
|
script {
|
||||||
echo "1. Stopping existing container"
|
echo "1. Stopping existing container"
|
||||||
sh 'docker compose -f ./docker/docker-compose.yaml down'
|
sh "docker compose -f ./docker/docker-compose.yaml down"
|
||||||
// Using Workspace Cleanup Plugin (if installed and configured)
|
// Using Workspace Cleanup Plugin (if installed and configured)
|
||||||
echo "2. Removing existing images"
|
echo "2. Removing existing images"
|
||||||
def imageNameMath = "${registry}-math:latest"
|
def imageNameMath = "${registry}-math:latest"
|
||||||
def imageNameCSE = "${registry}-cse:latest"
|
def imageNameCSE = "${registry}-cse:latest"
|
||||||
def oldImageIDMath = sh(
|
def oldImageIDMath = sh(
|
||||||
script: 'docker images -qf reference=\${imageNameMath}',
|
script: "docker images -qf reference=\${imageNameMath}",
|
||||||
returnStdout: true
|
returnStdout: true
|
||||||
)
|
)
|
||||||
def oldImageIDCSE = sh(
|
def oldImageIDCSE = sh(
|
||||||
script: 'docker images -qf reference=\${imageNameCSE}',
|
script: "docker images -qf reference=\${imageNameCSE}",
|
||||||
returnStdout: true
|
returnStdout: true
|
||||||
)
|
)
|
||||||
if ( "${oldImageIDMath}" != '' ) {
|
if ( "${oldImageIDMath}" != "" ) {
|
||||||
echo "Removing old image ${oldImageIDMath}"
|
echo "Removing old image ${oldImageIDMath}"
|
||||||
echo "Image Name: " + "${imageNameMath}"
|
echo "Image Name: " + "${imageNameMath}"
|
||||||
echo "Old Image: ${oldImageIDMath}"
|
echo "Old Image: ${oldImageIDMath}"
|
||||||
sh 'docker rmi ${oldImageIDMath}'
|
sh "docker rmi ${oldImageIDMath}"
|
||||||
}else{
|
}else{
|
||||||
echo "Warning: ${imageNameMath} does not exist"
|
echo "Warning: ${imageNameMath} does not exist"
|
||||||
}
|
}
|
||||||
if ( "${oldImageIDCSE}" != '' ) {
|
if ( "${oldImageIDCSE}" != "" ) {
|
||||||
echo "Removing old image ${oldImageIDCSE}"
|
echo "Removing old image ${oldImageIDCSE}"
|
||||||
echo "Image Name: " + "${imageNameCSE}"
|
echo "Image Name: " + "${imageNameCSE}"
|
||||||
echo "Old Image: ${oldImageIDCSE}"
|
echo "Old Image: ${oldImageIDCSE}"
|
||||||
sh 'docker rmi ${oldImageIDCSE}'
|
sh "docker rmi ${oldImageIDCSE}"
|
||||||
}else{
|
}else{
|
||||||
echo "Warning: ${imageNameCSE} does not exist"
|
echo "Warning: ${imageNameCSE} does not exist"
|
||||||
}
|
}
|
||||||
echo "3. Assigned new tags to the images"
|
echo "3. Assigned new tags to the images"
|
||||||
sh 'docker tag ${registry}-math:v${version}.${env.BUILD_ID} ${registry}-math:latest'
|
sh "docker tag ${registry}-math:v${version}.${env.BUILD_ID} ${registry}-math:latest"
|
||||||
sh 'docker tag ${registry}-cse:v${version}.${env.BUILD_ID} ${registry}-cse:latest'
|
sh "docker tag ${registry}-cse:v${version}.${env.BUILD_ID} ${registry}-cse:latest"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
stage('Deploy') {
|
stage("Deploy") {
|
||||||
steps {
|
steps {
|
||||||
script {
|
script {
|
||||||
echo "Deploying docker image ${registry}-math:${version}.${env.BUILD_ID} and ${registry}-cse:${version}.${env.BUILD_ID} with docker compose"
|
echo "Deploying docker image ${registry}-math:${version}.${env.BUILD_ID} and ${registry}-cse:${version}.${env.BUILD_ID} with docker compose"
|
||||||
sh 'docker compose -f ./docker/docker-compose.yaml up -d'
|
sh "docker compose -f ./docker/docker-compose.yaml up -d"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user