kcc-direct-controller-implementer

Implement KCC controller logic, mappers, and RegisterKRMFuzzer within an isolated package path.

1.1k|367|Updated Apr 8, 2019
One-click install
npx skills add https://github.com/GoogleCloudPlatform/k8s-config-connector --skill kcc-direct-controller-implementer
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: kcc-direct-controller-implementer
Source: https://github.com/GoogleCloudPlatform/k8s-config-connector/tree/main/.gemini/skills/kcc-direct-controller-implementer
Command: npx skills add https://github.com/GoogleCloudPlatform/k8s-config-connector --skill kcc-direct-controller-implementer

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It solves the challenge of implementing direct Config Connector (KCC) reconciliation logic safely and consistently while avoiding Go package symbol collisions and ensuring CI-ready generated artifacts.

Core Features & Use Cases

  • Package-isolated controller implementation: Ensures all controller, mapper, and fuzzer logic lives in the provided isolated package_path so generated code does not collide across resources.
  • Correct reference mapping and update behavior: Implements and validates mapper.generated.go plus manual mappers, using the standard Ref pattern, and supports correct update-mask generation for direct resources.
  • End-to-end quality gates for CI: Runs generation and last-mile checks (including fuzzing, e2e scaffolding fixtures, CRD template tests, and API field coverage) and commits resulting changes.

Quick Start

Use the kcc-direct-controller-implementer skill to implement the direct KCC controller, mappers, and fuzzer for your resource kind by working inside the isolated package directory, then run the repository generation and CI validation steps so all required artifacts and reports are updated.

Frequently Asked Questions about kcc-direct-controller-implementer

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement direct KCC controller logic without Go package collisions?

To implement direct KCC controllers without collisions, place all controller, mapper, and fuzzer logic inside the provided isolated package path. This ensures generated code does not collide across resources while maintaining reliable reconciliation.

How does mapper generation work for direct KCC resources?

Mapper generation for direct KCC resources involves implementing and validating mapper.generated.go alongside manual mappers. It uses the standard Ref pattern to ensure correct reference mapping and update-mask generation for the resources.

How do I register a fuzzer for direct KCC controller development?

You register a resource-specific fuzzer for direct KCC controller development by calling fuzztesting.RegisterKRMFuzzer. This integrates the fuzzer into the CI pipeline to validate reconciliation logic and ensure API field coverage.

What CI compliance tests are required for direct KCC controller implementation?

CI compliance for direct KCC controllers requires running fuzzing, e2e fixture validations, CRD template integrity checks, and API field coverage tests. You must also run make ready-pr to commit resulting generated artifacts.

Why do I need Go package isolation when developing direct KCC controllers?

Go package isolation is necessary when developing direct KCC controllers to prevent generated code symbols from colliding across different resources. It ensures safe, consistent reconciliation logic delivery without symbol conflicts.

Can I use standard Ref-based mappings with direct KCC resources?

Yes, direct KCC resources support standard Ref-based mappings. Implementing and validating these mappings within the isolated package ensures correct update-mask generation and reliable resource reconciliation.