You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
155 lines
5.9 KiB
155 lines
5.9 KiB
8 months ago
|
RETRY = '3'
|
||
|
TIMEOUT = '60' // Adapt it based on the hardware resources and internet connection speed of your Jenkins agent.
|
||
|
|
||
|
pipeline {
|
||
|
agent {
|
||
|
label 'x86_64 && bm'
|
||
|
}
|
||
|
options {
|
||
|
timestamps()
|
||
|
parallelsAlwaysFailFast()
|
||
|
}
|
||
|
environment {
|
||
|
VAGRANT_NO_COLOR = '1'
|
||
|
}
|
||
|
stages {
|
||
|
stage('EL9') {
|
||
|
matrix {
|
||
|
axes {
|
||
|
axis {
|
||
|
name 'EL9'
|
||
|
values 'oracle9', 'rhel9', 'rocky9'
|
||
|
}
|
||
|
}
|
||
|
stages {
|
||
|
stage('EL9 to AlmaLinux OS 9') {
|
||
|
steps {
|
||
|
retry(RETRY) {
|
||
|
timeout(time: TIMEOUT, unit: 'MINUTES') {
|
||
|
sh script: 'vagrant up $EL9',
|
||
|
label: 'Create EL9 Machine'
|
||
|
sh script: 'vagrant ssh $EL9 -c \"sudo /home/vagrant/almalinux-deploy/almalinux-deploy.sh\"',
|
||
|
label: 'Start AlmaLinux Deploy'
|
||
|
sh script: 'vagrant destroy $EL9 -f',
|
||
|
label: 'Destroy the machine'
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
stage('EL8') {
|
||
|
matrix {
|
||
|
axes {
|
||
|
axis {
|
||
|
name 'EL8'
|
||
|
values 'oracle8', 'rhel8', 'rocky8'
|
||
|
}
|
||
|
}
|
||
|
stages {
|
||
|
stage('EL8 to AlmaLinux 8') {
|
||
|
steps {
|
||
|
retry(RETRY) {
|
||
|
timeout(time: TIMEOUT, unit: 'MINUTES') {
|
||
|
sh script: 'vagrant up $EL8',
|
||
|
label: 'Create EL8 machine'
|
||
|
sh script: 'vagrant ssh $EL8 -c \"sudo /home/vagrant/almalinux-deploy/almalinux-deploy.sh\"',
|
||
|
label: 'Start AlmaLinux Deploy'
|
||
|
sh script: 'vagrant destroy $EL8 -f',
|
||
|
label: 'Destroy the machine'
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
stage('CentOS Stream') {
|
||
|
matrix {
|
||
|
axes {
|
||
|
axis {
|
||
|
name 'CS'
|
||
|
values 'centos8stream', 'centos9stream'
|
||
|
}
|
||
|
}
|
||
|
stages {
|
||
|
stage('CS to AlmaLinux') {
|
||
|
steps {
|
||
|
retry(RETRY) {
|
||
|
timeout(time: TIMEOUT, unit: 'MINUTES') {
|
||
|
sh script: 'vagrant up $CS',
|
||
|
label: 'Create CentOS Stream machine'
|
||
|
sh script: 'vagrant ssh $CS -c \"sudo /home/vagrant/almalinux-deploy/almalinux-deploy.sh -d\"',
|
||
|
label: 'Start AlmaLinux Deploy'
|
||
|
sh script: 'vagrant destroy $CS -f',
|
||
|
label: 'Destroy the machine'
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
stage('EL8.5') {
|
||
|
matrix {
|
||
|
axes {
|
||
|
axis {
|
||
|
name 'EL85'
|
||
|
values 'centos8-5', 'oracle8-5', 'rhel8-5', 'rocky8-5'
|
||
|
}
|
||
|
}
|
||
|
stages {
|
||
|
stage('EL8.5 to AlmaLinux 8') {
|
||
|
steps {
|
||
|
retry(RETRY) {
|
||
|
timeout(time: TIMEOUT, unit: 'MINUTES') {
|
||
|
sh script: 'vagrant up $EL85',
|
||
|
label: 'Create EL8.5 machine'
|
||
|
sh script: 'vagrant ssh $EL85 -c \"sudo /home/vagrant/almalinux-deploy/almalinux-deploy.sh\"',
|
||
|
label: 'Start AlmaLinux Deploy'
|
||
|
sh script: 'vagrant destroy $EL85 -f',
|
||
|
label: 'Destroy the machine'
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
stage('EL8.4') {
|
||
|
matrix {
|
||
|
axes {
|
||
|
axis {
|
||
|
name 'EL84'
|
||
|
values 'centos8-4', 'oracle8-4', 'rhel8-4', 'rocky8-4'
|
||
|
}
|
||
|
}
|
||
|
stages {
|
||
|
stage('EL8.4 to AlmaLinux 8') {
|
||
|
steps {
|
||
|
retry(RETRY) {
|
||
|
timeout(time: TIMEOUT, unit: 'MINUTES') {
|
||
|
sh script: 'vagrant up $EL84',
|
||
|
label: 'Create EL8.4 machine'
|
||
|
sh script: 'vagrant ssh $EL84 -c \"sudo /home/vagrant/almalinux-deploy/almalinux-deploy.sh\"',
|
||
|
label: 'Start AlmaLinux Deploy'
|
||
|
sh script: 'vagrant destroy $EL84 -f',
|
||
|
label: 'Destroy the machine'
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
post {
|
||
|
always {
|
||
|
sh script: 'vagrant destroy -f',
|
||
|
label: 'Destroy All Machines'
|
||
|
cleanWs()
|
||
|
}
|
||
|
}
|
||
|
}
|