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.
Utilisation d'un pipeline partagé pour la restauration
Pour utiliser un pipeline partagé pour la restauration, sélectionnez-le dans une liste de pipelines lorsque vous configurez la restauration pour la tâche. Code Stream filtre la liste pour afficher uniquement les pipelines sur le même projet ou les pipelines partagés sur différents projets.
Utilisation d'un modèle de cloud VMware partagé dans un pipeline
Vous pouvez utiliser un modèle de cloud VMware partagé comme source de modèle de cloud pour une tâche dans un pipeline. L'utilisation de modèles de cloud partagés permet d'accéder à davantage de modèles de cloud que ceux inclus dans un projet.
Avant de définir la tâche dans Code Stream, vérifiez que le modèle de cloud est partagé dans Cloud Assembly et que vous connaissez le nom et la version. Lorsqu'un modèle de cloud est partagé, une icône en regard du nom du projet s'affiche dans la liste des modèles de cloud.
- Pour Type de tâche,sélectionnez Modèle de cloud VMware.
- Pour Action, sélectionnez Créer un déploiement ou Mettre à jour un déploiement.
- Si vous mettez à jour un déploiement, sélectionnez le nom du déploiement.
- Pour la source du modèle de cloud, sélectionnez Modèle de cloud VMware.
- Pour le nom du modèle de cloud, vous pouvez sélectionner dans la liste des modèles de cloud ou saisir un nom. Si le modèle de cloud n'est pas répertorié, c'est parce que le modèle de cloud se trouve dans un projet différent du pipeline et Code Stream répertorie uniquement les modèles de cloud qui se trouvent dans le même projet.
- Pour Version du modèle de cloud, entrez la version du modèle de cloud.
Dans l'exemple suivant, shared-bp
est le modèle de cloud VMware partagé que vous avez vérifié dans Cloud Assembly et que vous souhaitez utiliser, mais celui-ci n'est pas répertorié dans la sélection, vous devez donc saisir le nom.
Suppression ou arrêt du partage d'un pipeline
Si vous ajoutez un pipeline partagé en tant que tâche imbriquée ou de restauration, il est référencé par le pipeline dans lequel il est utilisé. 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
.
Sinon, si TestRollback
utilise Shared-Pipeline
pour restaurer une tâche, 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 retiré de la restauration sur la tâche dans TestRollback
.
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 .
- Notez les noms des Pipelines référencés.
- Ouvrez les pipelines qui référencent le pipeline partagé. Supprimez le pipeline partagé qui est utilisé comme tâche imbriqué ou pour restaurer une tâche, puis 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 .