Skip to content

Add stackit-pod-identity-webhook image and configuration#53

Draft
jastBytes wants to merge 5 commits intomainfrom
feat/STACKITSKE-6021-pod-identity-webhook
Draft

Add stackit-pod-identity-webhook image and configuration#53
jastBytes wants to merge 5 commits intomainfrom
feat/STACKITSKE-6021-pod-identity-webhook

Conversation

@jastBytes
Copy link
Copy Markdown
Contributor

@jastBytes jastBytes commented Mar 13, 2026

How to categorize this PR?

/kind enhancement

What this PR does / why we need it:
The changes introduce a new Pod Identity Webhook component for STACKIT cloud provider, adding a new chart for the webhook and its associated resources (Deployment, Service, RBAC, MutatingWebhookConfiguration). The webhook is configured to validate pod identities and enforce workload identity. The changes are integrated into the control plane and shoot system components, with proper configuration and error handling.

Special notes for your reviewer:

Breaking changes:

No breaking changes.

@ske-prow
Copy link
Copy Markdown

ske-prow bot commented Mar 13, 2026

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@ske-prow ske-prow bot added kind/enhancement Enhancement, improvement, extension do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. labels Mar 13, 2026
@ske-prow
Copy link
Copy Markdown

ske-prow bot commented Mar 13, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign xoxys for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@ske-prow ske-prow bot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Mar 13, 2026
@jastBytes jastBytes force-pushed the feat/STACKITSKE-6021-pod-identity-webhook branch 2 times, most recently from fb04800 to 6d649ce Compare March 23, 2026 13:13
@jastBytes jastBytes requested a review from timebertt March 24, 2026 09:24
@timebertt timebertt marked this pull request as ready for review March 25, 2026 07:24
Copilot AI review requested due to automatic review settings March 25, 2026 07:24
@ske-prow ske-prow bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Mar 25, 2026
@timebertt timebertt marked this pull request as draft March 25, 2026 07:24
@ske-prow ske-prow bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Mar 25, 2026
@timebertt
Copy link
Copy Markdown
Member

Oops, accidentally marked this PR as ready for review, sorry about that.

Copy link
Copy Markdown
Member

@timebertt timebertt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR, looking forward to this feature :)

tag: "1245"
- name: stackit-pod-identity-webhook
repository: reg3.infra.ske.eu01.stackit.cloud/stackitcloud/stackit-pod-identity-webhook
tag: "726f2f0@sha256:fca1f67cd7e6a515e795a34ae45d0c239379d051e494dc202033f6987b41b154"
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For the record (as discussed in chat): the stackit-pod-identity-webhook repository should be public and released before merging this integration PR in the extension.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a new STACKIT Pod Identity Webhook component and wires it into the extension’s seed control-plane and shoot system components charts/values so that workload identity can be enforced via a mutating admission webhook.

Changes:

  • Add a new stackit-pod-identity-webhook image entry and image name constant.
  • Add new Helm charts for the webhook (seed-controlplane: Deployment/Service/RBAC/PDB; shoot-system-components: MutatingWebhookConfiguration).
  • Extend the controlplane values provider and tests to generate TLS/CA-related chart values and required secrets.

Reviewed changes

Copilot reviewed 16 out of 16 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
pkg/stackit/types.go Adds a constant for the webhook name.
pkg/controller/controlplane/valuesprovider.go Generates webhook TLS secret config and passes chart values for seed + shoot charts.
pkg/controller/controlplane/valuesprovider_test.go Extends expected chart values and fake secrets for the new component.
imagevector/images.yaml Adds the webhook image (repo/tag+digest).
imagevector/images.go Adds ImageNameStackitPodIdentityWebhook.
charts/internal/shoot-system-components/charts/stackit-pod-identity-webhook/* New shoot chart for MutatingWebhookConfiguration.
charts/internal/seed-controlplane/charts/stackit-pod-identity-webhook/* New seed chart for webhook runtime resources (Deployment/Service/RBAC/PDB).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@jastBytes jastBytes force-pushed the feat/STACKITSKE-6021-pod-identity-webhook branch 2 times, most recently from 8e62bb2 to 6ad65f7 Compare March 30, 2026 13:12
@jastBytes
Copy link
Copy Markdown
Contributor Author

Post review changes implemented and tested via ondemand. All working now. One question open from my point of view. See comment in code.

@jastBytes jastBytes force-pushed the feat/STACKITSKE-6021-pod-identity-webhook branch from 3b068dc to c9b9220 Compare March 31, 2026 08:50
@jastBytes jastBytes requested a review from timebertt March 31, 2026 08:51
matchExpressions:
- key: kubernetes.io/metadata.name
operator: NotIn
values: ["kube-system", "garden"]
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@MichaelEischer and me were not sure if this is necessary or what the expected default excludes should be here to not mess up things?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. kind/enhancement Enhancement, improvement, extension size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants