Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Set "openshift.io/required-scc" annotation on deployments #1282

Merged
merged 1 commit into from
Feb 19, 2025

Conversation

akrejcir
Copy link
Collaborator

@akrejcir akrejcir commented Feb 18, 2025

What this PR does / why we need it:
The annotation pins required SCC.

The OpenShift API dictates that a workload can require an SCC by using the annotation:
https://docs.openshift.com/container-platform/4.17/authentication/managing-security-context-constraints.html#security-context-constraints-requiring_configuring-internal-oauth

required-scc prevents different SCCs from being auto-selected by pods. The auto selection can fail in multiple ways: not enough permissions, changes of UID. When combined with pod security admission (on in new clusters in 4.19), this can result in SCCs being selected based on RBAC permissions that violate PSA and results in pods not running.

Which issue(s) this PR fixes:
Fixes: https://issues.redhat.com/browse/CNV-56031

Special notes for your reviewer:

Release note:

None

The annotation pins required SCC.

Signed-off-by: Andrej Krejcir <[email protected]>
@kubevirt-bot kubevirt-bot added release-note-none Denotes a PR that doesn't merit a release note. dco-signoff: yes Indicates the PR's author has DCO signed all their commits. labels Feb 18, 2025
@akrejcir
Copy link
Collaborator Author

/cc @0xFelix @jcanocan

@0xFelix
Copy link
Member

0xFelix commented Feb 18, 2025

Can you add a little context like it was done in kubevirt/hyperconverged-cluster-operator#3284?

Copy link
Member

@codingben codingben left a comment

Choose a reason for hiding this comment

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

/lgtm

@kubevirt-bot kubevirt-bot added the lgtm Indicates that a PR is ready to be merged. label Feb 18, 2025
@akrejcir
Copy link
Collaborator Author

Can you add a little context like it was done in kubevirt/hyperconverged-cluster-operator#3284?

I've updated PR description.

Copy link
Member

@0xFelix 0xFelix left a comment

Choose a reason for hiding this comment

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

/approve

@kubevirt-bot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: 0xFelix

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

The pull request process is described here

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

@kubevirt-bot kubevirt-bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Feb 19, 2025
@kubevirt-bot kubevirt-bot merged commit d7926f7 into kubevirt:main Feb 19, 2025
12 checks passed
@akrejcir akrejcir deleted the add-required-scc branch February 19, 2025 10:53
@akrejcir
Copy link
Collaborator Author

/cherry-pick release-v0.22

@kubevirt-bot
Copy link
Contributor

@akrejcir: new pull request created: #1283

In response to this:

/cherry-pick release-v0.22

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. dco-signoff: yes Indicates the PR's author has DCO signed all their commits. lgtm Indicates that a PR is ready to be merged. release-note-none Denotes a PR that doesn't merit a release note. size/M
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants