Дженкинс передает 0 файлов, используя публикацию через плагин SSH
Я хочу передать файлы из моего рабочего места Jenkins в папку на удаленном сервере. Строка идет гладко для всех шагов в задании, но всегда передает 0 файлов.
Это консольный вывод:
Started by user Patrick
Building in workspace /var/lib/jenkins/jobs/20eyes Build/workspace
Fetching changes from the remote Git repository
Fetching upstream changes from https://github.com/project/project.git
using .gitcredentials to set credentials
Checking out Revision a758e0f8e534271b999a2fc8696b6fd5a3d5e500 (origin/master)
executing script:
cd /var/www/20eyes-web
[SSH] exit-status: 0
SSH: Connecting from host [dev1.remotehost]
SSH: Connecting with configuration [dev2.remotehost] ...
SSH: Disconnecting configuration [dev2.remotehost] ...
SSH: Transferred 0 file(s)
Build step 'Send files or execute commands over SSH' changed build result to SUCCESS
Finished: SUCCESS
Задача сконфигурирована для сборки после того, как какое-либо коммит переместится в GitHub
Комплект передачи:
Исходные файлы:
/var/lib/jenkins/jobs/20eyes Build/workspace/**/*
Удалить префикс:
/var/lib/jenkins/jobs/20eyes Build/workspace
Ответы
Ответ 1
Я думаю, проблема в вашем конфиге.
У нас есть 2 позиции для настройки.
- В конфигурации системы (глобальная конфигурация).
- > Если тест ok == > Конфигурация для удаленного сервера в порядке.
-
В вашем проекте.
Мы сосредоточимся на наборе переноса: (Исходный файл, Удалить префикс, удаленный каталог)
2.1 Исходный файл: если он пустой = каталог рабочей области. в вашем случае я думаю, что вы должны ввести **/*
2.2 Удалите префикс: см. здесь для получения дополнительной информации.
2.3 Удаленный каталог: если он пуст = каталог, настроенный в конфигурации системы выше.
Надеюсь, что это поможет!
Извините за мой английский.
Ответ 2
Сначала попробуйте быстро: установите исходную папку только с помощью: **/*, чтобы увидеть, скопирован ли какой-либо файл. Если файл был скопирован, посмотрите здесь, чтобы узнать, как написать правильный путь здесь
Ответ 3
Мои советы:
- Вам следует избегать использования пробелов в названии задания Jenkins!
- в вашем случае: name
20eyes Build
может вызвать некоторые проблемы в сопоставлении файлов/каталогов
- Вы должны использовать относительные пути, а не абсолютные пути!
- в вашем случае:
/var/lib/jenkins/...
следует заменить относительным путем из рабочей области
- Вы не должны копировать всю рабочую область!
- укажите только соответствующие файлы из последней сборки (например, WAR файл из целевого каталога)
- Вы должны проверить документацию и примеры Опубликовать над плагинами:
Ответ 4
В моем случае я использовал абсолютный путь (от корня) в "Передача исходных файлов набора:". Когда я изменил путь относительно рабочей области, он сработает!
Ответ 5
просто выберите относительный путь: например, если у вас есть в рабочей области index.html, просто установите index.html в разделе "Исходные файлы".