local-controller-plugin

module
v0.0.0-...-5f4c9f6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 3, 2018 License: Apache-2.0

README

A controller service for CSI-compliant local disk

This is Cloud Foundry's implementation of the Container Storage Interface's Controller Plugin for local volumes. The CSI Local Volume Release for Cloud Foundry submodules this repository. Functionally, this repository enables the CSI Local Volume Release access to controller capabilities and serves to make the release compliant with controller RPCs.

This repository is to be operated solely for testing purposes. It should be used as an example for all other Cloud Foundry controller plugins adhering to the Container Storage Interface.

Developer Notes

THIS REPOSITORY IS A WORK IN PROGRESS.

RPC Expected Response
CreateVolume Success response with name of the volume created
DeleteVolume Success response
ControllerPublishVolume Empty Response
ControllerUnpublishVolume Empty Response
ValidateVolumeCapabilities True if no capabilities are specified, False if either FsType or mount flags is specified
ListVolumes Empty Response
GetCapacity Empty Response
ControllerGetCapabilities Returns response with all controller capabilities

Note: Even though CreateVolume and DeleteVolume return a response that a volume is created or deleted, the actual functionality under the hood is a no op. Since we're using a local volume, we designate the node plugin to handle the actual creation and deletion of the plugin.

Running Tests

  1. Install go.
  2. export PATH=$GOPATH/bin:$PATH
  3. go get code.cloudfoundry.org/local-controller-plugin >/dev/null 2>&1 || true
  4. pushd $GOPATH/code.cloudfoundry.org/local-controller-plugin
  5. scripts/go_get_all_dep.sh
  6. ginkgo -r

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL