Automator Eject Action - OSStatus error -36
Solution 1:
If you are going use AppleScript to get a list of disks you want ejected, then simply use, e.g.:
tell application "Finder" to eject cleanListOfDisks
Then there is no need to pass cleanListOfDisks
to a Run Shell Script action to then pass it to a Eject Disk action.
Here is how I'd code the Run AppleScript action and not use any other actions:
set listOfDisks to list disks
set doNotEjectDiskList to {"Macintosh HD", "VM", "home", "net", "Google Drive"}
set listOfDisksToEject to {}
repeat with thisDisk in listOfDisks
if thisDisk is not in doNotEjectDiskList then
copy contents of thisDisk to end of listOfDisksToEject
end if
end repeat
tell application "Finder" to eject listOfDisksToEject