Commit Graph

26 Commits (b18849caac521a6b71f6836eea7cd5311dc2a721)

Author SHA1 Message Date
Johannes Schauer Marin Rodrigues b18849caac
Assume that we can always run unshare
With mount --rbind we can bind-mount /proc in a privileged docker
container as it is used by salsaci.
1 year ago
Johannes Schauer Marin Rodrigues 4c64adf6ee
add tests/auto-mode-as-normal-user 1 year ago
Johannes Schauer Marin Rodrigues a2d5573749
tests: drop qemu requirements for tests that only use it to create a user by defaulting to SUDO_USER 1 year ago
Johannes Schauer Marin Rodrigues f737cce3f1
Support creating a fakechroot with merged-/usr on an unmerged-/usr system
Thanks: Helmut Grohne for finding this issue and help interating this
1 year ago
Johannes Schauer Marin Rodrigues c738e96752
allow empty sources.list entries 1 year ago
Johannes Schauer Marin Rodrigues f27ed490d6
Do not split --include values again in run_download and run_install
Closes: #1028977
1 year ago
Johannes Schauer Marin Rodrigues cc5ea8c0c7
tests/chrootless: now that all of essential is supported, test everything 1 year ago
Johannes Schauer Marin Rodrigues 2b832e0128
add jessie-or-older extract hook 1 year ago
Johannes Schauer Marin Rodrigues ccd8919e67
add tests/unshare-include-deb 1 year ago
Johannes Schauer Marin Rodrigues ea146ad108
add undocumented --chrooted-*-hook calling pivot_root in unshare mode 1 year ago
Johannes Schauer Marin Rodrigues d29f9195d7
coverage.txt: add more requirements found by running tests on salsa ci and debci 1 year ago
Johannes Schauer Marin Rodrigues 822f8eafec
tests: test chrootless essential and systemd-sysv with fakeroot and foreign 2 years ago
Johannes Schauer Marin Rodrigues a207ac020b
remove test merged-usr-via-setup-hook as merged-/usr is now the default 2 years ago
Johannes Schauer Marin Rodrigues a16937e3e4
coverage.py: factor out coverage.txt parsing 2 years ago
Johannes Schauer Marin Rodrigues 410c5fcb24
fix --include option for files and add test case 2 years ago
Johannes Schauer Marin Rodrigues add9412a47
add --skip=chroot/mount and --skip=chroot/mount/dev, --skip=chroot/mount/proc, --skip=chroot/mount/sys 2 years ago
Johannes Schauer Marin Rodrigues e61e352f67
add --skip=chroot/start-stop-daemon and --skip=chroot/policy-rc.d 2 years ago
Johannes Schauer Marin Rodrigues 902bc55c4d
tarfilter --idshift now provides taridshift 2 years ago
Johannes Schauer Marin Rodrigues 226f86fea9
fix mmdebstrap hanging if apt in download step failed (closes: #1017795) 2 years ago
Johannes Schauer Marin Rodrigues 5533b25255
tests/chrootless-essential: enable again now that glibc is fixed 2 years ago
Johannes Schauer Marin Rodrigues d82afec5de
error out if stdout is a tty 2 years ago
Johannes Schauer Marin Rodrigues 009089ee8a
Mount a new instance of /dev/pts in the chroot
Before, we bind-mounted /dev/ptmx and /dev/pts from the host into the
chroot. This will make posix_openpt() fail with 'No such file or
directory'.  The ability to create pseudo terminals is important for apt
(which will throw a warning otherwise) or running script(1) or source
package testsuites like for src:util-linux. This functionality is
restored by mounting a new devpts instance to /dev/pts and making
/dev/ptmx a symlink to /dev/pts/ptmx. Mounting with ptmxmode=666 is
required such that also non-root users in unshare mode are able to
create pseudo terminals. See also:

https://www.kernel.org/doc/Documentation/filesystems/devpts.txt
https://salsa.debian.org/debian/schroot/-/merge_requests/2
https://bugs.debian.org/856877
https://bugs.debian.org/817236
2 years ago
Johannes Schauer Marin Rodrigues 793d8bb561
add forgotten test create-directory-dry-run 2 years ago
Johannes Schauer Marin Rodrigues d96e85fddd
file-mirror-automount hook now supports modes that cannot mount (like fakechroot) by copying the repo into the chroot 2 years ago
Johannes Schauer Marin Rodrigues e4ef326b59
Only set up FAKECHROOT_CMD_SUBST for paths in PATH containing the original binary
If FAKECHROOT_CMD_SUBST sets up wrong substitutions, then binaries
cannot be found. For example if /usr/bin/chroot is listed in
FAKECHROOT_CMD_SUBST but /usr/sbin (the actual location of the chroot
binary) is not in PATH, the command fails
2 years ago
Johannes Schauer Marin Rodrigues 4c3fddcd54
rewrite coverage.sh
- multiple individual shell scripts instead of one 3.5k line monster
 - tests driven by Python script allowing:
    * declarative test description in coverage.txt
    * collecting errors instead of aborting on first error
    * skipping tests
    * running specific tests
2 years ago