1 votes

Impossible de faire du FTP de Jenkins vers un serveur Windows distant (en utilisant le plugin Publish Over FTP).

J'ai un serveur filezilla qui tourne sur une machine distante Windows 7. J'ai un maître jenkins en cours d'exécution avec un esclave installé sur debian 7.

Si je me connecte en ssh à l'esclave debian7 et que je fais un ftp/mise à jour vers le serveur filezilla, je peux télécharger un fichier test.txt sans problème :

$ ftp myfileZillaFtp 21
Connected to myfileZillaFtp.
220-FileZilla Server version 0.9.41 beta
220-written by Tim Kosse (Tim.Kosse@gmx.de)
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> 

Mais si j'exécute la même étape dans un travail Jenkins de type freestyle où j'ai ajouté une étape de publication FTP basée sur les instructions ici :

https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+FTP+Plugin

Je reçois :

FTP: Connexion à partir de l'hôte [debian7-slave]
FTP: Connexion avec la configuration [myfileZillaFtp] ...
220-FileZilla Server version 0.9.41 beta
220-written by Tim Kosse (Tim.Kosse@gmx.de)
220 Please visit http://sourceforge.net/projects/filezilla/
FTP: Connexion, l'impression de commandes est désactivée
FTP: Connecté, impression de commandes activée
CWD test
250 CWD successful. "/test" is current directory.
FTP: Le système racine distant n'est pas absolu, obtention du répertoire absolu à partir de 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: Déconnexion de la configuration [myfileZillaFtp] ...
ERREUR: Exception lors de la publication, message d'exception [Connection timed out]
L'étape de construction 'Envoyer des fichiers via FTP' a changé le résultat de la construction en INSTABLE
Terminé : INSTABLE

Pourquoi l'envoi ftp échoue-t-il lorsqu'il est exécuté via jenkins ?

MODIFICATION :

Probablement un bug dans : https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+FTP+Plugin

Cela fonctionne avec ce plugin : http://wiki.hudson-ci.org/display/HUDSON/FTP-Publisher+Plugin

Toute suggestion est toujours la bienvenue cependant.

2voto

Adam Points 21

J'ai rencontré le même problème. J'ai réussi à faire fonctionner le transfert en configurant le plugin pour "Utiliser le mode de données actif". Assurez-vous également d'autoriser les connexions sur le port 21 depuis votre serveur Jenkins.

0 votes

A fonctionné pour moi!!!

0 votes

Mais cela ne fonctionne pas pour moi. Finalement, j'ai abandonné et j'ai utilisé la commande lftp à la place du plugin.

0voto

Chu-Saing Lai Points 111

Tout d'abord, nous pouvons nous connecter au serveur ftp avec la commande lftp, c'est mieux que la commande ftp.

Maintenant, nous pouvons ...

  1. Installer le Plugin Publish Over FTP dans Jenkins.
  2. Configurer le compte du serveur ftp dans Gestionnaire Jenkins.
  3. Configurer l'envoi de fichiers dans Configuration de la tâche.
  4. Lancer le Build Now.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X