Hi Vikram, On Fri, Apr 27, 2012 at 9:39 AM, Vikram Narayanan <vikram...@gmail.com>wrote:
> > patman shouts when it couldn't find a $(HOME)/.config/patman file. > Handle it in a sane way by creating a new one for the user. > It looks for a user.name and user.email in the global .gitconfig > file, waits for the user input if it can't find those. > > Signed-off-by: Vikram Narayanan <vikram...@gmail.com> > Cc: Simon Glass <s...@chromium.org> > Acked-by: Simon Glass <s...@chromium.org> In terms of changing the config file to ~/.patman, this could actually be a subsequent patch if you like. But there are a few nits below if you re-issue. > --- > tools/patman/gitutil.py | 18 ++++++++++++++++++ > tools/patman/settings.py | 34 +++++++++++++++++++++++++++++++--- > 2 files changed, 49 insertions(+), 3 deletions(-) > > diff --git a/tools/patman/gitutil.py b/tools/patman/gitutil.py > index 48ca998..2eacb13 100644 > --- a/tools/patman/gitutil.py > +++ b/tools/patman/gitutil.py > @@ -357,6 +357,24 @@ def GetAliasFile(): > fname = os.path.join(GetTopLevel(), fname.strip()) > return fname > > +def GetDefaultUserName(): > + """ Gets the user.name from .gitconfig file. > + > + Returns: > + User name found in .gitconfig file, or None if none > + """ > + uname = command.OutputOneLine('git', 'config', '--global', 'user.name > ') > + return uname > + > +def GetDefaultUserEmail(): > + """ Gets the user.email from the global .gitconfig file. > + > + Returns: > + User's email found in .gitconfig file, or None if none > + """ > + uemail = command.OutputOneLine('git', 'config', '--global', > 'user.email') > + return uemail > + > def Setup(): > """Set up git utils, by reading the alias files.""" > settings.Setup('') > diff --git a/tools/patman/settings.py b/tools/patman/settings.py > index 049c709..03ea307 100644 > --- a/tools/patman/settings.py > +++ b/tools/patman/settings.py > @@ -24,7 +24,7 @@ import os > import re > > import command > - > +import gitutil > > def ReadGitAliases(fname): > """Read a git alias file. This is in the form used by git: > @@ -61,6 +61,30 @@ def ReadGitAliases(fname): > > fd.close() > > +def CreatePatmanConfigFile(config_fname): > + """ Creates a config file under $(HOME)/.config/ if it can't find one. > nits: Remove space before 'Creates' and add Args: to document config_fname, > + > + Returns: > + None > + """ > + name = gitutil.GetDefaultUserName() > + if name == None: > + name = raw_input("Enter name: ") > + > + email = gitutil.GetDefaultUserEmail() > + > + if email == None: > + email = raw_input("Enter email: ") > + > + try: > + f = open(config_fname, 'w') > + except IOError: > + print "Couldn't create patman config file\n" > + raise > + > + print >>f, "[alias]\nme: %s <%s>" % (name, email) > + f.close(); > + > def Setup(config_fname=''): > """Set up the settings module by reading config files. > > @@ -70,8 +94,12 @@ def Setup(config_fname=''): > settings = ConfigParser.SafeConfigParser() > if config_fname == '': > config_fname = '%s/.config/patman' % os.getenv('HOME') > - if config_fname: > - settings.read(config_fname) > + > + if not os.path.exists(config_fname): > + print "No config file found under ~/.config/\nCreating one...\n" > + CreatePatmanConfigFile(config_fname) > + > + settings.read(config_fname) > > for name, value in settings.items('alias'): > alias[name] = value.split(',') > -- > 1.7.4.1 > > Regards, Simon
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot