Загрузка FTP в конвейере выпуска завершается с ошибкой FTPError: 500 Синтаксическая ошибка, команда не распознана

Я создал конвейер выпуска в Azure Devops, который сначала архивирует два файла, а затем пытается загрузить эти zip-файлы на FTP-сервер.

Архивирование работает нормально, однако задача загрузки всегда терпит неудачу. Я получаю следующий вывод консоли:

2020-02-13T10:28:03.9716469Z ##[section]Starting: FTP Upload: $(Build.ArtifactStagingDirectory)
2020-02-13T10:28:03.9792841Z ==============================================================================
2020-02-13T10:28:03.9792892Z Task         : FTP upload
2020-02-13T10:28:03.9792921Z Description  : Upload files using FTP
2020-02-13T10:28:03.9792964Z Version      : 2.157.0
2020-02-13T10:28:03.9792992Z Author       : Microsoft Corporation
2020-02-13T10:28:03.9793020Z Help         : https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/ftp-upload
2020-02-13T10:28:03.9793049Z ==============================================================================
2020-02-13T10:28:04.9536900Z connecting to: mydomain.com:21
2020-02-13T10:28:05.1325089Z ##[error]FTPError: 500 Syntax error, command unrecognized.
2020-02-13T10:28:05.1333616Z ##[error]Ftp Upload failed
2020-02-13T10:28:31.5036758Z ##[error]The operation was canceled.
2020-02-13T10:28:31.5040435Z ##[section]Finishing: FTP Upload: $(Build.ArtifactStagingDirectory)

Вот мой YAML:

steps:
- task: FtpUpload@2
  displayName: 'FTP Upload: $(Build.ArtifactStagingDirectory)'
  inputs:
    credentialsOption: inputs
    serverUrl: 'ftp://mydomain.com'
    username: usr
    password: pwd
    rootDirectory: '$(Build.ArtifactStagingDirectory)'
    remoteDirectory: '/files/upload-Test/'
    trustSSL: true

Я также пытался подключиться к другому SFTP-серверу, но получил аналогичные результаты: FTPError: 550 SSL/TLS required on the control channel

Есть ли у вас какие-либо предложения, что я мог бы попробовать, чтобы сделать эту работу?

EDIT: теперь с выводом отладки:

expanding braces
pattern: 'D:/a/r1/a/$(Build.ArtifactStagingDirectory)/**'
applying include pattern against original list
1 matches
1 final results
Found total matches: 1
adding file:   D:\a\r1\a\$(Build.ArtifactStagingDirectory)\FILENAME.zip
connecting to: domain.com:21
Connected to MY-IP
< 220 Speak friend, and enter
Login security: No encryption
> USER usr
< 331 FTP login okay, send password.
> PASS ###
< 230 User logged in, proceed.
> TYPE I
< 200 Using BINARY mode to transfer data.
> STRU F
< 500 Syntax error, command unrecognized.
FTPError: 500 Syntax error, command unrecognized.
Processed: ##vso[task.issue type=error;]FTPError: 500 Syntax error, command unrecognized.
task result: Failed
Ftp Upload failed
Processed: ##vso[task.issue type=error;]Ftp Upload failed
Processed: ##vso[task.complete result=Failed;]Ftp Upload failed

person SimLoe    schedule 17.02.2020    source источник


Ответы (1)


Для этой проблемы недавно произошло событие снижения доступности Azure DevOps, которое может быть причиной этой ошибки.

Нехватка AT вызывает высокую загрузку ЦП на AT, что приводит к медленным и неудачным командам между досками, репозиториями, конвейерами и планами тестирования.

введите здесь описание изображения

Если вы хотите узнать более подробную информацию, обратитесь к этому отчету. теперь полностью смягчен.

person Hugh Lin    schedule 18.02.2020
comment
Я полагаю, вы предположили, что теперь загрузка по FTP должна работать? Я просто передислоцировал конвейер и получил тот же результат. Есть ли возможность включить дополнительную диагностику, подробный вывод или что-то подобное? - person SimLoe; 18.02.2020
comment
Вы можете установить system.debug= true, чтобы получить более подробный журнал - person Hugh Lin; 18.02.2020
comment
у вас есть другие идеи, что я мог бы попробовать? - person SimLoe; 25.02.2020
comment
Вы можете попробовать запустить с помощью частного агента, чтобы увидеть, будет ли тот же результат. - person Hugh Lin; 03.03.2020