her pisi-index.xml ait olduğu depo adı ile aynı isme sahip bir dizine koyuluyor. Nasıl çalıştığını az önce yazmıştım.

This commit is contained in:
Barış Metin
2005-07-19 23:13:56 +00:00
parent 9406daab70
commit f7b0b02a1e
3 changed files with 17 additions and 13 deletions
+8 -5
View File
@@ -18,18 +18,21 @@ class Index(XmlFile):
self.sources = []
self.packages = []
def read(self, filename):
def read(self, filename, repo = None):
"""Read PSPEC file"""
self.filepath = filename
url = PUrl(filename)
if url.isRemoteFile():
from os.path import join
import os
from fetcher import fetchUrl
# TODO: farklı depoların index dosyalarını handle edebilmek gerekiyor.
dest = config.index_dir()
dest = os.path.join(config.index_dir(), repo)
if not os.path.exists(dest):
os.makedirs(dest)
fetchUrl(url, dest, ui.Progress)
self.filepath = join(dest, url.filename())
self.filepath = os.path.join(dest, url.filename())
self.readxml(self.filepath)
+3 -3
View File
@@ -73,16 +73,16 @@ def index(repo_dir = '.'):
index.write(const.pisi_index)
ui.info('* Index file written\n')
def updatedb(indexfile = None):
def updatedb(indexfile = None, repo = "default"):
from index import Index
if not indexfile:
repos_path = config.values.repos.default
repos_path = config.values.repos[repo]
indexfile = os.path.join(repos_path, const.pisi_index)
ui.info('* Updating DB from index file: %s\n' % indexfile)
index = Index()
index.read(indexfile)
index.read(indexfile, repo)
index.update_db()
ui.info('* Package db updated.\n')
+6 -5
View File
@@ -258,13 +258,14 @@ def package_name(name, version, release):
# TODO: Currently we're supporting for only one repository. We'll
# extend this functionality soon.
def repo_index(repo = config.values.repos.default):
def repo_index(reponame = "default"):
"return a par (url, IndexObj) for the given repository"
from index import Index
repourl = config.values.repos[reponame]
index = Index()
# buraya repo adını da ekleyeceğiz.
# path/to/repos_dir/default/pisi-index.xml gibi...
indexpath = os.path.join(config.index_dir(), const.pisi_index)
indexpath = os.path.join(config.index_dir(),
reponame, const.pisi_index)
index.read(indexpath)
return (repo, index)
return (repourl, index)