Развертывание ncftp (через конвейеры butbucket) приводит к тому, что "сервер сказал: www: нет такого файла или каталога", но путь в filezilla совершенно правильный

Я пытаюсь автоматизировать развертывание через ftp через конвейеры bitbucket.

Путь это:

/var/www/vhosts/maindomain.com/subdomain.maindomain.com

Пробовал с первой и без косой черты. Также проверял путь по умолчанию при подключении и его maindomain.com/subdomain.maindomain.com - пробовал тоже, но та же ошибка.

Код выглядит так:

image: node:9.8.0
    pipelines:
      default:
        - step:
            name: Deployment
            script:
              - apt-get update
              - apt-get install ncftp
              - ncftpput -v -u "$FTP_USERNAME" -p "$FTP_PASSWORD" -R $FTP_HOST $FTP_SITE_ROOT dist/*
              - echo Finished uploading /dist files to $FTP_HOST$FTP_SITE_ROOT

Но проблема в том, что ncftp не нравится путь к файлу для загрузки, несмотря ни на что. Я использую тот, который отображается в filezilla после перехода к этой папке, при подключении с теми же учетными данными.

Как я могу найти правильный путь или устранить эту проблему?

2 ответа

Я думаю, что проблема заключается в том, что мой сервер принимает только SFTP-соединения и не может установить порт на 22, так как NCFTP не поддерживает SSH. В настоящее время я рассматриваю lftp как альтернативу, опубликую здесь синтаксис, если я это выясню.

Изменить: не хорошо масштабируется, будет преследовать разные пути для непрерывного развертывания.

Не нужно добавлять полный путь к FTP-сайту, просто укажите путь, как показано ниже.

-R /maindomain.com/subdomain.maindomain.com dist / *

для проверки физического пути к сайту выберите site-> manage ftp site-> advanced setting. где вы найдете физический путь, который нам не нужно включать при использовании cli.

Другие вопросы по тегам