SpecialistOff.NET / Вопросы / Статьи / Фрагменты кода / Резюме / Метки / Помощь / Файлы
НазадМетки: buildbot
User Objects allow Buildbot to better manage users throughout its various interactions with users (see Change Sources and Changes and Reporters). The User Objects are stored in the Buildbot database and correlate the various attributes that a user might have: irc, Git, etc.
Incoming Changes all have a who
attribute attached to them that specifies which developer is responsible for that Change. When a Change is first rendered, the who
attribute is parsed and added to the database if it doesn’t exist or checked against an existing user. The who
attribute is formatted in different ways depending on the version control system that the Change came from.
git
who
attributes take the form Full Name <Email>
.svn
who
attributes are of the form Username
.hg
who
attributes are free-form strings, but usually adhere to similar conventions as git
attributes (Full Name <Email>
).cvs
who
attributes are of the form Username
.darcs
who
attributes contain an Email
and may also include a Full Name
like git
attributes.bzr
who
attributes are free-form strings like hg
, and can include a Username
, Email
, and/or Full Name
.For managing users manually, use the buildbot user
command, which allows you to add, remove, update, and show various attributes of users in the Buildbot database (see Command-line Tool).
Correlating the various bits and pieces that Buildbot views as users also means that one attribute of a user can be translated into another. This provides a more complete view of users throughout Buildbot.
One such use is being able to find email addresses based on a set of Builds to notify users through the MailNotifier
. This process is explained more clearly in Email Addresses.
Another way to utilize User Objects is through UsersAuth for web authentication. To use UsersAuth, you need to set a bb_username and bb_password via the buildbot user
command line tool to check against. The password will be encrypted before storing in the database along with other user attributes.