|On this page
This node lets you create tasks that initialize a Python virtual environment and install packages in the environment. You can choose the version of Python to use for the environment, and specify the list of required packages as a string, dictionary or file on disk.
The enum value that determines how package requirements should be installed
The path on disk to the virtual environment
Determines when this node will generate work items. You should generally leave this set to “Automatic” unless you know the node requires a specific generation mode, or that the work items need to be generated dynamically.
All Upstream Items are Generated
This node will generate work items once all of the input nodes have generated their work items.
All Upstream Items are Cooked
This node will generate work items once all of the input nodes have cooked their work items.
Each Upstream Item is Cooked
This node will generate work items each time a work item in an input node is cooked.
The generation mode is selected based on the generation mode of the input nodes. If any of the input nodes are generating work items when their inputs cook, this node will be set to Each Upstream Item is Cooked. Otherwise, it will be set to All Upstream Items are Generated.
Determines how the processor node handles work items that report expected file results.
If the expected result file exists on disk, the work item is marked as cooked without being scheduled. If the file does not exist on disk, the work item is scheduled as normal. If upstream work item dependencies write out new files during a cook, the cache files on work items in this node will also be marked as out-of-date.
Automatic (Ignore Upstream)
The same as Automatic, except upstream file writes do not invalidate cache files on work items in this node and this node will only check output files for its own work items.
If the expected result file exists on disk, the work item is marked as cooked without being scheduled. Otherwise the work item is marked as failed.
Work items are always scheduled and the expected result file is ignored even if it exists on disk.
The path to the virtual environment on disk.
Determines which Python executable to use when creating the virtual environment and installing packages. This is also the version of Python that will be associated with the venv.
Custom Python Bin
When Python Bin is set to Custom, this parameter determines the path to the Python interpreter to use when creating the virtual environment.
Load Packages From
Determines how PDG should determine the list of packages that should be installed in the virtual environment.
When Load Packages From is set to Requirements File, this parameter determines how the file is specified.
When loading requirements from a file with File Source set to Upstream Output File, this parameter specifies the file tag of the input requirements file.
When loading requirements from a file with File Source set to Custom File, this parameter determines the path to the requirements file.
If Load Packages From is set to Package List, this parameter can be set to a space or comma separated list of packages to install the virtual environment.
If Load Packages From is set to Package Dictionary, this parameter can be set to a series of key/value pairs representing the name and version of the packages to install.
Add Environment Path to Output Files
When this parameter is enabled, the virtual environment path is added as an output file to the work item(s) generated by this node. This parameter is required in order for work items to cook from cache – if the venv path exists, then the work item will be treated as cached and won’t cook at all.
TOP Scheduler Override
This parameter overrides the TOP scheduler for this node.
When enabled, this parameter can be used to specify an expression that determines which work items from the node should be scheduled. If the expression returns zero for a given work item, that work item will immediately be marked as cooked instead of being queued with a scheduler. If the expression returns a non-zero value, the work item is scheduled normally.
Work Item Label
Determines how the node should label its work items. This parameter allows you to assign non-unique label strings to your work items which are then used to identify the work items in the attribute panel, task bar, and scheduler job names.
Use Default Label
The work items in this node will use the default label from the TOP network, or have no label if the default is unset.
Inherit From Upstream Item
The work items inherit their labels from their parent work items.
The work item label is set to the Label Expression custom expression which is evaluated for each item.
Node Defines Label
The work item label is defined in the node’s internal logic.
When on, this parameter specifies a custom label for work items created by this node. The parameter can be an expression that includes references to work item attributes or built-in properties. For example,
$OS: @pdg_frame will set the label of each work item based on its frame value.
Work Item Priority
This parameter determines how the current scheduler prioritizes the work items in this node.
Inherit From Upstream Item
The work items inherit their priority from their parent items. If a work item has no parent, its priority is set to 0.
The work item priority is set to the value of Priority Expression.
Node Defines Priority
This parameter specifies an expression for work item priority. The expression is evaluated for each work item in the node.
This parameter is only available when Work Item Priority is set to Custom Expression.