web-dev-qa-db-fra.com

Comment créer un tag automatiquement lors de la demande de fusion acceptée dans GitLab?

Ceci est pour un référentiel contenant une bibliothèque. Le numéro de version de la bibliothèque est incrémenté (manuellement) chaque fois qu'une demande de fusion à maîtriser est acceptée.

Toutefois, si vous souhaitez accéder à un fichier de la version X.Y.Z, je dois rechercher la validation qui incrémente le numéro de version sur X.Y.Z, obtenir sa date, puis consulter l'historique de la version du fichier à cette date.

Je souhaite créer une balise par version automatiquement lors de la création de la demande de fusion à maîtriser. Est-ce possible ?

J'espérais que cela serait possible avec les nouvelles commandes - GitLab slash , mais les balises ne sont actuellement pas prises en charge.

Existe-t-il une autre possibilité que d'utiliser des points d'ancrage Web?

12
philant

Faisant face au même défi, je suis tombé sur cette suggestion sur l'ancien outil de suivi des problèmes de GitLab sur GitHub :

"Vous pouvez écrire un script pour utiliser l'API GitLab afin d'accepter une demande de fusion, obtenir le commit de la fusion, puis étiqueter ce commit." - MadhavGitlab

(juste pour mentionner cela - pour moi ce n'est pas suffisant)

3
klaus

J'ai d'abord essayé de le faire à l'aide de gitlab, en créant un fichier .gitlab-ci.yml dans le répertoire de niveau supérieur du projet. Ce fichier peut contenir les commandes créant la balise de version. L'utilisateur qui exécute le script doit disposer de suffisamment d'autorisations pour pouvoir accéder au projet git et être configuré avec les informations de création.

Je l'ai finalement fait sur un serveur Jenkins, où j'ai créé un travail qui est appelé lorsque les commits sont poussés dans une branche spécifique. La balise peut être créée dans les commandes d'exécution Shell.

0
philant