Skip to content

Latest commit

 

History

History
46 lines (34 loc) · 2.27 KB

CONTRIBUTING.md

File metadata and controls

46 lines (34 loc) · 2.27 KB

Contribution Guidelines

Sign the CLA

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.

Contributing a Patch

  1. Submit an issue describing your proposed change to the repo in question.
  2. The repo owners will respond to your issue promptly.
  3. If your proposed change is accepted, and you haven't already done so, sign a Contributor License Agreement (see details above).
  4. Fork the desired repo, develop and test your code changes.
  5. Submit a pull request.

Development

Please go through CSI Spec and General CSI driver development guideline to develop a basic understanding of the CSI driver before you start.

Requirements

  • Golang 1.15.+
  • Ginkgo in your PATH for end-to-end testing
  • Docker 17.05+ for releasing

Dependency

Dependencies are managed through go module. To build the project simply type: make

Testing

  • To execute all unit tests, run: make test
  • To execute all sanity tests, run: make test-sanity

Release Process

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.

Helm and Manifests

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, the deploy/kubernetes/values files, and the appropriate kustomization.yaml file(s).