Sybren A. Stüvel
6c827ffc52
Shaman: only configure the root directory of the Shaman files
...
Flamenco v2 allowed separate configuration of the Shaman file store and
checkout paths. This is now just one setting for "the storage". The file
store will be in `{storage}/file-store` and the checkout will happen in
`{storage}/jobs`.
2022-03-25 14:32:42 +01:00
Sybren A. Stüvel
65fcf1f6c9
Manager: disable Shaman by default
...
The Shaman implementation isn't finished yet, so for now disable by
default. That way it's at least possible to merge to the main branch.
2022-03-25 14:10:26 +01: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
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
4df0543661
Manager: Implementation of Shaman OAPI interface
...
This hooks up the OpenAPI Shaman endpoints to a Shaman interface. This
interface doesn't have any implementation yet.
2022-03-25 14:10:26 +01:00
Sybren A. Stüvel
86879aaaad
Manager: adjust unit test to fit new command/task names in job compiler
2022-03-17 16:19:45 +01:00
Sybren A. Stüvel
b6a7a15582
Implement frames-to-video
command
...
This finishes the "Simple Blender Render" job type, as it can now be run
fully by a Worker!
2022-03-17 16:18:10 +01:00
Sybren A. Stüvel
5ea3bfe301
Worker: reduce logging
2022-03-17 15:39:59 +01:00
Sybren A. Stüvel
c989bce51e
Implement move-directory
command, and use it in Simple Blender Render
2022-03-17 15:39:52 +01:00
Sybren A. Stüvel
084712baba
Simple Blender render: pass frame range in Blender notation
...
Pass the frame range in Blender notation (`n..m`) instead of "printer"
notation (`n-m`).
2022-03-17 13:08:37 +01:00
Sybren A. Stüvel
1bcf4139bf
Worker: be a bit faster in requesting a new task
2022-03-17 13:07:48 +01:00
Sybren A. Stüvel
8d52a03648
Manager: fix bug in task scheduler
...
The task scheduler was handing out tasks for which any dependency (instead
of all dependencies) were completed.
2022-03-17 13:07:20 +01:00
Sybren A. Stüvel
c5a2a23f6e
Manager: reduce log levels
2022-03-17 11:47:53 +01:00
Sybren A. Stüvel
ec77de886b
Manager: remove invalid comment
2022-03-17 11:46:04 +01:00
Sybren A. Stüvel
517b007ae5
Manager: improve logging of created tasks
2022-03-17 11:45:56 +01:00
Sybren A. Stüvel
bedf7869f8
Manager: replace "direction=twoway" with "is_twoway=true" in config
...
A boolean provides less context to the setting, so it's not as easy to
understand. However, in this case the simple case will have `is_twoway=false` and be ommitted from the configuration file. This makes the simple case even simpler.
2022-03-17 11:33:41 +01:00
Sybren A. Stüvel
3c01c18634
Manager: remove unsupported settings & rename existing one
...
Comment out all unused-but-desired-in-the-future settings, remove some
settings that will never be used, and rename `ssdp_discovery` to
`autodiscoverable`.
2022-03-17 11:25:40 +01:00
Sybren A. Stüvel
882c5ee478
Manager: include the version of Flamenco Manager in the written config
2022-03-17 11:19:00 +01:00
Sybren A. Stüvel
50cc1e64d0
Manager: add -write-config
CLI option to create config file and quit
2022-03-17 11:18:26 +01:00
Sybren A. Stüvel
dbc5109058
Manager: reduce logging of configuration service
2022-03-17 11:10:13 +01:00
Sybren A. Stüvel
22ea599554
Manager: periodically run the SQL VACUUM
command
2022-03-17 11:03:29 +01:00
Sybren A. Stüvel
93616cef3a
Manager: reduce log level of "worker requesting task"
2022-03-17 10:53:00 +01:00
Sybren A. Stüvel
9066fcacff
Manager: reorder Simple Blender Render settings
2022-03-15 17:49:20 +01:00
Sybren A. Stüvel
2187464d5e
Allow the render output path to have a {timestamp}
field
2022-03-15 17:18:11 +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
7bfde1df0b
Manager: determine final render output path in job compiler
...
This might not be the best way to do things, but it is very flexible and
allows TDs to determine the behaviour in their own job compiler script.
It doesn't allow a preview of "this is what the final render path will be"
in the Blender GUI though.
2022-03-15 13:17:55 +01:00
Sybren A. Stüvel
2cf388566f
Cleanup: manager, remove unused code
2022-03-15 13:16:21 +01:00
Sybren A. Stüvel
6d492a48b4
Manager: tooltip for frame range setting
2022-03-15 11:32:59 +01:00
Sybren A. Stüvel
4ca71d96ce
Manager: fix pythonisms in JS code
2022-03-15 11:32:23 +01:00
Sybren A. Stüvel
e15f066dde
Automatically evaluate hidden job settings
...
Job settings that are not visible and have an `eval` key will be
automatically evaluated when the job is submitted.
2022-03-15 10:56:58 +01:00
Sybren A. Stüvel
4e570d601c
Manager: fix tests for recent change from filepath
to blendfile
setting
...
4196460c29a607e1d3d2d052bf2bf546d5c05616 changed the name of the job
setting used to communicate the input blend file path, but the tests
weren't updated for this.
2022-03-15 10:46:58 +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
4196460c29
Automatically include input blend file path in job settings
2022-03-14 18:18:10 +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
2e78e00a0b
Manager: don't log an error when the config file doesn't exist
...
The configuration file is expected to not exist on many systems, and
thus logging an error (even when it's a very innocent one) will cause
confusion.
2022-03-14 13:00:27 +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
6d00d9cb34
Manager: sort job types to ensure a consistent order
2022-03-11 17:30:27 +01:00
Sybren A. Stüvel
afc6b8e1c5
Worker: add -find-manager
CLI arg
...
With `-find-manager` the Worker will use UPnP/SSDP autodiscovery, report
which Manager it found, and quit.
2022-03-11 10:52:03 +01:00
Sybren A. Stüvel
b33db33d17
Manager: show error when there was an error loading configuration
2022-03-11 10:51:32 +01:00
Sybren A. Stüvel
842255a065
UPnP/SSDP: actually serve a description.xml
...
The `description.xml` file is part of the UPnP Service Discovery protocol,
see https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-rxad/9225d145-6b2c-40d5-8ee8-7d837379fc25
2022-03-08 17:25:49 +01:00
Sybren A. Stüvel
353da58ee9
UPnP/SSDP: reduce log level for unreachable URLs
2022-03-08 16:46:14 +01:00
Sybren A. Stüvel
ca2bf7ff25
UPnP/SSDP: respond with multiple service descriptors
...
Instead of violating the standard and putting multiple locations in one
SSDP response, just send a single response for each possible location.
2022-03-08 16:46:03 +01:00
Sybren A. Stüvel
a61e3ca6f7
Worker tests: use in-memory SQLite database
2022-03-08 15:03:03 +01:00
Sybren A. Stüvel
fabb79e583
Worker: move autodiscovery code into the 'worker' package
...
Move the UPnP/SSDP Manager autodiscovery code into from `main.go` into the
`worker` package. This also means changing the error handling a bit, as
only the `main.go` file is allowed to do `log.Fatal()`.
2022-03-08 14:41:30 +01:00
Sybren A. Stüvel
9761786982
UPnP/SSDP: better logging when recovering from panic
2022-03-08 14:08:01 +01:00
Sybren A. Stüvel
eec4895c73
UPnP/SSDP client: avoid duplicate URLs
2022-03-08 14:06:35 +01:00