mirror of
https://gitlab.archlinux.org/tpowa/archboot.git
synced 2024-09-20 03:50:37 +02:00
create archive on server release and exit 1 ón more points
This commit is contained in:
parent
8322cbfbb9
commit
29daa1627c
4 changed files with 38 additions and 27 deletions
|
@ -34,14 +34,14 @@ archboot-${_ARCH}-create-container.sh "${_W_DIR}" -cc -cp || exit 1
|
||||||
# generate tarball in container, umount tmp it's a tmpfs and weird things could happen then
|
# generate tarball in container, umount tmp it's a tmpfs and weird things could happen then
|
||||||
echo "Generate ISO ..."
|
echo "Generate ISO ..."
|
||||||
# generate iso in container
|
# generate iso in container
|
||||||
systemd-nspawn -q -D "${_W_DIR}" /bin/bash -c "umount /tmp;archboot-${_ARCH}-iso.sh -g"
|
systemd-nspawn -q -D "${_W_DIR}" /bin/bash -c "umount /tmp;archboot-${_ARCH}-iso.sh -g" || exit 1
|
||||||
# remove not working lvm2 from latest image
|
# remove not working lvm2 from latest image
|
||||||
echo "Remove lvm2 and openssh from container ${_W_DIR} ..."
|
echo "Remove lvm2 and openssh from container ${_W_DIR} ..."
|
||||||
systemd-nspawn -D "${_W_DIR}" /bin/bash -c "pacman -Rdd lvm2 openssh --noconfirm" >/dev/null 2>&1
|
systemd-nspawn -D "${_W_DIR}" /bin/bash -c "pacman -Rdd lvm2 openssh --noconfirm" >/dev/null 2>&1
|
||||||
# generate latest tarball in container
|
# generate latest tarball in container
|
||||||
echo "Generate latest ISO ..."
|
echo "Generate latest ISO ..."
|
||||||
# generate latest iso in container
|
# generate latest iso in container
|
||||||
systemd-nspawn -q -D "${_W_DIR}" /bin/bash -c "umount /tmp;archboot-${_ARCH}-iso.sh -g -p=${_PRESET_LATEST} -r=$(date +%Y.%m.%d-%H.%M)-latest"
|
systemd-nspawn -q -D "${_W_DIR}" /bin/bash -c "umount /tmp;archboot-${_ARCH}-iso.sh -g -p=${_PRESET_LATEST} -r=$(date +%Y.%m.%d-%H.%M)-latest" || exit 1
|
||||||
# create Release.txt with included main archlinux packages
|
# create Release.txt with included main archlinux packages
|
||||||
echo "Generate Release.txt ..."
|
echo "Generate Release.txt ..."
|
||||||
(echo "Welcome to ARCHBOOT INSTALLATION / RESCUEBOOT SYSTEM";\
|
(echo "Welcome to ARCHBOOT INSTALLATION / RESCUEBOOT SYSTEM";\
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
#! /bin/bash
|
#! /bin/bash
|
||||||
_DIRECTORY="$(date +%Y.%m)"
|
_DIRECTORY="$(date +%Y.%m)"
|
||||||
_ARCH="aarch64"
|
_ARCH="aarch64"
|
||||||
_BUILDDIR="/home/tobias/Arch/iso/${_ARCH}"
|
_ISODIR="/home/tobias/Arch/iso/${_ARCH}"
|
||||||
|
_BUILDDIR="$(mktemp -d ${_ISODIR}/server-release.XXX)"
|
||||||
_SERVER="pkgbuild.com"
|
_SERVER="pkgbuild.com"
|
||||||
_SERVER_HOME="/home/tpowa/"
|
_SERVER_HOME="/home/tpowa/"
|
||||||
_SERVER_DIR="/home/tpowa/public_html/archboot-images"
|
_SERVER_DIR="/home/tpowa/public_html/archboot-images"
|
||||||
|
@ -38,7 +39,7 @@ echo "Removing installation tarball ..."
|
||||||
rm ${_PACMAN_AARCH64_CHROOT}{,.sig} >/dev/null 2>&1
|
rm ${_PACMAN_AARCH64_CHROOT}{,.sig} >/dev/null 2>&1
|
||||||
# update container to latest packages
|
# update container to latest packages
|
||||||
echo "Update container to latest packages..."
|
echo "Update container to latest packages..."
|
||||||
systemd-nspawn -D "${_PACMAN_AARCH64}" pacman -Syu --noconfirm >/dev/null 2>&1
|
systemd-nspawn -D "${_PACMAN_AARCH64}" pacman -Syu --noconfirm >/dev/null 2>&1 || exit 1
|
||||||
# remove package cache
|
# remove package cache
|
||||||
echo "Remove package cache from container ..."
|
echo "Remove package cache from container ..."
|
||||||
systemd-nspawn -D "${_PACMAN_AARCH64}" pacman -Scc --noconfirm >/dev/null 2>&1
|
systemd-nspawn -D "${_PACMAN_AARCH64}" pacman -Scc --noconfirm >/dev/null 2>&1
|
||||||
|
@ -59,15 +60,15 @@ echo "Finished container tarball."
|
||||||
sudo -u "${_USER}" gpg ${_GPG} "${_PACMAN_AARCH64_CHROOT}"
|
sudo -u "${_USER}" gpg ${_GPG} "${_PACMAN_AARCH64_CHROOT}"
|
||||||
chown "${_USER}" ${_PACMAN_AARCH64_CHROOT}{,.sig}
|
chown "${_USER}" ${_PACMAN_AARCH64_CHROOT}{,.sig}
|
||||||
chgrp "${_GROUP}" ${_PACMAN_AARCH64_CHROOT}{,.sig}
|
chgrp "${_GROUP}" ${_PACMAN_AARCH64_CHROOT}{,.sig}
|
||||||
sudo -u "${_USER}" scp ${_PACMAN_AARCH64_CHROOT}{,.sig} ${_SERVER}:${_PACMAN_AARCH_SERVERDIR}
|
sudo -u "${_USER}" scp ${_PACMAN_AARCH64_CHROOT}{,.sig} ${_SERVER}:${_PACMAN_AARCH_SERVERDIR} || exit 1
|
||||||
# create release in "${_BUILDDIR}"
|
# create release in "${_ISODIR}"
|
||||||
cd "${_BUILDDIR}" || exit 1
|
cd "${_ISODIR}" || exit 1
|
||||||
[[ -e "${_DIRECTORY}" ]] && rm -r "${_DIRECTORY}"
|
"archboot-${_ARCH}-release.sh" "${_BUILDDIR}" || (rm -r "${_BUILDDIR}"; exit 1)
|
||||||
archboot-"${_ARCH}"-release.sh "${_DIRECTORY}" || exit 1
|
|
||||||
# set user rights on files
|
# set user rights on files
|
||||||
chown -R "${_USER}" "${_DIRECTORY}"
|
# set user rights on files
|
||||||
chgrp -R "${_GROUP}" "${_DIRECTORY}"
|
chown -R "${_USER}" "${_BUILDDIR}"
|
||||||
cd "${_DIRECTORY}" || exit 1
|
chgrp -R "${_GROUP}" "${_BUILDDIR}"
|
||||||
|
cd "${_BUILDDIR}" || exit 1
|
||||||
# remove sha256sum and install image
|
# remove sha256sum and install image
|
||||||
rm sha256sum.txt
|
rm sha256sum.txt
|
||||||
# sign files and create new sha256sum.txt
|
# sign files and create new sha256sum.txt
|
||||||
|
@ -84,8 +85,12 @@ for i in boot/*; do
|
||||||
[[ -f "${i}.sig" ]] && cksum -a sha256 "${i}.sig" >> sha256sum.txt
|
[[ -f "${i}.sig" ]] && cksum -a sha256 "${i}.sig" >> sha256sum.txt
|
||||||
done
|
done
|
||||||
cd ..
|
cd ..
|
||||||
|
[[ -d "archive" ]] || mkdir archive
|
||||||
|
[[ -d "archive/${_DIRECTORY}" ]] && rm -r "archive/${_DIRECTORY}"
|
||||||
|
[[ -d "${_DIRECTORY}" ]] && mv "${_DIRECTORY}" archive/
|
||||||
|
mv "${_BUILDDIR}" "${_DIRECTORY}"
|
||||||
# copy files to server
|
# copy files to server
|
||||||
sudo -u "${_USER}" scp -r "${_DIRECTORY}" "${_SERVER}":"${_SERVER_HOME}"
|
sudo -u "${_USER}" scp -r "${_DIRECTORY}" "${_SERVER}":"${_SERVER_HOME}" || exit 1
|
||||||
# move files on server, create symlink and remove 3 month old release
|
# move files on server, create symlink and remove 3 month old release
|
||||||
sudo -u "${_USER}" ssh "${_SERVER}" <<EOF
|
sudo -u "${_USER}" ssh "${_SERVER}" <<EOF
|
||||||
rm -r "${_SERVER_DIR}"/"${_ARCH}"/"${_DIRECTORY}"
|
rm -r "${_SERVER_DIR}"/"${_ARCH}"/"${_DIRECTORY}"
|
||||||
|
|
|
@ -40,14 +40,14 @@ archboot-${_ARCH}-create-container.sh "${_W_DIR}" -cc -cp || exit 1
|
||||||
# generate tarball in container, umount tmp it's a tmpfs and weird things could happen then
|
# generate tarball in container, umount tmp it's a tmpfs and weird things could happen then
|
||||||
echo "Generate ISO ..."
|
echo "Generate ISO ..."
|
||||||
# generate iso in container
|
# generate iso in container
|
||||||
systemd-nspawn -q -D "${_W_DIR}" /bin/bash -c "umount /tmp;archboot-${_ARCH}-iso.sh -g"
|
systemd-nspawn -q -D "${_W_DIR}" /bin/bash -c "umount /tmp;archboot-${_ARCH}-iso.sh -g" || exit 1
|
||||||
# remove not working lvm2 from latest image
|
# remove not working lvm2 from latest image
|
||||||
echo "Remove lvm2 and openssh from container ${_W_DIR} ..."
|
echo "Remove lvm2 and openssh from container ${_W_DIR} ..."
|
||||||
systemd-nspawn -D "${_W_DIR}" /bin/bash -c "pacman -Rdd lvm2 openssh --noconfirm" >/dev/null 2>&1
|
systemd-nspawn -D "${_W_DIR}" /bin/bash -c "pacman -Rdd lvm2 openssh --noconfirm" >/dev/null 2>&1
|
||||||
# generate latest tarball in container
|
# generate latest tarball in container
|
||||||
echo "Generate latest ISO ..."
|
echo "Generate latest ISO ..."
|
||||||
# generate latest iso in container
|
# generate latest iso in container
|
||||||
systemd-nspawn -q -D "${_W_DIR}" /bin/bash -c "umount /tmp;archboot-${_ARCH}-iso.sh -g -p=${_PRESET_LATEST} -r=$(date +%Y.%m.%d-%H.%M)-latest"
|
systemd-nspawn -q -D "${_W_DIR}" /bin/bash -c "umount /tmp;archboot-${_ARCH}-iso.sh -g -p=${_PRESET_LATEST} -r=$(date +%Y.%m.%d-%H.%M)-latest" || exit 1
|
||||||
# create Release.txt with included main archlinux packages
|
# create Release.txt with included main archlinux packages
|
||||||
echo "Generate Release.txt ..."
|
echo "Generate Release.txt ..."
|
||||||
(echo "Welcome to _ARCHBOOT INSTALLATION / RESCUEBOOT SYSTEM";\
|
(echo "Welcome to _ARCHBOOT INSTALLATION / RESCUEBOOT SYSTEM";\
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
#! /bin/bash
|
#! /bin/bash
|
||||||
_DIRECTORY="$(date +%Y.%m)"
|
_DIRECTORY="$(date +%Y.%m)"
|
||||||
_ARCH="x86_64"
|
_ARCH="x86_64"
|
||||||
_BUILDDIR="/home/tobias/Arch/iso/${_ARCH}"
|
_ISODIR="/home/tobias/Arch/iso/${_ARCH}"
|
||||||
|
_BUILDDIR="$(mktemp -d ${_ISODIR}/server-release.XXX)"
|
||||||
_PACMAN_MIRROR="/etc/pacman.d/mirrorlist"
|
_PACMAN_MIRROR="/etc/pacman.d/mirrorlist"
|
||||||
_PACMAN_CONF="/etc/pacman.conf"
|
_PACMAN_CONF="/etc/pacman.conf"
|
||||||
_SERVER="pkgbuild.com"
|
_SERVER="pkgbuild.com"
|
||||||
|
@ -29,14 +30,18 @@ cp "${_PACMAN_CONF}".archboot "${_PACMAN_CONF}"
|
||||||
# use mirrorlist with enabled rackspace mirror
|
# use mirrorlist with enabled rackspace mirror
|
||||||
cp "${_PACMAN_MIRROR}" "${_PACMAN_MIRROR}".old
|
cp "${_PACMAN_MIRROR}" "${_PACMAN_MIRROR}".old
|
||||||
cp "${_PACMAN_MIRROR}".archboot "${_PACMAN_MIRROR}"
|
cp "${_PACMAN_MIRROR}".archboot "${_PACMAN_MIRROR}"
|
||||||
# create release in "${_BUILDDIR}"
|
# create release in "${_ISODIR}"
|
||||||
cd "${_BUILDDIR}" || exit 1
|
cd "${_ISODIR}" || exit 1
|
||||||
[[ -e "${_DIRECTORY}" ]] && rm -r "${_DIRECTORY}"
|
"archboot-${_ARCH}-release.sh" "${_BUILDDIR}" ||\
|
||||||
"archboot-${_ARCH}-release.sh" "${_DIRECTORY}" || exit 1
|
(rm -r "${_BUILDDIR}"; cp "${_PACMAN_MIRROR}".old "${_PACMAN_MIRROR}";\
|
||||||
|
cp "${_PACMAN_CONF}".old "${_PACMAN_CONF}"; exit 1)
|
||||||
|
# restore pacman.conf and mirrorlist
|
||||||
|
cp "${_PACMAN_MIRROR}".old "${_PACMAN_MIRROR}"
|
||||||
|
cp "${_PACMAN_CONF}".old "${_PACMAN_CONF}"
|
||||||
# set user rights on files
|
# set user rights on files
|
||||||
chown -R "${_USER}" "${_DIRECTORY}"
|
chown -R "${_USER}" "${_BUILDDIR}"
|
||||||
chgrp -R "${_GROUP}" "${_DIRECTORY}"
|
chgrp -R "${_GROUP}" "${_BUILDDIR}"
|
||||||
cd "${_DIRECTORY}" || exit 1
|
cd "${_BUILDDIR}" || exit 1
|
||||||
# remove sha256sum
|
# remove sha256sum
|
||||||
rm sha256sum.txt
|
rm sha256sum.txt
|
||||||
# sign files and create new sha256sum.txt
|
# sign files and create new sha256sum.txt
|
||||||
|
@ -53,11 +58,12 @@ for i in boot/*; do
|
||||||
[[ -f "${i}.sig" ]] && cksum -a sha256 "${i}.sig" >> sha256sum.txt
|
[[ -f "${i}.sig" ]] && cksum -a sha256 "${i}.sig" >> sha256sum.txt
|
||||||
done
|
done
|
||||||
cd ..
|
cd ..
|
||||||
# restore pacman.conf and mirrorlist
|
[[ -d "archive" ]] || mkdir archive
|
||||||
cp "${_PACMAN_MIRROR}".old "${_PACMAN_MIRROR}"
|
[[ -d "archive/${_DIRECTORY}" ]] && rm -r "archive/${_DIRECTORY}"
|
||||||
cp "${_PACMAN_CONF}".old "${_PACMAN_CONF}"
|
[[ -d "${_DIRECTORY}" ]] && mv "${_DIRECTORY}" archive/
|
||||||
|
mv "${_BUILDDIR}" "${_DIRECTORY}"
|
||||||
# copy files to server
|
# copy files to server
|
||||||
sudo -u "${_USER}" scp -r "${_DIRECTORY}" "${_SERVER}":"${_SERVER_HOME}"
|
sudo -u "${_USER}" scp -r "${_DIRECTORY}" "${_SERVER}":"${_SERVER_HOME}" || exit 1
|
||||||
# move files on server, create symlink and remove 3 month old release
|
# move files on server, create symlink and remove 3 month old release
|
||||||
sudo -u "${_USER}" ssh "${_SERVER}" <<EOF
|
sudo -u "${_USER}" ssh "${_SERVER}" <<EOF
|
||||||
rm -r "${_SERVER_DIR}"/"${_ARCH}"/"${_DIRECTORY}"
|
rm -r "${_SERVER_DIR}"/"${_ARCH}"/"${_DIRECTORY}"
|
||||||
|
|
Loading…
Reference in a new issue