Skip to content

Commit d143e13

Browse files
committed
Reconsider use of never-stable, add canary and techpreview variants
- I haven't found being more liberal with adding jobs to the never-stable list to particularly be beneficial, so I've removed most and adjusted the comment about criteria. - Add a canary variant, so it is more prominently displayed - Adds a new techpreview variant, for TPNU jobs
1 parent 128905b commit d143e13

1 file changed

Lines changed: 24 additions & 44 deletions

File tree

pkg/testgridanalysis/testidentification/ocp_variants.go

Lines changed: 24 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ var (
1212
// variant regexes
1313
awsRegex = regexp.MustCompile(`(?i)-aws`)
1414
azureRegex = regexp.MustCompile(`(?i)-azure`)
15+
canaryRegex = regexp.MustCompile(`(?i)-canary`)
1516
compactRegex = regexp.MustCompile(`(?i)-compact`)
1617
fipsRegex = regexp.MustCompile(`(?i)-fips`)
1718
metalRegex = regexp.MustCompile(`(?i)-metal`)
@@ -32,6 +33,7 @@ var (
3233
rtRegex = regexp.MustCompile(`(?i)-rt`)
3334
s390xRegex = regexp.MustCompile(`(?i)-s390x`)
3435
serialRegex = regexp.MustCompile(`(?i)-serial`)
36+
techpreview = regexp.MustCompile(`(?i)-techpreview`)
3537
upgradeRegex = regexp.MustCompile(`(?i)-upgrade`)
3638
// some vsphere jobs do not have a trailing -version segment
3739
vsphereRegex = regexp.MustCompile(`(?i)-vsphere`)
@@ -41,6 +43,7 @@ var (
4143
allOpenshiftVariants = sets.NewString(
4244
"aws",
4345
"azure",
46+
"canary",
4447
"compact",
4548
"fips",
4649
"gcp",
@@ -58,64 +61,30 @@ var (
5861
"realtime",
5962
"s390x",
6063
"serial",
64+
"techpreview",
6165
"upgrade",
6266
"vsphere-ipi",
6367
"vsphere-upi",
6468
"single-node",
6569
)
6670

67-
// openshiftJobsNeverStableForVariants is a list of jobs that are
68-
// below 40% passing rate. As we phase these jobs in, they should be
69-
// excluded from "normal" variants and once they are passing above 40%
70-
// can "graduated" from never-stable.
71+
// openshiftJobsNeverStableForVariants is a list of unproven new jobs or
72+
// jobs that are near permafail (i.e. < 40%) for an extended period of time.
73+
// They are excluded from "normal" variants and once they are passing above
74+
// 40% can "graduated" from never-stable.
7175
//
7276
// These jobs are still listed as jobs in total and when individual
7377
// tests fail, they will still be listed with these jobs as causes.
7478
openshiftJobsNeverStableForVariants = sets.NewString(
79+
// Experimental jobs that are under active development
7580
"periodic-ci-openshift-release-master-ci-4.9-e2e-aws-hypershift",
76-
"periodic-ci-openshift-release-master-ci-4.9-e2e-aws-ovn",
77-
"periodic-ci-openshift-release-master-ci-4.9-e2e-aws-upgrade-single-node",
78-
"periodic-ci-openshift-release-master-ci-4.9-e2e-gcp-ovn",
79-
"periodic-ci-openshift-release-master-ci-4.9-e2e-openstack-ovn",
80-
"periodic-ci-openshift-release-master-ci-4.9-upgrade-from-stable-4.8-e2e-aws-ovn-upgrade",
81-
"periodic-ci-openshift-release-master-ci-4.9-upgrade-from-stable-4.8-e2e-aws-ovn-upgrade-rollback",
82-
"periodic-ci-openshift-release-master-ci-4.9-upgrade-from-stable-4.8-e2e-aws-upgrade",
83-
"periodic-ci-openshift-release-master-ci-4.9-upgrade-from-stable-4.8-e2e-aws-upgrade-rollback",
84-
"periodic-ci-openshift-release-master-ci-4.9-upgrade-from-stable-4.8-e2e-azure-ovn-upgrade",
85-
"periodic-ci-openshift-release-master-ci-4.9-upgrade-from-stable-4.8-e2e-gcp-ovn-upgrade",
86-
"periodic-ci-openshift-release-master-ci-4.9-upgrade-from-stable-4.8-e2e-openstack-upgrade",
87-
"periodic-ci-openshift-release-master-ci-4.9-upgrade-from-stable-4.8-from-stable-4.7-e2e-aws-upgrade",
88-
"periodic-ci-openshift-release-master-nightly-4.9-e2e-aws-arm64",
89-
"periodic-ci-openshift-release-master-nightly-4.9-e2e-aws-csi-migration",
90-
"periodic-ci-openshift-release-master-nightly-4.9-e2e-aws-proxy",
91-
"periodic-ci-openshift-release-master-nightly-4.9-e2e-aws-workers-rhel7",
92-
"periodic-ci-openshift-release-master-nightly-4.9-e2e-metal-ipi-ovn-dualstack",
93-
"periodic-ci-openshift-release-master-nightly-4.9-e2e-metal-ipi-ovn-dualstack-local-gateway",
94-
"periodic-ci-openshift-release-master-nightly-4.9-e2e-metal-ipi-ovn-ipv6",
95-
"periodic-ci-openshift-release-master-nightly-4.9-e2e-remote-libvirt-ppc64le",
96-
"periodic-ci-openshift-release-master-nightly-4.9-e2e-remote-libvirt-s390x",
97-
"periodic-ci-openshift-release-master-nightly-4.9-openshift-ipi-azure-arcconformance",
98-
"periodic-ci-openshift-release-master-nightly-4.9-upgrade-from-stable-4.7-e2e-aws-upgrade-paused",
99-
"periodic-ci-openshift-release-master-nightly-4.9-upgrade-from-stable-4.8-e2e-aws-upgrade",
100-
"release-openshift-ocp-installer-e2e-azure-ovn-4.9",
101-
"release-openshift-ocp-installer-e2e-gcp-ovn-4.9",
81+
82+
// https://issues.redhat.com/browse/OSD-8071
10283
"release-openshift-ocp-osd-aws-nightly-4.9",
10384
"release-openshift-ocp-osd-gcp-nightly-4.9",
104-
"release-openshift-origin-installer-e2e-aws-disruptive-4.9",
85+
86+
// https://bugzilla.redhat.com/show_bug.cgi?id=1979962
10587
"release-openshift-origin-installer-e2e-aws-sdn-network-stress-4.9",
106-
"release-openshift-origin-installer-e2e-aws-upgrade-4.6-to-4.7-to-4.8-to-4.9-ci",
107-
"release-openshift-origin-installer-old-rhcos-e2e-aws-4.9",
108-
109-
// Compact jobs alerting on etcdGRPCRequestsSlow
110-
// BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1986119
111-
"periodic-ci-openshift-release-master-ci-4.9-e2e-aws-compact",
112-
"periodic-ci-openshift-release-master-ci-4.9-e2e-aws-compact-upgrade",
113-
"periodic-ci-openshift-release-master-ci-4.9-e2e-azure-compact",
114-
"periodic-ci-openshift-release-master-ci-4.9-e2e-azure-compact-upgrade",
115-
"periodic-ci-openshift-release-master-ci-4.9-e2e-gcp-compact",
116-
"periodic-ci-openshift-release-master-ci-4.9-e2e-gcp-compact-upgrade",
117-
"periodic-ci-openshift-release-master-nightly-4.9-e2e-compact-remote-libvirt-ppc64le",
118-
"periodic-ci-openshift-release-master-nightly-4.9-e2e-compact-remote-libvirt-s390x",
11988
)
12089
)
12190

@@ -140,10 +109,16 @@ func (v openshiftVariants) IdentifyVariants(jobName string) []string {
140109
}
141110
}()
142111

112+
// If a job is in never-stable, it is excluded from other possible variant aggregations
143113
if v.IsJobNeverStable(jobName) {
144114
return []string{"never-stable"}
145115
}
146116

117+
// Tech preview jobs are excluded from other possible variant aggregations
118+
if techpreview.MatchString(jobName) {
119+
return []string{"techpreview"}
120+
}
121+
147122
// if it's a promotion job, it can't be a part of any other variant aggregation
148123
if promoteRegex.MatchString(jobName) {
149124
variants = append(variants, "promote")
@@ -156,6 +131,11 @@ func (v openshiftVariants) IdentifyVariants(jobName string) []string {
156131
if azureRegex.MatchString(jobName) {
157132
variants = append(variants, "azure")
158133
}
134+
135+
if canaryRegex.MatchString(jobName) {
136+
variants = append(variants, "canary")
137+
}
138+
159139
if compactRegex.MatchString(jobName) {
160140
variants = append(variants, "compact")
161141
}

0 commit comments

Comments
 (0)