mirror of
https://github.com/fsquillace/junest.git
synced 2026-07-28 13:34:00 +00:00
Improve the validation function
This commit is contained in:
parent
9ae8bf787c
commit
ad19933d00
1 changed files with 20 additions and 19 deletions
39
lib/core.sh
39
lib/core.sh
|
|
@ -322,7 +322,8 @@ function build_image_juju(){
|
|||
info "Compressing image to ${imagefile}..."
|
||||
sudo $TAR -zcpf ${imagefile} -C ${maindir}/root .
|
||||
|
||||
$disable_validation || validate_image "${maindir}" "${imagefile}"
|
||||
mkdir -p ${maindir}/root_test
|
||||
$disable_validation || validate_image "${maindir}/root_test" "${imagefile}"
|
||||
|
||||
sudo cp ${maindir}/output/${imagefile} ${ORIGIN_WD}
|
||||
|
||||
|
|
@ -332,34 +333,34 @@ function build_image_juju(){
|
|||
}
|
||||
|
||||
function validate_image(){
|
||||
local maindir=$1
|
||||
local testdir=$1
|
||||
local imagefile=$2
|
||||
info "Validating JuJu image..."
|
||||
mkdir -p ${maindir}/root_test
|
||||
$TAR -zxpf ${imagefile} -C ${maindir}/root_test
|
||||
mkdir -p ${maindir}/root_test/run/lock
|
||||
sed -i -e "s/#Server/Server/" ${maindir}/root_test/etc/pacman.d/mirrorlist
|
||||
${maindir}/root/opt/proot/proot-$ARCH -S ${maindir}/root_test pacman --noconfirm -Syy
|
||||
$TAR -zxpf ${imagefile} -C ${testdir}
|
||||
mkdir -p ${testdir}/run/lock
|
||||
sed -i -e "s/#Server/Server/" ${testdir}/etc/pacman.d/mirrorlist
|
||||
JUJU_HOME=${testdir} ${testdir}/opt/juju/bin/juju -f pacman --noconfirm -Syy
|
||||
|
||||
sudo ${maindir}/root/usr/bin/arch-chroot ${maindir}/root_test pacman -Qi pacman 1> /dev/null
|
||||
sudo ${maindir}/root/usr/bin/arch-chroot ${maindir}/root_test yaourt -V 1> /dev/null
|
||||
sudo ${maindir}/root/usr/bin/arch-chroot ${maindir}/root_test /opt/proot/proot-$ARCH --help 1> /dev/null
|
||||
sudo ${maindir}/root/usr/bin/arch-chroot ${maindir}/root_test arch-chroot --help 1> /dev/null
|
||||
# Check most basic executables work
|
||||
JUJU_HOME=${testdir} sudo ${testdir}/opt/juju/bin/juju -r pacman -Qi pacman 1> /dev/null
|
||||
JUJU_HOME=${testdir} sudo ${testdir}/opt/juju/bin/juju -r yaourt -V 1> /dev/null
|
||||
JUJU_HOME=${testdir} sudo ${testdir}/opt/juju/bin/juju -r /opt/proot/proot-$ARCH --help 1> /dev/null
|
||||
JUJU_HOME=${testdir} sudo ${testdir}/opt/juju/bin/juju -r arch-chroot --help 1> /dev/null
|
||||
|
||||
${maindir}/root/opt/proot/proot-$ARCH -S ${maindir}/root_test pacman --noconfirm -S base-devel
|
||||
JUJU_HOME=${testdir} ${testdir}/opt/juju/bin/juju -f pacman --noconfirm -S base-devel
|
||||
local yaourt_package=tcptraceroute
|
||||
info "Installing ${yaourt_package} package from AUR repo using proot..."
|
||||
${maindir}/root/opt/proot/proot-$ARCH -S ${maindir}/root_test sh --login -c "yaourt --noconfirm -S ${yaourt_package}"
|
||||
sudo ${maindir}/root/usr/bin/arch-chroot ${maindir}/root_test tcptraceroute localhost
|
||||
JUJU_HOME=${testdir} ${testdir}/opt/juju/bin/juju -f sh --login -c "yaourt --noconfirm -S ${yaourt_package}"
|
||||
JUJU_HOME=${testdir} sudo ${testdir}/opt/juju/bin/juju -r tcptraceroute localhost
|
||||
|
||||
local repo_package=sysstat
|
||||
info "Installing ${repo_package} package from official repo using proot..."
|
||||
${maindir}/root/opt/proot/proot-$ARCH -S ${maindir}/root_test pacman --noconfirm -S ${repo_package}
|
||||
${maindir}/root/opt/proot/proot-$ARCH -R ${maindir}/root_test iostat
|
||||
${maindir}/root/opt/proot/proot-$ARCH -S ${maindir}/root_test iostat
|
||||
JUJU_HOME=${testdir} ${testdir}/opt/juju/bin/juju -f pacman --noconfirm -S ${repo_package}
|
||||
JUJU_HOME=${testdir} ${testdir}/opt/juju/bin/juju iostat
|
||||
JUJU_HOME=${testdir} ${testdir}/opt/juju/bin/juju -f iostat
|
||||
|
||||
local repo_package=iftop
|
||||
info "Installing ${repo_package} package from official repo using root..."
|
||||
${maindir}/root/opt/proot/proot-$ARCH -S ${maindir}/root_test pacman --noconfirm -S ${repo_package}
|
||||
sudo ${maindir}/root/usr/bin/arch-chroot ${maindir}/root_test iftop -t -s 5
|
||||
JUJU_HOME=${testdir} ${testdir}/opt/juju/bin/juju -f pacman --noconfirm -S ${repo_package}
|
||||
JUJU_HOME=${testdir} sudo ${testdir}/opt/juju/bin/juju -r iftop -t -s 5
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue