-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Preamble
Pipi stores software configuration within each folder. The folder is then said to have "exposed" this configuration to itself and any sub-directory.
root
hulk
softwarex
shots
1000 <-- "softwarex" is available hereThe issue relates to where to store metadata. Metadata is used as a means of storing:
- Startup flags, e.g.
-hideConsole - Startup keyword arguments, e.g.
-proj /home/marcus - Software-dependent environment variables, e.g.
PYTHONPATH=/home/marcus
Software configuration is cascading; which is how 1000 from above has access to software "exposed" by hulk. Metadata is also meant to cascade.
root
hulk
softwarex
myflag1
shots
1000
softwarex
myflag2Here, hulk exposes softwarex with myflag1 configured. 1000 then adds myflag2 to this configuration of softwarex.
The end result is that softwarex run from 1000 will run using both flags; whereas if run anywhere else would result in just using myflag1
The problem
Cascading happens only along directories that are directly ascended:
# Cascading in action
root <-- ADD
hulk <-- ADD
softwarex
shots <-- ADD
1000 <-- ADD
softwarex <-- STARTHere we can see that hulk/softwarex isn't included in the cascading operation. That's because hulk/softwarex isn't at any point a parent of 1000.
As a result, the metadata of hulk/softwarex isn't added to the metadata of 1000/softwarex