Skip to content

Commit 4667f44

Browse files
committed
Add functions to create a Kueue resources
1 parent 69362af commit 4667f44

File tree

1 file changed

+90
-0
lines changed

1 file changed

+90
-0
lines changed

support/kueue.go

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
/*
2+
Copyright 2024.
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
*/
16+
17+
package support
18+
19+
import (
20+
"github.com/onsi/gomega"
21+
"sigs.k8s.io/kueue/apis/kueue/v1beta1"
22+
23+
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
24+
)
25+
26+
func CreateKueueResourceFlavor(t Test, resourceFlavorSpec v1beta1.ResourceFlavorSpec) *v1beta1.ResourceFlavor {
27+
t.T().Helper()
28+
29+
resourceFlavor := &v1beta1.ResourceFlavor{
30+
TypeMeta: metav1.TypeMeta{
31+
APIVersion: v1beta1.SchemeGroupVersion.String(),
32+
Kind: "ResourceFlavor",
33+
},
34+
ObjectMeta: metav1.ObjectMeta{
35+
GenerateName: "rf-",
36+
},
37+
Spec: resourceFlavorSpec,
38+
}
39+
40+
resourceFlavor, err := t.Client().Kueue().KueueV1beta1().ResourceFlavors().Create(t.Ctx(), resourceFlavor, metav1.CreateOptions{})
41+
t.Expect(err).NotTo(gomega.HaveOccurred())
42+
t.T().Logf("Created Kueue ResourceFlavor %s successfully", resourceFlavor.Name)
43+
44+
return resourceFlavor
45+
}
46+
47+
func CreateKueueClusterQueue(t Test, clusterQueueSpec v1beta1.ClusterQueueSpec) *v1beta1.ClusterQueue {
48+
t.T().Helper()
49+
50+
clusterQueue := &v1beta1.ClusterQueue{
51+
TypeMeta: metav1.TypeMeta{
52+
APIVersion: v1beta1.SchemeGroupVersion.String(),
53+
Kind: "ClusterQueue",
54+
},
55+
ObjectMeta: metav1.ObjectMeta{
56+
GenerateName: "cq-",
57+
},
58+
Spec: clusterQueueSpec,
59+
}
60+
61+
clusterQueue, err := t.Client().Kueue().KueueV1beta1().ClusterQueues().Create(t.Ctx(), clusterQueue, metav1.CreateOptions{})
62+
t.Expect(err).NotTo(gomega.HaveOccurred())
63+
t.T().Logf("Created Kueue ClusterQueue %s successfully", clusterQueue.Name)
64+
65+
return clusterQueue
66+
}
67+
68+
func CreateKueueLocalQueue(t Test, namespace, clusterQueueName string) *v1beta1.LocalQueue {
69+
t.T().Helper()
70+
71+
localQueue := &v1beta1.LocalQueue{
72+
TypeMeta: metav1.TypeMeta{
73+
APIVersion: v1beta1.SchemeGroupVersion.String(),
74+
Kind: "LocalQueue",
75+
},
76+
ObjectMeta: metav1.ObjectMeta{
77+
GenerateName: "lq-",
78+
Namespace: namespace,
79+
},
80+
Spec: v1beta1.LocalQueueSpec{
81+
ClusterQueue: v1beta1.ClusterQueueReference(clusterQueueName),
82+
},
83+
}
84+
85+
localQueue, err := t.Client().Kueue().KueueV1beta1().LocalQueues(namespace).Create(t.Ctx(), localQueue, metav1.CreateOptions{})
86+
t.Expect(err).NotTo(gomega.HaveOccurred())
87+
t.T().Logf("Created Kueue LocalQueue %s/%s successfully", localQueue.Namespace, localQueue.Name)
88+
89+
return localQueue
90+
}

0 commit comments

Comments
 (0)