Skip to content

Commit feedd23

Browse files
committed
test: add e2e test for recovery from ProgressDeadlineExceeded to Succeeded
1 parent 9d3df28 commit feedd23

1 file changed

Lines changed: 69 additions & 0 deletions

File tree

test/e2e/features/revision.feature

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -670,3 +670,72 @@ Feature: Install ClusterObjectSet
670670
Then ClusterObjectSet "${COS_NAME}" is archived
671671
And resource "configmap/test-configmap" is eventually not found
672672
And resource "deployment/test-deployment" is eventually not found
673+
674+
@ProgressDeadline
675+
Scenario: COS recovers from ProgressDeadlineExceeded to Succeeded when probes pass
676+
Given min value for ClusterObjectSet .spec.progressDeadlineMinutes is set to 1
677+
And ServiceAccount "olm-sa" with needed permissions is available in test namespace
678+
When ClusterObjectSet is applied
679+
"""
680+
apiVersion: olm.operatorframework.io/v1
681+
kind: ClusterObjectSet
682+
metadata:
683+
annotations:
684+
olm.operatorframework.io/service-account-name: olm-sa
685+
olm.operatorframework.io/service-account-namespace: ${TEST_NAMESPACE}
686+
name: ${COS_NAME}
687+
spec:
688+
lifecycleState: Active
689+
collisionProtection: Prevent
690+
progressDeadlineMinutes: 1
691+
progressionProbes:
692+
- selector:
693+
type: GroupKind
694+
groupKind:
695+
group: apps
696+
kind: Deployment
697+
assertions:
698+
- type: ConditionEqual
699+
conditionEqual:
700+
type: Available
701+
status: "True"
702+
phases:
703+
- name: resources
704+
objects:
705+
- object:
706+
apiVersion: apps/v1
707+
kind: Deployment
708+
metadata:
709+
name: test-deployment
710+
namespace: ${TEST_NAMESPACE}
711+
spec:
712+
replicas: 1
713+
selector:
714+
matchLabels:
715+
app: delayed-ready
716+
template:
717+
metadata:
718+
labels:
719+
app: delayed-ready
720+
spec:
721+
containers:
722+
- name: delayed-ready
723+
image: busybox:1.36
724+
command: ["sleep", "1000"]
725+
readinessProbe:
726+
exec:
727+
command: ["true"]
728+
initialDelaySeconds: 65
729+
securityContext:
730+
runAsNonRoot: true
731+
runAsUser: 1000
732+
allowPrivilegeEscalation: false
733+
capabilities:
734+
drop:
735+
- ALL
736+
seccompProfile:
737+
type: RuntimeDefault
738+
revision: 1
739+
"""
740+
Then ClusterObjectSet "${COS_NAME}" reports Progressing as False with Reason ProgressDeadlineExceeded
741+
And ClusterObjectSet "${COS_NAME}" reports Progressing as True with Reason Succeeded

0 commit comments

Comments
 (0)