Fix networking for CentOS 8

By default network-scripts package isn't installed, so the directories
for these files don't exist either.  Skip by default for Centos 8.

Change-Id: I194ec3735e17f27e586386541dc51f775b01e510
This commit is contained in:
Ian Wienand 2019-09-25 05:43:01 +00:00
parent 643415f366
commit 314b11b6dd
3 changed files with 20 additions and 9 deletions

View File

@ -6,9 +6,11 @@ Create a minimal image based on CentOS
Use of this element will require 'yum' and 'yum-utils' to be installed on Use of this element will require 'yum' and 'yum-utils' to be installed on
Ubuntu and Debian. Nothing additional is needed on Fedora or CentOS. Ubuntu and Debian. Nothing additional is needed on Fedora or CentOS.
By default, ``DIB_YUM_MINIMAL_CREATE_INTERFACES`` is set to enable the For CentOS 7, by default, ``DIB_YUM_MINIMAL_CREATE_INTERFACES`` is set
creation of ``/etc/sysconfig/network-scripts/ifcfg-eth[0|1]`` scripts to to enable the creation of
enable DHCP on the ``eth0`` & ``eth1`` interfaces. If you do not have ``/etc/sysconfig/network-scripts/ifcfg-eth[0|1]`` scripts to enable
these interfaces, or if you are using something else to setup the DHCP on the ``eth0`` & ``eth1`` interfaces. If you do not have these
network such as cloud-init, glean or network-manager, you would want interfaces, or if you are using something else to setup the network
to set this to ``0``. such as cloud-init, glean or network-manager, you would want to set
this to ``0``. For CentOS 8, this is set to ``0`` by default as the
system uses NetworkManager by default.

View File

@ -2,5 +2,10 @@ export DISTRO_NAME=centos
export DIB_RELEASE=${DIB_RELEASE:-7} export DIB_RELEASE=${DIB_RELEASE:-7}
# by default, enable DHCP configuration of eth0 & eth1 in network # by default, enable DHCP configuration of eth0 & eth1 in network
# scripts. See yum-minimal for full details # scripts for centos 7. See yum-minimal for full details. CentOS 8
# does not come with network-scripts by default so avoid this there.
if [[ ${DIB_RELEASE} -le 7 ]]; then
export DIB_YUM_MINIMAL_CREATE_INTERFACES=${DIB_YUM_MINIMAL_CREATE_INTERFACES:-1} export DIB_YUM_MINIMAL_CREATE_INTERFACES=${DIB_YUM_MINIMAL_CREATE_INTERFACES:-1}
else
export DIB_YUM_MINIMAL_CREATE_INTERFACES=${DIB_YUM_MINIMAL_CREATE_INTERFACES:-0}
fi

View File

@ -16,8 +16,12 @@ case "$DIB_INIT_SYSTEM" in
if [[ ${DIB_SIMPLE_INIT_NETWORKMANAGER} != 1 ]]; then if [[ ${DIB_SIMPLE_INIT_NETWORKMANAGER} != 1 ]]; then
# NOTE(pabelanger): Glean requires network.service for # NOTE(pabelanger): Glean requires network.service for
# these platforms when not using networkmanager # these platforms when not using networkmanager
if [[ ${DIB_RELEASE} -lt 8 ]]; then
# Not available on Centos 8
# NOTE(ianw) we should evaluate if Fedora needs this
systemctl enable network.service systemctl enable network.service
fi fi
fi
elif [[ ${DISTRO_NAME} =~ (opensuse) ]]; then elif [[ ${DISTRO_NAME} =~ (opensuse) ]]; then
# on suse, this is named wicked.service, but it's the same # on suse, this is named wicked.service, but it's the same
# as network.service. # as network.service.