Skip to content

Commit 7e6b70f

Browse files
authored
Merge pull request kubernetes#59416 from verb/debug-api
Add Ephemeral Containers to the Kubernetes core API
2 parents 1cb3b58 + 4a753c7 commit 7e6b70f

File tree

111 files changed

+19385
-6206
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

111 files changed

+19385
-6206
lines changed

api/api-rules/violation_exceptions.list

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,14 @@ API rule violation: list_type_missing,k8s.io/api/core/v1,EndpointSubset,NotReady
125125
API rule violation: list_type_missing,k8s.io/api/core/v1,EndpointSubset,Ports
126126
API rule violation: list_type_missing,k8s.io/api/core/v1,Endpoints,Subsets
127127
API rule violation: list_type_missing,k8s.io/api/core/v1,EndpointsList,Items
128+
API rule violation: list_type_missing,k8s.io/api/core/v1,EphemeralContainerCommon,Args
129+
API rule violation: list_type_missing,k8s.io/api/core/v1,EphemeralContainerCommon,Command
130+
API rule violation: list_type_missing,k8s.io/api/core/v1,EphemeralContainerCommon,Env
131+
API rule violation: list_type_missing,k8s.io/api/core/v1,EphemeralContainerCommon,EnvFrom
132+
API rule violation: list_type_missing,k8s.io/api/core/v1,EphemeralContainerCommon,Ports
133+
API rule violation: list_type_missing,k8s.io/api/core/v1,EphemeralContainerCommon,VolumeDevices
134+
API rule violation: list_type_missing,k8s.io/api/core/v1,EphemeralContainerCommon,VolumeMounts
135+
API rule violation: list_type_missing,k8s.io/api/core/v1,EphemeralContainers,EphemeralContainers
128136
API rule violation: list_type_missing,k8s.io/api/core/v1,EventList,Items
129137
API rule violation: list_type_missing,k8s.io/api/core/v1,ExecAction,Command
130138
API rule violation: list_type_missing,k8s.io/api/core/v1,FCVolumeSource,TargetWWNs
@@ -173,6 +181,7 @@ API rule violation: list_type_missing,k8s.io/api/core/v1,PodPortForwardOptions,P
173181
API rule violation: list_type_missing,k8s.io/api/core/v1,PodSecurityContext,SupplementalGroups
174182
API rule violation: list_type_missing,k8s.io/api/core/v1,PodSecurityContext,Sysctls
175183
API rule violation: list_type_missing,k8s.io/api/core/v1,PodSpec,Containers
184+
API rule violation: list_type_missing,k8s.io/api/core/v1,PodSpec,EphemeralContainers
176185
API rule violation: list_type_missing,k8s.io/api/core/v1,PodSpec,HostAliases
177186
API rule violation: list_type_missing,k8s.io/api/core/v1,PodSpec,ImagePullSecrets
178187
API rule violation: list_type_missing,k8s.io/api/core/v1,PodSpec,InitContainers
@@ -181,6 +190,7 @@ API rule violation: list_type_missing,k8s.io/api/core/v1,PodSpec,Tolerations
181190
API rule violation: list_type_missing,k8s.io/api/core/v1,PodSpec,Volumes
182191
API rule violation: list_type_missing,k8s.io/api/core/v1,PodStatus,Conditions
183192
API rule violation: list_type_missing,k8s.io/api/core/v1,PodStatus,ContainerStatuses
193+
API rule violation: list_type_missing,k8s.io/api/core/v1,PodStatus,EphemeralContainerStatuses
184194
API rule violation: list_type_missing,k8s.io/api/core/v1,PodStatus,InitContainerStatuses
185195
API rule violation: list_type_missing,k8s.io/api/core/v1,PodStatus,PodIPs
186196
API rule violation: list_type_missing,k8s.io/api/core/v1,PodTemplateList,Items

api/openapi-spec/swagger.json

Lines changed: 140 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/api/pod/util.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,13 @@ func VisitContainers(podSpec *api.PodSpec, visitor ContainerVisitor) bool {
4545
return false
4646
}
4747
}
48+
if utilfeature.DefaultFeatureGate.Enabled(features.EphemeralContainers) {
49+
for i := range podSpec.EphemeralContainers {
50+
if !visitor((*api.Container)(&podSpec.EphemeralContainers[i].EphemeralContainerCommon)) {
51+
return false
52+
}
53+
}
54+
}
4855
return true
4956
}
5057

@@ -362,6 +369,9 @@ func dropDisabledFields(
362369
return true
363370
})
364371
}
372+
if !utilfeature.DefaultFeatureGate.Enabled(features.EphemeralContainers) {
373+
podSpec.EphemeralContainers = nil
374+
}
365375

366376
if (!utilfeature.DefaultFeatureGate.Enabled(features.VolumeSubpath) || !utilfeature.DefaultFeatureGate.Enabled(features.VolumeSubpathEnvExpansion)) && !subpathExprInUse(oldPodSpec) {
367377
// drop subpath env expansion from the pod if either of the subpath features is disabled and the old spec did not specify subpath env expansion

0 commit comments

Comments
 (0)