From 4711eff229b7e1a7f6833296338add2cde174e04 Mon Sep 17 00:00:00 2001 From: Maru Newby Date: Wed, 1 Jul 2015 11:16:20 -0700 Subject: [PATCH] Vagrant: Make F21 fixup conditional The default Fedora 21 image requires some manual networking fixup that breaks Fedora 22. This change ensures that the fixup in question is run only for Fedora 21. --- cluster/vagrant/provision-master.sh | 20 +++++++++++--------- cluster/vagrant/provision-minion.sh | 18 ++++++++++-------- 2 files changed, 21 insertions(+), 17 deletions(-) diff --git a/cluster/vagrant/provision-master.sh b/cluster/vagrant/provision-master.sh index cbf0205edfb..60ed9b0276c 100755 --- a/cluster/vagrant/provision-master.sh +++ b/cluster/vagrant/provision-master.sh @@ -21,15 +21,17 @@ set -e # See: https://github.com/mitchellh/vagrant/issues/2430 hostnamectl set-hostname ${MASTER_NAME} -# Workaround to vagrant inability to guess interface naming sequence -# Tell system to abandon the new naming scheme and use eth* instead -rm -f /etc/sysconfig/network-scripts/ifcfg-enp0s3 +if [[ "$(grep 'VERSION_ID' /etc/os-release)" =~ ^VERSION_ID=21 ]]; then + # Workaround to vagrant inability to guess interface naming sequence + # Tell system to abandon the new naming scheme and use eth* instead + rm -f /etc/sysconfig/network-scripts/ifcfg-enp0s3 -# Disable network interface being managed by Network Manager (needed for Fedora 21+) -NETWORK_CONF_PATH=/etc/sysconfig/network-scripts/ -grep -q ^NM_CONTROLLED= ${NETWORK_CONF_PATH}ifcfg-eth1 || echo 'NM_CONTROLLED=no' >> ${NETWORK_CONF_PATH}ifcfg-eth1 -sed -i 's/^#NM_CONTROLLED=.*/NM_CONTROLLED=no/' ${NETWORK_CONF_PATH}ifcfg-eth1 -systemctl restart network + # Disable network interface being managed by Network Manager (needed for Fedora 21+) + NETWORK_CONF_PATH=/etc/sysconfig/network-scripts/ + grep -q ^NM_CONTROLLED= ${NETWORK_CONF_PATH}ifcfg-eth1 || echo 'NM_CONTROLLED=no' >> ${NETWORK_CONF_PATH}ifcfg-eth1 + sed -i 's/^#NM_CONTROLLED=.*/NM_CONTROLLED=no/' ${NETWORK_CONF_PATH}ifcfg-eth1 + systemctl restart network +fi function release_not_found() { echo "It looks as if you don't have a compiled version of Kubernetes. If you" >&2 @@ -100,7 +102,7 @@ grains: - kubernetes-master runtime_config: '$(echo "$RUNTIME_CONFIG" | sed -e "s/'/''/g")' docker_opts: '$(echo "$DOCKER_OPTS" | sed -e "s/'/''/g")' - master_extra_sans: '$(echo "$MASTER_EXTRA_SANS" | sed -e "s/'/''/g")' + master_extra_sans: '$(echo "$MASTER_EXTRA_SANS" | sed -e "s/'/''/g")' EOF mkdir -p /srv/salt-overlay/pillar diff --git a/cluster/vagrant/provision-minion.sh b/cluster/vagrant/provision-minion.sh index 64d806ade26..7eb4ca1e17f 100755 --- a/cluster/vagrant/provision-minion.sh +++ b/cluster/vagrant/provision-minion.sh @@ -72,15 +72,17 @@ EOF # See: https://github.com/mitchellh/vagrant/issues/2430 hostnamectl set-hostname ${MINION_NAME} -# Workaround to vagrant inability to guess interface naming sequence -# Tell system to abandon the new naming scheme and use eth* instead -rm -f /etc/sysconfig/network-scripts/ifcfg-enp0s3 +if [[ "$(grep 'VERSION_ID' /etc/os-release)" =~ ^VERSION_ID=21 ]]; then + # Workaround to vagrant inability to guess interface naming sequence + # Tell system to abandon the new naming scheme and use eth* instead + rm -f /etc/sysconfig/network-scripts/ifcfg-enp0s3 -# Disable network interface being managed by Network Manager (needed for Fedora 21+) -NETWORK_CONF_PATH=/etc/sysconfig/network-scripts/ -grep -q ^NM_CONTROLLED= ${NETWORK_CONF_PATH}ifcfg-eth1 || echo 'NM_CONTROLLED=no' >> ${NETWORK_CONF_PATH}ifcfg-eth1 -sed -i 's/^#NM_CONTROLLED=.*/NM_CONTROLLED=no/' ${NETWORK_CONF_PATH}ifcfg-eth1 -systemctl restart network + # Disable network interface being managed by Network Manager (needed for Fedora 21+) + NETWORK_CONF_PATH=/etc/sysconfig/network-scripts/ + grep -q ^NM_CONTROLLED= ${NETWORK_CONF_PATH}ifcfg-eth1 || echo 'NM_CONTROLLED=no' >> ${NETWORK_CONF_PATH}ifcfg-eth1 + sed -i 's/^#NM_CONTROLLED=.*/NM_CONTROLLED=no/' ${NETWORK_CONF_PATH}ifcfg-eth1 + systemctl restart network +fi # Setup hosts file to support ping by hostname to master if [ ! "$(cat /etc/hosts | grep $MASTER_NAME)" ]; then