Skip to content

Commit e5900a8

Browse files
committed
[tempest re-run] Add support for new feature
The tempest runner script has recently got a feature that allows re-running the failed tests – for having additional insight on the issues repeatability. This commit adds the support of enabling that feature from the test-operator perspective. Related: openstack-k8s-operators/tcib#320
1 parent 930587e commit e5900a8

File tree

3 files changed

+32
-0
lines changed

3 files changed

+32
-0
lines changed

api/v1beta1/tempest_types.go

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -427,6 +427,21 @@ type TempestSpec struct {
427427
// that may have been left out.
428428
Cleanup bool `json:"cleanup"`
429429

430+
// +kubebuilder:validation:Optional
431+
// +operator-sdk:csv:customresourcedefinitions:type=spec
432+
// +kubebuilder:default:=false
433+
// Activate tempest re-run feature. When activated, tempest will perform
434+
// another run of the tests that failed during the first execution.
435+
RerunFailedTests bool `json:"rerunFailedTests"`
436+
437+
// +kubebuilder:validation:Optional
438+
// +operator-sdk:csv:customresourcedefinitions:type=spec
439+
// +kubebuilder:default:=false
440+
// Allow override of exit status with the tempest re-run feature.
441+
// When activated, the original return value of the tempest run will be
442+
// overridden with a result of the tempest run on the set of failed tests.
443+
RerunOverrideStatus bool `json:"rerunOverrideStatus"`
444+
430445
// +kubebuilder:validation:Optional
431446
// +operator-sdk:csv:customresourcedefinitions:type=spec
432447
// NetworkAttachments is a list of NetworkAttachment resource names to expose

api/v1beta1/tempest_types_workflow.go

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -253,6 +253,21 @@ type WorkflowTempestSpec struct {
253253
// behaviour then set this option to true.
254254
Parallel *bool `json:"parallel,omitempty"`
255255

256+
// +kubebuilder:validation:Optional
257+
// +operator-sdk:csv:customresourcedefinitions:type=spec
258+
// +kubebuilder:default:=false
259+
// Activate tempest re-run feature. When activated, tempest will perform
260+
// another run of the tests that failed during the first execution.
261+
RerunFailedTests bool `json:"rerunFailedTests"`
262+
263+
// +kubebuilder:validation:Optional
264+
// +operator-sdk:csv:customresourcedefinitions:type=spec
265+
// +kubebuilder:default:=false
266+
// Allow override of exit status with the tempest re-run feature.
267+
// When activated, the original return value of the tempest run will be
268+
// overridden with a result of the tempest run on the set of failed tests.
269+
RerunOverrideStatus bool `json:"rerunOverrideStatus"`
270+
256271
// +kubebuilder:validation:Optional
257272
// +operator-sdk:csv:customresourcedefinitions:type=spec
258273
// NetworkAttachments is a list of NetworkAttachment resource names to expose

controllers/tempest_controller.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -591,6 +591,8 @@ func (r *TempestReconciler) generateServiceConfigMaps(
591591

592592
envVars["TEMPEST_DEBUG_MODE"] = r.GetDefaultBool(instance.Spec.Debug)
593593
envVars["TEMPEST_CLEANUP"] = r.GetDefaultBool(instance.Spec.Cleanup)
594+
envVars["TEMPEST_RERUN_FAILED_TESTS"] = r.GetDefaultBool(instance.Spec.RerunFailedTests)
595+
envVars["TEMPEST_RERUN_OVERRIDE_STATUS"] = r.GetDefaultBool(instance.Spec.RerunOverrideStatus)
594596

595597
cms := []util.Template{
596598
// ConfigMap

0 commit comments

Comments
 (0)