Als Code Stream-beheerder kunt u pijplijnen delen zodat gebruikers in een organisatie deze in elk ander project kunnen uitvoeren of deze als geneste taken binnen een pijplijn in een ander project kunnen toevoegen.

Waarom is een gedeelde pijplijn nuttig?

Wanneer u een pijplijn deelt, elimineert u de noodzaak om dezelfde pijplijn te maken voor verschillende projecten in een organisatie. Als u een gedeelde pijplijn bijwerkt, beschikken alle pijplijngebruikers over dezelfde update.

Een gedeelde pijplijn kan ook worden gebruikt in Service Broker. Een Service Broker-beheerder kan uw gedeelde pijplijn als catalogusitem toevoegen zodat gebruikers deze voor meerdere projecten kunnen aanvragen en uitvoeren.

Alleen Code Stream-beheerders kunnen pijplijnen delen of het delen ervan stoppen.

Hoe deel ik een pijplijn

Als u een pijplijn wilt delen, klikt u op Pijplijn en selecteert u de pijplijn die u wilt delen.

  1. Klik op Acties > Delen tussen projecten
  2. Als de pijplijn is gedeactiveerd, klikt u op Acties > Inschakelen.
  3. (Optioneel) Als u uw gedeelde pijplijn beschikbaar wilt maken in Service Broker, klikt u op Acties > Vrijgeven.

    Nadat u de pijplijn heeft vrijgegeven, kan een Service Broker-beheerder deze toevoegen aan Service Broker. Zie Code Stream-pijplijnen toevoegen aan de Service Broker-catalogus.

Hoe voer ik een gedeelde pijplijn uit

Om een gedeelde pijplijn uit te voeren, selecteert u de pijplijn en selecteert u een project.

De pijplijn wordt uitgevoerd in de context van het project dat u selecteert en alleen het pijplijnmodel wordt gedeeld. Infrastructuur zoals eindpunten of variabelen die in de pijplijn worden gebruikt, wordt niet gedeeld. Als een gedeelde pijplijn die gebruikmaakt van eindpunten of variabelen, wordt uitgevoerd voor een ander project, moeten die eindpunten en variabelen beschikbaar zijn voor dat project.

Stel dat jenkinsPipeline projectA gebruikt en een taak bevat met een eindpunt met de naam jenkinsEndpoint.

Controleer voordat u een gedeelde pijplijn uitvoert of de pijplijn inhoud bevat die nodig is om de pijplijn in een ander project uit te voeren.

Als u jenkinsPipeline deelt en deze wilt uitvoeren in de context van projectB, moet er een jenkinsEndpoint op projectB bestaan. Als er geen jenkinsEndpoint is, maakt u het eindpunt op projectB voordat u de gedeelde pijplijn uitvoert.

De volgende procedure laat zien hoe u een eindpunt voor een ander project kunt dupliceren. U volgt vergelijkbare stappen voor een variabele.

  1. Klik op Eindpunten. Klik op het eindpunt dat u wilt dupliceren, bijvoorbeeld jenkinsEndpoint, op Acties > Exporteren.
  2. Klik op de knop Importeren en selecteer het YAML-bestand voor jenkinsEndpoint.
  3. Bewerk het bestand om het project te wijzigen, zoals projectB in de volgende YAML-voorbeeldcode.
    ---
    project: projectB
    kind: ENDPOINT
    name: jenkinsEndpoint
    ...
  4. Klik op Importeren.

Als u jenkinsPipeline op projectB wilt uitvoeren, klikt u op Uitvoeren op de pijplijnkaart en selecteert u projectB als project.

Opmerking: Als u de gedeelde pijplijn wilt uitvoeren op projectB, moet u de Code Stream-rol van beheerder, ontwikkelaar of uitvoerder hebben. Als u een Code Stream-lezer of -gebruiker bent, kunt u de pijplijn niet uitvoeren tenzij een Code Stream-beheerder u projectbeheerder of projectlid in projectB maakt. Zie Hoe beheer ik gebruikerstoegang en goedkeuringen in Code Stream? voor meer informatie over rollen in Code Stream.

Hoe voeg ik een gedeelde pijplijn toe aan een andere pijplijn?

Door gedeelde pijplijnen als geneste taken in een andere pijplijn te gebruiken, kunt u de pijplijnfunctionaliteit uitbreiden naast de pijplijnen die in één project zijn opgenomen. De gedeelde pijplijnen kunnen zich in verschillende projecten bevinden, los van elkaar en van de pijplijn waar ze zijn opgenomen als geneste taken.

In het volgende voorbeeld ziet u een pijplijn met de naam master-shared-pipeline-demo met twee geneste pijplijntaken.

Wanneer u een pijplijn met geneste gedeelde pijplijnen maakt, selecteert u de gedeelde pijplijn. Als er twee pijplijnen met dezelfde naam zijn, gebruikt u de projectnaam om de gewenste pijplijn te selecteren.

Als u de pijplijn voor Task0 wilt opgeven, selecteert u deze uit een lijst met gedeelde pijplijnen. Elke pijplijnnaam bevat de projectnaam. Als verschillende gedeelde pijplijnen dezelfde naam hebben, kunt u de projectnaam gebruiken om de gewenste pijplijn te selecteren.

Opmerking: Om een pijplijn uit te voeren die geneste pijplijnen bevat, moet de pijplijn toegang hebben tot eindpunten of variabelen die worden gebruikt in de geneste pijplijnen. Als deze geen toegang heeft, moet u de inhoud voor het project voor de pijplijn maken.

Hoe kan ik een pijplijn verwijderen of stoppen met het delen ervan

Als u een gedeelde pijplijn als geneste taak toevoegt, wordt naar die pijplijn verwezen door de pijplijn waarin deze is genest. Als u de pijplijn wilt verwijderen of wilt stoppen met het delen van de pijplijn, moet u deze verwijderen uit elke pijplijn die ernaar verwijst.

Als master-shared-pipeline-demo bijvoorbeeld Shared-Pipeline als geneste taak bevat, wordt er naar Shared-Pipeline verwezen. U kunt Shared-Pipeline pas verwijderen of stoppen met het delen ervan nadat u deze pijplijn uit master-shared-pipeline-demo heeft verwijderd.

De volgende procedure laat zien hoe u de verwijzingen van een pijplijn kunt controleren en de pijplijn kunt verwijderen uit de pijplijn waarnaar deze verwijst voordat u deze pijplijn verwijdert of stopt met het delen ervan.

  1. Controleer op verwijzingen en werk pijplijnverwijzingen bij als deze worden gevonden.
    1. Klik op Pijplijnen. Klik voor de gedeelde pijplijn die u wilt controleren op Acties > Verwijzingen weergeven.
    2. Open de pijplijnen die naar de gedeelde pijplijn verwijzen, verwijder de geneste taak en sla de pijplijn op.
  2. Verwijder een pijplijn of stop met het delen ervan.
    • Klik voor de pijplijn die u wilt verwijderen op Acties > Verwijderen.
    • Klik voor de pijplijn waarvan u het delen wilt stoppen, op Acties > Delen stoppen.