summaryrefslogtreecommitdiffstats
path: root/share/doc/examples
diff options
context:
space:
mode:
Diffstat (limited to 'share/doc/examples')
-rw-r--r--share/doc/examples/bookworm.cfg35
-rwxr-xr-xshare/doc/examples/container-images.sh113
-rw-r--r--share/doc/examples/graograman-backports.cfg70
3 files changed, 218 insertions, 0 deletions
diff --git a/share/doc/examples/bookworm.cfg b/share/doc/examples/bookworm.cfg
new file mode 100644
index 0000000..1f878f4
--- /dev/null
+++ b/share/doc/examples/bookworm.cfg
@@ -0,0 +1,35 @@
+# example for automated Debian 12 (bookworm) based container building
+# using: sudo container build -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 bookworm
+#compute-tools container/parent-distribution select
+
+compute-tools container/architecture select auto
+
+compute-tools container/archives multiselect bookworm-security, bookworm-updates
+#compute-tools container/parent-archives multiselect
+
+compute-tools container/mirror string https://deb.debian.org/debian
+compute-tools container/mirror-security string https://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
new file mode 100755
index 0000000..b711048
--- /dev/null
+++ b/share/doc/examples/container-images.sh
@@ -0,0 +1,113 @@
+#!/bin/sh
+
+# Copyright (C) 2014-2022 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 <https://www.gnu.org/licenses/>.
+
+# Description: example for automated Debian base system container image builds
+# Requires: debootstrap plzip xz-utils sudo
+# Usage: ./container-images.sh
+
+set -e
+
+ARCHITECTURES="amd64 i386"
+DISTRIBUTIONS="buster bullseye bookworm sid"
+MIRROR="https://deb.debian.org/debian"
+INCLUDE="dbus"
+
+KEY="0x55CF1BF986ABB9C7"
+
+COMPRESSIONS="gz lz xz"
+
+DATE="$(date +%Y%m%d)"
+
+for DISTRIBUTION in ${DISTRIBUTIONS}
+do
+ for ARCHITECTURE in ${ARCHITECTURES}
+ do
+ TITLE="Debian ${DISTRIBUTION} ${DATE}/${ARCHITECTURE}"
+ SYSTEM="debian-${DISTRIBUTION}-${DATE}_${ARCHITECTURE}"
+
+ sudo debootstrap --arch=${ARCHITECTURE} --include=${INCLUDE} ${DISTRIBUTION} ${SYSTEM} ${MIRROR}
+ sudo chroot "${SYSTEM}" apt-get clean
+
+ VERSION="$(cat ${SYSTEM}/etc/debian_version)"
+
+ case "${VERSION}" in
+ [0-9]*)
+ TITLE="Debian ${VERSION} (${DISTRIBUTION}) ${DATE}/${ARCHITECTURE}"
+ SYSTEM="debian-${VERSION}-${DATE}_${ARCHITECTURE}"
+
+ sudo mv "debian-${DISTRIBUTION}-${DATE}_${ARCHITECTURE}" "${SYSTEM}"
+ ;;
+ esac
+
+ sudo rm -f "${SYSTEM}/etc/apt/apt.conf.d/01autoremove-kernels"
+ sudo rm -f "${SYSTEM}/etc/hostname"
+ sudo rm -f "${SYSTEM}/etc/machine-id"
+ sudo rm -f "${SYSTEM}/etc/resolv.conf"
+ sudo rm -f "${SYSTEM}/var/lib/systemd/catalog/database"
+
+ for COMPRESSION in ${COMPRESSIONS}
+ do
+ case "${COMPRESSION}" in
+ gz)
+ TAR_OPTIONS="--gzip"
+ ;;
+
+ lz)
+ TAR_OPTIONS="--lzip"
+ ;;
+
+ xz)
+ TAR_OPTIONS="--xz"
+ ;;
+ esac
+
+ echo "Building ${SYSTEM}.system.tar.${COMPRESSION}"
+ sudo tar ${TAR_OPTIONS} -cf "${SYSTEM}.system.tar.${COMPRESSION}" "${SYSTEM}"
+
+ echo "Building ${SYSTEM}.system.tar.${COMPRESSION}.sha512"
+ sha512sum "${SYSTEM}.system.tar.${COMPRESSION}" > "${SYSTEM}.system.tar.${COMPRESSION}.sha512"
+
+ if [ -n "${KEY}" ]
+ then
+ echo "Building ${SYSTEM}.system.tar.${COMPRESSION}.sig"
+ gpg -a -b --default-key ${KEY} ${SYSTEM}.system.tar.${COMPRESSION}
+ mv "${SYSTEM}.system.tar.${COMPRESSION}.asc" "${SYSTEM}.system.tar.${COMPRESSION}.sig"
+ fi
+
+ echo "Building ${SYSTEM}.system.tar.${COMPRESSION} symlink"
+ ln -sf "${SYSTEM}.system.tar.${COMPRESSION}" "$(echo ${SYSTEM}.system.tar.${COMPRESSION} | sed -e "s|${DATE}|current|")"
+
+ echo "Building ${SYSTEM}.system.tar.${COMPRESSION}.sha512 copy"
+ sed -e "s|${DATE}|current|" "${SYSTEM}.system.tar.${COMPRESSION}.sha512" > "$(echo ${SYSTEM}.system.tar.${COMPRESSION}.sha512 | sed -e "s|${DATE}|current|")"
+
+ if [ -e "${SYSTEM}.system.tar.${COMPRESSION}.sig" ]
+ then
+ echo "Building ${SYSTEM}.system.tar.${COMPRESSION}.sig copy"
+ cp "${SYSTEM}.system.tar.${COMPRESSION}.sig" "$(echo ${SYSTEM}.system.tar.${COMPRESSION}.sig | sed -e "s|${DATE}|current|")"
+ fi
+ done
+
+ sudo rm -rf "${SYSTEM}"
+
+cat >> container-list.txt << EOF
+${SYSTEM}.system.tar | ${TITLE}
+EOF
+
+ done
+done
diff --git a/share/doc/examples/graograman-backports.cfg b/share/doc/examples/graograman-backports.cfg
new file mode 100644
index 0000000..d1d2640
--- /dev/null
+++ b/share/doc/examples/graograman-backports.cfg
@@ -0,0 +1,70 @@
+# example for automated Progress Linux 7.99 (graograman-backports) container building
+# using: sudo container build -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 graograman-backports
+#compute-tools container/parent-distribution select
+
+compute-tools container/architecture select auto
+
+compute-tools container/archives multiselect graograman-security, graograman-updates, graograman-extras, graograman-backports, graograman-backports-extras
+#compute-tools container/parent-archives multiselect
+
+compute-tools container/mirror string https://deb.progress-linux.org/packages
+compute-tools container/mirror-security string https://deb.progress-linux.org/packages
+
+compute-tools container/parent-mirror string https://deb.debian.org/debian
+compute-tools container/parent-mirror-security string https://security.debian.org
+
+compute-tools container/archive-areas multiselect main, contrib, non-free, non-free-firmware
+compute-tools container/parent-archive-areas multiselect main, contrib, non-free, non-free-firmware
+
+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