I have a situation, where a VM is being built via vRA and getting a IP from infoblox,
On vRO I have a workflow that need to SSH to the machine that was just built and one of the parameters it needs is the IP of the server to ssh to it..
I have a payload scriptable task that receives the payload and gives me the IP, I also have the workflow that can run and install what it needs to via the ssh install if I give it a IP.
What I need is for the payload to get the IP and then pass that IP to the SSH installer...
I have googled a heap, and tried various ways, that I have thought of but none of them seem to work..
Currently I have the EBS setup to run this workflow, and it seemingly fails to get the payload. This happens when I add the ssh installer workflow into this workflow the input parameter is set to use the attribute that the output of the payload goes too.
If I remove the ssh installer and let it run it will complete with the payload result.
As soon as I add the installer back, it fails again.
Has anyone done this?
Such types of errors are hard to analyze without having details, like parameters/attributes' bindings, etc. So, if possible, could you attach a vRO package containing both the failing and the working workflows (and the items they are using)?
From the provided error, it is clear that it fails due to scripting code trying to call an expression like payload.get(somekey) when the object on the left side is null, but it is not clear how the addition/removal of ssh installer workflow changes the situation.
The problem doesn't seem to be related to hostNameOrIP parameter. The screenshot in your first post shows that the workflow has been invoked with payload parameter having a null value, which causes the first line of your scriptable task to fail:
var machine=payload.get("machine"); // this will fail if 'payload' is null
So it seems that the problem is how the workflow is being called - in one case the payload input has some valid value, and in the other case it is null. To verify this, you can add an extra System.log() statements to the scriptable task to dump the value/content of payload input.
Yes it does look to be that payload part being "null"
on a successful run (with no ssh installer) it gave me a HashMap and the IP...
[2018-11-19 23:35:47.555] [I] HashMap:2080696877
[2018-11-19 23:35:47.557] [I] ##.###.##.## ( i have to hash the IP)
one with the ssh installer I can not see the HashMap... I have modified the client specific stuff and attached the errorlog..