Ian Roddis
d731f9f5b1
Adding support for execution on slurm grids
...
- Adding support for SlurmTaskExecutor in `daggyd` if DAGGY_ENABLE_SLURM is defined.
- Renaming some test cases
- Enabling compile-time slurm support
- Adding slurm documentation
2021-09-10 10:53:58 -03:00
Ian Roddis
d15580f47f
Massive re-org to allow per-executor job specification formats and executor-specific task validation and expansion.
...
A few different renames to try and keep things more consistent.
2021-09-03 09:10:38 -03:00
Ian Roddis
e746f8c163
- Adding daemonization for daggyd
...
- Changing how parameter keys are stored in the map to allow for future key handling.
2021-09-01 13:32:16 -03:00
Ian Roddis
77f7819584
Fixing test where return by reference would cause unexpected results when compiled with release flags
2021-08-31 19:14:34 -03:00
Ian Roddis
441cdb5b2e
Renaming rest_server to daggyd, and daggy to libdaggy
2021-08-31 17:04:03 -03:00
Ian Roddis
7b07380e16
- Removing duplicate information (taskName stored in 3 places)
2021-08-31 12:21:34 -03:00
Ian Roddis
2c00001e0b
Adding support for isGenerator tasks
...
- Changing how DAG is represented, both in code and how DAGs are defined
in JSON.
- Removing std::vector<Task> representation in favour of a map that will
enforce unique task names
- Task names now have a name (generated), and a definedName.
- Adding support to loggers to add tasks after a DAGRun has been
initialized.
2021-08-30 22:05:37 -03:00
Ian Roddis
7fa47c1c4a
More CI stupidity
2021-08-25 16:16:58 -03:00
Ian Roddis
fcdc225e28
Adjusting test case to eventually exit with an error after a reasonable time.
2021-08-25 15:20:08 -03:00
Ian Roddis
212bd80df2
Squashed commit of the following:
...
commit 73994327de890590eede353c8131f3f7c1e8aaa3
Author: Ian Roddis <gitlab@ie2r.com >
Date: Wed Aug 25 13:38:29 2021 -0300
- Fixing up checks for individual dag runs
commit f20e3a3dec8c063111cf60f2bec2b8f84c8a4100
Author: Ian Roddis <gitlab@ie2r.com >
Date: Wed Aug 25 10:49:43 2021 -0300
- Finishing serialization of DAGRun
- Checkpointing work.
commit b490abadf93e3085e4204003de7eaa8183b4e1d5
Author: Ian Roddis <gitlab@ie2r.com >
Date: Wed Aug 25 10:34:08 2021 -0300
- Consolidating struct definitions into Defines.hpp
- Renaming DAGRunRecord member runStates to taskRunStates
commit 050346ec1fd10d1091f261905c6175ffe0bcf001
Author: Ian Roddis <gitlab@ie2r.com >
Date: Wed Aug 25 09:27:05 2021 -0300
- Adding additional tests for server endpoints
2021-08-25 13:40:05 -03:00
Ian Roddis
6ed57806d0
- More fixes for CI failing tests
2021-08-24 07:58:58 -03:00
Ian Roddis
307cff73f8
- More fixes for CI failing tests
2021-08-23 17:58:43 -03:00
Ian Roddis
7016cb37ba
- More fixes for CI failing tests
2021-08-23 17:53:47 -03:00
Ian Roddis
cf37f9a6fc
- More fixes for CI failing tests
2021-08-23 17:49:04 -03:00
Ian Roddis
1bdc5dafd5
- More fixes for CI failing tests
2021-08-23 17:42:43 -03:00
Ian Roddis
d4c9b3fcee
- Adjusting tests so they run without referencing /tmp
2021-08-23 17:37:33 -03:00
Ian Roddis
808a7f9af4
- Adding more documentation
...
- Renaming "parameters" to "taskParameters" for clarity, and to distinguish from "executionParameters" that will be implemented down the road.
2021-08-23 14:17:22 -03:00
Ian Roddis
6b9baffe27
Changing Executor interface to allow for more flexible tasks down the road
2021-08-23 12:03:16 -03:00
Ian Roddis
2083b1c3f1
Refactoring RunState, fixing logic error in when to end errored DAG runs, added convenience functions to retry failed DAGs.
2021-08-20 21:44:12 -03:00
Ian Roddis
dc8ea4c369
- Adding support for state to OStreamLogger to make it more useful for test cases
...
- Making runDAG return the end DAG
- Adding much more robust test for DAG execution for basic tests.
2021-08-20 12:43:01 -03:00
Ian Roddis
1f2712b090
- Fixing issue with parameter expansion on DAG submission to server
...
- Adding sections to unit_server tests
- Adding cleanup
2021-08-20 11:11:12 -03:00
Ian Roddis
791e7a15a7
- Fixing request logic to avoid hangs when REQUIREs fail before the client has been shutdown.
2021-08-20 10:58:57 -03:00
Ian Roddis
db47bc1593
- Adding unit tests for Server
2021-08-20 10:58:57 -03:00
Ian Roddis
71344b3a2a
- Sidequest: Clean up header-only library dependencies with cmake.
2021-08-20 10:58:57 -03:00
Ian Roddis
de8025e0f9
- Fixing bug that yielded empty expanded command sets.
2021-08-20 10:58:10 -03:00
Ian Roddis
1668117566
- Checkpointing work on expanding commands.
2021-08-20 10:39:39 -03:00
Ian Roddis
9f90f54b67
- More work on DAGLoggers
...
- Still need unit tests for the FilesystemLogger
2021-08-13 10:23:55 -03:00
Ian Roddis
4d519cc596
- Adding default pretty-printer for Task
...
- Adding equivalency check for Task
- Adding test to ensure serialization / deserialization is reproducible.
2021-08-11 10:16:38 -03:00
Ian Roddis
621467dd5a
- Adding task serialization
...
- Renaming DAGLogger to DAGRunLogger
- Adding more functionality to FileSystemLogger
2021-08-10 11:44:56 -03:00
Ian Roddis
a97c3ff783
- Removing Catch2 code from codebase, will pull it via FetchContent instead.
...
- Changing StdOutLogger to OStreamLogger, so that test cases output can be silenced.
2021-08-09 15:48:53 -03:00
Ian Roddis
28c5b3eea3
- Adding StdOutLogger and adding tests for DAG execution to verify it works.
...
- Roughing in FileSystemLogger
- Deleting Scheduler code and associated unit tests as being too complicated for maintenance.
- Refactoring namespaces for loggers and executors.
2021-08-09 14:59:54 -03:00
Ian Roddis
a8e85f8feb
- Adding StdOutLogger and adding tests for DAG execution to verify it works.
...
- Roughing in FileSystemLogger
- Deleting Scheduler code and associated unit tests as being too complicated for maintenance.
- Refactoring namespaces for loggers and executors.
2021-08-09 14:59:23 -03:00
Ian Roddis
0516bde09f
- Refactoring struct (de)serialization
2021-08-09 10:33:49 -03:00
Ian Roddis
1849a2fee4
- Adding TODO list to keep track of things.
...
- Adding .idea to gitignore
- Adding DAG execution to utilities, redefining the logger
2021-08-05 15:24:17 -03:00
Ian Roddis
afcb917cc9
Completing task building.
2021-08-02 15:44:41 -03:00
Ian Roddis
54e8170c68
Adding JSON parsing helpers to Utilities.
2021-08-02 11:31:46 -03:00
Ian Roddis
f2f3d22574
Renaming Executor to TaskEecutor
2021-08-01 11:28:30 -03:00
Ian Roddis
0349a5109b
* Formatting code with clang-tidy
...
* Roughing in more metastore work
2021-07-22 12:57:51 -03:00
Ian Roddis
987718334f
Adding missing stdc++fs link for std::filesystem
2021-07-09 15:51:27 -03:00
Ian Roddis
a603ebead5
Scheduler now completing work
2021-07-06 11:35:30 -03:00
Ian Roddis
9b9409d504
Things mostly work, just a strange hang when executing code with forking executor
2021-07-05 15:37:29 -03:00
Ian Roddis
468993edb5
Checkpointing work
2021-07-05 11:57:38 -03:00
Ian Roddis
209ec6f380
Fixing up threadpool
2021-06-20 10:33:35 -03:00
Ian Roddis
1003e88303
adding unit test
2021-06-16 13:55:27 -03:00
Ian Roddis
a661125976
Changing unit test to a more standard file
2021-06-16 10:16:30 -03:00
Ian Roddis
d7b4309908
Changing unit test to a more standard file
2021-06-16 10:15:58 -03:00
Ian Roddis
40f6b283be
Fixing things for programs with very large output.
2021-06-15 14:43:47 -03:00
Ian Roddis
81f0935f36
Adding local forking executor and associated tests
2021-06-15 13:38:54 -03:00
Ian Roddis
9cfa8cab7f
Rejigging the DAG traversal so it is a bit more efficient
2021-06-11 10:20:15 -03:00
Ian Roddis
7a6dbb85c2
making test a bit more interesting
2021-06-10 09:35:53 -03:00