L'installation d'un plugin à partir du centre de mise à jour entraîne:
Vérification de la connectivité Internet Échec de la connexion à http://www.google.com/ . Peut-être avez-vous besoin de configurer un proxy HTTP? Échec du déploiement du plug-in - Détails hudson.util.IOException2: échec du téléchargement à partir de http://updates.jenkins-ci.org/download/plugins/deploy/1.9/deploy.hpi
Est-il possible de télécharger le plugin et de l'installer manuellement dans Jenkins?
Oui, vous pouvez. Téléchargez le plugin (fichier * .hpi) et placez-le dans le répertoire suivant:
<jenkinsHome>/plugins/
Ensuite, vous devrez redémarrer Jenkins.
Parfois, lorsque vous téléchargez des plugins, vous pouvez obtenir des fichiers (.Zip), puis renommer avec (.hpi) et utiliser l'interface utilisateur pour installer le plugin.
Si vous utilisez Docker, vous devriez lire ce fichier: https://github.com/cloudbees/jenkins-ci.org-docker/blob/master/plugins.sh
Exemple d'un fichier Dockerfile parent:
FROM jenkins
COPY plugins.txt /plugins.txt
RUN /usr/local/bin/plugins.sh /plugins.txt
plugins.txt
<name>:<version>
<name2>:<version2>
J'ai créé un script simple qui effectue les tâches suivantes:
Le script ne nécessite pas l'exécution de jenkins - je l'utilise pour approvisionner une boîte de menu fixe.
Mise à jour pour Docker: utilisez le script install-plugins.sh . Il faut une liste de noms de plugins moins l'extension '-plugin'. Voir la description ici .
install-plugins.sh remplace le plugin.sh obsolète qui avertit maintenant:
WARN: plugins.sh is deprecated, please switch to install-plugins.sh
Pour utiliser un fichier plugins.txt correspondant à plugins.sh, voir ce problème et cette solution de contournement:
RUN /usr/local/bin/install-plugins.sh $(cat /usr/share/jenkins/plugins.txt | tr '\n' ' ')
Parfois, lorsque vous téléchargez des plugins, vous pouvez obtenir des fichiers (.Zip), puis renommer avec (.hpi), puis extraire tous les plugins et les déplacer dans le répertoire <jenkinsHome>/plugins/
.
La réponse acceptée est exacte, mais assurez-vous d'installer également toutes les dépendances nécessaires. L'installation à l'aide de la CLI ou du Web semble résoudre ce problème, mais mes plugins n'apparaissaient pas dans le navigateur ou n'utilisaient pas Java -jar jenkins-cli.jar -s http://localhost:8080 list-plugins
tant que les dépendances n'ont pas été installées.
Utilisez https://updates.jenkins-ci.org/download/plugins/ . Téléchargez-le à partir de ce référentiel de mises à jour central pour Jenkins.
Les réponses données fonctionnent, avec des plugins ajoutés.
Si vous souhaitez remplacer/mettre à jour un plug-in intégré, comme le plug-in des informations d'identification, qui comporte des dépendances, vous devez utiliser l'interface frontale. Pour automatiser j'utilise:
curl -i -F [email protected] http://jenkinshost/jenkins/pluginManager/uploadPlugin
C'est un moyen de copier des plugins d'une boîte Jenkins à une autre.
Copiez le répertoire des plugins:
scp -r jenkins-box.url.com:/var/lib/jenkins/plugins .
Compressez les plugins:
tar cvfJ plugins.tar.xz plugins
Copiez-les dans l'autre boîte Jenkins:
scp plugins.tar.xz different-jenkins-box.url.com
ssh different-jenkins-box.url.com "tar xvfJ plugins.tar.xz -C /var/lib/jenkins"
Redémarrez Jenkins.
Dans mon cas, je devais installer un plug-in sur un serveur de build hors ligne qui exécute un serveur Windows (la version importera peu ici). J'ai déjà installé Jenkins sur mon ordinateur portable pour tester les modifications à l'avance et il s'exécute sur localhost: 8080 en tant que service Windows.
Donc, si vous êtes prêt à prendre le temps de configurer Jenkins sur une machine avec une connexion Internet et de transférer ces modifications au serveur hors ligne Jenkins (cela fonctionne, cela a été confirmé par moi!), Voici les étapes à suivre:
Pour installer le plugin "git" avec toutes ses dépendances:
curl -XPOST http://localhost:8080/pluginManager/installNecessaryPlugins -d '<install plugin="git@current" />'
Ici, le plugin installé est git
; la version spécifiée sous la forme @current
est ignorée par Jenkins. Jenkins s'exécute sur localhost
port 8080
, modifiez-le si nécessaire. Pour autant que je sache, c'est le moyen le plus simple d'installer un plugin avec toutes ses dépendances "à la main". Testé sur Jenkins v1.644