En tant qu'administrateur Code Stream, vous pouvez partager des pipelines afin que les utilisateurs d'une organisation puissent les exécuter sur un autre projet ou les ajouter en tant que tâches imbriquées dans un pipeline sur un autre projet.
Pourquoi un pipeline partagé est-il utile ?
Lorsque vous partagez un pipeline, vous éliminez la nécessité de créer le même pipeline pour différents projets au sein d'une organisation. Si vous mettez à jour un pipeline partagé, tous les utilisateurs de pipeline disposeront de la même mise à jour.
Un pipeline partagé peut également être utilisé dans Service Broker. Un administrateur Service Broker peut ajouter votre pipeline partagé en tant qu'élément du catalogue pour que les utilisateurs puissent le demander et l'exécuter sur plusieurs projets.
Seuls les administrateurs Code Stream peuvent partager ou arrêter le partage de pipelines.
Partage d'un pipeline
Pour partager un pipeline, cliquez sur Pipeline et sélectionnez le pipeline à partager.
- Cliquez sur
- Lorsque le pipeline est désactivé, cliquez sur .
- (Facultatif) Pour rendre votre pipeline partagé disponible dans Service Broker, cliquez sur .
Après avoir libéré le pipeline, un administrateur Service Broker peut l'ajouter à Service Broker. Reportez-vous à la section Ajouter des pipelines Code Stream au catalogue Service Broker.
Exécution d'un pipeline partagé
Pour exécuter un pipeline partagé, vous sélectionnez le pipeline et sélectionnez un projet.
Le pipeline est exécuté dans le contexte du projet que vous sélectionnez, et seul le modèle de pipeline est partagé. Toutes les infrastructures telles que les points de terminaison ou les variables utilisés dans le pipeline ne sont pas partagées. Si un pipeline partagé qui utilise des points de terminaison ou des variables est exécuté sur un projet différent, ces points de terminaison et variables doivent être disponibles sur ce projet.
Par exemple, supposons que jenkinsPipeline
utilise projectA
et inclut une tâche avec un point de terminaison nommé jenkinsEndpoint
.
Si vous partagez jenkinsPipeline
et que vous souhaitez l'exécuter dans le contexte de projectB
, un jenkinsEndpoint
doit se trouver sur projectB
. S'il n'y a pas de jenkinsEndpoint
, créez le point de terminaison sur projectB
avant d'exécuter le pipeline partagé.
La procédure suivante montre comment dupliquer un point de terminaison sur un autre projet. Vous suivez les mêmes étapes pour une variable.
- Cliquez sur Points de terminaison. Sur le point de terminaison que vous souhaitez dupliquer, par exemple
jenkinsEndpoint
, cliquez sur . - Cliquez sur le bouton Importer et sélectionnez le fichier YAML pour
jenkinsEndpoint
. - Modifiez le fichier pour changer le projet, tel que
projectB
dans l'exemple de code YAML suivant.--- project: projectB kind: ENDPOINT name: jenkinsEndpoint ...
- Cliquez sur Importer.
Pour exécuter jenkinsPipeline
sur projectB
, cliquez sur Exécuter sur la fiche du pipeline et sélectionnez projectB
comme projet.
projectB
, vous devez disposer du rôle
Code Stream d'administrateur, de développeur ou d'exécuteur. Si vous êtes un observateur ou un utilisateur de
Code Stream, vous ne pouvez pas exécuter le pipeline, sauf si un administrateur de
Code Stream fait de vous un administrateur de projet ou un membre du projet dans
projectB
. Pour plus d'informations sur les rôles dans
Code Stream, reportez-vous à la section
Gestion de l'accès et des approbations utilisateur dans Code Stream.
Ajout d'un pipeline partagé à un autre pipeline
L'utilisation de pipelines partagés en tant que tâches imbriqués dans un autre pipeline vous permet d'étendre la fonctionnalité de pipeline au-delà des pipelines inclus dans un projet. Les pipelines partagés peuvent se trouver sur des projets différents les uns des autres et différents du pipeline dans lequel ils sont inclus en tant que tâches imbriquées.
L'exemple suivant montre un pipeline nommé master-shared-pipeline-demo
avec deux tâches de pipeline imbriquées.
Pour spécifier le pipeline pour Task0
, effectuez la sélection dans une liste de pipelines partagés. Chaque nom de pipeline inclut le nom du projet. Si plusieurs pipelines partagés portent le même nom, vous pouvez utiliser le nom du projet pour sélectionner celui que vous souhaitez.
Suppression ou arrêt du partage d'un pipeline
Si vous ajoutez un pipeline partagé en tant que tâche imbriquée, il est référencé par le pipeline dans lequel il est imbriqué. Si vous souhaitez supprimer ou arrêter le partage du pipeline, vous devez le supprimer de tout pipeline qui y fait référence.
Par exemple, si master-shared-pipeline-demo
inclut Shared-Pipeline
en tant que tâche imbriquée, Shared-Pipeline
est référencé. Vous ne pouvez pas supprimer ou arrêter le partage de Shared-Pipeline
tant que vous ne l'avez pas supprimer de master-shared-pipeline-demo
.
La procédure suivante montre comment vérifier les références d'un pipeline et le supprimer du pipeline qui y fait référence avant de le supprimer ou d'arrêter de le partager.
- Vérifiez les références et mettez à jour les références de pipeline, le cas échéant.
- Cliquez sur Pipelines. Sur le pipeline partagé que vous souhaitez vérifier, cliquez sur .
- Ouvrez les pipelines qui référencent le pipeline partagé, supprimez la tâche imbriquée et enregistrez le pipeline.
- Supprimez ou arrêtez le partage d'un pipeline.
- Sur le pipeline que vous souhaitez supprimer, cliquez sur .
- Sur le pipeline que vous souhaitez arrêter de partager, cliquez sur .