Skip to content

Commit e2165bf

Browse files
fix flakiness of OCP e2e tests
1 parent 703f84c commit e2165bf

1 file changed

Lines changed: 28 additions & 5 deletions

File tree

test/extended/cli/admin.go

Lines changed: 28 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import (
1515
"k8s.io/apiserver/pkg/storage/names"
1616
"k8s.io/kubernetes/test/e2e/framework"
1717

18-
"github.com/openshift/origin/test/extended/testdata"
1918
exutil "github.com/openshift/origin/test/extended/util"
2019
)
2120

@@ -547,10 +546,34 @@ var _ = g.Describe("[sig-cli] oc adm", func() {
547546
})
548547

549548
g.It("release extract image-references", func() {
550-
expected := string(testdata.MustAsset("test/extended/testdata/cli/test-release-image-references.json"))
551-
out, err := oc.Run("adm", "release", "extract").Args("--file", "image-references", "quay.io/openshift-release-dev/ocp-release:4.13.0-rc.0-x86_64").Output()
552-
o.Expect(err).NotTo(o.HaveOccurred())
553-
o.Expect(out).To(o.Equal(expected))
549+
payloadImage, err := oc.AsAdmin().Run("get").Args("clusterversion", "version", "-o", "jsonpath={.status.desired.image}").Output()
550+
o.Expect(err).NotTo(o.HaveOccurred(), "Failed to get current payload image from clusterversion")
551+
payloadImage = strings.TrimSpace(payloadImage)
552+
o.Expect(payloadImage).NotTo(o.BeEmpty())
553+
var out string
554+
cleanup, regArgs, prepErr := exutil.PrepareImagePullSecretAndCABundle(ocns)
555+
if cleanup != nil {
556+
defer cleanup()
557+
}
558+
if prepErr == nil {
559+
args := append([]string{"--file", "image-references"}, regArgs...)
560+
args = append(args, payloadImage)
561+
out, err = oc.AsAdmin().Run("adm", "release", "extract").Args(args...).Output()
562+
} else {
563+
err = prepErr
564+
}
565+
if err != nil {
566+
ctx := context.Background()
567+
isHyperShift, hsErr := exutil.IsHypershift(ctx, oc.AdminConfigClient())
568+
o.Expect(hsErr).NotTo(o.HaveOccurred())
569+
if isHyperShift {
570+
g.Skip("Skipping on HyperShift: image extraction requires external outbound access to registry")
571+
}
572+
o.Expect(err).NotTo(o.HaveOccurred(), "oc adm release extract failed on a standard cluster")
573+
}
574+
o.Expect(out).To(o.ContainSubstring(`"kind": "ImageStream"`))
575+
o.Expect(out).To(o.ContainSubstring(`"apiVersion": "image.openshift.io/v1"`))
576+
o.Expect(out).To(o.MatchRegexp(`"name": ".*"`), "Output should contain a valid name field")
554577
})
555578

556579
// TODO (soltysh): sync with Standa and figure out if we can get these

0 commit comments

Comments
 (0)