diff options
author | Michael DeHaan <mdehaan@redhat.com> | 2008-05-02 16:05:32 -0400 |
---|---|---|
committer | Michael DeHaan <mdehaan@redhat.com> | 2008-05-02 16:05:32 -0400 |
commit | a6fd395b51a624e4aa7d09b4960382784cefa8e8 (patch) | |
tree | 6fdab90d58f4d673f1e5e58201a032cd9eb7386b /cobbler/manage_ctrl.py | |
parent | e4fce2b7321c880f8c1f1adbdf137fc4d66563de (diff) | |
download | third_party-cobbler-a6fd395b51a624e4aa7d09b4960382784cefa8e8.tar.gz third_party-cobbler-a6fd395b51a624e4aa7d09b4960382784cefa8e8.tar.xz third_party-cobbler-a6fd395b51a624e4aa7d09b4960382784cefa8e8.zip |
Working on moving DNS/DHCP management to cobbler/modules (uses modules.conf)
In progress.
Diffstat (limited to 'cobbler/manage_ctrl.py')
-rw-r--r-- | cobbler/manage_ctrl.py | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/cobbler/manage_ctrl.py b/cobbler/manage_ctrl.py new file mode 100644 index 0000000..a01910a --- /dev/null +++ b/cobbler/manage_ctrl.py @@ -0,0 +1,76 @@ +""" +Builds out DHCP info +This is the code behind 'cobbler sync'. + +Copyright 2006-2008, Red Hat, Inc +Michael DeHaan <mdehaan@redhat.com> + +This software may be freely redistributed under the terms of the GNU +general public license. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +""" + +import os +import os.path +import shutil +import time +import sub_process +import sys +import glob +import traceback +import errno +import popen2 +from shlex import shlex + + +import utils +from cexceptions import * +import templar + +import item_distro +import item_profile +import item_repo +import item_system + +from utils import _ + +class ManageCtrl: + """ + Handles conversion of internal state to the tftpboot tree layout + """ + + def __init__(self,config,verbose=False,dns=None,dhcp=None): + """ + Constructor + """ + self.verbose = verbose + self.config = config + self.api = config.api + self.distros = config.distros() + self.profiles = config.profiles() + self.systems = config.systems() + self.settings = config.settings() + self.repos = config.repos() + self.templar = templar.Templar(config) + self.dns = dns + + def write_dhcp_lease(self,port,host,ip,mac): + return dhcp.write_dhcp_lease(port,host,ip,mac) + + def remove_dhcp_lease(self,port,host): + return dhcp.remove_dhcp_lease(port,host) + + def write_dhcp_file(self): + return dhcp.write_dhcp_file() + + def regen_ethers(self): + return dhcp.regen_ethers() + + def regen_hosts(self): + return dns.regen_hosts() + + def write_dns_files(self): + return dns.write_bind_files() |