|
1 |
| -COSI repos and images: |
| 1 | +# Container Object Storage Provisioner Sidecar |
2 | 2 |
|
3 |
| -[Spec](https://sigs.k8s.io/container-object-storage-interface-spec) \ |
4 |
| -[API](https://sigs.k8s.io/container-object-storage-interface-api) \ |
5 |
| -[Controller](https://sigs.k8s.io/container-object-storage-interface-controller) <br/> |
6 |
| -  - [images: cosi-controller](https://quay.io/repository/containerobjectstorage/objectstorage-controller?tab=tags) \ |
7 |
| - [Provisioner Sidecar](https://sigs.k8s.io/container-object-storage-interface-provisioner-sidecar) <br /> |
8 |
| -   - images: cosi-provisioner \ |
9 |
| - [CSI Adapter](https://sigs.k8s.io/container-object-storage-interface-csi-adapter) <br /> |
10 |
| -   - images: cosi-node-adapter |
| 3 | +Container Object Storage Interface (COSI) provisioner sidecar is responsible to manage lifecycle of COSI objects and is |
| 4 | +deployed as a sidecar to a provisioner. |
| 5 | +Specifically, the sidecar monitors the lifecycle of the CRDs generated by the [COSI Controller](https://github.com/kubernetes-sigs/container-object-storage-interface-controller): |
11 | 6 |
|
12 |
| - <br /> |
13 |
| - |
14 |
| -COSI deprecated repos: |
| 7 | +- Bucket - Represents a Bucket or its equivalent in the storage backend |
| 8 | +- BucketAccess - Represents a access token or service account in the storage backend |
15 | 9 |
|
16 |
| -[Spec](https://github.com/container-object-storage-interface/spec) \ |
17 |
| -[API](https://github.com/container-object-storage-interface/api) \ |
18 |
| -[Manager (i.e. Controller)](https://github.com/container-object-storage-interface/cosi-controller-manager) \ |
19 |
| -[Provisioner Sidecar](https://github.com/container-object-storage-interface/cosi-provisioner-sidecar) \ |
20 |
| -[Ephemeral CSI Driver](https://github.com/container-object-storage-interface/ephemeral-csi-driver) |
| 10 | +and makes gRPC calls to the associated provisioner. |
21 | 11 |
|
22 |
| -# Container Object Storage Interface Provisioner Sidecar |
| 12 | +In this repo you will also find a [sample provisioner](./cmd/sample-driver) based on Minio. |
23 | 13 |
|
24 |
| - Container Object Storage Interface (COSI) provisioner responsible to interface with COSI drivers. |
| 14 | +## Developer Guide |
25 | 15 |
|
26 |
| -## Community, discussion, contribution, and support |
| 16 | +Before diving into the code of this repo, we suggest that you familiarize yourself with: |
| 17 | + |
| 18 | +- The Spec of CRDs in [objectstorage.k8s.io/v1alpha1/types.go](https://github.com/kubernetes-sigs/container-object-storage-interface-api/blob/master/apis/objectstorage.k8s.io/v1alpha1/types.go) |
| 19 | +- The Spec of the COSI objects [sigs.k8s.io/container-object-storage-interface-spec](https://github.com/kubernetes-sigs/container-object-storage-interface-spec) |
| 20 | + |
| 21 | +A good starting point towards understanding the functionality of this repo would be to study the tests: |
| 22 | + |
| 23 | +- [Bucket Controller Test](./pkg/controller/bucket/bucket_controller_test.go) |
| 24 | +- [Bucket Access Controller Test](./pkg/controller/bucketaccess/bucket_access_controller_test.go) |
| 25 | + |
| 26 | +### Build and Test |
27 | 27 |
|
28 |
| -If you are new to a SIG Storage project, check out this [contributing guide](https://github.com/kubernetes/community/blob/master/sig-storage/CONTRIBUTING.md) |
29 |
| -and the [community page](https://github.com/kubernetes/community/tree/master/sig-storage). |
| 28 | +In order to build and generate the Docker images execute: |
| 29 | +```bash |
| 30 | +make container |
| 31 | +``` |
| 32 | +Notice that this command will also generate the image for the sample-driver: |
| 33 | +```bash |
| 34 | +objectstorage-sidecar:latest |
| 35 | +sample-driver:latest |
| 36 | +``` |
30 | 37 |
|
31 |
| -If you are new to the SIG Storage COSI project, check out the [spec](https://sigs.k8s.io/container-object-storage-interface-spec/blob/master/spec.md), [KEP](https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/1979-object-storage-support), and [project board](https://github.com/orgs/kubernetes-sigs/projects/). |
| 38 | + |
| 39 | +In order to run the tests execute: |
| 40 | +```bash |
| 41 | +make test |
| 42 | +``` |
| 43 | + |
| 44 | +## References |
| 45 | + |
| 46 | +- [Documentation](https://github.com/kubernetes-sigs/container-object-storage-interface-api/tree/master/docs/index.md) |
| 47 | +- [Deployment Guide](https://github.com/kubernetes-sigs/container-object-storage-interface-api/tree/master/docs/deployment-guide.md) |
| 48 | +- [Weekly Meetings](https://github.com/kubernetes-sigs/container-object-storage-interface-api/tree/master/docs/meetings.md) |
| 49 | +- [Roadmap](https://github.com/orgs/kubernetes-sigs/projects/8) |
| 50 | + |
| 51 | +## Community, discussion, contribution, and support |
32 | 52 |
|
33 | 53 | Learn how to engage with the Kubernetes community on the [community page](http://kubernetes.io/community/).
|
34 | 54 |
|
35 | 55 | You can reach the maintainers of this project at:
|
36 | 56 |
|
37 | 57 | - [Slack](https://kubernetes.slack.com/messages/sig-storage-cosi)
|
38 |
| -- [Mailing List](https://groups.google.com/g/container-object-storage-interface-wg?pli=1) |
| 58 | +- [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-storage) |
39 | 59 |
|
40 | 60 | ### Code of conduct
|
41 | 61 |
|
|
0 commit comments