Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
144 changes: 87 additions & 57 deletions Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

// To use a test branch (i.e. PR) until it lands to master
// I.e. for testing library changes
//@Library(value='pipeline-lib@your_branch') _
@Library(value='pipeline-lib@ryon-jensen/speed_of_ci') _

/* groovylint-disable-next-line CompileStatic */
job_status_internal = [:]
Expand Down Expand Up @@ -345,6 +345,15 @@ pipeline {
booleanParam(name: 'CI_large_md_on_ssd_TEST',
defaultValue: true,
description: 'Run the Functional Hardware Large MD on SSD test stage')
booleanParam(name: 'CI_cb_md_on_ssd_01_TEST',
defaultValue: true,
description: 'Run the Functional Cluster Box test stage 01')
booleanParam(name: 'CI_cb_md_on_ssd_02_TEST',
defaultValue: true,
description: 'Run the Functional Cluster Box test stage 02')
booleanParam(name: 'CI_cb_md_on_ssd_03_TEST',
defaultValue: true,
description: 'Run the Functional Cluster Box test stage 03')
string(name: 'CI_UNIT_VM1_LABEL',
defaultValue: 'ci_vm1',
description: 'Label to use for 1 VM node unit and RPM tests')
Expand Down Expand Up @@ -375,6 +384,9 @@ pipeline {
string(name: 'FUNCTIONAL_HARDWARE_LARGE_LABEL',
defaultValue: 'ci_nvme9',
description: 'Label to use for 9 node Functional Hardware Large (MD on SSD) stages')
string(name: 'FUNCTIONAL_CLUSTER_BOX_LABEL',
defaultValue: 'cluster_box',
description: 'Label to use for the Functional Cluster Box stages')
string(name: 'CI_STORAGE_PREP_LABEL',
defaultValue: '',
description: 'Label for cluster to do a DAOS Storage Preparation')
Expand All @@ -390,8 +402,10 @@ pipeline {
stage('Set Description') {
steps {
script {
if (params.CI_BUILD_DESCRIPTION) {
buildDescription params.CI_BUILD_DESCRIPTION
String description = params.CI_BUILD_DESCRIPTION ?:
cachedCommitPragma('Build-description', '')
if (description) {
buildDescription description
}
}
}
Expand Down Expand Up @@ -611,7 +625,7 @@ pipeline {
deps_build: false) +
' --build-arg DAOS_PACKAGES_BUILD=no ' +
' --build-arg DAOS_KEEP_SRC=yes ' +
" -t ${sanitized_JOB_NAME()}-leap15-gcc" +
" -t ${sanitized_JOB_NAME()}-leap15-gcc" +
" -t ${sanitized_JOB_NAME()}-leap15" +
' --build-arg POINT_RELEASE=.6' +
" --build-arg PYTHON_VERSION=${env.PYTHON_VERSION}"
Expand Down Expand Up @@ -1107,9 +1121,10 @@ pipeline {
expression { !paramsValue('CI_FUNCTIONAL_HARDWARE_TEST_SKIP', false) && !skipStage() }
}
steps {
script {
parallel(
'Functional Hardware Medium': getFunctionalTestStage(
script {
Map hwStages = [:]

hwStages['Functional Hardware Medium'] = getFunctionalTestStage(
name: 'Functional Hardware Medium',
pragma_suffix: '-hw-medium',
label: params.FUNCTIONAL_HARDWARE_MEDIUM_LABEL,
Expand All @@ -1120,9 +1135,10 @@ pipeline {
run_if_pr: false,
run_if_landing: false,
job_status: job_status_internal,
image_version: 'el9.7'
),
'Functional Hardware Medium MD on SSD': getFunctionalTestStage(
image_version: 'el9.7',
node_count: 5
)
hwStages['Functional Hardware Medium MD on SSD'] = getFunctionalTestStage(
name: 'Functional Hardware Medium MD on SSD',
pragma_suffix: '-hw-medium-md-on-ssd',
label: params.FUNCTIONAL_HARDWARE_MEDIUM_LABEL,
Expand All @@ -1133,9 +1149,10 @@ pipeline {
run_if_pr: true,
run_if_landing: false,
job_status: job_status_internal,
image_version: 'el9.7'
),
'Functional Hardware Medium VMD': getFunctionalTestStage(
image_version: 'el9.7',
node_count: 5
)
hwStages['Functional Hardware Medium VMD'] = getFunctionalTestStage(
name: 'Functional Hardware Medium VMD',
pragma_suffix: '-hw-medium-vmd',
label: params.FUNCTIONAL_HARDWARE_MEDIUM_VMD_LABEL,
Expand All @@ -1147,9 +1164,10 @@ pipeline {
run_if_pr: false,
run_if_landing: false,
job_status: job_status_internal,
image_version: 'el9.7'
),
'Functional Hardware Medium Verbs Provider': getFunctionalTestStage(
image_version: 'el9.7',
node_count: 5
)
hwStages['Functional Hardware Medium Verbs Provider'] = getFunctionalTestStage(
name: 'Functional Hardware Medium Verbs Provider',
pragma_suffix: '-hw-medium-verbs-provider',
label: params.FUNCTIONAL_HARDWARE_MEDIUM_VERBS_PROVIDER_LABEL,
Expand All @@ -1162,8 +1180,8 @@ pipeline {
run_if_landing: false,
job_status: job_status_internal,
image_version: 'el9.7'
),
'Functional Hardware Medium Verbs Provider MD on SSD': getFunctionalTestStage(
)
hwStages['Functional Hardware Medium Verbs Provider MD on SSD'] = getFunctionalTestStage(
name: 'Functional Hardware Medium Verbs Provider MD on SSD',
pragma_suffix: '-hw-medium-verbs-provider-md-on-ssd',
label: params.FUNCTIONAL_HARDWARE_MEDIUM_VERBS_PROVIDER_LABEL,
Expand All @@ -1175,49 +1193,61 @@ pipeline {
run_if_pr: true,
run_if_landing: false,
job_status: job_status_internal,
image_version: 'el9.7'
),
'Functional Hardware Medium UCX Provider': getFunctionalTestStage(
name: 'Functional Hardware Medium UCX Provider',
pragma_suffix: '-hw-medium-ucx-provider',
label: params.FUNCTIONAL_HARDWARE_MEDIUM_UCX_PROVIDER_LABEL,
next_version: next_version(),
stage_tags: 'hw,medium,provider',
default_tags: startedByTimer() ? 'pr daily_regression' : 'pr',
default_nvme: 'auto',
provider: cachedCommitPragma('Test-provider-ucx', 'ucx+ud_x'),
run_if_pr: false,
run_if_landing: false,
job_status: job_status_internal,
image_version: 'el9.7'
),
'Functional Hardware Large': getFunctionalTestStage(
name: 'Functional Hardware Large',
pragma_suffix: '-hw-large',
label: params.FUNCTIONAL_HARDWARE_LARGE_LABEL,
next_version: next_version(),
stage_tags: 'hw,large',
default_tags: startedByTimer() ? 'pr daily_regression' : 'pr',
default_nvme: 'auto',
run_if_pr: false,
run_if_landing: false,
job_status: job_status_internal,
image_version: 'el9.7'
),
'Functional Hardware Large MD on SSD': getFunctionalTestStage(
name: 'Functional Hardware Large MD on SSD',
pragma_suffix: '-hw-large-md-on-ssd',
label: params.FUNCTIONAL_HARDWARE_LARGE_LABEL,
image_version: 'el9.7',
node_count: 5
)
hwStages['Functional Hardware Large'] = getFunctionalTestStage(
name: 'Functional Hardware Large',
pragma_suffix: '-hw-large',
label: params.FUNCTIONAL_HARDWARE_LARGE_LABEL,
next_version: next_version(),
stage_tags: 'hw,large',
default_tags: startedByTimer() ? 'pr daily_regression' : 'pr',
default_nvme: 'auto',
run_if_pr: false,
run_if_landing: false,
job_status: job_status_internal,
image_version: 'el9.7'
)
hwStages['Functional Hardware Large MD on SSD'] = getFunctionalTestStage(
name: 'Functional Hardware Large MD on SSD',
pragma_suffix: '-hw-large-md-on-ssd',
label: params.FUNCTIONAL_HARDWARE_LARGE_LABEL,
next_version: next_version(),
stage_tags: 'hw,large',
default_tags: startedByTimer() ? 'pr daily_regression' : 'pr',
default_nvme: 'auto_md_on_ssd',
run_if_pr: true,
run_if_landing: false,
job_status: job_status_internal,
image_version: 'el9.7'
)

List<Map> clusterBoxStages = [
[name: '01', tag: 'cb_01', pragma_suffix: '-cb-md-on-ssd-cb-01'],
[name: '02', tag: 'cb_02', pragma_suffix: '-cb-md-on-ssd-cb-02'],
[name: '03', tag: 'cb_03', pragma_suffix: '-cb-md-on-ssd-cb-03'],
]

clusterBoxStages.each { cfg ->
String stageKey = "Functional Cluster Box ${cfg.name}"
hwStages[stageKey] = getFunctionalTestStage(
name: stageKey,
pragma_suffix: cfg.pragma_suffix,
label: params.FUNCTIONAL_CLUSTER_BOX_LABEL,
next_version: next_version(),
stage_tags: 'hw,large',
stage_tags: "medium,${cfg.tag}",
default_tags: startedByTimer() ? 'pr daily_regression' : 'pr',
default_nvme: 'auto_md_on_ssd',
nvme: 'auto_md_on_ssd',
image_version: 'el9.7',
node_count: 5,
run_if_pr: true,
run_if_landing: false,
job_status: job_status_internal,
image_version: 'el9.7'
),
)
job_status: job_status_internal
)
}

parallel(hwStages)
}
}
} // stage('Test Hardware')
Expand Down
2 changes: 1 addition & 1 deletion src/tests/ftest/control/daos_server_helper.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ def test_daos_server_helper_format(self):
operations while daos_server is run as normal user.

:avocado: tags=all,pr,daily_regression
:avocado: tags=hw,medium
:avocado: tags=medium,cb_03
:avocado: tags=control,basic,daos_server_helper
:avocado: tags=DaosPrivHelperTest,test_daos_server_helper_format
"""
Expand Down
4 changes: 2 additions & 2 deletions src/tests/ftest/control/dmg_telemetry_nvme.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
"""
(C) Copyright 2021-2023 Intel Corporation.

Check failure on line 2 in src/tests/ftest/control/dmg_telemetry_nvme.py

View workflow job for this annotation

GitHub Actions / Copyright check

Copyright out of date

SPDX-License-Identifier: BSD-2-Clause-Patent
"""
Expand Down Expand Up @@ -32,7 +32,7 @@
Verify the telemetry engine NVMe metrics.

:avocado: tags=all,pr,daily_regression
:avocado: tags=hw,medium
:avocado: tags=medium,cb_03
:avocado: tags=control,telemetry,nvme
:avocado: tags=TestWithTelemetryNvme,test_nvme_telemetry_metrics
"""
Expand Down Expand Up @@ -68,7 +68,7 @@
Verify the dmg telemetry list command.

:avocado: tags=all,pr,daily_regression
:avocado: tags=hw,medium
:avocado: tags=medium,cb_03
:avocado: tags=control,telemetry,nvme
:avocado: tags=TestWithTelemetryNvme,test_telemetry_list_nvme
"""
Expand Down
Loading
Loading