|
Lines 24-29
lxc_get_var() {
Link Here
|
| 24 |
awk 'BEGIN { FS="[ \t]*=[ \t]*" } $1 == "'$1'" { print $2; exit }' ${CONFIGFILE} |
24 |
awk 'BEGIN { FS="[ \t]*=[ \t]*" } $1 == "'$1'" { print $2; exit }' ${CONFIGFILE} |
| 25 |
} |
25 |
} |
| 26 |
|
26 |
|
|
|
27 |
lxc_get_net_link_type() { |
| 28 |
awk 'BEGIN { FS="[ \t]*=[ \t]*"; _link=""; _type="" } |
| 29 |
$1 == "lxc.network.type" {_type=$2;} |
| 30 |
$1 == "lxc.network.link" {_link=$2;} |
| 31 |
{if(_link != "" && _type != ""){ |
| 32 |
printf("%s:%s\n", _link, _type ); |
| 33 |
_link=""; _type=""; |
| 34 |
}; }' <${CONFIGFILE} |
| 35 |
} |
| 36 |
|
| 27 |
checkconfig() { |
37 |
checkconfig() { |
| 28 |
if [ ${CONTAINER} = ${SVCNAME} ]; then |
38 |
if [ ${CONTAINER} = ${SVCNAME} ]; then |
| 29 |
eerror "You have to create an init script for each container:" |
39 |
eerror "You have to create an init script for each container:" |
|
Lines 50-73
depend() {
Link Here
|
| 50 |
config ${CONFIGFILE} |
60 |
config ${CONFIGFILE} |
| 51 |
need localmount |
61 |
need localmount |
| 52 |
|
62 |
|
| 53 |
# find out which network interface the container is linked to, |
63 |
local _x _if |
| 54 |
# and then require that to be enabled, so that the |
64 |
for _x in $(lxc_get_net_link_type); do |
| 55 |
# dependencies are correct. |
65 |
_if=${_x%:*} |
| 56 |
netif=$(lxc_get_var lxc.network.link) |
66 |
case "${_x##*:}" in |
| 57 |
|
67 |
# when the network type is set to phys, we can make use of a |
| 58 |
# when the network type is set to phys, we can make use of a |
68 |
# network service (for instance to set it up before we disable |
| 59 |
# network service (for instance to set it up before we disable |
69 |
# the net_admin capability), but we might also not set it up |
| 60 |
# the net_admin capability), but we might also not set it up |
70 |
# at all on the host and leave the net_admin capable service |
| 61 |
# at all on the host and leave the net_admin capable service |
71 |
# to take care of it. |
| 62 |
# to take care of it. |
72 |
phys) use net.${_if} ;; |
| 63 |
nettype=$(lxc_get_var lxc.network.type) |
73 |
*) need net.${_if} ;; |
| 64 |
|
74 |
esac |
| 65 |
if [ -n "${netif}" ]; then |
75 |
done |
| 66 |
case "${nettype}" in |
|
|
| 67 |
phys) use net.${netif} ;; |
| 68 |
*) need net.${netif} ;; |
| 69 |
esac |
| 70 |
fi |
| 71 |
} |
76 |
} |
| 72 |
|
77 |
|
| 73 |
start() { |
78 |
start() { |