

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à.

# Crea una ricetta di costruzione di conda per Blender
<a name="create-conda-recipe-blender"></a>

È possibile utilizzare diverse applicazioni per creare una ricetta di compilazione di conda. Blenderè gratuito da usare ed è semplice da impacchettare con conda. La Blender Foundation fornisce [archivi di applicazioni](https://download.blender.org/release/Blender4.2/) per più sistemi operativi. Abbiamo creato una ricetta di compilazione conda di esempio che utilizza i file Windows .zip e Linux .tar.xz. [In questa sezione, scopri come usare la ricetta di build conda 4.2. Blender](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/blender-4.2) 

Il file [deadline-cloud.yaml](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/blender-4.2) specifica le piattaforme conda e altri metadati per l'invio di pacchetti a Deadline Cloud. Questa ricetta include informazioni sull'archivio di origine locale per dimostrarne il funzionamento. La piattaforma conda linux-64 è impostata per incorporare un invio di job predefinito che corrisponda alla configurazione più comune. Il file deadline-cloud.yaml ha un aspetto simile al seguente: 

```
condaPlatforms:
  - platform: linux-64
    defaultSubmit: true
    sourceArchiveFilename: blender-4.2.1-linux-x64.tar.xz
    sourceDownloadInstructions: 'Run "curl -LO https://download.blender.org/release/Blender4.2/blender-4.2.1-linux-x64.tar.xz"'
  - platform: win-64
    defaultSubmit: false
    sourceArchiveFilename: blender-4.2.1-windows-x64.zip
    sourceDownloadInstructions: 'Run "curl -LO https://download.blender.org/release/Blender4.2/blender-4.2.1-windows-x64.zip"'
```

Esamina i file nella directory. `recipe` I metadati per la ricetta si trovano in [recipe/recipe.yaml](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/blender-4.2/recipe/recipe.yaml). Puoi anche leggere la documentazione di conda build [meta.yaml per saperne di più, ad esempio come il file sia un modello per generare YAML](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html). Il modello viene utilizzato per specificare il numero di versione solo una volta e per fornire valori diversi in base al sistema operativo. 

È possibile esaminare le opzioni di compilazione selezionate in `meta.yaml` per disattivare vari controlli di rilocazione binaria e collegamento di oggetti condivisi dinamici (DSO). Queste opzioni controllano il funzionamento del pacchetto quando viene installato in un ambiente virtuale conda con qualsiasi prefisso di directory. I valori predefiniti semplificano il pacchetto di ogni libreria di dipendenze in un pacchetto separato, ma quando si riconfeziona un'applicazione in formato binario, è necessario modificarli. 

Se l'applicazione che state impacchettando richiede librerie di dipendenze aggiuntive o state impacchettando i plugin per un'applicazione separatamente, potreste riscontrare errori DSO. Questi errori si verificano quando la dipendenza non si trova nel percorso di ricerca della libreria per l'eseguibile o la libreria che ne ha bisogno. Le applicazioni si basano sul fatto che le librerie si trovino in percorsi definiti a livello globale`/usr/lib`, come `/lib` o, se installate su un sistema. Tuttavia, poiché gli ambienti virtuali conda possono essere posizionati ovunque, non esiste un percorso assoluto da utilizzare. Conda utilizza le funzionalità RPATH relative, che entrambi Linux macOS supportano, per gestire questo problema. Per ulteriori informazioni, consulta la documentazione di conda build su [Making packages relocatable](https://docs.conda.io/projects/conda-build/en/latest/resources/make-relocatable.html).

Blendernon richiede alcuna regolazione RPATH, poiché gli archivi dell'applicazione sono stati creati pensando a questo. Per le applicazioni che lo richiedono, puoi utilizzare gli stessi strumenti di conda build: `patchelf` su Linux e `install_name_tool` su. macOS

Durante la compilazione del pacchetto, lo script [build.sh](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/blender-4.2/recipe/build.sh) o [build\$1win.sh](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/blender-4.2/recipe/build_win.sh) (chiamato da`bld.bat`) viene eseguito per installare i file in un ambiente preparato con le dipendenze del pacchetto. Questi script copiano i file di installazione, creano collegamenti simbolici e configurano `$PREFIX/bin` gli script di attivazione. AttivoWindows, non crea collegamenti simbolici ma aggiunge invece la directory Blender al PATH nello script di attivazione.

Utilizziamo `bash` invece di un `cmd.exe` file.bat per la Windows parte della ricetta di compilazione di conda, in quanto ciò fornisce una maggiore coerenza tra gli script di compilazione. Consulta i consigli della [guida per sviluppatori di Deadline Cloud sulla portabilità del](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/what-is-a-deadline-cloud-workload.html#workload-portability) carico di lavoro per suggerimenti sull'utilizzo di. `bash` Windows Se hai installato [git per Windows](https://gitforwindows.org/) clonare il repository [deadline-cloud-samples](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/)git, hai già accesso a. `bash` 

La documentazione delle [variabili di ambiente di compilazione di conda](https://docs.conda.io/projects/conda-build/en/latest/user-guide/environment-variables.html) elenca i valori disponibili per l'uso nello script di compilazione. Questi valori includono `$SRC_DIR` i dati di archivio di origine, `$PREFIX` la directory di installazione, l'accesso `$RECIPE_DIR` ad altri file dalla ricetta, il nome `$PKG_NAME` e `$PKG_VERSION` la versione del pacchetto e `$target_platform` la piattaforma conda di destinazione. 

## Invia il processo del pacchetto Blender 4.2
<a name="s3-channel-build-blender"></a>

È possibile creare il proprio pacchetto conda Blender 4.2 per eseguire il rendering dei lavori, scaricando l'Blenderarchivio e quindi inviando un lavoro alla coda di creazione dei pacchetti. La coda invia il lavoro alla flotta associata per creare il pacchetto e reindicizzare il canale conda.

[Queste istruzioni usano git da una shell compatibile con bash per ottenere un processo di compilazione del pacchetto OpenJD e alcune ricette conda dal repository di esempi di Deadline Cloud. GitHub](https://github.com/aws-deadline/deadline-cloud-samples) Devi disporre anche dei seguenti elementi:
+ Se si utilizzaWindows, una versione di bash, git BASH, viene installata quando si installa git.
+ È necessario che sia installata la [CLI di Deadline Cloud](https://github.com/aws-deadline/deadline-cloud).
+ Devi aver effettuato l'accesso al monitor [Deadline](https://docs.aws.amazon.com/deadline-cloud/latest/userguide/working-with-deadline-monitor.html) Cloud.

1. Apri la GUI di configurazione di Deadline Cloud utilizzando il seguente comando e imposta la farm e la coda predefinite nella coda di creazione dei pacchetti.

   ```
   deadline config gui
   ```

1. Usa il seguente comando per clonare l'archivio di esempi di Deadline Cloud. GitHUb

   ```
   git clone https://github.com/aws-deadline/deadline-cloud-samples.git
   ```

1. Passa alla `conda_recipes` directory nella directory. `deadline-cloud-samples`

   ```
   cd deadline-cloud-samples/conda_recipes
   ```

1. Esegui lo script chiamato`submit-package-job`. Lo script fornisce istruzioni per Blender il download la prima volta che si esegue lo script.

   ```
   ./submit-package-job blender-4.2/
   ```

1. Segui le istruzioni per il downloadBlender. Quando hai l'archivio, esegui nuovamente `submit-package-job` lo script.

   ```
   ./submit-package-job blender-4.2/
   ```

Dopo aver inviato il lavoro, utilizza il monitor Deadline Cloud per visualizzare l'avanzamento e lo stato del lavoro mentre viene eseguito.

La parte inferiore sinistra del monitor mostra le due fasi del lavoro, la creazione del pacchetto e la reindicizzazione. La parte inferiore destra mostra i singoli passaggi per ogni attività. In questo esempio, c'è un passaggio per ogni attività.

![\[Il monitor Deadline Cloud mostra l'avanzamento e lo stato di un lavoro durante la creazione del Blender pacchetto.\]](http://docs.aws.amazon.com/it_it/deadline-cloud/latest/developerguide/images/Conda-Figure3.png)


Nella parte inferiore sinistra del monitor ci sono le due fasi del lavoro, la creazione del pacchetto e la reindicizzazione del canale conda. In basso a destra ci sono le singole attività per ogni fase. In questo esempio esiste una sola attività per ogni fase.

Quando si fa clic con il pulsante destro del mouse sull'attività per la fase di creazione del pacchetto e si sceglie **Visualizza registri**, il monitor mostra un elenco di azioni della sessione che mostrano come l'attività è pianificata sul lavoratore. Le azioni sono:
+ **Sincronizza allegati**: questa azione copia gli allegati del lavoro di input o installa un file system virtuale, a seconda dell'impostazione utilizzata per il file system degli allegati del lavoro.
+ **Avvia Conda**: questa azione proviene dall'ambiente di coda aggiunto di default quando hai creato la coda. Il lavoro non specifica alcun pacchetto conda, quindi termina rapidamente e non crea un ambiente virtuale conda.
+ **Launch CondaBuild Env**: questa azione crea un ambiente virtuale conda personalizzato che include il software necessario per creare un pacchetto conda e reindicizzare un canale. [Si installa dal canale conda-forge.](https://conda-forge.org/)
+ **Task run**: questa azione crea il Blender pacchetto e carica i risultati su Amazon S3.

Man mano che le azioni vengono eseguite, inviano i log in un formato strutturato ad Amazon CloudWatch. Quando un processo è completo, seleziona **Visualizza i registri di tutte le attività per** visualizzare altri registri sulla configurazione e la rimozione dell'ambiente in cui viene eseguito il lavoro.

# Testa il tuo pacchetto con un render job 4.2 Blender
<a name="s3-channel-submit-job"></a>

Dopo aver creato il pacchetto Blender 4.2 e aver configurato la coda di produzione per utilizzare il canale conda S3, puoi inviare lavori da renderizzare con il pacchetto. Se non avete una Blender scena, scaricate la scena Blender 3.5 - Cozy Kitchen dalla pagina dei file [Blenderdimostrativi](https://www.blender.org/download/demo-files).

L'GitHubarchivio di esempi di Deadline Cloud che hai scaricato in precedenza contiene un processo di esempio per il rendering di una Blender scena utilizzando i seguenti comandi:

```
deadline bundle submit blender_render \
     -p CondaPackages=blender=4.2 \
     -p BlenderSceneFile=/path/to/downloaded/blender-3.5-splash.blend \
     -p Frames=1
```

Puoi utilizzare il monitor Deadline Cloud per monitorare lo stato di avanzamento del tuo lavoro:

1. Nel monitor, seleziona l'attività per il lavoro che hai inviato, quindi seleziona l'opzione per visualizzare il registro.

1. Sul lato destro della visualizzazione del registro, seleziona l'azione **Avvia sessione Conda**.

Puoi vedere che l'azione ha cercato Blender 4.2 nei due canali conda configurati per l'ambiente di coda e che ha trovato il pacchetto nel canale S3.