#+title: buildbot.el #+author: Yuchen Pei #+language: en [[https://www.buildbot.net/][Buildbot]] is a free software continuous integration tool. buildbot.el is an emacs interface to view build information on a Buildbot instance. It supports [[https://docs.buildbot.net/latest/relnotes/0.9.0.html][newer versions]]* of Buildbot (>=0.9.0) but not older versions (<0.9.0) and shows views for branches, revisions, builds, steps, logs and builders. It has been tested for the following instances (the urls are to be used as ~buildbot-host~): - [[https://buildbot.mariadb.org][mariadb]] (works better with ~(setq buildbot-api-changes-direct-filter t)~) - [[https://buildbot.python.org/all][python]] - [[https://buildbot.buildbot.net][buildbot]] - [[https://buildbot.scummvm.org][scummvm]] - [[http://build.sagemath.org][sagemath]] - [[https://buildbot.staging.openwrt.org/images][openwrt]] - [[https://gkernelci.gentoo.org][gentoo]] - [[https://buildbot.libsdl.org][SDL]] *: The linked release notes describes the significant changes at 0.9.0. * Install ** From ELPA :PROPERTIES: :UPDATED: [2023-07-15 Sat 16:16] :END: Buildbot is currently available at elpa-devel: #+begin_src elisp (add-to-list 'package-archives ("elpa-devel" . "https://elpa.gnu.org/devel/")) (package-refresh-contents) (package-install 'buildbot) #+end_src ** Manual install :PROPERTIES: :UPDATED: [2023-07-15 Sat 16:24] :END: Clone this repo, and add to load path (assuming you clone to =~/.emacs.d=): #+begin_src sh cd ~/.emacs.d git clone https://g.ypei.me/buildbot.el.git #+end_src #+begin_src elisp (add-to-list 'load-path "~/.emacs.d/buildbot.el") #+end_src After that, require buildbot and set the host and builders, like so #+begin_src elisp (require 'buildbot) (setq buildbot-default-host "https://buildbot.mariadb.org") #+end_src * Use :PROPERTIES: :UPDATED: [2023-07-15 Sat 16:38] :END: Entry points: - ~M-x buildbot-revision-open~ prompts for a revision id (e.g. commit hash in git), and opens a view of the revision, including builds associated with changes associated with the revision. - ~M-x buildbot-branch-open~ prompts for a branch name, and opens up a view of revisions of this branch. - ~M-x buildbot-builder-open~ prompts for a builder name from a list of available builders, and opens up a view of recent builds by this builder. - The first time any of these commands is invoked it may take a bit longer than usual because it needs to make an extra call to get all builders. * TODOs :PROPERTIES: :UPDATED: [2023-06-26 Mon 17:04] :END: - org link integration. - older buildbot api (not really sure if feasible) - copy url of the current view - highlight certain builders (e.g. mandatory for push) * Contact and Copyright ~buildbot.el~ is maintained by Yuchen Pei and covered by [[https://www.gnu.org/licenses/agpl-3.0.en.html][GNU AGPLv3+]]. You may find the license text in a file named COPYING.agpl3 in the project tree.