Skip to content

Commit

Permalink
Add a new 5.0/HEAD BV
Browse files Browse the repository at this point in the history
To be able to test 5.0 further, we decided to add a new 5.0 BV.

See SUSE/spacewalk#23078

Signed-off-by: Dominik Gedon <[email protected]>
  • Loading branch information
nodeg committed Jan 23, 2024
1 parent 76339f8 commit 69cdc45
Show file tree
Hide file tree
Showing 4 changed files with 3,076 additions and 0 deletions.
72 changes: 72 additions & 0 deletions jenkins_pipelines/environments/manager-5.0-qe-build-validation-NUE
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
#!/usr/bin/env groovy

node('sumaform-cucumber') {
def minionList = 'sle12sp4_minion, sle12sp4_ssh_minion, ' +
'sle12sp5_minion, sle12sp5_ssh_minion, ' +
'sle15sp1_minion, sle15sp1_ssh_minion, ' +
'sle15sp2_minion, sle15sp2_ssh_minion, ' +
'sle15sp3_minion, sle15sp3_ssh_minion, ' +
'sle15sp4_minion, sle15sp4_ssh_minion, ' +
'sle15sp5_minion, sle15sp5_ssh_minion, ' +
'alma9_minion, alma9_ssh_minion, ' +
'centos7_minion, centos7_ssh_minion, ' +
'liberty9_minion, liberty9_ssh_minion, ' +
'oracle9_minion, oracle9_ssh_minion, ' +
'rocky8_minion, rocky8_ssh_minion, rocky9_minion, rocky9_ssh_minion, ' +
'ubuntu2004_minion, ubuntu2004_ssh_minion, ubuntu2204_minion, ubuntu2204_ssh_minion, ' +
'debian11_minion, debian11_ssh_minion, debian12_minion, debian12_ssh_minion, ' +
'opensuse154arm_minion, opensuse154arm_ssh_minion, ' +
'opensuse155arm_minion, opensuse155arm_ssh_minion, ' +
'sles15sp5s390_minion, sles15sp5s390_ssh_minion, ' +
'slemicro51_minion, slemicro51_ssh_minion, ' +
'slemicro52_minion, slemicro52_ssh_minion, ' +
'slemicro53_minion, slemicro53_ssh_minion, ' +
'slemicro54_minion, slemicro54_ssh_minion, ' +
'slemicro55_minion, slemicro55_ssh_minion'
properties([
buildDiscarder(logRotator(numToKeepStr: '5', daysToKeepStr: '30', artifactNumToKeepStr: '3')),
disableConcurrentBuilds(),
parameters([
string(name: 'cucumber_gitrepo', defaultValue: 'https://github.com/uyuni-project/uyuni.git', description: 'Testsuite Git Repository'),
string(name: 'cucumber_ref', defaultValue: 'master', description: 'Branch prepared for the MU tested'),
string(name: 'tf_file', defaultValue: 'susemanager-ci/terracumber_config/tf_files/SUSEManager-5.0-build-validation-NUE.tf', description: 'Path to the tf file to be used'),
string(name: 'sumaform_gitrepo', defaultValue: 'https://github.com/uyuni-project/sumaform.git', description: 'Sumaform Git Repository'),
string(name: 'sumaform_ref', defaultValue: 'master', description: 'Sumaform Git reference (branch, tag...)'),
choice(name: 'sumaform_backend', choices: ['libvirt'], description: 'Sumaform backend to be used (see https://github.com/uyuni-project/sumaform#backend-choice)'),
choice(name: 'terraform_bin', choices: ['/usr/bin/terraform'], description: 'Terraform binary path'),
choice(name: 'terraform_bin_plugins', choices: ['/usr/bin'], description: 'Terraform plugins path'),
string(name: 'terraform_parallelism', defaultValue: '', description: 'Advanced: Define the number of parallel resource operations for terraform'),
// Temporary: should move to uyuni-project
string(name: 'terracumber_gitrepo', defaultValue: 'https://github.com/uyuni-project/terracumber.git', description: 'Terracumber Git Repository'),
string(name: 'terracumber_ref', defaultValue: 'master', description: 'Terracumber Git ref (branch, tag...)'),
extendedChoice(name: 'minions_to_run', multiSelectDelimiter: ', ', quoteValue: false, saveJSONParameterToFile: false, type: 'PT_CHECKBOX', visibleItemCount: 15,
value: minionList,
defaultValue: minionList,
description: 'Node list to run during BV'),
booleanParam(name: 'use_previous_terraform_state', defaultValue: false, description: 'Use previous Terraform state'),
booleanParam(name: 'must_deploy', defaultValue: true, description: 'Deploy'),
booleanParam(name: 'must_run_core', defaultValue: true, description: 'Run Core features'),
booleanParam(name: 'must_sync', defaultValue: true, description: 'Sync. products and channels'),
booleanParam(name: 'enable_proxy_stages', defaultValue: true, description: 'Run Proxy stages'),
booleanParam(name: 'enable_monitoring_stages', defaultValue: true, description: 'Run Monitoring stages'),
booleanParam(name: 'enable_client_stages', defaultValue: true, description: 'Run Client stages'),
booleanParam(name: 'must_add_MU_repositories', defaultValue: true, description: 'Add MU channels'),
booleanParam(name: 'must_add_non_MU_repositories', defaultValue: true, description: 'Add non MU channels'),
booleanParam(name: 'must_add_keys', defaultValue: true, description: 'Add Activation Keys'),
booleanParam(name: 'must_create_bootstrap_repos', defaultValue: true, description: 'Create bootstrap repositories'),
booleanParam(name: 'must_boot_node', defaultValue: true, description: 'Bootstrap Node'),
booleanParam(name: 'must_run_tests', defaultValue: true, description: 'Run Smoke Tests'),
booleanParam(name: 'must_prepare_retail', defaultValue: true, description: 'Prepare and run Retail'),
booleanParam(name: 'must_run_containerization_tests', defaultValue: true, description: 'Run Containerization Tests'),
booleanParam(name: 'confirm_before_continue', defaultValue: false, description: 'Confirmation button between stages'),
text(name: 'mi_ids', defaultValue: '', description: 'MI Identifiers separated by commas without whitespaces (Option A)'),
text(name: 'custom_repositories', defaultValue: '{}', description: 'MU Repositories in json format (Option B)')
])
])

stage('Checkout pipeline') {
checkout scm
}
def pipeline = load "jenkins_pipelines/environments/common/pipeline-build-validation.groovy"
pipeline.run(params)
}
72 changes: 72 additions & 0 deletions jenkins_pipelines/environments/manager-5.0-qe-build-validation-PRV
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
#!/usr/bin/env groovy

node('sumaform-cucumber') {
def minionList = 'sle12sp4_minion, sle12sp4_ssh_minion, ' +
'sle12sp5_minion, sle12sp5_ssh_minion, ' +
'sle15sp1_minion, sle15sp1_ssh_minion, ' +
'sle15sp2_minion, sle15sp2_ssh_minion, ' +
'sle15sp3_minion, sle15sp3_ssh_minion, ' +
'sle15sp4_minion, sle15sp4_ssh_minion, ' +
'sle15sp5_minion, sle15sp5_ssh_minion, ' +
'alma9_minion, alma9_ssh_minion, ' +
'centos7_minion, centos7_ssh_minion, ' +
'liberty9_minion, liberty9_ssh_minion, ' +
'oracle9_minion, oracle9_ssh_minion, ' +
'rocky8_minion, rocky8_ssh_minion, rocky9_minion, rocky9_ssh_minion, ' +
'ubuntu2004_minion, ubuntu2004_ssh_minion, ubuntu2204_minion, ubuntu2204_ssh_minion, ' +
'debian11_minion, debian11_ssh_minion, debian12_minion, debian12_ssh_minion, ' +
'opensuse154arm_minion, opensuse154arm_ssh_minion, ' +
'opensuse155arm_minion, opensuse155arm_ssh_minion, ' +
'sles15sp5s390_minion, sles15sp5s390_ssh_minion, ' +
'slemicro51_minion, slemicro51_ssh_minion, ' +
'slemicro52_minion, slemicro52_ssh_minion, ' +
'slemicro53_minion, slemicro53_ssh_minion, ' +
'slemicro54_minion, slemicro54_ssh_minion, ' +
'slemicro55_minion, slemicro55_ssh_minion'
properties([
buildDiscarder(logRotator(numToKeepStr: '5', daysToKeepStr: '30', artifactNumToKeepStr: '3')),
disableConcurrentBuilds(),
parameters([
string(name: 'cucumber_gitrepo', defaultValue: 'https://github.com/uyuni-project/uyuni.git', description: 'Testsuite Git Repository'),
string(name: 'cucumber_ref', defaultValue: 'master', description: 'Branch prepared for the MU tested'),
string(name: 'tf_file', defaultValue: 'susemanager-ci/terracumber_config/tf_files/SUSEManager-5.0-build-validation-PRV.tf', description: 'Path to the tf file to be used'),
string(name: 'sumaform_gitrepo', defaultValue: 'https://github.com/uyuni-project/sumaform.git', description: 'Sumaform Git Repository'),
string(name: 'sumaform_ref', defaultValue: 'master', description: 'Sumaform Git reference (branch, tag...)'),
choice(name: 'sumaform_backend', choices: ['libvirt'], description: 'Sumaform backend to be used (see https://github.com/uyuni-project/sumaform#backend-choice)'),
choice(name: 'terraform_bin', choices: ['/usr/bin/terraform'], description: 'Terraform binary path'),
choice(name: 'terraform_bin_plugins', choices: ['/usr/bin'], description: 'Terraform plugins path'),
string(name: 'terraform_parallelism', defaultValue: '', description: 'Advanced: Define the number of parallel resource operations for terraform'),
// Temporary: should move to uyuni-project
string(name: 'terracumber_gitrepo', defaultValue: 'https://github.com/uyuni-project/terracumber.git', description: 'Terracumber Git Repository'),
string(name: 'terracumber_ref', defaultValue: 'master', description: 'Terracumber Git ref (branch, tag...)'),
extendedChoice(name: 'minions_to_run', multiSelectDelimiter: ', ', quoteValue: false, saveJSONParameterToFile: false, type: 'PT_CHECKBOX', visibleItemCount: 15,
value: minionList,
defaultValue: minionList,
description: 'Node list to run during BV'),
booleanParam(name: 'use_previous_terraform_state', defaultValue: false, description: 'Use previous Terraform state'),
booleanParam(name: 'must_deploy', defaultValue: true, description: 'Deploy'),
booleanParam(name: 'must_run_core', defaultValue: true, description: 'Run Core features'),
booleanParam(name: 'must_sync', defaultValue: true, description: 'Sync. products and channels'),
booleanParam(name: 'enable_proxy_stages', defaultValue: true, description: 'Run Proxy stages'),
booleanParam(name: 'enable_monitoring_stages', defaultValue: true, description: 'Run Monitoring stages'),
booleanParam(name: 'enable_client_stages', defaultValue: true, description: 'Run Client stages'),
booleanParam(name: 'must_add_MU_repositories', defaultValue: true, description: 'Add MU channels'),
booleanParam(name: 'must_add_non_MU_repositories', defaultValue: true, description: 'Add non MU channels'),
booleanParam(name: 'must_add_keys', defaultValue: true, description: 'Add Activation Keys'),
booleanParam(name: 'must_create_bootstrap_repos', defaultValue: true, description: 'Create bootstrap repositories'),
booleanParam(name: 'must_boot_node', defaultValue: true, description: 'Bootstrap Node'),
booleanParam(name: 'must_run_tests', defaultValue: true, description: 'Run Smoke Tests'),
booleanParam(name: 'must_prepare_retail', defaultValue: true, description: 'Prepare and run Retail'),
booleanParam(name: 'must_run_containerization_tests', defaultValue: true, description: 'Run Containerization Tests'),
booleanParam(name: 'confirm_before_continue', defaultValue: false, description: 'Confirmation button between stages'),
text(name: 'mi_ids', defaultValue: '', description: 'MI Identifiers separated by commas without whitespaces (Option A)'),
text(name: 'custom_repositories', defaultValue: '{}', description: 'MU Repositories in json format (Option B)')
])
])

stage('Checkout pipeline') {
checkout scm
}
def pipeline = load "jenkins_pipelines/environments/common/pipeline-build-validation.groovy"
pipeline.run(params)
}
Loading

0 comments on commit 69cdc45

Please sign in to comment.