summaryrefslogtreecommitdiffstats
path: root/ipapython/platform/redhat.py
diff options
context:
space:
mode:
authorMartin Kosek <mkosek@redhat.com>2012-12-05 10:50:05 +0100
committerMartin Kosek <mkosek@redhat.com>2012-12-05 13:30:31 +0100
commit3896bf370a142eb95a4341e381ee7b1ff0f0c3e2 (patch)
treef6f803315b928cd73d9c2115a93ee0f593d252f7 /ipapython/platform/redhat.py
parentc6efd4c7aaf6961142b6fae5d30dd9691a493447 (diff)
downloadfreeipa.git-3896bf370a142eb95a4341e381ee7b1ff0f0c3e2.tar.gz
freeipa.git-3896bf370a142eb95a4341e381ee7b1ff0f0c3e2.tar.xz
freeipa.git-3896bf370a142eb95a4341e381ee7b1ff0f0c3e2.zip
Change network configuration file
Fedora+systemd changed deprecated /etc/sysconfig/network which was used by IPA to store static hostname for the IPA machine. See https://bugzilla.redhat.com/show_bug.cgi?id=881785 for details. Change Fedora platform files to store the hostname to /etc/hostname instead. https://fedorahosted.org/freeipa/ticket/3279
Diffstat (limited to 'ipapython/platform/redhat.py')
-rw-r--r--ipapython/platform/redhat.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/ipapython/platform/redhat.py b/ipapython/platform/redhat.py
index 1de03556..389785c7 100644
--- a/ipapython/platform/redhat.py
+++ b/ipapython/platform/redhat.py
@@ -44,11 +44,15 @@ from ipalib import api
# names are ipapython.services.wellknownservices
# backup_and_replace_hostname -- platform-specific way to set hostname and
# make it persistent over reboots
+# restore_network_configuration -- platform-specific way of restoring network
+# configuration (e.g. static hostname)
# restore_context -- platform-sepcific way to restore security context, if
# applicable
# check_selinux_status -- platform-specific way to see if SELinux is enabled
# and restorecon is installed.
-__all__ = ['authconfig', 'service', 'knownservices', 'backup_and_replace_hostname', 'restore_context', 'check_selinux_status']
+__all__ = ['authconfig', 'service', 'knownservices',
+ 'backup_and_replace_hostname', 'restore_context', 'check_selinux_status',
+ 'restore_network_configuration']
class RedHatService(base.PlatformService):
def __wait_for_open_ports(self, instance_name=""):
@@ -225,6 +229,11 @@ def backup_and_replace_hostname(fstore, statestore, hostname):
else:
statestore.backup_state('network', 'hostname', old_hostname)
+def restore_network_configuration(fstore, statestore):
+ filepath = '/etc/sysconfig/network'
+ if fstore.has_file(filepath):
+ fstore.restore_file(filepath)
+
def check_selinux_status(restorecon='/sbin/restorecon'):
"""
We don't have a specific package requirement for policycoreutils