mirror of
https://github.com/SigNoz/charts.git
synced 2025-12-18 21:23:51 +00:00
Update CONTRIBUTING.md (#721)
Related: https://github.com/SigNoz/platform-pod/issues/250
This commit is contained in:
103
CONTRIBUTING.md
103
CONTRIBUTING.md
@@ -1,74 +1,49 @@
|
||||
# How to Contribute
|
||||
# Contributing Guidelines
|
||||
Thank you for your interest in contributing to our project! We greatly value feedback and contributions from our community. This document will guide you through the contribution process.
|
||||
|
||||
There are primarily 2 charts in the SigNoz Helm Charts repository:
|
||||
## How can I contribute?
|
||||
|
||||
- signoz: signoz and signoz collector
|
||||
### Finding Issues to Work On
|
||||
- Check our [existing open issues](https://github.com/SigNoz/charts/issues?q=is%3Aopen+is%3Aissue)
|
||||
- Look for [good first issues](https://github.com/SigNoz/charts/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) to start with
|
||||
- Review [recently closed issues](https://github.com/SigNoz/charts/issues?q=is%3Aissue+is%3Aclosed) to avoid duplicates
|
||||
|
||||
### Submitting Pull Requests
|
||||
1. **Development**:
|
||||
- Setup your [development environment](#where-do-i-go-from-here)
|
||||
- Work against the latest `main` branch
|
||||
- Focus on specific changes
|
||||
- Ensure all tests pass locally
|
||||
- Follow our [commit convention](#commit-convention)
|
||||
2. **Submit PR**:
|
||||
- Ensure your branch can be auto-merged
|
||||
- Address any CI failures
|
||||
- Respond to review comments promptly
|
||||
|
||||
For substantial changes, please split your contribution into multiple PRs:
|
||||
1. First PR: Overall structure (README, configurations, interfaces)
|
||||
2. Second PR: Core implementation (split further if needed)
|
||||
3. Final PR: Documentation updates and end-to-end tests
|
||||
|
||||
### Commit Convention
|
||||
We follow [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/). All commits and PRs should include type specifiers (e.g., `feat:`, `fix:`, `docs:`, etc.).
|
||||
|
||||
## How can I contribute to the charts repository?
|
||||
There are primarily 3 charts in the SigNoz Helm Charts repository:
|
||||
- signoz: signoz, signoz otel collector and schema Migrator
|
||||
- clickhouse: clickhouse and zookeeper
|
||||
- k8s-infra: k8s-infra collection agent
|
||||
|
||||
signoz chart is where most of the developments are done.
|
||||
clickhouse chart is seldom updated to to sync major enhancements.
|
||||
|
||||
### To run helm chart for local development
|
||||
|
||||
## Where do I go from here?
|
||||
### To run the helm chart for local development
|
||||
- run `git clone https://github.com/SigNoz/charts.git` followed by `cd charts`
|
||||
- it is recommended to use lightweight kubernetes (k8s) cluster for local development:
|
||||
- It is recommended to use a lightweight Kubernetes (k8s) cluster for local development:
|
||||
- [kind](https://kind.sigs.k8s.io/docs/user/quick-start/#installation)
|
||||
- [k3d](https://k3d.io/#installation)
|
||||
- [minikube](https://minikube.sigs.k8s.io/docs/start/)
|
||||
- create a k8s cluster and make sure `kubectl` points to the locally created k8s cluster
|
||||
- run `make dev-install` to install SigNoz chart with `my-release` release name in `platform` namespace.
|
||||
- run `kubectl -n platform port-forward svc/my-release-signoz 8080:8080` to make SigNoz UI available at [localhost:8080](http://localhost:8080)
|
||||
- Create a k8s cluster and make sure `kubectl` points to the locally created k8s cluster
|
||||
|
||||
**To install HotROD sample app:**
|
||||
|
||||
```bash
|
||||
curl -sL https://github.com/SigNoz/signoz/raw/main/sample-apps/hotrod/hotrod-install.sh \
|
||||
| HELM_RELEASE=my-release SIGNOZ_NAMESPACE=platform bash
|
||||
```
|
||||
|
||||
**To load data with HotROD sample app:**
|
||||
|
||||
```bash
|
||||
kubectl -n sample-application run strzal --image=djbingham/curl \
|
||||
--restart='OnFailure' -i --tty --rm --command -- curl -X POST -F \
|
||||
'user_count=6' -F 'spawn_rate=2' http://locust-master:8089/swarm
|
||||
```
|
||||
|
||||
**To stop the load generation:**
|
||||
|
||||
```bash
|
||||
kubectl -n sample-application run strzal --image=djbingham/curl \
|
||||
--restart='OnFailure' -i --tty --rm --command -- curl \
|
||||
http://locust-master:8089/stop
|
||||
```
|
||||
|
||||
**To delete HotROD sample app:**
|
||||
|
||||
```bash
|
||||
curl -sL https://github.com/SigNoz/signoz/raw/main/sample-apps/hotrod/hotrod-delete.sh \
|
||||
| HOTROD_NAMESPACE=sample-application bash
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## General Instructions
|
||||
|
||||
You can always reach out to `prashant@signoz.io` to understand more about the SigNoz helm chart.
|
||||
We are very responsive over [slack](https://signoz.io/slack).
|
||||
|
||||
Please use the label `helm-chart` for your issues and pull requests.
|
||||
|
||||
- If you find any bugs, please create an issue
|
||||
- If you find anything missing in documentation, you can create an issue with label `documentation`
|
||||
- If you want to build any new feature, please create an issue with label `enhancement`
|
||||
- If you want to discuss something about the helm chart, please use the [Helm chart discussion](https://github.com/SigNoz/signoz/discussions/713)
|
||||
|
||||
### Conventions to follow when submitting commits, PRs
|
||||
|
||||
1. We try to follow https://www.conventionalcommits.org/en/v1.0.0/
|
||||
|
||||
More specifically the commits and PRs should have type specifiers prefixed in the name. [This](https://www.conventionalcommits.org/en/v1.0.0/#specification) should give you a better idea.
|
||||
|
||||
2. Follow [GitHub Flow](https://guides.github.com/introduction/flow/) guidelines for your contribution flows
|
||||
|
||||
3. Feel free to ping us on `#contributing` on our slack community if you need any help on this :)
|
||||
## How can I get help?
|
||||
Need assistance? Join our Slack community:
|
||||
- [`#contributing`](https://signoz-community.slack.com/archives/C01LWQ8KS7M)
|
||||
|
||||
Reference in New Issue
Block a user