Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Disambiguation: detailed what "IRC Bot" stood for vs. "ircbot-plugin"

Main Jenkins IRC Channel (irc.freenode.net #jenkins) uses an administrator bot "jenkins-admin" so that some of the project operation work can be done by the community. This bot is available for anyone in the channel with "voice", which is an IRC jargon for those users who are trusted.

To get a voice, you need to register your IRC nick name. See freenode FAQ for more details. Once you register your nick, come to IRC, tell us who you are, and we will get you the voice privilege right away.

Available Actions

Table of Contents
minLevel2
excludeSource Code
All commands are case insensitive, and the command needs to be specifically addressed to the bot with
Info
Note
titleMoved

The content about a "jenkins-admin:" prefix.

IRC Channel

Grant IRC voice to a user in #jenkins

Command:

No Format

Make USER voice
Give USER voice
Grant USER voice
Add USER voice

Ungrant IRC voice to a user in #jenkins

Command:

No Format

Remove USER voice
Delete USER voice
Ungrant USER voice

GitHub repositories

Manages repositories within JenkinsCI organization

Grant a committer access

Command:

No Format

Make USER a committer
Give USER a commit access
Grant USER a commit access

... where USER is the GitHub user ID. This command adds the said user into the Everyone team, which has access to all the plugins. Can be only invoked by people with voice or channel-op access.

No Format

Make USER a committer of/to REPO
Give USER a commit access of/to REPO
Grant USER a commit access of/to REPO

This adds the user just to the specific repository. This reduces the amount of pull request related e-mails that the user gets, but this needs to be repeated for each repository.

Note that just creating an account on https://jenkins-ci.org/account grants you access to the Subversion repository.

Fork an existing repository on github

Command:

No Format

Fork USER/REPO [on github]
Fork USER/REPO [on github] as NEW_REPO_NAME
Fork GITHUB_REPO_URL [on github] as NEW_REPO_NAME

This will fork a repository into Jenkins. The said user will be added as a committer to all the Jenkins repositories.
By convention, plugin repositories in Jenkins has the "PLUGINID-plugin" name, so please use the "as NEW_REPO_NAME" clause to adjust the repository name. A prefix of "jenkins" or any other irrelevant information should be removed.

For example:

No Format

fork example/jenkins-foobar as foobar-plugin
fork https://github.com/somebody/foobar-plugin

Create a new repository on github

Command:

No Format

Create REPO on github
Create REPO on github for SOMEONE

In the latter form, the specified someone will get the commit access to the repository right away.

Issue tracker

Automated operations for Issue Tracker on JIRA

Create an issue tracker component

Command:

No Format

Create COMPONENT in the issue tracker for USER
Create COMPONENT in the bug database for USER

... where COMPONENT is the subcomponent name in the issue tracker (normally the name of the plugin), and USER is the jenkins-ci.org user ID who gets the initial notification when a new bug is filed.

Set default assignee of issue tracker component

Command:

No Format

Set USER as default assignee of COMPONENT
Make USER the lead of COMPONENT

... where COMPONENT is the subcomponent name in the issue tracker (normally the name of the plugin), and USER is the jenkins-ci.org user ID who gets the initial notification when a new bug is filed.

Source Code

Source code can be found on Github: https://github.com/jenkins-infra/ircbot

IRC bot on the freenode channel has been moved to a page under jenkins.io

Disambiguation: Note that there is also a similarly named "ircbot-plugin" component (an IRC protocol adapter for the "instant-messaging-plugin" component).