add check whether built package can be installed

This commit is contained in:
Marc Wäckerlin
2018-09-10 20:56:23 +00:00
parent 9f91a608f6
commit 4bc47ece67
3 changed files with 32 additions and 9 deletions

View File

@@ -264,7 +264,7 @@ case "$mode" in
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT// /- }- software-properties-common apt-transport-https dpkg-dev lsb-release wget || \
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT// /- }- python-software-properties apt-transport-https dpkg-dev lsb-release wget;
if [[ "${img}" =~ "ubuntu" ]]; then
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} locales
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT} locales
docker exec ${DOCKER_ID} locale-gen ${LANG}
docker exec ${DOCKER_ID} update-locale LANG=${LANG}
fi
@@ -273,16 +273,17 @@ case "$mode" in
docker exec ${DOCKER_ID} bash -c "echo 'Pin-Priority: -100' >> /etc/apt/preferences"
docker exec ${DOCKER_ID} bash -c "echo >> /etc/apt/preferences"
done
for key in "${keys[@]}"; do
wget -O- "$key" \
| docker exec -i ${DOCKER_ID} apt-key add -
done
if test -n "${keys[@]}"; then # fix dependency bug in cosmic and stretch
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT} gnupg
for key in "${keys[@]}"; do
wget -O- "$key" \
| docker exec -i ${DOCKER_ID} apt-key add -
done
fi
for repo in "${repos[@]}"; do
ifthenelse "${repo}" "apt-add-repository 'ARG'"
done
docker exec ${DOCKER_ID} apt-get update ${OPTIONS}
for package in "${packages[@]}"; do
ifthenelse "${package}" "apt-get install ${OPTIONS} ${PREVENT} ARG"
@@ -341,3 +342,16 @@ for f in "${flags[@]}"; do
done
docker exec -u $(id -u):$(id -g) ${DOCKER_ID} ./bootstrap.sh -t "${targets}" ${host} "${FLAGS[@]}"
# last check: try to install built deb or rpm files (if not already cleaned up)
if test "${targets//deb/}" != "${targets}"; then
if ls *.deb > /dev/null 2> /dev/null; then
docker exec ${DOCKER_ID} bash -c "apt-get install ${OPTIONS} ${PREVENT} /workdir/*.deb"
fi
fi
if test "${targets//rpm/}" != "${targets}"; then
if ls *.rpm > /dev/null 2> /dev/null; then
docker exec ${DOCKER_ID} bash -c "${INSTALL_TOOL} /workdir/*.rpm"
fi
fi
echo "done."