Существует ли в Azure DevOps задача sFTP (SSH FTP) для паролей? - PullRequest
0 голосов
/ 20 июня 2019

Я хочу отправить свои артефакты в выпуске в Azure Devops на конечную точку sFTP. Эта конечная точка sFTP использует sFTP только с именем пользователя и паролем (без закрытого ключа). Эта конечная точка sFTP имеет порт не по умолчанию, кстати.

Сначала я попытался выполнить задачу FTP-загрузки, но при использовании этой задачи возвращается следующая ошибка:

(node:6004) UnhandledPromiseRejectionWarning: Error: Timeout (control socket)
2019-06-20T06:36:22.6058935Z     at Socket.socket.once (d:\a\_tasks\FtpUpload_6f8c69a5-b023-428e-a125-fccf4efcb929\2.151.0\node_modules\basic-ftp\dist\FtpContext.js:269:58)
2019-06-20T06:36:22.6059168Z     at Object.onceWrapper (events.js:273:13)
2019-06-20T06:36:22.6059357Z     at Socket.emit (events.js:182:13)
2019-06-20T06:36:22.6059545Z     at Socket._onTimeout (net.js:449:8)
2019-06-20T06:36:22.6060104Z     at ontimeout (timers.js:436:11)
2019-06-20T06:36:22.6060253Z     at tryOnTimeout (timers.js:300:5)
2019-06-20T06:36:22.6060420Z     at listOnTimeout (timers.js:263:5)
2019-06-20T06:36:22.6060562Z     at Timer.processTimers (timers.js:223:10)
2019-06-20T06:36:22.6060846Z (node:6004) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
2019-06-20T06:36:22.6061761Z (node:6004) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Поэтому я искал альтернативные способы выполнения загрузки.

Есть ли в конвейере выпуска в AzureDevops задача передать артефакты в эту конечную точку sFTP, указав только имя пользователя и пароль? Может быть, встроенная задача Powershell, но как?

Текущая задача SSH заставляет меня использовать имя пользователя, пароль и закрытый ключ ...

(редактирование)

Для меня это похоже на ошибку в задаче загрузки с FTP, поэтому я искал обходной путь и наконец нашел его.

Я использую CURL для загрузки артефактов. Но .... Я столкнулся с тем, что используемый по умолчанию исполняемый файл CURL является частью установки Git и ... в 'Размещенной Windows 2019 с VS2019' исполняемый файл CURL не скомпилирован с функцией SFTP, ааааа ....

К счастью, есть обходной путь для этого, перезаписывая содержимое curl из git с последним использованием Chocolately.

См. https://developercommunity.visualstudio.com/content/problem/224093/hosted-vs2017-agent-protocol-sftp-not-supported-or.html

Например, оператор curl для 1 файла будет:

curl.exe -T "{file}" sftp://{host}:{port} --stderr - -k -u {user}:{password}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...