Contributing
Thank you for your interest in CHOps. We are grateful that you want to help make it better.
CHOps is open source under the Apache License 2.0, and we develop it in public. We want it to become a community project over time.
Code contributions and the CLA
We accept code contributions (pull requests) through a Contributor License Agreement (CLA). You keep the copyright in your work. The CLA lets us ship your contribution in the open-source core and in the commercial Pro edition. Read the full CLA before you accept it.
When you open your first pull request, the CLA Assistant bot adds a comment and asks you to accept the CLA. Once you accept it, the bot records your acceptance and the CLA check on your pull request passes. You only do this once, and the bot does not ask again for pull requests from the same account unless we change the CLA terms.
The CLA check is mandatory on the main branch, so we cannot merge a pull request until you accept the CLA. This protects you and the project, and it keeps the license clear for everyone involved.
Other ways to help
You can also help without code. We are grateful for this help, and it shapes the future of CHOps.
Bug reports. If something does not work as you expect, please tell us. A good bug report includes:
- Your CHOps version
- Your ClickHouse® database version
- Clear steps to reproduce the problem, and the result that you expected
Feature requests. If you want CHOps to do something new, please tell us. Describe the problem that you want to solve, or the workflow that you have in mind. We read every request. Many of the best features come from people who tell us what they need in their daily work.
Open a bug report or a feature request as an issue in our repository at github.com/Quantrail-Data/CH-Ops. We read all issues, and your input directly shapes the roadmap.
Set up a development environment
Because CHOps uses the Apache License 2.0, you can run and change your own copy. We test CHOps with Bun 1.4.2. To set up a development environment:
git clone https://github.com/Quantrail-Data/CH-Ops.git
cd CH-Ops
cp .env.example .env
# In .env, set SUPER_ADMIN_1, SUPER_ADMIN_1_PASSWORD,
# SUPER_ADMIN_1_EMAIL, and ENCRYPTION_SECRET.
bun install
bun run db:migrate
bun run devThe dev command starts the backend on port 3000 and the frontend development server on port 5173. Open http://localhost:5173. When you edit the code, the servers reload automatically. After you sign in, add your test cluster in Control panel > Cluster Management. To set up a local ClickHouse® cluster for tests, see Setting Up a Test Cluster. Before you open a pull request, run bun run test, bun run lint, and bun run check:sensitive-logging. See Testing.
Thank you again for your help. We are glad that you are here.