mirror of
https://github.com/parrazam/radicale-docker.git
synced 2024-11-21 16:53:24 +01:00
Chore: Remove Jenkinsfile and upgrade to radicale 3.1.8
This commit is contained in:
parent
14268101b5
commit
800c056287
1 changed files with 0 additions and 109 deletions
109
Jenkinsfile
vendored
109
Jenkinsfile
vendored
|
@ -1,109 +0,0 @@
|
|||
pipeline {
|
||||
agent any
|
||||
environment {
|
||||
SOURCE = "tomsquest/docker-radicale"
|
||||
TARGET = "parrazam/radicale-with-infcloud"
|
||||
MASTER_BRANCH = "master"
|
||||
RELEASE_BRANCH = "release/*"
|
||||
VERSION = ''
|
||||
}
|
||||
options {
|
||||
skipStagesAfterUnstable()
|
||||
}
|
||||
stages {
|
||||
stage('Configure pipeline for branch type') {
|
||||
steps {
|
||||
script {
|
||||
if (env.BRANCH_NAME.startsWith('release/')) {
|
||||
VERSION = (env.BRANCH_NAME).tokenize('/')[1]
|
||||
} else if (env.BRANCH_NAME.equals('master')) {
|
||||
VERSION = ''
|
||||
} else {
|
||||
VERSION = '-SNAPSHOT'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('Delete older images') {
|
||||
steps {
|
||||
echo "Removing existing images in local..."
|
||||
sh "docker images | grep ${TARGET} | tr -s ' ' | cut -d ' ' -f 2 | xargs -I {} docker rmi ${TARGET}:{}"
|
||||
}
|
||||
}
|
||||
stage("Build image") {
|
||||
matrix {
|
||||
axes {
|
||||
axis {
|
||||
name 'PLATFORM'
|
||||
values 'linux/amd64', 'linux/arm64', 'linux/arm'
|
||||
}
|
||||
}
|
||||
stages {
|
||||
stage('Build by platform') {
|
||||
options {
|
||||
lock( 'synchronous-matrix' )
|
||||
}
|
||||
steps {
|
||||
echo "Building for ${PLATFORM}"
|
||||
script {
|
||||
stage("Build ${PLATFORM}") {
|
||||
script {
|
||||
SOURCE_IMAGE = SOURCE
|
||||
TARGET_IMAGE = TARGET+':'+PLATFORM.tokenize('/')[1]
|
||||
if (env.BRANCH_NAME.startsWith('release/')) {
|
||||
SOURCE_IMAGE += ":" + VERSION
|
||||
TARGET_IMAGE += "." + VERSION
|
||||
} else {
|
||||
TARGET_IMAGE += VERSION
|
||||
}
|
||||
}
|
||||
echo "Building ${TARGET_IMAGE} image..."
|
||||
sh "docker pull ${SOURCE_IMAGE}"
|
||||
sh "docker buildx build -t ${TARGET_IMAGE} --platform ${PLATFORM} --build-arg VERSION=${PLATFORM.tokenize('/')[1]} ."
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('Publish images to Docker Hub') {
|
||||
environment {
|
||||
GROUPED_VERSION = "${VERSION}"
|
||||
}
|
||||
when {
|
||||
anyOf {
|
||||
branch "${MASTER_BRANCH}"
|
||||
branch "${RELEASE_BRANCH}"
|
||||
}
|
||||
}
|
||||
steps {
|
||||
script {
|
||||
if (VERSION.equals('')) {
|
||||
GROUPED_VERSION = 'latest'
|
||||
}
|
||||
if (env.BRANCH_NAME.startsWith('release/')) {
|
||||
VERSION = '.' + (env.BRANCH_NAME).tokenize('/')[1]
|
||||
}
|
||||
IMAGES = ''
|
||||
for (ARCH in ['linux/amd64', 'linux/arm64', 'linux/arm']) {
|
||||
IMAGES += ' -a ' + TARGET + ':' + ARCH.tokenize('/')[1] + VERSION
|
||||
}
|
||||
}
|
||||
echo "${IMAGES}"
|
||||
withCredentials([usernamePassword(credentialsId: 'dockerHub', passwordVariable: 'dockerHubPassword', usernameVariable: 'dockerHubUser')]) {
|
||||
sh "echo ${env.dockerHubPassword} | docker login -u ${env.dockerHubUser} --password-stdin"
|
||||
sh "docker manifest create ${TARGET}:${GROUPED_VERSION} ${IMAGES}"
|
||||
sh "docker manifest push ${TARGET}:${GROUPED_VERSION}"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
post {
|
||||
always {
|
||||
echo "Removing existing images in local..."
|
||||
sh "docker images | grep ${TARGET} | tr -s ' ' | cut -d ' ' -f 2 | xargs -I {} docker rmi ${TARGET}:{}"
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue