Sybren A. Stüvel
ad6cbcbae2
Remove SSDP GUID from settings
2022-02-22 10:33:28 +01:00
Sybren A. Stüvel
f0215e20b8
Cleanup: move license block
2022-02-21 20:11:52 +01:00
Sybren A. Stüvel
b3b132fd44
Fix task update unit test
2022-02-21 20:11:19 +01:00
Sybren A. Stüvel
7111e2613e
Remove CLI args from default {blender}
variable
...
Shell args parsing on Go is a bit tricky, need to find the right library
to do this before putting things into the default config.
2022-02-21 20:07:50 +01:00
Sybren A. Stüvel
ba4b8274c9
Manager: Store default config in its own file
2022-02-21 20:06:57 +01:00
Sybren A. Stüvel
d198e228b7
Manager: perform variable replacement on scheduled tasks
2022-02-21 19:58:13 +01:00
Sybren A. Stüvel
90a2140b8c
Manager: store task logs to disk
2022-02-21 19:47:07 +01:00
Sybren A. Stüvel
5b0e11acdc
Cleanup: some smaller renames & small function return type change
2022-02-21 19:32:12 +01:00
Sybren A. Stüvel
2e0f44b947
Manager: add missing job type name in job types list
2022-02-21 19:31:37 +01:00
Sybren A. Stüvel
b1b73de4ee
Manager: Actually load config, and use in a few places
2022-02-21 19:02:07 +01:00
Sybren A. Stüvel
ae5846b3d9
Manager config: remove 'mode' and change 'variable audience' to custom type
...
The 'variable audience' indicates the audience of a 'task variable'.
2022-02-21 18:50:24 +01:00
Sybren A. Stüvel
12481a47e7
Start of configuration/settings framework, including variable replacement
2022-02-21 18:09:45 +01:00
Sybren A. Stüvel
66ae9b3a64
Job persistence test: create authored job with explicit status
2022-02-21 18:04:52 +01:00
Sybren A. Stüvel
ef2bbd2845
Unified Command field names
...
Some parts of Flamenco had a Command consist of "name + settings", and
other parts used "type + parameters" (with the same semantics). This is
now unified to "name + parameters".
2022-02-21 18:03:51 +01:00
Sybren A. Stüvel
6a7545f334
Check author.Task() parameters
...
Check author.Task() parameters, and refuse tasks with empty name or type.
2022-02-21 15:49:23 +01:00
Sybren A. Stüvel
1756369b70
Cleanup: add comments
2022-02-21 15:41:00 +01:00
Sybren A. Stüvel
6bd1a86337
Start of DB initialisation functions
...
Not properly working yet
2022-02-21 15:25:56 +01:00
Sybren A. Stüvel
bb53cc1e4a
Task log storage service
2022-02-18 18:19:35 +01:00
Sybren A. Stüvel
77c5650665
Cleanup: move imports to the right place
2022-02-18 17:25:20 +01:00
Sybren A. Stüvel
5b4625b5f9
Rename logging.go to zerolog.go
2022-02-18 11:58:18 +01:00
Sybren A. Stüvel
399c8af750
Correctly handle workers assigned to tasks + simple task updates
2022-02-17 17:30:52 +01:00
Sybren A. Stüvel
31e39e2137
Cleanup: remove fmt.Sprintf from sendAPIError calls
2022-02-17 17:30:27 +01:00
Sybren A. Stüvel
0ab8151a92
Move code out of main.go and add better check for OpenAPI paths
2022-02-17 13:58:10 +01:00
Sybren A. Stüvel
71edb139dd
Start working on blender-render
command
...
The command doesn't actually execute anything yet.
2022-02-17 13:58:10 +01:00
Sybren A. Stüvel
270c54fdb7
More status change acks & checks to get stable flow between worker states
2022-02-15 17:46:37 +01:00
Sybren A. Stüvel
c4df62d5d4
Start of sending task updates to Manager
...
This includes a mocking framework for unittests.
2022-02-15 15:58:24 +01:00
Sybren A. Stüvel
9543d6221b
Wrap error with %w
2022-02-15 15:56:54 +01:00
Sybren A. Stüvel
93517549b0
Manager: actually return worker state in /api/worker/state endpoint
2022-02-15 15:56:38 +01:00
Sybren A. Stüvel
50088b4c94
Save worker info on sign-on (not just on registration)
2022-02-15 10:57:29 +01:00
Sybren A. Stüvel
0457809641
Scheduler: filter on supported task types & assigned worker ID
2022-02-14 18:00:43 +01:00
Sybren A. Stüvel
4aafb782ac
Scheduler: Assign task to worker
2022-02-14 17:47:26 +01:00
Sybren A. Stüvel
3ffef34690
Allow sendAPIError()
to be used like fmt.Sprintf
2022-02-14 16:53:40 +01:00
Sybren A. Stüvel
eea219c3e2
Move task scheduler into persistence layer
2022-02-14 16:53:21 +01:00
Sybren A. Stüvel
d0be631bca
New job compiler: echo-sleep-test
2022-02-14 15:07:20 +01:00
Sybren A. Stüvel
8e01c069d1
DB: task dependencies should be cascade-deleted with their tasks
2022-02-14 15:07:14 +01:00
Sybren A. Stüvel
a9790ec579
API: return job from DB instead of authored job
...
The authored job has tasks & commands in there, which shouldn't be sent
as-is as an API response. Marshalling the task pointers for the
inter-task dependencies would potentially produce quite large responses.
2022-02-14 15:03:17 +01:00
Sybren A. Stüvel
feaf924cec
Task Scheduler: also include job priority in the scheduling
2022-02-01 18:09:35 +01:00
Sybren A. Stüvel
97ab93d996
Initial task scheduler implementation
2022-02-01 17:17:19 +01:00
Sybren A. Stüvel
fad2dc3042
Job authoring: handling of task dependencies + some bugfixes
2022-02-01 17:17:19 +01:00
Sybren A. Stüvel
8063a3e169
Cleanup: remove unused code
2022-02-01 16:22:21 +01:00
Sybren A. Stüvel
e598397ba4
Persistence: move some DB to API struct conversion to API implementation
2022-02-01 16:22:10 +01:00
Sybren A. Stüvel
862ed96af7
Make persistence.CreateTestDB public so it can be used from other packages
2022-02-01 10:57:33 +01:00
Sybren A. Stüvel
2ca8858c28
Only update status field in DB when worker changes status
2022-02-01 10:16:10 +01:00
Sybren A. Stüvel
be89349632
Very basic non-functional framework for a task runner
...
Also has some login/logout functionality for storing stuff in the DB.
2022-01-31 16:05:27 +01:00
Sybren A. Stüvel
d3071146da
Better logging of worker info
2022-01-31 15:35:57 +01:00
Sybren A. Stüvel
d880f7e7f0
Worker authentication is working
2022-01-31 15:27:13 +01:00
Sybren A. Stüvel
7c14b2648d
Much more of the Worker life cycle implemented
2022-01-31 15:02:05 +01:00
Sybren A. Stüvel
c501899185
Ported lots of stuff from gitlab.com/dr.sybren/flamenco-worker-go
...
Much isn't working though.
2022-01-28 17:02:50 +01:00
Sybren A. Stüvel
28a56f3d91
Store workers in database when registering
2022-01-28 15:31:39 +01:00
Sybren A. Stüvel
931fd1a24c
Move db/jobs tests to persistence/jobs.go
2022-01-28 14:53:02 +01:00