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` )
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` )
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