一键导入
update-client-library-version
Guides through updating a Google Cloud Go client library to the latest version across the Config Connector repository.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Guides through updating a Google Cloud Go client library to the latest version across the Config Connector repository.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Automate the initial scaffolding of a KCC "direct" resource, including CRD types and generation scripts. Use this when starting a new "direct" implementation for a GCP resource.
Creates or updates the _identity.go and _reference.go files for a Config Connector resource, ensuring they follow the canonical gcpurls.Template pattern. Use this when you need to make sure the identity and reference is up to date for a KCC resource or when implementing IdentityV2 and refs.Ref for a resource.
Standards and workflows for creating direct KRM Go types for an existing CRD while maintaining strict schema compatibility.
Comprehensive review guide and criteria for PRs adding or modifying features in legacy resources (TF patches, DCL patches, CRD changes, MockGCP alignment, and Direct Controller alignment).
Implement the controller, mappers, and fuzzer for a direct KCC resource, ensuring package isolation and CI compliance. Use this when implementing the main reconciliation logic for a "direct" resource.
Guides modifying, patching, and updating resources and fields managed by the Terraform/legacy controller, including patching the local/vendored Terraform Google Beta provider.
| name | update-client-library-version |
| description | Guides through updating a Google Cloud Go client library to the latest version across the Config Connector repository. |
This skill outlines the process for updating Google Cloud client libraries (e.g., cloud.google.com/go/alloydb or cloud.google.com/go/spanner) in Config Connector (KCC).
Find the latest version of the target Go client library. You can run:
go list -m -versions cloud.google.com/go/<service>
Update the dependency in the root go.mod directory to the target version and tidy up.
go get cloud.google.com/go/<service>@<version>
go mod tidy
Update the dependency in the mockgcp/go.mod directory to align version configuration and tidy up.
cd mockgcp
go get cloud.google.com/go/<service>@<version>
go mod tidy
cd ..
Run KRM mapping fuzz tests to ensure the updated types do not introduce serialization or validation regressions.
go test -v ./pkg/fuzztesting/fuzztests/
If any new fields are introduced in the updated library, the roundtrip verification might fail. The failure messages will output helpful recommendations such as:
Add f.Unimplemented_NotYetTriaged(".new_field") to the fuzzer for the proto type <proto_type> to mark this field as not yet triaged.
Locate the corresponding fuzzer file for the service (typically under pkg/controller/direct/<service>/<kind>_fuzzer.go).
Add the recommended field ignore using f.Unimplemented_NotYetTriaged(".new_field") in the initialization of the fuzzer.
Run formatting and verify the entire package compiled without static analysis issues:
make fmt
go vet ./pkg/controller/direct/<service>/... ./pkg/fuzztesting/fuzztests/...
Run the fuzz tests again to ensure all tests pass:
go test -v ./pkg/fuzztesting/fuzztests/