Open cameel opened 6 years ago
@cameel Are there any docs on how should blender command looks like ?
Update: We need the default value for BLENDER_MAX_RENDERING_TIME
. That's for now. Now that I think about it, we should probably have a deadline for blender based on message timings instead of a constant value.
@rwrzesien
Are there any docs on how should blender command looks like ?
Unfortunately no. You have to look at what Golem does. It embeds the command inside src_code
in TaskToCompute
. Please look at the example message in #235.
Fortunately we don't have to parse it out of this message and we definitely should not run code from the client. We agreed with @lukasz-glen that Concent will ignore this field until TaskToCompute
is changed to store all information needed to run Blender in a more declarative and portable way.
BLENDER_MAX_RENDERING_TIME
- default value is one week.
Local testing has been conducted (without real run of blender
- we still do not have files to run verification) and the flow works correctly.
I think that we should not close this issue until we at least check that we can run Blender and it can successfully complete its rendering. I think there still may be some undiscovered problems here. I don't consider the task finished until it can pass at least a simple smoke test.
Here are some test files:
This is a part of the implementation of the #193 blueprint. This task depends on #225.
Settings and checks
BLENDER_MAX_RENDERING_TIME
: defines the maximum time (in seconds) rendering a Blender project can take. Choose a sensible default value.'verifier'
is inCONCENT_FEATURES
. Otherwise must be undefined orNone
.Sequence of operation
stdout
andstderr
. The output should be logged.verification_result
informing about the error is sent to the work queue.BLENDER_MAX_RENDERING_TIME
Verifier kills Blender process. Verification ends here andverification_result
informing about the error is sent to the work queue.Setup for local development
Work queue
For local development you'll need to run a RabbitMQ server. You can run RabbitMQ in a docker container. See https://github.com/golemfactory/concent/issues/197#issuecomment-375620295.
Blender
You can install blender on your machine or run it in the Docker container created by Golem team. Just make the command to start it configurable.