Sybren A. Stüvel
0c0df41f5d
Job status change system for SocketIO broadcasts
...
Not fully tested yet.
2022-04-05 15:52:55 +02:00
Sybren A. Stüvel
781f1d936a
OAPI: add jobs query endpoint
2022-04-04 18:53:19 +02:00
Sybren A. Stüvel
99852838d2
OAPI: fix job submission example
...
It now works with the current simple-blend-render compiler script again.
2022-04-04 18:24:50 +02:00
Sybren A. Stüvel
80ffc7da5d
OAPI: use GET instead of OPTIONS to get file info from Shaman
...
OPTIONS is used by browser for CORS pre-flight requests.
2022-04-01 15:52:17 +02:00
Sybren A. Stüvel
5f16201832
OAPI: expose effective job storage path in configuration API
2022-04-01 14:01:22 +02:00
Sybren A. Stüvel
724938c7ae
Shaman: allow Manager to determine the final checkout path
...
The checkout request now responds with the final checkout path. This makes
it possible for the Manager to ensure the checkout is unique.
2022-03-25 14:10:26 +01:00
Sybren A. Stüvel
eeeec23f43
Cleanup, fix typo in OAPI description
2022-03-25 14:10:26 +01:00
Sybren A. Stüvel
c69e0909ae
Shaman submission is working!
2022-03-25 14:10:26 +01:00
Sybren A. Stüvel
21227c8046
More Shaman integration work
...
- Addon switches between filesystem-packing and Shaman-packing
automatically, depending on whether the Manager has Shaman enabled.
- Actually using BAT for Shaman packing.
It doesn't work though, some error occurs when receiving Shaman response
from the Manager in the Addon.
2022-03-25 14:10:26 +01:00
Sybren A. Stüvel
f9b7510c42
Streamlining Shaman protocol further, plus rough implementation for addon
2022-03-25 14:10:26 +01:00
Sybren A. Stüvel
b2288e7f28
Manager: More work on Shaman support
...
This introduces some more conceptual changes to Shaman. The most important
one is that there is no longer a "checkout ID", but a "checkout path".
The Shaman client can request any subpath of the checkout directory,
so that it can handle things like project- or scene-specific prefixes.
2022-03-25 14:10:26 +01:00
Sybren A. Stüvel
2b0d154a07
Manager: more work on Shaman integration
2022-03-25 14:10:26 +01:00
Sybren A. Stüvel
6f35b3303d
Manager: more work on porting Shaman code to Flamenco 3
2022-03-25 14:10:26 +01:00
Sybren A. Stüvel
4e8e71e4e2
Initial checkin of Shaman of Flamenco 2
...
This is not yet working, it's just a direct copy of the Manager of Flamenco
2, with Logrus replaced by Zerolog. The API has been documented in
flamenco-manager.yaml as a starting point for the integration.
2022-03-25 14:10:26 +01:00
Sybren A. Stüvel
09a476e11a
Compute render output path when evaluating job settings
...
Compute render output path when evaluating job settings, which is done
within the Flamenco add-on, instead of in the job compiler script. This
allows the UI to show the render path, rather than it only being known
after the job has been submitted.
2022-03-15 16:56:44 +01:00
Sybren A. Stüvel
a6ac331612
Allow Python evaluation for computing job settings in the addon
2022-03-14 18:44:39 +01:00
Sybren A. Stüvel
7b090bdbd6
OAPI: job submission endpoint now returns Job instead of SubmittedJob
2022-03-14 16:59:59 +01:00
Sybren A. Stüvel
76ba0a201b
OAPI: remove Configuration component schema
...
Nothing was using the `Configuration` schema, so I removed it from the
flamenco-manager.yaml OpenAPI definition file.
2022-03-14 14:40:16 +01:00
Sybren A. Stüvel
7181c2c4cf
OAPI: allow job settings to have a tooltip/description
2022-03-11 17:30:27 +01:00
Sybren A. Stüvel
282f91243b
OAPI: replace placeholder description of 'jobs' tag
2022-03-10 15:45:56 +01:00
Sybren A. Stüvel
416fa9bd28
OAPI: add 'meta' tag for /api/version endpoint
2022-03-10 15:45:46 +01:00
Sybren A. Stüvel
78927c2c31
OAPI: put quotes around description with comma
...
The comma was interpreted as property separator, and not as part of the
'description' property value.
2022-03-10 15:41:48 +01:00
Sybren A. Stüvel
d0b677ffe3
Add API endpoint /api/version
to get the Flamenco Manager version
...
This will be used in the auto-discovery, to check that a discovered URL can
actually be reached & points to a Flamenco Manager.
2022-03-08 13:56:43 +01:00
Sybren A. Stüvel
df77d09aa6
Start of a task/job state machine
...
The task status change → job status change code is a direct port of the
Flamenco Server v2 code written in Python.
There is no job status change → task status changes logic yet, and the
tests are also far from complete.
2022-02-24 16:42:38 +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
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
50088b4c94
Save worker info on sign-on (not just on registration)
2022-02-15 10:57:29 +01:00
Sybren A. Stüvel
7586be010b
API changes for sending task updates to the Manager
2022-02-14 18:01:32 +01:00
Sybren A. Stüvel
97ab93d996
Initial task scheduler implementation
2022-02-01 17:17:19 +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
0629728ce9
Add frame chunker and make unit test for simple blender render succeed
2022-01-13 16:32:08 +01:00
Sybren A. Stüvel
6aed4e71ff
Check for valid UUIDs; probably a good idea to write some validator for this
2022-01-11 18:45:09 +01:00
Sybren A. Stüvel
5af238eb21
Explicitly mention certain string fields are UUIDs
2022-01-11 18:39:53 +01:00
Sybren A. Stüvel
54933d0262
API: add Fetch Job endpoint
...
This is made with plain sqlite. It's probably a good idea to move to
something like GORM instead.
2022-01-11 18:38:14 +01:00
Sybren A. Stüvel
f0ae7d33e9
Connect API, job compiler, and persistence layer
2022-01-11 18:07:34 +01:00
Sybren A. Stüvel
e971c4aaed
Expand job settings definitions
...
Add `subtype` and `editable` fields:
- `subtype`: to distinguish between regular strings, file paths, dir paths,
etc.
- `editable`: To indicate a setting should be editale after submitting the
job. Editing will trigger re-compilation of the job.
2022-01-11 14:35:57 +01:00
Sybren A. Stüvel
d0fafb5063
Make the GET /api/jobs/types
endpoint work
2022-01-10 17:45:20 +01:00
Sybren A. Stüvel
b605330c57
API for getting supported job types from the Manager
...
Not yet hooked up to the job compiler, only reports one hard-coded job
type.
2022-01-10 17:45:13 +01:00
Sybren A. Stüvel
3d2263c177
API: group worker-related endpoints
2022-01-10 17:45:13 +01:00
Sybren A. Stüvel
082e2e69d6
Add authentication to worker
2022-01-10 17:45:13 +01:00
Sybren A. Stüvel
3e771cb7b7
Basic HTTP auth for workers implemented
...
Still a dummy, but at least it works with the OpenAPI 3
auth specification.
2022-01-10 17:45:13 +01:00
Sybren A. Stüvel
af4304565a
Lots of changes to merge the Gin/OpenAPI PoC
2022-01-10 17:45:13 +01:00