Tenho uma instância do Jenkins e vários agentes do Windows 10 em execução em VMs do Azure. Sempre que executo um script do PowerShell em um pipeline, recebo o seguinte nos meus logs:
powershell.exe : Unable to retrieve boot drive serial number
At C:\Users\myuser\mypath@tmp\durable-fc650d61\powershellWrapper.ps1:3 char:1
+ & powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -Comm ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (Unable to retri...e serial number:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
( C:\Users\myuser\mypath
é um caminho de exemplo, não um caminho real).
Suspeito que a causa do problema seja que as VMs do Azure ocultam ou não têm números de série da unidade de inicialização, mas não está claro para mim por que o Jenkins ou o Powershell se importam com isso.
Vale ressaltar que esse erro não faz com que meus scripts falhem: é apenas um ruído irritante nos logs.
Como posso evitar que o log ou a exceção aconteça em primeiro lugar?
Edição: Para esclarecer, isso só acontece se eu passar um caminho de arquivo ps1 para a powershell
diretiva, por exemplo:
powershell "./path/to/my/script/ps1"
Isso não acontece se eu passar um script em linha.