summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.txt51
-rw-r--r--Makefile69
-rw-r--r--VERSION.txt2
-rwxr-xr-xbin/container19
-rwxr-xr-xbin/container-shell10
-rwxr-xr-xlib/container/auto13
-rwxr-xr-xlib/container/console9
-rwxr-xr-xlib/container/create22
-rwxr-xr-xlib/container/enter9
-rwxr-xr-xlib/container/key9
-rwxr-xr-xlib/container/limit9
-rwxr-xr-xlib/container/list27
-rwxr-xr-xlib/container/log145
-rwxr-xr-xlib/container/move13
-rwxr-xr-xlib/container/remove23
-rwxr-xr-xlib/container/restart19
-rwxr-xr-xlib/container/start23
-rwxr-xr-xlib/container/status11
-rwxr-xr-xlib/container/stop21
-rwxr-xr-xlib/container/top11
-rwxr-xr-xlib/container/version9
-rw-r--r--share/bash-completion/container54
-rw-r--r--share/config/container.conf.in2
-rw-r--r--share/doc/HOST-SETUP.txt39
-rwxr-xr-xshare/doc/asciicast/introduction.sh13
-rw-r--r--share/doc/examples/buster.cfg35
-rwxr-xr-xshare/doc/examples/container-images.sh4
-rw-r--r--share/doc/examples/dschinn-backports.cfg72
-rw-r--r--share/doc/examples/engywuck-backports.cfg70
-rw-r--r--share/doc/examples/stretch.cfg37
-rwxr-xr-xshare/hooks/pre-create.git-pull.sh12
-rw-r--r--share/logrotate/container (renamed from share/logrotate/container-tools)2
-rw-r--r--share/man/Makefile3
-rw-r--r--share/man/compute-tools.7.txt (renamed from share/man/container-tools.7.txt)27
-rw-r--r--share/man/container-auto.1.txt11
-rw-r--r--share/man/container-console.1.txt11
-rw-r--r--share/man/container-create-curl.1.txt23
-rw-r--r--share/man/container-create-debconf.1.txt21
-rw-r--r--share/man/container-create-debootstrap.1.txt11
-rw-r--r--share/man/container-create.1.txt13
-rw-r--r--share/man/container-enter.1.txt11
-rw-r--r--share/man/container-key.1.txt11
-rw-r--r--share/man/container-limit.1.txt11
-rw-r--r--share/man/container-list.1.txt11
-rw-r--r--share/man/container-log.1.txt90
-rw-r--r--share/man/container-move.1.txt11
-rw-r--r--share/man/container-remove.1.txt11
-rw-r--r--share/man/container-restart.1.txt11
-rw-r--r--share/man/container-shell.1.txt21
-rw-r--r--share/man/container-start.1.txt11
-rw-r--r--share/man/container-status.1.txt9
-rw-r--r--share/man/container-stop.1.txt11
-rw-r--r--share/man/container-top.1.txt11
-rw-r--r--share/man/container-version.1.txt17
-rw-r--r--share/man/container.1.txt28
-rw-r--r--share/procps/zz-container.conf (renamed from share/procps/zz-container-tools.conf)3
-rwxr-xr-xshare/scripts/curl28
-rwxr-xr-xshare/scripts/curl.d/0001-debconf3
-rwxr-xr-xshare/scripts/debconf95
-rwxr-xr-xshare/scripts/debconf.d/0001-preseed-file44
-rw-r--r--share/scripts/debconf.d/0001-preseed-file.templates8
-rwxr-xr-xshare/scripts/debconf.d/0002-preseed-debconf7
-rwxr-xr-xshare/scripts/debconf.d/0003-debconf429
-rw-r--r--share/scripts/debconf.d/0003-debconf.templates58
-rwxr-xr-xshare/scripts/debootstrap9
-rw-r--r--share/sudo/container-shell (renamed from share/sudo/container-tools)0
-rw-r--r--share/systemd/container-auto.service2
-rw-r--r--share/systemd/container@.service2
68 files changed, 1136 insertions, 811 deletions
diff --git a/CHANGELOG.txt b/CHANGELOG.txt
index f05dd24..a516ba4 100644
--- a/CHANGELOG.txt
+++ b/CHANGELOG.txt
@@ -1,3 +1,54 @@
+2019-02-22 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+
+ * Releasing version 2019-02-22.
+
+ * Backward incompatible changes:
+ - replaced Progress Linux 4 and Progress Linux 4+ support in
+ container debconf create script in favour of Progress Linux 5
+ and Progress Linux 5+ support.
+
+ - renamed upstream from container-tools to compute-tools,
+ directory names have changed. The only user visible is the
+ configuration directory:
+
+ old: /etc/container-tools
+ new: /etc/open-infrastructure/container
+
+ - harmonized field names in container debconf create script:
+
+ old: container-tools cnt-debconf/[...]
+ new: compute-tools container/[...]
+
+ See updated example files in /usr/share/doc/compute-tools/examples.
+
+ [ Daniel Baumann ]
+ * Updating year in copyright notices to 2019.
+ * Updating debian preseed example from stretch to buster.
+ * Updating progress-linux preseed example from dschinn-backports to engywuck-backports.
+ * Adding comment about enabling user namespace in procps configuration.
+ * Adding support for Debian 10 (buster) in debconf container create script.
+ * Setting default debian distribution to buster in debconf container create script.
+ * Adding support for Debian testing/bullseye in debconf container create script.
+ * Replacing Progress Linux 4 with Progress Linux 5 in debconf container create script.
+ * Setting default debian distribution to buster in debootstrap container create script.
+ * Adding verbose output when using '-n ALL' options with container commands.
+ * Updating host-setup documentation for unpriviled containers.
+ * Adding convenience symlinks for container start and stop commands.
+ * Correcting (harmless) error in https mirror handling wrt/ installing apt-transport-https.
+ * Replacing archive signing key handling for progress-linux by install the progress-linux package.
+ * Using cdn redirector as default sources.list entry.
+ * Adding st convenience symlink for status command.
+ * Adding missing convenience symlinks in bash-completion.
+ * Adding container log command.
+ * Fixing inconsistent variable usage in makefile.
+ * Updating container-images.sh example for buster.
+ * Correcting left-over from old cnt-debconf/auto field in engywuck-backports preseed example.
+ * Removing manpage symlinks in uninstall target too.
+ * Renaming container-tools to compute-tools.
+ * Using get.open-infrastructure.net as default URL to get images from in container create script.ck
+ * Harmonizing debconf values for container debconf create script.
+ * Using hostname fallback if FQDN is not set.
+
2018-08-25 Daniel Baumann <daniel.baumann@open-infrastructure.net>
* Releasing version 20180825.
diff --git a/Makefile b/Makefile
index 2834779..9068d8c 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,4 @@
-# Makefile
-
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,7 +17,10 @@
SHELL := sh -e
-SOFTWARE = container-tools
+PROJECT = open-infrastructure
+SOFTWARE = compute-tools
+PROGRAM = container
+
SCRIPTS = bin/* lib/*/*
all: build
@@ -57,18 +57,19 @@ build: share/man/*.txt
sed -n '/^NAME/,$$p' share/man/$(SOFTWARE).7.txt > README.txt
install: build
- mkdir -p $(DESTDIR)/etc/${SOFTWARE}/config
- mkdir -p $(DESTDIR)/etc/${SOFTWARE}/debconf
- mkdir -p $(DESTDIR)/etc/${SOFTWARE}/hooks
+ mkdir -p $(DESTDIR)/etc/$(PROJECT)/$(PROGRAM)/config
+ mkdir -p $(DESTDIR)/etc/$(PROJECT)/$(PROGRAM)/debconf
+ mkdir -p $(DESTDIR)/etc/$(PROJECT)/$(PROGRAM)/hooks
mkdir -p $(DESTDIR)/usr/bin
cp -r bin/* $(DESTDIR)/usr/bin
- mkdir -p $(DESTDIR)/usr/lib/$(SOFTWARE)
- cp -r lib/* $(DESTDIR)/usr/lib/$(SOFTWARE)
+ mkdir -p $(DESTDIR)/usr/lib/$(PROJECT)
+ cp -r lib/* $(DESTDIR)/usr/lib/$(PROJECT)
- mkdir -p $(DESTDIR)/usr/share/$(SOFTWARE)
- cp -r VERSION.txt share/config share/hooks share/scripts ${DESTDIR}/usr/share/$(SOFTWARE)
+ mkdir -p $(DESTDIR)/usr/share/$(PROJECT)/$(PROGRAM)
+ cp -r VERSION.txt $(DESTDIR)/usr/share/$(PROJECT)/${PROGRAM}
+ cp -r share/config share/hooks share/scripts $(DESTDIR)/usr/share/$(PROJECT)/$(PROGRAM)
mkdir -p $(DESTDIR)/usr/share/bash-completion/completions
cp -r share/bash-completion/* $(DESTDIR)/usr/share/bash-completion/completions
@@ -99,28 +100,31 @@ install: build
ln -sf container.1 $(DESTDIR)/usr/share/man/man1/cnt.1
ln -sf container-shell $(DESTDIR)/usr/bin/cntsh
ln -sf container-shell.1 $(DESTDIR)/usr/share/man/man1/cntsh.1
- ln -sf container ${DESTDIR}/usr/share/bash-completion/completions/cnt
+ ln -sf container $(DESTDIR)/usr/share/bash-completion/completions/cnt
- ln -sf debconf ${DESTDIR}/usr/share/$(SOFTWARE)/scripts/debian
- ln -sf debconf.d ${DESTDIR}/usr/share/$(SOFTWARE)/scripts/debian.d
+ ln -sf debconf $(DESTDIR)/usr/share/$(PROJECT)/$(PROGRAM)/scripts/debian
+ ln -sf debconf.d $(DESTDIR)/usr/share/$(PROJECT)/$(PROGRAM)/scripts/debian.d
ln -sf container-create-debconf.1 $(DESTDIR)/usr/share/man/man1/container-create-debian.1
- ln -sf debconf ${DESTDIR}/usr/share/$(SOFTWARE)/scripts/progress-linux
- ln -sf debconf.d ${DESTDIR}/usr/share/$(SOFTWARE)/scripts/progress-linux.d
+ ln -sf debconf $(DESTDIR)/usr/share/$(PROJECT)/$(PROGRAM)/scripts/progress-linux
+ ln -sf debconf.d $(DESTDIR)/usr/share/$(PROJECT)/$(PROGRAM)/scripts/progress-linux.d
ln -sf container-create-debconf.1 $(DESTDIR)/usr/share/man/man1/container-create-progress-linux.1
- ln -sf console $(DESTDIR)/usr/lib/$(SOFTWARE)/container/con
- ln -sf list $(DESTDIR)/usr/lib/$(SOFTWARE)/container/ls
- ln -sf move $(DESTDIR)/usr/lib/$(SOFTWARE)/container/mv
- ln -sf remove $(DESTDIR)/usr/lib/$(SOFTWARE)/container/rm
- ln -sf version $(DESTDIR)/usr/lib/$(SOFTWARE)/container/ver
+ ln -sf console $(DESTDIR)/usr/lib/$(PROJECT)/$(PROGRAM)/con
+ ln -sf list $(DESTDIR)/usr/lib/$(PROJECT)/$(PROGRAM)/ls
+ ln -sf move $(DESTDIR)/usr/lib/$(PROJECT)/$(PROGRAM)/mv
+ ln -sf start $(DESTDIR)/usr/lib/$(PROJECT)/$(PROGRAM)/s
+ ln -sf status $(DESTDIR)/usr/lib/$(PROJECT)/$(PROGRAM)/st
+ ln -sf stop $(DESTDIR)/usr/lib/$(PROJECT)/$(PROGRAM)/t
+ ln -sf remove $(DESTDIR)/usr/lib/$(PROJECT)/$(PROGRAM)/rm
+ ln -sf version $(DESTDIR)/usr/lib/$(PROJECT)/$(PROGRAM)/ver
mkdir -p $(DESTDIR)/lib/systemd/system
cp -r share/systemd/* $(DESTDIR)/lib/systemd/system
- mkdir -p $(DESTDIR)/var/log/$(SOFTWARE)
+ mkdir -p $(DESTDIR)/var/log/$(PROJECT)
uninstall:
- rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/var/log/$(SOFTWARE) || true
+ rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/var/log/$(PROJECT) || true
for FILE in share/systemd/*; \
do \
@@ -140,7 +144,9 @@ uninstall:
rm -f $(DESTDIR)/usr/share/man/man1/cnt.1
rm -f $(DESTDIR)/usr/bin/cntsh
rm -f $(DESTDIR)/usr/share/man/man1/cntsh.1
- rm -f ${DESTDIR}/usr/share/bash-completion/completions/cnt
+ rm -f $(DESTDIR)/usr/share/bash-completion/completions/cnt
+ rm -f $(DESTDIR)/usr/share/man/man1/container-create-progress-linux.1
+ rm -f $(DESTDIR)/usr/share/man/man1/container-create-debian.1
for FILE in share/sudo/*; \
do \
@@ -165,10 +171,10 @@ uninstall:
rm -rf $(DESTDIR)/usr/share/doc/$(SOFTWARE)
rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/usr/share/doc || true
- rm -rf $(DESTDIR)/usr/share/$(SOFTWARE)
+ rm -rf $(DESTDIR)/usr/share/$(PROJECT)/$(PROGRAM)
rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/usr/share || true
- rm -rf $(DESTDIR)/usr/lib/$(SOFTWARE)
+ rm -rf $(DESTDIR)/usr/lib/$(PROJECT)/$(PROGRAM)
rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/usr/lib || true
for FILE in bin/*; \
@@ -177,10 +183,11 @@ uninstall:
done
rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/usr/bin || true
- rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/etc/${SOFTWARE}/config || true
- rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/etc/${SOFTWARE}/debconf || true
- rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/etc/${SOFTWARE}/hooks || true
- rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/etc/${SOFTWARE} || true
+ rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/etc/$(PROJECT)/$(PROGRAM)/config || true
+ rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/etc/$(PROJECT)/$(PROGRAM)/debconf || true
+ rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/etc/$(PROJECT)/$(PROGRAM)/hooks || true
+ rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/etc/$(PROJECT)/$(PROGRAM) || true
+ rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/etc/$(PROJECT) || true
rmdir --ignore-fail-on-non-empty --parents $(DESTDIR)/etc || true
rmdir --ignore-fail-on-non-empty --parents $(DESTDIR) || true
diff --git a/VERSION.txt b/VERSION.txt
index c6c53c0..02c8992 100644
--- a/VERSION.txt
+++ b/VERSION.txt
@@ -1 +1 @@
-20180825
+20190222
diff --git a/bin/container b/bin/container
index 849bbec..ac8feff 100755
--- a/bin/container
+++ b/bin/container
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,10 +19,10 @@
set -e
-SOFTWARE="container-tools"
+PROJECT="open-infrastructure"
PROGRAM="container"
-HOOKS="/etc/${SOFTWARE}/hooks"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
# Parameter
PARAMETER="${1}"
@@ -44,7 +43,7 @@ OPTIONS="${@}"
for COMMAND in $(echo ${COMMANDS} | sed -e 's|,| |g')
do
- if [ ! -e "/usr/lib/${SOFTWARE}/${PROGRAM}/${COMMAND}" ]
+ if [ ! -e "/usr/lib/${PROJECT}/${PROGRAM}/${COMMAND}" ]
then
echo "'${COMMAND}': no such ${PROGRAM} command" >&2
exit 1
@@ -68,15 +67,15 @@ do
create|remove|rm|restart|start|stop)
USER="${SUDO_USER:-${USER}}"
DATE="$(date +%Y-%m-%d\ %H:%M:%S)"
- HOST="$(hostname -f)"
+ HOST="$(hostname -f 2> /dev/null || hostname)"
# logfile
- echo "${DATE} ${HOST} ${USER} ${PROGRAM} ${COMMAND} ${OPTIONS}" >> "/var/log/${SOFTWARE}/${PROGRAM}.log"
+ echo "${DATE} ${HOST} ${USER} ${PROGRAM} ${COMMAND} ${OPTIONS}" >> "/var/log/${PROJECT}/${PROGRAM}.log"
# irc
- if [ -e /usr/bin/irk ] && [ -e "/etc/default/${SOFTWARE}" ]
+ if [ -e /usr/bin/irk ] && [ -e "/etc/${PROJECT}/${PROGRAM}.conf" ]
then
- . /etc/default/${SOFTWARE}
+ . "/etc/${PROJECT}/${PROGRAM}.conf"
if [ -n "${IRK_TARGETS}" ]
then
@@ -91,7 +90,7 @@ do
fi
# Run
- "/usr/lib/${SOFTWARE}/${PROGRAM}/${COMMAND}" "${OPTIONS}"
+ "/usr/lib/${PROJECT}/${PROGRAM}/${COMMAND}" "${OPTIONS}"
# Post hooks
for FILE in "${HOOKS}/post-${PROGRAM}".* "${HOOKS}/${NAME}.post-${PROGRAM}"
diff --git a/bin/container-shell b/bin/container-shell
index 2ca5cd3..fe113d3 100755
--- a/bin/container-shell
+++ b/bin/container-shell
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,7 +19,8 @@
set -e
-SOFTWARE="container-tools"
+PROJECT="open-infrastructure"
+SOFTWARE="compute-tools"
PROGRAM="container"
COMMAND="$(basename ${0})"
@@ -64,7 +64,7 @@ Shell ()
echo "The following ${PROGRAM} commands are available:"
echo
- cd "/usr/lib/${SOFTWARE}/${PROGRAM}"
+ cd "/usr/lib/${PROJECT}/${PROGRAM}"
find . -type f -printf " %f\n" | sort
cd "${OLDPWD}"
@@ -97,7 +97,7 @@ Shell ()
;;
esac
- if [ ! -e "/usr/lib/${SOFTWARE}/${PROGRAM}/${COMMAND}" ]
+ if [ ! -e "/usr/lib/${PROJECT}/${PROGRAM}/${COMMAND}" ]
then
echo "'${COMMAND}': no such ${PROGRAM} command" >&2
return
diff --git a/lib/container/auto b/lib/container/auto
index 8477915..83c9a57 100755
--- a/lib/container/auto
+++ b/lib/container/auto
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,10 +19,12 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-CONFIG="/etc/container-tools/config"
-HOOKS="/etc/container-tools/hooks"
+CONFIG="/etc/${PROJECT}/${PROGRAM}/config"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
Parameters ()
{
@@ -73,7 +74,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} -f|--force -s|--start -t|--stop" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} -f|--force -s|--start -t|--stop" >&2
exit 1
}
@@ -84,7 +85,7 @@ then
Usage
fi
-HOST="$(hostname -f)"
+HOST="$(hostname -f 2> /dev/null || hostname)"
# Pre hooks
for FILE in "${HOOKS}/pre-${COMMAND}".* "${HOOKS}/${NAME}.pre-${COMMAND}"
diff --git a/lib/container/console b/lib/container/console
index dfc9b5c..0b49058 100755
--- a/lib/container/console
+++ b/lib/container/console
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,9 +19,11 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-HOOKS="/etc/container-tools/hooks"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
MACHINES="/var/lib/machines"
Parameters ()
@@ -63,7 +64,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} -n|--name NAME" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} -n|--name NAME" >&2
exit 1
}
diff --git a/lib/container/create b/lib/container/create
index 561584c..43cad9b 100755
--- a/lib/container/create
+++ b/lib/container/create
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,12 +19,15 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-CONFIG="/etc/container-tools/config"
-HOOKS="/etc/container-tools/hooks"
+CONFIG="/etc/${PROJECT}/${PROGRAM}/config"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
MACHINES="/var/lib/machines"
-SCRIPTS="/usr/share/container-tools/scripts"
+SCRIPTS="/usr/share/${PROJECT}/${PROGRAM}/scripts"
+CONFIG_TEMPLATE="/usr/share/${PROJECT}/${PROGRAM}/config/container.conf.in"
Parameters ()
{
@@ -110,7 +112,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} -n|--name NAME [--cnt.container-server=true|false|FQDN] [--cnt.overlay=DIRECTORY_LOWER:DIRECTORY_UPPER:DIRECTORY_WORK:DIRECTORY_MERGED] [-b|--bind DIRECTORY:DIRECTORY[:OPTIONS]] [--bind-ro DIRECTORY:DIRECTORY[:OPTIONS]] [-c|--capability CAPABILITY[,CAPABILITY]] [-d|--drop-capability DROP_CAPABILITY[,DROP_CAPABILITY]] [-s|--script SCRIPT] [-v|--verbose] [-- SCRIPT_OPTIONS]" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} -n|--name NAME [--cnt.container-server=true|false|FQDN] [--cnt.overlay=DIRECTORY_LOWER:DIRECTORY_UPPER:DIRECTORY_WORK:DIRECTORY_MERGED] [-b|--bind DIRECTORY:DIRECTORY[:OPTIONS]] [--bind-ro DIRECTORY:DIRECTORY[:OPTIONS]] [-c|--capability CAPABILITY[,CAPABILITY]] [-d|--drop-capability DROP_CAPABILITY[,DROP_CAPABILITY]] [-s|--script SCRIPT] [-v|--verbose] [-- SCRIPT_OPTIONS]" >&2
exit 1
}
@@ -141,8 +143,8 @@ then
TARGET="$(basename $(readlink ${SCRIPTS}/default))"
case "${TARGET}" in
- container-tools_script)
- TARGET="$(basename $(readlink /etc/alternatives/container-tools_script))"
+ container_script)
+ TARGET="$(basename $(readlink /etc/alternatives/container_script))"
;;
esac
@@ -176,7 +178,7 @@ EOF
;;
esac
-CNT_CONTAINER_SERVER="${CNT_CONTAINER_SERVER:-$(hostname -f)}"
+CNT_CONTAINER_SERVER="${CNT_CONTAINER_SERVER:-$(hostname -f 2> /dev/null || hostname)}"
# Pre hooks
for FILE in "${HOOKS}/pre-${COMMAND}".* "${HOOKS}/${NAME}.pre-${COMMAND}"
@@ -251,7 +253,7 @@ sed -e "s|@CNT_AUTO@|${CNT_AUTO}|g" \
-e "s|@NETWORK_VETH_EXTRA@|${NETWORK_VETH_EXTRA}|g" \
-e "s|@PRIVATE_USERS@|no|g" \
-e "s|@REGISTER@|yes|g" \
-/usr/share/container-tools/config/container.conf.in > "${CONFIG}/${NAME}.conf"
+"${CONFIG_TEMPLATE}" > "${CONFIG}/${NAME}.conf"
# Run
"${SCRIPTS}/${SCRIPT}" $(echo "${@}" | sed -e 's| -- | |')
diff --git a/lib/container/enter b/lib/container/enter
index 72b3b1c..9c9ebfa 100755
--- a/lib/container/enter
+++ b/lib/container/enter
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,9 +19,11 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-HOOKS="/etc/container-tools/hooks"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
MACHINES="/var/lib/machines"
Parameters ()
@@ -63,7 +64,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} -n|--name NAME" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} -n|--name NAME" >&2
exit 1
}
diff --git a/lib/container/key b/lib/container/key
index 3f0f57b..1b59555 100755
--- a/lib/container/key
+++ b/lib/container/key
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,9 +19,11 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-KEYS="/etc/container-tools/keys"
+KEYS="/etc/${PROJECT}/${PROGRAM}/keys"
Parameters ()
{
@@ -74,7 +75,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} [-a|--add KEY] [-l|--list] [-r|--remove KEY]" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} [-a|--add KEY] [-l|--list] [-r|--remove KEY]" >&2
exit 1
}
diff --git a/lib/container/limit b/lib/container/limit
index f2d6bfa..b1ec170 100755
--- a/lib/container/limit
+++ b/lib/container/limit
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,9 +19,11 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-HOOKS="/etc/container-tools/hooks"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
MACHINES="/var/lib/machines"
Parameters ()
@@ -103,7 +104,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} -n|--name NAME [--blockio-device-weight \"DEVICE WEIGHT\"] [--blockio-read-bandwidth \"DEVICE BYTES\"] [-b|--blockio-weight WEIGHT] [--blockio-write-bandwidth \"DEVICE BYTES\"] [-c|--cpu-quota QUOTA] [--cpu-shares SHARES] [-m|--memory-limit BYTES] [-t|--tasks-max NUMBER]" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} -n|--name NAME [--blockio-device-weight \"DEVICE WEIGHT\"] [--blockio-read-bandwidth \"DEVICE BYTES\"] [-b|--blockio-weight WEIGHT] [--blockio-write-bandwidth \"DEVICE BYTES\"] [-c|--cpu-quota QUOTA] [--cpu-shares SHARES] [-m|--memory-limit BYTES] [-t|--tasks-max NUMBER]" >&2
exit 1
}
diff --git a/lib/container/list b/lib/container/list
index 816d521..62f6a5b 100755
--- a/lib/container/list
+++ b/lib/container/list
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,13 +19,15 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-CONFIG="/etc/container-tools/config"
-HOOKS="/etc/container-tools/hooks"
+CONFIG="/etc/${PROJECT}/${PROGRAM}/config"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
MACHINES="/var/lib/machines"
-VERSION="$(container version)"
+VERSION="$(${PROGRAM} version)"
Parameters ()
{
@@ -106,7 +107,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} [-a|--all] [--csv-separator SEPARATOR] [--format FORMAT] [-h|--host HOSTNAME] [--nwdiag-color COLOR] [--nwdiag-label LABEL] [-o|--other] [-s|--started] [-t|--stopped]" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} [-a|--all] [--csv-separator SEPARATOR] [--format FORMAT] [-h|--host HOSTNAME] [--nwdiag-color COLOR] [--nwdiag-label LABEL] [-o|--other] [-s|--started] [-t|--stopped]" >&2
exit 1
}
@@ -114,7 +115,7 @@ Parameters "${@}"
LIST="${LIST:-started stopped}"
FORMAT="${FORMAT:-cli}"
-HOST="${HOST:-$(hostname -f)}"
+HOST="${HOST:-$(hostname -f 2> /dev/null || hostname)}"
CSV_SEPARATOR="${CSV_SEPARATOR:-,}"
@@ -233,7 +234,7 @@ EOF
csv)
cat << EOF
-# container-tools version ${VERSION}
+# compute-tools ${VERSION}
Host${CSV_SEPARATOR}Container${CSV_SEPARATOR}Status${CSV_SEPARATOR}IPv4-Address
EOF
@@ -243,7 +244,7 @@ EOF
cat << EOF
{
- "container-tools": {
+ "compute-tools": {
"version": "${VERSION}",
},
"host": {
@@ -258,7 +259,7 @@ EOF
NETWORK="$(echo ${HOST} | sed -e 's|\.|_|g')"
cat << EOF
-# container-tools ${VERSION}
+# compute-tools ${VERSION}
nwdiag {
external_connector = none;
network ${NETWORK} {
@@ -294,7 +295,7 @@ EOF
cat << EOF
---
-container_tools:
+compute_tools:
version: ${VERSION}
host:
@@ -308,9 +309,9 @@ EOF
xml)
cat << EOF
-<container-tools>
+<compute-tools>
<version>${VERSION}</version>
-</container-tools>
+</compute-tools>
<host>
<name>${HOST}</name>
</host>
diff --git a/lib/container/log b/lib/container/log
new file mode 100755
index 0000000..200177c
--- /dev/null
+++ b/lib/container/log
@@ -0,0 +1,145 @@
+#!/bin/sh
+
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+#
+# SPDX-License-Identifier: GPL-3.0+
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+set -e
+
+PROJECT="open-infrastructure"
+PROGRAM="container"
+COMMAND="$(basename ${0})"
+
+LOG="/var/log/${PROJECT}/${PROGRAM}.log"
+
+Parameters ()
+{
+ GETOPT_LONGOPTIONS="name:,date:,"
+ GETOPT_OPTIONS="n:,d:,"
+
+ PARAMETERS="$(getopt --longoptions ${GETOPT_LONGOPTIONS} --name=${COMMAND} --options ${GETOPT_OPTIONS} --shell sh -- ${@})"
+
+ if [ "${?}" != "0" ]
+ then
+ echo "'${COMMAND}': getopt exit" >&2
+ exit 1
+ fi
+
+ eval set -- "${PARAMETERS}"
+
+ while true
+ do
+ case "${1}" in
+ -d|--date)
+ DATE="${2}"
+ shift 2
+ ;;
+
+ -n|--name)
+ NAME="${2}"
+ shift 2
+ ;;
+
+ -u|--user)
+ USER="${2}"
+ shift 2
+ ;;
+
+ --)
+ shift 1
+ break
+ ;;
+
+ *)
+ echo "'${COMMAND}': getopt error" >&2
+ exit 1
+ ;;
+ esac
+ done
+}
+
+Usage ()
+{
+ echo "Usage: ${PROGRAM} ${COMMAND} [-n|--name NAME] [-d|--date DATE|today|today-N|yesterday] [-u|--user USER]" >&2
+ exit 1
+}
+
+Parameters "${@}"
+
+case "${DATE}" in
+ today-*)
+ DAYS="$(echo ${DATE} | awk -F- '{ print $2 }')"
+
+ START="$(date -d "${DAYS} day ago" '+%Y-%m-%d')"
+ END="$(date +%Y-%m-%d)"
+
+ DATE="(${START}"
+
+ while true
+ do
+ DATE="${DATE}|${START}"
+
+ if [ "${START}" = "${END}" ]
+ then
+ break
+ fi
+
+ START="$(date +%Y-%m-%d --date "${START} +1 day")"
+ done
+
+ DATE="${DATE})"
+ ;;
+
+ today)
+ DATE="$(date +%Y-%m-%d)"
+ ;;
+
+ yesterday)
+ DATE="$(date -d '1 day ago' '+%Y-%m-%d')"
+ ;;
+esac
+
+if ls "${LOG}"-*.gz > /dev/null 2>&1
+then
+ LOGS="$(ls ${LOG}-*.gz) ${LOG}"
+else
+ LOGS="${LOG}"
+fi
+
+# FIXME: user
+
+for LOG in ${LOGS}
+do
+ case "${LOG}" in
+ *.gz)
+ GREP="zgrep"
+ ;;
+
+ *)
+ GREP="grep"
+ ;;
+ esac
+
+ case "${NAME}" in
+ "")
+ ${GREP} -E "^${DATE}" "${LOG}" || true
+ ;;
+
+ *)
+ ${GREP} -E "^${DATE}" "${LOG}" | grep " ${NAME}" || true
+ ;;
+ esac
+done
diff --git a/lib/container/move b/lib/container/move
index e533b0e..278f972 100755
--- a/lib/container/move
+++ b/lib/container/move
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,10 +19,12 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-CONFIG="/etc/container-tools/config"
-HOOKS="/etc/container-tools/hooks"
+CONFIG="/etc/${PROJECT}/${PROGRAM}/config"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
MACHINES="/var/lib/machines"
Parameters ()
@@ -74,7 +75,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} [-f|--force] -n|--new NAME -o|--old NAME" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} [-f|--force] -n|--new NAME -o|--old NAME" >&2
exit 1
}
@@ -111,7 +112,7 @@ case "${FORCE}" in
;;
*)
- if container list --other | grep -qs "^${OLD}$"
+ if ${PROGRAM} list --other | grep -qs "^${OLD}$"
then
echo -n "'${OLD}': rename container to '${NEW}' [y|N]? "
read FORCE
diff --git a/lib/container/remove b/lib/container/remove
index 275c867..13a9bd8 100755
--- a/lib/container/remove
+++ b/lib/container/remove
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,10 +19,12 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-CONFIG="/etc/container-tools/config"
-HOOKS="/etc/container-tools/hooks"
+CONFIG="/etc/${PROJECT}/${PROGRAM}/config"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
MACHINES="/var/lib/machines"
Parameters ()
@@ -87,7 +88,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} -n|--name NAME [--allow-stop] [-f|--force] [-v|--verbose]" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} -n|--name NAME [--allow-stop] [-f|--force] [-v|--verbose]" >&2
exit 1
}
@@ -121,11 +122,17 @@ fi
case "${NAME}" in
ALL)
- NAMES="$(container list --format shell --stopped)"
+ NAMES="$(${PROGRAM} list --format shell --stopped)"
for NAME in ${NAMES}
do
- container remove --name ${NAME} ${OPTIONS_ALL} || true
+ case "${VERBOSE}" in
+ true)
+ echo "Removing container ${NAME}..."
+ ;;
+ esac
+
+ ${PROGRAM} remove --name ${NAME} ${OPTIONS_ALL} || true
done
exit 0
@@ -145,7 +152,7 @@ case "${STATE}" in
case "${ALLOW_STOP}" in
true)
echo "'${NAME}': container is started, stopping it now" >&2
- container stop -n ${NAME}
+ ${PROGRAM} stop -n ${NAME}
;;
*)
diff --git a/lib/container/restart b/lib/container/restart
index a22b970..5b78dda 100755
--- a/lib/container/restart
+++ b/lib/container/restart
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,9 +19,11 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-HOOKS="/etc/container-tools/hooks"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
MACHINES="/var/lib/machines"
Parameters ()
@@ -65,7 +66,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} -n|--name NAME" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} -n|--name NAME" >&2
exit 1
}
@@ -78,11 +79,17 @@ fi
case "${NAME}" in
ALL)
- NAMES="$(container list --format shell --started)"
+ NAMES="$(${PROGRAM} list --format shell --started)"
for NAME in ${NAMES}
do
- container restart --name ${NAME} || true
+ case "${VERBOSE}" in
+ true)
+ echo "Restarting container ${NAME}..."
+ ;;
+ esac
+
+ ${PROGRAM} restart --name ${NAME} || true
done
exit 0
diff --git a/lib/container/start b/lib/container/start
index ac0275e..a63c861 100755
--- a/lib/container/start
+++ b/lib/container/start
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,10 +19,12 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-CONFIG="/etc/container-tools/config"
-HOOKS="/etc/container-tools/hooks"
+CONFIG="/etc/${PROJECT}/${PROGRAM}/config"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
MACHINES="/var/lib/machines"
START="false"
@@ -89,7 +90,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} -n|--name NAME [-f|--force]" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} -n|--name NAME [-f|--force]" >&2
exit 1
}
@@ -102,11 +103,17 @@ fi
case "${NAME}" in
ALL)
- NAMES="$(container list --format shell --stopped)"
+ NAMES="$(${PROGRAM} list --format shell --stopped)"
for NAME in ${NAMES}
do
- container start --name ${NAME} ${OPTIONS_ALL} || true
+ case "${VERBOSE}" in
+ true)
+ echo "Starting container ${NAME}..."
+ ;;
+ esac
+
+ ${PROGRAM} start --name ${NAME} ${OPTIONS_ALL} || true
done
exit 0
@@ -459,7 +466,7 @@ fi
case "${SYSTEMCTL}" in
true)
- systemctl start container@${NAME}.service
+ systemctl start ${PROGRAM}@${NAME}.service
# FIXME start console .. after sleep? + configuration option
exit 0
;;
diff --git a/lib/container/status b/lib/container/status
index 9c5ab20..a4b49e1 100755
--- a/lib/container/status
+++ b/lib/container/status
@@ -1,6 +1,5 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
# Copyright (C) 2016 Simon Spöehel <simon.spoehel@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
@@ -20,10 +19,12 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-CONFIG="/etc/container-tools/config"
-HOOKS="/etc/container-tools/hooks"
+CONFIG="/etc/${PROJECT}/${PROGRAM}/config"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
MACHINES="/var/lib/machines"
Parameters ()
@@ -64,7 +65,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} -n|--name NAME" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} -n|--name NAME" >&2
exit 1
}
@@ -91,7 +92,7 @@ do
done
# Run
-systemctl status container@${NAME}.service --full
+systemctl status ${PROGRAM}@${NAME}.service --full
# Post hooks
for FILE in "${HOOKS}/post-${COMMAND}".* "${HOOKS}/${NAME}.post-${COMMAND}"
diff --git a/lib/container/stop b/lib/container/stop
index d996282..3a0de2a 100755
--- a/lib/container/stop
+++ b/lib/container/stop
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,10 +19,12 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-CONFIG="/etc/container-tools/config"
-HOOKS="/etc/container-tools/hooks"
+CONFIG="/etc/${PROJECT}/${PROGRAM}/config"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
MACHINES="/var/lib/machines"
CLEAN="false"
@@ -83,7 +84,7 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} -n|--name NAME [-f|--force]" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} -n|--name NAME [-f|--force]" >&2
exit 1
}
@@ -117,11 +118,17 @@ fi
case "${NAME}" in
ALL)
- NAMES="$(container list --format shell --started)"
+ NAMES="$(${PROGRAM} list --format shell --started)"
for NAME in ${NAMES}
do
- container stop --name ${NAME} ${OPTIONS_ALL} || true
+ case "${VERBOSE}" in
+ true)
+ echo "Stopping container ${NAME}..."
+ ;;
+ esac
+
+ ${PROGRAM} stop --name ${NAME} ${OPTIONS_ALL} || true
done
exit 0
diff --git a/lib/container/top b/lib/container/top
index 31ec005..4978568 100755
--- a/lib/container/top
+++ b/lib/container/top
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,6 +19,8 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
Parameters ()
@@ -60,14 +61,14 @@ Parameters ()
Usage ()
{
- echo "Usage: container ${COMMAND} [-d|--delay DELAY]" >&2
+ echo "Usage: ${PROGRAM} ${COMMAND} [-d|--delay DELAY]" >&2
exit 1
}
Parameters "${@}"
DELAY="${DELAY:-1}"
-HOST="$(hostname -f)"
+HOST="$(hostname -f 2> /dev/null || hostname)"
# Pre hooks
for FILE in "${HOOKS}/pre-${COMMAND}".* "${HOOKS}/${NAME}.pre-${COMMAND}"
@@ -105,7 +106,7 @@ Top ()
trap 'clear' EXIT HUP INT QUIT TERM
-Top "container list && printf '%-59s %-19s\n' \" Host: ${HOST}\" \"\$(date +%Y-%m-%d\ %H:%M:%S)\""
+Top "${PROGRAM} list && printf '%-59s %-19s\n' \" Host: ${HOST}\" \"\$(date +%Y-%m-%d\ %H:%M:%S)\""
# Post hooks
for FILE in "${HOOKS}/post-${COMMAND}".* "${HOOKS}/${NAME}.post-${COMMAND}"
diff --git a/lib/container/version b/lib/container/version
index 543d6dc..d356c3e 100755
--- a/lib/container/version
+++ b/lib/container/version
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,10 +19,12 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
COMMAND="$(basename ${0})"
-HOOKS="/etc/container-tools/hooks"
-SHARE="/usr/share/container-tools"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
+SHARE="/usr/share/${PROJECT}/${PROGRAM}"
# Pre hooks
for FILE in "${HOOKS}/pre-${COMMAND}".* "${HOOKS}/${NAME}.pre-${COMMAND}"
diff --git a/share/bash-completion/container b/share/bash-completion/container
index e117d16..150ff71 100644
--- a/share/bash-completion/container
+++ b/share/bash-completion/container
@@ -1,8 +1,7 @@
# bash-completion
#
-# container-tools - Manage systemd-nspawn containers
# Copyright (C) 2016 Andreas Kreuzer <andreas.kreuzer@open-infrastructure.net>
-# Copyright (C) 2016-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2016-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -64,13 +63,13 @@ _container()
create)
case "${prev}" in
-n|--name)
- opts="$(cd /etc/container-tools/debconf 2>/dev/null && ls *.cfg */*.cfg 2>/dev/null | sed -e 's|.*/||g' -e 's|.cfg$||g')"
+ opts="$(cd /etc/open-infrastructure/container/debconf 2>/dev/null && ls *.cfg */*.cfg 2>/dev/null | sed -e 's|.*/||g' -e 's|.cfg$||g')"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
-s|--script)
- opts="$(cd /usr/share/container-tools/scripts && find -maxdepth 1 -not -type d -and -not -name 'default' -and -not -name 'debconf' -and -not -name '*.d' -printf '%P\n' | sort)"
+ opts="$(cd /usr/share/open-infrastructure/container/scripts && find -maxdepth 1 -not -type d -and -not -name 'default' -and -not -name 'debconf' -and -not -name '*.d' -printf '%P\n' | sort)"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
@@ -124,7 +123,7 @@ _container()
list|ls)
case "${prev}" in
-h|--host)
- opts="true false $(hostname -f)"
+ opts="true false $(hostname -f 2> /dev/null || hostname)"
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
;;
@@ -143,6 +142,43 @@ _container()
esac
;;
+ log)
+ case "${prev}" in
+ -d|--date)
+ opts="$(if ls /var/log/open-infrastructure/container.log-*.gz > /dev/null 2>&1;
+ then \
+ zcat /var/log/open-infrastructure/container.log-*.gz | awk '{ print $1 }' | sort -u; \
+ fi; \
+ if [ -e /var/log/open-infrastructure/container.log ]; \
+ then \
+ awk '{ print $1 }' /var/log/open-infrastructure/container.log | sort -u; \
+ fi) \
+ today yesterday"
+ COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
+ return 0
+ ;;
+
+ -n|--name)
+ opts="$(if ls /var/log/open-infrastructure/container.log-*.gz > /dev/null 2>&1;
+ then \
+ zgrep -E '(\-n|\-\-name) ' /var/log/open-infrastructure/container.log-*.gz | sed -e 's|.*-n ||' -e 's|.*--name ||' -e 's| .*$||' | sort -u; \
+ fi; \
+ if [ -e /var/log/open-infrastructure/container.log ]; \
+ then \
+ grep -E '(\-n|\-\-name) ' /var/log/open-infrastructure/container.log | sed -e 's|.*-n ||' -e 's|.*--name ||' -e 's| .*$||' | sort -u; \
+ fi)"
+ COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
+ return 0
+ ;;
+
+ *)
+ opts="-d --date -n --name"
+ COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
+ return 0
+ ;;
+ esac
+ ;;
+
move|mv)
case "${prev}" in
-o|--old)
@@ -191,7 +227,7 @@ _container()
esac
;;
- start)
+ start|s)
case "${prev}" in
-n|--name)
opts="$(container list -t -f shell)"
@@ -207,7 +243,7 @@ _container()
esac
;;
- status)
+ status|st)
case "${prev}" in
-n|--name)
opts="$(container list -t -f shell)"
@@ -223,7 +259,7 @@ _container()
esac
;;
- stop)
+ stop|t)
case "${prev}" in
-n|--name)
opts="$(container list -s -f shell)"
@@ -250,7 +286,7 @@ _container()
;;
*)
- local commands=$(cd /usr/lib/container-tools/container 2>/dev/null && find * -type f -print)
+ local commands=$(cd /usr/lib/open-infrastructure/container 2>/dev/null && find * -type f -print)
COMPREPLY=( $(compgen -W "${commands}" -- ${cur}) )
return 0
;;
diff --git a/share/config/container.conf.in b/share/config/container.conf.in
index 322e2c9..ebf91b9 100644
--- a/share/config/container.conf.in
+++ b/share/config/container.conf.in
@@ -1,4 +1,4 @@
-# container-tools: @NAME@
+# compute-tools: @NAME@
[start]
cnt.auto=@CNT_AUTO@
diff --git a/share/doc/HOST-SETUP.txt b/share/doc/HOST-SETUP.txt
index 74b7333..d2e4216 100644
--- a/share/doc/HOST-SETUP.txt
+++ b/share/doc/HOST-SETUP.txt
@@ -1,5 +1,5 @@
-container-tools: Host Setup
-===========================
+compute-tools: Host Setup
+=========================
1. Debian Packages
@@ -180,14 +180,33 @@ iface br100 inet static
EOF
-4. Enabling container-shell
+4. Enabling user namespace for unprivileged containers
+------------------------------------------------------
+
+Linux supports unprivileged containers with the user namespace.
+By default the user namespace is disabled on Debian systems (see #898446).
+To enable user namespace, edit the following file for a permant change:
+
+ /etc/sysctl.d/zz-compute-tools.conf
+ sysctl -p
+
+or enable it manually with:
+
+ echo 1 > /proc/sys/kernel/unprivileged_userns_clone
+
+Note that containers need to be started with the correct
+configuration in /etc/compute-tools/container/config to run unpriviled
+(private-users option).
+
+
+5. Enabling container-shell
---------------------------
-Managing containers requires root privileges. In order to allow unprivileged
-users to manage containers without granting them privileges or accounts,
-the container-shell can be used together with sudo and a container user.
+Managing privileged containers requires root privileges. In order to allow
+unprivileged users to manage privileged containers without granting them
+privileges or accounts, the container-shell can be used together with sudo
+and a container user.
- sudo adduser --gecos "container-tools,,," \
- --home /var/lib/machines/container-tools \
- --shell /usr/bin/container-shell \
- --no-create-home container
+ sudo adduser --gecos "compute-tools,,," \
+ --home /var/lib/open-infrastructure/container-shell \
+ --shell /usr/bin/container-shell
diff --git a/share/doc/asciicast/introduction.sh b/share/doc/asciicast/introduction.sh
index c4efb0c..68b02d2 100755
--- a/share/doc/asciicast/introduction.sh
+++ b/share/doc/asciicast/introduction.sh
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -51,7 +50,7 @@ Text ()
sleep 2
-Text "# Welcome to this container-tools introduction cast."
+Text "# Welcome to this compute-tools introduction cast."
echo
echo
@@ -59,7 +58,7 @@ Text "# 1. We're using Debian ($(lsb_release -cs))..."
Command "lsb_release -a"
-Text "# ...and container-tools version $(cnt version)."
+Text "# ...and compute-tools version $(cnt version)."
Command "cnt version"
@@ -125,13 +124,13 @@ Command "sudo cnt list"
echo
echo
-Text "# This concludes this introduction to container-tools."
+Text "# This concludes this introduction to compute-tools."
Text "#"
Text "# Thanks for watching and have fun setting up"
Text "# your own Linux containers based on systemd-nspawn"
-Text "# using container-tools from Open Infrastructure:"
+Text "# using compute-tools from Open Infrastructure:"
Text "#"
-Text "# https://open-infrastructure.net/software/container-tools"
+Text "# https://open-infrastructure.net/software/compute-tools"
sleep 2
diff --git a/share/doc/examples/buster.cfg b/share/doc/examples/buster.cfg
new file mode 100644
index 0000000..cfc8595
--- /dev/null
+++ b/share/doc/examples/buster.cfg
@@ -0,0 +1,35 @@
+# example for automated Debian 10 (buster) based container creation
+# using: sudo container create -s debian
+
+debconf debconf/priority select critical
+debconf debconf/frontend select Noninteractive
+
+compute-tools container/mode select debian
+
+#compute-tools container/preseed-files string
+#compute-tools container/include-preseed-files string
+
+compute-tools container/distribution select buster
+#compute-tools container/parent-distribution select
+
+compute-tools container/architecture select auto
+
+compute-tools container/archives multiselect buster-security, buster-updates
+#compute-tools container/parent-archives multiselect
+
+compute-tools container/mirror string https://deb.debian.org/debian
+compute-tools container/mirror-security string http://security.debian.org
+
+#compute-tools container/parent-mirror string
+#compute-tools container/parent-mirror-security string
+
+compute-tools container/archive-areas multiselect main
+#compute-tools container/parent-archive-areas multiselect
+
+compute-tools container/packages string openssh-server
+
+compute-tools container/root-password string debian
+#compute-tools container/root-password-crypted string
+
+compute-tools container/network1/bridge string bridge0
+#compute-tools container/network-mac string
diff --git a/share/doc/examples/container-images.sh b/share/doc/examples/container-images.sh
index 07f3451..f677799 100755
--- a/share/doc/examples/container-images.sh
+++ b/share/doc/examples/container-images.sh
@@ -1,7 +1,5 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-#
# Description: example for automated Debian base system container image creation
# Requires: debootstrap plzip xz-utils
# Usage: sudo ./container-images.sh
@@ -9,7 +7,7 @@
set -e
ARCHITECTURES="amd64 i386"
-DISTRIBUTIONS="stretch sid"
+DISTRIBUTIONS="buster sid"
MIRROR="https://deb.debian.org/debian"
INCLUDE="dbus"
diff --git a/share/doc/examples/dschinn-backports.cfg b/share/doc/examples/dschinn-backports.cfg
deleted file mode 100644
index 4f72268..0000000
--- a/share/doc/examples/dschinn-backports.cfg
+++ /dev/null
@@ -1,72 +0,0 @@
-# container-tools - Manage systemd-nspawn containers
-#
-# example for automated Progress Linux 4+ (dschinn-backports) container creation
-# using: sudo container create -s progress-linux
-
-debconf debconf/priority select critical
-debconf debconf/frontend select Noninteractive
-
-container-tools cnt-debconf/mode select progress-linux
-
-#container-tools cnt-debconf/preseed-files string
-#container-tools cnt-debconf/include-preseed-files string
-
-container-tools cnt-debconf/distribution select dschinn-backports
-#container-tools cnt-debconf/parent-distribution select
-
-container-tools cnt-debconf/architecture select auto
-
-container-tools cnt-debconf/archives multiselect dschinn-security, dschinn-updates, dschinn-extras, dschinn-backports, dschinn-backports-extras
-#container-tools cnt-debconf/parent-archives multiselect
-
-container-tools cnt-debconf/mirror string https://cdn.archive.progress-linux.org/packages
-container-tools cnt-debconf/mirror-security string https://cdn.archive.progress-linux.org/packages
-
-container-tools cnt-debconf/parent-mirror string https://deb.debian.org/debian
-container-tools cnt-debconf/parent-mirror-security string http://security.debian.org
-
-container-tools cnt-debconf/archive-areas multiselect main, contrib, non-free
-container-tools cnt-debconf/parent-archive-areas multiselect main, contrib, non-free
-
-container-tools cnt-debconf/packages string knot-resolver openssh-server
-
-container-tools cnt-debconf/root-password string progress
-#container-tools cnt-debconf/root-password-crypted string
-
-# Network IP configuration
-container-tools cnt-debconf/network1/bridge string bridge0
-container-tools cnt-debconf/network1/veth string veth0
-container-tools cnt-debconf/network1/ipv4-method select static
-container-tools cnt-debconf/network1/ipv4-comment string Primary network interfaces
-container-tools cnt-debconf/network1/ipv4-address string 192.168.0.2
-container-tools cnt-debconf/network1/ipv4-gateway string 192.168.0.1
-container-tools cnt-debconf/network1/ipv4-netmask string 255.255.255.0
-#container-tools cnt-debconf/network1/ipv4-post-up string
-#container-tools cnt-debconf/network1/ipv4-post-down string
-
-# Network DNS configuration
-container-tools cnt-debconf/nameserver/server string 127.0.0.1 8.8.8.8 8.8.4.4
-container-tools cnt-debconf/nameserver/domain string example.net
-container-tools cnt-debconf/nameserver/search string example.net
-container-tools cnt-debconf/nameserver/options string timeout:1 attempts:1
-
-# Third-Party Repositories
-#container-tools cnt-debconf/archive1/repository string
-#container-tools cnt-debconf/archive1/list string
-#container-tools cnt-debconf/archive1/comment string
-#container-tools cnt-debconf/archive1/source string
-#container-tools cnt-debconf/archive1/key string
-#container-tools cnt-debconf/archive1/preferences-package string
-#container-tools cnt-debconf/archive1/preferences-pin string
-#container-tools cnt-debconf/archive1/preferences-pin-priority
-
-# Internal Options
-#container-tools cnt-debconf/apt-recommends string
-#container-tools cnt-debconf/debconf-frontend string
-#container-tools cnt-debconf/debconf-priority string
-#container-tools cnt-debconf/container-command string
-#container-tools cnt-debconf/host-command string
-container-tools cnt-debconf/auto string FQDN
-#container-tools cnt-debconf/overlay string
-#container-tools cnt-debconf/bind string
-#container-tools cnt-debconf/bind-ro string
diff --git a/share/doc/examples/engywuck-backports.cfg b/share/doc/examples/engywuck-backports.cfg
new file mode 100644
index 0000000..392c40d
--- /dev/null
+++ b/share/doc/examples/engywuck-backports.cfg
@@ -0,0 +1,70 @@
+# example for automated Progress Linux 5+ (engywuck-backports) container creation
+# using: sudo container create -s progress-linux
+
+debconf debconf/priority select critical
+debconf debconf/frontend select Noninteractive
+
+compute-tools container/mode select progress-linux
+
+#compute-tools container/preseed-files string
+#compute-tools container/include-preseed-files string
+
+compute-tools container/distribution select engywuck-backports
+#compute-tools container/parent-distribution select
+
+compute-tools container/architecture select auto
+
+compute-tools container/archives multiselect engywuck-security, engywuck-updates, engywuck-extras, engywuck-backports, engywuck-backports-extras
+#compute-tools container/parent-archives multiselect
+
+compute-tools container/mirror string https://cdn.deb.progress-linux.org/packages
+compute-tools container/mirror-security string https://cdn.deb.progress-linux.org/packages
+
+compute-tools container/parent-mirror string https://deb.debian.org/debian
+compute-tools container/parent-mirror-security string http://security.debian.org
+
+compute-tools container/archive-areas multiselect main, contrib, non-free
+compute-tools container/parent-archive-areas multiselect main, contrib, non-free
+
+compute-tools container/packages string knot-resolver openssh-server
+
+compute-tools container/root-password string progress
+#compute-tools container/root-password-crypted string
+
+# Network IP configuration
+compute-tools container/network1/bridge string bridge0
+compute-tools container/network1/veth string veth0
+compute-tools container/network1/ipv4-method select static
+compute-tools container/network1/ipv4-comment string Primary network interfaces
+compute-tools container/network1/ipv4-address string 192.168.0.2
+compute-tools container/network1/ipv4-gateway string 192.168.0.1
+compute-tools container/network1/ipv4-netmask string 255.255.255.0
+#compute-tools container/network1/ipv4-post-up string
+#compute-tools container/network1/ipv4-post-down string
+
+# Network DNS configuration
+compute-tools container/nameserver/server string 127.0.0.1 8.8.8.8 8.8.4.4
+compute-tools container/nameserver/domain string example.net
+compute-tools container/nameserver/search string example.net
+compute-tools container/nameserver/options string timeout:1 attempts:1
+
+# Third-Party Repositories
+#compute-tools container/archive1/repository string
+#compute-tools container/archive1/list string
+#compute-tools container/archive1/comment string
+#compute-tools container/archive1/source string
+#compute-tools container/archive1/key string
+#compute-tools container/archive1/preferences-package string
+#compute-tools container/archive1/preferences-pin string
+#compute-tools container/archive1/preferences-pin-priority
+
+# Internal Options
+#compute-tools container/apt-recommends string
+#compute-tools container/debconf-frontend string
+#compute-tools container/debconf-priority string
+#compute-tools container/container-command string
+#compute-tools container/host-command string
+compute-tools container/auto string true
+#compute-tools container/overlay string
+#compute-tools container/bind string
+#compute-tools container/bind-ro string
diff --git a/share/doc/examples/stretch.cfg b/share/doc/examples/stretch.cfg
deleted file mode 100644
index 4a137b7..0000000
--- a/share/doc/examples/stretch.cfg
+++ /dev/null
@@ -1,37 +0,0 @@
-# container-tools - Manage systemd-nspawn containers
-#
-# example for automated Debian 9 (stretch) based container creation
-# using: sudo container create -s debian
-
-debconf debconf/priority select critical
-debconf debconf/frontend select Noninteractive
-
-container-tools cnt-debconf/mode select debian
-
-#container-tools cnt-debconf/preseed-files string
-#container-tools cnt-debconf/include-preseed-files string
-
-container-tools cnt-debconf/distribution select stretch
-#container-tools cnt-debconf/parent-distribution select
-
-container-tools cnt-debconf/architecture select auto
-
-container-tools cnt-debconf/archives multiselect stretch-security, stretch-updates
-#container-tools cnt-debconf/parent-archives multiselect
-
-container-tools cnt-debconf/mirror string https://deb.debian.org/debian
-container-tools cnt-debconf/mirror-security string http://security.debian.org
-
-#container-tools cnt-debconf/parent-mirror string
-#container-tools cnt-debconf/parent-mirror-security string
-
-container-tools cnt-debconf/archive-areas multiselect main
-#container-tools cnt-debconf/parent-archive-areas multiselect
-
-container-tools cnt-debconf/packages string openssh-server
-
-container-tools cnt-debconf/root-password string debian
-#container-tools cnt-debconf/root-password-crypted string
-
-container-tools cnt-debconf/network1/bridge string bridge0
-#container-tools cnt-debconf/network-mac string
diff --git a/share/hooks/pre-create.git-pull.sh b/share/hooks/pre-create.git-pull.sh
index cee7d8c..a82a7a0 100755
--- a/share/hooks/pre-create.git-pull.sh
+++ b/share/hooks/pre-create.git-pull.sh
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,7 +19,10 @@
set -e
-DIRECTORIES="/etc/container-tools/debconf /etc/container-tools/debconf/*/"
+PROJECT="open-infrastructure"
+PROGRAM="container"
+
+DIRECTORIES="/etc/${PROJECT}/${PROGRAM}/debconf /etc/${PROJECT}/${PROGRAM}/debconf/*/"
for DIRECTORY in ${DIRECTORIES}
do
@@ -28,9 +30,9 @@ do
then
echo "Updating ${DIRECTORY}..."
- if [ -e /etc/default/container-tools ]
+ if [ -e "/etc/${PROJECT}/${PROGRAM}.conf" ]
then
- . /etc/default/container-tools
+ . "/etc/${PROJECT}/${PROGRAM}.conf"
fi
DEBCONF_ID="${DEBCONF_ID:-HEAD}"
diff --git a/share/logrotate/container-tools b/share/logrotate/container
index 18aa713..14599be 100644
--- a/share/logrotate/container-tools
+++ b/share/logrotate/container
@@ -1,4 +1,4 @@
-/var/log/container-tools/container.log {
+/var/log/open-infrastructure/container.log {
compress
create 0640 root adm
dateext
diff --git a/share/man/Makefile b/share/man/Makefile
index a069734..4f5b682 100644
--- a/share/man/Makefile
+++ b/share/man/Makefile
@@ -1,7 +1,6 @@
# Makefile
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
diff --git a/share/man/container-tools.7.txt b/share/man/compute-tools.7.txt
index 8195ea4..5a4d6db 100644
--- a/share/man/container-tools.7.txt
+++ b/share/man/compute-tools.7.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,13 +19,13 @@ CONTAINER-TOOLS(7)
==================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
NAME
----
-container-tools - Manage systemd-nspawn containers
+compute-tools - Manage systemd-nspawn containers
DESCRIPTION
@@ -34,15 +33,15 @@ DESCRIPTION
"[A Linux container] is an operating-system-level virtualization environment for running multiple isolated Linux systems (containers) on a single Linux control host."::
-- Wikipedia (https://en.wikipedia.org/wiki/LXC)
-container-tools provides the system integration for managing containers using systemd-nspawn.
+compute-tools provides the system integration for managing containers using systemd-nspawn.
DOWNLOAD
--------
- * Upstream Releases: https://files.open-infrastructure.net/software/container-tools/upstream
- * Upstream Sources: https://sources.open-infrastructure.net/software/container-tools
- * Debian Releases: https://files.open-infrastructure.net/software/container-tools/debian
- * Debian Sources: https://sources.progress-linux.org/users/daniel/debian/packages/open-infrastructure-container-tools
+ * Upstream Releases: https://get.open-infrastructure.net/software/compute-tools/upstream
+ * Upstream Sources: https://git.open-infrastructure.net/software/compute-tools
+ * Debian Releases: https://get.open-infrastructure.net/software/compute-tools/debian
+ * Debian Sources: https://git.progress-linux.org/users/daniel/debian/packages/open-infrastructure-compute-tools
INSTALLATION
@@ -51,8 +50,8 @@ INSTALLATION
SOURCE
~~~~~~
1. sudo apt install asciidoc git docbook-xml docbook-xsl libxml2-utils make xsltproc dbus systemd-container
- 2. git clone https://sources.open-infrastructure.net/software/container-tools
- 3. cd container-tools && sudo make install
+ 2. git clone https://git.open-infrastructure.net/software/compute-tools
+ 3. cd compute-tools && sudo make install
DEBIAN 9 (STRETCH) AND NEWER
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -77,7 +76,7 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System:
KNOWN LIMITATIONS
-----------------
- * This version of container-tools currently do not work with systemd-networkd and depend on ifupdown.
+ * This version of compute-tools currently do not work with systemd-networkd and depend on ifupdown.
* Using overlay, the upper directory can not be an NFS mount due to limitations in Linux' overlay filesystem,
see https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/filesystems/overlayfs.txt
@@ -99,7 +98,7 @@ USAGE
*List container on the system:*::
sudo container list
-*Show container-tools version:*::
+*Show container version:*::
container version
See container(1) for a list of all container commands.
@@ -131,4 +130,4 @@ LINKS
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-auto.1.txt b/share/man/container-auto.1.txt
index f1ab951..0d0a633 100644
--- a/share/man/container-auto.1.txt
+++ b/share/man/container-auto.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-START(1)
==================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -64,13 +63,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -83,4 +82,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-console.1.txt b/share/man/container-console.1.txt
index 4ea8216..54cf242 100644
--- a/share/man/container-console.1.txt
+++ b/share/man/container-console.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-CONSOLE(1)
====================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -58,13 +57,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -77,4 +76,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-create-curl.1.txt b/share/man/container-create-curl.1.txt
index 6486c9b..40028c9 100644
--- a/share/man/container-create-curl.1.txt
+++ b/share/man/container-create-curl.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-CREATE-CURL(1)
========================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -63,7 +62,7 @@ The following script options are available:
Specify the root password, defaults to a random 16 character password.
*--server='SERVER'*::
- Specify the image server to download from, defaults to https://files.open-infrastructure.net/system/container/debian.
+ Specify the image server to download from, defaults to https://get.open-infrastructure.net/system/container/debian.
*--setup='SETUP'*::
Specify the setup image name to download, defaults to the value specified through --system using the setup.tar.${COMPRESSION} suffix.
@@ -84,37 +83,37 @@ FILES
-----
The following files are used:
-*/etc/container-tools/config*::
+*/etc/open-infrastructure/container/config*::
Container configuration files.
-*/usr/share/container-tools/scripts*::
+*/usr/share/open-infrastructure/container/scripts*::
Container creation scripts.
-*/usr/share/doc/container-tools*::
+*/usr/share/doc/compute-tools*::
Container documentation.
*/var/lib/machines*::
Container directory.
-*/var/cache/container-tools*::
+*/var/cache/open-infrastructure/container*::
Container cache directory.
CONTAINER IMAGES
----------------
-container-tools will download tarballs from a server expecting that the images are tarballs with either gzip, lzip, xz, or no compression. See container-images.sh as an example on how to create your own container images.
+compute-tools will download tarballs from a server expecting that the images are tarballs with either gzip, lzip, xz, or no compression. See container-images.sh as an example on how to create your own container images.
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -127,4 +126,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-create-debconf.1.txt b/share/man/container-create-debconf.1.txt
index a86d964..e6f2582 100644
--- a/share/man/container-create-debconf.1.txt
+++ b/share/man/container-create-debconf.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-CREATE-DEBOOTSTRAP(1)
===============================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -113,34 +112,34 @@ FILES
-----
The following files are used:
-*/etc/container-tools/config*::
+*/etc/open-infrastructure/container/config*::
Container configuration files.
-*/usr/share/container-tools/scripts*::
+*/usr/share/open-infrastructure/container/scripts*::
Container creation scripts.
-*/usr/share/doc/container-tools*::
+*/usr/share/doc/compute-tools*::
Container documentation.
*/var/lib/machines*::
Container directory.
-*/var/cache/container-tools*::
+*/var/cache/open-infrastructure/container*::
Container cache directory.
-*/tmp/container-tools*::
+*/tmp/compute-tools*::
Container temporary directory.
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -153,4 +152,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-create-debootstrap.1.txt b/share/man/container-create-debootstrap.1.txt
index da578bd..fc8651e 100644
--- a/share/man/container-create-debootstrap.1.txt
+++ b/share/man/container-create-debootstrap.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-CREATE-DEBOOTSTRAP(1)
===============================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -76,13 +75,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -95,4 +94,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-create.1.txt b/share/man/container-create.1.txt
index 4e88175..d36a694 100644
--- a/share/man/container-create.1.txt
+++ b/share/man/container-create.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-CREATE(1)
===================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -82,7 +81,7 @@ The following container scripts are available:
Advanced script to automatically create Debian based container, see container-create-debconf(1).
*default*::
- Symlink (if existing) to a container script which is used if no script was specified. On Debian based system this can be managed through update-alternatives(1), i.e. 'sudo update-alternatives --config container-tools_script'.
+ Symlink (if existing) to a container script which is used if no script was specified. On Debian based system this can be managed through update-alternatives(1), i.e. 'sudo update-alternatives --config container_script'.
EXAMPLES
@@ -101,13 +100,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -120,4 +119,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-enter.1.txt b/share/man/container-enter.1.txt
index 5051d74..aaf14de 100644
--- a/share/man/container-enter.1.txt
+++ b/share/man/container-enter.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-CONSOLE(1)
====================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -58,13 +57,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -77,4 +76,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-key.1.txt b/share/man/container-key.1.txt
index 448bd56..7e7f376 100644
--- a/share/man/container-key.1.txt
+++ b/share/man/container-key.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-KEY(1)
================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -65,13 +64,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -84,4 +83,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-limit.1.txt b/share/man/container-limit.1.txt
index a36328a..62f0288 100644
--- a/share/man/container-limit.1.txt
+++ b/share/man/container-limit.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-LIMIT(1)
==================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -88,13 +87,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -107,4 +106,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-list.1.txt b/share/man/container-list.1.txt
index 8a018b0..1916a6b 100644
--- a/share/man/container-list.1.txt
+++ b/share/man/container-list.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-LIST(1)
=================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -105,13 +104,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -124,4 +123,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-log.1.txt b/share/man/container-log.1.txt
new file mode 100644
index 0000000..ea5ab91
--- /dev/null
+++ b/share/man/container-log.1.txt
@@ -0,0 +1,90 @@
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+//
+// SPDX-License-Identifier: GPL-3.0+
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+CONTAINER-LOG(1)
+================
+:doctype: manpage
+:man manual: Open Infrastructure
+:man source: compute-tools
+:man version: {revnumber}
+
+
+NAME
+----
+container-log - Show container log
+
+
+SYNOPSIS
+--------
+*container log* ['OPTIONS']
+
+
+DESCRIPTION
+-----------
+The container log command shows the container log.
+
+
+OPTIONS
+-------
+The following container options are available:
+
+*-d, --date*::
+ Show only log entries of the specified date as 'YYYY-MM-DD' or a date range like 'today-7'.
+
+*-n, --name*::
+ Show only log entries for the specified container.
+
+EXAMPLES
+--------
+*Show all log entries:*::
+ sudo container log
+
+*Show only log entries of today:*::
+ sudo container log -d today
+
+*Show only log entries of yesterday:*::
+ sudo container log -d yesterday
+
+*Show all log entries of the example.net container:*::
+ sudo container log -n example.net
+
+*Show only log entries of the example.net container of the last 30 days:*::
+ sudo container log -d today-30 -n example.net
+
+
+SEE ALSO
+--------
+compute-tools(7),
+container(1).
+
+
+HOMEPAGE
+--------
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+
+
+CONTACT
+-------
+Bug reports, feature requests, help, patches, support and everything else
+are welcome on the Open Infrastructure Software Mailing List <software@lists.open-infrastructure.net>.
+
+Debian specific bugs can also be reported in the Debian Bug Tracking System at https://bugs.debian.org.
+
+
+AUTHORS
+-------
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-move.1.txt b/share/man/container-move.1.txt
index 172bd67..2320dfb 100644
--- a/share/man/container-move.1.txt
+++ b/share/man/container-move.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-REMOVE(1)
===================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -66,13 +65,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -85,4 +84,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-remove.1.txt b/share/man/container-remove.1.txt
index 94d167b..b3fb1f7 100644
--- a/share/man/container-remove.1.txt
+++ b/share/man/container-remove.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-REMOVE(1)
===================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -75,13 +74,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -94,4 +93,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-restart.1.txt b/share/man/container-restart.1.txt
index 99b461d..f3780b6 100644
--- a/share/man/container-restart.1.txt
+++ b/share/man/container-restart.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-RESTART(1)
====================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -58,13 +57,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -77,4 +76,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-shell.1.txt b/share/man/container-shell.1.txt
index bd0f4e1..0fd1aa9 100644
--- a/share/man/container-shell.1.txt
+++ b/share/man/container-shell.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER(1)
============
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -36,7 +35,7 @@ SYNOPSIS
DESCRIPTION
-----------
-container-tools provides the system integration for managing containers using systemd-nspawn.
+compute-tools provides the system integration for managing containers using systemd-nspawn.
COMMANDS
@@ -63,13 +62,13 @@ needing a regular shell login on the container server.
For usage over SSH a unprivileged user should be created:
- sudo adduser --gecos "container-tools,,," \
- --home /var/lib/container-tools/container-shell \
+ sudo adduser --gecos "compute-tools,,," \
+ --home /var/lib/open-infrastructure/container-shell \
--shell /usr/bin/container-shell
-The container-shell can then be allowed for specific SSH keys via /var/ib/container-tools/container-shell/.ssh/authorized_keys like so:
+The container-shell can then be allowed for specific SSH keys via /var/lib/open-infrastructure/container-shell/.ssh/authorized_keys like so:
- command="/usr/bin/container-shell",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa [...]
+ command="/usr/bin/container-shell",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-ed25519 [...]
RESTRICTED SHELL
@@ -84,7 +83,7 @@ Example (blacklisting): In order to allow all commands except for removing and s
command="CONTAINER_COMMANDS_DISABLE='remove stop' /usr/bin/container-shell",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa [...]
-Example (whitelisting): The other way around works too. To disallow all commands except for listing containers and showing the container-tools version, the following variable can be used:
+Example (whitelisting): The other way around works too. To disallow all commands except for listing containers and showing the compute-tools version, the following variable can be used:
command="CONTAINER_COMMANDS_ENABLE='list version' /usr/bin/container-shell",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa [...]
@@ -97,7 +96,7 @@ systemd-nspawn(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -110,4 +109,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-start.1.txt b/share/man/container-start.1.txt
index ae4ff89..544d155 100644
--- a/share/man/container-start.1.txt
+++ b/share/man/container-start.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-START(1)
==================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -61,13 +60,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -80,4 +79,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-status.1.txt b/share/man/container-status.1.txt
index b403769..d4d06a9 100644
--- a/share/man/container-status.1.txt
+++ b/share/man/container-status.1.txt
@@ -1,4 +1,3 @@
-// container-tools - Manage systemd-nspawn containers
// Copyright (C) 2016 Simon Spöehel <simon.spoehel@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
@@ -20,7 +19,7 @@ CONTAINER-STATUS(1)
===================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -55,13 +54,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -74,4 +73,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-stop.1.txt b/share/man/container-stop.1.txt
index ec169d8..62cfcd3 100644
--- a/share/man/container-stop.1.txt
+++ b/share/man/container-stop.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-STOP(1)
=================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -64,13 +63,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -83,4 +82,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-top.1.txt b/share/man/container-top.1.txt
index 2f99c5b..b603557 100644
--- a/share/man/container-top.1.txt
+++ b/share/man/container-top.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER-TOP(1)
================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -55,13 +54,13 @@ EXAMPLES
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -74,4 +73,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container-version.1.txt b/share/man/container-version.1.txt
index 19a1138..d774401 100644
--- a/share/man/container-version.1.txt
+++ b/share/man/container-version.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,13 +19,13 @@ CONTAINER-VERSION(1)
====================
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
NAME
----
-container-version - Show container-tools version
+container-version - Show container version
SYNOPSIS
@@ -38,7 +37,7 @@ SYNOPSIS
DESCRIPTION
-----------
-The container version command shows the container-tools version number.
+The container version command shows the container version number.
OPTIONS
@@ -48,19 +47,19 @@ This command has no options.
EXAMPLES
--------
-*Show container-tools version:*::
+*Show container version:*::
container version
SEE ALSO
--------
-container-tools(7),
+compute-tools(7),
container(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -73,4 +72,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/man/container.1.txt b/share/man/container.1.txt
index 0473958..aba9141 100644
--- a/share/man/container.1.txt
+++ b/share/man/container.1.txt
@@ -1,5 +1,4 @@
-// container-tools - Manage systemd-nspawn containers
-// Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+// Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
//
// SPDX-License-Identifier: GPL-3.0+
//
@@ -20,7 +19,7 @@ CONTAINER(1)
============
:doctype: manpage
:man manual: Open Infrastructure
-:man source: container-tools
+:man source: compute-tools
:man version: {revnumber}
@@ -37,7 +36,7 @@ SYNOPSIS
DESCRIPTION
-----------
-container-tools provides the system integration for managing containers using systemd-nspawn.
+compute-tools provides the system integration for managing containers using systemd-nspawn.
OPTIONS
@@ -85,6 +84,9 @@ The following container commands are available:
*list*::
List container on the system, see container-list(1).
+*log*::
+ Show container log, see container-log(1).
+
*status*::
Show container status, see container-status(1).
@@ -92,14 +94,14 @@ The following container commands are available:
Dynamic list of container on the system, see container-top(1).
*version*::
- Show container-tools version, see container-version(1).
+ Show container version, see container-version(1).
FILES
-----
The following files are used:
-*/etc/container-tools*::
+*/etc/open-infrastructure/container*::
Container configuration files.
*/usr/bin/container*, */usr/bin/cnt*::
@@ -108,22 +110,22 @@ The following files are used:
*/usr/bin/container-shell*, */usr/bin/cntsh*::
Container shell program.
-*/usr/lib/container-tools*::
+*/usr/lib/open-infrastructure/container*::
Container commands.
-*/usr/share/container-tools*::
+*/usr/share/open-infrastructure/container*::
Container shared data.
-*/usr/share/doc/container-tools*::
+*/usr/share/doc/compute-tools*::
Container documentation files.
-*/var/cache/container-tools*::
+*/var/cache/open-infrastructure/container*::
Container cache directory.
*/var/lib/machines*::
Container root directory.
-*/var/log/container-tools*::
+*/var/log/open-infrastructure*::
Container log files.
@@ -135,7 +137,7 @@ systemd-nspawn(1).
HOMEPAGE
--------
-More information about container-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
+More information about compute-tools and the Open Infrastructure project can be found on the homepage at https://open-infrastructure.net.
CONTACT
@@ -148,4 +150,4 @@ Debian specific bugs can also be reported in the Debian Bug Tracking System at h
AUTHORS
-------
-container-tools was written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
+compute-tools were written by Daniel Baumann <daniel.baumann@open-infrastructure.net> and others.
diff --git a/share/procps/zz-container-tools.conf b/share/procps/zz-container.conf
index 8b15f11..c464c42 100644
--- a/share/procps/zz-container-tools.conf
+++ b/share/procps/zz-container.conf
@@ -11,3 +11,6 @@ fs.inotify.max_user_instances=1048576
# /proc/sys/fs/inotify/max_user_watches defaults to 8192
fs.inotify.max_user_watches=1048576
+
+# Enabling user namespace, disabled by default (#898446)
+#kernel.unprivileged_userns_clone=1
diff --git a/share/scripts/curl b/share/scripts/curl
index 72bdec3..80ccde6 100755
--- a/share/scripts/curl
+++ b/share/scripts/curl
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,12 +19,15 @@
set -e
+PROJECT="open-infrastructure"
+SOFTWARE="compute-tools"
+PROGRAM="container"
SCRIPT="${0}"
-HOOKS="/etc/container-tools/hooks"
-KEYS="/etc/container-tools/keys"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
+KEYS="/etc/${PROJECT}/${PROGRAM}/keys"
MACHINES="/var/lib/machines"
-CACHE="/var/cache/container-tools/system"
+CACHE="/var/cache/${PROJECT}/${PROGRAM}/system"
Parameters ()
{
@@ -172,7 +174,7 @@ then
exit 1
fi
-SERVER="${SERVER:-https://files.open-infrastructure.net/system/container/debian}"
+SERVER="${SERVER:-https://get.open-infrastructure.net/system/container/debian}"
PASSWORD="${PASSWORD:-$(dd if=/dev/urandom bs=12 count=1 2> /dev/null | base64)}"
VERSION="$(container version)"
@@ -241,8 +243,8 @@ then
# Downloading container list
if curl --fail --head --output /dev/null --silent "${SERVER}/container-list.txt"
then
- mkdir -p /tmp/container-tools
- DEBCONF_TMPDIR="$(mktemp -d -p /tmp/container-tools -t $(basename ${0}).XXXX)"
+ mkdir -p "/tmp/${SOFTWARE}"
+ DEBCONF_TMPDIR="$(mktemp -d -p "/tmp/${SOFTWARE}" -t $(basename ${0}).XXXX)"
export DEBCONF_TMPDIR
if [ -z "${ARCHITECTURE}" ]
@@ -257,7 +259,7 @@ then
GREP_PATTERN="${GREP_PATTERN:-${ARCHITECTURE}}"
echo "Downloading $(echo ${SERVER} | awk -F/ '{ print $3 }') container list"
- curl --fail --location --progress-bar --user-agent container-tools/${VERSION} ${CURL_OPTIONS} \
+ curl --fail --location --progress-bar --user-agent ${SOFTWARE}/${VERSION} ${CURL_OPTIONS} \
"${SERVER}/container-list.txt" | grep -E "${GREP_PATTERN}" > "${DEBCONF_TMPDIR}/container-list.txt"
umask 0022
@@ -265,12 +267,12 @@ then
Debconf
# Run debconf parts
- for DEBCONF_SCRIPT in /usr/share/container-tools/scripts/curl.d/*
+ for DEBCONF_SCRIPT in /usr/share/${PROJECT}/${PROGRAM}/scripts/curl.d/*
do
if [ -x "${DEBCONF_SCRIPT}" ]
then
# FIXME
- # debconf -ocontainer-tools "${DEBCONF_SCRIPT}"
+ # debconf -o${SOFTWARE} "${DEBCONF_SCRIPT}"
"${DEBCONF_SCRIPT}"
fi
done
@@ -280,7 +282,7 @@ then
# Remove debconf temporary files
rm --preserve-root --one-file-system -rf "${DEBCONF_TMPDIR}"
- rmdir --ignore-fail-on-non-empty /tmp/container-tools 2>&1 || true
+ rmdir --ignore-fail-on-non-empty "/tmp/${SOFTWARE}" 2>&1 || true
fi
fi
@@ -320,7 +322,7 @@ do
fi
echo "Downloading ${FILE}"
- curl --fail --location --progress-bar --user-agent container-tools/${VERSION} ${CURL_OPTIONS} ${CURL_TIME_COND} \
+ curl --fail --location --progress-bar --user-agent ${SOFTWARE}/${VERSION} ${CURL_OPTIONS} ${CURL_TIME_COND} \
"${SERVER}/${FILE}" -o "${CACHE}/${FILE}"
fi
done
diff --git a/share/scripts/curl.d/0001-debconf b/share/scripts/curl.d/0001-debconf
index 1f31b63..3f98f74 100755
--- a/share/scripts/curl.d/0001-debconf
+++ b/share/scripts/curl.d/0001-debconf
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
diff --git a/share/scripts/debconf b/share/scripts/debconf
index 5325c11..fbb20fa 100755
--- a/share/scripts/debconf
+++ b/share/scripts/debconf
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,11 +19,14 @@
set -e
+PROJECT="open-infrastructure"
+SOFTWARE="compute-tools"
+PROGRAM="container"
SCRIPT="${0}"
export SCRIPT
-CONFIG="/etc/container-tools/config"
-HOOKS="/etc/container-tools/hooks"
+CONFIG="/etc/${PROJECT}/${PROGRAM}/config"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
MACHINES="/var/lib/machines"
Parameters ()
@@ -157,7 +159,7 @@ Upgrade_system ()
# Disable dpkg syncing
-cat > "${DIRECTORY}/etc/dpkg/dpkg.cfg.d/container-tools" << EOF
+cat > "${DIRECTORY}/etc/dpkg/dpkg.cfg.d/${SOFTWARE}" << EOF
force-unsafe-io
EOF
@@ -190,7 +192,7 @@ Cleanup_system ()
Chroot "${DIRECTORY}" "apt-get clean"
# Cleanup
- rm -f "${DIRECTORY}/etc/dpkg/dpkg.cfg.d/container-tools"
+ rm -f "${DIRECTORY}/etc/dpkg/dpkg.cfg.d/${SOFTWARE}"
rm -f "${DIRECTORY}/usr/sbin/policy-rc.d"
# Unmount pseudo-filesystems
@@ -202,8 +204,8 @@ Cleanup_system ()
Debconf ()
{
# Configure local debconf
- mkdir -p /tmp/container-tools
- DEBCONF_TMPDIR="$(mktemp -d -p /tmp/container-tools -t $(basename ${0}).XXXX)"
+ mkdir -p "/tmp/${SOFTWARE}"
+ DEBCONF_TMPDIR="$(mktemp -d -p "/tmp/${SOFTWARE}" -t $(basename ${0}).XXXX)"
export DEBCONF_TMPDIR
mkdir -p "${DEBCONF_TMPDIR}/debconf"
@@ -247,12 +249,18 @@ Debootstrap ()
EXCLUDE="ifupdown"
INCLUDE="dbus"
- if echo "${MIRROR}" | grep -qs '^https' || \
- echo "{PARENT_MIRROR}" | grep -qs '^https'
+ if ( echo "${MIRROR}" | grep -qs '^https' ) || \
+ ( echo "${PARENT_MIRROR}" | grep -qs '^https' )
then
INCLUDE="${INCLUDE},apt-transport-https,ca-certificates"
fi
+ case "${MODE}" in
+ progress-linux)
+ INCLUDE="${INCLUDE},progress-linux,gnupg"
+ ;;
+ esac
+
mkdir -p "$(dirname ${DIRECTORY})"
debootstrap --verbose --arch=${ARCHITECTURE} --components=${PARENT_ARCHIVE_AREAS} \
--exclude=${EXCLUDE} --include=${INCLUDE} ${PARENT_DISTRIBUTION} "${DIRECTORY}" ${PARENT_MIRROR}
@@ -332,58 +340,7 @@ EOF
;;
esac
- # Import archive keys
- KEYS="project/pgp/archive-key-${DIST}.asc"
-
- for KEY in ${KEYS}
- do
- KEY_NAME="$(basename ${KEY})"
- echo "P: Fetching archive-key ${KEY_NAME}..."
-
- wget -q "${MIRROR}/${KEY}" -O "${DIRECTORY}/key.asc"
- wget -q "${MIRROR}/${KEY}.gpg" -O "${DIRECTORY}/key.asc.gpg"
-
- if [ -e /usr/bin/gpgv ]
- then
- if [ -e /usr/share/keyrings/debian-keyring.gpg ] || [ -e /usr/share/keyrings/debian-maintainers.gpg ]
- then
- KEY_VALID=""
-
- for KEYRING in /usr/share/keyrings/debian-keyring.gpg /usr/share/keyrings/debian-maintainers.gpg
- do
- if [ -e "${KEYRING}" ]
- then
- echo -n "I: Verifying archive-key ${KEY_NAME} against $(basename ${KEYRING} .gpg | sed -e 's|-keyring||') keyring..."
-
- # FIXME: doesn't work anymore when the template eventually be run with 'set -e'
- /usr/bin/gpgv --quiet --keyring ${KEYRING} "${DIRECTORY}/key.asc.gpg" "${DIRECTORY}/key.asc" > /dev/null 2>&1 && KEY_VALID="true" && break
- fi
- done
-
- case "${KEY_VALID}" in
- true)
- echo " successful."
- ;;
-
- *)
- echo " failed."
- return 1
- ;;
- esac
- else
- echo "W: Skipping archive-key ${KEY_NAME} verification, debian-keyring not available..."
- fi
- else
- echo "W: Skipping archive-key ${KEY_NAME} verification, gpgv not available..."
- fi
-
- echo "P: Importing archive-key ${KEY_NAME}..."
-
- Chroot "${DIRECTORY}" "apt-key add key.asc"
- rm -f "${DIRECTORY}/key.asc"
- rm -f "${DIRECTORY}/key.asc.gpg"
- done
-
+ Chroot "${DIRECTORY}" "apt-key add /usr/share/progress-linux/pgp-keys/apt.progress-linux.org.gpg"
Chroot "${DIRECTORY}" "apt-get update"
;;
esac
@@ -898,7 +855,7 @@ EOF
cat > "${DIRECTORY}/etc/systemd/system/cnt-ipv4-post-up-eno${NUMBER}.service" << EOF
[Unit]
-Description=container-tools IPV4_POST_UP
+Description=${SOFTWARE} IPV4_POST_UP
After=network-online.target
Wants=network-online.target
@@ -918,7 +875,7 @@ EOF
cat > "${DIRECTORY}/etc/systemd/system/cnt-ipv4-post-down-eno${NUMBER}.service" << EOF
[Unit]
-Description=container-tools IPV4_POST_DOWN
+Description=${SOFTWARE} IPV4_POST_DOWN
After=network.target
Wants=network.target
@@ -1031,12 +988,12 @@ do
done
# Run debconf parts
-for DEBCONF_SCRIPT in /usr/share/container-tools/scripts/debconf.d/*
+for DEBCONF_SCRIPT in "/usr/share/${PROJECT}/${PROGRAM}/scripts/debconf.d"/*
do
if [ -x "${DEBCONF_SCRIPT}" ]
then
# FIXME
- # debconf -ocontainer-tools "${DEBCONF_SCRIPT}"
+ # debconf -o${SOFTWARE} "${DEBCONF_SCRIPT}"
"${DEBCONF_SCRIPT}"
fi
done
@@ -1044,7 +1001,7 @@ done
# Read-in configuration from debconf
. "${DEBCONF_TMPDIR}/debconf.default"
-CACHE="/var/cache/container-tools/${MODE}"
+CACHE="/var/cache/${PROJECT}/${PROGRAM}/${MODE}"
SYSTEM="${MACHINES}/${NAME}"
## Generic parts
@@ -1057,7 +1014,7 @@ then
mv "${CACHE}/${DISTRIBUTION}_${ARCHITECTURE}.tmp" "${CACHE}/${DISTRIBUTION}_${ARCHITECTURE}"
fi
-Upgrade_system "${CACHE}/${DISTRIBUTION}_${ARCHITECTURE}" || echo "W: If upgrading the system failed, try removing the cache for your distribution in /var/cache/container-tools"
+Upgrade_system "${CACHE}/${DISTRIBUTION}_${ARCHITECTURE}" || echo "W: If upgrading the system failed, try removing the cache for your distribution in /var/cache/${PROJECT}/${PROGRAM}"
Cleanup_system "${CACHE}/${DISTRIBUTION}_${ARCHITECTURE}"
## Specific parts
@@ -1175,7 +1132,7 @@ fi
# remove debconf temporary files
rm --preserve-root --one-file-system -rf "${DEBCONF_TMPDIR}"
-rmdir --ignore-fail-on-non-empty /tmp/container-tools 2>&1 || true
+rmdir --ignore-fail-on-non-empty "/tmp/${SOFTWARE}" 2>&1 || true
# Post hooks
for FILE in "${HOOKS}/post-${SCRIPT}".* "${HOOKS}/${NAME}.post-${SCRIPT}"
diff --git a/share/scripts/debconf.d/0001-preseed-file b/share/scripts/debconf.d/0001-preseed-file
index fab7d8d..d9ff245 100755
--- a/share/scripts/debconf.d/0001-preseed-file
+++ b/share/scripts/debconf.d/0001-preseed-file
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,7 +19,10 @@
set -e
-CONFIG="/etc/container-tools/debconf"
+PROJECT="open-infrastructure"
+PROGRAM="container"
+
+CONFIG="/etc/${PROJECT}/${PROGRAM}/debconf"
DEBCONF_NOWARNINGS="true"
export DEBCONF_NOWARNINGS
@@ -30,28 +32,28 @@ export DEBCONF_NOWARNINGS
if [ -n "${PRESEED_FILE}" ]
then
# user specified one or more preseed files through commandline option
- db_set cnt-debconf/preseed-file "${PRESEED_FILE}"
- db_fset cnt-debconf/preseed-file seen true
+ db_set container/preseed-file "${PRESEED_FILE}"
+ db_fset container/preseed-file seen true
elif [ -e "${CONFIG}/${NAME}.cfg" ]
then
# user did not specify a pressed file, but there is a matching one
# available on the system matching the container name
- db_set cnt-debconf/preseed-file "${CONFIG}/${NAME}.cfg"
- db_fset cnt-debconf/preseed-file seen true
+ db_set container/preseed-file "${CONFIG}/${NAME}.cfg"
+ db_fset container/preseed-file seen true
elif [ "$(ls ${CONFIG}/*/${NAME}.cfg 2>/dev/null | wc -l)" -eq 1 ]
then
# user did not specify a pressed file, but there is 1 (and only 1)
- # matching in a sub-directory of /etc/container-tools/debconf
+ # matching in a sub-directory of /etc/${PROJECT}/${PROGRAM}/debconf
FILE="$(ls ${CONFIG}/*/${NAME}.cfg)"
- db_set cnt-debconf/preseed-file "${FILE}"
- db_fset cnt-debconf/preseed-file seen true
+ db_set container/preseed-file "${FILE}"
+ db_fset container/preseed-file seen true
elif [ -e "${CONFIG}/default.cfg" ]
then
# user did not specify a pressed file, but there is a default one
- db_set cnt-debconf/preseed-file "${CONFIG}/default.cfg"
- db_fset cnt-debconf/preseed-file seen true
+ db_set container/preseed-file "${CONFIG}/default.cfg"
+ db_fset container/preseed-file seen true
elif ls "${CONFIG}"/*.cfg > /dev/null 2>&1 || ls "${CONFIG}"/*/*.cfg > /dev/null 2>&1
then
# user has not specified preseed files through commandline option,
@@ -62,13 +64,13 @@ then
if [ -n "${PRESEED_FILES}" ]
then
- db_subst cnt-debconf/preseed-files CHOICES "none, custom, , ${PRESEED_FILES}"
+ db_subst container/preseed-files CHOICES "none, custom, , ${PRESEED_FILES}"
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/preseed-files || true
+ db_settitle container/title
+ db_input high container/preseed-files || true
db_go
- db_get cnt-debconf/preseed-files
+ db_get container/preseed-files
PRESEED_FILE="${RET}" # select
case "${PRESEED_FILE}" in
@@ -77,8 +79,8 @@ then
*)
# user specified preseed file through debconf select
- db_set cnt-debconf/preseed-file "${CONFIG}/${PRESEED_FILE}.cfg"
- db_fset cnt-debconf/preseed-file seen true
+ db_set container/preseed-file "${CONFIG}/${PRESEED_FILE}.cfg"
+ db_fset container/preseed-file seen true
;;
esac
fi
@@ -90,11 +92,11 @@ case "${PRESEED_FILE}" in
*)
# ask user for a preseed file
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/preseed-file || true
+ db_settitle container/title
+ db_input high container/preseed-file || true
db_go
- db_get cnt-debconf/preseed-file
+ db_get container/preseed-file
PRESEED_FILE="${RET}" # string (w/ empty)
echo "PRESEED_FILE=\"${PRESEED_FILE}\"" >> "${DEBCONF_TMPDIR}/debconf.default"
diff --git a/share/scripts/debconf.d/0001-preseed-file.templates b/share/scripts/debconf.d/0001-preseed-file.templates
index 707da95..7e12e0d 100644
--- a/share/scripts/debconf.d/0001-preseed-file.templates
+++ b/share/scripts/debconf.d/0001-preseed-file.templates
@@ -1,14 +1,14 @@
-Template: cnt-debconf/title
+Template: container/title
Type: title
-Description: container-tools
+Description: compute-tools
-Template: cnt-debconf/preseed-files
+Template: container/preseed-files
Type: select
Default: none
Choices: ${CHOICES}
Description: Choose a preseed config, enter a custom one, or use no preseed file at all.
-Template: cnt-debconf/preseed-file
+Template: container/preseed-file
Type: string
Default:
Description: Enter (optional) preseed file to use:
diff --git a/share/scripts/debconf.d/0002-preseed-debconf b/share/scripts/debconf.d/0002-preseed-debconf
index ac101ad..086fffc 100755
--- a/share/scripts/debconf.d/0002-preseed-debconf
+++ b/share/scripts/debconf.d/0002-preseed-debconf
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -50,14 +49,14 @@ do
# add preseed file to debconf
DEBCONF_PRESEED_FILES="${DEBCONF_PRESEED_FILES} ${PRESEED_FILE}"
- if ! grep -qs '^ *container-tools *cnt-debconf/include-preseed-files' "${PRESEED_FILE}"
+ if ! grep -qs '^ *compute-tools *container/include-preseed-files' "${PRESEED_FILE}"
then
# preseed file has no includes
continue
fi
# preseed file has includes
- INCLUDE_PRESEED_FILES="$(grep '^ *container-tools *cnt-debconf/include-preseed-files' ${PRESEED_FILE} | awk '{ $1=$2=$3=""; print $0 }' | sed -e 's|,| |g')"
+ INCLUDE_PRESEED_FILES="$(grep '^ *compute-tools *container/include-preseed-files' ${PRESEED_FILE} | awk '{ $1=$2=$3=""; print $0 }' | sed -e 's|,| |g')"
# FIXME: we're supporting only *ONE* include layer for now, so no nested/recursive includes just yet
for FILE in ${INCLUDE_PRESEED_FILES}
diff --git a/share/scripts/debconf.d/0003-debconf b/share/scripts/debconf.d/0003-debconf
index 1d04adc..843d0b4 100755
--- a/share/scripts/debconf.d/0003-debconf
+++ b/share/scripts/debconf.d/0003-debconf
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -27,7 +26,7 @@ export DEBCONF_NOWARNINGS
Mode ()
{
- db_get cnt-debconf/mode
+ db_get container/mode
MODE="${RET}" # select
if [ -z "${MODE}" ]
@@ -47,34 +46,34 @@ Mode ()
Distribution ()
{
- db_get cnt-debconf/distribution
+ db_get container/distribution
DISTRIBUTION="${RET}" # select
if [ -z "${DISTRIBUTION}" ]
then
case "${MODE}" in
debian)
- db_subst cnt-debconf/distribution CHOICES "Debian GNU/Linux 9 \"stretch\", Debian GNU/Linux testing/buster, Debian GNU/Linux unstable/sid"
- db_subst cnt-debconf/distribution CHOICES_C "stretch, buster, sid"
+ db_subst container/distribution CHOICES "Debian GNU/Linux 9 \"stretch\", Debian GNU/Linux 10 \"buster\", Debian GNU/Linux testing/bullseye, Debian GNU/Linux unstable/sid"
+ db_subst container/distribution CHOICES_C "stretch, buster, bullseye, sid"
- db_set cnt-debconf/distribution stretch
- db_fset cnt-debconf/distribution seen false
+ db_set container/distribution buster
+ db_fset container/distribution seen false
;;
progress-linux)
- db_subst cnt-debconf/distribution CHOICES "Progress Linux 4 (dschinn), Progress Linux 4+ (dschinn-backports)"
- db_subst cnt-debconf/distribution CHOICES_C "dschinn, dschinn-backports"
+ db_subst container/distribution CHOICES "Progress Linux 5 (engywuck), Progress Linux 5+ (engywuck-backports)"
+ db_subst container/distribution CHOICES_C "engywuck, engywuck-backports"
- db_set cnt-debconf/distribution dschinn-backports
- db_fset cnt-debconf/distribution seen false
+ db_set container/distribution engywuck-backports
+ db_fset container/distribution seen false
;;
esac
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/distribution || true
+ db_settitle container/title
+ db_input high container/distribution || true
db_go
- db_get cnt-debconf/distribution
+ db_get container/distribution
DISTRIBUTION="${RET}" # select
fi
@@ -84,7 +83,7 @@ Distribution ()
Parent_distribution ()
{
- db_get cnt-debconf/parent-distribution
+ db_get container/parent-distribution
PARENT_DISTRIBUTION="${RET}"
if [ -z "${PARENT_DISTRIBUTION}" ]
@@ -92,8 +91,8 @@ Parent_distribution ()
case "${MODE}" in
progress-linux)
case "${DISTRIBUTION}" in
- dschinn*)
- PARENT_DISTRIBUTION="stretch"
+ engywuck*)
+ PARENT_DISTRIBUTION="buster"
;;
esac
;;
@@ -156,22 +155,22 @@ Architecture ()
exit 1
esac
- db_get cnt-debconf/architecture
+ db_get container/architecture
ARCHITECTURE="${RET}" # select
if [ -z "${ARCHITECTURE}" ] && [ -n "${CHOICES}" ]
then
- db_subst cnt-debconf/architecture CHOICES ${CHOICES}
- db_subst cnt-debconf/architecture CHOICES_C ${CHOICES_C}
+ db_subst container/architecture CHOICES ${CHOICES}
+ db_subst container/architecture CHOICES_C ${CHOICES_C}
- db_set cnt-debconf/architecture ${DEFAULT}
- db_fset cnt-debconf/distribution seen false
+ db_set container/architecture ${DEFAULT}
+ db_fset container/distribution seen false
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/architecture || true
+ db_settitle container/title
+ db_input high container/architecture || true
db_go
- db_get cnt-debconf/architecture
+ db_get container/architecture
ARCHITECTURE="${RET}" # select
fi
@@ -187,7 +186,7 @@ Architecture ()
Archives ()
{
- db_get cnt-debconf/archives
+ db_get container/archives
ARCHIVES="${RET}" # multiselect
if [ -z "${ARCHIVES}" ]
@@ -196,33 +195,33 @@ Archives ()
debian)
case "${PARENT_DISTRIBUTION}" in
sid)
- db_subst cnt-debconf/archives CHOICES "Experimental"
- db_subst cnt-debconf/archives CHOICES_C "experimental"
+ db_subst container/archives CHOICES "Experimental"
+ db_subst container/archives CHOICES_C "experimental"
- db_set cnt-debconf/archives ""
- db_fset cnt-debconf/archives seen false
+ db_set container/archives ""
+ db_fset container/archives seen false
;;
*)
- db_subst cnt-debconf/archives CHOICES "Security, Updates, Backports, Proposed Updates"
- db_subst cnt-debconf/archives CHOICES_C "${DISTRIBUTION}-security, ${DISTRIBUTION}-updates, ${DISTRIBUTION}-backports, ${DISTRIBUTION}-proposed-updates"
+ db_subst container/archives CHOICES "Security, Updates, Backports, Proposed Updates"
+ db_subst container/archives CHOICES_C "${DISTRIBUTION}-security, ${DISTRIBUTION}-updates, ${DISTRIBUTION}-backports, ${DISTRIBUTION}-proposed-updates"
case "${PARENT_DISTRIBUTION}" in
sid)
- db_set cnt-debconf/archives ""
+ db_set container/archives ""
;;
buster)
- db_set cnt-debconf/archives "${DISTRIBUTION}-security, ${DISTRIBUTION}-updates"
+ db_set container/archives "${DISTRIBUTION}-security, ${DISTRIBUTION}-updates"
;;
*)
- #db_set cnt-debconf/archives "${DISTRIBUTION}-security, ${DISTRIBUTION}-updates, ${DISTRIBUTION}-backports"
- db_set cnt-debconf/archives "${DISTRIBUTION}-security, ${DISTRIBUTION}-updates"
+ #db_set container/archives "${DISTRIBUTION}-security, ${DISTRIBUTION}-updates, ${DISTRIBUTION}-backports"
+ db_set container/archives "${DISTRIBUTION}-security, ${DISTRIBUTION}-updates"
;;
esac
- db_fset cnt-debconf/archives seen false
+ db_fset container/archives seen false
;;
esac
;;
@@ -230,19 +229,19 @@ Archives ()
progress-linux)
DIST="$(echo ${DISTRIBUTION} | sed -e 's|-backports||')"
- db_subst cnt-debconf/archives CHOICES "staging, Security, Security (staging), Updates, Updates (staging), Extras, Extras (staging), Backports, Backports (staging), Backports Extras, Backports Extras (staging)"
- db_subst cnt-debconf/archives CHOICES_C "${DIST}-staging, ${DIST}-security, ${DIST}-security-staging, ${DIST}-updates, ${DIST}-updates-staging, ${DIST}-extras, ${DIST}-extras-staging, ${DIST}-backports, ${DIST}-backports-staging, ${DIST}-backports-extras, ${DIST}-backports-extras-staging"
+ db_subst container/archives CHOICES "staging, Security, Security (staging), Updates, Updates (staging), Extras, Extras (staging), Backports, Backports (staging), Backports Extras, Backports Extras (staging)"
+ db_subst container/archives CHOICES_C "${DIST}-staging, ${DIST}-security, ${DIST}-security-staging, ${DIST}-updates, ${DIST}-updates-staging, ${DIST}-extras, ${DIST}-extras-staging, ${DIST}-backports, ${DIST}-backports-staging, ${DIST}-backports-extras, ${DIST}-backports-extras-staging"
- db_set cnt-debconf/archives "${DIST}-security, ${DIST}-updates, ${DIST}-extras, ${DIST}-backports, ${DIST}-backports-extras"
- db_fset cnt-debconf/archives seen false
+ db_set container/archives "${DIST}-security, ${DIST}-updates, ${DIST}-extras, ${DIST}-backports, ${DIST}-backports-extras"
+ db_fset container/archives seen false
;;
esac
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/archives || true
+ db_settitle container/title
+ db_input high container/archives || true
db_go
- db_get cnt-debconf/archives
+ db_get container/archives
ARCHIVES="${RET}" # multiselect
fi
@@ -254,40 +253,40 @@ Archives ()
Parent_archives ()
{
- db_get cnt-debconf/parent-archives
+ db_get container/parent-archives
PARENT_ARCHIVES="${RET}" # multiselect (w/o empty)
if [ -z "${PARENT_ARCHIVES}" ]
then
case "${MODE}" in
progress-linux)
- db_subst cnt-debconf/parent-archives CHOICES "Security, Updates, Backports, Proposed Updates"
- db_subst cnt-debconf/parent-archives CHOICES_C "${PARENT_DISTRIBUTION}-security, ${PARENT_DISTRIBUTION}-updates, ${PARENT_DISTRIBUTION}-backports, ${PARENT_DISTRIBUTION}-proposed-updates"
+ db_subst container/parent-archives CHOICES "Security, Updates, Backports, Proposed Updates"
+ db_subst container/parent-archives CHOICES_C "${PARENT_DISTRIBUTION}-security, ${PARENT_DISTRIBUTION}-updates, ${PARENT_DISTRIBUTION}-backports, ${PARENT_DISTRIBUTION}-proposed-updates"
case "${PARENT_DISTRIBUTION}" in
*)
- #db_set cnt-debconf/parent-archives "${PARENT_DISTRIBUTION}-security, ${PARENT_DISTRIBUTION}-updates, ${PARENT_DISTRIBUTION}-backports"
- db_set cnt-debconf/parent-archives "${PARENT_DISTRIBUTION}-security, ${PARENT_DISTRIBUTION}-updates"
+ #db_set container/parent-archives "${PARENT_DISTRIBUTION}-security, ${PARENT_DISTRIBUTION}-updates, ${PARENT_DISTRIBUTION}-backports"
+ db_set container/parent-archives "${PARENT_DISTRIBUTION}-security, ${PARENT_DISTRIBUTION}-updates"
;;
esac
- db_fset cnt-debconf/parent-archives seen false
+ db_fset container/parent-archives seen false
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/parent-archives || true
+ db_settitle container/title
+ db_input high container/parent-archives || true
db_go
;;
*)
- db_subst cnt-debconf/parent-archives CHOICES "Security, Updates, Backports, Proposed Updates"
- db_subst cnt-debconf/parent-archives CHOICES_C "${ARCHIVES}"
+ db_subst container/parent-archives CHOICES "Security, Updates, Backports, Proposed Updates"
+ db_subst container/parent-archives CHOICES_C "${ARCHIVES}"
- db_set cnt-debconf/parent-archives "${ARCHIVES}"
- db_fset cnt-debconf/parent-archives seen true
+ db_set container/parent-archives "${ARCHIVES}"
+ db_fset container/parent-archives seen true
;;
esac
- db_get cnt-debconf/parent-archives
+ db_get container/parent-archives
PARENT_ARCHIVES="${RET}" # multiselect (w/o empty)
if [ -z "${PARENT_ARCHIVES}" ]
@@ -317,28 +316,28 @@ Parent_archives ()
Mirror ()
{
- db_get cnt-debconf/mirror
+ db_get container/mirror
MIRROR="${RET}"
if [ -z "${MIRROR}" ]
then
case "${MODE}" in
debian)
- db_set cnt-debconf/mirror https://deb.debian.org/debian
- db_fset cnt-debconf/mirror seen false
+ db_set container/mirror https://deb.debian.org/debian
+ db_fset container/mirror seen false
;;
progress-linux)
- db_set cnt-debconf/mirror https://cdn.archive.progress-linux.org/packages
- db_fset cnt-debconf/mirror seen false
+ db_set container/mirror https://cdn.deb.progress-linux.org/packages
+ db_fset container/mirror seen false
;;
esac
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/mirror || true
+ db_settitle container/title
+ db_input high container/mirror || true
db_go
- db_get cnt-debconf/mirror
+ db_get container/mirror
MIRROR="${RET}" # string (w/o empty)
if [ -z "${MIRROR}" ]
@@ -349,7 +348,7 @@ Mirror ()
;;
progress-linux)
- MIRROR="https://cdn.archive.progress-linux.org/packages"
+ MIRROR="https://cdn.deb.progress-linux.org/packages"
;;
esac
fi
@@ -366,28 +365,28 @@ Mirror_security ()
return 0
fi
- db_get cnt-debconf/mirror-security
+ db_get container/mirror-security
MIRROR_SECURITY="${RET}" # string (w/o empty)
if [ -z "${MIRROR_SECURITY}" ]
then
case "${MODE}" in
debian)
- db_set cnt-debconf/mirror-security http://security.debian.org
- db_fset cnt-debconf/mirror-security seen false
+ db_set container/mirror-security http://security.debian.org
+ db_fset container/mirror-security seen false
;;
*)
- db_set cnt-debconf/mirror-security ${MIRROR}
- db_fset cnt-debconf/mirror-security seen true
+ db_set container/mirror-security ${MIRROR}
+ db_fset container/mirror-security seen true
;;
esac
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/mirror-security || true
+ db_settitle container/title
+ db_input high container/mirror-security || true
db_go
- db_get cnt-debconf/mirror-security
+ db_get container/mirror-security
MIRROR_SECURITY="${RET}" # string (w/o empty)
if [ -z "${MIRROR_SECURITY}" ]
@@ -410,28 +409,28 @@ Mirror_security ()
Parent_mirror ()
{
- db_get cnt-debconf/parent-mirror
+ db_get container/parent-mirror
PARENT_MIRROR="${RET}" # string (w/o empty)
if [ -z "${PARENT_MIRROR}" ]
then
case "${MODE}" in
progress-linux)
- db_set cnt-debconf/parent-mirror https://deb.debian.org/debian
- db_fset cnt-debconf/parent-mirror seen false
+ db_set container/parent-mirror https://deb.debian.org/debian
+ db_fset container/parent-mirror seen false
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/parent-mirror || true
+ db_settitle container/title
+ db_input high container/parent-mirror || true
db_go
;;
*)
- db_set cnt-debconf/parent-mirror ${MIRROR}
- db_fset cnt-debconf/parent-mirror seen true
+ db_set container/parent-mirror ${MIRROR}
+ db_fset container/parent-mirror seen true
;;
esac
- db_get cnt-debconf/parent-mirror
+ db_get container/parent-mirror
PARENT_MIRROR="${RET}" # string (w/o empty)
if [ -z "${PARENT_MIRROR}" ]
@@ -459,28 +458,28 @@ Parent_mirror_security ()
return 0
fi
- db_get cnt-debconf/parent-mirror-security
+ db_get container/parent-mirror-security
PARENT_MIRROR_SECURITY="${RET}" # string (w/o empty)
if [ -z "${PARENT_MIRROR_SECURITY}" ]
then
case "${MODE}" in
progress-linux)
- db_set cnt-debconf/parent-mirror-security http://security.debian.org
- db_fset cnt-debconf/parent-mirror-security seen false
+ db_set container/parent-mirror-security http://security.debian.org
+ db_fset container/parent-mirror-security seen false
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/parent-mirror-security || true
+ db_settitle container/title
+ db_input high container/parent-mirror-security || true
db_go
;;
*)
- db_set cnt-debconf/parent-mirror-security ${MIRROR_SECURITY}
- db_fset cnt-debconf/parent-mirror-security seen true
+ db_set container/parent-mirror-security ${MIRROR_SECURITY}
+ db_fset container/parent-mirror-security seen true
;;
esac
- db_get cnt-debconf/parent-mirror-security
+ db_get container/parent-mirror-security
PARENT_MIRROR_SECURITY="${RET}" # string (w/o empty)
if [ -z "${PARENT_MIRROR_SECURITY}" ]
@@ -503,32 +502,32 @@ Parent_mirror_security ()
Archive_areas ()
{
- db_get cnt-debconf/archive-areas
+ db_get container/archive-areas
ARCHIVE_AREAS="${RET}"
if [ -z "${ARCHIVE_AREAS}" ]
then
case "${MODE}" in
progress-linux)
- db_subst cnt-debconf/archive-areas CHOICES "main, contrib, non-free"
+ db_subst container/archive-areas CHOICES "main, contrib, non-free"
- db_set cnt-debconf/archive-areas "main, contrib, non-free"
- db_fset cnt-debconf/archive-areas seen false
+ db_set container/archive-areas "main, contrib, non-free"
+ db_fset container/archive-areas seen false
;;
*)
- db_subst cnt-debconf/archive-areas CHOICES "main, contrib, non-free"
+ db_subst container/archive-areas CHOICES "main, contrib, non-free"
- db_set cnt-debconf/archive-areas "main"
- db_fset cnt-debconf/archive-areas seen false
+ db_set container/archive-areas "main"
+ db_fset container/archive-areas seen false
;;
esac
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/archive-areas || true
+ db_settitle container/title
+ db_input high container/archive-areas || true
db_go
- db_get cnt-debconf/archive-areas
+ db_get container/archive-areas
ARCHIVE_AREAS="${RET}" # multiselect (w/o empty)
if [ -z "${ARCHIVE_AREAS}" ]
@@ -553,32 +552,32 @@ Archive_areas ()
Parent_archive_areas ()
{
- db_get cnt-debconf/parent-archive-areas
+ db_get container/parent-archive-areas
PARENT_ARCHIVE_AREAS="${RET}" # multiselect (w/o empty)
if [ -z "${PARENT_ARCHIVE_AREAS}" ]
then
case "${MODE}" in
progress-linux)
- db_subst cnt-debconf/parent-archive-areas CHOICES "main, contrib, non-free"
+ db_subst container/parent-archive-areas CHOICES "main, contrib, non-free"
- db_set cnt-debconf/parent-archive-areas "main, contrib, non-free"
- db_fset cnt-debconf/parent-archive-areas seen false
+ db_set container/parent-archive-areas "main, contrib, non-free"
+ db_fset container/parent-archive-areas seen false
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/parent-archive-areas || true
+ db_settitle container/title
+ db_input high container/parent-archive-areas || true
db_go
;;
*)
- db_subst cnt-debconf/parent-archive-areas CHOICES "${ARCHIVE_AREAS}"
+ db_subst container/parent-archive-areas CHOICES "${ARCHIVE_AREAS}"
- db_set cnt-debconf/parent-archive-areas "${ARCHIVE_AREAS}"
- db_fset cnt-debconf/parent-archive-areas seen true
+ db_set container/parent-archive-areas "${ARCHIVE_AREAS}"
+ db_fset container/parent-archive-areas seen true
;;
esac
- db_get cnt-debconf/parent-archive-areas
+ db_get container/parent-archive-areas
PARENT_ARCHIVE_AREAS="${RET}" # multiselect (w/o empty)
if [ -z "${PARENT_ARCHIVE_AREAS}" ]
@@ -603,16 +602,16 @@ Parent_archive_areas ()
Packages ()
{
- db_get cnt-debconf/packages
+ db_get container/packages
PACKAGES="${RET}" # string (w/ empty)
if [ -z "${PACKAGES}" ]
then
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/packages || true
+ db_settitle container/title
+ db_input high container/packages || true
db_go
- db_get cnt-debconf/packages
+ db_get container/packages
PACKAGES="${RET}" # string (w/ empty)
fi
@@ -624,20 +623,20 @@ Local_archives ()
{
NUMBER="1"
- while db_get cnt-debconf/archive${NUMBER}/repository && [ "${RET}" ]
+ while db_get container/archive${NUMBER}/repository && [ "${RET}" ]
do
mkdir -p "${DEBCONF_TMPDIR}/apt"
REPOSITORY="${RET#deb }"
LIST="archive${NUMBER}.list"
- if db_get cnt-debconf/archive${NUMBER}/list
+ if db_get container/archive${NUMBER}/list
then
LIST="$(basename ${RET} .list).list"
fi
COMMENT=""
- if db_get cnt-debconf/archive${NUMBER}/comment
+ if db_get container/archive${NUMBER}/comment
then
COMMENT="${RET}"
@@ -646,13 +645,13 @@ Local_archives ()
echo "deb ${REPOSITORY}" >> "${DEBCONF_TMPDIR}/apt/${LIST}"
- if db_get cnt-debconf/archive${NUMBER}/source && [ "$RET" = true ]
+ if db_get container/archive${NUMBER}/source && [ "$RET" = true ]
then
echo "deb-src ${REPOSITORY}" >> "${DEBCONF_TMPDIR}/apt/${LIST}"
fi
KEY=""
- if db_get cnt-debconf/archive${NUMBER}/key
+ if db_get container/archive${NUMBER}/key
then
KEY="${RET}"
@@ -662,16 +661,16 @@ Local_archives ()
PREFERENCES_PACKAGE=""
PREFERENCES_PIN=""
PREFERENCES_PIN_PRIORITY=""
- if db_get cnt-debconf/archive${NUMBER}/preferences-package
+ if db_get container/archive${NUMBER}/preferences-package
then
PREFERENCES_PACKAGE="${RET}"
- if db_get cnt-debconf/archive${NUMBER}/preferences-pin
+ if db_get container/archive${NUMBER}/preferences-pin
then
PREFERENCES_PIN="${RET}"
fi
- if db_get cnt-debconf/archive${NUMBER}/preferences-pin-priority
+ if db_get container/archive${NUMBER}/preferences-pin-priority
then
PREFERENCES_PIN_PRIORITY="${RET}"
fi
@@ -722,97 +721,97 @@ Network_defaults ()
Network ()
{
- db_get cnt-debconf/network1/bridge
+ db_get container/network1/bridge
NETWORK1_BRIDGE="${RET}" # string (w/o empty)
- db_get cnt-debconf/network1/veth
+ db_get container/network1/veth
NETWORK1_VETH="${RET}" # string (w/o empty)
- db_get cnt-debconf/network1/ipv4-method
+ db_get container/network1/ipv4-method
NETWORK1_IPV4_METHOD="${RET}" # select
- db_get cnt-debconf/network1/ipv4-comment
+ db_get container/network1/ipv4-comment
NETWORK1_IPV4_COMMENT="${RET}" # string (w/ empty)
- db_get cnt-debconf/network1/ipv4-address
+ db_get container/network1/ipv4-address
NETWORK1_IPV4_ADDRESS="${RET}" # string (w/o empty)
- db_get cnt-debconf/network1/ipv4-gateway
+ db_get container/network1/ipv4-gateway
NETWORK1_IPV4_GATEWAY="${RET}" # string (w/ empty)
- db_get cnt-debconf/network1/ipv4-netmask
+ db_get container/network1/ipv4-netmask
NETWORK1_IPV4_NETMASK="${RET}" # string (w/o empty)
- db_get cnt-debconf/network1/ipv4-post-up
+ db_get container/network1/ipv4-post-up
NETWORK1_IPV4_POST_UP="${RET}" # string (w/ empty)
- db_get cnt-debconf/network1/ipv4-post-down
+ db_get container/network1/ipv4-post-down
NETWORK1_IPV4_POST_DOWN="${RET}" # string (w/ empty)
- db_get cnt-debconf/nameserver/server
+ db_get container/nameserver/server
NAMESERVER_SERVER="${RET}" # string (w/ empty)
- db_get cnt-debconf/nameserver/domain
+ db_get container/nameserver/domain
NAMESERVER_DOMAIN="${RET}" # string (w/ empty)
- db_get cnt-debconf/nameserver/search
+ db_get container/nameserver/search
NAMESERVER_SEARCH="${RET}" # string (w/ empty)
- db_get cnt-debconf/nameserver/options
+ db_get container/nameserver/options
NAMESERVER_OPTIONS="${RET}" # string (w/ empty)
Network_defaults
- db_set cnt-debconf/network1/bridge "${NETWORK1_BRIDGE}"
- db_fset cnt-debconf/network1/bridge seen false
+ db_set container/network1/bridge "${NETWORK1_BRIDGE}"
+ db_fset container/network1/bridge seen false
- db_set cnt-debconf/network1/veth "${NETWORK1_VETH}"
- db_fset cnt-debconf/network1/veth seen false
+ db_set container/network1/veth "${NETWORK1_VETH}"
+ db_fset container/network1/veth seen false
- db_set cnt-debconf/network1/ipv4-method "${NETWORK1_IPV4_METHOD}"
- db_fset cnt-debconf/network1/ipv4-method seen false
+ db_set container/network1/ipv4-method "${NETWORK1_IPV4_METHOD}"
+ db_fset container/network1/ipv4-method seen false
- db_set cnt-debconf/network1/ipv4-comment "${NETWORK1_IPV4_COMMENT}"
- db_fset cnt-debconf/network1/ipv4-comment seen false
+ db_set container/network1/ipv4-comment "${NETWORK1_IPV4_COMMENT}"
+ db_fset container/network1/ipv4-comment seen false
- db_set cnt-debconf/network1/ipv4-address "${NETWORK1_IPV4_ADDRESS}"
- db_fset cnt-debconf/network1/ipv4-address seen false
+ db_set container/network1/ipv4-address "${NETWORK1_IPV4_ADDRESS}"
+ db_fset container/network1/ipv4-address seen false
- db_set cnt-debconf/network1/ipv4-gateway "${NETWORK1_IPV4_GATEWAY}"
- db_fset cnt-debconf/network1/ipv4-gateway seen false
+ db_set container/network1/ipv4-gateway "${NETWORK1_IPV4_GATEWAY}"
+ db_fset container/network1/ipv4-gateway seen false
- db_set cnt-debconf/network1/ipv4-netmask "${NETWORK1_IPV4_NETMASK}"
- db_fset cnt-debconf/network1/ipv4-netmask seen false
+ db_set container/network1/ipv4-netmask "${NETWORK1_IPV4_NETMASK}"
+ db_fset container/network1/ipv4-netmask seen false
- db_set cnt-debconf/network1/ipv4-post-up "${NETWORK1_IPV4_POST_UP}"
- db_fset cnt-debconf/network1/ipv4-post-up seen false
+ db_set container/network1/ipv4-post-up "${NETWORK1_IPV4_POST_UP}"
+ db_fset container/network1/ipv4-post-up seen false
- db_set cnt-debconf/network1/ipv4-post-down "${NETWORK1_IPV4_POST_DOWN}"
- db_fset cnt-debconf/network1/ipv4-post-down seen false
+ db_set container/network1/ipv4-post-down "${NETWORK1_IPV4_POST_DOWN}"
+ db_fset container/network1/ipv4-post-down seen false
- db_set cnt-debconf/nameserver/server "${NAMESERVER_SERVER}"
- db_fset cnt-debconf/nameserver/server seen false
+ db_set container/nameserver/server "${NAMESERVER_SERVER}"
+ db_fset container/nameserver/server seen false
- db_set cnt-debconf/nameserver/domain "${NAMESERVER_DOMAIN}"
- db_fset cnt-debconf/nameserver/domain seen false
+ db_set container/nameserver/domain "${NAMESERVER_DOMAIN}"
+ db_fset container/nameserver/domain seen false
- db_set cnt-debconf/nameserver/search "${NAMESERVER_SEARCH}"
- db_fset cnt-debconf/nameserver/search seen false
+ db_set container/nameserver/search "${NAMESERVER_SEARCH}"
+ db_fset container/nameserver/search seen false
- db_set cnt-debconf/nameserver/options "${NAMESERVER_OPTIONS}"
- db_fset cnt-debconf/nameserver/options seen false
+ db_set container/nameserver/options "${NAMESERVER_OPTIONS}"
+ db_fset container/nameserver/options seen false
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/network1/ipv4-method || true
+ db_settitle container/title
+ db_input high container/network1/ipv4-method || true
db_go
- db_get cnt-debconf/network1/bridge
+ db_get container/network1/bridge
NETWORK1_BRIDGE="${RET}" # select
- db_get cnt-debconf/network1/veth
+ db_get container/network1/veth
NETWORK1_VETH="${RET}" # select
- db_get cnt-debconf/network1/ipv4-method
+ db_get container/network1/ipv4-method
NETWORK1_IPV4_METHOD="${RET}" # select
case "${NETWORK1_IPV4_METHOD}" in
@@ -820,81 +819,81 @@ Network ()
;;
static)
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/network1/ipv4-comment || true
+ db_settitle container/title
+ db_input high container/network1/ipv4-comment || true
db_go
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/network1/ipv4-address || true
+ db_settitle container/title
+ db_input high container/network1/ipv4-address || true
db_go
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/network1/ipv4-gateway || true
+ db_settitle container/title
+ db_input high container/network1/ipv4-gateway || true
db_go
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/network1/ipv4-netmask || true
+ db_settitle container/title
+ db_input high container/network1/ipv4-netmask || true
db_go
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/network1/ipv4-post-up || true
+ db_settitle container/title
+ db_input high container/network1/ipv4-post-up || true
db_go
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/network1/ipv4-post-down || true
+ db_settitle container/title
+ db_input high container/network1/ipv4-post-down || true
db_go
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/nameserver/server || true
+ db_settitle container/title
+ db_input high container/nameserver/server || true
db_go
;;
esac
NUMBER="1"
- while db_get cnt-debconf/network${NUMBER}/ipv4-method && [ "${RET}" ]
+ while db_get container/network${NUMBER}/ipv4-method && [ "${RET}" ]
do
- if db_get cnt-debconf/network${NUMBER}/bridge
+ if db_get container/network${NUMBER}/bridge
then
eval NETWORK${NUMBER}_BRIDGE="\"${RET}\"" # string (w/o empty)
fi
- if db_get cnt-debconf/network${NUMBER}/veth
+ if db_get container/network${NUMBER}/veth
then
eval NETWORK${NUMBER}_VETH="\"${RET}\"" # string (w/o empty)
fi
- if db_get cnt-debconf/network${NUMBER}/ipv4-comment
+ if db_get container/network${NUMBER}/ipv4-comment
then
eval NETWORK${NUMBER}_IPV4_COMMENT="\"${RET}\"" # string (w/ empty)
fi
- if db_get cnt-debconf/network${NUMBER}/ipv4-method
+ if db_get container/network${NUMBER}/ipv4-method
then
eval NETWORK${NUMBER}_IPV4_METHOD="\"${RET}\"" # select
fi
- if db_get cnt-debconf/network${NUMBER}/ipv4-address
+ if db_get container/network${NUMBER}/ipv4-address
then
eval NETWORK${NUMBER}_IPV4_ADDRESS="\"${RET}\"" # string (w/o empty)
fi
- if db_get cnt-debconf/network${NUMBER}/ipv4-gateway
+ if db_get container/network${NUMBER}/ipv4-gateway
then
eval NETWORK${NUMBER}_IPV4_GATEWAY="\"${RET}\"" # string (w/ empty)
fi
- if db_get cnt-debconf/network${NUMBER}/ipv4-netmask
+ if db_get container/network${NUMBER}/ipv4-netmask
then
eval NETWORK${NUMBER}_IPV4_NETMASK="\"${RET}\"" # string (w/o empty)
fi
- if db_get cnt-debconf/network${NUMBER}/ipv4-post-up
+ if db_get container/network${NUMBER}/ipv4-post-up
then
eval NETWORK${NUMBER}_IPV4_POST_UP="\"${RET}\"" # string (w/ empty)
fi
- if db_get cnt-debconf/network${NUMBER}/ipv4-post-down
+ if db_get container/network${NUMBER}/ipv4-post-down
then
eval NETWORK${NUMBER}_IPV4_POST_DOWN="\"${RET}\"" # string (w/ empty)
fi
@@ -904,16 +903,16 @@ Network ()
NETWORK_NUMBER="$((${NUMBER} - 1))"
- db_get cnt-debconf/nameserver/server
+ db_get container/nameserver/server
NAMESERVER_SERVER="${RET}" # string (w/ empty)
- db_get cnt-debconf/nameserver/domain
+ db_get container/nameserver/domain
NAMESERVER_DOMAIN="${RET}" # string (w/ empty)
- db_get cnt-debconf/nameserver/search
+ db_get container/nameserver/search
NAMESERVER_SEARCH="${RET}" # string (w/ empty)
- db_get cnt-debconf/nameserver/options
+ db_get container/nameserver/options
NAMESERVER_OPTIONS="${RET}" # string (w/ empty)
Network_defaults
@@ -958,7 +957,7 @@ Network ()
Root_password ()
{
- if db_get cnt-debconf/root-password
+ if db_get container/root-password
then
ROOT_PASSWORD="${RET}" # string (w/o empty)
fi
@@ -968,14 +967,14 @@ Root_password ()
# Create a random password as suggestion for the user
RANDOM_PASSWORD="$(dd if=/dev/urandom bs=12 count=1 2> /dev/null | base64)"
- db_set cnt-debconf/root-password ${RANDOM_PASSWORD}
- db_fset cnt-debconf/root-password seen false
+ db_set container/root-password ${RANDOM_PASSWORD}
+ db_fset container/root-password seen false
- db_settitle cnt-debconf/title
- db_input high cnt-debconf/root-password || true
+ db_settitle container/title
+ db_input high container/root-password || true
db_go
- db_get cnt-debconf/root-password
+ db_get container/root-password
ROOT_PASSWORD="${RET}"
if [ -z "${ROOT_PASSWORD}" ]
@@ -995,14 +994,14 @@ Root_password ()
Internal_options ()
{
- if db_get cnt-debconf/apt-recommends
+ if db_get container/apt-recommends
then
APT_RECOMMENDS="${RET}" # boolean (w/ empty)
fi
echo "APT_RECOMMENDS=\"${APT_RECOMMENDS}\"" >> "${DEBCONF_TMPDIR}/debconf.default"
- if db_get cnt-debconf/debconf-frontend
+ if db_get container/debconf-frontend
then
DEBCONF_FRONTEND="${RET}" # select
fi
@@ -1010,7 +1009,7 @@ Internal_options ()
DEBCONF_FRONTEND="${DEBCONF_FRONTEND:-dialog}"
echo "DEBCONF_FRONTEND=\"${DEBCONF_FRONTEND}\"" >> "${DEBCONF_TMPDIR}/debconf.default"
- if db_get cnt-debconf/debconf-priority
+ if db_get container/debconf-priority
then
DEBCONF_PRIORITY="${RET}" # select
fi
@@ -1018,7 +1017,7 @@ Internal_options ()
DEBCONF_PRIORITY="${DEBCONF_PRIORITY:-high}"
echo "DEBCONF_PRIORITY=\"${DEBCONF_PRIORITY}\"" >> "${DEBCONF_TMPDIR}/debconf.default"
- if db_get cnt-debconf/container-command
+ if db_get container/container-command
then
CONTAINER_COMMAND="${RET}" # string (w/ empty)
fi
@@ -1027,9 +1026,9 @@ Internal_options ()
NUMBER="1"
- while db_get cnt-debconf/container-command${NUMBER} && [ "${RET}" ]
+ while db_get container/container-command${NUMBER} && [ "${RET}" ]
do
- if db_get cnt-debconf/container-command${NUMBER}
+ if db_get container/container-command${NUMBER}
then
eval CONTAINER_COMMAND${NUMBER}="\"${RET}\"" # string (w/o empty)
fi
@@ -1047,7 +1046,7 @@ Internal_options ()
echo "CONTAINER_COMMAND${NUMBER}=\"${COMMAND}\"" >> "${DEBCONF_TMPDIR}/debconf.default"
done
- if db_get cnt-debconf/host-command
+ if db_get container/host-command
then
HOST_COMMAND="${RET}" # string (w/ empty)
fi
@@ -1056,9 +1055,9 @@ Internal_options ()
NUMBER="1"
- while db_get cnt-debconf/host-command${NUMBER} && [ "${RET}" ]
+ while db_get container/host-command${NUMBER} && [ "${RET}" ]
do
- if db_get cnt-debconf/host-command${NUMBER}
+ if db_get container/host-command${NUMBER}
then
eval HOST_COMMAND${NUMBER}="\"${RET}\"" # string (w/o empty)
fi
@@ -1076,7 +1075,7 @@ Internal_options ()
echo "HOST_COMMAND${NUMBER}=\"${COMMAND}\"" >> "${DEBCONF_TMPDIR}/debconf.default"
done
- if db_get cnt-debconf/auto
+ if db_get container/auto
then
CNT_AUTO="${RET:-true}" # string (w/o empty)
fi
@@ -1084,7 +1083,7 @@ Internal_options ()
CNT_AUTO="${CNT_AUTO:-true}"
echo "CNT_AUTO=\"${CNT_AUTO}\"" >> "${DEBCONF_TMPDIR}/debconf.default"
- if db_get cnt-debconf/container-server
+ if db_get container/container-server
then
CNT_CONTAINER_SERVER="${RET:-FQDN}" # string (w/o empty)
fi
@@ -1093,20 +1092,20 @@ Internal_options ()
case "${CNT_CONTAINER_SERVER}" in
FQDN)
- CNT_CONTAINER_SERVER="$(hostname -f)"
+ CNT_CONTAINER_SERVER="$(hostname -f 2> /dev/null || hostname)"
;;
esac
echo "CNT_CONTAINER_SERVER=\"${CNT_CONTAINER_SERVER}\"" >> "${DEBCONF_TMPDIR}/debconf.default"
- if db_get cnt-debconf/bind
+ if db_get container/bind
then
BIND="${RET}" # string (w/ empty)
fi
echo "BIND=\"${BIND}\"" >> "${DEBCONF_TMPDIR}/debconf.default"
- if db_get cnt-debconf/overlay
+ if db_get container/overlay
then
CNT_OVERLAY="${RET}" # string (w/ empty)
fi
diff --git a/share/scripts/debconf.d/0003-debconf.templates b/share/scripts/debconf.d/0003-debconf.templates
index e3dbc24..3d607a7 100644
--- a/share/scripts/debconf.d/0003-debconf.templates
+++ b/share/scripts/debconf.d/0003-debconf.templates
@@ -1,8 +1,8 @@
-Template: cnt-debconf/title
+Template: container/title
Type: title
-Description: container-tools
+Description: compute-tools
-Template: cnt-debconf/mode
+Template: container/mode
Type: select
Default:
Choices-C: ${CHOICES_C}
@@ -10,7 +10,7 @@ Choices: ${CHOICES}
Description: Mode
Mode.
-Template: cnt-debconf/distribution
+Template: container/distribution
Type: select
Default:
Choices-C: ${CHOICES_C}
@@ -18,7 +18,7 @@ Choices: ${CHOICES}
Description: Distribution
Distribution.
-Template: cnt-debconf/parent-distribution
+Template: container/parent-distribution
Type: select
Default:
Choices-C: ${CHOICES_C}
@@ -26,7 +26,7 @@ Choices: ${CHOICES}
Description: for internal use; can be preseeded
Parent Distribution.
-Template: cnt-debconf/architecture
+Template: container/architecture
Type: select
Default:
Choices-C: ${CHOICES_C}
@@ -34,7 +34,7 @@ Choices: ${CHOICES}
Description: Architecture
Architecture.
-Template: cnt-debconf/archives
+Template: container/archives
Type: multiselect
Default:
Choices-C: ${CHOICES_C}
@@ -42,7 +42,7 @@ Choices: ${CHOICES}
Description: Archives
Archives.
-Template: cnt-debconf/parent-archives
+Template: container/parent-archives
Type: multiselect
Default:
Choices-C: ${CHOICES_C}
@@ -50,69 +50,69 @@ Choices: ${CHOICES}
Description: Parent Archives
Parent Archives.
-Template: cnt-debconf/mirror
+Template: container/mirror
Type: string
Default:
Description: Mirror
Mirror.
-Template: cnt-debconf/mirror-security
+Template: container/mirror-security
Type: string
Default:
Description: Mirror Security
Mirror Security.
-Template: cnt-debconf/parent-mirror
+Template: container/parent-mirror
Type: string
Default:
Description: Parent Mirror
Parent Mirror.
-Template: cnt-debconf/parent-mirror-security
+Template: container/parent-mirror-security
Type: string
Default:
Description: Parent Mirror Security
Parent Mirror Security.
-Template: cnt-debconf/archive-areas
+Template: container/archive-areas
Type: multiselect
Default:
Choices: ${CHOICES}
Description: Archive Areas
Archive Areas.
-Template: cnt-debconf/parent-archive-areas
+Template: container/parent-archive-areas
Type: multiselect
Default:
Choices: ${CHOICES}
Description: Parent Archive Areas
Parent Archive Areas.
-Template: cnt-debconf/packages
+Template: container/packages
Type: string
Default:
Description: Packages
Packages.
-Template: cnt-debconf/root-password
+Template: container/root-password
Type: string
Default:
Description: Root password
Root password.
-Template: cnt-debconf/network1/bridge
+Template: container/network1/bridge
Type: string
Default:
Description: Bridge
Bridge.
-Template: cnt-debconf/network1/veth
+Template: container/network1/veth
Type: string
Default:
Description: Veth name
Veth name.
-Template: cnt-debconf/network1/ipv4-method
+Template: container/network1/ipv4-method
Type: select
Choices: dhcp, static, none
Default:
@@ -122,7 +122,7 @@ Description: Ethernet Interface Method (IPv4)?
This defaults to dhcp and will require that you run a dhcp-server in your
network.
-Template: cnt-debconf/network1/ipv4-comment
+Template: container/network1/ipv4-comment
Type: string
Default:
Description: Ethernet Interface Comment (IPv4)?
@@ -130,7 +130,7 @@ Description: Ethernet Interface Comment (IPv4)?
.
This defaults to empty.
-Template: cnt-debconf/network1/ipv4-address
+Template: container/network1/ipv4-address
Type: string
Default:
Description: Ethernet IP Address (IPv4)?
@@ -138,7 +138,7 @@ Description: Ethernet IP Address (IPv4)?
.
This defaults to 192.168.1.2.
-Template: cnt-debconf/network1/ipv4-gateway
+Template: container/network1/ipv4-gateway
Type: string
Default:
Description: Ethernet Gateway Address (IPv4)?
@@ -146,7 +146,7 @@ Description: Ethernet Gateway Address (IPv4)?
.
This defaults to empty.
-Template: cnt-debconf/network1/ipv4-netmask
+Template: container/network1/ipv4-netmask
Type: string
Default:
Description: Ethernet Network Mask (IPv4)?
@@ -154,7 +154,7 @@ Description: Ethernet Network Mask (IPv4)?
.
This defaults to empty.
-Template: cnt-debconf/network1/ipv4-post-up
+Template: container/network1/ipv4-post-up
Type: string
Default:
Description: Ethernet post-up Command (IPv4)?
@@ -162,7 +162,7 @@ Description: Ethernet post-up Command (IPv4)?
.
This defaults to empty.
-Template: cnt-debconf/network1/ipv4-post-down
+Template: container/network1/ipv4-post-down
Type: string
Default:
Description: Ethernet post-down Command (IPv4)?
@@ -170,7 +170,7 @@ Description: Ethernet post-down Command (IPv4)?
.
This defaults to empty.
-Template: cnt-debconf/nameserver/server
+Template: container/nameserver/server
Type: string
Default:
Description: Nameserver Addresses?
@@ -178,7 +178,7 @@ Description: Nameserver Addresses?
.
This defaults to empty. Multiple nameservers can be separated by whitespace.
-Template: cnt-debconf/nameserver/domain
+Template: container/nameserver/domain
Type: string
Default:
Description: Nameserver Local Domain Name?
@@ -188,7 +188,7 @@ Description: Nameserver Local Domain Name?
.
This defaults to empty.
-Template: cnt-debconf/nameserver/search
+Template: container/nameserver/search
Type: string
Default:
Description: Nameserver Search List?
@@ -198,7 +198,7 @@ Description: Nameserver Search List?
.
This defaults to empty.
-Template: cnt-debconf/nameserver/options
+Template: container/nameserver/options
Type: string
Default:
Description: Nameserver Resolver Options?
diff --git a/share/scripts/debootstrap b/share/scripts/debootstrap
index 12f1b95..7910ac3 100755
--- a/share/scripts/debootstrap
+++ b/share/scripts/debootstrap
@@ -1,7 +1,6 @@
#!/bin/sh
-# container-tools - Manage systemd-nspawn containers
-# Copyright (C) 2014-2018 Daniel Baumann <daniel.baumann@open-infrastructure.net>
+# Copyright (C) 2014-2019 Daniel Baumann <daniel.baumann@open-infrastructure.net>
#
# SPDX-License-Identifier: GPL-3.0+
#
@@ -20,9 +19,11 @@
set -e
+PROJECT="open-infrastructure"
+PROGRAM="container"
SCRIPT="${0}"
-HOOKS="/etc/container-tools/hooks"
+HOOKS="/etc/${PROJECT}/${PROGRAM}/hooks"
MACHINES="/var/lib/machines"
Parameters ()
@@ -138,7 +139,7 @@ then
fi
ARCHITECTURE="${ARCHITECTURE:-$(dpkg --print-architecture)}"
-DISTRIBUTION="${DISTRIBUTION:-stretch}"
+DISTRIBUTION="${DISTRIBUTION:-buster}"
MIRROR="${MIRROR:-https://deb.debian.org/debian}"
PASSWORD="${PASSWORD:-$(dd if=/dev/urandom bs=12 count=1 2> /dev/null | base64)}"
diff --git a/share/sudo/container-tools b/share/sudo/container-shell
index cd3f74d..cd3f74d 100644
--- a/share/sudo/container-tools
+++ b/share/sudo/container-shell
diff --git a/share/systemd/container-auto.service b/share/systemd/container-auto.service
index 99decf6..4d7e10e 100644
--- a/share/systemd/container-auto.service
+++ b/share/systemd/container-auto.service
@@ -1,5 +1,5 @@
[Unit]
-Description=container-tools automatic start and stop
+Description=compute-tools automatic start and stop
Documentation=man:container-auto
After=network.target
diff --git a/share/systemd/container@.service b/share/systemd/container@.service
index 4a30ff6..9e9f720 100644
--- a/share/systemd/container@.service
+++ b/share/systemd/container@.service
@@ -1,6 +1,6 @@
[Unit]
Description="Container: %i"
-Documentation=man:container-tools
+Documentation=man:compute-tools
[Service]
Type=simple