Commit Graph

64 Commits

Author SHA1 Message Date
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
c12309c3f6 Adding MIT License 2021-08-23 16:51:20 -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
db47bc1593 - Adding unit tests for Server 2021-08-20 10:58:57 -03:00
Ian Roddis
0a2a66bc59 - Adding dagRun REST method 2021-08-20 10:58:57 -03:00
Ian Roddis
c1489ce967 - Checkpointing work so I can switch computers. 2021-08-20 10:58:57 -03:00
Ian Roddis
35857f9513 - More cmake cleanup 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
a152588368 - Making task children unordered_set to avoid multiple edges between parent and child. 2021-08-10 12:42:54 -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
9a3671aba4 - More refactoring
- Fixing cmake source discovery with GLOB_RECURSE
2021-08-09 15:24:28 -03:00
Ian Roddis
30aea0818c - Running project through clang-tidy formatter. 2021-08-09 15:07:16 -03:00
Ian Roddis
1fcdf66829 - Adjusting file layouts to match between include and src
- Updating TODO items.
2021-08-09 15:05:25 -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
c3b88d24ac - Rebasing on master.
- Fixes so all tests pass.
2021-08-09 11:15:04 -03:00
Ian Roddis
df63d944c1 Checkpointing work, while serialization / deserialization is figured out. 2021-08-09 10:39:54 -03:00
Ian Roddis
1a467428a2 - Roughing out the DAGLogger interface
- Adding spec for FileSystem Logger
2021-08-09 10:39:46 -03:00
Ian Roddis
0516bde09f - Refactoring struct (de)serialization 2021-08-09 10:33:49 -03:00
Ian Roddis
7cd9fc5e6e - Refactoring Defines
- Moving de/serialization routines to a separate header
2021-08-08 13:13:32 -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
a5b4e6ce42 Checkpointing progress on task builder. 2021-08-02 11:59:43 -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
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
b7b8d5b6a1 Checkpointing work 2021-06-20 12:05:13 -03:00
Ian Roddis
60cab3d5e0 Adding better implementation note 2021-06-20 10:34:48 -03:00
Ian Roddis
209ec6f380 Fixing up threadpool 2021-06-20 10:33:35 -03:00
Ian Roddis
5e3098c5f9 Checkpoint 2021-06-16 13:55:17 -03:00
Ian Roddis
01517f3421 adding futures 2021-06-16 10:51:38 -03:00
Ian Roddis
d871572d5e Checkpointing work on first-pass implementation 2021-06-16 10:48:31 -03:00
Ian Roddis
46118ce503 Fixing compiler errors and scheduler interface 2021-06-16 10:08:00 -03:00
Ian Roddis
e44b7c4e8f Roughing in more scheduler and threadpool 2021-06-16 07:36:17 -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
2cfe3e21d5 checkpointing 2021-06-13 09:29:48 -03:00
Ian Roddis
9cfa8cab7f Rejigging the DAG traversal so it is a bit more efficient 2021-06-11 10:20:15 -03:00