Flamenco Manager End User Features
End users are both artists and TDs.
Farm Management
- Downloading and installing Flamenco Manager
- Downloading and installing Flamenco Worker
- Configuring Flamenco Manager
- job types / customisation
- storage locations
- replace one-way variables with provisioned configuration
- use path variables also for config of other areas (Shaman currently requires a configuration setting to be the same value as some path variable)
- Connecting Workers to Manager
- Managing workers
- wakeup/sleep/shutdown/pause
- blacklists
- host stats (mem/cpu usage, etc.)
- Upgrading Flamenco Manager
- Shut down, replace executable, restart.
- DB migrations via migrate
- Upgrading Flamenco Worker
- Shut down, replace executable, restart.
- GUI support?
Job Submission
-
new Blender Add-on
- querying for job types & their parameters
- querying for Manager configuration
- integrating BAT
-
Project-association
- Not mandatory
- Based on metadata filtering
Job Management
- OpenAPI 3/Swagger for REST API, gives nice web interface for documentation and experimenting by TDs.
- Web interface
- Web sockets for real-time updates.
- Maybe also using the REST API for certain operations? Or everything through the web socket?
- Reconsider the end-of-life behaviour of jobs
- Do we still need "Archive"?
- Jobs in "archiving" status probably don't need to be shown in the main jobs list.
- Andy: only interesting bit is the job definition itself (which shot was rendered when, etc.)
Web Views
In general: filtering (tasks, jobs, maybe even workers) is important.
- Kitsu is nice, allows querying and saving those queries.
- Worker status
- Similar to what we have now.
- Optionally with host info (CPU/mem usage graphs, etc.)
- Last-rendered image
- Also similar to what we have now.
- Optionally switch from server-sent events to websocket to limit communication channels.
- Jobs overview
- Most important page, good candidate for default view.
- Basics similar to current Flamenco Server.
- Must include progress indicator
- percentage of completed tasks
- "X of Y frames" / "X of Y samples" showing on mouse-over
- Aggregated view (X active, X failed, X completed, etc.)
- Bigger view (than Flamenco Server) of the job list, and less on the side. Not a 50/50% split. Mostly because job names are so long.
- Status doesn't need the entire word "COMPLETED", little icon + colour is enough.
- Filtering by status is important.
- "Edit RNA Overrides" button is used in practice, so keep it around.
- "Recreate Job" vs. "Requeue Tasks" is confusing, probably should be merged or "Recreate Job" simply removed.
- Add "browse" button to file path job settings, which launches a file browser. Maybe also configurable to show a image sequence viewer.
- Tasks per job
- Aggregated view first (X active, X failed, X completed, etc.)
- List of tasks should either just load all tasks or progressively with infinite scroll. Just loading everything is probably best, because that'll allow simple searches with Ctrl+F.
- Should allow sorting & filtering.
- "Lock task selection" to avoid tasks disappearing.
- "Batch" operations (select tasks, or auto-select tasks with a certain status) and hit the "requeue" button (or cancel or whatever).
- Settings
- Reconsider "settings mode", many people find it confusing.
- Should list available job types, including whether they've been customised or not. Might have them editable & allow saving embedded default scripts to disk.
Actions: Job
This documents the behaviour of the current incarnation of Flamenco.
Actions are available depending on the job status. Some statuses do not allow any actions.
job status |
cancel |
requeue |
recreate |
archive |
requeue-failed-tasks |
active |
✅ |
|
|
|
✅ |
canceled |
|
✅ |
✅ |
✅ |
|
completed |
|
✅ |
✅ |
✅ |
|
construction-failed |
|
|
✅ |
|
|
failed |
✅ |
✅ |
|
✅ |
|
paused |
|
✅ |
✅ |
✅ |
|
queued |
✅ |
|
|
|
✅ |
|
|
|
|
|
|
archived |
|
|
|
|
|
archiving |
|
|
|
|
|
cancel-requested |
|
|
|
|
|
fail-requested |
|
|
|
|
|
requeued |
|
|
|
|
|
under-construction |
|
|
|
|
|
waiting-for-files |
|
|
|
|
|
Desired changes
- Add action
PAUSE
which can be used when a job is active.
- Alternative rename "canceled" status to "stopped", and then "cancel" and "pause" can be the same operation.
Actions: Task
This documents the behaviour of the current incarnation of Flamenco.
Actions are available depending on the task status. Some statuses do not allow any actions.
task status |
requeue |
cancel |
active |
|
✅ |
canceled |
✅ |
|
completed |
✅ |
|
failed |
✅ |
|
queued |
|
✅ |
soft-failed |
|
✅ |
|
|
|
cancel-requested |
|
|
fail-requested |
|
|
paused |
|
|
processing |
|
|
Authentication
TODO: See what OpenAPI 3 has for this.
Advanced features
- Connecting Manager to Server