Skip to content
This repository was archived by the owner on Dec 6, 2024. It is now read-only.

Commit de8ed6f

Browse files
committed
monorepo: move imported sidecar to 'sidecar'
Move requisite imported controller code to './sidecar'. Modify imports to allow building. Docker and Makefile also needed some adjustments. Signed-off-by: Blaine Gardner <[email protected]>
1 parent fed8fca commit de8ed6f

17 files changed

+369
-79
lines changed

Diff for: controller/go.mod

+4-5
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,10 @@ module sigs.k8s.io/container-object-storage-interface-api/controller
22

33
go 1.22.5
44

5-
replace sigs.k8s.io/container-object-storage-interface-api/client => ../client
6-
7-
replace sigs.k8s.io/container-object-storage-interface-api/client/clientset/versioned => ../client/versioned
8-
9-
replace sigs.k8s.io/container-object-storage-interface-api/internal => ../internal
5+
replace (
6+
sigs.k8s.io/container-object-storage-interface-api/client => ../client
7+
sigs.k8s.io/container-object-storage-interface-api/internal => ../internal
8+
)
109

1110
require (
1211
github.com/spf13/cobra v1.8.1

Diff for: pkg/imported-sidecar/Dockerfile renamed to sidecar/Dockerfile

+15-7
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,26 @@
1+
# NOTE: context is expected to be repo root, not sidecar/ dir
2+
13
#
24
# BUILDER
35
#
4-
FROM docker.io/library/golang:1.22.3 AS builder
6+
FROM docker.io/library/golang:1.22.5 AS builder
57

68
WORKDIR /buildroot
79

810
# Cache deps before building and copying source, so that we don't need to re-download
911
# as much and so that source changes don't invalidate our downloaded layer.
10-
COPY go.mod go.mod
11-
COPY go.sum go.sum
12+
COPY client/ client/
13+
COPY internal/ internal/
14+
COPY proto/ proto/
15+
COPY sidecar/go.mod sidecar/go.mod
16+
COPY sidecar/go.sum sidecar/go.sum
17+
18+
WORKDIR /buildroot/sidecar
19+
1220
RUN go mod download
1321

14-
COPY cmd/ cmd/
15-
COPY pkg/ pkg/
22+
COPY sidecar/cmd/ cmd/
23+
COPY sidecar/pkg/ pkg/
1624

1725
ENV CGO_ENABLED=0
1826

@@ -29,8 +37,8 @@ LABEL description="COSI Storage Sidecar"
2937

3038
LABEL org.opencontainers.image.title="COSI Storage Sidecar"
3139
LABEL org.opencontainers.image.description="Container Object Storage Interface (COSI) Storage Provisioner Sidecar"
32-
LABEL org.opencontainers.image.source="https://github.com/kubernetes-sigs/container-object-storage-interface-provisioner-sidecar"
40+
LABEL org.opencontainers.image.source="https://github.com/kubernetes-sigs/container-object-storage-interface-provisioner-api/sidecar"
3341
LABEL org.opencontainers.image.licenses="APACHE-2.0"
3442

35-
COPY --from=builder /buildroot/artifacts/objectstorage-sidecar .
43+
COPY --from=builder /buildroot/sidecar/artifacts/objectstorage-sidecar .
3644
ENTRYPOINT ["/objectstorage-sidecar"]

Diff for: pkg/imported-sidecar/Makefile renamed to sidecar/Makefile

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
.DEFAULT_GOAL := help
22
SHELL = /usr/bin/env bash
3+
THIS_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST))))
34

45
# 'go env' vars aren't always available in make environments, so get defaults for needed ones
56
GOARCH ?= $(shell go env GOARCH)
@@ -22,7 +23,7 @@ IMAGE_TAG ?= cosi-provisioner-sidecar:latest
2223
.PHONY: build
2324
## Build local image for development, defaulting linux/<hostarch>
2425
build:
25-
$(DOCKER) build --platform $(PLATFORM) --tag $(IMAGE_TAG) .
26+
cd .. && $(DOCKER) build --file $(THIS_DIR)/Dockerfile --platform $(PLATFORM) --tag $(IMAGE_TAG) .
2627

2728
.PHONY: test
2829
## Test packages
File renamed without changes.

Diff for: pkg/imported-sidecar/cmd/objectstorage-sidecar/cmd.go renamed to sidecar/cmd/objectstorage-sidecar/cmd.go

+6-8
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,15 @@ import (
2020
"flag"
2121
"strings"
2222

23-
"sigs.k8s.io/container-object-storage-interface-api/controller"
24-
"sigs.k8s.io/container-object-storage-interface-provisioner-sidecar/pkg/bucket"
25-
"sigs.k8s.io/container-object-storage-interface-provisioner-sidecar/pkg/bucketaccess"
26-
"sigs.k8s.io/container-object-storage-interface-provisioner-sidecar/pkg/provisioner"
27-
cosi "sigs.k8s.io/container-object-storage-interface-spec"
28-
2923
"github.com/spf13/cobra"
3024
"github.com/spf13/pflag"
3125
"github.com/spf13/viper"
32-
3326
"k8s.io/klog/v2"
27+
"sigs.k8s.io/container-object-storage-interface-api/internal/runtime"
28+
cosi "sigs.k8s.io/container-object-storage-interface-api/proto"
29+
"sigs.k8s.io/container-object-storage-interface-api/sidecar/pkg/bucket"
30+
"sigs.k8s.io/container-object-storage-interface-api/sidecar/pkg/bucketaccess"
31+
"sigs.k8s.io/container-object-storage-interface-api/sidecar/pkg/provisioner"
3432
)
3533

3634
var (
@@ -90,7 +88,7 @@ func run(ctx context.Context, args []string) error {
9088
}
9189
klog.V(3).InfoS("Successfully connected to driver", "name", info.Name)
9290

93-
ctrl, err := controller.NewDefaultObjectStorageController("cosi", info.Name, 40)
91+
ctrl, err := runtime.NewDefaultObjectStorageController("cosi", info.Name, 40)
9492
if err != nil {
9593
return err
9694
}

Diff for: sidecar/go.mod

+81
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
module sigs.k8s.io/container-object-storage-interface-api/sidecar
2+
3+
go 1.22.5
4+
5+
replace (
6+
sigs.k8s.io/container-object-storage-interface-api/client => ../client
7+
sigs.k8s.io/container-object-storage-interface-api/internal => ../internal
8+
sigs.k8s.io/container-object-storage-interface-api/proto => ../proto
9+
)
10+
11+
require (
12+
github.com/pkg/errors v0.9.1
13+
github.com/spf13/cobra v1.8.1
14+
github.com/spf13/pflag v1.0.5
15+
github.com/spf13/viper v1.19.0
16+
google.golang.org/grpc v1.65.0
17+
k8s.io/api v0.30.3
18+
k8s.io/apimachinery v0.30.3
19+
k8s.io/client-go v0.30.3
20+
k8s.io/klog/v2 v2.130.1
21+
sigs.k8s.io/container-object-storage-interface-api/client v0.0.0-00010101000000-000000000000
22+
sigs.k8s.io/container-object-storage-interface-api/internal v0.0.0-00010101000000-000000000000
23+
sigs.k8s.io/container-object-storage-interface-api/proto v0.0.0-00010101000000-000000000000
24+
sigs.k8s.io/controller-runtime v0.18.4
25+
)
26+
27+
require (
28+
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
29+
github.com/emicklei/go-restful/v3 v3.11.0 // indirect
30+
github.com/evanphx/json-patch v4.12.0+incompatible // indirect
31+
github.com/evanphx/json-patch/v5 v5.9.0 // indirect
32+
github.com/fsnotify/fsnotify v1.7.0 // indirect
33+
github.com/go-logr/logr v1.4.1 // indirect
34+
github.com/go-openapi/jsonpointer v0.19.6 // indirect
35+
github.com/go-openapi/jsonreference v0.20.2 // indirect
36+
github.com/go-openapi/swag v0.22.3 // indirect
37+
github.com/gogo/protobuf v1.3.2 // indirect
38+
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
39+
github.com/golang/protobuf v1.5.4 // indirect
40+
github.com/google/gnostic-models v0.6.8 // indirect
41+
github.com/google/go-cmp v0.6.0 // indirect
42+
github.com/google/gofuzz v1.2.0 // indirect
43+
github.com/google/uuid v1.6.0 // indirect
44+
github.com/hashicorp/hcl v1.0.0 // indirect
45+
github.com/imdario/mergo v0.3.6 // indirect
46+
github.com/inconshreveable/mousetrap v1.1.0 // indirect
47+
github.com/josharian/intern v1.0.0 // indirect
48+
github.com/json-iterator/go v1.1.12 // indirect
49+
github.com/magiconair/properties v1.8.7 // indirect
50+
github.com/mailru/easyjson v0.7.7 // indirect
51+
github.com/mitchellh/mapstructure v1.5.0 // indirect
52+
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
53+
github.com/modern-go/reflect2 v1.0.2 // indirect
54+
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
55+
github.com/pelletier/go-toml/v2 v2.2.2 // indirect
56+
github.com/sagikazarmark/locafero v0.4.0 // indirect
57+
github.com/sagikazarmark/slog-shim v0.1.0 // indirect
58+
github.com/sourcegraph/conc v0.3.0 // indirect
59+
github.com/spf13/afero v1.11.0 // indirect
60+
github.com/spf13/cast v1.6.0 // indirect
61+
github.com/subosito/gotenv v1.6.0 // indirect
62+
go.uber.org/multierr v1.11.0 // indirect
63+
golang.org/x/exp v0.0.0-20230905200255-921286631fa9 // indirect
64+
golang.org/x/net v0.25.0 // indirect
65+
golang.org/x/oauth2 v0.20.0 // indirect
66+
golang.org/x/sys v0.20.0 // indirect
67+
golang.org/x/term v0.20.0 // indirect
68+
golang.org/x/text v0.15.0 // indirect
69+
golang.org/x/time v0.5.0 // indirect
70+
google.golang.org/genproto/googleapis/rpc v0.0.0-20240528184218-531527333157 // indirect
71+
google.golang.org/protobuf v1.34.2 // indirect
72+
gopkg.in/inf.v0 v0.9.1 // indirect
73+
gopkg.in/ini.v1 v1.67.0 // indirect
74+
gopkg.in/yaml.v2 v2.4.0 // indirect
75+
gopkg.in/yaml.v3 v3.0.1 // indirect
76+
k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect
77+
k8s.io/utils v0.0.0-20230726121419-3b25d923346b // indirect
78+
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
79+
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect
80+
sigs.k8s.io/yaml v1.4.0 // indirect
81+
)

0 commit comments

Comments
 (0)