Oliver Giles
eda906b805
refactor: remove transport knowledge from Laminar class
...
Improve the boundary between RpcImpl and LaminarInterface such
that the Laminar class doesn't require any types from kj/async.h.
The necessary logic moved from Laminar to RpcImpl and the notification
now happens by abstract virtual callback instead of kj::Promise.
Also remove the fairly useless 'wait' RPC call and drop the wrappers
around kj::PromiseFulfillerPair
2017-08-10 08:25:20 +03:00
Oliver Giles
ab99af7ca7
implement general-purpose locks
2017-08-10 07:40:30 +03:00
Oliver Giles
f42325b472
implement .init script to populate workspace
2017-08-07 08:15:35 +03:00
Oliver Giles
4fc2310ed9
allow Run::addScript to accept a CWD for scripts
2017-08-07 08:07:50 +03:00
Oliver Giles
ae213b4f74
assymetric queueing logic
...
allow tagged job execution on an untagged node, but not
vice-versa. This allows the admin to assign tags for UI
grouping without worrying about nodes at all
2017-08-06 08:21:17 +03:00
Oliver Giles
9aa172e8f5
adapt nodes and tags to new folder structure
2017-08-06 08:19:58 +03:00
Oliver Giles
b45de55ed1
bugfix: correct path to node .before script
2017-08-06 08:19:00 +03:00
Oliver Giles
66b62f70f3
only compress logs larger than a certain size
...
this fixes an issue where empty or very small logs
resulted in a larger compressed log, which was
truncated and cannot be decompressed
2017-07-31 08:56:58 +03:00
Oliver Giles
3068180f8e
give capnp ownership of process output fd
...
this fixes an intermittent issue (race condition?) where
the IoContext attempts to poll an already-closed fd
2017-07-31 08:53:50 +03:00
Oliver Giles
668ada74d1
move from directory-based to file-based job scripts
2017-07-31 08:51:46 +03:00
Oliver Giles
1bcb2c8dfe
remove no longer used frontend templates
2017-07-31 08:31:43 +03:00
Oliver Giles
8080d38cfe
fix reported estimated time of completion from websocket
2017-07-13 21:59:59 +03:00
Oliver Giles
492ddd2ceb
"Laminar" as default page title
2017-07-13 21:59:59 +03:00
Oliver Giles
ad9837fd96
frontend: replace angular with vue
2017-07-13 21:59:59 +03:00
Oliver Giles
4e911756bc
update copyright year
2016-07-25 15:00:49 +03:00
Oliver Giles
2ea27d46ed
implement proper child cleanup
2016-07-25 14:59:45 +03:00
Oliver Giles
7b7de751e3
fix for new non-COW std::strings
2016-07-23 18:07:33 +03:00
Oliver Giles
82b39c2961
compress logs in database
2015-12-06 13:47:43 +01:00
Oliver Giles
1eb6a9138e
better message on execl failure
2015-12-06 12:41:38 +01:00
Oliver Giles
e7fe117426
don't log full file paths, remove use of KJ_DBG
2015-12-06 12:36:12 +01:00
Oliver Giles
99fd47de68
order recent builds in job page chronologically
2015-12-06 12:20:14 +01:00
Oliver Giles
f181c87d3b
report running state, only show spinner when actually running
2015-12-06 12:15:05 +01:00
Oliver Giles
87ebf91f1e
don't show previous build button for first job run
2015-12-06 11:54:34 +01:00
Oliver Giles
10d7ad8960
create db with primary key and index
2015-12-06 11:53:06 +01:00
Oliver Giles
e40fb52554
output a warning when archive exists instead of failing
2015-12-06 11:37:24 +01:00
Oliver Giles
d44d5ba0e6
boost compatibility
2015-11-19 21:43:08 +01:00
Oliver Giles
56a8301e85
increment busyExecutors only when queueing cannot fail
2015-11-01 11:35:46 +01:00
Oliver Giles
695b52c101
error on non-existent job
2015-11-01 11:35:07 +01:00
Oliver Giles
cb954f0ff8
FE cleanup, send missing messages
2015-11-01 11:34:18 +01:00
Oliver Giles
16081adb30
add missing enum conversion
2015-11-01 11:30:18 +01:00
Oliver Giles
beede38643
propagate job_completed message to run page
2015-11-01 11:29:06 +01:00
Oliver Giles
e140221c72
cleanup, dynamically present artifacts
2015-11-01 11:28:22 +01:00
Oliver Giles
b3cd9929b7
client: when job fails, still wait for others to complete
2015-11-01 11:25:43 +01:00
Oliver Giles
2b6cbc18b1
spinner+progress
2015-11-01 11:24:28 +01:00
Oliver Giles
1e0a2ebc36
frontend love
2015-09-26 22:54:27 +02:00
Oliver Giles
0df97e95fd
support for job and node tags
2015-09-24 22:02:11 +02:00
Oliver Giles
79c3ee5fcb
fix spelling mistake
2015-09-24 21:07:48 +02:00
Oliver Giles
3ee5b4f8f6
better socket closing
2015-09-23 08:15:08 +02:00
Oliver Giles
f923762c7e
server cleanup, fix logic error in early promise resolution
2015-09-21 22:30:50 +02:00
Oliver Giles
cf9bee07db
add favicon, nav logo
2015-09-20 19:57:05 +02:00
Oliver Giles
a729a6782e
implement display and serving of archived artifacts
2015-09-19 17:24:20 +02:00
Oliver Giles
dbc75000a5
readability: move runFinished into its own function
2015-09-19 15:41:19 +02:00
Oliver Giles
50dd7b47af
use an empty string for the default node name
2015-09-19 15:40:53 +02:00
Oliver Giles
1caeeabbfd
expose lNode
2015-09-19 15:40:09 +02:00
Oliver Giles
ae59da1245
implement LAMINAR_KEEP_WORKDIR
2015-09-19 15:29:07 +02:00
Oliver Giles
291428ef2d
add support for global, node and job level env files
2015-09-19 14:55:16 +02:00
Oliver Giles
f260b7813c
remove iniparser, laminar.conf must be sourced
2015-09-19 14:36:03 +02:00
Oliver Giles
cf10d5c795
expose lArchive
2015-09-19 13:40:00 +02:00
Oliver Giles
2147346493
expose lResult and lLastResult
2015-09-19 10:38:34 +02:00
Oliver Giles
a2701dcfd9
Initial commit
2015-09-13 22:25:26 +02:00