mottosso / be

minimal directory and environment management system for collaborative creative projects
GNU Lesser General Public License v2.1
47 stars 4 forks source link

task management #36

Open mottosso opened 9 years ago

mottosso commented 9 years ago

goal

Manage users and tasks via be.

implementation

A task is represented by a fully qualified topic.

$ be in hulk seq01 1000 animation

In which case the topic equals hulk seq01 1000 animation. A user is then assigned to this task via configuration, similar to how templates are assigned to their items in the inventory.

hulk/users.yaml

marcus:
- bruce modeling
- greenBruce modeling

thomas:
- bruce rigging

peter:
- seq03 1500 animation

The top-most topic is discarded as it would always be the name of the project.

logic

If no users.yaml is present, an artist could enter any given project at any given item under any given task as usual.

$ be in hulk seq05 3500 animation --enter
No development directory found. Create? [Y/n]:

When users.yaml is present within the project, a user may only enter tasks to which he has been assigned.

$ be in hulk seq05 3500 animation --enter
You have not been assigned this task, aborting..

benefits

Why bother with tasks in be?

$ be for marcus
- seq05 3500 animation
- AngryBruce rigging
- AngryBruce lookdev

limitations

What is it about tasks in general that couldn't be facilitated using this approach? For example, is it ever necessary, or part of be's responsibility to provide per-user environments? This can be hard to fit into this particular implementation, but is it ever necessary or are there workarounds?