Skip to content

Commit 8e0e43e

Browse files
authored
Add support for server container image variable / Add possibility to specify different registry for proxy and server (#1594)
1 parent 8554131 commit 8e0e43e

19 files changed

Lines changed: 169 additions & 38 deletions

jenkins_pipelines/environments/common/pipeline-build-validation.groovy

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@ def run(params) {
2424
def products_and_salt_migration_stage_result_fail = false
2525
def retail_stage_result_fail = false
2626
def containerization_stage_result_fail = false
27-
def container_repository = params.container_repository ?: null
27+
def server_container_repository = params.server_container_repository ?: null
28+
def proxy_container_repository = params.proxy_container_repository ?: null
29+
def server_container_image = params.server_container_image ?: ''
2830

2931
env.common_params = "--outputdir ${resultdir} --tf ${params.tf_file} --gitfolder ${resultdir}/sumaform"
3032

@@ -66,7 +68,29 @@ def run(params) {
6668
}
6769
}
6870
// Run Terracumber to deploy the environment
69-
sh "set +x; source /home/jenkins/.credentials set -x; export TF_VAR_CONTAINER_REPOSITORY=${container_repository}; export TF_VAR_CUCUMBER_GITREPO=${params.cucumber_gitrepo}; export TF_VAR_CUCUMBER_BRANCH=${params.cucumber_ref}; export TF_VAR_PRODUCT_VERSION=${params.product_version}; export TERRAFORM=${params.terraform_bin}; export TERRAFORM_PLUGINS=${params.terraform_bin_plugins}; ./terracumber-cli ${common_params} --logfile ${resultdirbuild}/sumaform.log --init --taint '.*(domain|main_disk|data_disk|database_disk|standalone_provisioning|server_extra_nfs_mounts).*' --custom-repositories ${WORKSPACE}/custom_repositories.json --sumaform-backend ${params.sumaform_backend} --use-tf-resource-cleaner --tf-resources-to-keep ${params.minions_to_run.split(', ').join(' ')} --runstep provision"
71+
sh """
72+
set +x
73+
source /home/jenkins/.credentials
74+
set -x
75+
76+
export TF_VAR_SERVER_CONTAINER_REPOSITORY=${server_container_repository}
77+
export TF_VAR_PROXY_CONTAINER_REPOSITORY=${proxy_container_repository}
78+
export TF_VAR_SERVER_CONTAINER_IMAGE=${server_container_image}
79+
export TF_VAR_CUCUMBER_GITREPO=${params.cucumber_gitrepo}
80+
export TF_VAR_CUCUMBER_BRANCH=${params.cucumber_ref}
81+
export TERRAFORM=${params.terraform_bin}
82+
export TERRAFORM_PLUGINS=${params.terraform_bin_plugins}
83+
84+
./terracumber-cli ${common_params} \
85+
--logfile ${resultdirbuild}/sumaform.log \
86+
--init \
87+
--taint '.*(domain|main_disk|data_disk|database_disk|standalone_provisioning|server_extra_nfs_mounts).*' \
88+
--custom-repositories ${WORKSPACE}/custom_repositories.json \
89+
--sumaform-backend ${params.sumaform_backend} \
90+
--use-tf-resource-cleaner \
91+
--tf-resources-to-keep ${params.minions_to_run.split(', ').join(' ')} \
92+
--runstep provision
93+
"""
7094
// Generate features
7195
sh "./terracumber-cli ${common_params} --logfile ${resultdirbuild}/testsuite.log --runstep cucumber --cucumber-cmd '${env.exports} cd /root/spacewalk/testsuite; rake utils:generate_build_validation_features'"
7296
// Generate rake files

jenkins_pipelines/environments/manager-5.0-qe-build-validation-NUE

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,9 @@ node('sumaform-cucumber') {
3939
value: minionList,
4040
defaultValue: minionList,
4141
description: 'Node list to run during BV'),
42-
string(name: 'container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Proxy and server container registry'),
42+
string(name: 'server_container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Server container registry'),
43+
string(name: 'proxy_container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Proxy container registry'),
44+
string(name: 'server_container_image', defaultValue: '', description: 'Server container image'),
4345
booleanParam(name: 'use_previous_terraform_state', defaultValue: false, description: 'Use previous Terraform state'),
4446
booleanParam(name: 'must_deploy', defaultValue: true, description: 'Deploy'),
4547
booleanParam(name: 'must_run_core', defaultValue: true, description: 'Run Core features'),

jenkins_pipelines/environments/manager-5.0-qe-build-validation-PRV

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,9 @@ node('sumaform-cucumber-provo') {
3939
value: minionList,
4040
defaultValue: minionList,
4141
description: 'Node list to run during BV'),
42-
string(name: 'container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Proxy and server container registry'),
42+
string(name: 'server_container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Server container registry'),
43+
string(name: 'proxy_container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Proxy container registry'),
44+
string(name: 'server_container_image', defaultValue: '', description: 'Server container image'),
4345
booleanParam(name: 'use_previous_terraform_state', defaultValue: false, description: 'Use previous Terraform state'),
4446
booleanParam(name: 'must_deploy', defaultValue: true, description: 'Deploy'),
4547
booleanParam(name: 'must_run_core', defaultValue: true, description: 'Run Core features'),

jenkins_pipelines/environments/manager-5.0-qe-sle-update-NUE

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,9 @@ node('sumaform-cucumber') {
2222
value: minionList,
2323
defaultValue: minionList,
2424
description: 'Node list to run during BV'),
25-
string(name: 'container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Proxy and server container registry'),
25+
string(name: 'server_container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Server container registry'),
26+
string(name: 'proxy_container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Proxy container registry'),
27+
string(name: 'server_container_image', defaultValue: '', description: 'Server container image'),
2628
// This is different than other pipelines to make it work with the simple proxy_traditional without refactoring all feature files
2729
booleanParam(name: 'use_previous_terraform_state', defaultValue: true, description: 'Use previous Terraform state'),
2830
booleanParam(name: 'must_deploy', defaultValue: true, description: 'Deploy'),

jenkins_pipelines/environments/manager-5.0-qe-sle-update-PRV

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,9 @@ node('sumaform-cucumber-provo') {
2222
value: minionList,
2323
defaultValue: minionList,
2424
description: 'Node list to run during BV'),
25-
string(name: 'container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Proxy and server container registry'),
25+
string(name: 'server_container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Server container registry'),
26+
string(name: 'proxy_container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Proxy container registry'),
27+
string(name: 'server_container_image', defaultValue: '', description: 'Server container image'),
2628
// This is different than other pipelines to make it work with the simple proxy_traditional without refactoring all feature files
2729
booleanParam(name: 'use_previous_terraform_state', defaultValue: true, description: 'Use previous Terraform state'),
2830
booleanParam(name: 'must_deploy', defaultValue: true, description: 'Deploy'),

jenkins_pipelines/environments/manager-5.1-qe-build-validation-NUE

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,9 @@ node('sumaform-cucumber') {
3737
value: minionList,
3838
defaultValue: minionList,
3939
description: 'Node list to run during BV'),
40-
string(name: 'container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp7/update/products/multilinuxmanager51/containerfile', description: 'Proxy and server container registry'),
40+
string(name: 'server_container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp7/update/products/multilinuxmanager51/containerfile', description: 'Server container registry'),
41+
string(name: 'proxy_container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp7/update/products/multilinuxmanager51/containerfile', description: 'Proxy container registry'),
42+
string(name: 'server_container_image', defaultValue: '', description: 'Server container image'),
4143
booleanParam(name: 'use_previous_terraform_state', defaultValue: false, description: 'Use previous Terraform state'),
4244
booleanParam(name: 'must_deploy', defaultValue: true, description: 'Deploy'),
4345
booleanParam(name: 'must_run_core', defaultValue: true, description: 'Run Core features'),

jenkins_pipelines/environments/manager-qe-continuous-build-validation-NUE

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,9 @@ node('sumaform-cucumber') {
3939
value: minionList,
4040
defaultValue: minionList,
4141
description: 'Node list to run during BV'),
42-
string(name: 'container_repository', defaultValue: 'registry.suse.de/devel/galaxy/manager/head/containerfile', description: 'Proxy and server container registry'),
42+
string(name: 'server_container_repository', defaultValue: 'registry.suse.de/devel/galaxy/manager/head/containerfile', description: 'Server container registry'),
43+
string(name: 'proxy_container_repository', defaultValue: 'registry.suse.de/devel/galaxy/manager/head/containerfile', description: 'Proxy container registry'),
44+
string(name: 'server_container_image', defaultValue: '', description: 'Server container image'),
4345
booleanParam(name: 'use_previous_terraform_state', defaultValue: false, description: 'Use previous Terraform state'),
4446
booleanParam(name: 'must_deploy', defaultValue: true, description: 'Deploy'),
4547
booleanParam(name: 'must_run_core', defaultValue: true, description: 'Run Core features'),

jenkins_pipelines/environments/qe-build-validation-cleaning-pipeline

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@ node {
3131
string(name: 'sumaform_ref', defaultValue: 'master', description: 'Sumaform Git reference (branch, tag...)'),
3232
string(name: 'terracumber_gitrepo', defaultValue: 'https://github.com/uyuni-project/terracumber.git', description: 'Terracumber Git Repository'),
3333
string(name: 'terracumber_ref', defaultValue: 'master', description: 'Terracumber Git ref (branch, tag...)'),
34-
string(name: 'container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Proxy and server container registry'),
34+
string(name: 'server_container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Server container registry'),
35+
string(name: 'proxy_container_repository', defaultValue: 'registry.suse.de/suse/sle-15-sp6/update/products/manager50/update/containerfile', description: 'Proxy container registry'),
3536
booleanParam(name: 'delete_all_resources', defaultValue: false, description: 'Proxy, Monitoring and Retail will be redeployed')
3637
])
3738
])

jenkins_pipelines/environments/uyuni-master-qe-build-validation-NUE

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,9 @@ node('sumaform-cucumber') {
3939
value: minionList,
4040
defaultValue: minionList,
4141
description: 'Node list to run during BV'),
42-
string(name: 'container_repository', defaultValue: 'registry.opensuse.org/systemsmanagement/uyuni/master/containers', description: 'Proxy and server container registry'),
42+
string(name: 'server_container_repository', defaultValue: 'registry.opensuse.org/systemsmanagement/uyuni/master/containers', description: 'Server container registry'),
43+
string(name: 'proxy_container_repository', defaultValue: 'registry.opensuse.org/systemsmanagement/uyuni/master/containers', description: 'Proxy container registry'),
44+
string(name: 'server_container_image', defaultValue: '', description: 'Server container image'),
4345
booleanParam(name: 'use_previous_terraform_state', defaultValue: false, description: 'Use previous Terraform state'),
4446
booleanParam(name: 'must_deploy', defaultValue: true, description: 'Deploy'),
4547
booleanParam(name: 'must_run_core', defaultValue: true, description: 'Run Core features'),

jenkins_pipelines/environments/uyuni-master-qe-build-validation-PRV

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,9 @@ node('sumaform-cucumber-provo') {
3939
value: minionList,
4040
defaultValue: minionList,
4141
description: 'Node list to run during BV'),
42-
string(name: 'container_repository', defaultValue: 'registry.opensuse.org/systemsmanagement/uyuni/master/containers', description: 'Proxy and server container registry'),
42+
string(name: 'server_container_repository', defaultValue: 'registry.opensuse.org/systemsmanagement/uyuni/master/containers', description: 'Server container registry'),
43+
string(name: 'proxy_container_repository', defaultValue: 'registry.opensuse.org/systemsmanagement/uyuni/master/containers', description: 'Proxy container registry'),
44+
string(name: 'server_container_image', defaultValue: '', description: 'Server container image'),
4345
booleanParam(name: 'use_previous_terraform_state', defaultValue: false, description: 'Use previous Terraform state'),
4446
booleanParam(name: 'must_deploy', defaultValue: true, description: 'Deploy'),
4547
booleanParam(name: 'must_run_core', defaultValue: true, description: 'Run Core features'),

0 commit comments

Comments
 (0)