55 Commits

Author SHA1 Message Date
Ian Roddis
0ef9738f2e Adding more robust checking for json parsing 2022-03-07 09:57:41 -04:00
Ian Roddis
197af4c76a Making task endpoint a bit more useful, including state changes and attempts 2022-02-25 14:17:36 -04:00
Ian Roddis
0603285c10 Adding Vue.js webui
Squashed commit of the following:

commit 29571182b1ec3b5be2cec3212c2bea1121a3dac2
Author: Ian Roddis <tech@kinesin.ca>
Date:   Thu Feb 24 11:29:47 2022 -0400

    Adding more elegant handling of tasks with no attempts

commit 18c8ccb0863abbf6c9cc0efe5cc68df03a9eb80d
Author: Ian Roddis <tech@kinesin.ca>
Date:   Thu Feb 24 11:18:59 2022 -0400

    Better handling of no attempts at all

commit 962f9f6e5e17f71bc3766553913774631f66e7ef
Author: Ian Roddis <tech@kinesin.ca>
Date:   Thu Feb 24 11:10:28 2022 -0400

    Adding fix for missing attempts

commit 19b8203e952b3d21f4ff3f9b97a01c4d567ff1e7
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 23 16:56:37 2022 -0400

    Adding webui instructions to readme

commit 81383c80f01101828c0c49868916a2712d140f42
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 23 16:48:31 2022 -0400

    Adding in route splatting to support static assets

commit c9b39b307916c0fb1e88769d6986ddf7c3ba183a
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 23 12:11:11 2022 -0400

    Cleanup

commit 177819a1439cd1a0f32c652abf670f54457e105a
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 23 12:09:40 2022 -0400

    Setting explicit url for extra CSS

commit 78261129511c50657e7902934cee396eb1e4e3a8
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 23 12:08:27 2022 -0400

    Moving webui

commit 9f8db6e2c2c8a231060217cb82f1b13aabe4eae2
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 23 12:06:25 2022 -0400

    Reorganizing elements, adding regex for run list

commit f114250c9a506b2c0e9d642cc75749e99cc76cef
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 23 10:52:41 2022 -0400

    Adding regex filtering to tasks

commit 2de2f218416210443119aa88fa49c714197f4b16
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 23 10:42:22 2022 -0400

    Adding in task details and getting the plumbing working

commit 660a2078e22799ba51b4b8bbe5c12cd0f9315b0a
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 23 09:38:13 2022 -0400

    Fixing remaining settings

commit 1aa0dfe1c971a12dfed183586ee5a3206d452409
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 23 09:36:25 2022 -0400

    Playing with settings

commit 84cbd11c45651c7c6c96c16714e741b6aee10bc5
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 23 08:52:52 2022 -0400

    Removing extra code

commit 6e31646b7c62368cab22b3844a70943e0149ddc7
Author: Ian Roddis <tech@kinesin.ca>
Date:   Tue Feb 22 17:29:47 2022 -0400

    Adding linter, renaming components to meet standards, fixing some mixups in settings

commit 225442ee5732d007867e485ccea05293e3e5e1b7
Author: Ian Roddis <tech@kinesin.ca>
Date:   Tue Feb 22 17:25:27 2022 -0400

    Fixing sorters

commit eb0d7a4c4c30d8e8b43b574ed0c2f97515bb9353
Author: Ian Roddis <tech@kinesin.ca>
Date:   Tue Feb 22 16:46:41 2022 -0400

    Controls are coming together

commit b1789d1cc3c0bae170e0ca1a47cccfd344197244
Author: Ian Roddis <tech@kinesin.ca>
Date:   Tue Feb 22 11:08:09 2022 -0400

    More refactoring

commit 6d0afce429aad00864482a2cc7dd731a53312e14
Author: Ian Roddis <tech@kinesin.ca>
Date:   Sun Feb 20 22:29:43 2022 -0400

    figuring out layout

commit 6af498f3aa7fe2f45121df2278cdfac297165c5c
Author: Ian Roddis <tech@kinesin.ca>
Date:   Sun Feb 20 12:30:49 2022 -0400

    Migrating to prop drilling / emiting

commit dffe7059ce01209d2def6ef7c03bc750e31fe741
Author: Ian Roddis <tech@kinesin.ca>
Date:   Fri Feb 18 17:20:46 2022 -0400

    Checkpointing work for now

commit d6428ad59c9c05ab7fba82ce3c0441ac3f568796
Author: Ian Roddis <tech@kinesin.ca>
Date:   Fri Feb 18 17:05:37 2022 -0400

    Adding in toggling for states

commit b9a4f2dc02f327d3529821e217d3b6a00a84f202
Author: Ian Roddis <tech@kinesin.ca>
Date:   Fri Feb 18 16:43:01 2022 -0400

    Reorganizing everything

commit d33691d022597d1ff8f588450e147c72555be9f4
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 16 17:04:54 2022 -0400

    Removing console logging

commit 4537376ccad6fc0c52f0a7cfd2b2bf23f708196c
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 16 17:04:27 2022 -0400

    Refresh timer working now

commit 213a3da4fd07c82cd18cd8c3b2422ddc78bd6fb4
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 16 16:40:45 2022 -0400

    Adding timer

commit ff495ac69563689ff4fc07119936079e57608ea7
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 16 16:02:53 2022 -0400

    Refactoring some code, adding in endpoint to kill a running task

commit 97ff28b9b1910e03e0f2725a3f54d2a07e53714c
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 16 14:56:15 2022 -0400

    Renaming UI

commit affab06ad657833b73588eac919250935b353f31
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 16 13:29:31 2022 -0400

    moving to bootstrap

commit c40a2e58a86362863c905470f4417753aaf0dac2
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 16 12:33:08 2022 -0400

    adding task button

commit 420463b8d7f964baa0dfc7c87c2e9024bc8284cc
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 16 10:51:11 2022 -0400

    checkpoint

commit a7aa3db731255e7e13bc58d901b8eb1e30ede39c
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 16 09:33:01 2022 -0400

    Fixing up state

commit 361b4cbcd8f1268eb9b494084d6862a6ab8f3a27
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 16 09:29:14 2022 -0400

    Fixing event callbacks

commit 388cada692dc8d7e0eff611467d4c77ce897a54c
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 16 09:24:39 2022 -0400

    Adding global state, task view and buttons

commit cb5a3acef0bd982621678fbd44a133db56420871
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 16 07:49:30 2022 -0400

    Adding RunView

commit 4c78ef1250709e7c8f5ef3433640fd8d1d319a8d
Author: Ian Roddis <tech@kinesin.ca>
Date:   Tue Feb 15 17:20:23 2022 -0400

    checkpoint

commit 2c5b610101e9c18ef1ad8f962d7309b63c80743c
Author: Ian Roddis <tech@kinesin.ca>
Date:   Tue Feb 15 17:10:06 2022 -0400

    Adding explicit payload headers, adding vue and react apps

commit 95ac6c05903bc83c6934db58b48649eee2038c3d
Author: Ian Roddis <tech@kinesin.ca>
Date:   Tue Feb 15 12:56:57 2022 -0400

    Adding CORS support, rough-in of webui
2022-02-24 11:40:18 -04:00
Ian Roddis
93ab2f38c9 Adding fix for uninitialized char * 2022-02-24 10:46:52 -04:00
Ian Roddis
4e5ca633d8 Adding error messaging when failing to execvpe 2022-02-23 21:36:48 -04:00
Ian Roddis
3822426446 Adding check for unsatisfyable requirements in a remote task 2022-02-23 13:34:28 -04:00
Ian Roddis
b63739c0a9 Adding StopTask endpoint and endpoint documentation 2022-02-22 10:32:31 -04:00
Ian Roddis
0ee198e3e7 Fixing issue building dag with states where states were not properly transfered 2022-02-16 14:33:04 -04:00
Ian Roddis
3866332e77 Reverting to rapidjson for attempt record serialization 2022-02-16 10:06:48 -04:00
Ian Roddis
71756d9ec2 Fixing daggyr issues when reporting on tasks with very large outputs
(>10kb).

Squashed commit of the following:

commit b87fa418b4aca78928186a8fa992bef701e044a4
Author: Ian Roddis <tech@kinesin.ca>
Date:   Mon Feb 14 12:55:34 2022 -0400

    removing memory leak

commit 5e284ab92dbea991262a08c0cd50d6fc2f912e3b
Author: Ian Roddis <tech@kinesin.ca>
Date:   Mon Feb 14 11:58:57 2022 -0400

    Speeding up serialization, fixing payload sizing issue on daggyr

commit e5e358820da4c2587741abdc3b6b103e5a4d4dd3
Author: Ian Roddis <tech@kinesin.ca>
Date:   Sun Feb 13 22:24:04 2022 -0400

    changing newlines to std::endl for flush goodness

commit 705ec86b75be947e64f4124ec8017cba2c8465e6
Author: Ian Roddis <tech@kinesin.ca>
Date:   Sun Feb 13 22:16:56 2022 -0400

    adding more logging

commit aa3db9c23e55da7a0523dc57e268b605ce8faac3
Author: Ian Roddis <tech@kinesin.ca>
Date:   Sun Feb 13 22:13:56 2022 -0400

    Adding threadid

commit 3b1a0f1333b2d43bc5ecad0746435504babbaa61
Author: Ian Roddis <tech@kinesin.ca>
Date:   Sun Feb 13 22:13:24 2022 -0400

    Adding some debugging

commit 804507e65251858fa597b7c27bcece8d8dfd589d
Author: Ian Roddis <tech@kinesin.ca>
Date:   Sun Feb 13 21:52:53 2022 -0400

    Removing curl global cleanup
2022-02-15 11:22:21 -04:00
Ian Roddis
0d365f3a7b Increasing curl timeout 2022-02-11 22:29:27 -04:00
Ian Roddis
80cca0d6bf removing cout statement 2022-02-11 13:12:08 -04:00
Ian Roddis
f08b17317c Simplifying code 2022-02-11 13:09:01 -04:00
Ian Roddis
443bc789cf Unlocking unique lock to prevent one bad agent stalling the rest 2022-02-11 13:06:20 -04:00
Ian Roddis
61e392cba3 Fixing unit tests, fixing cmake so make test works properly 2022-02-04 12:36:15 -04:00
Ian Roddis
ea3f67f226 Adding a general logger and integrating it with daggyr 2022-02-04 11:58:45 -04:00
Ian Roddis
57e93b5045 Simplifying daggyr server, and returning to a
task submit / task poll model.

Squashed commit of the following:

commit 0ef57f095d15f0402915de54f83c1671120bd228
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 2 08:18:03 2022 -0400

    Simplifying task polling and reducing lock scopes

commit d77ef02021cc728849c7d1fb0185dd1a861b4a3d
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 2 08:02:47 2022 -0400

    Simplifying check

commit c1acf34440162abb890a959f3685c2d184242ed5
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 2 08:01:13 2022 -0400

    Removing capacity tracking from runner, since it is maintained in daggyd

commit 9401246f92113ab140143c1895978b9de8bd9972
Author: Ian Roddis <tech@kinesin.ca>
Date:   Wed Feb 2 07:47:28 2022 -0400

    Adding retry for submission

commit 398aa04a320347bb35f23f3f101d91ab4df25652
Author: Ian Roddis <tech@kinesin.ca>
Date:   Tue Feb 1 14:54:20 2022 -0400

    Adding in execution note, as well as requeuing the result if the peer disconnects

commit 637b14af6d5b53f25b9c38d4c8a7ed8532af5599
Author: Ian Roddis <tech@kinesin.ca>
Date:   Tue Feb 1 14:13:59 2022 -0400

    Fixing locking issues

commit 4d6716dfda8aa7f51e0abbdab833aff618915ba0
Author: Ian Roddis <tech@kinesin.ca>
Date:   Tue Feb 1 13:33:14 2022 -0400

    Single task daggyr working

commit bd48a5452a92817faf25ee44a6115aaa2f6c30d1
Author: Ian Roddis <tech@kinesin.ca>
Date:   Tue Feb 1 12:22:04 2022 -0400

    Checkpointing work
2022-02-02 21:12:05 -04:00
Ian Roddis
c9bfce31e6 I cannot type today 2022-02-01 13:38:08 -04:00
Ian Roddis
b3397381dc Fixing logic error in submission batches 2022-02-01 13:34:19 -04:00
Ian Roddis
df108dfd28 Increasing curl timeout 2022-02-01 11:02:33 -04:00
Ian Roddis
cc7646f386 Adding delete method 2022-02-01 10:33:58 -04:00
Ian Roddis
e3a6c9086a Removing verbose logging 2022-01-28 14:36:33 -04:00
Ian Roddis
782e6a8b97 Changing behaviour of runner to submit at most MAX_SUBMITS for execution before checking for completed tasks 2022-01-28 14:28:46 -04:00
Ian Roddis
5af8deabec Making DaggyTaskRunner block until a runner is available 2022-01-28 14:18:01 -04:00
Ian Roddis
cbd493ec38 Fixing issue with daggyd config parsing 2022-01-28 13:28:29 -04:00
Ian Roddis
c9820c19a0 Small fixes to test cases 2022-01-28 10:23:21 -04:00
Ian Roddis
c09d5b7d8b Adding in queuing in the daggyd process for more even distribution 2022-01-28 10:09:55 -04:00
Ian Roddis
070d2ceddf Adding support for environment variables 2022-01-18 10:54:25 -04:00
Ian Roddis
2784aeee28 Adding in check for cores and memoryMB 2022-01-14 15:48:06 -04:00
Ian Roddis
07646de2cd Adding SSH executor 2022-01-14 15:39:57 -04:00
Ian Roddis
9e7d78788b Fixing issue in dagrunner where tasks were never removed from running list 2022-01-13 12:52:00 -04:00
Ian Roddis
854ca5be22 Reducing the scope of a lock 2022-01-13 10:49:09 -04:00
Ian Roddis
3f5d31e036 Removing needless second map lookup 2022-01-12 19:59:10 -04:00
Ian Roddis
868e74fbeb Seems to work now 2022-01-12 13:11:55 -04:00
Ian Roddis
9a5a247f15 Checkpointing work 2022-01-12 12:50:46 -04:00
Ian Roddis
04e95cfcf3 Making fork process more descriptive in the case of failure 2022-01-10 13:12:19 -04:00
Ian Roddis
7312776e39 Fixing issue with logic for daggyr submission 2022-01-10 13:09:11 -04:00
Ian Roddis
53308c063d Fixing a number of scaling issues:
- Missed closing of file descriptor made ForkingTaskExecutor
  silently die after running out of FDs
- Tightened up scope for locks to prevent http timeout
- Simplified threadpool
2022-01-10 13:02:10 -04:00
Ian Roddis
db6fd64601 Fixing dagrun counts 2022-01-07 17:38:29 -04:00
Ian Roddis
f9076be081 Adding fix for race condition in task resource management 2022-01-07 16:00:04 -04:00
Ian Roddis
4da78c9dd6 Adding executor description for verbose output, adding output directory for build artifacts 2022-01-07 14:37:06 -04:00
Ian Roddis
856e5bd2f4 Adding in task attempts drilldown 2022-01-06 15:20:06 -04:00
Ian Roddis
a4b26bce04 Handling http errors a bit more gracefully 2021-12-30 14:29:56 -04:00
Ian Roddis
3c6966a9ac Adding discovery of capacities after the fact. 2021-12-24 10:52:06 -04:00
Ian Roddis
8ca5cdafe2 Fixing issue with resolving 2021-12-24 10:44:19 -04:00
Ian Roddis
d832b935d7 Moving to a poll method for workers, and daggyd-preserved capacities 2021-12-24 10:22:58 -04:00
Ian Roddis
779d6adaea Moving to a poll method for workers, and daggyd-preserved capacities 2021-12-24 10:21:19 -04:00
Ian Roddis
dd473ab8f0 Adjusting capacity impact calculation to yield a more even distribution of jobs 2021-12-23 11:47:55 -04:00
Ian Roddis
85d252f43c Small bug fixes 2021-12-21 17:23:58 -04:00
Ian Roddis
d90f49b2bb Lots of fixes to poor daggyr implementation, added debugging messages 2021-12-21 16:49:45 -04:00