We are on ZCM 2017 Update 2a and all of our primary and satellites are Linux to last week I brought a Windows 10 server online and promoted it to the satellite role so I could test WinPE imaging using a server instead of a flash drive to host the images. The Windows satellite only has the imaging role assigned to it and I made sure the winpe.wim and imagex.exe 32 and 64 bit files synched to the server as well as the Tuxera driver. So if I build a preboot bundle with an action of ZENworks Imge and I enter the Windows server IP and path to the image file for example:
XXX.XXX.3.9
C:\Program Files (x86)\Novell\ZENworks\work\content-repo\images\1709WinPE.zmg

If I assign this bundle to a computer it copies the image fine. But when I use a third party script I get an error saying the image path is invalid. Here is the code:

$PROXYADDR='XXX.XXX.3.9'
...
Write-Host "Restoring Image..."
img -restorep "C:\Program Files (x86)\Novell\ZENworks\work\content-repo\images\1709WinPE.zmg" -ip=$PROXYADDR
Write-Host "Restoring Addons..."
img -rp \images\1709addons.zmg -ip=$PROXYADDR -ap=a13
Write-Host "Restoring Drivers..."
img -rp \images\$drivers -ip=$PROXYADDR -ap=a13

The first img command gives the image path is invalid while the last two give an error invalid physical partition specified. This makes sense since the partitions are not written until 1709WinPE.zmg is copied. I tried img -rp, -restorep and I have also set the path to \images\1709WinPE.zmg and \\ASC-WIN2016\content-repo\images\1709WinPE.zmg. On the server itself I have shared the images folder and gave everyone full rights to it. Yet after all this I still get the error. One thing I do notice is that another primary is being used to copy the winpe.wim file to the computer and initiate the third party imaging script. Only in the script do I specifically set the Windows imaging server IP. So my questions are:

1. Why can the 1709WinPE.zmg file download fine to a computer using a preboot bundle but not a third party imaging script?

2. How do you set a preferred imaging server to an OU? My guess is because another imaging server is doing the work, there are permission issues when the third-party script tries to access the server.

Any advice is appreciated.