From fd7f8f2bfa888b749c9746631e55e76ce726e243 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Wed, 13 Feb 2008 12:00:33 -0500 Subject: Added additional needed args to higher level API methods, also made higher level API function for find variants. --- cobbler/api.py | 22 +++++++++++++++++----- tests/tests.py | 20 +++++++++++--------- 2 files changed, 28 insertions(+), 14 deletions(-) diff --git a/cobbler/api.py b/cobbler/api.py index 3b4296e..1a6beb3 100644 --- a/cobbler/api.py +++ b/cobbler/api.py @@ -217,19 +217,31 @@ class BootAPI: def add_distro(self, ref): self.log("add_distro",[ref.name]) - return self._config.distros().add(ref) + return self._config.distros().add(ref,save=True) def add_profile(self, ref): self.log("add_profile",[ref.name]) - return self._config.profiles().add(ref) + return self._config.profiles().add(ref,save=True) def add_system(self,ref): self.log("add_system",[ref.name]) - return self._config.systems().add(ref) + return self._config.systems().add(ref,save=True) def add_repo(self,ref): self.log("add_repo",[ref.name]) - return self._config.repos().add(ref) + return self._config.repos().add(ref,save=True) + + def find_distro(self, name=None, return_list=False, **kargs): + return self._config.distros().find(name=name, return_list=return_list, **kargs) + + def find_profile(self, name=None, return_list=False, **kargs): + return self._config.profiles().find(name=name, return_list=return_list, **kargs) + + def find_system(self, name=None, return_list=False, **kargs): + return self._config.systems().find(name=name, return_list=return_list, **kargs) + + def find_repo(self, name=None, return_list=False, **kargs): + return self._config.repos().find(name=name, return_list=return_list, **kargs) def auto_add_repos(self): """ @@ -264,7 +276,7 @@ class BootAPI: print "auto adding: %s (%s)" % (auto_name, url) self._config.repos().add(cobbler_repo,save=True) - print "run cobbler reposync to apply changes" + # run cobbler reposync to apply changes return True def check(self): diff --git a/tests/tests.py b/tests/tests.py index 8f98733..21085ef 100644 --- a/tests/tests.py +++ b/tests/tests.py @@ -80,22 +80,22 @@ class BootTest(unittest.TestCase): self.assertTrue(distro.set_name("testdistro0")) self.assertTrue(distro.set_kernel(self.fk_kernel)) self.assertTrue(distro.set_initrd(self.fk_initrd)) - self.assertTrue(self.api.distros().add(distro)) - self.assertTrue(self.api.distros().find(name="testdistro0")) + self.assertTrue(self.api.add_distro(distro)) + self.assertTrue(self.api.find_distro(name="testdistro0")) profile = self.api.new_profile() self.assertTrue(profile.set_name("testprofile0")) self.assertTrue(profile.set_distro("testdistro0")) self.assertTrue(profile.set_kickstart(FAKE_KICKSTART)) - self.assertTrue(self.api.profiles().add(profile)) - self.assertTrue(self.api.profiles().find(name="testprofile0")) + self.assertTrue(self.api.add_profile(profile)) + self.assertTrue(self.api.find_profile(name="testprofile0")) system = self.api.new_system() self.assertTrue(system.set_name("drwily.rdu.redhat.com")) self.assertTrue(system.set_mac_address("BB:EE:EE:EE:EE:FF","intf0")) self.assertTrue(system.set_profile("testprofile0")) - self.assertTrue(self.api.systems().add(system)) - self.assertTrue(self.api.systems().find(name="drwily.rdu.redhat.com")) + self.assertTrue(self.api.add_system(system)) + self.assertTrue(self.api.find_system(name="drwily.rdu.redhat.com")) class MultiNIC(BootTest): @@ -118,13 +118,15 @@ class MultiNIC(BootTest): self.assertTrue(system.set_subnet("255.255.255.0","intf4")) self.assertTrue(system.set_dhcp_tag("tag2","intf5")) self.assertTrue(self.api.systems().add(system)) - self.assertTrue(self.api.systems().find(hostname="zero")) + # mixing in some higher level API calls with some lower level internal stuff + # just to make sure it's all good. + self.assertTrue(self.api.find_system(hostname="zero")) self.assertTrue(self.api.systems().find(mac_address="EE:FF:DD:CC:DD:CC")) self.assertTrue(self.api.systems().find(ip_address="127.0.0.5")) - self.assertTrue(self.api.systems().find(virt_bridge="zero")) + self.assertTrue(self.api.find_system(virt_bridge="zero")) self.assertTrue(self.api.systems().find(gateway="192.168.1.25")) self.assertTrue(self.api.systems().find(subnet="255.255.255.0")) - self.assertTrue(self.api.systems().find(dhcp_tag="tag2")) + self.assertTrue(self.api.find_system(dhcp_tag="tag2")) self.assertTrue(self.api.systems().find(dhcp_tag="zero")) # verify that systems has exactly 5 interfaces -- cgit