Table of Contents |
---|
Purpose
The primary goals for introducing preprocessor enhancements to Data Import are to provide support for a wider range of file import use cases and improve the experience of working with Powershell scripts within Data Import.
...
- PowerShell scripts executed in a constrained runspace.
- The runspace is initialized with no available cmdlets.
- Cmdlets designed specifically for Data Import use are added to the runspace
- Invoke-OdsApiRequest
- New-ArrayList
- New-StringBuilder
- ...
- Cmdlets explicitly whitelisted by the administrator are added to the runspace (probably will be defined in a config file)
- High-risk cmdlets should be avoided (New-Object, Invoke-WebRequest, Invoke-Expression).
Importing modules:
- Via configuration, a list of modules to be imported into the constrained runspace is defined.
- Cmdlets designed specifically for Data Import are packaged as a PowerShell binary module and included by default.
- PowerShell binary modules and PowerShell script modules can be imported into the constrained runspace by configuration.
Ref: Cracking Open PowerShell’s Constrained Runspace
User Interface Changes
Menu
...
- Custom File Processor script associated with selected Data Maps should be automatically included (similar to Lookups).
If Custom Row Processors exist, an additional step in the wizard will be shown after selecting Data Maps called to provide an optional selection of Custom Row Processors.- NOTE: This requirement was struck because agents are not shareable items, and the added functionality of supporting the export of Custom Row Processors seems unnecessary.
- Custom File Generators are not supported in templates.
- No UI changes are required for importing templates.
...