I'm in the same boat.. I have a simple PowerShell cmdlet that I want to run as an action in an SPD Workflow.
I've tried passing it without other arguments;
Execute PowerShell: Start-SPContentDeploymentJob -identity 'Staging to live Job'
I tried putting it, and the snap-in, in a .ps1 file;
Start-SPContentDeploymentJob -identity 'Staging to live Job'
I tried the above but with a simple line to check if it was running
Set-content -literalpath "C:\Downloads\DeploymentReport.txt" -value "Started"
(this didn't generate the file)
I tried signing the script as per the instructions on the documentation page, which works fine, and while the workflow runs, nothing happens, and there is no History.
I set-ExectutionPolicy unrestricted and tried the above again, no dice, runs alright, but it nothing happens.
I could have the users simply run the Powershell script when they want to update content, but I don't want them to have to log on to the server to do it, I'd much rather do it in a workflow with a Quick Step button.
It's been suggested that I "just do it in code", but I don't speak .net I'm afraid.
Could someone post an example of *working* syntax? Do the $vars have to have values? Can I do without Signature? What is Secure Store AppID?