Unbreak Podman's downstream Fedora CI (part 2)
... and backport some new upstream tests. https://bugzilla.redhat.com/show_bug.cgi?id=2263968 Resolves: RHEL-30245
This commit is contained in:
parent
24f19e416e
commit
709a085a1c
@ -1,7 +1,7 @@
|
|||||||
From 6838e9347199e875f9869acd2afa64688161ca11 Mon Sep 17 00:00:00 2001
|
From a859f73d075ec0505994d8ce0f371ec28e466983 Mon Sep 17 00:00:00 2001
|
||||||
From: Debarshi Ray <rishi@fedoraproject.org>
|
From: Debarshi Ray <rishi@fedoraproject.org>
|
||||||
Date: Tue, 13 Feb 2024 21:56:06 +0100
|
Date: Tue, 13 Feb 2024 21:56:06 +0100
|
||||||
Subject: [PATCH] test/system: Unbreak Podman's downstream Fedora CI
|
Subject: [PATCH 1/2] test/system: Unbreak Podman's downstream Fedora CI
|
||||||
|
|
||||||
The paths to bats-assert and bats-support are broken, if bats(1) is
|
The paths to bats-assert and bats-support are broken, if bats(1) is
|
||||||
invoked from any other location than the parent directory of the 'tests'
|
invoked from any other location than the parent directory of the 'tests'
|
||||||
@ -30,7 +30,7 @@ https://github.com/containers/toolbox/pull/1448
|
|||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/test/system/setup_suite.bash b/test/system/setup_suite.bash
|
diff --git a/test/system/setup_suite.bash b/test/system/setup_suite.bash
|
||||||
index 78507d660529..649018f01e96 100644
|
index e4edf232bcd8..01985b7f9afc 100644
|
||||||
--- a/test/system/setup_suite.bash
|
--- a/test/system/setup_suite.bash
|
||||||
+++ b/test/system/setup_suite.bash
|
+++ b/test/system/setup_suite.bash
|
||||||
@@ -17,7 +17,7 @@
|
@@ -17,7 +17,7 @@
|
||||||
@ -45,3 +45,164 @@ index 78507d660529..649018f01e96 100644
|
|||||||
--
|
--
|
||||||
2.43.0
|
2.43.0
|
||||||
|
|
||||||
|
|
||||||
|
From a183876eae2bb4ffd84bca4303fc28be6725ebc2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Debarshi Ray <rishi@fedoraproject.org>
|
||||||
|
Date: Fri, 23 Feb 2024 10:38:16 +0100
|
||||||
|
Subject: [PATCH 2/2] test/system: Unbreak Podman's downstream Fedora CI (part
|
||||||
|
2)
|
||||||
|
|
||||||
|
The working directory from which bats(1) is invoked might not be part of
|
||||||
|
the Toolbx container. eg., Podman's downstream Fedora CI invokes the
|
||||||
|
tests as:
|
||||||
|
$ cd /path/to/toolbox/test/system
|
||||||
|
$ bats .
|
||||||
|
|
||||||
|
... and it led to [1]:
|
||||||
|
not ok 110 run: Smoke test with true(1)
|
||||||
|
# (from function `assert_output' in file
|
||||||
|
./libs/bats-assert/src/assert.bash, line 255,
|
||||||
|
# in test file ./104-run.bats, line 38)
|
||||||
|
# `assert_output ""' failed
|
||||||
|
#
|
||||||
|
# -- output differs --
|
||||||
|
# expected (0 lines):
|
||||||
|
#
|
||||||
|
# actual (3 lines):
|
||||||
|
# Error: crun: chdir to `/usr/share/toolbox/test/system`: No such
|
||||||
|
file or directory: OCI runtime attempted to invoke a command that
|
||||||
|
was not found
|
||||||
|
# Error: directory /usr/share/toolbox/test/system not found in
|
||||||
|
container fedora-toolbox-41
|
||||||
|
# Using /home/testuser instead.
|
||||||
|
# --
|
||||||
|
#
|
||||||
|
|
||||||
|
[1] https://bugzilla.redhat.com/show_bug.cgi?id=2263968
|
||||||
|
|
||||||
|
https://github.com/containers/toolbox/pull/1457
|
||||||
|
---
|
||||||
|
test/system/104-run.bats | 2 ++
|
||||||
|
test/system/201-ipc.bats | 2 ++
|
||||||
|
test/system/203-network.bats | 2 ++
|
||||||
|
test/system/206-user.bats | 2 ++
|
||||||
|
test/system/210-ulimit.bats | 2 ++
|
||||||
|
test/system/211-dbus.bats | 2 ++
|
||||||
|
test/system/220-environment-variables.bats | 2 ++
|
||||||
|
7 files changed, 14 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/test/system/104-run.bats b/test/system/104-run.bats
|
||||||
|
index ff11a8477062..a0cb89fdeeca 100644
|
||||||
|
--- a/test/system/104-run.bats
|
||||||
|
+++ b/test/system/104-run.bats
|
||||||
|
@@ -23,9 +23,11 @@ setup() {
|
||||||
|
bats_require_minimum_version 1.7.0
|
||||||
|
_setup_environment
|
||||||
|
cleanup_containers
|
||||||
|
+ pushd "$HOME" || return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
teardown() {
|
||||||
|
+ popd || return 1
|
||||||
|
cleanup_containers
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/test/system/201-ipc.bats b/test/system/201-ipc.bats
|
||||||
|
index 15c791dec86d..09200b41d06c 100644
|
||||||
|
--- a/test/system/201-ipc.bats
|
||||||
|
+++ b/test/system/201-ipc.bats
|
||||||
|
@@ -23,9 +23,11 @@ setup() {
|
||||||
|
bats_require_minimum_version 1.7.0
|
||||||
|
_setup_environment
|
||||||
|
cleanup_containers
|
||||||
|
+ pushd "$HOME" || return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
teardown() {
|
||||||
|
+ popd || return 1
|
||||||
|
cleanup_containers
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/test/system/203-network.bats b/test/system/203-network.bats
|
||||||
|
index db1ba561f314..012374e3317f 100644
|
||||||
|
--- a/test/system/203-network.bats
|
||||||
|
+++ b/test/system/203-network.bats
|
||||||
|
@@ -35,9 +35,11 @@ setup() {
|
||||||
|
bats_require_minimum_version 1.7.0
|
||||||
|
_setup_environment
|
||||||
|
cleanup_containers
|
||||||
|
+ pushd "$HOME" || return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
teardown() {
|
||||||
|
+ popd || return 1
|
||||||
|
cleanup_containers
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/test/system/206-user.bats b/test/system/206-user.bats
|
||||||
|
index 2df7862f259e..473a6b40905a 100644
|
||||||
|
--- a/test/system/206-user.bats
|
||||||
|
+++ b/test/system/206-user.bats
|
||||||
|
@@ -23,9 +23,11 @@ setup() {
|
||||||
|
bats_require_minimum_version 1.7.0
|
||||||
|
_setup_environment
|
||||||
|
cleanup_containers
|
||||||
|
+ pushd "$HOME" || return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
teardown() {
|
||||||
|
+ popd || return 1
|
||||||
|
cleanup_containers
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/test/system/210-ulimit.bats b/test/system/210-ulimit.bats
|
||||||
|
index ea0c46685df1..ea08feea1513 100644
|
||||||
|
--- a/test/system/210-ulimit.bats
|
||||||
|
+++ b/test/system/210-ulimit.bats
|
||||||
|
@@ -23,9 +23,11 @@ setup() {
|
||||||
|
bats_require_minimum_version 1.7.0
|
||||||
|
_setup_environment
|
||||||
|
cleanup_containers
|
||||||
|
+ pushd "$HOME" || return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
teardown() {
|
||||||
|
+ popd || return 1
|
||||||
|
cleanup_containers
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/test/system/211-dbus.bats b/test/system/211-dbus.bats
|
||||||
|
index 295bb71b2789..61c543a56005 100644
|
||||||
|
--- a/test/system/211-dbus.bats
|
||||||
|
+++ b/test/system/211-dbus.bats
|
||||||
|
@@ -23,9 +23,11 @@ setup() {
|
||||||
|
bats_require_minimum_version 1.7.0
|
||||||
|
_setup_environment
|
||||||
|
cleanup_containers
|
||||||
|
+ pushd "$HOME" || return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
teardown() {
|
||||||
|
+ popd || return 1
|
||||||
|
cleanup_containers
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/test/system/220-environment-variables.bats b/test/system/220-environment-variables.bats
|
||||||
|
index 5b51d17dee55..c24e07d146ee 100644
|
||||||
|
--- a/test/system/220-environment-variables.bats
|
||||||
|
+++ b/test/system/220-environment-variables.bats
|
||||||
|
@@ -23,9 +23,11 @@ setup() {
|
||||||
|
bats_require_minimum_version 1.7.0
|
||||||
|
_setup_environment
|
||||||
|
cleanup_containers
|
||||||
|
+ pushd "$HOME" || return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
teardown() {
|
||||||
|
+ popd || return 1
|
||||||
|
cleanup_containers
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
||||||
|
894
toolbox-test-system-new.patch
Normal file
894
toolbox-test-system-new.patch
Normal file
@ -0,0 +1,894 @@
|
|||||||
|
From f51c4a4cd8ff1c51a68073a10eaddab8f16fdaf6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Debarshi Ray <rishi@fedoraproject.org>
|
||||||
|
Date: Thu, 8 Feb 2024 22:18:33 +0100
|
||||||
|
Subject: [PATCH 1/4] test/system: Ensure that the user is part of a group with
|
||||||
|
the same name
|
||||||
|
|
||||||
|
https://github.com/containers/toolbox/pull/1447
|
||||||
|
---
|
||||||
|
test/system/206-user.bats | 7 +++++++
|
||||||
|
1 file changed, 7 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/test/system/206-user.bats b/test/system/206-user.bats
|
||||||
|
index c295d8a61f39..cdd38c146024 100644
|
||||||
|
--- a/test/system/206-user.bats
|
||||||
|
+++ b/test/system/206-user.bats
|
||||||
|
@@ -434,6 +434,7 @@ teardown() {
|
||||||
|
run --keep-empty-lines --separate-stderr "$TOOLBOX" run cat /etc/group
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
+ assert_line --regexp "^$USER:x:[[:digit:]]+:$USER$"
|
||||||
|
assert_line --regexp "^(sudo|wheel):x:[[:digit:]]+:$USER$"
|
||||||
|
assert [ ${#lines[@]} -gt 1 ]
|
||||||
|
|
||||||
|
@@ -447,6 +448,7 @@ teardown() {
|
||||||
|
run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro arch cat /etc/group
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
+ assert_line --regexp "^$USER:x:[[:digit:]]+:$USER$"
|
||||||
|
assert_line --regexp "^wheel:x:[[:digit:]]+:$USER$"
|
||||||
|
assert [ ${#lines[@]} -gt 1 ]
|
||||||
|
|
||||||
|
@@ -460,6 +462,7 @@ teardown() {
|
||||||
|
run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro fedora --release 34 cat /etc/group
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
+ assert_line --regexp "^$USER:x:[[:digit:]]+:$USER$"
|
||||||
|
assert_line --regexp "^wheel:x:[[:digit:]]+:$USER$"
|
||||||
|
assert [ ${#lines[@]} -gt 1 ]
|
||||||
|
|
||||||
|
@@ -473,6 +476,7 @@ teardown() {
|
||||||
|
run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro rhel --release 8.7 cat /etc/group
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
+ assert_line --regexp "^$USER:x:[[:digit:]]+:$USER$"
|
||||||
|
assert_line --regexp "^wheel:x:[[:digit:]]+:$USER$"
|
||||||
|
assert [ ${#lines[@]} -gt 1 ]
|
||||||
|
|
||||||
|
@@ -486,6 +490,7 @@ teardown() {
|
||||||
|
run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 16.04 cat /etc/group
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
+ assert_line --regexp "^$USER:x:[[:digit:]]+:$USER$"
|
||||||
|
assert_line --regexp "^sudo:x:[[:digit:]]+:$USER$"
|
||||||
|
assert [ ${#lines[@]} -gt 1 ]
|
||||||
|
|
||||||
|
@@ -499,6 +504,7 @@ teardown() {
|
||||||
|
run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 18.04 cat /etc/group
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
+ assert_line --regexp "^$USER:x:[[:digit:]]+:$USER$"
|
||||||
|
assert_line --regexp "^sudo:x:[[:digit:]]+:$USER$"
|
||||||
|
assert [ ${#lines[@]} -gt 1 ]
|
||||||
|
|
||||||
|
@@ -512,6 +518,7 @@ teardown() {
|
||||||
|
run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 20.04 cat /etc/group
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
+ assert_line --regexp "^$USER:x:[[:digit:]]+:$USER$"
|
||||||
|
assert_line --regexp "^sudo:x:[[:digit:]]+:$USER$"
|
||||||
|
assert [ ${#lines[@]} -gt 1 ]
|
||||||
|
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
||||||
|
|
||||||
|
From b2d64fad1a23a07919efdb70de9247645e44f973 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Debarshi Ray <rishi@fedoraproject.org>
|
||||||
|
Date: Thu, 8 Feb 2024 22:51:43 +0100
|
||||||
|
Subject: [PATCH 2/4] test/system: Ensure that process started by 'podman exec'
|
||||||
|
has all groups
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
Commit 15173f8c25c81244 exposed a bug in crun(1) [1] where the process
|
||||||
|
started directly by 'podman exec --user ...' inside the Toolbx container
|
||||||
|
would not have the supplementary groups attached to the user by the
|
||||||
|
entry point.
|
||||||
|
|
||||||
|
This could be observed by differences in id(1):
|
||||||
|
⬢$ id
|
||||||
|
uid=1000(user) gid=1000(user) groups=1000(user)
|
||||||
|
⬢$ id user
|
||||||
|
uid=1000(user) gid=1000(user) groups=1000(user),10(wheel)
|
||||||
|
|
||||||
|
... and could be worked around by starting a new session with sudo(8).
|
||||||
|
|
||||||
|
[1] crun commit 9effaebb429a1aed
|
||||||
|
https://github.com/containers/crun/commit/9effaebb429a1aed
|
||||||
|
https://github.com/containers/crun/issues/644
|
||||||
|
https://github.com/containers/podman/issues/9986
|
||||||
|
|
||||||
|
https://github.com/containers/toolbox/issues/608
|
||||||
|
---
|
||||||
|
test/system/206-user.bats | 231 ++++++++++++++++++++++++++++++++++++++
|
||||||
|
1 file changed, 231 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/test/system/206-user.bats b/test/system/206-user.bats
|
||||||
|
index cdd38c146024..2df7862f259e 100644
|
||||||
|
--- a/test/system/206-user.bats
|
||||||
|
+++ b/test/system/206-user.bats
|
||||||
|
@@ -525,3 +525,234 @@ teardown() {
|
||||||
|
# shellcheck disable=SC2154
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+@test "user: id(1) for $USER inside the default container" {
|
||||||
|
+ create_default_container
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run id
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ local output_id="${lines[0]}"
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run id "$USER"
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 "$output_id"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+@test "user: id(1) for $USER inside Arch Linux" {
|
||||||
|
+ create_distro_container arch latest arch-toolbox-latest
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro arch id
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ local output_id="${lines[0]}"
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro arch id "$USER"
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 "$output_id"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+@test "user: id(1) for $USER inside Fedora 34" {
|
||||||
|
+ create_distro_container fedora 34 fedora-toolbox-34
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro fedora --release 34 id
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ local output_id="${lines[0]}"
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro fedora --release 34 id "$USER"
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 "$output_id"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+@test "user: id(1) for $USER inside RHEL 8.7" {
|
||||||
|
+ create_distro_container rhel 8.7 rhel-toolbox-8.7
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro rhel --release 8.7 id
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ local output_id="${lines[0]}"
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro rhel --release 8.7 id "$USER"
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 "$output_id"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+@test "user: id(1) for $USER inside Ubuntu 16.04" {
|
||||||
|
+ create_distro_container ubuntu 16.04 ubuntu-toolbox-16.04
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 16.04 id
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ local output_id="${lines[0]}"
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 16.04 id "$USER"
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 "$output_id"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+@test "user: id(1) for $USER inside Ubuntu 18.04" {
|
||||||
|
+ create_distro_container ubuntu 18.04 ubuntu-toolbox-18.04
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 18.04 id
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ local output_id="${lines[0]}"
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 18.04 id "$USER"
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 "$output_id"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+@test "user: id(1) for $USER inside Ubuntu 20.04" {
|
||||||
|
+ create_distro_container ubuntu 20.04 ubuntu-toolbox-20.04
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 20.04 id
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ local output_id="${lines[0]}"
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 20.04 id "$USER"
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 "$output_id"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2154
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
||||||
|
|
||||||
|
From da2555d04f9ff677b3f2033ff36390f75c3a509d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Debarshi Ray <rishi@fedoraproject.org>
|
||||||
|
Date: Thu, 18 Jan 2024 19:53:02 +0100
|
||||||
|
Subject: [PATCH 3/4] test/system: Group by higher-level objective, not
|
||||||
|
distribution
|
||||||
|
|
||||||
|
Fallout from 51ffd2793d882ffab45ace44c03edfdaeb3f138c
|
||||||
|
|
||||||
|
https://github.com/containers/toolbox/pull/1436
|
||||||
|
---
|
||||||
|
test/system/220-environment-variables.bats | 152 ++++++++++-----------
|
||||||
|
1 file changed, 76 insertions(+), 76 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/test/system/220-environment-variables.bats b/test/system/220-environment-variables.bats
|
||||||
|
index 0e1356654468..dd74b1dc5142 100644
|
||||||
|
--- a/test/system/220-environment-variables.bats
|
||||||
|
+++ b/test/system/220-environment-variables.bats
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
# shellcheck shell=bats
|
||||||
|
#
|
||||||
|
-# Copyright © 2023 Red Hat, Inc.
|
||||||
|
+# Copyright © 2023 – 2024 Red Hat, Inc.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
@@ -57,25 +57,24 @@ teardown() {
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
-@test "environment variables: HISTSIZE inside the default container" {
|
||||||
|
- skip "https://pagure.io/setup/pull-request/48"
|
||||||
|
-
|
||||||
|
- create_default_container
|
||||||
|
+@test "environment variables: HISTFILESIZE inside Arch Linux" {
|
||||||
|
+ create_distro_container arch latest arch-toolbox-latest
|
||||||
|
|
||||||
|
- if [ "$HISTSIZE" = "" ]; then
|
||||||
|
+ # shellcheck disable=SC2031
|
||||||
|
+ if [ "$HISTFILESIZE" = "" ]; then
|
||||||
|
# shellcheck disable=SC2030
|
||||||
|
- HISTSIZE=1001
|
||||||
|
+ HISTFILESIZE=1001
|
||||||
|
else
|
||||||
|
- ((HISTSIZE++))
|
||||||
|
+ ((HISTFILESIZE++))
|
||||||
|
fi
|
||||||
|
|
||||||
|
- export HISTSIZE
|
||||||
|
+ export HISTFILESIZE
|
||||||
|
|
||||||
|
# shellcheck disable=SC2016
|
||||||
|
- run --keep-empty-lines --separate-stderr "$TOOLBOX" run bash -c 'echo "$HISTSIZE"'
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro arch bash -c 'echo "$HISTFILESIZE"'
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
- assert_line --index 0 "$HISTSIZE"
|
||||||
|
+ assert_line --index 0 "$HISTFILESIZE"
|
||||||
|
|
||||||
|
if check_bats_version 1.10.0; then
|
||||||
|
assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
@@ -87,8 +86,8 @@ teardown() {
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
-@test "environment variables: HISTFILESIZE inside Arch Linux" {
|
||||||
|
- create_distro_container arch latest arch-toolbox-latest
|
||||||
|
+@test "environment variables: HISTFILESIZE inside Fedora 34" {
|
||||||
|
+ create_distro_container fedora 34 fedora-toolbox-34
|
||||||
|
|
||||||
|
# shellcheck disable=SC2031
|
||||||
|
if [ "$HISTFILESIZE" = "" ]; then
|
||||||
|
@@ -101,7 +100,7 @@ teardown() {
|
||||||
|
export HISTFILESIZE
|
||||||
|
|
||||||
|
# shellcheck disable=SC2016
|
||||||
|
- run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro arch bash -c 'echo "$HISTFILESIZE"'
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro fedora --release 34 bash -c 'echo "$HISTFILESIZE"'
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
assert_line --index 0 "$HISTFILESIZE"
|
||||||
|
@@ -116,24 +115,24 @@ teardown() {
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
-@test "environment variables: HISTSIZE inside Arch Linux" {
|
||||||
|
- create_distro_container arch latest arch-toolbox-latest
|
||||||
|
+@test "environment variables: HISTFILESIZE inside RHEL 8.7" {
|
||||||
|
+ create_distro_container rhel 8.7 rhel-toolbox-8.7
|
||||||
|
|
||||||
|
# shellcheck disable=SC2031
|
||||||
|
- if [ "$HISTSIZE" = "" ]; then
|
||||||
|
+ if [ "$HISTFILESIZE" = "" ]; then
|
||||||
|
# shellcheck disable=SC2030
|
||||||
|
- HISTSIZE=1001
|
||||||
|
+ HISTFILESIZE=1001
|
||||||
|
else
|
||||||
|
- ((HISTSIZE++))
|
||||||
|
+ ((HISTFILESIZE++))
|
||||||
|
fi
|
||||||
|
|
||||||
|
- export HISTSIZE
|
||||||
|
+ export HISTFILESIZE
|
||||||
|
|
||||||
|
# shellcheck disable=SC2016
|
||||||
|
- run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro arch bash -c 'echo "$HISTSIZE"'
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro rhel --release 8.7 bash -c 'echo "$HISTFILESIZE"'
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
- assert_line --index 0 "$HISTSIZE"
|
||||||
|
+ assert_line --index 0 "$HISTFILESIZE"
|
||||||
|
|
||||||
|
if check_bats_version 1.10.0; then
|
||||||
|
assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
@@ -145,8 +144,8 @@ teardown() {
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
-@test "environment variables: HISTFILESIZE inside Fedora 34" {
|
||||||
|
- create_distro_container fedora 34 fedora-toolbox-34
|
||||||
|
+@test "environment variables: HISTFILESIZE inside Ubuntu 16.04" {
|
||||||
|
+ create_distro_container ubuntu 16.04 ubuntu-toolbox-16.04
|
||||||
|
|
||||||
|
# shellcheck disable=SC2031
|
||||||
|
if [ "$HISTFILESIZE" = "" ]; then
|
||||||
|
@@ -159,7 +158,8 @@ teardown() {
|
||||||
|
export HISTFILESIZE
|
||||||
|
|
||||||
|
# shellcheck disable=SC2016
|
||||||
|
- run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro fedora --release 34 bash -c 'echo "$HISTFILESIZE"'
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 16.04 \
|
||||||
|
+ bash -c 'echo "$HISTFILESIZE"'
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
assert_line --index 0 "$HISTFILESIZE"
|
||||||
|
@@ -174,26 +174,25 @@ teardown() {
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
-@test "environment variables: HISTSIZE inside Fedora 34" {
|
||||||
|
- skip "https://pagure.io/setup/pull-request/48"
|
||||||
|
-
|
||||||
|
- create_distro_container fedora 34 fedora-toolbox-34
|
||||||
|
+@test "environment variables: HISTFILESIZE inside Ubuntu 18.04" {
|
||||||
|
+ create_distro_container ubuntu 18.04 ubuntu-toolbox-18.04
|
||||||
|
|
||||||
|
# shellcheck disable=SC2031
|
||||||
|
- if [ "$HISTSIZE" = "" ]; then
|
||||||
|
+ if [ "$HISTFILESIZE" = "" ]; then
|
||||||
|
# shellcheck disable=SC2030
|
||||||
|
- HISTSIZE=1001
|
||||||
|
+ HISTFILESIZE=1001
|
||||||
|
else
|
||||||
|
- ((HISTSIZE++))
|
||||||
|
+ ((HISTFILESIZE++))
|
||||||
|
fi
|
||||||
|
|
||||||
|
- export HISTSIZE
|
||||||
|
+ export HISTFILESIZE
|
||||||
|
|
||||||
|
# shellcheck disable=SC2016
|
||||||
|
- run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro fedora --release 34 bash -c 'echo "$HISTSIZE"'
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 18.04 \
|
||||||
|
+ bash -c 'echo "$HISTFILESIZE"'
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
- assert_line --index 0 "$HISTSIZE"
|
||||||
|
+ assert_line --index 0 "$HISTFILESIZE"
|
||||||
|
|
||||||
|
if check_bats_version 1.10.0; then
|
||||||
|
assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
@@ -205,12 +204,11 @@ teardown() {
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
-@test "environment variables: HISTFILESIZE inside RHEL 8.7" {
|
||||||
|
- create_distro_container rhel 8.7 rhel-toolbox-8.7
|
||||||
|
+@test "environment variables: HISTFILESIZE inside Ubuntu 20.04" {
|
||||||
|
+ create_distro_container ubuntu 20.04 ubuntu-toolbox-20.04
|
||||||
|
|
||||||
|
# shellcheck disable=SC2031
|
||||||
|
if [ "$HISTFILESIZE" = "" ]; then
|
||||||
|
- # shellcheck disable=SC2030
|
||||||
|
HISTFILESIZE=1001
|
||||||
|
else
|
||||||
|
((HISTFILESIZE++))
|
||||||
|
@@ -219,7 +217,8 @@ teardown() {
|
||||||
|
export HISTFILESIZE
|
||||||
|
|
||||||
|
# shellcheck disable=SC2016
|
||||||
|
- run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro rhel --release 8.7 bash -c 'echo "$HISTFILESIZE"'
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 20.04 \
|
||||||
|
+ bash -c 'echo "$HISTFILESIZE"'
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
assert_line --index 0 "$HISTFILESIZE"
|
||||||
|
@@ -234,12 +233,11 @@ teardown() {
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
-@test "environment variables: HISTSIZE inside RHEL 8.7" {
|
||||||
|
+@test "environment variables: HISTSIZE inside the default container" {
|
||||||
|
skip "https://pagure.io/setup/pull-request/48"
|
||||||
|
|
||||||
|
- create_distro_container rhel 8.7 rhel-toolbox-8.7
|
||||||
|
+ create_default_container
|
||||||
|
|
||||||
|
- # shellcheck disable=SC2031
|
||||||
|
if [ "$HISTSIZE" = "" ]; then
|
||||||
|
# shellcheck disable=SC2030
|
||||||
|
HISTSIZE=1001
|
||||||
|
@@ -250,7 +248,7 @@ teardown() {
|
||||||
|
export HISTSIZE
|
||||||
|
|
||||||
|
# shellcheck disable=SC2016
|
||||||
|
- run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro rhel --release 8.7 bash -c 'echo "$HISTSIZE"'
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run bash -c 'echo "$HISTSIZE"'
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
assert_line --index 0 "$HISTSIZE"
|
||||||
|
@@ -265,25 +263,24 @@ teardown() {
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
-@test "environment variables: HISTFILESIZE inside Ubuntu 16.04" {
|
||||||
|
- create_distro_container ubuntu 16.04 ubuntu-toolbox-16.04
|
||||||
|
+@test "environment variables: HISTSIZE inside Arch Linux" {
|
||||||
|
+ create_distro_container arch latest arch-toolbox-latest
|
||||||
|
|
||||||
|
# shellcheck disable=SC2031
|
||||||
|
- if [ "$HISTFILESIZE" = "" ]; then
|
||||||
|
+ if [ "$HISTSIZE" = "" ]; then
|
||||||
|
# shellcheck disable=SC2030
|
||||||
|
- HISTFILESIZE=1001
|
||||||
|
+ HISTSIZE=1001
|
||||||
|
else
|
||||||
|
- ((HISTFILESIZE++))
|
||||||
|
+ ((HISTSIZE++))
|
||||||
|
fi
|
||||||
|
|
||||||
|
- export HISTFILESIZE
|
||||||
|
+ export HISTSIZE
|
||||||
|
|
||||||
|
# shellcheck disable=SC2016
|
||||||
|
- run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 16.04 \
|
||||||
|
- bash -c 'echo "$HISTFILESIZE"'
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro arch bash -c 'echo "$HISTSIZE"'
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
- assert_line --index 0 "$HISTFILESIZE"
|
||||||
|
+ assert_line --index 0 "$HISTSIZE"
|
||||||
|
|
||||||
|
if check_bats_version 1.10.0; then
|
||||||
|
assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
@@ -295,8 +292,10 @@ teardown() {
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
-@test "environment variables: HISTSIZE inside Ubuntu 16.04" {
|
||||||
|
- create_distro_container ubuntu 16.04 ubuntu-toolbox-16.04
|
||||||
|
+@test "environment variables: HISTSIZE inside Fedora 34" {
|
||||||
|
+ skip "https://pagure.io/setup/pull-request/48"
|
||||||
|
+
|
||||||
|
+ create_distro_container fedora 34 fedora-toolbox-34
|
||||||
|
|
||||||
|
# shellcheck disable=SC2031
|
||||||
|
if [ "$HISTSIZE" = "" ]; then
|
||||||
|
@@ -309,7 +308,7 @@ teardown() {
|
||||||
|
export HISTSIZE
|
||||||
|
|
||||||
|
# shellcheck disable=SC2016
|
||||||
|
- run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 16.04 bash -c 'echo "$HISTSIZE"'
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro fedora --release 34 bash -c 'echo "$HISTSIZE"'
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
assert_line --index 0 "$HISTSIZE"
|
||||||
|
@@ -324,25 +323,26 @@ teardown() {
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
-@test "environment variables: HISTFILESIZE inside Ubuntu 18.04" {
|
||||||
|
- create_distro_container ubuntu 18.04 ubuntu-toolbox-18.04
|
||||||
|
+@test "environment variables: HISTSIZE inside RHEL 8.7" {
|
||||||
|
+ skip "https://pagure.io/setup/pull-request/48"
|
||||||
|
+
|
||||||
|
+ create_distro_container rhel 8.7 rhel-toolbox-8.7
|
||||||
|
|
||||||
|
# shellcheck disable=SC2031
|
||||||
|
- if [ "$HISTFILESIZE" = "" ]; then
|
||||||
|
+ if [ "$HISTSIZE" = "" ]; then
|
||||||
|
# shellcheck disable=SC2030
|
||||||
|
- HISTFILESIZE=1001
|
||||||
|
+ HISTSIZE=1001
|
||||||
|
else
|
||||||
|
- ((HISTFILESIZE++))
|
||||||
|
+ ((HISTSIZE++))
|
||||||
|
fi
|
||||||
|
|
||||||
|
- export HISTFILESIZE
|
||||||
|
+ export HISTSIZE
|
||||||
|
|
||||||
|
# shellcheck disable=SC2016
|
||||||
|
- run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 18.04 \
|
||||||
|
- bash -c 'echo "$HISTFILESIZE"'
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro rhel --release 8.7 bash -c 'echo "$HISTSIZE"'
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
- assert_line --index 0 "$HISTFILESIZE"
|
||||||
|
+ assert_line --index 0 "$HISTSIZE"
|
||||||
|
|
||||||
|
if check_bats_version 1.10.0; then
|
||||||
|
assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
@@ -354,8 +354,8 @@ teardown() {
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
-@test "environment variables: HISTSIZE inside Ubuntu 18.04" {
|
||||||
|
- create_distro_container ubuntu 18.04 ubuntu-toolbox-18.04
|
||||||
|
+@test "environment variables: HISTSIZE inside Ubuntu 16.04" {
|
||||||
|
+ create_distro_container ubuntu 16.04 ubuntu-toolbox-16.04
|
||||||
|
|
||||||
|
# shellcheck disable=SC2031
|
||||||
|
if [ "$HISTSIZE" = "" ]; then
|
||||||
|
@@ -368,7 +368,7 @@ teardown() {
|
||||||
|
export HISTSIZE
|
||||||
|
|
||||||
|
# shellcheck disable=SC2016
|
||||||
|
- run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 18.04 bash -c 'echo "$HISTSIZE"'
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 16.04 bash -c 'echo "$HISTSIZE"'
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
assert_line --index 0 "$HISTSIZE"
|
||||||
|
@@ -383,24 +383,24 @@ teardown() {
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
-@test "environment variables: HISTFILESIZE inside Ubuntu 20.04" {
|
||||||
|
- create_distro_container ubuntu 20.04 ubuntu-toolbox-20.04
|
||||||
|
+@test "environment variables: HISTSIZE inside Ubuntu 18.04" {
|
||||||
|
+ create_distro_container ubuntu 18.04 ubuntu-toolbox-18.04
|
||||||
|
|
||||||
|
# shellcheck disable=SC2031
|
||||||
|
- if [ "$HISTFILESIZE" = "" ]; then
|
||||||
|
- HISTFILESIZE=1001
|
||||||
|
+ if [ "$HISTSIZE" = "" ]; then
|
||||||
|
+ # shellcheck disable=SC2030
|
||||||
|
+ HISTSIZE=1001
|
||||||
|
else
|
||||||
|
- ((HISTFILESIZE++))
|
||||||
|
+ ((HISTSIZE++))
|
||||||
|
fi
|
||||||
|
|
||||||
|
- export HISTFILESIZE
|
||||||
|
+ export HISTSIZE
|
||||||
|
|
||||||
|
# shellcheck disable=SC2016
|
||||||
|
- run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 20.04 \
|
||||||
|
- bash -c 'echo "$HISTFILESIZE"'
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 18.04 bash -c 'echo "$HISTSIZE"'
|
||||||
|
|
||||||
|
assert_success
|
||||||
|
- assert_line --index 0 "$HISTFILESIZE"
|
||||||
|
+ assert_line --index 0 "$HISTSIZE"
|
||||||
|
|
||||||
|
if check_bats_version 1.10.0; then
|
||||||
|
assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
||||||
|
|
||||||
|
From ee2c92299d5488bab4e54cb04d9a120e0b9ed405 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Debarshi Ray <rishi@fedoraproject.org>
|
||||||
|
Date: Thu, 18 Jan 2024 20:17:50 +0100
|
||||||
|
Subject: [PATCH 4/4] test/system: Test that the HOSTNAME environment variable
|
||||||
|
is set
|
||||||
|
|
||||||
|
Bash automatically sets the HOSTNAME environment variable to the name of
|
||||||
|
the current host [1] as returned by gethostname(2), which is the same as
|
||||||
|
hostname(1).
|
||||||
|
|
||||||
|
However, on Fedora, from Fedora 33 onwards, /etc/profile sets the
|
||||||
|
HOSTNAME environment variable to 'hostnamectl --transient' [2], and,
|
||||||
|
from Fedora 35 onwards, it has a fallback to hostname(1) [3]. These two
|
||||||
|
approaches return different values when used inside a Toolbx container.
|
||||||
|
The former picks up the hostname of the host operating system, while the
|
||||||
|
fallback gets the name that was set when creating the container with
|
||||||
|
'podman create --hostname toolbox ...'.
|
||||||
|
|
||||||
|
Hence, the value of HOSTNAME inside a Toolbx container for Fedora
|
||||||
|
depends on whether the corresponding version of the fedora-toolbox image
|
||||||
|
contained hostnamectl(1) or not.
|
||||||
|
|
||||||
|
[1] https://www.gnu.org/software/bash/manual/html_node/Bash-Variables.html
|
||||||
|
|
||||||
|
[2] setup commit eb9cc4dce89be24f
|
||||||
|
https://pagure.io/setup/c/eb9cc4dce89be24f
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=1745245
|
||||||
|
|
||||||
|
[3] setup commit ddd74b5d971a734c
|
||||||
|
https://pagure.io/setup/c/ddd74b5d971a734c
|
||||||
|
https://pagure.io/setup/pull-request/28
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=1938223
|
||||||
|
|
||||||
|
https://github.com/containers/toolbox/issues/558
|
||||||
|
---
|
||||||
|
test/system/220-environment-variables.bats | 126 +++++++++++++++++++++
|
||||||
|
1 file changed, 126 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/test/system/220-environment-variables.bats b/test/system/220-environment-variables.bats
|
||||||
|
index dd74b1dc5142..5b51d17dee55 100644
|
||||||
|
--- a/test/system/220-environment-variables.bats
|
||||||
|
+++ b/test/system/220-environment-variables.bats
|
||||||
|
@@ -439,3 +439,129 @@ teardown() {
|
||||||
|
# shellcheck disable=SC2154
|
||||||
|
assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+@test "environment variables: HOSTNAME inside the default container" {
|
||||||
|
+ create_default_container
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2016
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run bash -c 'echo "$HOSTNAME"'
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 --regexp "^(toolbox|$HOSTNAME)$"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+@test "environment variables: HOSTNAME inside Arch Linux" {
|
||||||
|
+ create_distro_container arch latest arch-toolbox-latest
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2016
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro arch bash -c 'echo "$HOSTNAME"'
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 "toolbox"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+@test "environment variables: HOSTNAME inside Fedora 34" {
|
||||||
|
+ create_distro_container fedora 34 fedora-toolbox-34
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2016
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro fedora --release 34 bash -c 'echo "$HOSTNAME"'
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 "$HOSTNAME"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+@test "environment variables: HOSTNAME inside RHEL 8.7" {
|
||||||
|
+ create_distro_container rhel 8.7 rhel-toolbox-8.7
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2016
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro rhel --release 8.7 bash -c 'echo "$HOSTNAME"'
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 "toolbox"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+@test "environment variables: HOSTNAME inside Ubuntu 16.04" {
|
||||||
|
+ create_distro_container ubuntu 16.04 ubuntu-toolbox-16.04
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2016
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 16.04 bash -c 'echo "$HOSTNAME"'
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 "toolbox"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+@test "environment variables: HOSTNAME inside Ubuntu 18.04" {
|
||||||
|
+ create_distro_container ubuntu 18.04 ubuntu-toolbox-18.04
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2016
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 18.04 bash -c 'echo "$HOSTNAME"'
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 "toolbox"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+@test "environment variables: HOSTNAME inside Ubuntu 20.04" {
|
||||||
|
+ create_distro_container ubuntu 20.04 ubuntu-toolbox-20.04
|
||||||
|
+
|
||||||
|
+ # shellcheck disable=SC2016
|
||||||
|
+ run --keep-empty-lines --separate-stderr "$TOOLBOX" run --distro ubuntu --release 20.04 bash -c 'echo "$HOSTNAME"'
|
||||||
|
+
|
||||||
|
+ assert_success
|
||||||
|
+ assert_line --index 0 "toolbox"
|
||||||
|
+
|
||||||
|
+ if check_bats_version 1.10.0; then
|
||||||
|
+ assert [ ${#lines[@]} -eq 1 ]
|
||||||
|
+ else
|
||||||
|
+ assert [ ${#lines[@]} -eq 2 ]
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ assert [ ${#stderr_lines[@]} -eq 0 ]
|
||||||
|
+}
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
11
toolbox.spec
11
toolbox.spec
@ -17,7 +17,7 @@ Version: 0.0.99.5
|
|||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
Release: 7%{?dist}
|
Release: 8%{?dist}
|
||||||
Summary: Tool for interactive command line environments on Linux
|
Summary: Tool for interactive command line environments on Linux
|
||||||
|
|
||||||
License: Apache-2.0
|
License: Apache-2.0
|
||||||
@ -28,7 +28,8 @@ Source0: https://github.com/containers/%{name}/releases/download/%{version
|
|||||||
Source1: %{name}.conf
|
Source1: %{name}.conf
|
||||||
|
|
||||||
# Upstream
|
# Upstream
|
||||||
Patch0: toolbox-test-system-Unbreak-Podman-s-downstream-Fedora-CI.patch
|
Patch0: toolbox-test-system-new.patch
|
||||||
|
Patch1: toolbox-test-system-Unbreak-Podman-s-downstream-Fedora-CI.patch
|
||||||
|
|
||||||
# Fedora specific
|
# Fedora specific
|
||||||
Patch100: toolbox-Make-the-build-flags-match-Fedora-s-gobuild.patch
|
Patch100: toolbox-Make-the-build-flags-match-Fedora-s-gobuild.patch
|
||||||
@ -111,6 +112,7 @@ The %{name}-tests package contains system tests for %{name}.
|
|||||||
%setup -q
|
%setup -q
|
||||||
|
|
||||||
%patch -P0 -p1
|
%patch -P0 -p1
|
||||||
|
%patch -P1 -p1
|
||||||
|
|
||||||
%if 0%{?fedora}
|
%if 0%{?fedora}
|
||||||
%ifnarch ppc64
|
%ifnarch ppc64
|
||||||
@ -188,6 +190,11 @@ install -m0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/containers/%{name}.conf
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Feb 27 2024 Debarshi Ray <rishi@fedoraproject.org> - 0.0.99.5-8
|
||||||
|
- Unbreak Podman's downstream Fedora CI (part 2)
|
||||||
|
- Backport some new upstream tests
|
||||||
|
Resolves: RHEL-30245
|
||||||
|
|
||||||
* Tue Feb 13 2024 Debarshi Ray <rishi@fedoraproject.org> - 0.0.99.5-7
|
* Tue Feb 13 2024 Debarshi Ray <rishi@fedoraproject.org> - 0.0.99.5-7
|
||||||
- Unbreak Podman's downstream Fedora CI
|
- Unbreak Podman's downstream Fedora CI
|
||||||
- Update the BuildRequires on golang to reflect reality
|
- Update the BuildRequires on golang to reflect reality
|
||||||
|
Loading…
Reference in New Issue
Block a user