Adding native K8s annotations and GKE cluster enhancements#5610
Conversation
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request improves the flexibility and capability of the GKE and kubectl-apply modules. By enabling native HCL-based annotations for service accounts and adding support for advanced GKE features like VPA and slice controllers, the changes streamline cluster configuration and reduce the need for external scripts or manual manifest management. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize the Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counterproductive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request updates the kubectl-apply module to allow direct GKE cluster connection parameters and adds a resource for patching service account annotations. It also introduces Vertical Pod Autoscaling (VPA) to the gke-cluster module. Key feedback includes addressing a potential race condition in the annotation resource, fixing a logic bug in the provider's CA certificate resolution, and clarifying that the certificate must be base64-encoded. Additionally, it is recommended to set the VPA default to false to maintain backward compatibility and avoid unintended pod restarts.
…clarative-k8s-annotations-patch
SwarnaBharathiMantena
left a comment
There was a problem hiding this comment.
LGTM!
Please ensure the changes are tested manually / locally.
…udPlatform#5610) Adding native K8s annotations and GKE cluster enhancements(vertical pod Autoscaling)
This PR enhances the kubectl-apply and gke-cluster modules to support native Kubernetes annotations and advanced GKE features.
Rationale for Kubernetes Annotations: Adding the kubernetes_annotations resource enables users to patch Kubernetes Service Accounts with Workload Identity emails natively through HCL. This provides a declarative and integrated way to establish trust relationships between GCP and Kubernetes identities without relying on external shell scripts or manual manifest management.
Key Changes:
kubectl-apply: Implemented a "hybrid" provider logic that automatically discovers cluster connection details while allowing for manual overrides. It now natively supports service account annotations for streamlined Workload Identity configuration.
gke-cluster: Added support for Vertical Pod Autoscaling (VPA).
Submission Checklist
NOTE: Community submissions can take up to 2 weeks to be reviewed.
Please take the following actions before submitting this pull request.