Eu tenho um servidor filezilla em execução em uma máquina remota com Windows 7. Eu tenho um mestre Jenkins em execução com um escravo instalado no Debian 7.
Se eu fizer ssh para o escravo debian7 e fizer um ftp/put para o servidor filezilla, posso fazer upload de um arquivo test.txt perfeitamente:
$ ftp myfileZillaFtp 21
Connected to myfileZillaFtp.
220-FileZilla Server version 0.9.41 beta
220-written by Tim Kosse ([email protected])
220 Please visit http://sourceforge.net/projects/filezilla/
Name (myfileZillaFtp:jenkins): admin
331 Password required for admin
Password:
230 Logged on
Remote system type is UNIX.
ftp> cd test
250 CWD successful. "/test" is current directory.
ftp> put test.txt
local: test.txt remote: test.txt
200 Port command successful
150 Opening data channel for file transfer.
226 Transfer OK
6364 bytes sent in 0.00 secs (24959.2 kB/s)
ftp>
Mas se eu executar a mesma etapa em um trabalho de estilo livre do Jenkins, onde adicionei uma etapa de publicação FTP com base nas instruções aqui:
https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+FTP+Plugin
Eu recebo:
FTP: Connecting from host [debian7-slave]
FTP: Connecting with configuration [myfileZillaFtp] ...
220-FileZilla Server version 0.9.41 beta
220-written by Tim Kosse ([email protected])
220 Please visit http://sourceforge.net/projects/filezilla/
FTP: Logging in, command printing disabled
FTP: Logged in, command printing enabled
CWD test
250 CWD successful. "/test" is current directory.
FTP: Remote root is not absolute, getting absolute directory from PWD
PWD
257 "/test" is current directory.
TYPE I
200 Type set to I
CWD /test
250 CWD successful. "/test" is current directory.
PASV
227 Entering Passive Mode (172,22,80,8,192,46)
FTP: Disconnecting configuration [myfileZillaFtp] ...
ERROR: Exception when publishing, exception message [Connection timed out]
Build step 'Send files over FTP' changed build result to UNSTABLE
Finished: UNSTABLE
Por que o upload do FTP falha ao executá-lo através do Jenkins?
EDITAR:
Provavelmente um bug em: https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+FTP+Plugin
Funciona com este plugin: http://wiki.hudson-ci.org/display/HUDSON/FTP-Publisher+Plugin
Qualquer sugestão ainda é bem-vinda.
Responder1
Eu experimentei o mesmo problema. Consegui fazer a transferência funcionar configurando o plugin para "Usar modo de dados ativo". Certifique-se também de permitir conexões na porta 21 do seu servidor Jenkins.
Responder2
Primeiro, podemos fazer login no servidor FTP com o comando lftp, é melhor o comando ftp.
Agora, podemos...
- Instalando oPublicar por meio de plug-in FTPem Jenkins.
- Configurando a conta do servidor FTP emGerente Jenkins.
- Configurando arquivos push emConfiguração do trabalho.
- Construa agora.