mirror of
https://github.com/YunoHost/package_check.git
synced 2024-09-03 20:06:20 +02:00
Auto fix dns during build
This commit is contained in:
parent
2be3388884
commit
41238598d3
1 changed files with 38 additions and 0 deletions
|
@ -119,6 +119,7 @@ sudo iptables -A FORWARD -i $main_iface -o $LXC_BRIDGE -j ACCEPT >> "$LOG_BUILD_
|
|||
sudo iptables -t nat -A POSTROUTING -s $PLAGE_IP.0/24 -j MASQUERADE >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
echo -e "\e[1m> Vérification du contenu du resolv.conf\e[0m" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo cp -a /var/lib/lxc/$LXC_NAME/rootfs/etc/resolv.conf /var/lib/lxc/$LXC_NAME/rootfs/etc/resolv.conf.origin
|
||||
if ! sudo cat /var/lib/lxc/$LXC_NAME/rootfs/etc/resolv.conf | grep -q nameserver; then
|
||||
dnsforce=1 # Le resolv.conf est vide, on force l'ajout d'un dns.
|
||||
sed -i "s/dnsforce=.*/dnsforce=$dnsforce/" "$pcheck_config"
|
||||
|
@ -135,6 +136,43 @@ sudo lxc-start -n $LXC_NAME -d --logfile "$script_dir/lxc_boot.log" >> "$LOG_BUI
|
|||
sleep 3
|
||||
sudo lxc-ls -f >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
echo -e "\e[1m> Test la configuration dns\e[0m" | tee -a "$LOG_BUILD_LXC"
|
||||
broken_dns=0
|
||||
while ! sudo lxc-attach -n $LXC_NAME -- getent hosts debian.org > /dev/null 2>&1
|
||||
do
|
||||
echo -e "\e[1m>>> The dns isn't working (Current dns = $(sudo cat /var/lib/lxc/$LXC_NAME/rootfs/etc/resolv.conf | grep nameserver |$
|
||||
|
||||
if [ $broken_dns -eq 2 ]
|
||||
then
|
||||
echo -e "\e[1m>>>The dns is still broken, use FDN dns\e[0m" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "nameserver 80.67.169.12" | sudo tee /var/lib/lxc/$LXC_NAME/rootfs/etc/resolv.conf
|
||||
dnsforce=0
|
||||
((broken_dns++))
|
||||
elif [ $dnsforce -eq 0 ]
|
||||
then
|
||||
echo -e "\e[1m>>>Force to use the dns from the config file\e[0m" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "nameserver $dns" | sudo tee /var/lib/lxc/$LXC_NAME/rootfs/etc/resolv.conf
|
||||
new_dns="$dns"
|
||||
dnsforce=1
|
||||
((broken_dns++))
|
||||
else
|
||||
echo -e "\e[1m>>>Force to use the default dns\e[0m" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo cp -a /var/lib/lxc/$LXC_NAME/rootfs/etc/resolv.conf.origin /var/lib/lxc/$LXC_NAME/rootfs/etc/resolv.conf
|
||||
new_dns="$(sudo cat /var/lib/lxc/$LXC_NAME/rootfs/etc/resolv.conf | grep nameserver | awk '{print $2}')"
|
||||
dnsforce=0
|
||||
((broken_dns++))
|
||||
fi
|
||||
echo -e "\e[1m>>> Try to use the dns address $new_dns\e[0m" | tee -a "$LOG_BUILD_LXC"
|
||||
|
||||
# Change the value of dnsforce into the config file
|
||||
sed -i "s/dnsforce=.*/dnsforce=$dnsforce/" "$pcheck_config"
|
||||
|
||||
if [ $broken_dns -eq 3 ]; then
|
||||
# Break the loop if all the possibilities have been tried.
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
echo -e "\e[1m> Update et install aptitude sudo git\e[0m" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo lxc-attach -n $LXC_NAME -- apt-get update
|
||||
sudo lxc-attach -n $LXC_NAME -- apt-get install -y aptitude sudo git ssh openssh-server
|
||||
|
|
Loading…
Add table
Reference in a new issue