Skip to content

Commit 47486bf

Browse files
committed
feat(watcher): Workload monitoring, code structure
This commit changes the monitoring logic to observe the lifecycle of Kueue workloads instead of raw K8s Job resources. This allows the code to gracefully handle other workload types, such as Ray jobs, without any changes. Also, the code has been decomposed into separate packages for improved readability (although there are still a lot of rough edges).
1 parent 8e3855e commit 47486bf

File tree

8 files changed

+634
-304
lines changed

8 files changed

+634
-304
lines changed

watcher/go.mod

+19-1
Original file line numberDiff line numberDiff line change
@@ -7,37 +7,53 @@ require (
77
github.com/sirupsen/logrus v1.9.3
88
k8s.io/api v0.30.2
99
k8s.io/apimachinery v0.30.2
10+
k8s.io/cli-runtime v0.30.2
1011
k8s.io/client-go v0.30.2
1112
sigs.k8s.io/kueue v0.7.1
13+
sigs.k8s.io/kueue/cmd/experimental/kjobctl v0.0.0-20240716160328-9f407b175407
1214
)
1315

1416
require (
17+
github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect
1518
github.com/davecgh/go-spew v1.1.1 // indirect
1619
github.com/emicklei/go-restful/v3 v3.11.0 // indirect
20+
github.com/evanphx/json-patch v5.6.0+incompatible // indirect
21+
github.com/go-errors/errors v1.4.2 // indirect
1722
github.com/go-logr/logr v1.4.2 // indirect
1823
github.com/go-openapi/jsonpointer v0.20.0 // indirect
1924
github.com/go-openapi/jsonreference v0.20.2 // indirect
2025
github.com/go-openapi/swag v0.22.4 // indirect
2126
github.com/gogo/protobuf v1.3.2 // indirect
2227
github.com/golang/protobuf v1.5.4 // indirect
28+
github.com/google/btree v1.0.1 // indirect
2329
github.com/google/gnostic-models v0.6.8 // indirect
2430
github.com/google/go-cmp v0.6.0 // indirect
2531
github.com/google/gofuzz v1.2.0 // indirect
32+
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect
2633
github.com/google/uuid v1.6.0 // indirect
2734
github.com/gorilla/websocket v1.5.0 // indirect
35+
github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7 // indirect
2836
github.com/imdario/mergo v0.3.16 // indirect
37+
github.com/inconshreveable/mousetrap v1.1.0 // indirect
2938
github.com/josharian/intern v1.0.0 // indirect
3039
github.com/json-iterator/go v1.1.12 // indirect
40+
github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de // indirect
3141
github.com/mailru/easyjson v0.7.7 // indirect
42+
github.com/moby/term v0.0.0-20221205130635-1aeaba878587 // indirect
3243
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
3344
github.com/modern-go/reflect2 v1.0.2 // indirect
45+
github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 // indirect
3446
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
47+
github.com/peterbourgon/diskv v2.0.1+incompatible // indirect
3548
github.com/pkg/errors v0.9.1 // indirect
3649
github.com/pmezard/go-difflib v1.0.0 // indirect
3750
github.com/slack-go/slack v0.12.2 // indirect
51+
github.com/spf13/cobra v1.8.1 // indirect
3852
github.com/spf13/pflag v1.0.5 // indirect
3953
github.com/stretchr/objx v0.5.2 // indirect
4054
github.com/stretchr/testify v1.8.4 // indirect
55+
github.com/xlab/treeprint v1.2.0 // indirect
56+
go.starlark.net v0.0.0-20230525235612-a134d8f9ddca // indirect
4157
golang.org/x/net v0.25.0 // indirect
4258
golang.org/x/oauth2 v0.12.0 // indirect
4359
golang.org/x/sync v0.7.0 // indirect
@@ -53,8 +69,10 @@ require (
5369
k8s.io/klog/v2 v2.120.1 // indirect
5470
k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect
5571
k8s.io/utils v0.0.0-20240102154912-e7106e64919e // indirect
56-
sigs.k8s.io/controller-runtime v0.17.3 // indirect
72+
sigs.k8s.io/controller-runtime v0.18.4 // indirect
5773
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
74+
sigs.k8s.io/kustomize/api v0.13.5-0.20230601165947-6ce0bf390ce3 // indirect
75+
sigs.k8s.io/kustomize/kyaml v0.14.3-0.20230601165947-6ce0bf390ce3 // indirect
5876
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect
5977
sigs.k8s.io/yaml v1.4.0 // indirect
6078
)

watcher/go.sum

+205-2
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)