Skip to main content

COSI Driver

COSI driver implements APIs that will be called by COSI controller. COSI driver must be deployed as sidecar for the COSI controller.

A COSI driver must implement following:

  • Identity server
  • COSI APIs

Identity Server

A IdentityServer reports the driver's name on the DriverGetInfo RPC call from the controller.

Identity Server Struct

type identityServer struct {
	spec.UnimplementedIdentityServer
	driverName string
}

Driver APIs

COSI driver must implement following APIs. We recommended developer synchronize all checks and business logic.

DriverCreateBucket

The DriverCreateBucket API is called when a user wants to create a new bucket. Driver must create the bucket only after ensuring that a bucket with same name does not already exist.

DriverDeleteBucket

The DriverDeleteBucket API is called when a user wants to delete a bucket. Driver must delete the bucket if it exists. If it cannot find a bucket with the matching name, it should return as success.

DriverGrantBucketAccess

The DriverGrantBucketAccess API is used to grant an application access to a bucket.

DriverRevokeBucketAccess

The DriverRevokeBucketAccess API is used to revoke an application's access to a bucket.