Implemented BackendDB/get_obs_repo_map API
authorEd Bartosh <eduard.bartosh@intel.com>
Thu, 27 Jun 2013 13:22:08 +0000 (16:22 +0300)
committerEd Bartosh <eduard.bartosh@intel.com>
Thu, 27 Jun 2013 13:22:08 +0000 (16:22 +0300)
This API should be used to map OBS project to 'repo' value used in .ks
file for the repository from this OBS project.

Change-Id: I9047e31a9ab604a8d3f504077817c2c9618e1d7d

common/backenddb.py
job_pre_release_obs.py
tests/test_backenddb.py

index 45ca892..ddde772 100644 (file)
@@ -169,3 +169,6 @@ class BackendDB():
         """Return release id entity object."""
         return Entity(self._redis, "releaseid:")
 
+    def get_obs_repo_map(self):
+        """Return obs project->repo mapping entity"""
+        return Entity(self._redis, "obsrepomap:")
index a7f3d54..6ff50a4 100755 (executable)
@@ -39,7 +39,7 @@ def get_prerelease_data(backenddb, base_url, base_path='/srv/download',
 
     try:
         repo_name = repo_name or \
-                    backenddb.get_obs_project_maps()[obs_project]['name']
+                    backenddb.get_obs_repo_map()[obs_project]['name']
     except BackendDBError, err:
         raise LocalError("Can't get OBS project for repo '%s' : %s" \
                         % (obs_project, str(err)))
index 9f09b7e..40be128 100644 (file)
@@ -241,6 +241,13 @@ class BackendDBTest(unittest.TestCase):
         ids[0] = 'release1'
         self.assertEqual(ids[0], 'release1')
 
+    def test_get_obs_repo_map(self):
+        """Test getting mapping between obs project and repo."""
+        bdb = BackendDB()
+        obsrepomap = bdb.get_obs_repo_map()
+        obsrepomap["Tizen:Main"] = "Tizen-main"
+        self.assertEqual(obsrepomap["Tizen:Main"], "Tizen-main")
+
 
 @patch('redis.Redis', RedisMock) # pylint: disable=R0904
 class EntityTest(unittest.TestCase):