ClickHouse / ClickHouse/clickhousectl

Document ClickPipe creation prerequisites and flag constraints

Open
#846 0 comments 0 reactions 0 assignees View on GitHub
cloud documentation
Dominant language
Rust
Stars
74
Forks
5
Avg merge
2d 11h
Merged PRs (30d)
196

Description

## Validated scope and current-PR plan — 2026-09-11

This section records the QA review and the current decision to finalize existing PRs without opening new PRs. It supersedes the proposed routing/fix suggestions in the original report below; the original observations are retained. Central plan: #757.

### Work for the existing PRs

Implementation status: the checked sub-items below are implemented on the existing PR branches and validated locally on combined head `82b374816a917cbac3a68194659beaaa5c7c9087`. Required final-head Cloud CI and merging remain pending; this issue stays open. See #757 for the combined validation and CI status.

- [x] #777 — State the supported pipe-kind constraint on `scale --replicas`, consistent with the adjacent CPU/memory flags and verified API behavior.

### Remaining scope

Create-source prerequisites, create-time scaling triad help, boolean-default wording, TLS flow and the single-value flag decision remain deferred.

This is a partial assignment. Keep the issue open after these PRs land; use sub-item references rather than a whole-issue closing keyword.

### Validation and corrections

The scale source-kind note is a small addition on the range-validation surface. Create-time triad constraints, source prerequisites, TLS flow and named boolean defaults are separate help gaps. A one-value enum is not necessarily a defect: leaving an explicit stable flag is defensible. Do not hide it solely for cosmetic reasons; verify provider/source constraints before documenting them.

---

## Original QA report

Found in the 2026-09-11 QA sweep of the combined PR stack at [`d2c37f81`](https://github.com/ClickHouse/clickhousectl/commit/d2c37f814fff53fe68d636e34103e2d0550bf84d), top PR #823, installed release build (package version still 0.4.2). Reproduced behaviour only; no implementation included.

Severity: low; batch.

- `create postgres` has a good 7-line prerequisites block (logical replication, publication, `REPLICATION` grant, docs URL) — it made the CDC setup work first time. `create mysql`, `mongodb`, `bigquery`, `kafka`, `kinesis` have **no** CONTEXT block. MySQL CDC has equivalent prerequisites (binlog ROW format, GTID or file/pos, replication grants); MongoDB needs a replica set / oplog. `--replication-mechanism [possible values: GTID, FILE_POS]` is the only hint.
- `scale --cpu-millicores`/`--memory-gb` say "(streaming pipes)"; `--replicas` says nothing. On an object-storage pipe all three → `UNPROCESSABLE_CONTENT: … not supported for this source type`. State which pipe kinds are scalable (CDC pipes scale via `cdc-scaling`, which the CONTEXT does say).
- `create … --replicas 2` alone → `initial scaling requires --replicas, --cpu-millicores, and --memory-gb together` (good, exit 2) but none of the three doc comments mentions the other two (12 flags across 4 create screens). AGENTS.md: cross-flag constraints go on the flag.
- `create bigquery --replication-mode` has `[default: snapshot] [possible values: snapshot]` — a flag that can only be set to its default. Hide until a second mode exists or say why.
- `create postgres` CONTEXT: "the three `` settings send false when omitted" — does not name them (`--allow-nullable-columns`, `--enable-failover-slots`, `--delete-on-merge`) and "send false" is request-shape detail. Move to a clause on each flag.
- Connecting a CDC pipe to ClickHouse's own managed Postgres fails on TLS until `--ca-certificate` from `cloud postgres certs get --output` is passed; the runtime hint rescues you, but a `Typical flow:` line linking the two commands would avoid hitting the error first.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with AGENTS.md and the existing create and scale command help surfaces, using the documented postgres CONTEXT block and the listed flags as references. Review #757 and the existing PR work before changing anything; done means the deferred prerequisites, cross-flag constraints, boolean defaults, TLS flow, and replication-mode guidance are documented without duplicating completed work.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
cli, documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.