-
Notifications
You must be signed in to change notification settings - Fork 29
Expand file tree
/
Copy pathmanager-salt-shaker-products-testing-slmicro62-bundle
More file actions
50 lines (48 loc) · 3.8 KB
/
manager-salt-shaker-products-testing-slmicro62-bundle
File metadata and controls
50 lines (48 loc) · 3.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!/usr/bin/env groovy
node('salt-shaker-tests') {
properties([
buildDiscarder(logRotator(numToKeepStr: '20', daysToKeepStr: '4', artifactNumToKeepStr: '3')),
disableConcurrentBuilds(),
pipelineTriggers([
URLTrigger(
cronTabSpec: '* * * * *',
triggerLabel: "salt-shaker-tests",
labelRestriction: true,
entries: [URLTriggerEntry(
url: 'https://download.opensuse.org/repositories/systemsmanagement:/saltstack:/bundle:/testing:/testsuite/SLFO/repodata/repomd.xml',
contentTypes: [MD5Sum()]
)]
),
cron('H 0 * * *')],
),
parameters([
choice(name: 'salt_flavor', choices: ['bundle'], description: 'Run testsuite for classic Salt or Salt Bundle'),
booleanParam(name: 'run_unit_tests', defaultValue: true, description: 'Run the Salt unit tests'),
booleanParam(name: 'run_integration_tests', defaultValue: true, description: 'Run the Salt integration tests'),
booleanParam(name: 'run_functional_tests', defaultValue: true, description: 'Run the Salt functional tests'),
string(name: 'testsuite_dir', defaultValue: '/opt/salt-testsuite-bundle/', description: 'Optional: Run testsuite from this directory'),
string(name: 'wait_after_deploy', defaultValue: '120', description: 'Optional: Seconds to wait after deployment is done (usually to allow transactional systems to reboot)'),
string(name: 'cucumber_ref', defaultValue: 'master', description: 'Testsuite Git reference (branch, tag...)'),
string(name: 'skip_list_url', defaultValue: 'https://raw.githubusercontent.com/openSUSE/salt-test-skiplist/main/skipped_tests.toml', description: 'URL to the skiplist.toml file to run Salt shaker'),
string(name: 'tf_file', defaultValue: 'susemanager-ci/terracumber_config/tf_files/salt-shaker/Salt-Shaker-Testing-SLMicro62-Bundle.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', 'aws'], 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'),
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...)'),
booleanParam(name: 'terraform_init', defaultValue: true, description: 'Call terraform init (needed if modules are added or changes)'),
booleanParam(name: 'terraform_taint', defaultValue: true, description: 'Call terraform taint (so the resources, except volumes, are recreated)'),
booleanParam(name: 'use_previous_terraform_state', defaultValue: false, description: 'Use previous Terraform state'),
])
])
stage('Checkout pipeline') {
checkout scm
}
timeout(activity: false, time: 3, unit: 'HOURS') {
def pipeline = load "jenkins_pipelines/environments/common/pipeline-salt-shaker.groovy"
pipeline.run(params)
}
}