Skip to content

Commit 46ed6e5

Browse files
committed
fix: vendor conflict and cyclic import
- remove support to get gpu config from the specified provider (can't be used because leads to cyclic import) Signed-off-by: vadasambar <[email protected]>
1 parent 539dd13 commit 46ed6e5

File tree

1,157 files changed

+312317
-90
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,157 files changed

+312317
-90
lines changed

cluster-autoscaler/cloudprovider/kwok/config.go renamed to cluster-autoscaler/cloudprovider/kwok/kwok_config.go

Lines changed: 19 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,6 @@ import (
2222
"strings"
2323

2424
"k8s.io/apimachinery/pkg/util/yaml"
25-
builder "k8s.io/autoscaler/cluster-autoscaler/cloudprovider/builder"
26-
"k8s.io/autoscaler/cluster-autoscaler/config"
2725
klog "k8s.io/klog/v2"
2826
)
2927

@@ -78,30 +76,19 @@ func loadConfigFile() *KwokProviderConfig {
7876

7977
if kwokConfig.File.Nodes != nil {
8078

81-
if kwokConfig.File.Nodes.GPUInfoFrom.Provider == "" {
82-
klog.Warningf("file.nodes.gpuInfoFrom.provider is empty or undefined")
79+
if kwokConfig.File.Nodes.GPUConfig == nil {
80+
klog.Warningf("file.nodes.gpuConfig is empty or undefined")
8381
}
8482

85-
if kwokConfig.File.Nodes.GPUInfoFrom.Provider != "" {
86-
87-
if kwokConfig.File.Nodes.GPUInfoFrom.Provider == "custom" {
88-
if kwokConfig.File.Nodes.GPUInfoFrom.Custom == nil {
89-
klog.Fatalf("file.gpuInfoFrom.custom is empty or undefined")
90-
} else {
91-
kwokConfig.status.key = kwokConfig.File.Nodes.GPUInfoFrom.Custom.GPULabelKey
92-
kwokConfig.status.availableGPUTypes = kwokConfig.File.Nodes.GPUInfoFrom.Custom.AvailableGPUTypes
93-
}
94-
} else {
95-
96-
cp := builder.NewCloudProvider(config.AutoscalingOptions{
97-
CloudProviderName: kwokConfig.File.Nodes.GPUInfoFrom.Provider,
98-
})
99-
kwokConfig.status.gpuLabel = cp.GPULabel()
100-
kwokConfig.status.availableGPUTypes = cp.GetAvailableGPUTypes()
101-
}
83+
if kwokConfig.File.Nodes.GPUConfig.GPULabelKey != "" &&
84+
kwokConfig.File.Nodes.GPUConfig.AvailableGPUTypes != nil {
85+
kwokConfig.status.key = kwokConfig.File.Nodes.GPUConfig.GPULabelKey
86+
kwokConfig.status.availableGPUTypes = kwokConfig.File.Nodes.GPUConfig.AvailableGPUTypes
87+
} else {
88+
klog.Fatal("file.nodes.gpuConfig.gpuLabelKey or config.file.nodes.gpuConfig.availableGPUTypes is empty")
10289
}
103-
10490
}
91+
10592
case nodeTemplatesFromCluster:
10693
if kwokConfig.Cluster == nil {
10794
klog.Fatalf("please specify a value for 'cluster' in kwok config (currently empty or undefined)")
@@ -129,26 +116,17 @@ func loadConfigFile() *KwokProviderConfig {
129116
}
130117

131118
if kwokConfig.Cluster.Nodes != nil {
132-
if kwokConfig.Cluster.Nodes.GPUInfoFrom.Provider == "" {
133-
klog.Warningf("cluster.nodes.gpuInfoFrom.provider was not specified (empty or undefined)")
119+
120+
if kwokConfig.Cluster.Nodes.GPUConfig == nil {
121+
klog.Warningf("cluster.nodes.gpuConfig is empty or undefined")
134122
}
135123

136-
if kwokConfig.Cluster.Nodes.GPUInfoFrom.Provider != "" {
137-
if kwokConfig.Cluster.Nodes.GPUInfoFrom.Provider == "custom" {
138-
if kwokConfig.Cluster.Nodes.GPUInfoFrom.Custom == nil {
139-
klog.Fatalf("cluster.gpuInfoFrom.custom is empty or undefined")
140-
} else {
141-
kwokConfig.status.key = kwokConfig.Cluster.Nodes.GPUInfoFrom.Custom.GPULabelKey
142-
kwokConfig.status.availableGPUTypes = kwokConfig.Cluster.Nodes.GPUInfoFrom.Custom.AvailableGPUTypes
143-
}
144-
} else {
145-
146-
cp := builder.NewCloudProvider(config.AutoscalingOptions{
147-
CloudProviderName: kwokConfig.File.Nodes.GPUInfoFrom.Provider,
148-
})
149-
kwokConfig.status.gpuLabel = cp.GPULabel()
150-
kwokConfig.status.availableGPUTypes = cp.GetAvailableGPUTypes()
151-
}
124+
if kwokConfig.Cluster.Nodes.GPUConfig.GPULabelKey != "" &&
125+
kwokConfig.Cluster.Nodes.GPUConfig.AvailableGPUTypes != nil {
126+
kwokConfig.status.key = kwokConfig.Cluster.Nodes.GPUConfig.GPULabelKey
127+
kwokConfig.status.availableGPUTypes = kwokConfig.Cluster.Nodes.GPUConfig.AvailableGPUTypes
128+
} else {
129+
klog.Fatal("cluster.nodes.gpuConfig.gpuLabelKey or cluster.nodes.gpuConfig.availableGPUTypes is empty")
152130
}
153131
}
154132

@@ -158,7 +136,7 @@ func loadConfigFile() *KwokProviderConfig {
158136
kwokConfig.ReadNodesFrom)
159137
}
160138

161-
if kwokConfig.install != false {
139+
if kwokConfig.Kwok.Install != false {
162140
if kwokConfig.Kwok != nil && kwokConfig.Kwok.Release != "" {
163141
kwokConfig.status.kwokRelease = kwokConfig.Kwok.Release
164142
} else {

cluster-autoscaler/cloudprovider/kwok/install.go renamed to cluster-autoscaler/cloudprovider/kwok/kwok_install.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ import (
2626
"path/filepath"
2727
"strings"
2828
"text/template"
29-
"time"
3029

3130
log "github.com/sirupsen/logrus"
3231

cluster-autoscaler/cloudprovider/kwok/provider.go renamed to cluster-autoscaler/cloudprovider/kwok/kwok_provider.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ func BuildKwokCloudProvider(opts config.AutoscalingOptions, do cloudprovider.Nod
185185
}
186186
}
187187

188-
if kwok.status.kwokRelease != "" {
188+
if kwokConfig.status.kwokRelease != "" {
189189
if err := InstallKwok(kwokConfig.status.kwokRelease); err != nil {
190190
klog.Fatalf("couldn't install kwok: %v", err)
191191
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
/*
2+
Copyright 2023 The Kubernetes Authors.
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 kwok

cluster-autoscaler/cloudprovider/kwok/types.go renamed to cluster-autoscaler/cloudprovider/kwok/kwok_types.go

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -53,15 +53,10 @@ type NodegroupsConfig struct {
5353
}
5454

5555
type NodeConfig struct {
56-
GPUInfoFrom *GPUConfig `json:"gpuInfoFrom" yaml:"gpuInfoFrom"`
56+
GPUConfig *GPUConfig `json:"gpuConfig" yaml:"gpuConfig"`
5757
}
5858

5959
type GPUConfig struct {
60-
Provider string `json:"provider" yaml:"provider"`
61-
Custom *CustomGPUConfig `json:"custom" yaml:"custom"`
62-
}
63-
64-
type CustomGPUConfig struct {
6560
GPULabelKey string `json:"gpuLabelKey" yaml:"gpuLabelKey"`
6661
AvailableGPUTypes map[string]struct{} `json:"availableGPUTypes" yaml:"availableGPUTypes"`
6762
}

cluster-autoscaler/go.mod

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,16 +41,16 @@ require (
4141
k8s.io/api v0.28.0-beta.0
4242
k8s.io/apimachinery v0.28.0-beta.0
4343
k8s.io/apiserver v0.28.0-beta.0
44+
k8s.io/cli-runtime v0.28.0-beta.0
4445
k8s.io/client-go v0.28.0-beta.0
4546
k8s.io/cloud-provider v0.28.0-beta.0
46-
k8s.io/cli-runtime v0.28.0-alpha.2
4747
k8s.io/cloud-provider-aws v1.27.0
4848
k8s.io/component-base v0.28.0-beta.0
4949
k8s.io/component-helpers v0.28.0-beta.0
5050
k8s.io/klog/v2 v2.100.1
51+
k8s.io/kubectl v0.0.0
5152
k8s.io/kubelet v0.28.0-beta.0
5253
k8s.io/kubernetes v1.28.0-beta.0
53-
k8s.io/kubectl v0.0.0
5454
k8s.io/legacy-cloud-providers v0.0.0
5555
k8s.io/utils v0.0.0-20230406110748-d93618cff8a2
5656
sigs.k8s.io/cloud-provider-azure v1.26.2
@@ -113,8 +113,8 @@ require (
113113
github.com/golang-jwt/jwt/v4 v4.5.0 // indirect
114114
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
115115
github.com/golang/protobuf v1.5.3 // indirect
116-
github.com/google/cadvisor v0.47.3 // indirect
117116
github.com/google/btree v1.0.1 // indirect
117+
github.com/google/cadvisor v0.47.3 // indirect
118118
github.com/google/cel-go v0.16.0 // indirect
119119
github.com/google/gnostic-models v0.6.8 // indirect
120120
github.com/google/gofuzz v1.2.0 // indirect
@@ -210,7 +210,7 @@ require (
210210
k8s.io/kms v0.28.0-beta.0 // indirect
211211
k8s.io/kube-openapi v0.0.0-20230717233707-2695361300d9 // indirect
212212
k8s.io/kube-scheduler v0.0.0 // indirect
213-
k8s.io/metrics v0.28.0-alpha.2 // indirect
213+
k8s.io/metrics v0.28.0-beta.0 // indirect
214214
k8s.io/mount-utils v0.26.0-alpha.0 // indirect
215215
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.1.2 // indirect
216216
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect

cluster-autoscaler/go.sum

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -353,9 +353,9 @@ github.com/golangplus/testing v1.0.0/go.mod h1:ZDreixUV3YzhoVraIDyOzHrr76p6NUh6k
353353
github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
354354
github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
355355
github.com/google/btree v1.0.1 h1:gK4Kx5IaGY9CD5sPJ36FHiBJ6ZXl0kilRiiCj+jdYp4=
356+
github.com/google/btree v1.0.1/go.mod h1:xXMiIv4Fb/0kKde4SpL7qlzvu5cMJDRkFDxJfI9uaxA=
356357
github.com/google/cadvisor v0.47.3 h1:5XKTHBduWlBjmgw07uwEiC+Xa/FRd0MZI37oqlTagO0=
357358
github.com/google/cadvisor v0.47.3/go.mod h1:iJdTjcjyKHjLCf7OSTzwP5GxdfrkPusw2x5bwGvuLUw=
358-
github.com/google/btree v1.0.1/go.mod h1:xXMiIv4Fb/0kKde4SpL7qlzvu5cMJDRkFDxJfI9uaxA=
359359
github.com/google/cel-go v0.16.0 h1:DG9YQ8nFCFXAs/FDDwBxmL1tpKNrdlGUM9U3537bX/Y=
360360
github.com/google/cel-go v0.16.0/go.mod h1:HXZKzB0LXqer5lHHgfWAnlYwJaQBDKMjxjulNQzhwhY=
361361
github.com/google/gnostic-models v0.6.8 h1:yo/ABAfM5IMRsS1VnXjTBvUb61tFIHozhlYvRgGre9I=
@@ -1228,12 +1228,12 @@ k8s.io/apimachinery v0.28.0-beta.0 h1:n3ksD30Isi22awAww6cnQVC8JhnID1Ow4Jhi7ylEHN
12281228
k8s.io/apimachinery v0.28.0-beta.0/go.mod h1:xhQIsaL3hXneGluH+0pzF7kr+VYuLS/VcYJxF1xQf+g=
12291229
k8s.io/apiserver v0.28.0-beta.0 h1:cBEihWU2oxBKwVOGUGLmj2UfaP8u6R8HtibIUb8IMfo=
12301230
k8s.io/apiserver v0.28.0-beta.0/go.mod h1:ManA8E9ARrLN6MJhBcKk9tx0NMLlzF9TduC/YrZk02Q=
1231+
k8s.io/cli-runtime v0.28.0-beta.0 h1:KlEz53Zs5+ZNaKElBtg3DfPNJ394z9g3mOTjV99U7w8=
1232+
k8s.io/cli-runtime v0.28.0-beta.0/go.mod h1:mPpmKJ1RmPuO8y3K6ERhcrITFyNmc+HWQ7+1SpLTmb4=
12311233
k8s.io/client-go v0.28.0-beta.0 h1:qOEJLbK9Keyf3VUwwKap8VvXAcqsITDrRzhaWb/0GHY=
12321234
k8s.io/client-go v0.28.0-beta.0/go.mod h1:oCV0v/fHTnc/TUMH0XJORY6kUDh2H6t5DcLv2ISSL/4=
12331235
k8s.io/cloud-provider v0.28.0-beta.0 h1:DZ9NWlvtctRPwhAXESMKGpbkj3QFMU01VYWjrmD2tdc=
12341236
k8s.io/cloud-provider v0.28.0-beta.0/go.mod h1:UtHxIbNDxSLkDqHKJpaBgE5D7BaWQqizg5XjwN+LU+E=
1235-
k8s.io/cli-runtime v0.28.0-alpha.2 h1:/txmN+S+1B+lpu4UtWxHdsbqRFTEmYDSWkdTvyVVc5E=
1236-
k8s.io/cli-runtime v0.28.0-alpha.2/go.mod h1:nY6BcaBX8zN5GAV0q+88HhOY3X0IqshUVodfWpqRaxY=
12371237
k8s.io/cloud-provider-aws v1.27.0 h1:PF8YrH8QcN6JoXB3Xxlaz84SBDYMPunJuCc0cPuCWXA=
12381238
k8s.io/cloud-provider-aws v1.27.0/go.mod h1:9vUb5mnVnReSRDBWcBxB1b0HOeEc472iOPmrnwpN9SA=
12391239
k8s.io/component-base v0.28.0-beta.0 h1:ipTyy//lORGt/s9oPhhmFea6RApO9Eacy6nqotcs/Fc=
@@ -1266,10 +1266,10 @@ k8s.io/kubernetes v1.28.0-beta.0 h1:uahjemZxNSVqQ7kplcJT0U+P5cI2C+UGIlO9EeZmSdc=
12661266
k8s.io/kubernetes v1.28.0-beta.0/go.mod h1:nhfWVo79v+4OquJkNW3Lx/3qjpT1vRCkwBrnhs9iG+Q=
12671267
k8s.io/legacy-cloud-providers v0.28.0-beta.0 h1:WV320jat/DwXHVDPPHIr35VPeRk1DxfU55ItCpbozPI=
12681268
k8s.io/legacy-cloud-providers v0.28.0-beta.0/go.mod h1:tBAukoE4hkSH7BewmIEMIqxyGj4AvPitkMnTQ577P2c=
1269+
k8s.io/metrics v0.28.0-beta.0 h1:82QyPr9WjUX4rhXiIVOMTfDCqomr/iF1+ASP8g03pYQ=
1270+
k8s.io/metrics v0.28.0-beta.0/go.mod h1:ZbPHhEEOtrR5iTYG/jYosDN6drw1Gp1nYiQQJw87Jcg=
12691271
k8s.io/mount-utils v0.28.0-beta.0 h1:RHNbG8SJ7grMsDLVZdxtMigBk/BB+dP6kcSEINXR2ZE=
12701272
k8s.io/mount-utils v0.28.0-beta.0/go.mod h1:AyP8LmZSLgpGdFQr+vzHTerlPiGvXUdP99n98Er47jw=
1271-
k8s.io/metrics v0.28.0-alpha.2 h1:ja7zhFEFb1DxT0ZCBeEeNhHHwl3u/rSVuZA5xrDJwiM=
1272-
k8s.io/metrics v0.28.0-alpha.2/go.mod h1:f3TQDPT3gMj61SAGIz+pNDQ4qVhV4NZ3+tNJFPU9TzI=
12731273
k8s.io/utils v0.0.0-20211116205334-6203023598ed/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
12741274
k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 h1:qY1Ad8PODbnymg2pRbkyMT/ylpTrCM8P2RJ0yroCyIk=
12751275
k8s.io/utils v0.0.0-20230406110748-d93618cff8a2/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=

cluster-autoscaler/vendor/github.com/Azure/go-ansiterm/LICENSE

Lines changed: 21 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

cluster-autoscaler/vendor/github.com/Azure/go-ansiterm/README.md

Lines changed: 12 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

cluster-autoscaler/vendor/github.com/Azure/go-ansiterm/SECURITY.md

Lines changed: 41 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)