Разница в выходных данных для скрипта Powershell при запуске из Jenkins (на машине Linux) и при локальном запуске на машине windows - PullRequest
0 голосов
/ 30 января 2020

Различные выходы для сценария Powershell при запуске с Jenkins (на Linux машине) и при локальном запуске на windows машине.

Полученные результаты отличаются, и я не знаю Почему. Могут ли быть какие-либо возможности для Jenkins отличного от того, что есть на локальной машине?

Сценарий находится в файле Script.ps1, Build in Jenkins - Выполнить Windows Пакетная команда и команда is powershell -File C:\Folder\Script.ps1

Любая помощь по этому вопросу будет очень полезна, спасибо!

PS разница составляет 1 мс, что означает, что выходной сигнал задерживается на 1 мс. Почему так? Спасибо.

Вывод такой:

Вывод для этого из Windows Powershell:

LastTrade + 1/29/2020 12:00:28 AM + 81888815 + 29.01.2020 12:00:28 FirstTrade + 1/28/2020 23:59:53 + 81888716 1/29/2020 12:00:00 Last Final Trade + @ {time = 2020- 01-28T23: 59: 58.476Z; trade_id = 81888750; цена = 9394.50000000; Размер = 0.06500000; side = buy} + 28.01.2020 23:59:58

Но вывод от Дженкинса:

LastTrade + 1/29/2020 12:00 : 28:00 + 81888813 + 29.01.2020 12:00:28 FirstTrade + 28.01.2020 11:59:53 PM + 81888721 1/29/2020 12:00:00 Последняя финальная сделка + @ {time = 2020-01-28T23: 59: 56.478Z; trade_id = 81888727; цена = 9404.90000000; Размер = 0.05272805; сторона = продажа} + 28.01.2020 23:59:56

Сценарий таков:

   $SubRequest = "https://api.pro.coinbase.com/products/BTC-USD/trades?after=81888816&limit=100"        
    $SubResponse = Invoke-WebRequest $SubRequest -UseBasicParsing|
    ConvertFrom-Json 
    $SubLastTradeObject = ($SubResponse | Sort-object time, [int]tradeid -Descending | Select-Object -First 1)
    $SubFirstTradeObject = ($SubResponse | Sort-object time, [int]tradeid | Select-Object -First 1)
    $SubLastTradeTime = ([datetime]$SubLastTradeObject.time).ToUniversalTime()
    $SubFirstTradeTime = ([datetime]$SubFirstTradeObject.time).ToUniversalTime()
    Write-Host "LastTrade" +  $SubLastTradeTime + $SubLastTradeObject.Trade_id + $SubLastTradeTime
    Write-Host "FirstTrade" + $SubFirstTradeTime + $SubFirstTradeObject.Trade_id
    $CurrentDate = $(Get-Date).ToUniversalTime().ToShortDateString()
    $LastTradeDateBorder = [datetime]"$CurrentDate 00:00:00.000" #current date's 12:00:00 AM
    Write-Host  $LastTradeDateBorder
    if(($SubLastTradeTime -gt $LastTradeDateBorder) -and ($SubFirstTradeTime -lt $LastTradeDateBorder)) 
    {
        #Write-Host $($SubResponse | Select-Object -Property time,trade_id,price,size,side)
        $finalTrade = ($SubResponse | Where-Object -FilterScript {([datetime]$_.time).ToUniversalTime() -lt $LastTradeDateBorder} | Sort-object  tradeId -Descending | Select-Object -First 1)                        
        Write-Host "Last Final Trade " + $finalTrade + $(([datetime]$finalTrade.time).ToUniversalTime())
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...