Thank you for considering contributing to this project! This document provides guidelines to help you contribute effectively.
- Kubernetes knowledge
- Helm chart development experience
- Understanding of the specific blockchain client you're creating/modifying a chart for
Each chart should follow this structure:
charts/<blockchain-client>/
├── Chart.yaml
├── values.yaml
├── templates/
│ ├── deployment.yaml
│ ├── service.yaml
│ ├── configmap.yaml
│ ├── secret.yaml (if needed)
│ ├── pvc.yaml (if needed)
│ └── NOTES.txt
├── OWNERS (maintainers list)
└── README.md (chart-specific documentation)
- Charts must be compatible with Helm 3
- Include comprehensive documentation
- Provide sensible defaults in values.yaml
- Include proper Kubernetes resource requests and limits
- Follow security best practices
- Group related values logically
- Add comments explaining the purpose of values
- Include sensible defaults that work out-of-the-box
- Provide examples for custom configurations
- Fork the repository
- Create a new branch for your changes
- Make your changes following the chart development guidelines
- Test your charts thoroughly
- Submit a pull request
- Address review comments
- Chart version updated according to semantic versioning
- Chart README.md updated with any new values or changes
- Chart has been tested and verified to work
-
helm lintpasses without warnings -
helm templategenerates valid Kubernetes resources
# Lint the chart
helm lint charts/your-chart
# Render the templates
helm template charts/your-chart
# Install the chart in a test environment
helm install test-release charts/your-chart --dry-runPlease respect other contributors and maintain a positive environment for everyone.
Your contributions help make this project better for everyone!