First, I plan to submit a pull request with a fix for this issue, but I wanted to create an issue here just in case someone is already working on it.
The problem occurs when you try to use fields specified in an IngestFormatOptionProvider from a plugin. In AbstractIngestCommandLineDriver, it tries to parse the command on line 108 but does not call IngestFormatOptionProvider's applyOptions() method until it calls getPluginProviders() on line 141. It would try to reparse the command on line 162 with the additional options, but the failed parse on line 108 throws an exception and never gets to that line.
Also, if the 'f' flag is not specified, the custom options are never added at all.
First, I plan to submit a pull request with a fix for this issue, but I wanted to create an issue here just in case someone is already working on it.
The problem occurs when you try to use fields specified in an IngestFormatOptionProvider from a plugin. In AbstractIngestCommandLineDriver, it tries to parse the command on line 108 but does not call IngestFormatOptionProvider's applyOptions() method until it calls getPluginProviders() on line 141. It would try to reparse the command on line 162 with the additional options, but the failed parse on line 108 throws an exception and never gets to that line.
Also, if the 'f' flag is not specified, the custom options are never added at all.