Commit Graph

49 Commits

Author SHA1 Message Date
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
0e682282f0 Addon: fix mypy errors 2022-03-25 14:10:26 +01:00
d0139e8270 Addon: add wheel for BAT 1.12 2022-03-25 14:10:26 +01:00
c69e0909ae Shaman submission is working! 2022-03-25 14:10:26 +01:00
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
f9b7510c42 Streamlining Shaman protocol further, plus rough implementation for addon 2022-03-25 14:10:26 +01:00
668bfbc492 Addon: Upgrade Python version to 3.10 2022-03-25 14:10:26 +01:00
1635179da0 Addon: unregister handlers 2022-03-17 17:25:45 +01:00
dd25190f81 Addon: automatically adjust job name for blend file name
The Flamenco job name is set to the blend file name, unless it was already
set to something else.
2022-03-17 16:45:02 +01:00
59f58d92b8 Addon: add file browser buttons to file/directory path settings/properties 2022-03-15 18:45:28 +01:00
6764ee8259 Addon: actually allow setting the job storage path 2022-03-15 18:37:48 +01:00
1fcbba79d7 Cleanup: addon, fix MyPy error 2022-03-15 18:36:53 +01:00
b69b3b6b10 Addon: nicer layout for the Flamenco panel 2022-03-15 18:36:40 +01:00
f593ef4a3e Addon: nicer error message when the Manager cannot be reached 2022-03-15 17:49:06 +01:00
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
f9d9bc99bc Addon: nicer layout of Flamenco panel 2022-03-15 11:03:12 +01:00
a8d11f4f45 Addon: make job settings non-animatable 2022-03-15 11:02:45 +01:00
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
f1a13ad521 Addon: allow undoing setting evaluation 2022-03-14 18:45:29 +01:00
a6ac331612 Allow Python evaluation for computing job settings in the addon 2022-03-14 18:44:39 +01:00
4196460c29 Automatically include input blend file path in job settings 2022-03-14 18:18:10 +01:00
9fec9c479f Cleanup: Addon, remove unused imports 2022-03-14 18:17:32 +01:00
ab526a30a9 Cleanup: Addon, remove test files 2022-03-14 17:01:47 +01:00
b5053734dd Addon: submit job to Manager after packing the files 2022-03-14 17:00:12 +01:00
7352b0950b Addon: remove debug prints 2022-03-14 17:00:12 +01:00
33b5faff2b Addon: fix MyPy errors 2022-03-14 17:00:12 +01:00
7b090bdbd6 OAPI: job submission endpoint now returns Job instead of SubmittedJob 2022-03-14 16:59:59 +01:00
f6e636f8de Addon: cleanup, prefix TYPE_CHECKING imports with underscores
Prefix anything that's imported in an `if TYPE_CHECKING` block with
underscores, to indicate they're not the real types.
2022-03-14 16:35:21 +01:00
b993f38889 Addon: store available job types on scene
Storing the available job types on the Scene makes it possible to restore
the Flamenco job submission UI without communication with the Manager.
2022-03-14 15:36:44 +01:00
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
ad3750dfbe Addon: cleanup, split propgroup generator from job type code 2022-03-14 14:39:10 +01:00
c3cd119e21 Addon: start of generating OAPI SubmittedJob object
Work in progress.
2022-03-11 17:30:27 +01:00
a803edcce4 Addon: bundle BAT and start of interfacing with it
The add-on can now create BAT packs, but still only at a hard-coded path.
2022-03-11 17:30:27 +01:00
d18f5d25c5 Addon: store current job type on the Scene, not the WindowManager
The job type (+ its configuration) is something scene/file dependent, and
should thus be stored there.
2022-03-11 17:30:27 +01:00
7181c2c4cf OAPI: allow job settings to have a tooltip/description 2022-03-11 17:30:27 +01:00
4f7c11d59a Addon: cleanup, use relative imports where possible 2022-03-11 17:30:27 +01:00
21d552c600 Addon: add explanation of weird type-checking code 2022-03-11 16:51:19 +01:00
91f2fb2067 Addon: describe code generation process
The code generation has been integrated with the Makefile, so that's now
described properly.
2022-03-11 11:34:18 +01:00
55752c87a2 Addon: fix wheel loading module separation
The loading of modules from wheels wasn't properly separated from the rest
of Python yet. Now `load_wheel()` properly cleans up after itself, making
it impossible for other code to do `import the_module_from_the_wheel`.
2022-03-11 11:33:48 +01:00
5be9985e3b Addon: fix Mypy errors 2022-03-11 11:18:21 +01:00
850678f495 Addon: allow configuring the Manager URL
Previously it was hard-coded to `http://localhost:8080/`, now that's just
the default value.
2022-03-10 17:57:26 +01:00
81daa4c249 OAPI: regenerate Python code
This commit also switches to a hardcoded version ("3.0") to the version
from Git (like the Go executables use). Because there are no tags for
this branch yet, this is just the Git commit hash.
2022-03-10 15:49:21 +01:00
51b23a38b3 OAPI: integrate Python code generator in Makefile
Instead of having the Python code generator as a separate shell script,
include it in the Makefile. There are now three make targets:

- generate-go: only generate Go code, for the Worker & Manager
- generate-py: only generate Python code, for the Blender add-on
- generate: run both
2022-03-10 15:48:20 +01:00
341ce51555 Addon: Remove unused generated test files 2022-03-10 15:02:07 +01:00
9f5e4cc0cc License: license all code under "GPL-3.0-or-later"
The add-on code was copy-pasted from other addons and used the GPL v2
license, whereas by accident the LICENSE text file had the GNU "Affero" GPL
license v3 (instead of regular GPL v3).

This is now all streamlined, and all code is licensed as "GPL v3 or later".

Furthermore, the code comments just show a SPDX License Identifier
instead of an entire license block.
2022-03-07 15:26:46 +01:00
60d1710020 Addon: job type form seems to be working 2022-03-01 17:28:24 +01:00
5e7e2adef0 Addon: Fixed mypy errors 2022-03-01 17:28:24 +01:00
616784df0a Addon: start of framework for API communication 2022-03-01 17:28:24 +01:00
b678b90932 Proof of concept to test a generated Python OpenAPI client 2022-03-01 17:28:24 +01:00