aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore3
-rw-r--r--README.org21
-rw-r--r--buildbot-client.el38
-rw-r--r--buildbot-utils.el27
-rw-r--r--buildbot-view.el28
-rw-r--r--buildbot.el32
6 files changed, 85 insertions, 64 deletions
diff --git a/.gitignore b/.gitignore
index e4e5f6c..628aad4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
-*~ \ No newline at end of file
+*~
+*.elc \ No newline at end of file
diff --git a/README.org b/README.org
index f844881..81c0fce 100644
--- a/README.org
+++ b/README.org
@@ -1,11 +1,19 @@
#+title: buildbot.el
+#+author: Yuchen Pei
+#+language: en
-buildbot.el is a buildbot client for emacs. It shows views for
-branches, revisions, builds, steps, and logs.
+[[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 newer versions of Buildbot (e.g. 3.x) but not
+older versions (e.g. 0.8.9) and shows views for branches, revisions,
+builds, steps, logs and builders.
* Install
** Manual install
+ :PROPERTIES:
+ :UPDATED: [2023-06-26 Mon 16:44]
+ :END:
Clone this repo, and add to load path (assuming you clone to
~~/.emacs.d~):
@@ -19,7 +27,7 @@ git clone https://g.ypei.me/buildbot.el.git
(add-to-list 'load-path "~/.emacs.d/buildbot.el")
#+end_src
-After that, require buildbot and set the host and builders.
+After that, require buildbot and set the host and builders, like so
#+begin_src elisp
(require 'buildbot)
@@ -40,9 +48,14 @@ Entry points:
builder.
* TODOs
+ :PROPERTIES:
+ :UPDATED: [2023-06-26 Mon 17:04]
+ :END:
- org link integration.
-- older buildbot api.
+- 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
diff --git a/buildbot-client.el b/buildbot-client.el
index ecc5757..a681583 100644
--- a/buildbot-client.el
+++ b/buildbot-client.el
@@ -1,32 +1,34 @@
;;; buildbot-client.el --- Client code using buildbot api -*- lexical-binding: t; -*-
;; Copyright (C) 2023 Free Software Foundation, Inc.
-;;
+;;
;; This file is part of buildbot.el.
-;;
-;; buildbot.el is free software: you can redistribute it and/or modify it under
-;; the terms of the GNU Affero General Public License as published by the Free
-;; Software Foundation, either version 3 of the License, or (at your option) any
-;; later version.
-;;
-;; buildbot.el is distributed in the hope that it will be useful, but WITHOUT
-;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-;; FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
-;; details.
-;;
-;; You should have received a copy of the GNU Affero General Public License
-;; along with buildbot.el. If not, see <https://www.gnu.org/licenses/>.
+;;
+;; buildbot.el is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+;;
+;; buildbot.el is distributed in the hope that it will be useful, but
+;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+;; Affero General Public License for more details.
+;;
+;; You should have received a copy of the GNU Affero General Public
+;; License along with buildbot.el. If not, see
+;; <https://www.gnu.org/licenses/>.
;;; Commentary:
-;; buildbot-client provides functions for buildbot.el to get stuff from a
-;; buildbot server.
+;; buildbot-client provides functions for buildbot.el to get stuff
+;; from a buildbot server.
;;; Code:
(require 'buildbot-utils)
-(defvar buildbot-host)
-(defvar buildbot-builders)
+(defvar buildbot-host nil "Buildbot instance host")
+(defvar buildbot-builders nil
+ "Buildbot builders. Can be generated with (buildbot-get-all-builders)")
(defun buildbot-api-change (attr)
(buildbot-url-fetch-json
diff --git a/buildbot-utils.el b/buildbot-utils.el
index 57c0a22..cdb0cae 100644
--- a/buildbot-utils.el
+++ b/buildbot-utils.el
@@ -1,21 +1,22 @@
;;; buildbot-utils.el --- Commonly used utilities. -*- lexical-binding: t; -*-
;; Copyright (C) 2023 Free Software Foundation, Inc.
-;;
+;;
;; This file is part of buildbot.el.
-;;
-;; buildbot.el is free software: you can redistribute it and/or modify it under
-;; the terms of the GNU Affero General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-;;
-;; buildbot.el is distributed in the hope that it will be useful, but WITHOUT
-;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-;; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General
-;; Public License for more details.
-;;
+;;
+;; buildbot.el is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+;;
+;; buildbot.el is distributed in the hope that it will be useful, but
+;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+;; Affero General Public License for more details.
+;;
;; You should have received a copy of the GNU Affero General Public
-;; License along with buildbot.el. If not, see <https://www.gnu.org/licenses/>.
+;; License along with buildbot.el. If not, see
+;; <https://www.gnu.org/licenses/>.
(defvar buildbot-client-buffer-name "*buildbot api*")
diff --git a/buildbot-view.el b/buildbot-view.el
index a45aa60..78cf3fd 100644
--- a/buildbot-view.el
+++ b/buildbot-view.el
@@ -1,24 +1,26 @@
;;; buildbot-view.el --- buildbot.el UI -*- lexical-binding: t; -*-
;; Copyright (C) 2023 Free Software Foundation, Inc.
-;;
+;;
;; This file is part of buildbot.el.
-;;
-;; buildbot.el is free software: you can redistribute it and/or modify it under
-;; the terms of the GNU Affero General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-;;
-;; buildbot.el is distributed in the hope that it will be useful, but WITHOUT
-;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-;; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General
-;; Public License for more details.
-;;
+;;
+;; buildbot.el is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+;;
+;; buildbot.el is distributed in the hope that it will be useful, but
+;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+;; Affero General Public License for more details.
+;;
;; You should have received a copy of the GNU Affero General Public
-;; License along with buildbot.el. If not, see <https://www.gnu.org/licenses/>.
+;; License along with buildbot.el. If not, see
+;; <https://www.gnu.org/licenses/>.
(require 'buildbot-utils)
(require 'buildbot-client)
+(require 'text-property-search)
(defvar buildbot-view-header-regex "^\\[.*\\]$")
(defvar buildbot-view-branch-change-limit 10)
diff --git a/buildbot.el b/buildbot.el
index a9fdd31..2dc6780 100644
--- a/buildbot.el
+++ b/buildbot.el
@@ -4,27 +4,29 @@
;; Maintainer: Yuchen Pei <id@ypei.org>
;; Created: 2023
;; Version: 1.0.0
-;; Keywords: buildbot
+;; Keywords: buildbot, continuous integration
;; Package-Requires: ((emacs "28"))
;; Package-Type: multi
;; Homepage: https://g.ypei.me/buildbot.el.git
;; Copyright (C) 2023 Free Software Foundation, Inc.
-;;
+;;
;; This file is part of buildbot.el.
-;;
-;; buildbot.el is free software: you can redistribute it and/or modify it under
-;; the terms of the GNU Affero General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-;;
-;; buildbot.el is distributed in the hope that it will be useful, but WITHOUT
-;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-;; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General
-;; Public License for more details.
-;;
-;; You should have received a copy of the GNU Affero General Public License
-;; along with buildbot.el. If not, see <https://www.gnu.org/licenses/>.
+;;
+;; buildbot.el is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+;;
+;; buildbot.el is distributed in the hope that it will be useful, but
+;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+;; Affero General Public License for more details.
+;;
+;; You should have received a copy of the GNU Affero General Public
+;; License along with buildbot.el. If not, see
+;; <https://www.gnu.org/licenses/>.
+
(require 'buildbot-client)
(require 'buildbot-view)