import re
import urlparse
-from gitbuildsys.utils import Temp, RepoParser
+from gitbuildsys.utils import Temp, RepoParser, read_localconf
from gitbuildsys.errors import GbsError, Usage
from gitbuildsys.conf import configmgr
from gitbuildsys.safe_url import SafeURL
raise GbsError("git project can't be found for --spec, "
"give it in argument or cd into it")
+ read_localconf(workdir)
+
hostarch = os.uname()[4]
if args.arch:
buildarch = args.arch
return filter_valid_repo(repos)
+
+def read_localconf(workdir):
+ """Read local configuration file from project directory."""
+ from gitbuildsys.conf import configmgr
+ prj_conf = os.path.join(workdir, '.gbs.conf')
+ if os.path.exists(prj_conf) and workdir != os.getcwd():
+ configmgr.add_conf(prj_conf)
+
+
class SearchConfAction(argparse.Action):
"""
Action for gitdir position argument to find project special
gbs.conf
"""
def __call__(self, parser, namespace, value, option_string=None):
- from gitbuildsys.conf import configmgr
-
workdir = value
try:
repo = RpmGitRepository(value)
except GitRepositoryError, err:
pass
- prj_conf = os.path.join(workdir, '.gbs.conf')
- if os.path.exists(prj_conf) and workdir != os.getcwd():
- configmgr.add_conf(prj_conf)
+ read_localconf(workdir)
setattr(namespace, self.dest, value)
def git_status_checker(git, opts):