diff options
| author | Alex Kost <alezost@gmail.com> | 2018-07-18 22:34:12 +0300 |
|---|---|---|
| committer | Alex Kost <alezost@gmail.com> | 2018-07-27 12:14:24 +0300 |
| commit | 64ba3161c90b67926dcfd2592e3b1e562d9cb2ef (patch) | |
| tree | 150afee3c575dec9456b1fdcc6ab76e5df27ff5a /build-farm-build.el | |
| parent | Add and use 'build-farm-get-display' (diff) | |
| download | emacs-build-farm-64ba3161c90b67926dcfd2592e3b1e562d9cb2ef.tar.gz | |
Use per-buffer build farm URL
Previously, a single global 'build-farm-url' variable was used
everywhere. But this is not correct: when you change this url, it
should take effect only for the future requests, and the existing Farm
buffers should use the previous url. So this root url should be local
for every build/jobset/project list/info, which is accomplished by this
commit.
* build-farm-url.el (build-farm-url): Add 'root-url' argument.
(build-farm-api-url, build-farm-build-url, build-farm-build-log-url)
(build-farm-build-latest-api-url, build-farm-build-queue-api-url)
(build-farm-jobset-url, build-farm-jobset-api-url)
(build-farm-project-url): Add 'root-url' keyword argument.
* build-farm.el: Define accessors for entry args. Specifically...
(build-farm-current-url): New function.
(build-farm-get-entries, build-farm-get-display, build-farm-message)
(build-farm-search-url): New 'root-url' argument.
* build-farm-build.el: Adjust to use 'root-url' arguments where appropriate.
* build-farm-jobset.el: Likewise.
* build-farm-project.el: Likewise.
Diffstat (limited to 'build-farm-build.el')
| -rw-r--r-- | build-farm-build.el | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/build-farm-build.el b/build-farm-build.el index e919001..58ef7e3 100644 --- a/build-farm-build.el +++ b/build-farm-build.el @@ -86,10 +86,12 @@ for the number of builds." (declare-function guix-build-log-find-file "guix-build-log" (file)) -(defun build-farm-build-view-log (id) +(defun build-farm-build-view-log (id &optional root-url) "View build log of a build ID." (require 'guix-build-log) - (guix-build-log-find-file (build-farm-build-log-url id))) + (guix-build-log-find-file + (build-farm-build-log-url + id :root-url (or root-url (build-farm-current-url))))) ;;; Filters for processing raw entries @@ -263,6 +265,7 @@ See `build-farm-build-status-alist'." :job (button-get btn 'job) :system (button-get btn 'system)))) (apply #'build-farm-get-display + (build-farm-current-url) 'build 'latest args))) (concat "Show latest builds" (let ((thing (cond (job "job") @@ -312,7 +315,9 @@ See `build-farm-build-status-alist'." (defun build-farm-build-info-insert-url (entry) "Insert URL for the build ENTRY." - (bui-insert-button (build-farm-build-url (bui-entry-id entry)) + (bui-insert-button (build-farm-build-url + (bui-entry-id entry) + :root-url (build-farm-current-url)) 'bui-url) (when (build-farm-build-finished? entry) (bui-insert-indent) @@ -374,7 +379,8 @@ ARGS." :jobset (bui-entry-non-void-value entry 'jobset) :job (bui-entry-non-void-value entry 'job) :system (bui-entry-non-void-value entry 'system)))) - (apply #'build-farm-latest-builds number args)) + (apply #'build-farm-get-display + (build-farm-current-url) 'build 'latest number args)) (defun build-farm-build-list-view-log () "View build log of the current build." @@ -393,7 +399,7 @@ NUMBER. With prefix argument, prompt for it and for the other ARGS." (interactive (build-farm-build-latest-prompt-args)) (apply #'build-farm-get-display - 'build 'latest number args)) + build-farm-url 'build 'latest number args)) ;;;###autoload (defun build-farm-queued-builds (number) @@ -406,7 +412,7 @@ NUMBER. With prefix argument, prompt for it." (read-number "Number of queued builds: " build-farm-number-of-builds) build-farm-number-of-builds))) - (build-farm-get-display 'build 'queue number)) + (build-farm-get-display build-farm-url 'build 'queue number)) (provide 'build-farm-build) |
