

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Controllo delle versioni del flusso di lavoro in HealthOmics
<a name="workflow-versions"></a>

Se devi apportare modifiche a un flusso di lavoro, puoi creare un nuovo flusso di lavoro o una nuova versione del flusso di lavoro. Le versioni sono immutabili, ad eccezione delle modifiche di configurazione consentite che non influiscono sulla logica di esecuzione.

Le versioni Workflow offrono i seguenti vantaggi:
+ Le versioni costituiscono un gruppo logico di flussi di lavoro correlati. È possibile aggiungere un nome definito dall'utente a ciascuna versione del flusso di lavoro per gestirla più facilmente (soprattutto per un flusso di lavoro con un numero elevato di versioni). 
+ È possibile eseguire più versioni di un flusso di lavoro contemporaneamente.
+ Tutte le versioni di un flusso di lavoro condividono lo stesso ID del flusso di lavoro e lo stesso ARN di base, il che può semplificare la gestione della pipeline dopo la modifica di un flusso di lavoro.
+ Le versioni del flusso di lavoro forniscono lo stesso livello di provenienza dei dati dei flussi di lavoro. Le versioni sono immutabili e HealthOmics creano un ARN univoco per ogni versione del flusso di lavoro. L'ARN della versione include l'ID del flusso di lavoro e il nome della versione, come illustrato nell'esempio seguente:

  `arn:aws:omics:us-west-2:123456789012:workflow/1234567/version/myUniqueVersionName`
+ Se possiedi un flusso di lavoro condiviso, puoi aggiornare il flusso di lavoro senza interrompere gli abbonati (che possono continuare a utilizzare la versione precedente). Gli abbonati possono accedere a tutte le versioni del flusso di lavoro. Se crei una nuova versione, non è necessario condividere nuovamente il flusso di lavoro.
+ Quando si avvia l'esecuzione di un flusso di lavoro, è possibile specificare la versione del flusso di lavoro.
  + Gli utenti possono scegliere di mantenere una versione stabile per le esecuzioni di produzione e provare la versione più recente per un'esecuzione di prova.
  + Gli utenti possono tornare alla versione precedente di un flusso di lavoro se riscontrano problemi con la nuova versione.
  + Gli abbonati a un flusso di lavoro condiviso possono scegliere quale versione utilizzare.

**Topics**
+ [Versione predefinita del flusso di lavoro](workflows-default-version.md)
+ [Creare una versione del flusso di lavoro](workflows-version-create.md)
+ [Aggiornare una versione del flusso di lavoro](workflows-version-update.md)
+ [Eliminare una versione del flusso di lavoro](workflows-version-delete.md)

# Versione predefinita del flusso di lavoro
<a name="workflows-default-version"></a>

Dopo aver creato una o più versioni di un flusso di lavoro, HealthOmics considera il flusso di lavoro originale come versione predefinita. Quando si avvia un'esecuzione, è possibile facoltativamente specificare una versione del flusso di lavoro per l'esecuzione. Se non si specifica una versione all'avvio di un'esecuzione, HealthOmics utilizza la versione predefinita.

Nella console, HealthOmics indica il flusso di lavoro originale con un'etichetta di **versione predefinita**. La console utilizza questa etichetta solo dopo aver creato una o più versioni del flusso di lavoro. Il flusso di lavoro originale rimane sempre la versione predefinita. Non puoi assegnare nessun'altra versione come predefinita.

Non è possibile eliminare la versione predefinita di un flusso di lavoro se vi sono altre versioni associate al flusso di lavoro. Per ulteriori informazioni, consulta [Eliminare un flusso di lavoro privato](delete-private-workflow.md).

# Creare una versione del flusso di lavoro
<a name="workflows-version-create"></a>

Quando crei una nuova versione di un flusso di lavoro, devi specificare i valori di configurazione per la nuova versione. Non eredita alcun valore di configurazione dal flusso di lavoro.

Quando crei la versione, fornisci un nome di versione univoco per questo flusso di lavoro. Non è possibile modificare il nome dopo aver HealthOmics creato la versione. 

Il nome della versione deve iniziare con una lettera o un numero e può includere lettere maiuscole e minuscole, numeri, trattini, punti e caratteri di sottolineatura. La lunghezza massima è di 64 caratteri. Ad esempio, è possibile utilizzare uno schema di denominazione semplice, ad esempio version1, version2, version3. È inoltre possibile abbinare le versioni del flusso di lavoro alle proprie convenzioni interne di controllo delle versioni, ad esempio 2.7.0, 2.7.1, 2.7.2.

Facoltativamente, utilizzate il campo di descrizione della versione per aggiungere note su questa versione. Ad esempio: **Fix for syntax error in workflow definition**.

**Nota**  
Non includere informazioni di identificazione personale (PII) nel nome della versione. I nomi delle versioni vengono visualizzati nella versione del workflow ARN.

HealthOmics assegna un ARN univoco alla versione del flusso di lavoro. L'ARN è unico in base alla combinazione di ID del flusso di lavoro e nome della versione.

**avvertimento**  
Dopo aver eliminato una versione del flusso di lavoro, HealthOmics consente di riutilizzare il nome della versione per una versione diversa del flusso di lavoro. È consigliabile non riutilizzare i nomi delle versioni. Se riutilizzi un nome, il flusso di lavoro e ogni versione hanno un UUID univoco che puoi usare come provenienza. 

**Topics**
+ [Crea una versione del flusso di lavoro utilizzando la console](#workflow-versions-console-create)
+ [Creare una versione del flusso di lavoro utilizzando la CLI](#workflow-versions-api-create)
+ [Crea una versione del flusso di lavoro utilizzando un SDK](#workflow-versions-sdk)
+ [Verifica lo stato di una versione del flusso di lavoro](#using-get-workflow)

## Crea una versione del flusso di lavoro utilizzando la console
<a name="workflow-versions-console-create"></a>

**Passaggi per creare una versione del flusso di lavoro**

1. Apri la [HealthOmics console](https://console.aws.amazon.com/omics/).

1.  Se necessario, apri il riquadro di navigazione a sinistra (≡). Scegli **Flussi di lavoro privati**.

1. Nella pagina **Flussi di lavoro privati**, scegli il flusso di lavoro per la nuova versione.

1. Nella pagina dei **dettagli del flusso** di lavoro, scegli **Crea nuova versione**.

1. Nella pagina **Crea versione**, fornisci le seguenti informazioni:

   1. **Nome della versione**: inserisci un nome per la versione del flusso di lavoro che sia univoco in tutto il flusso di lavoro. 

   1. **Descrizione della versione** (opzionale): puoi utilizzare il campo della descrizione per aggiungere note su questa versione.

1. Nel pannello **di definizione del flusso** di lavoro, fornite le seguenti informazioni:

   1. **Lingua del flusso** di lavoro (opzionale): seleziona la lingua delle specifiche per la versione del flusso di lavoro. Altrimenti, HealthOmics determina la lingua dalla definizione del flusso di lavoro.

   1. Per l'**origine delle definizioni di Workflow**, scegli di importare la cartella delle definizioni da un repository basato su Git, una posizione Amazon S3 o da un'unità locale.

      1. Per l'**importazione da** un servizio di repository:
**Nota**  
HealthOmics supporta repository pubblici e privati perGitHub,,, GitLabBitbucket,GitHub self-managed. GitLab self-managed

         1. Scegli una **connessione** per connettere AWS le tue risorse al repository esterno. Per creare una connessione, consulta[Connect con repository di codice esterni](setting-up-new.md#setting-up-omics-repository).
**Nota**  
I clienti della TLV regione devono creare una connessione nella regione IAD (us-east-1) per creare un flusso di lavoro. 

         1. In **Full repository ID, inserisci l'ID del repository** come nome utente/nome del repository. Verifica di avere accesso ai file in questo repository.

         1. In **Riferimento alla fonte** (opzionale), inserisci un riferimento alla fonte del repository (branch, tag o ID di commit). HealthOmics utilizza il ramo predefinito se non viene specificato alcun riferimento alla fonte.

         1. In **Escludi modelli** di file, inserisci i modelli di file per escludere cartelle, file o estensioni specifici. Questo aiuta a gestire le dimensioni dei dati durante l'importazione dei file del repository. Esistono un massimo di 50 pattern e i pattern devono seguire la sintassi del modello [glob](https://fossil-scm.org/home/doc/tip/www/globs.md). Ad esempio: 

            1. `tests/`

            1. `*.jpeg`

            1. `large_data.zip`

      1. Per **Seleziona la cartella di definizione** da S3:

         1. Inserisci la posizione Amazon S3 che contiene la cartella di definizione del flusso di lavoro compressa. Il bucket Amazon S3 deve trovarsi nella stessa regione del flusso di lavoro.

         1. Se il tuo account non possiede il bucket Amazon S3, inserisci l'ID dell'account del proprietario del bucket nell'ID dell' AWS account del proprietario del **bucket S3**. Queste informazioni sono necessarie per verificare la proprietà del HealthOmics bucket.

      1. Per **Seleziona la cartella di definizione da una fonte locale:**

         1. Immettete la posizione sull'unità locale della cartella di definizione del flusso di lavoro compressa.

   1. **Percorso principale del file di definizione del flusso** di lavoro (opzionale): immettete il percorso del file dalla cartella o dall'archivio di definizione del flusso di lavoro compresso al file. `main` Questo parametro non è richiesto se è presente un solo file nella cartella di definizione del flusso di lavoro o se il file principale è denominato «principale».

1. Nel pannello del **file README** (opzionale), selezionate l'**origine del file README** e fornite le seguenti informazioni:
   + Per **Importazione da un servizio di repository**, nel percorso del **file README, immettete il percorso** del file README all'interno del repository.
   + Per **Seleziona file da S3**, nel file **README in S3, inserisci l'URI Amazon S3 per il file** README.
   + Per **Seleziona file da una fonte locale**: in **README - opzionale**, **scegli Scegli file per selezionare il file** markdown (.md) da caricare.

1. Nel pannello di **configurazione dell'archiviazione di esecuzione predefinita**, fornisci il tipo e la capacità di archiviazione di esecuzione predefiniti per le esecuzioni che utilizzano questo flusso di lavoro:

   1. **Tipo di archiviazione di esecuzione**: scegli se utilizzare l'archiviazione statica o dinamica come impostazione predefinita per l'archiviazione di esecuzione temporanea. L'impostazione predefinita è l'archiviazione statica.

   1. **Capacità di archiviazione di esecuzione** (opzionale): per il tipo di storage di esecuzione statico, è possibile inserire la quantità predefinita di storage di esecuzione richiesta per questo flusso di lavoro. Il valore predefinito per questo parametro è 1200 GiB. È possibile sovrascrivere questi valori predefiniti quando si avvia un'esecuzione.

1. **Tag** (opzionale): puoi associare fino a 50 tag a questa versione del flusso di lavoro.

1. Scegli **Next (Successivo)**.

1. Nella pagina **Aggiungi parametri del flusso** di lavoro (opzionale), seleziona l'**origine dei parametri**:

   1. Per **Analizza dal file di definizione del flusso di lavoro**, HealthOmics analizzerà automaticamente i parametri del flusso di lavoro dal file di definizione del flusso di lavoro.

   1. Per **Fornire un modello di parametro dal repository Git**, usa il percorso del file del modello di parametro dal tuo repository.

   1. Per **Seleziona il file JSON dalla fonte locale**, carica un JSON file da una fonte locale che specifichi i parametri.

   1. In **Inserisci manualmente i parametri del flusso di lavoro**, inserisci manualmente i nomi e le descrizioni dei parametri.

1. Nel pannello di **anteprima dei parametri**, è possibile rivedere o modificare i parametri per questa versione del flusso di lavoro. Se ripristinate il JSON file, perderete tutte le modifiche locali apportate.

1. Nella pagina di **rimappatura dell'URI del contenitore**, nel pannello **Regole di mappatura, puoi definire le regole** di mappatura URI per il tuo flusso di lavoro.

   Per **Sorgente del file di mappatura**, selezionate una delle seguenti opzioni:
   + **Nessuna**: non è richiesta alcuna regola di mappatura.
   + **Seleziona il file JSON da S3**: specifica la posizione S3 per il file di mappatura. 
   + **Seleziona il file JSON da una fonte locale**: specifica la posizione del file di mappatura sul tuo dispositivo locale.
   + **Inserisci manualmente le mappature: inserisci le mappature** **del registro e le mappature delle immagini nel pannello Mappature.**

1.  La console **visualizza** il pannello Mappature. Se avete scelto un file sorgente di mappatura, la console visualizza i valori del file.

   1. Nelle **mappature del registro**, è possibile modificare le mappature o aggiungere mappature (massimo 20 mappature del registro).

      Ogni mappatura del registro contiene i seguenti campi:
      + **URL del registro upstream**: l'URI del registro upstream.
      + Prefisso del **repository ECR: il prefisso** del repository da utilizzare nell'archivio privato Amazon ECR.
      + (Facoltativo) Prefisso del repository **upstream: il prefisso del repository** nel registro upstream.
      + (Facoltativo) ID account **ECR: ID account** dell'account proprietario dell'immagine del contenitore upstream.

   1. Nelle **mappature delle immagini**, è possibile modificare le mappature delle immagini o aggiungere mappature (massimo 100 mappature di immagini).

      Ogni mappatura di immagini contiene i seguenti campi:
      + **Immagine di origine**: specifica l'URI dell'immagine di origine nel registro upstream.
      + **Immagine di destinazione**: specifica l'URI dell'immagine corrispondente nel registro privato di Amazon ECR.

1. Scegli **Next (Successivo)**.

1. Controlla la configurazione della versione, quindi scegli **Crea** versione.

Una volta creata la versione, la console torna alla pagina dei dettagli del flusso di lavoro e visualizza la nuova versione nella tabella **Flussi di lavoro e versioni**.

## Creare una versione del flusso di lavoro utilizzando la CLI
<a name="workflow-versions-api-create"></a>

È possibile creare una versione del flusso di lavoro utilizzando l'operazione `CreateWorkflowVersion` API. Per i parametri opzionali, HealthOmics utilizza le seguenti impostazioni predefinite:


| Parametro | Default | 
| --- | --- | 
| Motore | Determinato dalla definizione del flusso di lavoro | 
| Storage Type (Tipo di storage) | STATIC | 
| Capacità di archiviazione (per l'archiviazione statica) | 1200 GiB | 
| Principale  | Determinato in base al contenuto della cartella di definizione del flusso di lavoro. Per informazioni dettagliate, vedi [HealthOmics requisiti di definizione del flusso di lavoro](workflow-defn-requirements.md). | 
| Acceleratori | nessuno | 
| Tag | nessuno | 

L'esempio CLI seguente crea una versione del flusso di lavoro con archiviazione statica come archiviazione di esecuzione predefinita:

```
aws omics create-workflow-version \
--workflow-id 1234567  \
--version-name "my_version" \
--engine WDL \
--definition-zip fileb://workflow-crambam.zip \
--description "my version description" \
--main file://workflow-params.json \
--parameter-template file://workflow-params.json \
--storage-type='STATIC'   \
--storage-capacity 1200   \
--tags example123=string  \
--accelerators GPU
```

Se il file di definizione del flusso di lavoro si trova in una cartella Amazon S3, inserisci la posizione utilizzando il `definition-uri` parametro anziché. `definition-zip` Per ulteriori informazioni, [CreateWorkflowVersion](https://docs.aws.amazon.com/omics/latest/api/API_CreateWorkflowVersion.html)consulta AWS HealthOmics API Reference.

Riceverai la seguente risposta alla `create-workflow-version` richiesta.

```
{
  "workflowId": "1234567",
  "versionName": "my_version",
  "arn": "arn:aws:omics:us-west-2:123456789012:workflow/1234567/version/3",
  "status": "ACTIVE",
  "tags": {
    "environment": "production",
    "owner": "team-alpha"
  },
  "uuid": "0ac9a563-355c-fc7a-1b47-a115167af8a2"
}
```

## Crea una versione del flusso di lavoro utilizzando un SDK
<a name="workflow-versions-sdk"></a>

Puoi creare un flusso di lavoro utilizzando uno dei SDKs.

L'esempio seguente mostra come creare una versione del flusso di lavoro utilizzando Python SDK.

```
import boto3

omics = boto3.client('omics')

with open('definition.zip', 'rb') as f:
   definition = f.read()

response = omics.create_workflow_version(
   workflowId='1234567',
   versionName='my_version',
   requestId='my_request_1'
   definitionZip=definition,
   parameterTemplate={ ... }
)
```

## Verifica lo stato di una versione del flusso di lavoro
<a name="using-get-workflow"></a>

Dopo aver creato la versione del flusso di lavoro, è possibile verificare lo stato e visualizzare altri dettagli del flusso di lavoro utilizzando **get-workflow-version**, come illustrato.

```
aws omics get-workflow-version 
--workflow-id 9876543
--version-name "my_version"
```

La risposta fornisce i dettagli del flusso di lavoro, incluso lo stato, come mostrato.

```
{
  "workflowId": "1234567",
  "versionName": "3.0.0",
  "arn": "arn:aws:omics:us-west-2:123456789012:workflow/1234567/version/3.0.0",
  "status": "ACTIVE",
  "description": ...
  "uuid": "0ac9a563-355c-fc7a-1b47-a115167af8a2"
}
```

Prima di poter iniziare un'esecuzione con questa versione del flusso di lavoro, lo stato deve passare a`ACTIVE`.

# Aggiornare una versione del flusso di lavoro
<a name="workflows-version-update"></a>

Puoi aggiornare la descrizione e la configurazione di archiviazione di esecuzione predefinita per una versione privata del flusso di lavoro. Per modificare qualsiasi altra informazione nella versione del flusso di lavoro, crea una nuova versione. 

**Topics**
+ [Aggiorna una versione del flusso di lavoro utilizzando la console](#workflow-versions-console-update)
+ [Aggiornare una versione del flusso di lavoro utilizzando la CLI](#workflow-versions-api-update)
+ [Aggiorna una versione del flusso di lavoro utilizzando un SDK](#workflow-versions-sdk-update)

## Aggiorna una versione del flusso di lavoro utilizzando la console
<a name="workflow-versions-console-update"></a>

**Per aggiornare una versione del flusso di lavoro**

1. Apri la [HealthOmics console](https://console.aws.amazon.com/omics/).

1.  Se necessario, apri il riquadro di navigazione a sinistra (≡). Scegli **Flussi di lavoro privati**.

1. Nella pagina **Flussi di lavoro privati**, scegli il flusso di lavoro.

1. Nella pagina **Flusso di lavoro**, scegli la versione del flusso di lavoro da aggiornare e scegli **Modifica, selezionato** dall'elenco **Azioni**. 
   + Se scegli la versione predefinita, la console apre la pagina **Modifica flusso di lavoro**. Per ulteriori informazioni, consulta [Aggiornare un flusso di lavoro privato](update-private-workflow.md).
   + Se si sceglie una versione definita dall'utente, la console apre la pagina **Modifica versione**. 

1. Nella pagina **Modifica versione**, fornisci le seguenti informazioni
   + **Descrizione della versione** (opzionale): una descrizione di questa versione.

1. Nel pannello **Default Run Storage Configuration**, fornite i seguenti valori predefiniti per le esecuzioni che utilizzano questa versione del flusso di lavoro. È possibile sovrascrivere i valori predefiniti quando si avvia un'esecuzione:
   + Per il **tipo di archiviazione Run**, seleziona **Statico** o **Dinamico**.
   + Per l'archiviazione statica in esecuzione, seleziona la quantità predefinita di **capacità di archiviazione Run** per le esecuzioni che utilizzano questa versione del flusso di lavoro. Il valore predefinito per questo parametro è 1200 GiB.

1. Scegli **Save changes** (Salva modifiche).

La console torna alla pagina dei dettagli del flusso di lavoro e visualizza un banner di pagina con la versione aggiornata del flusso di lavoro.

## Aggiornare una versione del flusso di lavoro utilizzando la CLI
<a name="workflow-versions-api-update"></a>

È possibile aggiornare i parametri per una versione del flusso di lavoro utilizzando il seguente comando CLI. La combinazione di ID del workflow e nome della versione identifica in modo univoco la versione. 

```
aws omics update-workflow-version
--workflow-id 1234567
--version-name "my_version"
--storage-type 'STATIC' 
--storage-capacity 2400
--description "version description"
```

Non riceverai alcuna risposta alla `update-workflow-version` richiesta. 

## Aggiorna una versione del flusso di lavoro utilizzando un SDK
<a name="workflow-versions-sdk-update"></a>

Puoi aggiornare una versione del flusso di lavoro utilizzando uno dei SDKs. Il seguente esempio di Python SDK mostra come aggiornare il tipo di archiviazione e la descrizione per una versione del flusso di lavoro.

```
import boto3

omics = boto3.client('omics')

response = omics.update_workflow_version(
   workflowID=1234567,
   versionName='3.0.0',
   storageType='DYNAMIC',
   description='new version description'
)
```

# Eliminare una versione del flusso di lavoro
<a name="workflows-version-delete"></a>

È possibile eliminare una versione del flusso di lavoro definita dall'utente utilizzando la console, la CLI o uno dei. SDKs L'eliminazione di una versione del flusso di lavoro non influisce sulle esecuzioni in corso che utilizzano la versione del flusso di lavoro.

Non è possibile eliminare il. [Versione predefinita del flusso di lavoro](workflows-default-version.md) Elimini tutte le versioni definite dall'utente, quindi elimini il flusso di lavoro.

**Topics**
+ [Eliminare una versione del flusso di lavoro utilizzando la console](#workflow-versions-console-delete)
+ [Eliminare una versione del flusso di lavoro utilizzando la CLI](#workflow-versions-api-delete)
+ [Eliminare una versione del flusso di lavoro utilizzando un SDK](#workflow-versions-sdk-delete)

## Eliminare una versione del flusso di lavoro utilizzando la console
<a name="workflow-versions-console-delete"></a>

**Per eliminare una versione del flusso di lavoro**

1. Apri la [HealthOmics console](https://console.aws.amazon.com/omics/).

1.  Se necessario, apri il riquadro di navigazione a sinistra (≡). Scegli **Flussi di lavoro privati**.

1. Nella pagina **Flussi di lavoro privati**, scegli il flusso di lavoro.

1. Nella pagina **Flusso di lavoro**, scegli la versione del flusso di lavoro da eliminare e scegli **Elimina selezionata** dall'elenco **Azioni**. 

1. Nella finestra **di dialogo Elimina la versione del flusso** di lavoro, inserisci «conferma» per confermare l'eliminazione.

1. Scegli **Elimina**.

La console visualizza un banner di pagina con la versione del flusso di lavoro eliminata.

## Eliminare una versione del flusso di lavoro utilizzando la CLI
<a name="workflow-versions-api-delete"></a>

È possibile eliminare una versione del flusso di lavoro definita dall'utente utilizzando il seguente comando CLI. La combinazione di ID del workflow e nome della versione identifica in modo univoco la versione. 

```
aws omics delete-workflow-version
--workflow-id 9876543
--version-name "my_version"
```

Non riceverai alcuna risposta alla `delete-workflow-version` richiesta. 

## Eliminare una versione del flusso di lavoro utilizzando un SDK
<a name="workflow-versions-sdk-delete"></a>

Puoi eliminare un flusso di lavoro utilizzando uno dei SDKs.

L'esempio seguente mostra come eliminare un flusso di lavoro utilizzando Python SDK.

```
import boto3

omics = boto3.client('omics')

response = omics.delete_workflow_version(
   workflowID=1234567,
   versionName='3.0.0'
)
```