Optional parameters set as required
Summary
"Missing Parameter" error when not specifying optional parameters.
Steps to reproduce
#Create a new Case
- NuixCreateCase(CaseName = <CaseName>, CasePath = <CasePath>, Investigator = <Investigator>, Description = 'Import evidence')
# Import evidence from CSV file
- <CsvHeader> = ['Custodian', 'FolderName', 'Path']
- <Bags> = ReadCsv(Text = ReadFile(Folder = <EvidenceDir>, FileName = <EvidenceCsv>), ColumnsToMap = <CsvHeader>)
- Do: ForEach
Array: <Bags>
VariableName: <Row>
Action:
Do: NuixAddItem
CasePath: <CasePath>
Custodian: ElementAtIndex(Array = <Row>, Index = 0)
FolderName: ElementAtIndex(Array = <Row>, Index = 1)
Path: ElementAtIndex(Array = <Row>, Index = 2)
EDR v0.2.1-a.master.1603388707
- Run
.\Reductech.EDR-v0.2.2\EDR.exe -p .\import-evidence.yml
with the following yaml:
Current Behavior
2020/10/23 11:23:08.172 INFO Creating Case Console Logger
2020/10/23 11:23:14.059 INFO Case Created Console Logger
2020/10/23 11:23:14.816 ERROR Missing Parameter 'processingProfileNameArg' in 'AddToCase' - AddToCase Console Logger Error=Missing Parameter 'processingProfileNameArg' in 'AddToCase', Location=AddToCase
Expected Behaviour
No error, case created and data ingested into case.
Logs
It looks like the two steps are not being combined into a single ruby script, but being executed as two separate scripts.
NuixScript752e033e-f4dc-4733-9024-d832c5b96c9d.rb
All arguments in the ruby script now have the square brackets:
OptionParser.new do |opts|
opts.on('--pathArg1 [ARG]') do |o| params[:pathArg1] = o end
opts.on('--nameArg1 [ARG]') do |o| params[:nameArg1] = o end
opts.on('--descriptionArg1 [ARG]') do |o| params[:descriptionArg1] = o end
opts.on('--investigatorArg1 [ARG]') do |o| params[:investigatorArg1] = o end
end.parse!
Previously:
OptionParser.new do |opts|
opts.on('--pathArg1 ARG') do |o| params[:pathArg1] = o end
opts.on('--nameArg1 ARG') do |o| params[:nameArg1] = o end
opts.on('--descriptionArg1 [ARG]') do |o| params[:descriptionArg1] = o end
opts.on('--investigatorArg1 ARG') do |o| params[:investigatorArg1] = o end
end.parse!