L'amministratore di Code Stream può condividere le pipeline in modo che gli utenti di un'organizzazione possano eseguirle in qualsiasi altro progetto o aggiungerle come attività nidificate nella pipeline di un altro progetto.

Perché una pipeline condivisa è utile

Quando si condivide una pipeline, non è più necessario creare la stessa pipeline per progetti diversi all'interno di un'organizzazione. E se si aggiorna una pipeline condivisa, tutti gli utenti della pipeline avranno lo stesso aggiornamento.

Una pipeline condivisa può essere utilizzata anche in Service Broker. Un amministratore di Service Broker può aggiungere la pipeline condivisa come elemento del catalogo affinché gli utenti possano richiederla ed eseguirla in più progetti.

Solo gli amministratori di Code Stream possono condividere o interrompere la condivisione di pipeline.

Come si condivide una pipeline

Per condividere una pipeline, fare clic su Pipeline e selezionare la pipeline che si desidera condividere.

  1. Fare clic su Azioni > Condividi tra progetti.
  2. Se la pipeline è disattivata, fare clic su Azioni > Abilita.
  3. (Facoltativo) Per rendere la pipeline condivisa disponibile in Service Broker, fare clic su Azioni > Rilascia.

    Dopo aver rilasciato la pipeline, un amministratore di Service Broker può aggiungerla a Service Broker. Vedere Aggiunta di pipeline di Code Stream al catalogo di Service Broker.

Come si esegue una pipeline condivisa

Per eseguire una pipeline condivisa, selezionare la pipeline e selezionare un progetto.

La pipeline viene eseguita nel contesto del progetto selezionato e solo il modello di pipeline viene condiviso. Qualsiasi infrastruttura, ad esempio endpoint o variabili utilizzati nella pipeline, non viene condivisa. Se una pipeline condivisa che utilizza endpoint o variabili viene eseguita in un progetto diverso, tali endpoint e variabili devono essere disponibili in tale progetto.

Ad esempio, si supponga che jenkinsPipeline utilizzi projectA e includa un'attività con un endpoint jenkinsEndpoint.

Prima di eseguire una pipeline condivisa, verificare se la pipeline include i contenuti necessari per eseguire la pipeline in un progetto diverso.

Se si condivide jenkinsPipeline e si desidera eseguirla nel contesto di projectB, deve essere presente un jenkinsEndpoint su projectB. In assenza di jenkinsEndpoint, creare l'endpoint in projectB prima di eseguire la pipeline condivisa.

La procedura seguente illustra come duplicare un endpoint in un altro progetto. I passaggi da eseguire per una variabile sono simili.

  1. Fare clic su Endpoint. Sull'endpoint che si desidera duplicare, ad esempio jenkinsEndpoint, fare clic su Azioni > Esporta.
  2. Fare clic sul pulsante Importa e selezionare il file YAML per jenkinsEndpoint.
  3. Modificare il file per modificare il progetto, ad esempio projectB nel seguente codice YAML di esempio.
    ---
    project: projectB
    kind: ENDPOINT
    name: jenkinsEndpoint
    ...
  4. Fare clic su Importa.

Per eseguire jenkinsPipeline in projectB, fare clic su Esegui nella scheda della pipeline e selezionare projectB come progetto.

Nota: Per eseguire la pipeline condivisa in projectB, è necessario disporre del ruolo di amministratore, sviluppatore o esecutore di Code Stream. Se si è visualizzatori o utenti di Code Stream, non è possibile eseguire la pipeline a meno che un amministratore di Code Stream non conceda il ruolo di amministratore del progetto o membro del progetto in projectB. Per ulteriori informazioni sui ruoli in Code Stream, vedere Come gestire accesso utente e approvazioni in Code Stream.

Come aggiungere una pipeline condivisa a un'altra pipeline

L'utilizzo di pipeline condivise come attività nidificate in un'altra pipeline consente di estendere la funzionalità della pipeline oltre le pipeline incluse in un progetto. Le pipeline condivise possono trovarsi in progetti diversi l'uno dall'altro e dalla pipeline in cui vengono incluse come attività nidificate.

L'esempio seguente mostra una pipeline denominata master-shared-pipeline-demo con due attività della pipeline nidificate.

Durata la creazione di una pipeline con pipeline condivise nidificate, selezionare la pipeline condivisa e, se sono presenti due pipeline con lo stesso nome, utilizzare il nome del progetto per selezionare quella desiderata.

Per specificare la pipeline Task0, selezionare da un elenco di pipeline condivise. Ogni nome di pipeline include il nome del progetto. Se più pipeline condivise hanno lo stesso nome, è possibile utilizzare il nome del progetto per selezionare quella desiderata.

Nota: Per eseguire una pipeline che includa pipeline nidificate, la pipeline deve poter accedere a tutti gli endpoint o le variabili utilizzati nelle pipeline nidificate. Se non può, è necessario creare il contenuto del progetto per la pipeline.

Come utilizzare una pipeline condivisa per il rollback

Per utilizzare una pipeline condivisa per il rollback, selezionarla in un elenco di pipeline quando si configura il rollback per l'attività. Code Stream filtra l'elenco per visualizzare solo le pipeline dello stesso progetto o le pipeline condivise in progetti diversi.

Durante l'aggiunta di una pipeline condivisa per il rollback, selezionare la pipeline condivisa e, se sono presenti due pipeline con lo stesso nome, utilizzare il nome del progetto per selezionare quella desiderata.

Come utilizzare un modello cloud VMware condiviso in una pipeline

È possibile utilizzare un modello cloud VMware condiviso come origine del modello cloud per un'attività nella pipeline. Quando si utilizzano modelli cloud condivisi, è possibile accedere a più modelli cloud di quelli inclusi in un progetto.

Prima di definire l'attività in Code Stream, verificare che il modello cloud sia condiviso in Cloud Assembly e assicurarsi di conoscerne il nome e la versione. Quando un modello cloud è condiviso, viene visualizzata un'icona accanto al nome del progetto nell'elenco dei modelli cloud.

Prima di aggiungere un modello cloud condiviso come origine nella pipeline, verificare che il modello cloud VMware sia condiviso in Cloud Assembly.

Per utilizzare un modello cloud VMware nella pipeline condivisa:
  • Per Tipo di attività, selezionare Modello cloud VMware.
  • Per Azione, selezionare Crea distribuzione o Aggiorna distribuzione.
  • Se si sta aggiornando una distribuzione, selezionare il nome della distribuzione.
  • Per Origine modello cloud, selezionare Modello cloud VMware.
  • È possibile specificare il nome del modello cloud scegliendolo nell'elenco dei modelli cloud o digitandolo. Se il modello cloud non è presente nell'elenco significa che si trova in un progetto diverso della pipeline e Code Stream elenca solo i modelli cloud presenti nello stesso progetto.
  • Per Versione modello cloud, digitare la versione del modello cloud.

Nell'esempio seguente, shared-bp è il modello cloud VMware condiviso verificato in Cloud Assembly. Si desidera utilizzarlo, ma non è elencato per la selezione, quindi si digita il nome del modello.

Quando si definisce un'attività con un modello cloud condiviso, verificare che il modello cloud sia condiviso in Cloud Assembly, quindi immettere il nome e la versione in Code Stream.
Nota: Se il modello cloud VMware specificato non è condiviso e si tenta di utilizzarlo in una pipeline in un progetto diverso, non sarà possibile eseguire la pipeline e verrà visualizzato un messaggio che indica che il modello cloud selezionato non è condiviso.

Come eliminare una pipeline o interromperne la condivisione

Se si aggiunge una pipeline condivisa come attività nidificata o per eseguire il rollback di un'attività, la pipeline in cui è nidificata fa riferimento a tale pipeline. Se si desidera eliminare la pipeline o interromperne la condivisione, è necessario rimuoverla da qualsiasi pipeline che fa riferimento a tale pipeline.

Ad esempio, se master-shared-pipeline-demo include Shared-Pipeline come attività nidificata, viene fatto riferimento a Shared-Pipeline. Non è possibile eliminare o interrompere la condivisione di Shared-Pipeline finché non viene rimossa da master-shared-pipeline-demo.

In alternativa, se TestRollback utilizza Shared-Pipeline per eseguire il rollback di un'attività, viene fatto riferimento a Shared-Pipeline. Non è possibile eliminare o interrompere la condivisione di Shared-Pipeline finché non viene rimossa dal rollback nell'attività in TestRollback.

La procedura seguente illustra come controllare i riferimenti di una pipeline e rimuoverla dalla pipeline che vi fa riferimento prima di eliminarla o interromperne la condivisione.

  1. Verificare se sono presenti riferimenti della pipeline e aggiornarli se li si trova.
    1. Fare clic su Pipeline. Nella pipeline condivisa che si desidera controllare, fare clic su Azioni > Visualizza riferimenti.
    2. Prendere nota dei nomi di qualsiasi Pipeline a cui viene fatto riferimento.Prima di rimuovere una pipeline condivisa, verificare se viene utilizzata come pipeline nidificata o per il rollback da altre pipeline.
    3. Aprire le pipeline che fanno riferimento alla pipeline condivisa. Rimuovere la pipeline condivisa utilizzata come attività nidificata o per eseguire il rollback di un'attività, quindi salvare la pipeline.
  2. Eliminare una pipeline o interromperne la condivisione.
    • Nella pipeline che si desidera eliminare, fare clic su Azioni > Elimina.
    • Nella pipeline di cui si desidera interrompere la condivisione, fare clic su Azioni > Interrompi condivisione.