Quando si configura la pipeline, si aggiungono tipi di attività specifici che vengono eseguiti per le azioni necessarie. Ogni tipo di attività si integra con un'altra applicazione e abilita la pipeline quando crea, testa e consegna le applicazioni.

Per eseguire la pipeline, quando è necessario estrarre gli elementi da un repository per la distribuzione, eseguire uno script remoto o richiedere l'approvazione per un'operazione utente da un membro del team, Code Stream offre il tipo di attività richiesta.

Code Stream supporta l'annullamento dell'esecuzione di una pipeline su vari tipi di attività. Quando si fa clic su Annulla durante l'esecuzione di una pipeline, l'attività, la fase o l'intera pipeline passa allo stato di annullamento e annulla l'esecuzione della pipeline.

Code Stream consente di annullare l'esecuzione della pipeline in un'attività, in staging o nell'intera pipeline quando si utilizzano queste attività:
  • Jenkins
  • SSH
  • PowerShell
  • Operazione utente
  • Pipeline
  • Modello cloud
  • vRO
  • Polling

Code Stream non propaga il comportamento di annullamento ai sistemi di terze parti per queste attività: CI, Integrazione personalizzata o Kubernetes. Code Stream contrassegna l'attività come annullata e interrompe immediatamente il recupero dello stato senza attendere il completamento dell'attività. L'attività potrebbe essere completata o non riuscire nel sistema di terze parti, ma smette immediatamente di funzionare in Code Stream quando si fa clic su Annulla.

Prima di utilizzare un'attività nella pipeline, verificare che sia disponibile l'endpoint corrispondente.

Tabella 1. Ottenere un'approvazione o impostare un punto di decisione
Tipo di attività Funzioni Esempi e dettagli
Operazione utente

Un'attività Operazione utente abilita un'approvazione richiesta che controlla quando una pipeline viene eseguita e quando deve essere interrotta per l'approvazione.

Vedere Come eseguire una pipeline e visualizzare i risultati. e Come gestire accesso utente e approvazioni in Code Stream.

Condizione

Aggiunge un punto di decisione, che determina se la pipeline continua a essere eseguita o si interrompe, in base alle espressioni di condizione. Quando la condizione è true, la pipeline esegue le attività successive. Quando è false, la pipeline si interrompe.

Vedere Come utilizzare le associazioni di variabili in un'attività di condizione per eseguire o arrestare una pipeline in Code Stream.

Tabella 2. Automatizzare l'integrazione e la distribuzione continue
Tipo di attività Funzioni Esempi e dettagli
Modello cloud

Distribuisce un modello di cloud di automazione da GitHub, esegue il provisioning di un'applicazione e automatizza l'integrazione e la consegna continue (CICD) di tale modello di cloud per la distribuzione.

Vedere Come automatizzare il rilascio di un'applicazione da distribuire da un modello cloud YAML in Code Stream.
CI

L'attività CI consente l'integrazione continua del codice nella pipeline estraendo un'immagine della build di Docker da un endpoint del registro e distribuendo il codice in un cluster Kubernetes.

L'attività CI mostra 100 righe del registro come output e 500 righe quando si scaricano i registri.

Vedere Pianificazione di una creazione nativa di integrazione continua e consegna continua in Code Stream prima di utilizzare il modello di pipeline smart.

Personalizzato

L'attività personalizzata integra Code Stream con i propri strumenti di creazione, test e distribuzione.

Vedere Integrazione degli strumenti di creazione, test e distribuzione con Code Stream.

Kubernetes

Automatizza la distribuzione delle applicazioni software in cluster Kubernetes in AWS.

Vedere Come automatizzare il rilascio di un'applicazione in Code Stream in un cluster Kubernetes.

Pipeline

Nidifica una pipeline in una pipeline primaria. Quando una pipeline è nidificata, si comporta come un'attività nella pipeline primaria.

Nella scheda Attività della pipeline primaria, è possibile passare facilmente alla pipeline nidificata facendo clic sul relativo collegamento. La pipeline nidificata viene aperta in una nuova scheda del browser.

Per trovare le pipeline nidificate in Esecuzioni, immettere nested nell'area di ricerca.

Tabella 3. Integrare applicazioni di sviluppo, test e distribuzione
Tipo di attività... Che cosa fa... Esempi e dettagli...
Bamboo

Interagisce con un server di integrazione continua (CI) di Bamboo che crea, testa e integra in modo continuativo il software come preparazione alla distribuzione e attiva le build di codice quando gli sviluppatori confermano le modifiche. Espone le posizioni degli artefatti che la creazione di Bamboo produce in modo che l'attività possa generare parametri utilizzabili da altre attività per la creazione e la distribuzione.

Connettersi a un endpoint del server Bamboo e avviare un piano di creazione Bamboo dalla pipeline.

Jenkins

Attiva i processi Jenkins, che generano e testano il codice sorgente, esegue test case e può utilizzare script personalizzati.

Vedere Come integrare Code Stream con Jenkins.

TFS

Consente di connettere la pipeline a Team Foundation Server per gestire e richiamare i progetti di creazione, inclusi i processi configurati che creano e testano il codice.

Code Stream supporta Team Foundation Server 2013 e 2015.

vRO

Estende la funzionalità di Code Stream mediante l'esecuzione di workflow predefiniti o personalizzati in vRealize Orchestrator.

Vedere Come integrare Code Stream con vRealize Orchestrator.

Tabella 4. Integrare altre applicazioni tramite un'API
Tipo di attività... Che cosa fa... Esempi e dettagli...
REST

Integra Code Stream con altre applicazioni che utilizzano una REST API per consentire lo sviluppo e la consegna continui di applicazioni software che interagiscono tra loro.

Vedere Come utilizzare una REST API per integrare Code Stream con altre applicazioni.

Polling

Richiama una REST API e ne esegue il polling finché l'attività della pipeline non soddisfa i criteri di uscita e viene completata.

Un amministratore di Code Stream può impostare il conteggio di polling fino a un massimo di 10000. L'intervallo di polling deve essere maggiore o uguale a 60 secondi.

Quando si contrassegna la casella di controllo Continua in caso di errore, se il conteggio o l'intervallo superano questi valori, l'esecuzione dell'attività di polling continua.

Vedere Come utilizzare una REST API per integrare Code Stream con altre applicazioni.

Tabella 5. Eseguire script remoti e definiti dall'utente
Tipo di attività Funzioni Esempi e dettagli
PowerShell

Con l'attività PowerShell, Code Stream può eseguire comandi di script su un host remoto. Ad esempio, uno script può automatizzare le attività di test ed eseguire i tipi di comandi amministrativi.

Lo script può essere remoto o definito dall'utente. Può connettersi tramite HTTP o HTTPS e può utilizzare TLS.

Nell'host Windows deve essere configurato il servizio winrm, e in winrm devono essere configurati MaxShellsPerUser e MaxMemoryPerShellMB.

Per eseguire un'attività di PowerShell, è necessario disporre di una sessione attiva nell'host Windows remoto.

Lunghezza della riga di comando di PowerShell

Se si immette un comando PowerShell base64, tenere presente che è necessario calcolare la lunghezza complessiva del comando.

La pipeline di Code Stream codifica ed esegue il wrapping di un comando PowerShell base64 in un altro comando, incrementando la lunghezza complessiva del comando.

La lunghezza massima consentita per un comando di winrm PowerShell è 8192 byte. Il limite di lunghezza del comando è inferiore per l'attività PowerShell quando viene codificata e ne viene eseguito il wrapping. Di conseguenza, è necessario calcolare la lunghezza del comando prima di immettere il comando PowerShell.

Il limite di lunghezza del comando per l'attività PowerShell di Code Stream dipende dalla lunghezza codificata in base64 del comando originale. La lunghezza del comando viene calcolata come segue.

3 * (length of original command / 4)) - (numberOfPaddingCharacters) + 77 (Length of Write-output command)

La lunghezza del comando per Code Stream deve essere inferiore al limite massimo di 8192.

Quando si configurano MaxShellsPerUser e MaxMemoryPerShellMB:

  • Il valore accettabile per MaxShellsPerUser è 500 per 50 pipeline simultanee, con 5 attività PowerShell per ogni pipeline. Per impostare il valore, eseguire: winrm set winrm/config/winrs '@{MaxShellsPerUser="500"}'
  • Il valore della memoria accettabile per MaxMemoryPerShellMB è 2048. Per impostare il valore, eseguire: winrm set winrm/config/winrs '@{MaxMemoryPerShellMB="2048"}'

Lo script scrive l'output in un file di risposta, che può essere utilizzato da un'altra pipeline.

SSH

L'attività SSH consente all'attività di script della shell Bash di eseguire comandi di script su un host remoto. Ad esempio, uno script può automatizzare le attività di test ed eseguire i tipi di comandi amministrativi.

Lo script può essere remoto o definito dall'utente. Può connettersi tramite HTTP o HTTPS e richiede una chiave privata o una password.

Il servizio SSH deve essere configurato sull'host Linux e la configurazione SSHD di MaxSessions deve essere impostata su 50.

Lo script può essere remoto o definito dall'utente. Ad esempio, uno script può essere simile al seguente:

message="Hello World" echo $message

Lo script scrive l'output in un file di risposta, che può essere utilizzato da un'altra pipeline.