libct/int: use readlink -v

By default, readlink is silent about any errors. Make it verbose so we
can better interpret any test failures.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
(cherry picked from commit 54be90bf68)
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
This commit is contained in:
Kir Kolyshkin
2026-04-08 15:22:44 -07:00
parent f3e4f8ece9
commit 87edc29643
2 changed files with 9 additions and 9 deletions
+8 -8
View File
@@ -63,7 +63,7 @@ func TestIPCPrivate(t *testing.T) {
ok(t, err)
config := newTemplateConfig(t, nil)
buffers := runContainerOk(t, config, "readlink", "/proc/self/ns/ipc")
buffers := runContainerOk(t, config, "readlink", "-v", "/proc/self/ns/ipc")
if actual := strings.Trim(buffers.Stdout.String(), "\n"); actual == l {
t.Fatalf("ipc link should be private to the container but equals host %q %q", actual, l)
@@ -80,7 +80,7 @@ func TestIPCHost(t *testing.T) {
config := newTemplateConfig(t, nil)
config.Namespaces.Remove(configs.NEWIPC)
buffers := runContainerOk(t, config, "readlink", "/proc/self/ns/ipc")
buffers := runContainerOk(t, config, "readlink", "-v", "/proc/self/ns/ipc")
if actual := strings.Trim(buffers.Stdout.String(), "\n"); actual != l {
t.Fatalf("ipc link not equal to host link %q %q", actual, l)
@@ -97,7 +97,7 @@ func TestIPCJoinPath(t *testing.T) {
config := newTemplateConfig(t, nil)
config.Namespaces.Add(configs.NEWIPC, "/proc/1/ns/ipc")
buffers := runContainerOk(t, config, "readlink", "/proc/self/ns/ipc")
buffers := runContainerOk(t, config, "readlink", "-v", "/proc/self/ns/ipc")
if actual := strings.Trim(buffers.Stdout.String(), "\n"); actual != l {
t.Fatalf("ipc link not equal to host link %q %q", actual, l)
@@ -167,7 +167,7 @@ func TestEnter(t *testing.T) {
pconfig := libcontainer.Process{
Cwd: "/",
Args: []string{"sh", "-c", "cat && readlink /proc/self/ns/pid"},
Args: []string{"sh", "-c", "cat && readlink -v /proc/self/ns/pid"},
Env: standardEnvironment,
Stdin: stdinR,
Stdout: &stdout,
@@ -186,7 +186,7 @@ func TestEnter(t *testing.T) {
ok(t, err)
pconfig2 := libcontainer.Process{
Cwd: "/",
Args: []string{"sh", "-c", "cat && readlink /proc/self/ns/pid"},
Args: []string{"sh", "-c", "cat && readlink -v /proc/self/ns/pid"},
Env: standardEnvironment,
Stdin: stdinR2,
Stdout: &stdout2,
@@ -1360,7 +1360,7 @@ func TestPIDHost(t *testing.T) {
config := newTemplateConfig(t, nil)
config.Namespaces.Remove(configs.NEWPID)
buffers := runContainerOk(t, config, "readlink", "/proc/self/ns/pid")
buffers := runContainerOk(t, config, "readlink", "-v", "/proc/self/ns/pid")
if actual := strings.Trim(buffers.Stdout.String(), "\n"); actual != l {
t.Fatalf("ipc link not equal to host link %q %q", actual, l)
@@ -1663,7 +1663,7 @@ func TestCGROUPPrivate(t *testing.T) {
config := newTemplateConfig(t, nil)
config.Namespaces.Add(configs.NEWCGROUP, "")
buffers := runContainerOk(t, config, "readlink", "/proc/self/ns/cgroup")
buffers := runContainerOk(t, config, "readlink", "-v", "/proc/self/ns/cgroup")
if actual := strings.Trim(buffers.Stdout.String(), "\n"); actual == l {
t.Fatalf("cgroup link should be private to the container but equals host %q %q", actual, l)
@@ -1682,7 +1682,7 @@ func TestCGROUPHost(t *testing.T) {
ok(t, err)
config := newTemplateConfig(t, nil)
buffers := runContainerOk(t, config, "readlink", "/proc/self/ns/cgroup")
buffers := runContainerOk(t, config, "readlink", "-v", "/proc/self/ns/cgroup")
if actual := strings.Trim(buffers.Stdout.String(), "\n"); actual != l {
t.Fatalf("cgroup link not equal to host link %q %q", actual, l)
+1 -1
View File
@@ -534,7 +534,7 @@ func TestExecInUserns(t *testing.T) {
buffers := newStdBuffers()
process2 := &libcontainer.Process{
Cwd: "/",
Args: []string{"readlink", "/proc/self/ns/user"},
Args: []string{"readlink", "-v", "/proc/self/ns/user"},
Env: []string{
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
},