/cosi-provisioner-sidecar

Container Object Storage Interface (COSI) provisioner responsible to interface with COSI drivers.

Primary LanguageGoApache License 2.0Apache-2.0

Container Object Storage Provisioner Sidecar

Container Object Storage Interface (COSI) provisioner sidecar is responsible to manage lifecycle of COSI objects and is deployed as a sidecar to a provisioner. Specifically, the sidecar monitors the lifecycle of the CRDs generated by the COSI Controller:

  • Bucket - Represents a Bucket or its equivalent in the storage backend
  • BucketAccess - Represents a access token or service account in the storage backend

and makes gRPC calls to the associated provisioner.

In this repo you will also find a sample provisioner based on Minio.

Developer Guide

Before diving into the code of this repo, we suggest that you familiarize yourself with:

A good starting point towards understanding the functionality of this repo would be to study the tests:

Build and Test

In order to build and generate the Docker images execute:

make container

Notice that this command will also generate the image for the sample-driver:

objectstorage-sidecar:latest
sample-driver:latest

In order to run the tests execute:

make test

Running the Sidecar

To see an example of running the sidecar, take a look at the COSI Driver Minio sub-project.

References

Community, discussion, contribution, and support

You can reach the maintainers of this project at:

Code of conduct

Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.