Tagged version 2.1.0
Details
- Tag
- v2.1.0
Tagged version 2.1.0
This is the Flamenco Manager implementation in Go.
Author: Sybren A. Stüvel <sybren@blender.studio>
To run Flamenco Manager for the first time, follow these steps:
0. Install ImageMagick and make sure that the
`convert` command can be found on `$PATH`.
Note that variables and path_replacement share a namespace -- variable names have to be unique, and cannot be used in both variables and path_replacement sections. If this happens, Flamenco Manager will log the offending name, and refuse to start.
Apart from the above web-based setup, you can configure advanced settings by editing flamenco-manager.yaml. For example, you can:
Intervals (like download_task_sleep) can be configured in seconds, minutes, or hours, by appending a suffix s, m, or h. Such a suffix must always be used.
Flamenco Manager accepts the following CLI arguments:
$FM denotes the directory containing a checkout of Flamenco Manager, that is, the absolute path of this flamenco-manager directory.
0. Make sure you have MongoDB up and running (on localhost)
To run all unit tests, run go test ./... -v. To run a specific GoCheck test, run go test ./flamenco -v --run TestWithGocheck -check.f SchedulerTestSuite.TestVariableReplacement where the argument to --run determines which suite to run, and -check.f determines the exact test function of that suite. Once all tests have been moved over to use GoCheck, the --run parameter will probably not be needed any more.
Flamenco Manager is responsible for initiating all communication between Server and Manager, since Manager should be able to run behind some firewall/router, without being reachable by Server.
In the text below, some_fields can refer to configuration file settings.
0. Pushes happen as POST to "/api/flamenco/managers/{manager-id}/task-update-batch"
When a worker starts working on a task, that task moves to status "active". The worker then regularly calls /may-i-run/{task-id} to verify that it is still allowed to run that task. If this end-point is not called within active_task_timeout_interval_seconds seconds, it will go to status "failed". The default for this setting is 60 seconds, which is likely to be too short, so please configure it for your environment.
This timeout check will start running 5 minutes after the Manager has started up. This allows workers to let it know they are still alive, in case the manager was unreachable for longer than the timeout period. For now this startup delay is hard-coded.
In no particular order:
The distributable Flamenco Manager packages are built using Docker. This allows us to build a static binary without impacting the locally installed version of Go. The process is as follows: