Comment puis-je modifier une configuration de travail jenkins par programme sans redémarrage?

10

Les travaux Jenkins ont des fichiers config.xml qui stockent la configuration de ce travail.

J'ai un travail de "gestionnaire de travaux" qui modifie la configuration d'autres travaux, mais je n'arrive pas à obtenir qu'il reconnaisse la nouvelle configuration sans redémarrer Jenkins.

L'outil de ligne de commande jenkins-cli.jar ne semble étrangement pas avoir d'option pour cette action.

Il est possible d'éditer la configuration via l'interface web, et d'avoir cette sauvegarde / acquittée sans redémarrage, il ne semble donc pas que ce serait une impossibilité technique.

Mon meilleur essai a été d'essayer de publier à la même adresse que l'interface Web

wget --post-file=config.xml --user=joe.shmoe --password=secret01 \
     --no-check-certificate                                      \
     https://jenkins.company.com/job/myProject/config.xml

... mais j'obtiens un 403 malgré l'utilisation d'informations d'identification valides (copie collée pour éviter les fautes de frappe)

Quelqu'un a des idées ou sait quelque chose de simple qui me manque?

Catskul
la source
merde sainte. CELA FONCTIONNE EN FAIT !!! (avec l'authentification corrigée comme le suggère Catskul ci-dessous, ou dans mon cas sans authentification) Je recherche cette technique depuis des heures maintenant ...
Dave Dopson

Réponses:

8

Il s'avère que les informations cruciales semblent être l'option "--auth-no-challenge" de wget qui est apparemment pour les configurations de serveurs Web obscures comme Jenkins qui ne suivent pas le protocole attendu:

wget --auth-no-challenge --user=joe.shmoe --password=secret  \
     --post-file=config.xml --no-check-certificate           \
     https://jenkins.company.com/job/myProject/config.xml
Catskul
la source
4

Je préfère le curl ....

curl "http://localhost:18080/jenkins/job/npm-package-aaa/config.xml" -si --data-binary "$XML" -H "Content-Type: text/xml" 
Dave Dopson
la source