summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Update version to 0.2.2HEADmasterAlex Kost2018-12-181-1/+1
|
* Update Cuirass evaluations for the latest APIAlex Kost2018-12-182-6/+43
| | | | | | | | | | Follow the changes introduced by <https://git.savannah.gnu.org/cgit/guix/guix-cuirass.git/commit/?id=8d40c49170971ad7bbf8b97336934dbb3d949fc1>. * build-farm-evaluation.el: Handle the new 'in-progress' an 'checkouts' parameters. * build-farm.el: Update required BUI version to 1.2.1 as its new feature is used to display 'commit' parameter in the evaluation list buffer.
* url: Add and use "https://ci.guix.info"Alex Kost2018-12-091-2/+2
| | | | | * build-farm-url.el (build-farm-url-alist): Add it. (build-farm-guess-url): Use it as the default.
* Update version to 0.2.1Alex Kost2018-09-091-1/+1
| | | | | This should have been done before "v0.2.1" tag was made on the previous commit, but well...
* build: Generalize making "latest builds" buttonsAlex Kost2018-09-063-30/+46
| | | | | | | | | | | | | * build-farm-build.el (build-farm-build-button-action): Add optional 'type' argument. (build-farm-define-build-button): New macro. Use it to generate buttons and actions for them for 'system' and 'job'. (build-farm-info-insert-builds-button): Remove. * build-farm-jobset.el (build-farm-cuirass-jobset-args-info-format): Use 'build-farm-system' button instead. * build-farm.el (build-farm-info-job): Inherit 'button' face.
* 'build-farm-current-url' returns default URL as a fallbackAlex Kost2018-09-061-1/+12
| | | | | * build-farm.el (build-farm-current-url): Return 'build-farm-url' if current buffer is not a "build-farm" buffer.
* Add another system supported by Guix ("aarch64-linux")Alex Kost2018-09-051-2/+9
| | | | * build-farm.el (build-farm-guix-system-types): Add "aarch64-linux".
* README: Add "Installation" section and some badgesAlex Kost2018-08-301-2/+25
|
* popup: Switch keys for jobset and jobAlex Kost2018-08-281-2/+2
| | | | | | * build-farm-popup.el (build-farm-build-popup): Use "j" for job and "J" for jobset because: 1) jobset is, like, bigger than job; 2) jobset builds can be easily fetched from "jobset-list" buffer.
* build: Do not use (for latest builds) system if job is specifiedAlex Kost2018-08-281-1/+4
| | | | | * build-farm-build.el (build-farm-build-latest-prompt-args): Return system only if job is not specified.
* Fix 'build-farm-job-regexp'Alex Kost2018-08-271-1/+5
| | | | | | | | This is a followup to commit 4fff68f8401a772d92a8698e0391d260fae8ef69. * build-farm.el (build-farm-job-regexp): Construct regexp depending on 'build-farm-guix-system-types' and 'build-farm-nix-system-types' variables. Otherwise job specification may be miss-interpreted.
* popup: Prompt for missing latest build args if neededAlex Kost2018-08-271-3/+2
| | | | | | * build-farm-popup.el (build-farm-popup-latest-builds): Pass args to 'build-farm-build-latest-prompt-args' to make sure all needed args are specified (for example, if only a job name without system is set).
* Update version to 0.2Alex Kost2018-08-261-1/+1
|
* Add system buttons to Jobset InfoAlex Kost2018-08-263-3/+33
| | | | | | | | | | * build-farm.el (build-farm-info-system): Inherit from 'button' face. * build-farm-build.el (build-farm-system): New button type. (build-farm-build-button-system-action) (build-farm-info-insert-system-button) (build-farm-info-insert-systems): New procedures. * build-farm-jobset.el (build-farm-cuirass-jobset-args-info-format): Use 'build-farm-info-insert-systems'.
* Rename 'build-farm-build-info-insert-builds-button'Alex Kost2018-08-264-36/+39
| | | | | | | | | | | * build-farm-build.el (build-farm-build-info-insert-builds-button): Rename to... (build-farm-info-insert-builds-button): ... this. (build-farm-build-button-action): New procedure (the code is extracted from the above procedure). * build-farm-evaluation.el: Adjust accordingly. * build-farm-jobset.el: Likewise. * build-farm-project.el: Likewise.
* jobset: Add "B" key binding to Jobset ListAlex Kost2018-08-261-0/+26
| | | | | | | | * build-farm-jobset.el (build-farm-cuirass-jobset-list-latest-builds): New command. (build-farm-cuirass-jobset-list-mode-map): Bind it to "B". (build-farm-cuirass-jobset-list-default-hint): New variable. (build-farm-cuirass-jobset-list-hint): New procedure.
* popup: Handle null number of buildsAlex Kost2018-08-261-2/+5
| | | | | | * build-farm-popup.el (build-farm-popup-latest-builds) (build-farm-popup-queued-builds): Prompt for the number of builds if it is not set.
* Add interface for Cuirass evaluationsAlex Kost2018-08-265-17/+190
| | | | | | | | | | | * build-farm-url.el (build-farm-evaluation-url) (build-farm-latest-evaluations-api-url): New procedures. * build-farm-evaluation.el: New file. (build-farm-latest-evaluations): New command. * build-farm-popup.el (build-farm-popup): Add sub-popup for evaluations. (build-farm-evaluation-popup-maybe) (build-farm-popup-format-number-of-evaluations) (build-farm-popup-latest-evaluations): New procedures.
* jobset: Add ID parameter if it is missingAlex Kost2018-08-261-1/+11
| | | | | * build-farm-jobset.el (build-farm-cuirass-jobset-filter-id): New procedure. (build-farm-cuirass-jobset-filters): Add it.
* Add new lines after URLs in Info buffersAlex Kost2018-08-263-0/+3
|
* url: Use "https://berlin.guixsd.org" as the default farm for GuixAlex Kost2018-08-261-1/+2
| | | | | Since "https://hydra.gnu.org" is very slow or even unresponsive most of the times.
* Insert button for Cuirass jobset when neededAlex Kost2018-08-262-5/+22
| | | | | | | | | Cuirass and Hydra jobsets are different things, so make a button for Cuirass jobset specifically. * build-farm.el (build-farm-info-insert-cuirass-jobset): New procedure. * build-farm-build.el (build-farm-build-info-insert-jobset): Use it if current build farm type is 'cuirass'.
* project: Add a button to list jobsetsAlex Kost2018-08-261-0/+10
| | | | | * build-farm-project.el (build-farm-project-info-insert-jobsets): Insert "List" button when there are more than 1 jobset.
* Cache cuirass jobsetsAlex Kost2018-08-261-23/+41
| | | | | | | | * build-farm.el (build-farm-get-entries): Adjust to handle Hydra projects and Cuirass jobsets similarly. (build-farm-get-project-entries-once): Rename to... (build-farm-get-root-entries-once): ... this. (build-farm-project-names, build-farm-jobset-names): Adjust accordingly.
* README: Mention differences between Cuirass and HydraAlex Kost2018-08-261-0/+13
|
* jobset: Add "Builds" button to Cuirass Jobset InfoAlex Kost2018-08-261-0/+8
| | | | | | * build-farm-jobset.el (build-farm-cuirass-jobset-info-insert-builds): New procedure. (build-farm-cuirass-jobset-info-format): Add it.
* Read project/jobset according to farm type (Hydra or Cuirass)Alex Kost2018-08-264-27/+53
| | | | | | | | | | | | | | * build-farm.el (build-farm-check-project-support): New procedure. (build-farm-read-project, build-farm-read-jobset): Use keyword arguments. * build-farm-build.el (build-farm-build-latest-prompt-args): Prompt for project only for Hydra farm. * build-farm-popup.el (build-farm-popup-read-jobset): Likewise. (build-farm-popup-read-project): New procedure. * build-farm-project.el (build-farm-projects, build-farm-project): Check if current farm type is Hydra.
* Add interface for Cuirass jobsetsAlex Kost2018-08-262-5/+121
| | | | | | * build-farm-url.el (build-farm-cuirass-jobsets-url): New function. * build-farm-jobset.el: Add 'cuirass-jobset-info' and 'cuirass-jobset-list' interfaces.
* Remove "Farm" from the mode namesAlex Kost2018-08-262-4/+4
| | | | To decrease their lengths.
* Rename 'jobset' interface to 'hydra-jobset'Alex Kost2018-08-265-68/+82
| | | | | | | | | | | | | | | | | | | | Cuirass and Hydra jobsets are completely different, so there will be a separate interface for Cuirass jobsets. * build-farm.el: Update Emacs requirement to 24.4 because 'subr-x' library is needed now. (build-farm-info-insert-jobset): Rename to... (build-farm-info-insert-hydra-jobset): ... this. * build-farm-build.el (build-farm-build-info-insert-jobset): Adjust accordingly. * build-farm-project.el (build-farm-project-info-insert-jobset): Likewise. * build-farm-url.el (build-farm-jobset-api-url): Rename to... (build-farm-hydra-jobset-api-url): ... this. * build-farm-jobset.el: Rename 'jobset' to 'hydra-jobset' everywhere.
* url: Use nil for 'json-false' valueAlex Kost2018-08-201-3/+4
| | | | | * build-farm-url.el (build-farm-receive-data): Let-bind 'json-false' as its default value is ':json-false'.
* build: Add "More info" button when neededAlex Kost2018-08-172-0/+29
| | | | | | | | * build-farm.el (build-farm-current-url-type): New procedure. * build-farm-build.el (build-farm-build-info-insert-more-button) (build-farm-build-info-update-build): New procedures. (build-farm-build-info-format): Add 'build-farm-build-info-insert-more-button'.
* build: Show more parameters in Build InfoAlex Kost2018-08-171-6/+42
| | | | | | | | | | | * build-farm-build.el (build-farm-build-filter-names): Rename 'time' to 'queued-time'. Add 'start-time', 'stop-time', 'derivation', 'outputs', 'release-name'. (build-farm-build-info-titles): Change titles for time parameters. (build-farm-build-info-output-format): New variable. (build-farm-build-info-insert-output) (build-farm-build-info-insert-outputs): New procedures. (build-farm-build-info-format): Adjust to display the new parameters.
* project: Display "M-x build-farm-project" in Info bufferAlex Kost2018-08-131-1/+2
| | | | | | | | | | As we always want to display a single project in Info buffer. Previously, it could be displayed in a List buffer depending on 'build-farm-project-list-show-single' variable. * build-farm-project.el (build-farm-project): Use 'bui-get-display-entries' directly instead of 'build-farm-get-display' wrapper.
* popup: Use variable names instead of their descriptionsAlex Kost2018-08-131-9/+9
| | | | | | | * build-farm-popup.el (build-farm-popup-option-value): Replace with... (build-farm-popup-variable-value): ... this. (build-farm-popup-format-url): Use it. (build-farm-popup-format-number-of-builds): Use it.
* README: Fix org markupAlex Kost2018-07-271-14/+14
| | | | | | | I forgot that this is 'org' and not 'markdown' * README.org: Use "=" instead of "`". Also use org links for URLs in the table.
* Add READMEAlex Kost2018-07-271-0/+35
| | | | * README.org: New file.
* Modify a message for the 'fake' search typeAlex Kost2018-07-271-3/+6
| | | | | * build-farm.el (build-farm-message): Adjust the message. (build-farm-list-describe): Adjust the commentary.
* Add popup interface ('build-farm' command)Alex Kost2018-07-272-3/+130
| | | | | * build-farm-popup.el: New file. * build-farm.el: Add 'magit-popup' to package requirements.
* Add 'build-farm-set-number-of-builds' commandAlex Kost2018-07-271-2/+11
| | | | | | * build-farm-build.el (build-farm-build-read-number): New function. (build-farm-build-read-number-maybe): Use it. (build-farm-set-number-of-builds): New command.
* Fix "Builds" buttons in Build Info bufferAlex Kost2018-07-271-12/+11
| | | | | | | | | | | | | | This is a followup to commit c9a3501ef48092d99ad8ae3680752c3db2201c0f. These "Builds" buttons are intended to be specialized (to search only for builds by project, system, etc.). Instead they all were made the same. * build-farm-build.el (build-farm-build-info-insert-button): Remove. (build-farm-build-info-insert-project, build-farm-build-info-insert-jobset) (build-farm-build-info-insert-job, build-farm-build-info-insert-system): Use 'build-farm-build-info-insert-builds-button' instead (with the appropriate arguments).
* build: Factorize reading a number of buildsAlex Kost2018-07-271-10/+12
| | | | | * build-farm-build.el (build-farm-build-read-number-maybe): New function. (build-farm-build-latest-prompt-args, build-farm-queued-builds): Use it.
* project: Require 'build-farm-jobset'Alex Kost2018-07-271-0/+1
| | | | | * build-farm-project.el: Require 'build-farm-jobset'. Without this, there is an error when jobsets are requested from Package Info or List buffers.
* Add 'build-farm-build' commandAlex Kost2018-07-272-1/+15
| | | | | | | * build-farm.el (build-farm-get-entries-1): Wrap a single ID entry into a list. * build-farm-build.el (build-farm-build-search-types): Add 'id' search type. (build-farm-build): New command.
* Colorize names of jobsets in Jobset List bufferAlex Kost2018-07-271-1/+29
| | | | | | | | | | Similarly to the Hydra web interface. * build-farm-jobset.el (build-farm-jobset-list-status-scheduled) (build-farm-jobset-list-status-succeeded) (build-farm-jobset-list-status-failed): New faces. (build-farm-jobset-list-get-name): New function. (build-farm-jobset-list-format): Use it.
* Add project url to Project Info bufferAlex Kost2018-07-272-4/+15
| | | | | | * build-farm-url.el (build-farm-project-url): Add 'project' keyword argument. * build-farm-project.el (build-farm-project-info-insert-url): New procedure. (build-farm-project-info-format): Use it.
* Add jobset buttonAlex Kost2018-07-273-9/+18
| | | | | | | | * build-farm.el (build-farm-info-jobset): Inherit from 'link' face. (build-farm-jobset): New button type. (build-farm-info-insert-jobset): New procedure. * build-farm-build.el (build-farm-build-info-insert-jobset): Use it. * build-farm-project.el (build-farm-project-info-insert-jobset): Use it.
* Add project buttonAlex Kost2018-07-273-3/+21
| | | | | | | | * build-farm.el (build-farm-info-project): Inherit from 'button' face. (build-farm-project-button-action): New procedure. (build-farm-project): New button type. * build-farm-build.el (build-farm-build-info-insert-project): Use it. * build-farm-jobset.el (build-farm-jobset-info-insert-project): Use it.
* Add 'build-farm-project' commandAlex Kost2018-07-272-6/+17
| | | | | | * build-farm.el (build-farm-get-entries): Add 'id'/'name' search types for 'project' entry type. * build-farm-project.el (build-farm-project): New command.
* Move and rename some info facesAlex Kost2018-07-272-24/+27
| | | | | | | | | | * build-farm-build.el (build-farm-build-info-project) (build-farm-build-info-jobset, build-farm-build-info-job) (build-farm-build-info-system): Move and rename to... * build-farm.el (build-farm-info-project) (build-farm-info-jobset, build-farm-info-job) (build-farm-info-system): ... this.