ansible-roles/.Jenkinsfile

65 lines
1.8 KiB
Plaintext
Raw Normal View History

2022-05-02 10:27:32 +02:00
pipeline {
agent { label 'docker' }
environment {
ROLES_VERSION = "${env.GIT_COMMIT}"
}
stages {
2022-12-27 16:19:00 +01:00
stage('Anible Lint') {
agent {
docker {
image 'evolix/ansible-lint:latest'
}
}
steps {
script {
sh 'for role_dir in ./*/; do HOME=$WORKSPACE_TMP ansible-lint -p $role_dir || : ; done'
recordIssues(tools: [ansibleLint()])
2022-12-27 16:19:00 +01:00
}
}
}
2022-05-02 10:27:32 +02:00
stage('Build tagged docker image') {
when {
buildingTag()
}
steps {
script {
def im = docker.build("evolix/ansible-roles:build${env.BUILD_ID}")
im.inside {
sh 'echo Test needed'
}
def version = TAG_NAME
def versions = version.split('\\.')
def major = versions[0]
def minor = versions[0] + '.' + versions[1]
def patch = version.trim()
2022-07-29 08:33:51 +02:00
docker.withRegistry('', 'hub.docker') {
im.push(major)
im.push(minor)
im.push(patch)
}
2022-05-02 10:27:32 +02:00
}
}
}
stage('Build latest docker image') {
when {
branch 'unstable'
}
steps {
script {
def im = docker.build("evolix/ansible-roles:build${env.BUILD_ID}")
im.inside {
sh 'echo Test needed'
}
2022-07-29 08:33:51 +02:00
docker.withRegistry('', 'hub.docker') {
im.push('latest')
}
2022-05-02 10:27:32 +02:00
}
}
}
}
}