GoogleCloudPlatform / GoogleCloudPlatform/cloud-sql-proxy-operator

k8s 1.34 baseline PodSecurity cannot use host field in lifecycle handlers

Open
#739 2 comments 1 reaction 1 assignee Claimed by @hessjcg View on GitHub
Dominant language
Go
Stars
120
Forks
18
PR merge metrics
No merged PRs in 30d

Description

Running on k8s 1.34, if you set a PodSecurity level of restricted or baseline, the `host` field is not allowed to be set in lifecycle handlers. The operator injects the following:

```yaml
lifecycle:
preStop:
httpGet:
host: localhost # Violates baseline AND restricted PSA
path: /quitquitquit
port: 9091
```

There is no way to override this without overriding the entire container object, so this ends up leading to the operator not being able to start the pods up.

https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.34.md#bug-or-regression-6

> The baseline and restricted pod security admission levels now block setting the host field on probe and lifecycle handlers (https://github.com/kubernetes/kubernetes/pull/125271, [@tssurya](https://github.com/tssurya)) [SIG Auth, Node and Testing]

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.