J'ai essayé d'exécuter (déclencher) le travail jenkins (pas un travail paramétré) via la commande curl en utilisant les méthodes ci-dessous mais en affichant ces résultats. ma version jenkins est Jenkins 2.73.3
curl -X POST -u jenkins_user_name:jenkins_user_passwd http://jenkins_server/job/job_name/build
Par conséquent, j'ai créé un jeton d'authentification pour le travail
curl -X POST http://jenkins_server/job/job_name/build?token=wefiytgwiefiweihfqweiodf
Cela donne également la même erreur. il dit interdit 403
Après cela, j'ai créé un jeton API pour l'utilisateur jenkins et essayé.
curl -X POST -u auto:testingdae6dc22a73048e6d596e7b0 http://jenkins_server/job/job_name/build?token=wefiytgwiefiweihfqweiodf
Mais c'est aussi pareil, dit Forbidden 403
En fait, j'ai également suivi cette réponse. https://www.nczonline.net/blog/2015/10/triggering-jenkins-builds-by-url/ cela ne fonctionne pas non plus pour moi.
à chaque fois, c'est 403 interdit. Je pense que je n'ai pas pu authentifier correctement l'utilisateur jenkins.
trouvé la réponse. En fait, ces étapes sont correctes. Je voudrais mentionner les étapes correctes.
Créez un utilisateur dans Jenkins, vous pouvez utiliser ce mot de passe utilisateur ou ce jeton d'API pour déclencher le travail Jenkins. Mais créer un jeton d'API pour cet utilisateur est beaucoup mieux. Mais les deux façons fonctionnent bien.
Mais vous devez créer un jeton d'authentification pour le travail Jenkins
Utilisation du mot de passe
curl -I -u auto:<userpasswd> http://<jenkins_server>/job/test/build?token=wefiytgwiefiweihfqweiodf
Utilisation d'un jeton API
Créez un jeton d'API pour cet utilisateur Jenkins
curl -I -u auto:<user_api_token> http://<jenkins_Server>/job/test/build?token=wefiytgwiefiweihfqweiodf
voici les résultats, en utilisant le mot de passe utilisateur jenkins et le jeton API utilisateur jenkins .
En fait, vous pouvez également envoyer cette demande sans "-I".
curl -u auto:<jenkins_user_token> http://<jenkins_server>/job/test/build?token=wefiytgwiefiweihfqweiodf
curl -u auto:<jenkins_user_password> http://<jenkins_server>/job/test/build?token=wefiytgwiefiweihfqweiodf
Pour configurer ces autorisations:
Manage Jenkins
Configure Global Security
Prevent Cross Site Request Forgery exploits
save