127 lines
3.0 KiB
Groovy
127 lines
3.0 KiB
Groovy
#!/usr/bin/env groovy
|
|
|
|
pipeline {
|
|
agent { label 'executor-v2' }
|
|
|
|
options {
|
|
timestamps()
|
|
buildDiscarder(logRotator(numToKeepStr: '30'))
|
|
}
|
|
|
|
stages {
|
|
stage('Validate') {
|
|
parallel {
|
|
stage('Changelog') {
|
|
steps { sh './ci/parse-changelog.sh' }
|
|
}
|
|
}
|
|
}
|
|
|
|
stage('Run conjur_variable unit tests') {
|
|
steps {
|
|
sh './dev/test_unit.sh -r'
|
|
publishHTML (target : [allowMissing: false,
|
|
alwaysLinkToLastBuild: false,
|
|
keepAll: true,
|
|
reportDir: 'tests/output/reports/coverage=units/',
|
|
reportFiles: 'index.html',
|
|
reportName: 'Ansible Coverage Report',
|
|
reportTitles: 'Conjur Ansible Collection report'])
|
|
}
|
|
}
|
|
|
|
stage('Run integration tests with Conjur Open Source') {
|
|
stages {
|
|
stage('Ansible v6 - latest') {
|
|
parallel {
|
|
stage('Testing conjur_variable lookup plugin') {
|
|
steps {
|
|
sh './ci/test.sh -d conjur_variable'
|
|
junit 'tests/conjur_variable/junit/*'
|
|
}
|
|
}
|
|
|
|
stage('Testing conjur_host_identity role') {
|
|
steps {
|
|
sh './ci/test.sh -d conjur_host_identity'
|
|
junit 'roles/conjur_host_identity/tests/junit/*'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
stage('Ansible v5') {
|
|
when {
|
|
anyOf {
|
|
branch 'main'
|
|
buildingTag()
|
|
}
|
|
}
|
|
parallel {
|
|
stage('Testing conjur_variable lookup plugin') {
|
|
steps {
|
|
sh './ci/test.sh -v 5 -d conjur_variable'
|
|
junit 'tests/conjur_variable/junit/*'
|
|
}
|
|
}
|
|
|
|
stage('Testing conjur_host_identity role') {
|
|
steps {
|
|
sh './ci/test.sh -v 5 -d conjur_host_identity'
|
|
junit 'roles/conjur_host_identity/tests/junit/*'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
stage('Run integration tests with Conjur Enterprise') {
|
|
stages {
|
|
stage("Testing conjur_variable lookup plugin") {
|
|
steps {
|
|
sh './ci/test.sh -e -d conjur_variable'
|
|
junit 'tests/conjur_variable/junit/*'
|
|
}
|
|
}
|
|
|
|
stage("Testing conjur_host_identity role") {
|
|
steps {
|
|
sh './ci/test.sh -e -d conjur_host_identity'
|
|
junit 'roles/conjur_host_identity/tests/junit/*'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
stage('Build Release Artifacts') {
|
|
when {
|
|
anyOf {
|
|
branch 'main'
|
|
buildingTag()
|
|
}
|
|
}
|
|
|
|
steps {
|
|
sh './ci/build_release'
|
|
archiveArtifacts 'cyberark-conjur-*.tar.gz'
|
|
}
|
|
}
|
|
|
|
stage('Publish to Ansible Galaxy') {
|
|
when {
|
|
buildingTag()
|
|
}
|
|
|
|
steps {
|
|
sh 'summon ./ci/publish_to_galaxy'
|
|
}
|
|
}
|
|
}
|
|
|
|
post {
|
|
always {
|
|
cleanupAndNotify(currentBuild.currentResult)
|
|
}
|
|
}
|
|
} |