Skip to content

Commit 06b813f

Browse files
authored
Merge pull request kubernetes#124634 from saschagrunert/cri-staging-code
Move `pkg/kubelet/cri/remote` to `cri-client`
2 parents 2592caa + 2aa9e76 commit 06b813f

39 files changed

+891
-473
lines changed

cmd/kubemark/app/hollow_node.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,13 +41,13 @@ import (
4141
_ "k8s.io/component-base/metrics/prometheus/version" // for version metric registration
4242
"k8s.io/component-base/version"
4343
"k8s.io/component-base/version/verflag"
44+
remote "k8s.io/cri-client/pkg"
45+
fakeremote "k8s.io/cri-client/pkg/fake"
4446
"k8s.io/kubernetes/pkg/api/legacyscheme"
4547
"k8s.io/kubernetes/pkg/cluster/ports"
4648
cadvisortest "k8s.io/kubernetes/pkg/kubelet/cadvisor/testing"
4749
"k8s.io/kubernetes/pkg/kubelet/certificate/bootstrap"
4850
"k8s.io/kubernetes/pkg/kubelet/cm"
49-
"k8s.io/kubernetes/pkg/kubelet/cri/remote"
50-
fakeremote "k8s.io/kubernetes/pkg/kubelet/cri/remote/fake"
5151
"k8s.io/kubernetes/pkg/kubemark"
5252
kubemarkproxy "k8s.io/kubernetes/pkg/proxy/kubemark"
5353
utilflag "k8s.io/kubernetes/pkg/util/flag"

go.mod

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@ require (
6464
go.etcd.io/etcd/client/pkg/v3 v3.5.13
6565
go.etcd.io/etcd/client/v3 v3.5.13
6666
go.opentelemetry.io/contrib/instrumentation/github.com/emicklei/go-restful/otelrestful v0.42.0
67-
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.0
6867
go.opentelemetry.io/otel v1.20.0
6968
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.20.0
7069
go.opentelemetry.io/otel/sdk v1.20.0
@@ -100,6 +99,7 @@ require (
10099
k8s.io/component-helpers v0.0.0
101100
k8s.io/controller-manager v0.0.0
102101
k8s.io/cri-api v0.0.0
102+
k8s.io/cri-client v0.0.0
103103
k8s.io/csi-translation-lib v0.0.0
104104
k8s.io/dynamic-resource-allocation v0.0.0
105105
k8s.io/endpointslice v0.0.0
@@ -203,6 +203,7 @@ require (
203203
go.etcd.io/etcd/raft/v3 v3.5.13 // indirect
204204
go.etcd.io/etcd/server/v3 v3.5.13 // indirect
205205
go.opencensus.io v0.24.0 // indirect
206+
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.0 // indirect
206207
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.44.0 // indirect
207208
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.20.0 // indirect
208209
go.opentelemetry.io/otel/metric v1.20.0 // indirect

pkg/kubelet/apis/podresources/client.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@ import (
2424
"google.golang.org/grpc"
2525
"google.golang.org/grpc/credentials/insecure"
2626

27+
"k8s.io/cri-client/pkg/util"
2728
"k8s.io/kubelet/pkg/apis/podresources/v1"
2829
"k8s.io/kubelet/pkg/apis/podresources/v1alpha1"
29-
"k8s.io/kubernetes/pkg/kubelet/util"
3030
)
3131

3232
// Note: Consumers of the pod resources API should not be importing this package.

pkg/kubelet/cri/remote/OWNERS

Lines changed: 0 additions & 6 deletions
This file was deleted.

pkg/kubelet/kubelet.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ import (
6363
"k8s.io/component-helpers/apimachinery/lease"
6464
internalapi "k8s.io/cri-api/pkg/apis"
6565
runtimeapi "k8s.io/cri-api/pkg/apis/runtime/v1"
66+
remote "k8s.io/cri-client/pkg"
6667
"k8s.io/klog/v2"
6768
pluginwatcherapi "k8s.io/kubelet/pkg/apis/pluginregistration/v1"
6869
statsapi "k8s.io/kubelet/pkg/apis/stats/v1alpha1"
@@ -80,7 +81,6 @@ import (
8081
"k8s.io/kubernetes/pkg/kubelet/config"
8182
"k8s.io/kubernetes/pkg/kubelet/configmap"
8283
kubecontainer "k8s.io/kubernetes/pkg/kubelet/container"
83-
"k8s.io/kubernetes/pkg/kubelet/cri/remote"
8484
"k8s.io/kubernetes/pkg/kubelet/events"
8585
"k8s.io/kubernetes/pkg/kubelet/eviction"
8686
"k8s.io/kubernetes/pkg/kubelet/images"

pkg/kubelet/kubelet_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ import (
5757
featuregatetesting "k8s.io/component-base/featuregate/testing"
5858
internalapi "k8s.io/cri-api/pkg/apis"
5959
runtimeapi "k8s.io/cri-api/pkg/apis/runtime/v1"
60+
remote "k8s.io/cri-client/pkg"
61+
fakeremote "k8s.io/cri-client/pkg/fake"
6062
"k8s.io/klog/v2"
6163
"k8s.io/klog/v2/ktesting"
6264
"k8s.io/kubernetes/pkg/features"
@@ -68,8 +70,6 @@ import (
6870
"k8s.io/kubernetes/pkg/kubelet/configmap"
6971
kubecontainer "k8s.io/kubernetes/pkg/kubelet/container"
7072
containertest "k8s.io/kubernetes/pkg/kubelet/container/testing"
71-
"k8s.io/kubernetes/pkg/kubelet/cri/remote"
72-
fakeremote "k8s.io/kubernetes/pkg/kubelet/cri/remote/fake"
7373
"k8s.io/kubernetes/pkg/kubelet/eviction"
7474
"k8s.io/kubernetes/pkg/kubelet/images"
7575
"k8s.io/kubernetes/pkg/kubelet/kuberuntime"

pkg/kubelet/kuberuntime/kuberuntime_container.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,10 @@ import (
4848
"k8s.io/apimachinery/pkg/util/sets"
4949
utilfeature "k8s.io/apiserver/pkg/util/feature"
5050
runtimeapi "k8s.io/cri-api/pkg/apis/runtime/v1"
51+
remote "k8s.io/cri-client/pkg"
5152
kubelettypes "k8s.io/kubelet/pkg/types"
5253
"k8s.io/kubernetes/pkg/features"
5354
kubecontainer "k8s.io/kubernetes/pkg/kubelet/container"
54-
"k8s.io/kubernetes/pkg/kubelet/cri/remote"
5555
"k8s.io/kubernetes/pkg/kubelet/events"
5656
proberesults "k8s.io/kubernetes/pkg/kubelet/prober/results"
5757
"k8s.io/kubernetes/pkg/kubelet/types"

pkg/kubelet/kuberuntime/logs/logs.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ import (
3535
v1 "k8s.io/api/core/v1"
3636
internalapi "k8s.io/cri-api/pkg/apis"
3737
runtimeapi "k8s.io/cri-api/pkg/apis/runtime/v1"
38-
"k8s.io/kubernetes/pkg/kubelet/cri/remote"
38+
remote "k8s.io/cri-client/pkg"
3939
"k8s.io/kubernetes/pkg/kubelet/types"
4040
"k8s.io/kubernetes/pkg/util/tail"
4141
)

pkg/kubelet/server/server.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ import (
6767
"k8s.io/component-base/metrics/legacyregistry"
6868
"k8s.io/component-base/metrics/prometheus/slis"
6969
runtimeapi "k8s.io/cri-api/pkg/apis/runtime/v1"
70+
"k8s.io/cri-client/pkg/util"
7071
podresourcesapi "k8s.io/kubelet/pkg/apis/podresources/v1"
7172
podresourcesapiv1alpha1 "k8s.io/kubelet/pkg/apis/podresources/v1alpha1"
7273
"k8s.io/kubelet/pkg/cri/streaming"
@@ -84,7 +85,6 @@ import (
8485
"k8s.io/kubernetes/pkg/kubelet/prober"
8586
servermetrics "k8s.io/kubernetes/pkg/kubelet/server/metrics"
8687
"k8s.io/kubernetes/pkg/kubelet/server/stats"
87-
"k8s.io/kubernetes/pkg/kubelet/util"
8888
)
8989

9090
func init() {

pkg/kubelet/util/util_unix.go

Lines changed: 0 additions & 98 deletions
Original file line numberDiff line numberDiff line change
@@ -20,113 +20,15 @@ limitations under the License.
2020
package util
2121

2222
import (
23-
"context"
24-
"fmt"
25-
"net"
2623
"net/url"
27-
"os"
2824
"path/filepath"
29-
30-
"golang.org/x/sys/unix"
31-
"k8s.io/klog/v2"
3225
)
3326

3427
const (
3528
// unixProtocol is the network protocol of unix socket.
3629
unixProtocol = "unix"
3730
)
3831

39-
// CreateListener creates a listener on the specified endpoint.
40-
func CreateListener(endpoint string) (net.Listener, error) {
41-
protocol, addr, err := parseEndpointWithFallbackProtocol(endpoint, unixProtocol)
42-
if err != nil {
43-
return nil, err
44-
}
45-
if protocol != unixProtocol {
46-
return nil, fmt.Errorf("only support unix socket endpoint")
47-
}
48-
49-
// Unlink to cleanup the previous socket file.
50-
err = unix.Unlink(addr)
51-
if err != nil && !os.IsNotExist(err) {
52-
return nil, fmt.Errorf("failed to unlink socket file %q: %v", addr, err)
53-
}
54-
55-
if err := os.MkdirAll(filepath.Dir(addr), 0750); err != nil {
56-
return nil, fmt.Errorf("error creating socket directory %q: %v", filepath.Dir(addr), err)
57-
}
58-
59-
// Create the socket on a tempfile and move it to the destination socket to handle improper cleanup
60-
file, err := os.CreateTemp(filepath.Dir(addr), "")
61-
if err != nil {
62-
return nil, fmt.Errorf("failed to create temporary file: %v", err)
63-
}
64-
65-
if err := os.Remove(file.Name()); err != nil {
66-
return nil, fmt.Errorf("failed to remove temporary file: %v", err)
67-
}
68-
69-
l, err := net.Listen(protocol, file.Name())
70-
if err != nil {
71-
return nil, err
72-
}
73-
74-
if err = os.Rename(file.Name(), addr); err != nil {
75-
return nil, fmt.Errorf("failed to move temporary file to addr %q: %v", addr, err)
76-
}
77-
78-
return l, nil
79-
}
80-
81-
// GetAddressAndDialer returns the address parsed from the given endpoint and a context dialer.
82-
func GetAddressAndDialer(endpoint string) (string, func(ctx context.Context, addr string) (net.Conn, error), error) {
83-
protocol, addr, err := parseEndpointWithFallbackProtocol(endpoint, unixProtocol)
84-
if err != nil {
85-
return "", nil, err
86-
}
87-
if protocol != unixProtocol {
88-
return "", nil, fmt.Errorf("only support unix socket endpoint")
89-
}
90-
91-
return addr, dial, nil
92-
}
93-
94-
func dial(ctx context.Context, addr string) (net.Conn, error) {
95-
return (&net.Dialer{}).DialContext(ctx, unixProtocol, addr)
96-
}
97-
98-
func parseEndpointWithFallbackProtocol(endpoint string, fallbackProtocol string) (protocol string, addr string, err error) {
99-
if protocol, addr, err = parseEndpoint(endpoint); err != nil && protocol == "" {
100-
fallbackEndpoint := fallbackProtocol + "://" + endpoint
101-
protocol, addr, err = parseEndpoint(fallbackEndpoint)
102-
if err == nil {
103-
klog.InfoS("Using this endpoint is deprecated, please consider using full URL format", "endpoint", endpoint, "URL", fallbackEndpoint)
104-
}
105-
}
106-
return
107-
}
108-
109-
func parseEndpoint(endpoint string) (string, string, error) {
110-
u, err := url.Parse(endpoint)
111-
if err != nil {
112-
return "", "", err
113-
}
114-
115-
switch u.Scheme {
116-
case "tcp":
117-
return "tcp", u.Host, nil
118-
119-
case "unix":
120-
return "unix", u.Path, nil
121-
122-
case "":
123-
return "", "", fmt.Errorf("using %q as endpoint is deprecated, please consider using full url format", endpoint)
124-
125-
default:
126-
return u.Scheme, "", fmt.Errorf("protocol %q not supported", u.Scheme)
127-
}
128-
}
129-
13032
// LocalEndpoint returns the full path to a unix socket at the given endpoint
13133
func LocalEndpoint(path, file string) (string, error) {
13234
u := url.URL{

0 commit comments

Comments
 (0)