osinfra-io / terraform-google-kubernetes-engine

Terraform example module for Google Cloud Platform Kubernetes Engine cluster.
https://www.osinfra.io
GNU General Public License v2.0
1 stars 0 forks source link

Support for Istio service mesh and Multi Cluster Ingress #41

Closed brettcurtis closed 6 months ago

brettcurtis commented 6 months ago

This is a working example but still requires a bunch of work to be usable and well tested.

Fixes #17

Summary by CodeRabbit

coderabbitai[bot] commented 6 months ago

Walkthrough

The update involves enriching and expanding configurations for a Google Kubernetes Engine (GKE) fleet management system. Changes include job renaming, version updates, and new resource additions for Istio gateway, workload identity, and Infracost configurations. Terraform variables and outputs were adjusted to support these changes, streamlining GKE fleet deployment and management.

Changes

File Path Change Summary
.github/workflows/kitchen.yml Renamed job, updated github-kitchen-terraform-action version, added new jobs
.pre-commit-config.yaml Added Infracost config hook, updated pre-commit-terraform
Gemfile.lock Updated gems, removed to_regexp gem
global/README.md, global/locals.tf, global/main.tf, global/outputs.tf, global/variables.tf Updated provider versions, added/modified resources and inputs for Istio gateway and workload identity, updated conditions and outputs
infracost.yml, infracost.yml.tmpl Updated paths and configurations for Infracost, adjusted logic for excluding "shared" cluster projects
kitchen.yml Updated entries for gke_fleet_host and gke_fleet_member, added new instances
regional/README.md through regional/onboarding/variables.tf Changes in configurations for Istio, MultiClusterIngress, and onboarding processes, including updates to resource limits and service account handling
test/fixtures/gke_fleet_host/global through test/fixtures/gke_fleet_host/regional_onboarding/variables.tf Various updates in test configurations and fixtures for GKE fleet management, including service accounts and Istio gateway setups
test/fixtures/gke_fleet_member/global through test/fixtures/gke_fleet_member/regional/variables.tf Added google_service_account parameter, updated workload_identity_service_account_emails output, adjusted project_id variable declaration
test/integration/gke_fleet_host_regional/controls/gcp_inspec.rb Removed a service account declaration, updated specific service account names used in tests
test/integration/shared/inspec.yml Added a brief introduction and reference link for the InSpec GCP Resource Pack
test/test.sh Added gem installation step, modified instances list for kitchen commands, updated fleet membership handling logic

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share - [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai) - [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai) - [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai) - [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)

Tips ### Chat There are 3 ways to chat with CodeRabbit: - Review comments: Directly reply to a review comment made by CodeRabbit. Example: - `I pushed a fix in commit .` - `Generate unit-tests for this file.` - `Open a follow-up GitHub issue for this discussion.` - Files and specific lines of code (under the "Files changed" tab): Tag `@coderabbitai` in a new review comment at the desired location with your query. Examples: - `@coderabbitai generate unit tests for this file.` - `@coderabbitai modularize this function.` - PR comments: Tag `@coderabbitai` in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples: - `@coderabbitai generate interesting stats about this repository and render them as a table.` - `@coderabbitai show all the console.log statements in this repository.` - `@coderabbitai read src/utils.ts and generate unit tests.` - `@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.` Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. ### CodeRabbit Commands (invoked as PR comments) - `@coderabbitai pause` to pause the reviews on a PR. - `@coderabbitai resume` to resume the paused reviews. - `@coderabbitai review` to trigger a review. This is useful when automatic reviews are disabled for the repository. - `@coderabbitai resolve` resolve all the CodeRabbit review comments. - `@coderabbitai help` to get help. Additionally, you can add `@coderabbitai ignore` anywhere in the PR description to prevent this PR from being reviewed. ### CodeRabbit Configration File (`.coderabbit.yaml`) - You can programmatically configure CodeRabbit by adding a `.coderabbit.yaml` file to the root of your repository. - The JSON schema for the configuration file is available [here](https://coderabbit.ai/integrations/coderabbit-overrides.v2.json). - If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: `# yaml-language-server: $schema=https://coderabbit.ai/integrations/coderabbit-overrides.v2.json` ### CodeRabbit Discord Community Join our [Discord Community](https://discord.com/invite/GsXnASn26c) to get help, request features, and share feedback.