MCPcopy Create free account
hub / github.com/Mirantis/cri-dockerd / TestModifyContainerNamespaceOptions

Function TestModifyContainerNamespaceOptions

core/security_context_test.go:375–446  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

373}
374
375func TestModifyContainerNamespaceOptions(t *testing.T) {
376 sandboxID := "sandbox"
377 sandboxNSMode := fmt.Sprintf("container:%v", sandboxID)
378 cases := []struct {
379 name string
380 nsOpt *runtimeapi.NamespaceOption
381 expected *dockercontainer.HostConfig
382 }{
383 {
384 name: "Host Network NamespaceOption",
385 nsOpt: &runtimeapi.NamespaceOption{
386 Network: runtimeapi.NamespaceMode_NODE,
387 },
388 expected: &dockercontainer.HostConfig{
389 NetworkMode: dockercontainer.NetworkMode(sandboxNSMode),
390 IpcMode: dockercontainer.IpcMode(sandboxNSMode),
391 UTSMode: namespaceModeHost,
392 PidMode: dockercontainer.PidMode(sandboxNSMode),
393 },
394 },
395 {
396 name: "Host IPC NamespaceOption",
397 nsOpt: &runtimeapi.NamespaceOption{
398 Ipc: runtimeapi.NamespaceMode_NODE,
399 },
400 expected: &dockercontainer.HostConfig{
401 NetworkMode: dockercontainer.NetworkMode(sandboxNSMode),
402 IpcMode: dockercontainer.IpcMode(sandboxNSMode),
403 PidMode: dockercontainer.PidMode(sandboxNSMode),
404 },
405 },
406 {
407 name: "Host PID NamespaceOption",
408 nsOpt: &runtimeapi.NamespaceOption{
409 Pid: runtimeapi.NamespaceMode_NODE,
410 },
411 expected: &dockercontainer.HostConfig{
412 NetworkMode: dockercontainer.NetworkMode(sandboxNSMode),
413 IpcMode: dockercontainer.IpcMode(sandboxNSMode),
414 PidMode: namespaceModeHost,
415 },
416 },
417 {
418 name: "Pod PID NamespaceOption",
419 nsOpt: &runtimeapi.NamespaceOption{
420 Pid: runtimeapi.NamespaceMode_POD,
421 },
422 expected: &dockercontainer.HostConfig{
423 NetworkMode: dockercontainer.NetworkMode(sandboxNSMode),
424 IpcMode: dockercontainer.IpcMode(sandboxNSMode),
425 PidMode: dockercontainer.PidMode(sandboxNSMode),
426 },
427 },
428 {
429 name: "Target PID NamespaceOption",
430 nsOpt: &runtimeapi.NamespaceOption{
431 Pid: runtimeapi.NamespaceMode_TARGET,
432 TargetId: "some-container",

Callers

nothing calls this directly

Calls 1

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…