Commit graph

53 commits

Author SHA1 Message Date
Florian Klink
0175a10657 gerrit.client: update internal head after triggering a rebase
And we of course don't need to update HEAD if we just rebased a random
changeset.
2019-12-04 11:43:32 +01:00
Florian Klink
60a81b808c submitqueue.runner.Trigger: return instead of break
We're inside two loops, but when havint to sleep, we want to exit the whole trigger function.
2019-12-03 23:55:08 +01:00
Florian Klink
ece32d3d7c gerrit.series.AssembleSeries: improve logging, also log i and j 2019-12-03 23:54:41 +01:00
Florian Klink
fb9e9fa724 remove submitqueue/test_runner.go 2019-12-03 11:09:50 +01:00
Florian Klink
200ad6332b main.go: log errors if they are returned from runner.Trigger() 2019-12-03 11:07:44 +01:00
Florian Klink
241ec393ac main: actually multiply triggerInterval by time.Second, not time.Minute
Otherwise, we'd wait a little bit too long ;-)
2019-12-03 10:58:39 +01:00
Florian Klink
4ea1a5a2f0 main.go: add --trigger-interval cli flag 2019-12-03 10:44:29 +01:00
Florian Klink
77fe8a8e1f runner: use submittable field
This simplifies logic, and makes it generally more usable with other
project submit rules.
2019-12-03 10:20:02 +01:00
Florian Klink
5acc403e28 changeset: fetch SUBMITTABLE and add field to struct 2019-12-03 10:16:32 +01:00
Florian Klink
0e8aa14045 gerrit.Client: set projectName and branchName 2019-12-02 14:38:23 +01:00
Florian Klink
8129de3b9a runner: check gerrit.Refresh() for errors 2019-12-02 14:37:38 +01:00
Florian Klink
118a88dace add rotatingloghandler which removes older log entries 2019-12-02 12:03:46 +01:00
Florian Klink
04a24a0c60 Use Runner
This revamps code quite a bit. Series handling has been moved into the
gerrit client, it also handles caching.

The Runner logic itself has been greatly simplified.

The runner logic has been moved into the runner.go, submitqueue.go is
gone.

The "per-run result object" concept has been dropped - we instead just
use annotated logs.

Also, we switched to apex/log
2019-12-02 10:00:32 +01:00
Florian Klink
7bafef7a84 runner: document NewRunner 2019-11-27 19:49:39 +01:00
Florian Klink
cd40e68dde submit-queue.tmpl: move HEAD information to result 2019-11-27 19:39:42 +01:00
Florian Klink
ba62db97e9 result: move code into separate result.go 2019-11-27 19:33:37 +01:00
Florian Klink
4c555f330e submit-queue.tmpl.html: improve log rendering 2019-11-27 19:32:14 +01:00
Florian Klink
192835278c submitqueue.submitqueue: document Result functions 2019-11-27 19:32:14 +01:00
Florian Klink
fdfcf7967a submit-queue.tmpl: fix accordion, remove "Current Queue"
The Current Queue in fact is just the latest log element.
2019-11-27 19:18:15 +01:00
Florian Klink
917db9e9fd submit-queue.tmpl.html: remove stray </code> 2019-11-27 19:17:22 +01:00
Florian Klink
a00a24d459 submit-queue.tmpl.html: navbar-expand-{lg->sm} 2019-11-27 13:13:48 +01:00
Florian Klink
e6482a9725 submit-queue.tmpl.html: add history visualizer 2019-11-27 13:05:22 +01:00
Florian Klink
91deabe4b3 submitqueue.Run: copy series into result object after loading them from gerrit
So we have them in the history later.
2019-11-27 13:03:17 +01:00
Florian Klink
87d09f6163 submitqueue: Result: record startTime during a new MakeResult constructor, return EndTime properly
even without any LogEntries
2019-11-27 13:02:20 +01:00
Florian Klink
089e551b72 tmpl: move #region-queue to heading
the series block will get reused, and we don't want the same ID to
appear twice.
2019-11-27 13:01:21 +01:00
Florian Klink
d81ae74999 frontend: reorder things passed to template 2019-11-27 13:00:50 +01:00
Florian Klink
69f0963a17 render series via a separate block 2019-11-27 11:41:45 +01:00
Florian Klink
151cc75532 render serie via a separate block 2019-11-27 11:40:52 +01:00
Florian Klink
1b249600e5 render changeset via a separate block 2019-11-27 11:35:07 +01:00
Florian Klink
97eb1fae38 loadTemplate: support loading mulitple templates 2019-11-27 11:24:04 +01:00
Florian Klink
6bb7689a7b removed unused views/ folder 2019-11-25 18:27:13 +01:00
Florian Klink
b0f08a99ee frontend: expose the currentlyRunning value 2019-11-25 18:26:19 +01:00
Florian Klink
b65f56c6e2 frontend: return state atomically, remove GetSubmitQueue 2019-11-25 18:12:38 +01:00
Florian Klink
3898495d56 .envrc: enable go modules 2019-11-25 17:48:08 +01:00
Florian Klink
16e197b154 TODO: log last update 2019-11-25 17:43:56 +01:00
Florian Klink
ad27d963f2 submitqueue: remove updateHEAD function
This is already done during the Run() function
2019-11-25 17:42:58 +01:00
Florian Klink
266c27d1d0 foo 2019-11-25 17:42:48 +01:00
Florian Klink
10b2c6e365 frontend: we already add hyperlinks 2019-11-25 17:36:39 +01:00
Florian Klink
40b2f11543 frontend: only pass runner to MakeFrontend, add Runner.GetSubmitQueue() 2019-11-25 17:35:11 +01:00
Florian Klink
fecbf8b3e2 WIP: build binary and container 2019-11-22 19:51:16 +01:00
Florian Klink
9c36bb0e6c frontend: add menu, info box and log area 2019-11-22 16:41:19 +01:00
Florian Klink
a77beee02b submit-queue.tmpl.html: use table to make it more usable 2019-11-22 13:35:48 +01:00
Florian Klink
26943b7419 main.go: allow --fetch-only to be set via SUBMIT_QUEUE_FETCH_ONLY 2019-11-21 19:01:08 +01:00
Florian Klink
7019716fb1 gitignore /gerrit-queue 2019-11-21 19:00:54 +01:00
Florian Klink
5def0fe8a4 .gitignore .envrc.private 2019-11-21 19:00:32 +01:00
Florian Klink
057294830e frontend: show submittable status and URL, add runner, revamp logging 2019-11-21 16:13:50 +01:00
Florian Klink
43f8205e85 add README.md 2019-11-18 19:26:51 +01:00
Florian Klink
28bc242178 submitqueue.DoRebase: only rebase the next auto-submittable series on top of current HEAD
Doing "predictive rebasing" produces long series on the next run, and we
don't want to keep state between different runs.
2019-11-18 19:26:51 +01:00
Florian Klink
08b969ea0b submitqueue: keep all series around
Introduce submitqueue.IsAutoSubmittable using a new
serie.FilterAllChangesets function, and skip over non-auto-submittable
series during rebase.

This allows better inspection on why other series are ignored by the
queue.
2019-11-18 19:26:51 +01:00
Florian Klink
c117dcf1af submitqueue: remove unused SubmitQueueTag
This is passed into MakeSubmitQueue instead.
2019-11-18 19:26:51 +01:00