Create a job that polls a git repo and emails committers
Commit to repo using some git-config name and email address
Check "People" page. A new user is created. Checking the user configure page shows that:
I believe that a change to GitChangeSet.java introduced this problem.
Author: Kohsuke Kawaguchi <[hidden email]>
Date: Wed Mar 21 13:27:40 2012 -0700
if (user == null)
user = User.get(csAuthorEmail.split("@"), true);
In the case where the call to User.get() causes a new user to be created it seems that the Mailer.UserProperty is already set with a Null string. This is not what I would expect from the documentation but I am not a java expert. So the email address from the commit does not get added to user. At any later stage a call to Mailer.UserProperty.gerAddress() seems to cause an abort. The visible result of this is that there is no creation of a directory and config.xml for the user in the jenkins /users directory.
Reverting this single change in the current code version shows that the directory and file start to be created again.
I am actually hitting a similar problem with the repo plugin which causes problems for the extended e-mail plugin and suspect it may be a similar issue.
I have looked at User.java and it does seem that a default Mailer.UserProperty is created when a new User is created. So I believe the test
will always fail.