Skip to content
This repository was archived by the owner on Jan 16, 2024. It is now read-only.

Commit 8d5542c

Browse files
ospalaxvholer
authored andcommitted
B #4439: fix Alpine networking
Signed-off-by: Petr Ospalý <pospaly@opennebula.systems>
1 parent cedee1c commit 8d5542c

1 file changed

Lines changed: 52 additions & 21 deletions

File tree

src/etc/one-context.d/loc-10-network##apk.one

Lines changed: 52 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -294,34 +294,65 @@ configure_network()
294294
deactivate_network()
295295
{
296296
. /etc/os-release
297-
if [ $ID = "ubuntu" ]; then
298-
IFACES=`/sbin/ifquery --list -a`
299297

300-
for i in $IFACES; do
301-
if [ $i != 'lo' ]; then
302-
/sbin/ifdown $i
303-
/sbin/ip addr flush dev $i
304-
fi
305-
done
306-
else
307-
service networking stop
308-
fi
298+
case "$ID" in
299+
'ubuntu')
300+
IFACES=$(/sbin/ifquery --list -a)
301+
302+
for i in $IFACES; do
303+
if [ $i != 'lo' ]; then
304+
/sbin/ifdown $i
305+
/sbin/ip addr flush dev $i
306+
fi
307+
done
308+
;;
309+
'alpine')
310+
service networking stop || true
311+
312+
#IFACES=$(ip a | \
313+
# sed -n 's#^[0-9]\+:[[:space:]]\+\([^:]\+\):[[:space:]].*#\1#p')
314+
315+
# took from find_ifaces in the networking service
316+
IFACES=$(\
317+
awk '$1 == "auto" {
318+
for (i = 2; i <= NF; i = i + 1) printf("%s ", $i)
319+
}' /etc/network/interfaces)
320+
321+
for i in $IFACES; do
322+
if [ $i != 'lo' ]; then
323+
/sbin/ip link set dev $i down || true
324+
/sbin/ip addr flush dev $i || true
325+
fi
326+
done
327+
;;
328+
*)
329+
service networking stop
330+
;;
331+
esac
309332
}
310333

311334
activate_network()
312335
{
313336
. /etc/os-release
314-
if [ $ID = "ubuntu" ]; then
315-
IFACES=`/sbin/ifquery --list -a`
316337

317-
for i in $IFACES; do
318-
/sbin/ifup $i
319-
done
320-
else
321-
service networking stop
322-
sleep 1
323-
service networking start
324-
fi
338+
case "$ID" in
339+
'ubuntu')
340+
IFACES=$(/sbin/ifquery --list -a)
341+
342+
for i in $IFACES; do
343+
/sbin/ifup $i
344+
done
345+
;;
346+
'alpine')
347+
deactivate_network
348+
service networking start
349+
;;
350+
*)
351+
service networking stop
352+
sleep 1
353+
service networking start
354+
;;
355+
esac
325356
}
326357

327358
[ $ACTION == "reconfigure" ] && deactivate_network

0 commit comments

Comments
 (0)