Skip to content

Latest commit

 

History

History
42 lines (34 loc) · 1.49 KB

development.md

File metadata and controls

42 lines (34 loc) · 1.49 KB

Development

Please go through CSI Spec and General CSI driver development guideline to get some basic understanding of CSI driver before you start.

Requirements

  • Golang 1.17.6
  • Docker 20.10.5+ for releasing

Dependency

Dependencies are managed through go module.

Build

To build the project, first turn on go mod using export GO111MODULE=on, then build the project using: make build-image

Deploy local version

First you need several things:

  • kubeconfig
  • docker registry (cf example)

Second, push the image to the docker registry. With the example above, here is how you push:

REGISTRY_IMAGE=localhost:4242/<IMAGE_NAME> REGISTRY_TAG=<CUSTOM_TAG> make image-tag image-push

Finaly, deploy the plugin by using helm (see deploy) and add to the command line the following parameters:

    # Note: set your docker-registry address
    --set image.repository=10.0.1.10:30754/<IMAGE_NAME> \
	--set image.tag=<IMAGE_TAG>

Release

See Release Process

Testing

  • To execute all unit tests, run: make test
  • To execute e2e single az tests, run:
    export OSC_ACCESS_KEY=XXX
	export OSC_SECRET_KEY=XXX
	export KC=$(base64 -w 0 path/to/kube_config.yaml)
    make test-e2e-single-az