Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

implement clean_chroot, #267

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion grml-debootstrap
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,14 @@
last_bash_command="$BASH_COMMAND"
echo "Unexpected non-zero exit code $last_exit_code in ${BASH_SOURCE[*]} at line ${BASH_LINENO[*]} detected!
last bash command: $last_bash_command"
## Check if "bailout" function is already available.
if [ -r "$MNTPOINT/debootstrap/debootstrap.log" ] && \
[ -s "$MNTPOINT/debootstrap/debootstrap.log" ] ; then
einfo "Presenting last ten lines of debootstrap.log:"
tail -10 "${MNTPOINT}"/debootstrap/debootstrap.log
einfo "End of debootstrap.log"
fi
## Check if "bailout" function is available.
## This is not the case in chroot-script.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hm, I don't understand why this change ends up in this clean_chroot feature/commit, is the github web UI showing something unexpected? o_

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure where you saw that. But GitHub says Outdated". I cannot see any change related to / near ## Check if "bailout" function is available. in a local git diff.

if command -v bailout >/dev/null 2>&1; then
bailout 1
else
Expand Down Expand Up @@ -289,12 +296,12 @@
fi
done

[ -x "$MNTPOINT"/bin/umount ] && clean_chroot "$MNTPOINT" umount -a >/dev/null 2>&1 || true

Check warning on line 299 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck] reported by reviewdog 🐶 Note that A && B || C is not if-then-else. C may run when A is true. [SC2015](https://github.com/koalaman/shellcheck/wiki/SC2015) Raw Output: ./grml-debootstrap:299:37:info:Note that A && B || C is not if-then-else. C may run when A is true. [SC2015](https://github.com/koalaman/shellcheck/wiki/SC2015)

# ugly, but make sure we really don't leave anything (/proc /proc and
# /dev /dev are intended, trying to work around timing issues, see #657023)
for ARG in /run/udev /sys /proc /proc /dev/pts /dev/pts /dev /dev ; do
[ -x "$MNTPOINT"/bin/umount ] && clean_chroot "$MNTPOINT" umount $ARG >/dev/null 2>&1 || true

Check warning on line 304 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck] reported by reviewdog 🐶 Note that A && B || C is not if-then-else. C may run when A is true. [SC2015](https://github.com/koalaman/shellcheck/wiki/SC2015) Raw Output: ./grml-debootstrap:304:39:info:Note that A && B || C is not if-then-else. C may run when A is true. [SC2015](https://github.com/koalaman/shellcheck/wiki/SC2015)
umount "$MNTPOINT"/$ARG >/dev/null 2>&1 || true
done

Expand Down Expand Up @@ -808,7 +815,7 @@
prompt_for_release()
{
[ -n "$RELEASE" ] && DEFAULT_RELEASE="$RELEASE" || DEFAULT_RELEASE='bullseye'
RELEASE="$(dialog --stdout --title "${PN}" --default-item $DEFAULT_RELEASE --menu \

Check warning on line 818 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck] reported by reviewdog 🐶 Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086) Raw Output: ./grml-debootstrap:818:61:info:Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086)

Check failure on line 818 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck (suggestion)] reported by reviewdog 🐶 Raw Output: grml-debootstrap:818:- RELEASE="$(dialog --stdout --title "${PN}" --default-item $DEFAULT_RELEASE --menu \ grml-debootstrap:818:+ RELEASE="$(dialog --stdout --title "${PN}" --default-item "$DEFAULT_RELEASE" --menu \
"Please enter the Debian release you would like to use for installation:" \
0 50 8 \
buster Debian/10 \
Expand Down Expand Up @@ -860,7 +867,7 @@
{
[ -n "$ISO" ] && DEFAULT_MIRROR='local' || DEFAULT_MIRROR='net'

CHOOSE_MIRROR=$(dialog --stdout --title "$PN" --default-item $DEFAULT_MIRROR \

Check warning on line 870 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck] reported by reviewdog 🐶 Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086) Raw Output: ./grml-debootstrap:870:64:info:Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086)

Check failure on line 870 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck (suggestion)] reported by reviewdog 🐶 Raw Output: grml-debootstrap:870:- CHOOSE_MIRROR=$(dialog --stdout --title "$PN" --default-item $DEFAULT_MIRROR \ grml-debootstrap:870:+ CHOOSE_MIRROR=$(dialog --stdout --title "$PN" --default-item "$DEFAULT_MIRROR" \
--menu "Where do you want to install from?" 0 0 0 \
net "install via network (downloading from mirror)" \
local "install from local directory/mirror"
Expand All @@ -870,13 +877,13 @@
[ -n "$MIRROR" ] || MIRROR='http://deb.debian.org/debian'
MIRROR="$(dialog --stdout --title "${PN}" --inputbox \
"Please enter Debian mirror you would like to use for installing packages." \
0 0 $MIRROR)" || bailout

Check warning on line 880 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck] reported by reviewdog 🐶 Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086) Raw Output: ./grml-debootstrap:880:20:info:Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086)

Check failure on line 880 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck (suggestion)] reported by reviewdog 🐶 Raw Output: grml-debootstrap:880:- 0 0 $MIRROR)" || bailout grml-debootstrap:880:+ 0 0 "$MIRROR")" || bailout

else # CHOOSE_MIRROR == local
[ -n "$ISO" ] || ISO='/mnt/mirror'
ISO="$(dialog --stdout --title "${PN}" --inputbox \
"Please enter directory name you would like to use for installing packages." \
0 0 $ISO)" || bailout

Check warning on line 886 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck] reported by reviewdog 🐶 Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086) Raw Output: ./grml-debootstrap:886:20:info:Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086)

Check failure on line 886 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck (suggestion)] reported by reviewdog 🐶 Raw Output: grml-debootstrap:886:- 0 0 $ISO)" || bailout grml-debootstrap:886:+ 0 0 "$ISO")" || bailout
fi
}
# }}}
Expand Down Expand Up @@ -1843,12 +1850,12 @@
[ -n "$TUNE2FS" ] && echo "TUNE2FS='${TUNE2FS//\'/\'\\\'\'}'" >> "$CHROOT_VARIABLES"
[ -n "$VMSIZE" ] && echo "VMSIZE='${VMSIZE//\'/\'\\\'\'}'" >> "$CHROOT_VARIABLES"

cp $VERBOSE "${CONFFILES}"/chroot-script "${MNTPOINT}"/bin/chroot-script

Check warning on line 1853 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck] reported by reviewdog 🐶 Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086) Raw Output: ./grml-debootstrap:1853:6:info:Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086)

Check failure on line 1853 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck (suggestion)] reported by reviewdog 🐶 Raw Output: grml-debootstrap:1853:- cp $VERBOSE "${CONFFILES}"/chroot-script "${MNTPOINT}"/bin/chroot-script grml-debootstrap:1853:+ cp "$VERBOSE" "${CONFFILES}"/chroot-script "${MNTPOINT}"/bin/chroot-script
chmod 755 "${MNTPOINT}"/bin/chroot-script
[ -d "$MNTPOINT"/etc/debootstrap/ ] || mkdir "$MNTPOINT"/etc/debootstrap/

# make sure we have our files for later use via chroot-script
cp $VERBOSE "${CONFFILES}/config" "${MNTPOINT}"/etc/debootstrap/

Check warning on line 1858 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck] reported by reviewdog 🐶 Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086) Raw Output: ./grml-debootstrap:1858:6:info:Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086)

Check failure on line 1858 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck (suggestion)] reported by reviewdog 🐶 Raw Output: grml-debootstrap:1858:- cp $VERBOSE "${CONFFILES}/config" "${MNTPOINT}"/etc/debootstrap/ grml-debootstrap:1858:+ cp "$VERBOSE" "${CONFFILES}/config" "${MNTPOINT}"/etc/debootstrap/
# make sure we adjust the configuration variables accordingly:
sed -i "s#RELEASE=.*#RELEASE=\"$RELEASE\"#" "${MNTPOINT}"/etc/debootstrap/config
sed -i "s#TARGET=.*#TARGET=\"$TARGET\"#" "${MNTPOINT}"/etc/debootstrap/config
Expand All @@ -1867,20 +1874,20 @@
PACKAGES_FILE="packages-arm64"
fi

cp $VERBOSE "${_opt_packages:-$CONFFILES/$PACKAGES_FILE}" \

Check warning on line 1877 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck] reported by reviewdog 🐶 Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086) Raw Output: ./grml-debootstrap:1877:8:info:Double quote to prevent globbing and word splitting. [SC2086](https://github.com/koalaman/shellcheck/wiki/SC2086)

Check failure on line 1877 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck (suggestion)] reported by reviewdog 🐶 Raw Output: grml-debootstrap:1877:- cp $VERBOSE "${_opt_packages:-$CONFFILES/$PACKAGES_FILE}" \ grml-debootstrap:1877:+ cp "$VERBOSE" "${_opt_packages:-$CONFFILES/$PACKAGES_FILE}" \
"${MNTPOINT}/etc/debootstrap/${PACKAGES_FILE}"
fi

# debconf preseeding:
_opt_debconf=${_opt_debconf:-$CONFFILES/debconf-selections}
[ -f "${_opt_debconf}" ] && [ "$DEBCONF" = 'yes' ] && \
cp $VERBOSE "${_opt_debconf}" "${MNTPOINT}"/etc/debootstrap/debconf-selections

Check failure on line 1884 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck (suggestion)] reported by reviewdog 🐶 Raw Output: grml-debootstrap:1884:- cp $VERBOSE "${_opt_debconf}" "${MNTPOINT}"/etc/debootstrap/debconf-selections grml-debootstrap:1884:+ cp "$VERBOSE" "${_opt_debconf}" "${MNTPOINT}"/etc/debootstrap/debconf-selections

# copy scripts that should be executed inside the chroot:
_opt_chroot_scripts=${_opt_chroot_scripts:-$CONFFILES/chroot-scripts/}
[ -d "$_opt_chroot_scripts" ] && [ "$CHROOT_SCRIPTS" = 'yes' ] && {
mkdir -p "${MNTPOINT}"/etc/debootstrap/chroot-scripts
cp -a $VERBOSE "${_opt_chroot_scripts}"/* "${MNTPOINT}"/etc/debootstrap/chroot-scripts/

Check failure on line 1890 in grml-debootstrap

View workflow job for this annotation

GitHub Actions / shellcheck grml-debootstrap

[shellcheck (suggestion)] reported by reviewdog 🐶 Raw Output: grml-debootstrap:1890:- cp -a $VERBOSE "${_opt_chroot_scripts}"/* "${MNTPOINT}"/etc/debootstrap/chroot-scripts/ grml-debootstrap:1890:+ cp -a "$VERBOSE" "${_opt_chroot_scripts}"/* "${MNTPOINT}"/etc/debootstrap/chroot-scripts/
}

# notice: do NOT use $CHROOT_VARIABLES inside chroot but statically file instead!
Expand Down
Loading