@@ -96,26 +96,59 @@ var _ = Describe("Binder", func() {
9696 Expect (deployment .Spec .Template .Labels ).To (HaveKeyWithValue ("kai" , "scheduler" ))
9797 })
9898
99- It ("sets CDI flag if set in cluser policy" , func (ctx context.Context ) {
100- clusterPolicy := & nvidiav1.ClusterPolicy {
101- ObjectMeta : metav1.ObjectMeta {
102- Name : "test" ,
103- },
104- Spec : nvidiav1.ClusterPolicySpec {
105- CDI : nvidiav1.CDIConfigSpec {
106- Enabled : ptr .To (true ),
107- Default : ptr .To (true ),
99+ Context ("CDI Detection" , func () {
100+ var (
101+ clusterPolicy * nvidiav1.ClusterPolicy
102+ )
103+ BeforeEach (func () {
104+ clusterPolicy = & nvidiav1.ClusterPolicy {
105+ ObjectMeta : metav1.ObjectMeta {
106+ Name : "test" ,
108107 },
109- },
110- }
108+ Spec : nvidiav1.ClusterPolicySpec {
109+ CDI : nvidiav1.CDIConfigSpec {
110+ Enabled : ptr .To (true ),
111+ Default : ptr .To (true ),
112+ },
113+ },
114+ }
115+ })
111116
112- Expect (fakeKubeClient .Create (ctx , clusterPolicy )).To (Succeed ())
113- objects , err := b .DesiredState (ctx , fakeKubeClient , kaiConfig )
114- Expect (err ).To (BeNil ())
117+ It ("sets CDI flag if set in cluser policy" , func (ctx context.Context ) {
118+ Expect (fakeKubeClient .Create (ctx , clusterPolicy )).To (Succeed ())
119+ objects , err := b .DesiredState (ctx , fakeKubeClient , kaiConfig )
120+ Expect (err ).To (BeNil ())
115121
116- deploymentT := test_utils.FindTypeInObjects [* appsv1.Deployment ](objects )
117- Expect (deploymentT ).NotTo (BeNil ())
118- Expect ((* deploymentT ).Spec .Template .Spec .Containers [0 ].Args ).To (ContainElement ("--cdi-enabled=true" ))
122+ deploymentT := test_utils.FindTypeInObjects [* appsv1.Deployment ](objects )
123+ Expect (deploymentT ).NotTo (BeNil ())
124+ Expect ((* deploymentT ).Spec .Template .Spec .Containers [0 ].Args ).To (ContainElement ("--cdi-enabled=true" ))
125+ })
126+
127+ It ("sets CDI flag to false if not set by default cluser policy" , func (ctx context.Context ) {
128+ clusterPolicy .Spec .CDI .Default = ptr .To (false )
129+ Expect (fakeKubeClient .Create (ctx , clusterPolicy )).To (Succeed ())
130+ objects , err := b .DesiredState (ctx , fakeKubeClient , kaiConfig )
131+ Expect (err ).To (BeNil ())
132+
133+ deploymentT := test_utils.FindTypeInObjects [* appsv1.Deployment ](objects )
134+ Expect (deploymentT ).NotTo (BeNil ())
135+ Expect ((* deploymentT ).Spec .Template .Spec .Containers [0 ].Args ).To (ContainElement ("--cdi-enabled=false" ))
136+ })
137+
138+ It ("detects CDI state with GPU Operator >= v25.10.0" , func (ctx context.Context ) {
139+ clusterPolicy .Labels = map [string ]string {
140+ versionLabelName : gpuOperatorVersionDefaultCDIDeprecated ,
141+ }
142+ clusterPolicy .Spec .CDI .Default = ptr .To (false )
143+ Expect (fakeKubeClient .Create (ctx , clusterPolicy )).To (Succeed ())
144+
145+ objects , err := b .DesiredState (ctx , fakeKubeClient , kaiConfig )
146+ Expect (err ).To (BeNil ())
147+
148+ deploymentT := test_utils.FindTypeInObjects [* appsv1.Deployment ](objects )
149+ Expect (deploymentT ).NotTo (BeNil ())
150+ Expect ((* deploymentT ).Spec .Template .Spec .Containers [0 ].Args ).To (ContainElement ("--cdi-enabled=true" ))
151+ })
119152 })
120153 })
121154
0 commit comments