Skip to content

feat(cli): schedule BigQuery CDC syncs with --sync-cron (#1112) - #1120

Closed
sdairs wants to merge 2 commits into
cursor/openapi-drift-1112-cli-postgres-c05dfrom
cursor/openapi-drift-1112-cli-clickpipes-c05d
Closed

sdairs wants to merge 2 commits into
cursor/openapi-drift-1112-cli-postgres-c05dfrom
cursor/openapi-drift-1112-cli-clickpipes-c05d

Conversation

@sdairs

@sdairs sdairs commented Oct 21, 2026 •

Copy link
Copy Markdown
Member

CLI exposure for the ClickPipes part of the #1112 drift remediation. Refs #1112. Stacked on CLI 1 (#1118, cursor/openapi-drift-1112-cli-postgres-c05d), which it merges; the syncCron library change it uses is in API 2 (#1119).

Follow-up issues

I can't open issues from this environment. This PR's tracking issue would read:

CLI: BigQuery ClickPipe sync schedules (#1112). Expose cloud clickpipe create bigquery --sync-cron. Not exposed: changing the schedule after creation, because the API has no BigQuery source update.

Changes

  • clickpipe create bigquery --sync-cron <CRON> sends settings.syncCron. It takes a 5-field expression or a descriptor such as @hourly, in UTC unless prefixed with CRON_TZ=<zone>.
  • It conflicts with --sync-interval-seconds, which clap reports as a usage error. Snapshot mode and blank values are rejected as usage errors before any request. The API validates the expression itself.
  • docs/reference/clickpipe-configuration.md documents it in "Configure BigQuery CDC".

Tests

  • Parsing (value preserved verbatim, conflict with --sync-interval-seconds).
  • Request builder (exact settings JSON for an events-based CDC pipe).
  • Validation (blank value, snapshot mode, both as usage errors).

Verification

cargo fmt --all --check, both clickhousectl clippy configurations, cargo check -p clickhousectl --no-default-features and cargo test -p clickhousectl all pass. No files added or renamed.

Open in Web Open in Cursor 

clickpipe create bigquery gains --sync-cron, which conflicts with
--sync-interval-seconds and is rejected in snapshot mode. The cron
expression itself is validated by the API.

Co-authored-by: Alasdair Brown <sdairs@users.noreply.github.com>
@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

…r/openapi-drift-1112-cli-clickpipes-c05d

Co-authored-by: Alasdair Brown <sdairs@users.noreply.github.com>
@cursor
cursor Bot changed the base branch from cursor/openapi-drift-1112-api-clickpipes-c05d to cursor/openapi-drift-1112-cli-postgres-c05d October 21, 2026 21:03
@sdairs sdairs closed this Oct 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants