Kubernetes projects require that you sign a Contributor License Agreement (CLA) before we can accept your pull requests.
Please see https://git.k8s.io/community/CLA.md for more info.
- Submit an issue describing your proposed change to the repo in question.
- The repo owners will respond to your issue promptly.
- If your proposed change is accepted, and you haven't already done so, sign a Contributor License Agreement (see details above).
- Fork the desired repo, develop and test your code changes.
- Submit a pull request.
Please go through CSI Spec and General CSI driver development guideline to develop a basic understanding of the CSI driver before you start.
- Golang 1.15.+
- Ginkgo in your PATH for end-to-end testing
- Docker 17.05+ for releasing
Dependencies are managed through go module. To build the project simply type: make
- To execute all unit tests, run:
make test
- To execute all sanity tests, run:
make test-sanity
Please see Release Process.
Notes:
- Sanity tests ensure that the driver complies with the CSI specification.
- E2E tests exercise various driver functionalities in a Kubernetes cluster. See E2E Testing for more details.
The Helm chart for this project is in the charts/aws-fsx-openzfs-csi-driver
directory.
The manifests for this project are in the deploy/kubernetes
directory.
When updating the Helm chart:
- There is a values file in
deploy/kubernetes/values
used for generating the manifests. - Changes should only be made to the helm template files. Do not make any changes to the manifests - these files are automatically generated from the template files.
- To generate the manifests with your changes to the helm chart, run
make generate-kustomize
. - When adding a new resource template to the Helm chart please update the
generate-kustomize
make target, thedeploy/kubernetes/values
files, and the appropriate kustomization.yaml file(s).