openmcp-project / openmcp-project/backlog

Task: Implement Service Provider google config connector (kcc)

Open
#489 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

kind/feature-request kind/task sig/extensibility
Dominant language
No language data
Stars
1
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Understand the Task

Description

Deploy the google config operator via its Helm Chart by creating a Flux OCIRepository and HelmRelease on the platform cluster in the respective namespace (the namespace is given by the service provider template). (Probably)

KCC does not officially support Workload Identity Federation for non-GKE clusters. However, there is a workaround:

Workaround for WIF Support:

  1. Create Kind cluster with custom OIDC issuer - Configure the API server with a custom service-account-issuer URL
  2. Export JWKS and upload to GCP - Extract the cluster's public keys (/openid/v1/jwks) and register them with a GCP Workload Identity Pool + OIDC Provider
  3. Patch Config Connector StatefulSet - After installation, patch cnrm-controller-manager to:
    • Mount a projected ServiceAccount token with the correct WIF audience
    • Mount a credential configuration file (type: external_account)
    • Set GOOGLE_APPLICATION_CREDENTIALS to point to the credential config
  4. Scale down Config Connector Operator - The operator must be stopped to prevent it from reverting the patches
  5. Increase webhook memory limit - Default 128Mi causes OOMKilled errors; increase to 512Mi

Note: This workaround requires manual patching after each Config Connector upgrade.

Since WIF would be a great addition, we should discuss if were able to add this, or if it does not meet the quality standarts.

Any further valuable resources.
What is required to accept the Task as done.

Done Criteria

  • ...
  • Code has been reviewed by other team members
  • Internal technical Documentation created/updated
  • New / changed code is documented
  • Unit Tests created for new code or existing Unit Tests updated
  • Integration Test Suite updated
  • Enduser Documentation updated (if applicable)
  • Successful demonstration in Review

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the Config Connector overview and the linked k8s-config-connector project, then review how the service provider template supplies its namespace. Define the OCIRepository and HelmRelease deployment requirements, including whether the non-GKE Workload Identity Federation workaround is acceptable; the issue's done criteria need to be completed before implementation can be considered finished.

Written by the indexing model from the issue text.

Assessment

Tech stack
gcp, helm, kubernetes
Domain
cloud, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.