Commit Graph

  • 64c8fa851d Show assigned worker in task details Sybren A. Stüvel 2022-06-17 16:36:55 +02:00
  • 7327896db9 Worker: allow overriding worker name from environment Sybren A. Stüvel 2022-06-17 16:24:03 +02:00
  • 857704c184 Web: worker nickname → name Sybren A. Stüvel 2022-06-17 15:55:36 +02:00
  • cdb7789f08 Refactor: Manager, move test code Sybren A. Stüvel 2022-06-17 15:51:15 +02:00
  • 046853932d Manager: re-queue previously failed tasks of worker when blocklisting Sybren A. Stüvel 2022-06-17 15:49:07 +02:00
  • b95bed1f96 Refactor: rename RequeueTasksOfWorker to RequeueActiveTasksOfWorker Sybren A. Stüvel 2022-06-17 15:21:23 +02:00
  • fd31a85bcd Manager: add blocking of workers when they fail certain tasks too much Sybren A. Stüvel 2022-06-17 15:03:15 +02:00
  • 56abc825a6 Refactor: Manager, refactor handling of task failures Sybren A. Stüvel 2022-06-17 15:01:46 +02:00
  • 0396919229 FEATURES: add new way in which jobs can get stuck Sybren A. Stüvel 2022-06-17 14:59:26 +02:00
  • 6feee74c54 Cleanup: Manager, move worker task update handling code into its own file Sybren A. Stüvel 2022-06-17 11:46:07 +02:00
  • 50e795c595 FEATURES.md: mark 'clear task failure list' as done Sybren A. Stüvel 2022-06-17 11:39:57 +02:00
  • 81f81d0e0a Show task failure list in the web frontend Sybren A. Stüvel 2022-06-17 11:34:07 +02:00
  • 7f14dac62f OAPI: regenerate code Sybren A. Stüvel 2022-06-17 11:33:33 +02:00
  • aaed1e0589 OAPI: include task failure list in Task schema Sybren A. Stüvel 2022-06-17 11:33:00 +02:00
  • 0b5140fc5f Manager: clear task failure list on requeueing of jobs & tasks Sybren A. Stüvel 2022-06-17 11:05:34 +02:00
  • d8be9d95e8 README: document task status meanings Sybren A. Stüvel 2022-06-17 11:05:50 +02:00
  • e9fca8d993 Cleanup: typo fix in comment Sybren A. Stüvel 2022-06-17 11:03:43 +02:00
  • b991e5f446 Cleanup: Manager, clarify some function names of the task state machine Sybren A. Stüvel 2022-06-17 11:01:41 +02:00
  • 8764f8f7c1 Manager: task scheduler, don't schedule tasks the worker failed before Sybren A. Stüvel 2022-06-16 16:02:28 +02:00
  • ec10128f85 Worker: Sleep command, return error when sleep time is negative Sybren A. Stüvel 2022-06-16 15:46:03 +02:00
  • d5d0893b05 Worker: use explicit types for command parameter errors Sybren A. Stüvel 2022-06-16 15:45:09 +02:00
  • 8af1b9d976 Worker: fix sync issue in TestUpstreamBufferManagerUnavailable unit test Sybren A. Stüvel 2022-06-16 15:41:49 +02:00
  • da1b42f9fa Worker: fix sqlite connection issue in unit tests Sybren A. Stüvel 2022-06-16 15:42:52 +02:00
  • 7e28cfa69c Worker: add task failures to the task log as well Sybren A. Stüvel 2022-06-16 12:22:05 +02:00
  • e1309ad8fc Worker: flush upstream buffer when shutting down Sybren A. Stüvel 2022-06-16 12:21:17 +02:00
  • 9ddf72fa37 Worker: sign off as last step of shutdown Sybren A. Stüvel 2022-06-16 12:19:03 +02:00
  • 5bc94101e8 Worker: Avoid sleep at shutdown Sybren A. Stüvel 2022-06-16 12:08:13 +02:00
  • 9ab41984ac Adjust Go code for Nickname -> Name change Sybren A. Stüvel 2022-06-16 11:02:59 +02:00
  • 61aad21e99 OAPI: regenerate code Sybren A. Stüvel 2022-06-16 11:02:04 +02:00
  • 55676b000e OAPI: change worker 'nickname' to just 'name' Sybren A. Stüvel 2022-06-16 11:01:27 +02:00
  • 12f0a605a4 Manager: log configured worker timeout at startup Sybren A. Stüvel 2022-06-16 10:51:17 +02:00
  • 5f2712980e Manager: task scheduler, check for requested worker status change first Sybren A. Stüvel 2022-06-16 10:48:38 +02:00
  • ee53373878 Cleanup: compare worker state to constant instead of hard-coded state Sybren A. Stüvel 2022-06-16 10:46:50 +02:00
  • 40f711bf69 Fix two unit tests for the previous commit Sybren A. Stüvel 2022-06-16 10:42:04 +02:00
  • be0b10400f Manager: count workers as 'seen' even when there is no task Sybren A. Stüvel 2022-06-16 10:39:42 +02:00
  • 7d7c2b1bd6 Cleanup: blacklist → blocklist Sybren A. Stüvel 2022-06-16 10:36:30 +02:00
  • 6e12a2fb25 Manager: keep track of which worker failed which task Sybren A. Stüvel 2022-06-13 18:38:35 +02:00
  • c5debdeb70 Manager: add 'task failure list' to record workers failing tasks Sybren A. Stüvel 2022-06-13 16:51:19 +02:00
  • e35911d106 Manager: add ability to delete jobs Sybren A. Stüvel 2022-06-13 15:44:23 +02:00
  • e5d0e987e1 Manager: enforce DB foreign key checks at startup Sybren A. Stüvel 2022-06-13 15:42:41 +02:00
  • 6ec493d944 Manager, more efficiently create tasks Sybren A. Stüvel 2022-06-13 15:26:39 +02:00
  • 02bc03ae2b Manager: replace gorm.Model with our own persistence.Model struct Sybren A. Stüvel 2022-06-13 15:11:24 +02:00
  • ec5b3aac52 Manager: on getting task update from Worker, write log before status change Sybren A. Stüvel 2022-06-13 14:19:47 +02:00
  • 25d5b01b3c Cleanup: test errors with assert.NoError() instead of assert.Nil() Sybren A. Stüvel 2022-06-13 15:28:53 +02:00
  • 6fc936d0a6 Revert accidental debug code Sybren A. Stüvel 2022-06-13 15:31:30 +02:00
  • b922722614 Manager: broadcast worker timeouts over SocketIO Sybren A. Stüvel 2022-06-13 13:04:58 +02:00
  • 75ca0e652e Cleanup: timeout checker, improve readability of failed tests Sybren A. Stüvel 2022-06-13 12:50:27 +02:00
  • 1de1e3a9a5 Manager: add 'canary' test to all timeout checker tests Sybren A. Stüvel 2022-06-13 12:49:57 +02:00
  • 5dac3c2dc0 Manager: mark workers as 'seen' when they send updates Sybren A. Stüvel 2022-06-10 17:56:48 +02:00
  • 986b647967 Manager: re-queue tasks of timed-out workers Sybren A. Stüvel 2022-06-10 17:55:22 +02:00
  • 7d5aae25b5 Manager: add timeout checks for workers Sybren A. Stüvel 2022-06-13 12:31:21 +02:00
  • e8171fc597 Cleanup: Manager, reduce log level of task timeout checks Sybren A. Stüvel 2022-06-13 12:31:03 +02:00
  • 67562856d3 Manager: let Gorm create an index on Task.LastTouchedAt Sybren A. Stüvel 2022-06-13 12:30:11 +02:00
  • c3525c3b1a Manager: move task requeueing to TaskStateMachine Sybren A. Stüvel 2022-06-13 12:29:44 +02:00
  • e06bc484f4 Cleanup: manager, move task state machine interfaces to their own file Sybren A. Stüvel 2022-06-10 16:53:49 +02:00
  • 01c45afc20 Manager: explicitly store timestamps as UTC Sybren A. Stüvel 2022-06-13 12:10:11 +02:00
  • ec3a74f5f6 VSCode: disable 'cover on save' setting, it's too noisy Sybren A. Stüvel 2022-06-10 16:53:39 +02:00
  • bf831aa0fd FEATURES: mark task timeout monitoring as done Sybren A. Stüvel 2022-06-10 16:14:38 +02:00
  • fe1627dd85 Cleanup: timeout checker, move task-specific code to tasks.go Sybren A. Stüvel 2022-06-10 14:58:44 +02:00
  • 13307c5a24 Manager: add canary test to timeout checker unit test Sybren A. Stüvel 2022-06-10 14:53:23 +02:00
  • 09902d201c Manager: fix task timeout check logging of assigned workers Sybren A. Stüvel 2022-06-10 14:50:53 +02:00
  • 734982ffbc Manager: log HTTP endpoints only at Trace level Sybren A. Stüvel 2022-06-10 14:50:41 +02:00
  • d90a8b987d Manager: Task Timeout Checker Sybren A. Stüvel 2022-06-09 10:58:12 +02:00
  • 295891a17a Manager: ensure Gorm-generated timestamps are in UTC Sybren A. Stüvel 2022-06-10 14:30:30 +02:00
  • 24204084c1 Manager: move timestamping of log messages to task_logs package Sybren A. Stüvel 2022-06-09 17:00:38 +02:00
  • 819cad1d18 Manager: move broadcasting of task logs via SocketIO to task log service Sybren A. Stüvel 2022-06-09 16:49:48 +02:00
  • 04dd479248 Manager: protect task log writing with mutex Sybren A. Stüvel 2022-06-09 14:44:54 +02:00
  • 92d6693871 Show Task's "last touched" in the web interface Sybren A. Stüvel 2022-06-09 11:59:43 +02:00
  • 1c9846bb8f OAPI: regenerate code Sybren A. Stüvel 2022-06-09 11:59:32 +02:00
  • f020582bf7 OpenAPI: include last_touched in Task schema Sybren A. Stüvel 2022-06-09 11:59:01 +02:00
  • 354fd29f9e Manager: Start timeout counting as soon as Worker gets task assigned Sybren A. Stüvel 2022-06-09 11:58:30 +02:00
  • 87bce6be36 Manager: unify logging of task assignment and requeue-on-signoff Sybren A. Stüvel 2022-06-09 11:30:46 +02:00
  • 75903a2da3 Manager: prepend timestamp to "task assigned to worker" task log entries Sybren A. Stüvel 2022-06-09 11:24:02 +02:00
  • 7c43b9e1bc Web: include status by name in job & task tables Sybren A. Stüvel 2022-06-09 11:01:03 +02:00
  • b186ea1828 Manager: write to task log when assigning it to a worker Sybren A. Stüvel 2022-06-09 10:57:52 +02:00
  • b4d2fc4231 Manager: keep track of when a Worker last worked on a task Sybren A. Stüvel 2022-06-03 16:33:50 +02:00
  • 0be1ca30dd Cleanup: manager, move api_impl interfaces to interfaces.go Sybren A. Stüvel 2022-06-03 15:51:28 +02:00
  • bba5c6020d FEATURES.md: mark some features as done, add some others Sybren A. Stüvel 2022-06-03 15:51:39 +02:00
  • b41feee313 Web: reduce workers table height Sybren A. Stüvel 2022-06-03 13:02:23 +02:00
  • 375a6666c2 Web: move Worker status change requests to drop-down Sybren A. Stüvel 2022-06-03 13:01:47 +02:00
  • df36d93d7b Web: style "current page" links differently Sybren A. Stüvel 2022-06-02 18:56:24 +02:00
  • f1a3d98c5b Roll back color changes Sybren A. Stüvel 2022-06-02 18:51:20 +02:00
  • 17f1b42d19 Web: slightly bluer purple Sybren A. Stüvel 2022-06-02 18:42:57 +02:00
  • 3818d4df83 Web: add simple worker action bar Sybren A. Stüvel 2022-06-02 18:42:34 +02:00
  • 72fd1ac761 Web: simplify log tail fetching a bit Sybren A. Stüvel 2022-06-02 18:29:16 +02:00
  • 326e54e45a Web: fix job & task subscriptions Sybren A. Stüvel 2022-06-02 18:29:03 +02:00
  • 276b026f02 Web: change accent hue Sybren A. Stüvel 2022-06-02 18:18:46 +02:00
  • ce2e11c35c Web: handle corner case where worker is deselected Sybren A. Stüvel 2022-06-02 16:45:37 +02:00
  • 8e7f1e2868 Manager: some extra unit tests for worker signoff behaviour Sybren A. Stüvel 2022-06-02 16:37:29 +02:00
  • 6cf82e5d43 Manager: cleanup, refactor Worker state change request persistence code Sybren A. Stüvel 2022-06-02 16:35:47 +02:00
  • 132ce8f2ec Merge 'shutdown' and 'offline' states Sybren A. Stüvel 2022-06-02 16:26:23 +02:00
  • cf8b4e18b1 OAPI: regenerate code Sybren A. Stüvel 2022-06-02 16:25:38 +02:00
  • 31e128d7f5 OAPI: remove shutdown worker state Sybren A. Stüvel 2022-06-02 16:19:26 +02:00
  • 678308fb6d Manager: allow cancelling worker state change requests Sybren A. Stüvel 2022-06-02 12:43:16 +02:00
  • 3ce225b6e1 Web: remove debug console log Sybren A. Stüvel 2022-06-02 12:33:38 +02:00
  • bc33f55b3c Web: update for extraction of status change requests to struct Sybren A. Stüvel 2022-06-02 12:33:32 +02:00
  • 9ed6b6d931 Manager: adjust code for WorkerStatusChangeRequest extraction Sybren A. Stüvel 2022-06-02 12:17:54 +02:00
  • 9ca14cd471 OAPI: regenerate code Sybren A. Stüvel 2022-06-02 12:16:51 +02:00
  • 0d50a7eae5 OAPI: clean, remove unnecessary quotes Sybren A. Stüvel 2022-06-02 12:16:14 +02:00
  • 169aa3ddc3 OAPI: extract worker status request fields into their own struct Sybren A. Stüvel 2022-06-02 12:16:03 +02:00