GitLab
Interagissez avec les projets, les problèmes, les demandes de fusion et les pipelines GitLab
GitLab est une plateforme DevOps complète qui permet aux équipes de gérer, collaborer et automatiser leur cycle de développement logiciel. Avec GitLab, vous pouvez facilement gérer le code source, l'intégration continue/déploiement continu (CI/CD), les révisions et la collaboration dans une seule application.
Avec GitLab dans Cadense, vous pouvez :
- Gérer des projets et des dépôts : lister et récupérer vos projets GitLab, accéder aux détails et organiser vos dépôts
- Travailler avec des problèmes : lister, créer et commenter des problèmes pour suivre le travail et collaborer efficacement
- Gérer les demandes de fusion : examiner, créer et gérer les demandes de fusion pour les modifications de code et les révisions par les pairs
- Automatiser les pipelines CI/CD : déclencher, surveiller et interagir avec les pipelines GitLab dans le cadre de vos flux d'automatisation
- Collaborer avec des commentaires : ajouter des commentaires aux problèmes ou aux demandes de fusion pour une communication efficace au sein de votre équipe
En utilisant l'intégration GitLab de Cadense, vos agents peuvent interagir par programmation avec vos projets GitLab. Automatisez la gestion de projet, le suivi des problèmes, les révisions de code et les opérations de pipeline de manière transparente dans vos flux de travail, optimisant ainsi votre processus de développement logiciel et améliorant la collaboration au sein de votre équipe.
Instructions d'utilisation
Intégrez GitLab dans le flux de travail. Peut gérer les projets, les problèmes, les demandes de fusion, les pipelines et ajouter des commentaires. Prend en charge toutes les opérations DevOps de base de GitLab.
Outils
gitlab_list_projects
Lister les projets GitLab accessibles à l'utilisateur authentifié
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
owned | boolean | Non | Limiter aux projets appartenant à l'utilisateur actuel |
membership | boolean | Non | Limiter aux projets dont l'utilisateur actuel est membre |
search | string | Non | Rechercher des projets par nom |
visibility | string | Non | Filtrer par visibilité (public, internal, private) |
orderBy | string | Non | Trier par champ (id, name, path, created_at, updated_at, last_activity_at) |
sort | string | Non | Direction de tri (asc, desc) |
perPage | number | Non | Nombre de résultats par page (20 par défaut, 100 max) |
page | number | Non | Numéro de page pour la pagination |
Sortie
| Paramètre | Type | Description |
|---|---|---|
projects | array | Liste des projets GitLab |
total | number | Nombre total de projets |
gitlab_get_project
Obtenir les détails d'un projet GitLab spécifique
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | string | Oui | ID du projet ou chemin encodé en URL (ex. : "namespace/project") |
Sortie
| Paramètre | Type | Description |
|---|---|---|
project | object | Les détails du projet GitLab |
gitlab_list_issues
Lister les problèmes dans un projet GitLab
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | string | Oui | ID du projet ou chemin encodé en URL |
state | string | Non | Filtrer par état (opened, closed, all) |
labels | string | Non | Liste de noms d'étiquettes séparés par des virgules |
assigneeId | number | Non | Filtrer par ID d'utilisateur assigné |
milestoneTitle | string | Non | Filtrer par titre de jalon |
search | string | Non | Rechercher des problèmes par titre et description |
orderBy | string | Non | Trier par champ (created_at, updated_at) |
sort | string | Non | Direction de tri (asc, desc) |
perPage | number | Non | Nombre de résultats par page (20 par défaut, max 100) |
page | number | Non | Numéro de page pour la pagination |
Sortie
| Paramètre | Type | Description |
|---|---|---|
issues | array | Liste des problèmes GitLab |
total | number | Nombre total de problèmes |
gitlab_get_issue
Obtenir les détails d'un problème GitLab spécifique
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | string | Oui | ID du projet ou chemin encodé URL |
issueIid | number | Oui | Numéro du problème dans le projet (le # affiché dans l'interface GitLab) |
Sortie
| Paramètre | Type | Description |
|---|---|---|
issue | object | Les détails du problème GitLab |
gitlab_create_issue
Créer un nouveau problème dans un projet GitLab
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | string | Oui | ID du projet ou chemin encodé URL |
title | string | Oui | Titre du problème |
description | string | Non | Description du problème (Markdown pris en charge) |
labels | string | Non | Liste d'étiquettes séparées par des virgules |
assigneeIds | array | Non | Tableau d'ID utilisateurs à assigner |
milestoneId | number | Non | ID du jalon à assigner |
dueDate | string | Non | Date d'échéance au format AAAA-MM-JJ |
confidential | boolean | Non | Si le problème est confidentiel |
Sortie
| Paramètre | Type | Description |
|---|---|---|
issue | objet | Le ticket GitLab créé |
gitlab_update_issue
Mettre à jour un ticket existant dans un projet GitLab
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | chaîne | Oui | ID du projet ou chemin encodé URL |
issueIid | nombre | Oui | ID interne du ticket (IID) |
title | chaîne | Non | Nouveau titre du ticket |
description | chaîne | Non | Nouvelle description du ticket (Markdown pris en charge) |
stateEvent | chaîne | Non | Événement d'état (close ou reopen) |
labels | chaîne | Non | Liste de noms d'étiquettes séparés par des virgules |
assigneeIds | tableau | Non | Tableau d'ID utilisateurs à assigner |
milestoneId | nombre | Non | ID du jalon à assigner |
dueDate | chaîne | Non | Date d'échéance au format AAAA-MM-JJ |
confidential | booléen | Non | Indique si le ticket est confidentiel |
Sortie
| Paramètre | Type | Description |
|---|---|---|
issue | objet | Le ticket GitLab mis à jour |
gitlab_delete_issue
Supprimer un ticket d'un projet GitLab
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | chaîne | Oui | ID du projet ou chemin encodé URL |
issueIid | nombre | Oui | ID interne du ticket (IID) |
Sortie
| Paramètre | Type | Description |
|---|---|---|
success | boolean | Indique si le problème a été supprimé avec succès |
gitlab_create_issue_note
Ajouter un commentaire à un problème GitLab
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | string | Oui | ID du projet ou chemin encodé en URL |
issueIid | number | Oui | ID interne du problème (IID) |
body | string | Oui | Corps du commentaire (Markdown pris en charge) |
Sortie
| Paramètre | Type | Description |
|---|---|---|
note | object | Le commentaire créé |
gitlab_list_merge_requests
Lister les demandes de fusion dans un projet GitLab
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | string | Oui | ID du projet ou chemin encodé en URL |
state | string | Non | Filtrer par état (opened, closed, merged, all) |
labels | string | Non | Liste de noms d'étiquettes séparés par des virgules |
sourceBranch | string | Non | Filtrer par branche source |
targetBranch | string | Non | Filtrer par branche cible |
orderBy | string | Non | Trier par champ (created_at, updated_at) |
sort | string | Non | Direction de tri (asc, desc) |
perPage | number | Non | Nombre de résultats par page (20 par défaut, 100 max) |
page | number | Non | Numéro de page pour la pagination |
Sortie
| Paramètre | Type | Description |
|---|---|---|
mergeRequests | array | Liste des demandes de fusion GitLab |
total | number | Nombre total de demandes de fusion |
gitlab_get_merge_request
Obtenir les détails d'une demande de fusion GitLab spécifique
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | string | Oui | ID du projet ou chemin encodé en URL |
mergeRequestIid | number | Oui | ID interne de la demande de fusion (IID) |
Sortie
| Paramètre | Type | Description |
|---|---|---|
mergeRequest | object | Les détails de la demande de fusion GitLab |
gitlab_create_merge_request
Créer une nouvelle demande de fusion dans un projet GitLab
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | string | Oui | ID du projet ou chemin encodé en URL |
sourceBranch | string | Oui | Nom de la branche source |
targetBranch | string | Oui | Nom de la branche cible |
title | string | Oui | Titre de la demande de fusion |
description | string | Non | Description de la demande de fusion (Markdown pris en charge) |
labels | string | Non | Liste de noms d'étiquettes séparés par des virgules |
assigneeIds | array | Non | Tableau d'ID utilisateurs à assigner |
milestoneId | number | Non | ID du jalon à assigner |
removeSourceBranch | boolean | Non | Supprimer la branche source après la fusion |
squash | boolean | Non | Regrouper les commits lors de la fusion |
draft | boolean | Non | Marquer comme brouillon (travail en cours) |
Sortie
| Paramètre | Type | Description |
|---|---|---|
mergeRequest | objet | La demande de fusion GitLab créée |
gitlab_update_merge_request
Mettre à jour une demande de fusion existante dans un projet GitLab
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | chaîne | Oui | ID du projet ou chemin encodé URL |
mergeRequestIid | nombre | Oui | ID interne de la demande de fusion (IID) |
title | chaîne | Non | Nouveau titre de la demande de fusion |
description | chaîne | Non | Nouvelle description de la demande de fusion |
stateEvent | chaîne | Non | Événement d'état (close ou reopen) |
labels | chaîne | Non | Liste de noms d'étiquettes séparés par des virgules |
assigneeIds | tableau | Non | Tableau d'ID utilisateurs à assigner |
milestoneId | nombre | Non | ID du jalon à assigner |
targetBranch | chaîne | Non | Nouvelle branche cible |
removeSourceBranch | booléen | Non | Supprimer la branche source après la fusion |
squash | booléen | Non | Regrouper les commits lors de la fusion |
draft | booléen | Non | Marquer comme brouillon (travail en cours) |
Sortie
| Paramètre | Type | Description |
|---|---|---|
mergeRequest | objet | La demande de fusion GitLab mise à jour |
gitlab_merge_merge_request
Fusionner une demande de fusion dans un projet GitLab
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | chaîne | Oui | ID du projet ou chemin encodé URL |
mergeRequestIid | nombre | Oui | ID interne de la demande de fusion (IID) |
mergeCommitMessage | chaîne | Non | Message personnalisé du commit de fusion |
squashCommitMessage | chaîne | Non | Message personnalisé du commit de regroupement |
squash | booléen | Non | Regrouper les commits avant la fusion |
shouldRemoveSourceBranch | booléen | Non | Supprimer la branche source après la fusion |
mergeWhenPipelineSucceeds | booléen | Non | Fusionner lorsque le pipeline réussit |
Sortie
| Paramètre | Type | Description |
|---|---|---|
mergeRequest | objet | La demande de fusion GitLab fusionnée |
gitlab_create_merge_request_note
Ajouter un commentaire à une demande de fusion GitLab
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | chaîne | Oui | ID du projet ou chemin encodé en URL |
mergeRequestIid | nombre | Oui | ID interne de la demande de fusion (IID) |
body | chaîne | Oui | Corps du commentaire (Markdown pris en charge) |
Sortie
| Paramètre | Type | Description |
|---|---|---|
note | objet | Le commentaire créé |
gitlab_list_pipelines
Lister les pipelines dans un projet GitLab
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | chaîne | Oui | ID du projet ou chemin encodé en URL |
ref | chaîne | Non | Filtrer par ref (branche ou tag) |
status | chaîne | Non | Filtrer par statut (created, waiting_for_resource, preparing, pending, running, success, failed, canceled, skipped, manual, scheduled) |
orderBy | chaîne | Non | Trier par champ (id, status, ref, updated_at, user_id) |
sort | chaîne | Non | Direction de tri (asc, desc) |
perPage | nombre | Non | Nombre de résultats par page (20 par défaut, 100 max) |
page | nombre | Non | Numéro de page pour la pagination |
Sortie
| Paramètre | Type | Description |
|---|---|---|
pipelines | array | Liste des pipelines GitLab |
total | number | Nombre total de pipelines |
gitlab_get_pipeline
Obtenir les détails d'un pipeline GitLab spécifique
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | string | Oui | ID du projet ou chemin encodé URL |
pipelineId | number | Oui | ID du pipeline |
Sortie
| Paramètre | Type | Description |
|---|---|---|
pipeline | object | Les détails du pipeline GitLab |
gitlab_create_pipeline
Déclencher un nouveau pipeline dans un projet GitLab
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | string | Oui | ID du projet ou chemin encodé URL |
ref | string | Oui | Branche ou tag sur lequel exécuter le pipeline |
variables | array | Non | Tableau de variables pour le pipeline (chacune avec clé, valeur et type de variable optionnel) |
Sortie
| Paramètre | Type | Description |
|---|---|---|
pipeline | object | Le pipeline GitLab créé |
gitlab_retry_pipeline
Réessayer un pipeline GitLab échoué
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | string | Oui | ID du projet ou chemin encodé URL |
pipelineId | number | Oui | ID du pipeline |
Sortie
| Paramètre | Type | Description |
|---|---|---|
pipeline | objet | Le pipeline GitLab relancé |
gitlab_cancel_pipeline
Annuler un pipeline GitLab en cours d'exécution
Entrée
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
projectId | chaîne | Oui | ID du projet ou chemin encodé en URL |
pipelineId | nombre | Oui | ID du pipeline |
Sortie
| Paramètre | Type | Description |
|---|---|---|
pipeline | objet | Le pipeline GitLab annulé |