Est-il possible de Git fusionner / pousser en utilisant Jenkins pipeline
Je suis en train de créer un flux de travail de Jenkins à l'aide d'un Jenkinsfile. Tout ce que je veux faire est de surveiller les " développer la branche pour les changements. Lorsqu'un changement se produit, je veux qu'il git tag et de fusion de maître. Je suis l'aide de la GitSCM Étape, mais la seule chose qu'il semble que le support est git clone. Je ne veux pas avoir à débourser pour faire le tag /fusion, mais je ne vois pas de moyen de contourner cela. Personne ne sait si cela est possible? Je suis à l'aide de BitBucket (prem) pour mon serveur Git.
source d'informationauteur Progger
Vous devez vous connecter pour publier un commentaire.
Il n'est pas possible pour le moment car
GitPublisher
plugin, le plugin auparavant responsable de marquage/fusion/poussant dans le freestyle emplois, n'a pas été mis à jour pour être compatible avec Jenkins pipelines. Vous pouvez suivre cette émission sur le pipeline de compatibilité des plugins page et l'dédié GitPublisher Jira problème.Donc il semble que la seule option que vous avez est effectivement un shell sur votre tag/commandes de fusion... Cependant, notez que vous pouvez encore bénéficier de certains Jenkins capacités intégrées telles que l'utilisation des informations d'identification pour votre repo Git, qui le rendent assez simple pour ensuite tag /fusion suivant vos besoins.
Exemple de check-out :
Le tag /fusion /push va être assez simple :
J'espère qu'un jour GitPublisher sera publié dans un pipeline en version compatible, mais pour l'instant cette solution de contournement devrait le faire.
Si ce que vous êtes après sont le git informations d'identification, vous pouvez utiliser l'Agent SSH plugin comme dans ce lien: https://issues.jenkins-ci.org/browse/JENKINS-28335?focusedCommentId=260925&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-260925
Dans mon cas, j'ai été obligé de travailler avec le protocole HTTPS. Je l'ai résolu en:
Alors que je suis en mesure de pousser les choses avec git push après.
Comme ceci:
Alors je peux faire des choses comme:
J'ai eu à faire une tâche similaire et a réussi à le faire fonctionner avec une variation de ce: https://issues.jenkins-ci.org/browse/JENKINS-28335?focusedCommentId=320383&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-320383
Alors que
ci
est l'id de l'information d'identification que vous avez configuré dans Jenkins. Le chemin d'accès à la clé ssh devient disponible en tant que variable d'environnementSSH_KEY
.Oui, ça l'est!!
Après avoir lutté pendant des jours, j'ai fini avec ces simples bloc de code de script pipeline script qui a travaillé pour moi.
Enjoyy!!