Skip to content

Extract the ClickPipes runtime and finalize the cloud CLI split - #402

Merged
sdairs merged 1 commit into
issue-386-clickpipes-clapfrom
issue-385-clickpipes-runtime-finalize
Aug 13, 2026
Merged

Extract the ClickPipes runtime and finalize the cloud CLI split#402
sdairs merged 1 commit into
issue-386-clickpipes-clapfrom
issue-385-clickpipes-runtime-finalize

Conversation

@sdairs

@sdairs sdairs commented Aug 7, 2026

Copy link
Copy Markdown
Collaborator

Closes #385

Summary

  • Move all ClickPipes dispatch, handlers, builders, file/base64 parsing, output, client wrappers, and tests into the ClickPipes domain module.
  • Remove the generic cloud commands module and reduce cloud client/CLI facades to shared and top-level responsibilities.
  • Preserve all ClickPipes request shapes and keep the cross-domain subprocess wiremock test file unchanged.
  • Update contributor guidance and Cloud integration path filters for the final per-domain layout.

Tests

  • cargo fmt --all --check
  • cargo test -p clickhousectl
  • cargo check --workspace --all-features
  • cargo clippy --workspace --all-targets -- -D warnings

@sdairs
sdairs requested review from iskakaushik and rndD as code owners August 7, 2026 22:16
@sdairs
sdairs temporarily deployed to cloud-integration August 7, 2026 22:16 — with GitHub Actions Inactive
@sdairs sdairs changed the title Extract ClickPipes runtime and finalize cloud CLI split Extract the ClickPipes runtime and finalize the cloud CLI split Aug 7, 2026
@sdairs
sdairs requested a lite review from Copilot August 8, 2026 08:16

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Finalizes the per-domain cloud CLI layout by removing the generic cloud ClickPipes runtime module and moving all ClickPipes dispatch/handlers/builders/parsers/wrappers/tests into the clickpipes domain module, leaving cloud/mod.rs, cloud/cli.rs, and cloud/client.rs with shared/top-level responsibilities only.

Changes:

  • Removed the generic cloud/commands.rs monolith and delegated CloudCommands::ClickPipe dispatch to clickpipes::run.
  • Moved ClickPipes runtime (handlers, request builders, file/base64 parsing, output) plus CloudClient wrapper methods and unit tests into src/cloud/clickpipes.rs.
  • Updated contributor guidance and CI integration path filters to match the final per-domain layout.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated no comments.

Show a summary per file
File Description
crates/clickhousectl/src/cloud/mod.rs Removes commands module usage and delegates ClickPipes dispatch to the ClickPipes domain runtime.
crates/clickhousectl/src/cloud/commands.rs Deleted the generic cloud commands monolith (previous home of ClickPipes runtime).
crates/clickhousectl/src/cloud/client.rs Removes ClickPipes-specific wrapper methods, leaving core client/auth/error/shared helpers.
crates/clickhousectl/src/cloud/clickpipes.rs Becomes the single home for ClickPipes clap defs + runtime + builders + CloudClient wrappers + tests.
crates/clickhousectl/src/cloud/cli.rs Narrows cloud CLI facade to top-level enums and crate-internal domain re-exports.
AGENTS.md Updates contributor instructions to the final per-domain command pattern.
.github/workflows/cloud-integration.yml Broadens the ClickHousectl cloud source path filter to src/cloud/** for the new layout.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@sdairs
sdairs force-pushed the issue-385-clickpipes-runtime-finalize branch from ee4566c to 317e7db Compare August 8, 2026 18:37
@sdairs
sdairs had a problem deploying to cloud-integration August 8, 2026 18:37 — with GitHub Actions Failure
@sdairs
sdairs temporarily deployed to cloud-integration August 8, 2026 18:45 — with GitHub Actions Inactive
@sdairs
sdairs force-pushed the issue-385-clickpipes-runtime-finalize branch from 317e7db to a4dddd2 Compare August 13, 2026 11:37
@sdairs
sdairs had a problem deploying to cloud-integration August 13, 2026 11:38 — with GitHub Actions Failure
@sdairs
sdairs had a problem deploying to cloud-integration August 13, 2026 11:48 — with GitHub Actions Failure
@sdairs
sdairs force-pushed the issue-385-clickpipes-runtime-finalize branch from a4dddd2 to 97a0c90 Compare August 13, 2026 18:29
@sdairs sdairs added the run-cloud-integration Run live Cloud integration tests for this PR head label Aug 13, 2026
@sdairs
sdairs had a problem deploying to cloud-integration August 13, 2026 18:56 — with GitHub Actions Failure
@sdairs sdairs added run-cloud-integration Run live Cloud integration tests for this PR head and removed run-cloud-integration Run live Cloud integration tests for this PR head labels Aug 13, 2026
@sdairs
sdairs temporarily deployed to cloud-integration August 13, 2026 19:10 — with GitHub Actions Inactive

@iskakaushik iskakaushik left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@sdairs
sdairs merged commit faf940a into main Aug 13, 2026
5 of 6 checks passed
@sdairs
sdairs deleted the issue-385-clickpipes-runtime-finalize branch August 13, 2026 19:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

run-cloud-integration Run live Cloud integration tests for this PR head

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Extract the ClickPipes runtime and finalize the cloud CLI split

3 participants