@@ -13,6 +13,7 @@ import (
13
13
14
14
"github.com/sirupsen/logrus"
15
15
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
16
+ utilclock "k8s.io/apimachinery/pkg/util/clock"
16
17
17
18
v1 "github.com/operator-framework/operator-lifecycle-manager/pkg/api/apis/operators/v1"
18
19
"github.com/operator-framework/operator-lifecycle-manager/pkg/api/client"
@@ -67,8 +68,9 @@ func TestMain(m *testing.M) {
67
68
cleaner = newNamespaceCleaner (testNamespace )
68
69
namespaces := strings .Split (* watchedNamespaces , "," )
69
70
70
- olmStopCh := make (chan struct {}, 1 )
71
- catalogStopCh := make (chan struct {}, 1 )
71
+ // Get exit signal context
72
+ ctx , cancel := context .WithCancel (signals .Context ())
73
+ defer cancel ()
72
74
73
75
// operator dependencies
74
76
crClient , err := client .NewClient (* kubeConfigPath )
@@ -106,18 +108,25 @@ func TestMain(m *testing.M) {
106
108
})
107
109
108
110
// start operators
109
- olmOperator , err := olm .NewOperator (olmlogger , crClient , olmOpClient , & install.StrategyResolver {}, time .Minute , namespaces )
111
+ olmOperator , err := olm .NewOperator (
112
+ ctx ,
113
+ olm .WithLogger (olmLogger ),
114
+ olm .WithWatchedNamespaces (namespaces ... ),
115
+ olm .WithResyncPeriod (time .Minute ),
116
+ olm .WithExternalClient (crClient ),
117
+ olm .WithOperatorClient (olmOpClient ),
118
+ )
110
119
if err != nil {
111
120
logrus .WithError (err ).Fatalf ("error configuring olm" )
112
121
}
113
- olmready , _ , _ := olmOperator .Run (olmStopCh )
114
- catalogOperator , err := catalog .NewOperator (* kubeConfigPath , catlogger , time .Minute , "quay.io/operatorframework/configmap-operator-registry:latest" , * namespace , namespaces ... )
122
+ olmOperator .Run (ctx )
123
+ catalogOperator , err := catalog .NewOperator (ctx , * kubeConfigPath , utilclock. RealClock {} , catlogger , time .Minute , "quay.io/operatorframework/configmap-operator-registry:latest" , * namespace , namespaces ... )
115
124
if err != nil {
116
125
logrus .WithError (err ).Fatalf ("error configuring catalog" )
117
126
}
118
- catready , _ , _ := catalogOperator .Run (catalogStopCh )
119
- <- olmready
120
- <- catready
127
+ catalogOperator .Run (ctx )
128
+ <- olmOperator . Ready ()
129
+ <- catalogOperator . Ready ()
121
130
122
131
c , err := client .NewClient (* kubeConfigPath )
123
132
if err != nil {
0 commit comments