Skip to content

[Automated] Update gcloud CLI Options - #4926

Merged
thomhurst merged 1 commit into
issue-4799-gcloud-group-descriptionsfrom
automated/update-cli-options-gcloud-ref-466f0a81f2f402c50967aeea05961c9f736298b6278d16ef3b866a89e9914526
Sep 14, 2026
Merged

thomhurst merged 1 commit into
issue-4799-gcloud-group-descriptionsfrom
automated/update-cli-options-gcloud-ref-466f0a81f2f402c50967aeea05961c9f736298b6278d16ef3b866a89e9914526

Conversation

@thomhurst

@thomhurst thomhurst commented Sep 14, 2026

Copy link
Copy Markdown
Owner

Summary

This PR contains automatically generated updates to gcloud CLI options classes.

The generator scraped the latest CLI help output from the installed tool.

Changes

  • Updated options classes to reflect latest CLI documentation
  • Added new commands if any were detected
  • Updated option types and descriptions

Assembly-wide public API impact

Affected API families: Gcloud.

  • Added APIs: 27
  • Removed or changed APIs: 46
  • Members with matching names but changed signatures: 11

Breaking changes are present. Consumers may need to update method arguments, option property types or nullability, enum members, and references to removed APIs.

Representative removed or changed members:

  • ModularPipelines.Google.Enums.GcloudDestination
  • ModularPipelines.Google.Enums.GcloudDestination.File = 0 -> ModularPipelines.Google.Enums.GcloudDestination
  • ModularPipelines.Google.Enums.GcloudDestination.Sliced = 1 -> ModularPipelines.Google.Enums.GcloudDestination
  • ModularPipelines.Google.Enums.GcloudDestination.Streaming = 2 -> ModularPipelines.Google.Enums.GcloudDestination
  • ModularPipelines.Google.Enums.GcloudExport

Representative added members:

  • ModularPipelines.Google.Enums.GcloudDownloadType
  • ModularPipelines.Google.Enums.GcloudDownloadType.File = 0 -> ModularPipelines.Google.Enums.GcloudDownloadType
  • ModularPipelines.Google.Enums.GcloudDownloadType.Sliced = 1 -> ModularPipelines.Google.Enums.GcloudDownloadType
  • ModularPipelines.Google.Enums.GcloudDownloadType.Streaming = 2 -> ModularPipelines.Google.Enums.GcloudDownloadType
  • ModularPipelines.Google.Enums.GcloudTestType.DirectConnectivity = 0 -> ModularPipelines.Google.Enums.GcloudTestType

Command coverage

Command coverage report:

  • gcloud (Google Cloud SDK 584.0.0 alpha 2026.09.04 beta 2026.09.04 bq 2.1.38 bundled-python3-unix 3.14.7 core 2026.09.04 gcloud-crc32c 1.0.0 gsutil 5.37 preview 2026.09.04): 7927 commands, tree 5fdad8cede50aabd57b55497e772c19fb37aedd8773cfc60a95c7e99d354d594
    • Baseline comparison: 7927 commands at Google Cloud SDK 584.0.0 alpha 2026.09.04 beta 2026.09.04 bq 2.1.38 bundled-python3-unix 3.14.7 core 2026.09.04 gcloud-crc32c 1.0.0 gsutil 5.37 preview 2026.09.04 -> 7927 commands at Google Cloud SDK 584.0.0 alpha 2026.09.04 beta 2026.09.04 bq 2.1.38 bundled-python3-unix 3.14.7 core 2026.09.04 gcloud-crc32c 1.0.0 gsutil 5.37 preview 2026.09.04

Verification

  • Solution builds successfully

🤖 Generated with ModularPipelines.OptionsGenerator

@thomhurst thomhurst added automated dependencies Pull requests that update a dependency file labels Sep 14, 2026
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 14, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ⚠️ Failed 2026-09-14T04:32:22.817286Z 8516452 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@greptile-apps

greptile-apps Bot commented Sep 14, 2026

Copy link
Copy Markdown

Too many files changed for review (1658 files, 100 file limit).

@github-actions

Copy link
Copy Markdown
Contributor

Review: Automated gcloud CLI options update

This is a fully generated PR (1657 files changed, +12,342/-12,513) produced by ModularPipelines.OptionsGenerator against the latest gcloud CLI (SDK 584.0.0). Per repo policy, generated output under src/ModularPipelines.Google is authoritative and not hand-reviewed line-by-line; the diff was too large for the standard PR-diff API (1657 files vs. the 300-file cap), so this review verified scope and correctness through targeted checks instead:

  • Scope confirmed to generated artifacts only. Sampled and cross-checked the changed-file list — everything falls under src/ModularPipelines.Google/Enums, Options, and Generated/Gcloud.Generation.json. No hand-written source was touched.
  • Generator/scraper untouched by this PR. Diffed tools/ModularPipelines.OptionsGenerator between the PR's actual base (issue-4799-gcloud-group-descriptions) and the PR head — identical. The new group-description parsing logic and its tests (CliArgumentGroupParser.cs, GcloudGroupDescriptionTests.cs, Fixtures/Gcloud/*) already exist on the base branch; this PR is a pure regeneration run, not a generator change.
  • Breaking removals are clean. Spot-checked GcloudDestination (removed, per the description's API-impact summary) — confirmed no remaining references anywhere in ModularPipelines.Google, so the removal doesn't leave a dangling/broken reference. The corresponding --processcount flag now generates GcloudProcessCount instead, consistent with an upstream gcloud CLI rename rather than a generator regression.
  • No unresolved prior feedback. Existing bot comments (Codex, Greptile) both bailed out due to the file count and raised no actionable findings to address.

No issues found. Given the file count, this isn't an exhaustive per-file audit, but the sampled evidence is consistent with a correct, in-scope mechanical regeneration, matching this repo's stated policy that current tool output is authoritative even when it breaks prior generated APIs.

@thomhurst

Copy link
Copy Markdown
Owner Author

Manual review found remaining sibling-help contamination in GcloudStorageDiagnoseOptions.Generated.cs. --logs-path is still emitted as GcloudLogsPath? with the neighboring --download-type header and enum values in its description. --process-count is still GcloudProcessCount? with neighboring --upload-type values (File, Streaming, ParallelComposite), although its own help describes a process count.

This output does not yet complete #4870. Holding this generated PR while the generic parser is corrected and authoritative output is regenerated; generated files must not be patched manually.

@thomhurst
thomhurst force-pushed the automated/update-cli-options-gcloud-ref-466f0a81f2f402c50967aeea05961c9f736298b6278d16ef3b866a89e9914526 branch from 8516452 to f511f75 Compare September 14, 2026 08:01
@coderabbitai

coderabbitai Bot commented Sep 14, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

🗂️ Base branches to auto review (1)
  • main

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 8186abce-89a2-4405-8369-83e27237d397

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown
Contributor

Review

Scope correction first: GitHub reports 1,658 changed files, but that's because this PR's base ref (issue-4799-gcloud-group-descriptions) has diverged from main on unrelated distributed-pipeline work — it isn't this PR's own diff. I diffed PR head directly against the actual base branch (not main) to isolate what this PR really changes:

  • tools/ModularPipelines.OptionsGenerator/** (the CliArgumentGroupParser.cs/GcloudCliScraper.cs parser logic and the new GcloudGroupDescriptionTests.cs) is byte-identical between the base branch and this PR's head. That logic was already merged into the base via Generator: keep gcloud argument-group descriptions scoped to their own options #4799 — it's not part of this PR's diff and isn't in scope for review here.
  • The entire actual payload of this PR is the regenerated src/ModularPipelines.Google/{Options,Enums,Generated} output plus the corresponding PublicAPI.Unshipped.txt churn. Per CLAUDE.md, that generated output is authoritative and shouldn't be hand-edited or second-guessed here — the question is just whether it's correct.

Previous comment check: @thomhurst's review comment flagged sibling-help contamination surviving in GcloudStorageDiagnoseOptions.Generated.cs (--logs-path emitted as GcloudLogsPath? bleeding in --download-type's enum values; --process-count as GcloudProcessCount? bleeding in --upload-type's values), and held the PR pending a parser fix + regeneration. That comment predates the current (and only) commit f511f756. I verified the current head directly:

  • --logs-path is now string? with a clean, self-contained description ("If the diagnostic supports writing logs, write the logs to this file location.").
  • --process-count is now int? with a clean description ("Number of processes at max to use for each diagnostic test."), no --upload-type bleed-through.
  • Same clean result for --thread-count, --object-count, --object-size, --object-sizes, --download-type, --upload-type in that file — each now carries only its own help text and the correct primitive/enum type.

I also grepped the full regenerated Options/ tree for the exact contamination signature from that comment (an embedded --flag=VALUE; default=... fragment from a sibling declaration) — zero hits across all ~300 regenerated files. A broader sanity grep for descriptions containing two "must be one of" clauses turned up 17 files, but each one is a single option's own multi-part gcloud help text (e.g. a flag with nested sub-keys like gpu-driver-version ... GPU_DRIVER_VERSION must be one of: ...), not cross-option contamination.

Conclusion: thomhurst's blocking concern is resolved in the current head. I found no remaining contamination pattern, and the type corrections (enum → primitive where appropriate) plus description scoping look correct throughout. No actionable findings — this looks safe to unblock.

@thomhurst

Copy link
Copy Markdown
Owner Author

The earlier sibling-help blocker is resolved at f511f75: LogsPath is string, ProcessCount and ThreadCount are int, and DownloadType/UploadType have their own enum properties and descriptions. Full generation 34808204420 completed successfully from source 0f63058. Manifest, generated head, and current parent source fingerprints all match 53791aecb50b7c2fbf3eb53a487242969e78aaa2dc1f2e50b973a220979b03af; coverage remains 7,927 commands. Changes stay within generated Google artifacts and their API ledger, including current ConfigureAwait(false) service output. Current-head Claude review is CLEAR, there are no review threads, and generated Google integration checks pass.

@thomhurst
thomhurst merged commit cd0f2b1 into issue-4799-gcloud-group-descriptions Sep 14, 2026
10 checks passed
@thomhurst
thomhurst deleted the automated/update-cli-options-gcloud-ref-466f0a81f2f402c50967aeea05961c9f736298b6278d16ef3b866a89e9914526 branch September 14, 2026 08:25
thomhurst added a commit that referenced this pull request Sep 14, 2026
* fix(generator): scope plain argument group descriptions (#4799)

* fix(ci): isolate feature-branch generation output (#4797)

* fix(generator): scope same-indentation argument groups (#4799)

* chore(generator): use upstream branch isolation after rebase (#4799)

* fix(generator): parse gcloud enum default headers (#4799)

* chore: Update gcloud CLI options (#4926)

Co-authored-by: thomhurst <[email protected]>

* fix(generator): retain classified argument groups across prose (#4799)

---------

Co-authored-by: thomhurst <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

automated dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant