I have a monorepo and I want to have tasks at different levels (in the directory tree).
When I run pyinvoke at a deeper level, I want to have access to the tasks in the higher levels + the tasks in the current level. They can (should) be in different namespaces.
i.e.
repo_top-|
|_ tasks-|
| |_ __init__.py
| |_ install
|_apps-|
|_ tasks-|
| |_ __init__.py
|_ lambdas
If I am in the repo_top/apps directory (or lower) I should be able to say
invoke --list
and see a listing of the tasks in repo_top/tasks
AND repo_top/apps/tasks
I have it so
- I see the top level stuff if I am in the top level or any sub level that does not have its own tasks module
inv --list
Available tasks:
install.bootstrap-devx
- I see the apps tasks if I am in the apps directory or lower.
inv --list
Available tasks:
lambdas.python-build-lambda
I've tried a few things but so far have not figured out how to make it so I see all the tasks if I am in the apps directory or lower.
What I want to see if I execute it in repo_top/apps
is something like:
inv --list
Available tasks:
install.bootstrap-devx
lambdas.python-build-lambda