0
Answered

EventBroker 3 and DoConvert.exe

Daniel Walters 7 years ago • updated by anonymous 4 years ago 10

I'm migrating an EvB2 config to EvB3. In EvB2 there's a command shell wrapper that calls the doconvert.exe plugin. I know I have access to powershell scripting from EvB3 but I'm not quite sure what doconvert.exe does. Converts xml to w7 logging or something? Is there an equivalent version of this for EvB3 and/or how else should I go about replicating the actions it took?


doconvertpowershellscriptoperation.png
doConvert Screens.bmp

Hi Daniel,

You'll have to write a new wrapper for this executable with the PowerShell Script operation; I've run through and executed one locally with the Invoke-Item cmd-let.

So copy the executable out of the old plugins folder?

It shouldn't be a requirement to move it out, but feel free to move it where it makes most sense - with regards to the current Event Broker installation. The important thing is that you can point the above mentioned PowerShell Script operation to it. E.g.

Invoke-Item D:\example\directory\etc\DoConvert.exe

The above script assumes that you just want to flatly run the executable, but if there's any additional logic in the plugin that was running DoConvert, then you'll have to account for that.

Attached is an example of the expected configuration.

Reassigned for confirmation.

I'm fairly new to powershell. I'm getting an error to do with trying to pass DoConvert.exe the required parameters. I'm trying to do this

invoke-item Doconvert.exe D:\IDDIR_SPOT_Export_DSML.xml D:\

I've played around with " and ' symbols but I keep getting an error:

A positional parameter cannot be found that accepts argument 'D:\IDDIR_SPOT_Export_DSML.XML'

Tried putting the whole thing in brackets too

invoke-item (Doconvert.exe D:\IDDIR_SPOT_Export_DSML.xml D:) -the final slash for the D is there but jira is clearing it

That gives an error Cannot bind argument to parameter 'Path' because it is null.

I'll keep trying but if you know off the top of your head, do you know how to pass parameters to DoConvert through powershell?

I couldn't pass parameters through the Invoke-Item command. The solution was to do this

$doConvertLocation = 'D:\UNIFY Solutions\Event Broker3\Plugins\DoConvert.exe'
$dsmlFile = 'D:\IBM\Microsoft Forefront Identity Manager\2010\Synchronization Service\MaData\IDDIR_SPOT_MA\IDDIR_SPOT_Export_DSML.xml'
$targetW7File = 'D:\Logs\audit'

cd "D:\UNIFY Solutions\Event Broker3\Plugins\"
.\DoConvert.exe $dsmlFile $targetW7File

Thanks Daniel,

As you've mentioned it appears you can't pass through parameters into the Invoke-Item cmd-let.

For convenience you shouldn't have to move to the containing directory of the DoConvert exe; instead you might want to try:

$dsmlFile = 'D:\IBM\Microsoft Forefront Identity Manager\2010\Synchronization Service\MaData\IDDIR_SPOT_MA\IDDIR_SPOT_Export_DSML.xml'
$targetW7File = 'D:\Logs\audit'
& 'D:\UNIFY Solutions\Event Broker3\Plugins\DoConvert.exe' $dsmlFile $targetW7File

Where the '&' operator defines the subsequent string as a command.

Just for future reference using the ampersand didn't seem to work as in this screenshot. I'm happy to close the issue though.

Pardon me I was on the wrong server so it couldn't find the exe. The ampersand command works perfectly.

Great thanks daniel; reassigned for confirmation of completion.