

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Cree un canal conda con S3
<a name="configure-jobs-s3-channel"></a>

Si sus trabajos necesitan ejecutar aplicaciones que no están disponibles en los [https://conda-forge.org/](https://conda-forge.org/)canales [https://docs.aws.amazon.com/deadline-cloud/latest/userguide/create-queue-environment.html#conda-queue-environment](https://docs.aws.amazon.com/deadline-cloud/latest/userguide/create-queue-environment.html#conda-queue-environment)o, puede alojar un canal conda personalizado para que sirva sus propios paquetes. Al crear una cola en la consola de AWS Deadline Cloud (Deadline Cloud), la consola añade un entorno de colas condas de forma predeterminada. Para que sus paquetes estén disponibles para los trabajos, añada el canal personalizado al entorno de colas.

Un canal conda es contenido alojado estático que se puede alojar [de diversas formas, por ejemplo, en un sistema de](https://rattler-build.prefix.dev/latest/publish/) archivos o en un bucket de Amazon Simple Storage Service (Amazon S3). Si tu granja de Deadline Cloud usa un sistema de archivos compartido para los activos, puedes usar cualquier ruta del mismo como nombre de canal. Puede alojar el canal en un bucket de Amazon S3 para un acceso más amplio mediante permisos AWS Identity and Access Management (IAM).

Puede [crear y probar paquetes de forma local](build-test-packages-locally.md) y, a continuación, [publicarlos en un canal](publish-packages-s3-channel.md). Crear paquetes de forma local es una forma sencilla de empezar a iterar recetas de creación de paquetes sin necesidad de configurar la infraestructura. También puedes usar una [cola de creación de paquetes](automate-package-builds.md) de Deadline Cloud para crear paquetes y publicarlos en un canal. Una cola de creación de paquetes simplifica el mantenimiento de los paquetes para varios sistemas operativos y configuraciones de aceleradores. Puede actualizar las versiones y enviar conjuntos completos de compilaciones de paquetes desde cualquier lugar.

Puedes configurar los canales para tu estudio y tu granja de Deadline Cloud de varias maneras. Puede tener un canal Amazon S3 y configurar todas las estaciones de trabajo y los hosts de la granja para que lo utilicen. También puede tener más de un canal y configurar la duplicación con AWS DataSync (). DataSync Por ejemplo, la cola de creación de paquetes de Deadline Cloud puede publicarse en un canal de Amazon S3 que se refleje localmente para estaciones de trabajo y hosts de granjas locales.

**Topics**
+ [Cree y pruebe paquetes localmente](build-test-packages-locally.md)
+ [Publica paquetes en un canal conda de Amazon S3](publish-packages-s3-channel.md)
+ [Configure los permisos de la cola de producción para paquetes conda personalizados](#s3-channel-configure-permissions)
+ [Añada un canal conda a un entorno de colas](#s3-channel-add-channel)
+ [Cree un paquete conda para una aplicación o un complemento](conda-package.md)
+ [Cree una receta de construcción de condas para Blender](create-conda-recipe-blender.md)
+ [Cree una receta de construcción de conda para Autodesk Maya](create-conda-recipe-maya.md)
+ [Cree una receta de compilación de conda para el complemento Autodesk Maya to Arnold (MtoA)](create-conda-recipe-mtoa-plugin.md)
+ [Automatice la creación de paquetes con Deadline Cloud](automate-package-builds.md)

# Cree y pruebe paquetes localmente
<a name="build-test-packages-locally"></a>

Antes de publicar paquetes en Amazon S3 o configurar la CI/CD automatización en su granja de Deadline Cloud, puede crear y probar paquetes conda en su estación de trabajo mediante un canal de sistema de archivos local. Este enfoque le permite iterar rápidamente las recetas de forma local y verificar los paquetes.

El `rattler-build publish` comando crea una receta, copia el paquete resultante en un canal e indexa el canal en un solo paso. Cuando se dirige a un directorio del sistema de archivos local, `rattler-build` crea e inicializa el canal automáticamente si el directorio no existe.

Las siguientes instrucciones utilizan la receta de ejemplo Blender 4.5 del repositorio de [muestras de Deadline Cloud en adelante](https://github.com/aws-deadline/deadline-cloud-samples). GitHub Puedes sustituirla por una receta diferente del repositorio de muestras o usar la tuya propia.

## Requisitos previos
<a name="build-test-locally-prereqs"></a>

Antes de empezar, instale las siguientes herramientas en su estación de trabajo:
+ **pixi**: un administrador de paquetes que se utiliza para instalar `rattler-build` y probar paquetes. [Instala pixi desde pixi.sh.](https://pixi.sh)
+ **rattler-build**: la herramienta de creación de paquetes utilizada por las recetas conda de Deadline Cloud. Después de instalar pixi, ejecuta el siguiente comando para instalarlo. `rattler-build`

  ```
  pixi global install rattler-build
  ```
+ **git**: necesario para clonar el repositorio de muestras. SíWindows, [git for Windows](https://gitforwindows.org/) también proporciona un `bash` intérprete de comandos, que requieren algunas de las recetas de Windows muestra.

## Crear y publicar un paquete en un canal local
<a name="build-test-locally-build"></a>

En este procedimiento, se clona el repositorio de muestras de Deadline Cloud y se utiliza `rattler-build publish` para crear y publicar el paquete en un canal del sistema de archivos local.

**Para crear y publicar un paquete en un canal local**

1. Clona el repositorio de muestras de Deadline Cloud.

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

1. Cambie al directorio de `conda_recipes`.

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

1. Ejecute el siguiente comando para crear la receta Blender 4.5 y publicar el paquete en un directorio de canales local.

   Active Linux y macOS ejecute el siguiente comando.

   ```
   rattler-build publish blender-4.5/recipe/recipe.yaml \
       --to file://$HOME/my-conda-channel
   ```

   En Windows (cmd), ejecute el siguiente comando.

   ```
   rattler-build publish blender-4.5/recipe/recipe.yaml ^
       --to file://%USERPROFILE%/my-conda-channel
   ```

   El `rattler-build publish` comando realiza las siguientes acciones:
   + Construye el paquete a partir de la receta.
   + Crea el directorio de canales si el directorio no existe.
   + Copia el archivo del paquete en el canal.
   + Indexa el canal para que los administradores de paquetes puedan encontrarlo.

   Si la receta de su paquete depende de los paquetes de un canal en particular, como [conda-forge](https://conda-forge.org/), añada `-c conda-forge` al comando.

Para reconstruir el paquete después de realizar cambios en la receta, agréguelo `--build-number=+1` para incrementar automáticamente el número de compilación.

```
rattler-build publish blender-4.5/recipe/recipe.yaml \
    --to file://$HOME/my-conda-channel \
    --build-number=+1
```

Para obtener más información al respecto`rattler-build publish`, consulte la documentación de publicación de [rattler-build](https://rattler-build.prefix.dev/latest/publish/).

## Depuración de compilaciones
<a name="build-test-locally-debug"></a>

Si una compilación falla, `rattler-build` conserva el directorio de compilación para que puedas investigarlo. Ejecuta el siguiente comando para abrir un shell interactivo en el entorno de compilación con todas las variables de entorno configuradas tal y como estaban durante la compilación.

```
rattler-build debug shell
```

Desde el shell de depuración, puedes modificar archivos, ejecutar comandos de compilación individuales y añadir dependencias para aislar el problema. Para obtener más información, consulta la sección [Depuración de compilaciones](https://rattler-build.prefix.dev/latest/debugging_builds/) en la documentación de rattler-build.

## Probando el paquete
<a name="build-test-locally-test"></a>

Después de crear y publicar el paquete, crea un proyecto pixi temporal. Utilice el proyecto para instalar el paquete desde el canal local y comprobar que funciona correctamente.

**Para probar el paquete**

1. Cree un directorio de prueba temporal e inicialice un proyecto pixi con el canal local.

   Active Linux y ejecute macOS los siguientes comandos.

   ```
   mkdir package-test-env
   cd package-test-env
   pixi init --channel file://$HOME/my-conda-channel
   ```

   En Windows (cmd), ejecute los siguientes comandos.

   ```
   mkdir package-test-env
   cd package-test-env
   pixi init --channel file://%USERPROFILE%/my-conda-channel
   ```

1. Añada el paquete al proyecto.

   ```
   pixi add blender=4.5
   ```

1. Compruebe que el paquete funciona correctamente.

   ```
   pixi run blender --version
   ```

Cuando esté satisfecho con el paquete, puede publicarlo en un canal conda de Amazon S3 para que los trabajadores de Deadline Cloud puedan instalarlo. Consulte [Publicar paquetes en un canal conda de S3](publish-packages-s3-channel.md).

## Limpieza
<a name="build-test-locally-cleanup"></a>

Después de la prueba, puede eliminar el proyecto de prueba y el canal local.

**Para limpiar los recursos de prueba**

1. Elimine el directorio del proyecto de prueba.

   Active Linux y macOS ejecute el siguiente comando.

   ```
   rm -rf package-test-env
   ```

   En Windows (cmd), ejecute el siguiente comando.

   ```
   rmdir /s /q package-test-env
   ```

1. Elimine el directorio de canales conda local.

   Active Linux y macOS ejecute el siguiente comando.

   ```
   rm -rf $HOME/my-conda-channel
   ```

   En Windows (cmd), ejecute el siguiente comando.

   ```
   rmdir /s /q %USERPROFILE%\my-conda-channel
   ```

1. (Opcional) Elimine el directorio `rattler-build` de salida que contiene el archivo del paquete creado.

   Active Linux y macOS ejecute el siguiente comando.

   ```
   rm -rf deadline-cloud-samples/conda_recipes/output
   ```

   En Windows (cmd), ejecute el siguiente comando.

   ```
   rmdir /s /q deadline-cloud-samples\conda_recipes\output
   ```

# Publica paquetes en un canal conda de Amazon S3
<a name="publish-packages-s3-channel"></a>

Puede publicar paquetes conda en un depósito de Amazon Simple Storage Service (Amazon S3) para AWS que los trabajadores de Deadline Cloud (Deadline Cloud) puedan instalarlos para ejecutar tareas. El `rattler-build publish` comando funciona con Amazon S3 de la misma forma que con un canal de sistema de archivos local. El comando puede crear una receta y publicar el resultado, o publicar un archivo de paquete que ya haya creado. En ambos casos, el comando carga el paquete en el depósito e indexa el canal en un solo paso.

El `rattler-build publish` comando se autentica AWS mediante la cadena de credenciales estándar, por lo que utiliza la AWS configuración como cualquier otra herramienta. AWS Para obtener más información sobre la configuración de las credenciales, consulte los [ajustes de configuración y del archivo de credenciales](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) en la Guía del usuario de *AWS Command Line Interface (AWS CLI).*

## Requisitos previos
<a name="publish-s3-prereqs"></a>

Antes de publicar paquetes en Amazon S3, complete los siguientes requisitos previos:
+ **pixi y rattler-build**[: instale pixi desde pixi.sh y, a continuación, instálelo.](https://pixi.sh) `rattler-build`

  ```
  pixi global install rattler-build
  ```
+ **git**: necesario para clonar el repositorio de muestras. SíWindows, [git for Windows](https://gitforwindows.org/) también proporciona un `bash` intérprete de comandos, que requieren algunas de las recetas de Windows muestra.
+ Depósito de **Amazon S3**: un depósito de Amazon S3 para usar como canal conda. Puedes usar el depósito de adjuntos de tareas de tu granja de Deadline Cloud o crear un depósito independiente.
+ **AWS credenciales**: configure las credenciales en su estación de trabajo mediante el `aws configure` comando o el `aws login` comando. Para obtener más información, consulte [Configuración de AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-quickstart.html) en la *Guía del usuario de AWS Command Line Interface *.
+ **Permisos de IAM**: (opcional) Para reducir el alcance de los permisos que tienen sus credenciales, puede utilizar una política AWS Identity and Access Management (de IAM) que solo conceda los siguientes permisos en el bucket de Amazon S3 y el prefijo de canal que utilice (por ejemplo,): `/Conda/*`
  + `s3:GetObject`
  + `s3:PutObject`
  + `s3:DeleteObject`
  + `s3:ListBucket`
  + `s3:GetBucketLocation`

## Publicar un paquete en un canal Amazon S3
<a name="publish-s3-procedure"></a>

Úselo `rattler-build publish` con un `s3://` destino para publicar un paquete en su canal conda de Amazon S3. Si el canal no existe en el bucket, lo `rattler-build` inicializa automáticamente. Antes de empezar, asegúrese de haber completado los [requisitos previos](#publish-s3-prereqs).

El siguiente ejemplo publica la receta de muestras Blender 4.5 del repositorio de [muestras de Deadline Cloud](https://github.com/aws-deadline/deadline-cloud-samples) enGitHub. Puedes sustituirla por una receta diferente del repositorio de muestras o usar la tuya propia.

**Para publicar un paquete en un canal Amazon S3**

1. Clona el repositorio de muestras de Deadline Cloud.

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

1. Cambie al directorio de `conda_recipes`.

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

1. Ejecute el comando siguiente. Reemplace *amzn-s3-demo-bucket* con el nombre del bucket.

   Active Linux y macOS ejecute el siguiente comando.

   ```
   rattler-build publish blender-4.5/recipe/recipe.yaml \
       --to s3://amzn-s3-demo-bucket/Conda/Default
   ```

   En Windows (cmd), ejecute el siguiente comando.

   ```
   rattler-build publish blender-4.5/recipe/recipe.yaml ^
       --to s3://amzn-s3-demo-bucket/Conda/Default
   ```

   El `/Conda/Default` prefijo organiza el canal dentro del depósito. Puedes usar un prefijo diferente, pero el prefijo debe ser coherente en todos los comandos y configuraciones de cola que hacen referencia al canal.

Para reconstruir y publicar un paquete actualizado, agréguelo `--build-number=+1` para incrementar automáticamente el número de compilación.

```
rattler-build publish blender-4.5/recipe/recipe.yaml \
    --to s3://amzn-s3-demo-bucket/Conda/Default \
    --build-number=+1
```

Si la receta de su paquete depende de paquetes de un canal en particular, como [conda-forge](https://conda-forge.org/), añada `-c conda-forge` al comando.

También puede publicar un archivo de paquete que ya haya creado, por ejemplo, un `.conda` archivo de una compilación local. Reemplace *amzn-s3-demo-bucket* con el nombre del bucket.

```
rattler-build publish output/linux-64/blender-4.5.0-hb0f4dca_0.conda \
    --to s3://amzn-s3-demo-bucket/Conda/Default
```

## Probando el paquete
<a name="publish-s3-test"></a>

Tras publicar el paquete, cree un proyecto pixi temporal para comprobar que el paquete funciona correctamente. El proyecto instala el paquete desde el canal Amazon S3.

**Para probar el paquete**

1. Cree un directorio de prueba temporal e inicialice un proyecto pixi con el canal Amazon S3. Reemplace *amzn-s3-demo-bucket* con el nombre del bucket.

   ```
   mkdir package-test-env
   cd package-test-env
   pixi init --channel s3://amzn-s3-demo-bucket/Conda/Default
   ```

1. Añada el paquete al proyecto.

   ```
   pixi add blender=4.5
   ```

1. Compruebe que el paquete funciona correctamente.

   ```
   pixi run blender --version
   ```

## Limpieza
<a name="publish-s3-cleanup"></a>

Tras la prueba, elimine el directorio del proyecto de prueba.

**Para limpiar los recursos de prueba**
+ Elimine el directorio del proyecto de prueba.

  Active Linux y macOS ejecute el siguiente comando.

  ```
  rm -rf package-test-env
  ```

  En Windows (cmd), ejecute el siguiente comando.

  ```
  rmdir /s /q package-test-env
  ```

## Depuración de compilaciones
<a name="publish-s3-debug"></a>

Si una compilación falla, `rattler-build` conserva el directorio de compilación para que puedas investigarlo. Ejecuta el siguiente comando para abrir un shell interactivo en el entorno de compilación con todas las variables de entorno configuradas tal y como estaban durante la compilación.

```
rattler-build debug shell
```

Desde el shell de depuración, puedes modificar archivos, ejecutar comandos de compilación individuales y añadir dependencias para aislar el problema. Para obtener más información, consulta la sección [Depuración de compilaciones](https://rattler-build.prefix.dev/latest/debugging_builds/) en la documentación de rattler-build.

## Creación de paquetes para otras plataformas
<a name="publish-s3-cross-platform"></a>

El `rattler-build publish` comando crea paquetes para el sistema operativo de la estación de trabajo en la que se ejecuta el comando. Si su flota de Deadline Cloud usa un sistema operativo diferente al de su estación de trabajo, o si su paquete tiene otros requisitos de host, tiene las siguientes opciones:
+ Se ejecuta `rattler-build publish` en un host que coincida con el sistema operativo de destino. Por ejemplo, utilice una instancia de Amazon Elastic Compute Cloud (Amazon EC2) que se Linux ejecute para crear paquetes para una flota. Linux
+ Usa una cola de creación de paquetes de Deadline Cloud para automatizar las compilaciones en la plataforma de destino. Consulte [Crear una cola de creación de paquetes](automate-package-builds.md#s3-channel-create-queue).
+ (Avanzado) Utilice la compilación cruzada para crear paquetes para una plataforma diferente a la de su estación de trabajo. Para obtener más información, consulte [Compilación cruzada](https://rattler-build.prefix.dev/latest/compilers/#cross-compilation) en la documentación de rattler-build.

## Siguientes pasos
<a name="publish-s3-next-steps"></a>

Después de publicar los paquetes en su canal conda de Amazon S3, configure sus colas de Deadline Cloud para usar el canal:
+ [Configure los permisos de las colas de producción para paquetes conda personalizados](configure-jobs-s3-channel.md#s3-channel-configure-permissions): conceda a sus colas de producción acceso de solo lectura al canal conda de Amazon S3.
+ [Añadir un canal conda a un entorno de cola: configure el entorno](configure-jobs-s3-channel.md#s3-channel-add-channel) de cola para instalar paquetes desde el canal conda de Amazon S3.

## Configure los permisos de la cola de producción para paquetes conda personalizados
<a name="s3-channel-configure-permissions"></a>

Su cola de producción necesita permisos de solo lectura para el `/Conda` prefijo del bucket S3 de la cola. Abre la página AWS Identity and Access Management (IAM) del rol asociado a la cola de producción y modifica la política de la siguiente manera:

1. Abra la consola de Deadline Cloud y vaya a la página de detalles de la cola de creación del paquete.

1. **Elige la función de servicio de colas y, a continuación, selecciona Editar cola.**

1. Ve a la sección **Función de servicio de colas** y, a continuación, selecciona **Ver esta función en la** consola de IAM.

1. En la lista de políticas de permisos, elija la que desee **AmazonDeadlineCloudQueuePolicy**para su cola.

1. En la pestaña **Permisos**, selecciona **Editar**.

1. Añada una nueva sección a la función de servicio de colas, como se muestra a continuación. Sustituya *amzn-s3-demo-bucket* y *111122223333* por su propio depósito y cuenta.

   ```
   {
      "Effect": "Allow",
      "Sid": "CustomCondaChannelReadOnly",
      "Action": [
       "s3:GetObject",
       "s3:ListBucket"
      ],
      "Resource": [
       "arn:aws:s3:::amzn-s3-demo-bucket",
       "arn:aws:s3:::amzn-s3-demo-bucket/Conda/*"
      ],
      "Condition": {
       "StringEquals": {
        "aws:ResourceAccount": "111122223333"
       }
      }
     },
   ```

## Añada un canal conda a un entorno de colas
<a name="s3-channel-add-channel"></a>

Para usar el canal conda S3, debes añadir la ubicación del `s3://amzn-s3-demo-bucket/Conda/Default` canal al `CondaChannels` parámetro de los trabajos que envíes a Deadline Cloud. Los remitentes proporcionados por Deadline Cloud proporcionan campos para especificar paquetes y canales conda personalizados.

Puede evitar modificar todos los trabajos editando el entorno de colas conda para su cola de producción. Use el procedimiento siguiente:

1. Abre la consola de Deadline Cloud y navega hasta la página de detalles de la cola de producción.

1. Selecciona la pestaña de entornos.

1. **Seleccione el entorno de colas de **Conda** y, a continuación, elija Editar.**

1. Elija el **editor JSON** y, a continuación, busque en el script la definición del parámetro. `CondaChannels`

1. Edite la línea `default: "deadline-cloud"` para que comience con el canal conda S3 recién creado:

   ```
   default: "s3://amzn-s3-demo-bucket/Conda/Default deadline-cloud"
   ```

Las flotas gestionadas por el servicio permiten una prioridad de canal flexible para conda de forma predeterminada. En el `blender=4.2` caso de una solicitud de trabajo en la que la versión Blender 4.2 esté tanto en el canal nuevo como en el `deadline-cloud` canal, el paquete se extraerá del canal que aparezca primero en la lista de canales. Si no se encuentra una versión de paquete específica en el primer canal, se comprobarán los canales subsiguientes para ver la versión del paquete.

Para las flotas gestionadas por el cliente, puede habilitar el uso de paquetes conda utilizando uno de los ejemplos del [entorno de colas de conda del repositorio de muestras](https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/queue_environments/README.md) de Deadline Cloud. GitHub

# Cree un paquete conda para una aplicación o un complemento
<a name="conda-package"></a>

Un paquete conda es un archivo comprimido de software escrito en cualquier idioma. Conda admite una variedad de combinaciones de sistemas operativos y arquitecturas, por lo que puede empaquetar aplicaciones completas como BlenderMaya, y Nuke junto con bibliotecas para Python y otros lenguajes. Para obtener más información sobre los paquetes de conda, consulte [Paquetes](https://docs.conda.io/projects/conda/en/latest/user-guide/concepts/packages.html) en la documentación de conda.

Para usar un paquete conda, debe instalarlo en un entorno virtual. Un entorno virtual conda tiene un *directorio de prefijos donde se instalan* los paquetes. La instalación de un paquete implica vincular o volver a vincular los archivos de forma rígida cuando se admite, por lo que la creación de varios entornos con los mismos paquetes no requiere una cantidad significativa de espacio adicional en el disco. Para usar un entorno virtual, debe activarlo para establecer variables de entorno. La activación ejecuta los scripts que proporcionan los paquetes, lo que da a cada paquete la oportunidad de modificar PATH u otras variables de entorno. Los paquetes de Conda suelen contener aplicaciones o bibliotecas, pero la activación flexible significa que también pueden apuntar a aplicaciones instaladas en un sistema de archivos compartido.

La creación de un paquete personalizado consta de tres etapas: una *receta* contiene las instrucciones de construcción, un *paquete* es el artefacto (`.conda`o `.tar.bz2` archivo) creado y un *canal* aloja los paquetes para la instalación. El `rattler-build publish` comando gestiona los tres pasos: puede crear una receta en un paquete y publicarla en un canal, o puede utilizar directamente un artefacto del paquete para publicarla.

La comunidad de [conda-forge](https://conda-forge.org/) mantiene recetas de paquetes para un amplio conjunto de software de código abierto y aloja los artefactos de paquetes en el canal. `conda-forge` Puede configurar su cola para incluirla `conda-forge` como fuente de paquetes y, a continuación, crear paquetes personalizados que dependan de los paquetes de conda-forge para ejecutarse. PuesLinux, conda-forge aloja una cadena completa de herramientas de compilación que incluye soporte para CUDA, con opciones consistentes de compilación y enlace seleccionadas. Puedes usar los paquetes de conda-forge como dependencias en tus propias recetas o instalarlos junto con tus paquetes personalizados en el mismo entorno.

Puede combinar una aplicación completa, incluidas las dependencias, en un paquete conda. Los paquetes que Deadline Cloud proporciona en el [canal Deadline-Cloud](https://docs.aws.amazon.com/deadline-cloud/latest/userguide/create-queue-environment.html#conda-queue-environment) para flotas gestionadas por servicios utilizan este enfoque de reempaquetado binario. Esto organiza los mismos archivos que una instalación para adaptarlos al entorno virtual de conda.

**nota**  
Las aplicaciones de gran tamaño pueden requerir decenas de GB de espacio libre en disco para el archivo fuente, los archivos extraídos y la generación de resultados. Asegúrese de utilizar un disco con suficiente espacio disponible para el resultado de la compilación del paquete.

## Package una aplicación
<a name="conda-package-application"></a>

Al volver a empaquetar una solicitud para conda, hay dos objetivos:
+ La mayoría de los archivos de la aplicación deben estar separados de la estructura principal del entorno virtual de conda. Luego, los entornos pueden mezclar la aplicación con paquetes de otras fuentes, como [conda-forge](https://conda-forge.org/).
+ Cuando se activa un entorno virtual conda, la aplicación debería estar disponible en la variable de entorno PATH.

**Para volver a empaquetar una aplicación para conda**

1. Escriba recetas de compilación de conda que instalen la aplicación en un subdirectorio como. `$CONDA_PREFIX/opt/<application-name>` Esto lo separa de los directorios de prefijos estándar como y. `bin` `lib`

1. Agregue enlaces simbólicos o ejecute scripts `$CONDA_PREFIX/bin` para ejecutar los binarios de la aplicación.

   Como alternativa, cree scripts activados.d que ejecutará el `conda activate` comando para añadir los directorios binarios de la aplicación a la PATH. Si no se admiten enlaces simbólicos en Windows todos los entornos en los que se puedan crear entornos, utilice en su lugar scripts de inicio de aplicaciones o activate.d.

1. Algunas aplicaciones dependen de bibliotecas que no están instaladas de forma predeterminada en las flotas gestionadas por el servicio de Deadline Cloud. Por ejemplo, el sistema de ventanas X11 no suele ser necesario para trabajos no interactivos, pero algunas aplicaciones aún requieren que se ejecute sin una interfaz gráfica. Debe proporcionar esas dependencias en el paquete que cree.

1. Si la aplicación admite complementos, proporcione una convención clara que los paquetes de complementos deben seguir para integrarse con la aplicación en un entorno virtual. Por ejemplo, la [receta de ejemplo de Maya 2026](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/maya-2026#instructions-for-maya-plugin-packages) documenta esta convención para Maya los complementos.

1. Asegúrese de cumplir con los acuerdos de derechos de autor y licencia de las aplicaciones que empaquete. Le recomendamos que utilice un bucket privado de Amazon S3 para su canal conda a fin de controlar la distribución y limitar el acceso de los paquetes a su granja.

Los ejemplos de recetas para los paquetes del `deadline-cloud` canal están disponibles en el repositorio de [muestras de Deadline Cloud](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes#readme) enGitHub.

## Package un plugin
<a name="conda-package-plugins"></a>

Los complementos de la aplicación se pueden empaquetar como sus propios paquetes conda. Al crear un paquete de complementos, siga estas pautas:
+ Incluye el paquete de la aplicación host como dependencia de compilación y ejecución en la receta de compilación`recipe.yaml`. Usa una restricción de versión para que la receta de compilación solo se instale con paquetes compatibles.
+ Siga las convenciones del paquete de la aplicación anfitriona para registrar el complemento.

## Paquetes de adaptadores
<a name="conda-package-adaptors"></a>

Algunas integraciones de aplicaciones de Deadline Cloud utilizan un *adaptador* que amplía la interfaz de la aplicación para simplificar la [redacción](building-jobs.md) de plantillas de trabajo. Un adaptador es una interfaz de línea de comandos que permite ejecutar un daemon en segundo plano, informar sobre el estado y aplicar un mapeo de rutas. Para obtener más información, consulte [Open Job Description Adaptor Runtime](https://github.com/OpenJobDescription/openjd-adaptor-runtime-for-python#readme) enGitHub. Por ejemplo, [deadline-cloud-for-maya](https://github.com/aws-deadline/deadline-cloud-for-maya/)on GitHub incluye una interfaz gráfica de usuario integrada para el envío de trabajos y un Maya adaptador que está disponible como `maya-openjd` paquete en las flotas gestionadas por servicios.

Los envíos de trabajos del remitente de Deadline Cloud GUIs incluyen un valor de `CondaPackages` parámetro que especifica los paquetes conda que se van a incluir en un entorno virtual para ejecutar el trabajo. El valor del `CondaPackages` parámetro Maya suele tener el mismo aspecto `maya=2025.* maya-openjd=0.15.* maya-mtoa` y puede contener entradas alternativas para los paquetes de complementos. Cuando el entorno de colas configura un entorno virtual conda para ejecutar el trabajo, resuelve estos nombres de paquetes y restricciones de versión para que sean compatibles y agrega todos los paquetes de dependencia que necesitan para ejecutarse. Cada paquete de adaptadores y complementos especifica con qué es compatible, incluidas las versionesMaya, las versiones de Python y otras dependencias.

[Para crear sus propios paquetes de adaptadores utilizando nuestros ejemplos, como la [receta maya-openjd](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/maya-openjd)GitHub, puede crear sobre los paquetes para Python y otras dependencias que proporciona conda-forge.](https://conda-forge.org/) Es posible que primero tengas que establecer la [fecha límite y las recetas para satisfacer las dependencias](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/deadline). [openjd-adaptor-runtime](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/openjd-adaptor-runtime)

# Cree una receta de construcción de condas para Blender
<a name="create-conda-recipe-blender"></a>

Puede usar diferentes aplicaciones para crear una receta de construcción de condas. Blenderes de uso gratuito y fácil de empaquetar con conda. La Blender Fundación proporciona [archivos de aplicaciones](https://download.blender.org/release/Blender4.2/) para múltiples sistemas operativos. Hemos creado un ejemplo de receta de compilación de conda que utiliza los archivos .zip de Windows y .tar.xz de Linux. [En esta sección, aprenda a usar la receta de compilación de conda 4.2. Blender](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/blender-4.2) 

El archivo [deadline-cloud.yaml](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/blender-4.2) especifica las plataformas conda y otros metadatos para enviar los paquetes de trabajo a Deadline Cloud. Esta receta incluye información de archivo de origen local para demostrar cómo funciona. La plataforma conda linux-64 está configurada para incluir un envío de trabajo predeterminado que coincida con la configuración más común. El campo deadline-cloud.yaml tiene un aspecto similar al siguiente: 

```
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"'
```

Revisa los archivos del directorio. `recipe` Los metadatos de la receta están en [recipe/recipe.yaml](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/blender-4.2/recipe/recipe.yaml). También puedes leer la documentación de conda build [meta.yaml](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html) para obtener más información, por ejemplo, si el archivo es una plantilla para generar YAML. La plantilla se usa para especificar el número de versión solo una vez y para proporcionar valores diferentes según el sistema operativo. 

Puede revisar las opciones de creación seleccionadas `meta.yaml` para desactivar diversas comprobaciones de reubicación binaria y vinculación de objetos compartidos dinámicos (DSO). Estas opciones controlan el funcionamiento del paquete cuando se instala en un entorno virtual conda con cualquier prefijo de directorio. Los valores predeterminados simplifican el empaquetado de todas las bibliotecas de dependencias en un paquete independiente, pero cuando se reempaqueta de forma binaria una aplicación, es necesario cambiarlos. 

Si la aplicación que está empaquetando requiere bibliotecas de dependencias adicionales o si está empaquetando los complementos de una aplicación por separado, es posible que se produzcan errores de DSO. Estos errores se producen cuando la dependencia no se encuentra en la ruta de búsqueda de la biblioteca del ejecutable o la biblioteca que la necesita. Las aplicaciones dependen de que las bibliotecas se encuentren en rutas definidas globalmente, por ejemplo`/usr/lib`, `/lib` o cuando se instalan en un sistema. Sin embargo, dado que los entornos virtuales de conda se pueden colocar en cualquier lugar, no existe una ruta de uso absoluta. Conda utiliza funciones relativas a RPATH, que son macOS compatibles con ambasLinux, para gestionar este problema. Consulte la documentación de compilación de conda sobre Cómo [hacer que los paquetes sean reubicables](https://docs.conda.io/projects/conda-build/en/latest/resources/make-relocatable.html) para obtener más información.

Blenderno requiere ningún ajuste de RPATH, ya que los archivos de la aplicación se crearon teniendo esto en cuenta. Para las aplicaciones que sí lo requieren, puede usar las mismas herramientas que usa conda build: `patchelf` en Linux y `install_name_tool` en versiones posteriores. macOS

Durante la creación del paquete, se ejecuta el 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) (llamado por`bld.bat`) para instalar los archivos en un entorno preparado con las dependencias del paquete. Estos scripts copian los archivos de instalación, crean enlaces simbólicos a partir de `$PREFIX/bin` ellos y configuran los scripts de activación. SíWindows, no crea enlaces simbólicos, sino que añade el directorio de Blender a la PATH del script de activación.

Usamos un archivo.bat `bash` en lugar de un `cmd.exe` archivo.bat como Windows parte de la receta de compilación de conda, ya que esto proporciona más coherencia en todos los scripts de compilación. Consulta las recomendaciones de la [guía para desarrolladores de Deadline Cloud sobre la](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/what-is-a-deadline-cloud-workload.html#workload-portability) portabilidad de la carga de trabajo para obtener consejos sobre cómo utilizarla. `bash` Windows Si has instalado [git para Windows](https://gitforwindows.org/) clonar el repositorio de [deadline-cloud-samples](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/)git, ya tienes acceso a `bash` él. 

La documentación de [las variables de entorno de compilación de conda](https://docs.conda.io/projects/conda-build/en/latest/user-guide/environment-variables.html) enumera los valores disponibles para su uso en el script de compilación. Estos valores incluyen `$SRC_DIR` los datos del archivo fuente, `$PREFIX` el directorio de instalación, el acceso `$RECIPE_DIR` a otros archivos de la receta, el nombre `$PKG_NAME` y `$PKG_VERSION` la versión del paquete y `$target_platform` la plataforma conda de destino. 

## Envíe el trabajo del paquete Blender 4.2
<a name="s3-channel-build-blender"></a>

Puede crear su propio paquete conda Blender 4.2 para renderizar los trabajos descargando el Blender archivo y luego enviando un trabajo a la cola de creación de paquetes. La cola envía el trabajo a la flota asociada para crear el paquete y volver a indexar el canal conda.

[Estas instrucciones utilizan git desde un shell compatible con bash para crear un paquete de OpenJD y algunas recetas de conda del repositorio de muestras de Deadline Cloud. GitHub](https://github.com/aws-deadline/deadline-cloud-samples) También necesitará lo siguiente:
+ Si lo estás usandoWindows, al instalar git se instalará una versión de bash, git BASH.
+ Debe tener instalada la [CLI de Deadline Cloud](https://github.com/aws-deadline/deadline-cloud).
+ Debe iniciar sesión en el [monitor de Deadline Cloud](https://docs.aws.amazon.com/deadline-cloud/latest/userguide/working-with-deadline-monitor.html).

1. Abre la GUI de configuración de Deadline Cloud con el siguiente comando y establece la granja y la cola predeterminadas en la cola de creación de paquetes.

   ```
   deadline config gui
   ```

1. Usa el siguiente comando para clonar el repositorio de muestras GitHUb de Deadline Cloud.

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

1. Cambie al `conda_recipes` directorio del `deadline-cloud-samples` directorio.

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

1. Ejecute el script llamado`submit-package-job`. El script proporciona instrucciones para descargarlo Blender la primera vez que lo ejecute.

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

1. Siga las instrucciones de descargaBlender. Cuando tenga el archivo, vuelva a ejecutar el `submit-package-job` script.

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

Después de enviar el trabajo, utilice el monitor de Deadline Cloud para ver el progreso y el estado del trabajo a medida que se ejecuta.

En la parte inferior izquierda del monitor se muestran los dos pasos del trabajo: crear el paquete y, a continuación, volver a indexarlo. En la parte inferior derecha se muestran los pasos individuales de cada tarea. En este ejemplo, hay un paso para cada tarea.

![\[El monitor de Deadline Cloud muestra el progreso y el estado de un trabajo que crea el Blender paquete.\]](http://docs.aws.amazon.com/es_es/deadline-cloud/latest/developerguide/images/Conda-Figure3.png)


En la parte inferior izquierda del monitor están los dos pasos del trabajo: crear el paquete y, a continuación, volver a indexar el canal conda. En la parte inferior derecha están las tareas individuales de cada paso. En este ejemplo, solo hay una tarea para cada paso.

Al hacer clic con el botón derecho en la tarea correspondiente al paso de creación del paquete y seleccionar **Ver registros**, el monitor muestra una lista de acciones de la sesión que muestran cómo está programada la tarea en el trabajador. Las acciones son las siguientes:
+ **Sincronizar archivos adjuntos**: esta acción copia los archivos adjuntos del trabajo de entrada o monta un sistema de archivos virtual, en función de la configuración utilizada para el sistema de archivos adjuntos del trabajo.
+ **Iniciar Conda**: esta acción proviene del entorno de colas agregado de forma predeterminada cuando creó la cola. El trabajo no especifica ningún paquete conda, por lo que finaliza rápidamente y no crea un entorno virtual conda.
+ **Iniciar CondaBuild Env**: esta acción crea un entorno virtual conda personalizado que incluye el software necesario para crear un paquete conda y volver a indexar un canal. [Se instala desde el canal conda-forge.](https://conda-forge.org/)
+ **Ejecución de tareas**: esta acción crea el Blender paquete y carga los resultados en Amazon S3.

A medida que se ejecutan las acciones, envían los registros en un formato estructurado a Amazon CloudWatch. Cuando se complete un trabajo, selecciona **Ver registros para todas las tareas** para ver registros adicionales sobre la configuración y el desmantelamiento del entorno en el que se ejecuta el trabajo.

# Pruebe su paquete con un trabajo de renderizado Blender 4.2
<a name="s3-channel-submit-job"></a>

Una vez que haya creado el paquete Blender 4.2 y haya configurado la cola de producción para usar el canal conda de S3, puede enviar los trabajos para renderizarlos con el paquete. Si no tiene una Blender escena, descargue la escena Blender 3.5: Cozy Kitchen de la página de [archivos de Blender demostración](https://www.blender.org/download/demo-files).

El GitHub repositorio de muestras de Deadline Cloud que descargaste anteriormente contiene un trabajo de muestra para renderizar una Blender escena mediante los siguientes comandos:

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

Puedes usar el monitor de Deadline Cloud para hacer un seguimiento del progreso de tu trabajo:

1. En el monitor, selecciona la tarea para el trabajo que has enviado y, a continuación, selecciona la opción para ver el registro.

1. En el lado derecho de la vista de registro, seleccione la acción **Iniciar sesión de Conda**.

Puede ver que la acción buscó Blender 4.2 en los dos canales conda configurados para el entorno de colas y que encontró el paquete en el canal S3.

# Cree una receta de construcción de conda para Autodesk Maya
<a name="create-conda-recipe-maya"></a>

Puede empaquetar aplicaciones comerciales como paquetes conda. En [Create a conda build recipe for Blender](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/conda-package.html#create-conda-recipe-blender), aprendió a empaquetar una aplicación que está disponible como un simple archivo de almacenamiento reubicable y bajo condiciones de licencia de código abierto. Las aplicaciones comerciales suelen distribuirse a través de instaladores y pueden tener un sistema de administración de licencias con el que trabajar.

La siguiente lista se basa en los aspectos básicos descritos en la sección Cómo [crear un paquete conda para una aplicación o un complemento](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/conda-package.html), con los requisitos que suelen implicar el empaquetado de aplicaciones comerciales. Los detalles de las subviñetas ilustran cómo se pueden aplicar las directrices a. Maya
+ Comprenda los derechos de licencia y las restricciones de la aplicación. Es posible que necesite configurar un sistema de administración de licencias. Si la aplicación no incluye la aplicación, tendrá que configurar su granja de acuerdo con sus derechos.
  + Lee las [preguntas frecuentes sobre las ventajas de la Autodesk suscripción sobre los derechos](https://www.autodesk.com/support/technical/article/caas/sfdcarticles/sfdcarticles/Subscription-Benefits-FAQ-Cloud-Rights.html) en la nube para conocer los derechos en la nube Maya que podrían corresponderte. Configura tu granja de Deadline Cloud según sea necesario. 
  + Autodesklos productos se basan en un archivo llamado`ProductInformation.pit`. La mayoría de las configuraciones de este archivo requieren acceso de administrador al sistema, lo que no está disponible en las flotas gestionadas por el servicio. Las características del producto para clientes ligeros ofrecen una forma reubicable de solucionar este problema. Consulte [Thin Client Licensing para Maya y obtenga MotionBuilder](https://www.autodesk.com/support/technical/article/caas/tsarticles/ts/2zqRBCuGDrcPZDzULJQ27p.html) más información. 
+ Algunas aplicaciones dependen de bibliotecas que no están instaladas en los hosts de Fleet Worker gestionados por el servicio, por lo que el paquete tendrá que proporcionarlas. Esto podría estar directamente en el paquete de la aplicación o en un paquete de dependencias independiente. 
  + Mayadepende de varias de estas bibliotecas, incluidas freetype y fontconfig. Cuando estas bibliotecas estén disponibles en el administrador de paquetes del sistema, por ejemplo, en `dnf` for AL2023, podrá utilizarlas como fuente de la aplicación. Como estos paquetes RPM no están diseñados para ser reubicables, necesitará usar herramientas que garanticen que las dependencias se resuelvan dentro del Maya prefijo de instalación. `patchelf` 
+ La instalación puede requerir acceso de administrador. Como las flotas gestionadas por el servicio no proporcionan acceso de administrador, tendrá que realizar una instalación en un sistema con este acceso. A continuación, cree un archivo con los archivos necesarios para que los utilice el trabajo de creación del paquete. 
  + El Windows instalador Maya requiere acceso de administrador, por lo que crear el paquete conda implica un proceso manual para crear primero dicho archivo. 
+ La configuración de la aplicación, incluida la forma en que los complementos se registran en ella, se puede definir a nivel del sistema operativo o del usuario. Cuando se colocan en un entorno virtual conda, los complementos necesitan una forma de integrarse con la aplicación de forma que quede contenida y nunca escriban archivos u otros datos fuera del prefijo del entorno virtual. Le sugerimos que lo configure desde el paquete conda de la aplicación. 
  + El Maya paquete de ejemplo define la variable de entorno `MAYA_NO_HOME=1` para aislarla de la configuración a nivel de usuario y añade rutas de búsqueda de módulos para `MAYA_MODULE_PATH` que los complementos empaquetados por separado puedan integrarse desde el entorno virtual. El MtoA paquete de ejemplo coloca un archivo.mod en uno de estos directorios para cargarlo al Maya inicio. 

**Escribe los metadatos de la receta**

1. Abre el directorio GitHub [ deadline-cloud-samples/conda\$1recipes/maya-2025](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/maya-2025) en tu navegador o en un editor de texto del clon local del repositorio.

   El archivo `deadline-cloud.yaml` describe las plataformas de compilación de conda para crear paquetes y dónde obtener la aplicación. El ejemplo de receta especifica ambas Linux y Windows compilaciones, y eso solo Linux se envía de forma predeterminada.

1. Descarga los Maya instaladores completos desde tu Autodesk cuenta de inicio de sesión. Pues Linux bien, la compilación del paquete puede usar el archivo directamente, así que colóquelo directamente en el `conda_recipes/archive_files` directorio. WindowsEn efecto, el instalador requiere acceso de administrador para ejecutarse. Deberá ejecutar el instalador y recopilar los archivos necesarios en un archivo para la receta del paquete que desee utilizar. El archivo [README.md](https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/conda_recipes/maya-2025/README.md) de la receta documenta un procedimiento repetible para crear este artefacto. El procedimiento utiliza una instancia de Amazon EC2 recién lanzada para proporcionar un entorno limpio para la instalación que, a continuación, puede finalizar tras guardar el resultado. Para empaquetar otras aplicaciones que requieren acceso de administrador, puede seguir un procedimiento similar una vez que determine el conjunto de archivos que necesita la aplicación.

1. Abre los archivos [recipe/recipe.yaml y [recipe/meta.yaml](https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/conda_recipes/maya-2025/recipe/meta.yaml)](https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/conda_recipes/maya-2025/recipe/recipe.yaml) para revisar o editar la configuración de rattler-build y conda-build. Puede configurar el nombre y la versión del paquete de la aplicación que va a empaquetar.

   La sección de **fuentes** incluye una referencia a los archivos, incluido el hash sha256 de los archivos. Siempre que cambie estos archivos, por ejemplo, a una nueva versión, tendrá que calcular y actualizar estos valores.

   La sección de **creación** contiene principalmente opciones para desactivar las opciones de reubicación binaria predeterminadas, ya que los mecanismos automáticos no funcionarán correctamente en la biblioteca y los directorios binarios específicos que utilice el paquete.

   Por último, la sección de **información** le permite introducir algunos metadatos sobre la aplicación que se pueden utilizar al navegar o procesar el contenido de un canal conda.

**Escribe el script de construcción del paquete**

1. Los scripts de compilación de paquetes de la receta de compilación de conda de Maya ejemplo incluyen comentarios que explican los pasos que llevan a cabo los scripts. Lee los comentarios y los comandos para descubrir lo siguiente:
   + Cómo gestiona la receta el archivo RPM desde Autodesk
   + Los cambios que se aplican a la receta permiten que la instalación se pueda reubicar en los entornos virtuales de conda en los que está instalada la receta
   + La forma en que la receta establece las variables de utilidad, como `MAYA_LOCATION` las `MAYA_VERSION` que el software puede utilizar para entender Maya lo que se está ejecutando.

1. Para Linux ello, abra el archivo [recipe/build.sh](https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/conda_recipes/maya-2025/recipe/build.sh) para revisar o editar el script de creación del paquete. 

   Para Windows ello, abra el archivo [recipe/build\$1win.sh](https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/conda_recipes/maya-2025/recipe/build_win.sh) para revisar o editar el script de creación del paquete.

**Envíe un trabajo que cree los Maya paquetes**

1. Introduzca el `conda_recipes` directorio en su clon del GitHub [deadline-cloud-samples](https://github.com/aws-deadline/deadline-cloud-samples)repositorio.

1. Asegúrese de que su granja de Deadline Cloud esté configurada para su CLI de Deadline Cloud. Si ha seguido los pasos para [crear un canal conda con Amazon S3](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/configure-jobs-s3-channel.html), su granja debería estar configurada para su CLI. 

1. Ejecute el siguiente comando para enviar un trabajo que compile ambos Linux Windows paquetes.

   ` ./submit-package-job maya-2025 --all-platforms`

# Cree una receta de compilación de conda para el complemento Autodesk Maya to Arnold (MtoA)
<a name="create-conda-recipe-mtoa-plugin"></a>

Puede empaquetar complementos para aplicaciones comerciales como paquetes conda. Los complementos son bibliotecas que se cargan dinámicamente y que utilizan una interfaz binaria de aplicaciones (ABI) proporcionada por una aplicación para ampliar la funcionalidad de esa aplicación. El Maya to Arnold (MtoA) complemento añade el Arnold renderizador como una opción internaMaya.
+ La receta MtoA de compilación de ejemplo depende del **Maya**paquete y usa una `==` restricción para la versión.
+ El Maya paquete configura una ruta de Maya módulo en el entorno virtual para que el complemento coloque un `.mod` archivo. `$PREFIX/usr/autodesk/maya$MAYA_VERSION/modules` La receta MtoA de compilación de ejemplo crea un archivo `mtoa.mod` en este directorio.

**Escribe los metadatos de la receta**

1. Abre el directorio GitHub [ deadline-cloud-samples/conda\$1recipes/maya-mtoa-2025](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes/maya-mtoa-2025) en tu navegador o en un editor de texto del clon local del repositorio.

   La receta sigue los mismos patrones que la receta de compilación de Maya conda y utiliza los mismos archivos fuente para instalar el complemento.

1. Abre los archivos [recipe/recipe.yaml y [recipe/meta.yaml](https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/conda_recipes/maya-mtoa-2025/recipe/meta.yaml)](https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/conda_recipes/maya-mtoa-2025/recipe/recipe.yaml) para revisar o editar la configuración de rattler-build y conda-build. Estos archivos especifican una dependencia durante la creación del paquete y al crear un entorno virtual para ejecutar el complemento. `maya`

**Escribe el script de construcción del paquete**
+ Los scripts de compilación de paquetes de la receta de compilación de conda de MtoA ejemplo incluyen comentarios que explican los pasos que llevan a cabo los scripts. Lee los comentarios y comandos para saber cómo la receta instala MtoA y crea un archivo `mtoa.mod` en el directorio especificado por el Maya paquete.

  Arnoldy Maya utilizan la misma tecnología de licencias, por lo que la receta de compilación de Maya conda ya incluye la información necesaria para ello. Arnold

  Las diferencias entre los scripts Linux y los de Windows compilación son similares a las diferencias entre la receta de compilación de Maya conda.

**Envía un trabajo que compile los paquetes de Maya MtoA complementos**

1. Introduce el `conda_recipes` directorio en tu clon del GitHub [deadline-cloud-samples](https://github.com/aws-deadline/deadline-cloud-samples)repositorio.

1. Asegúrese de haber creado los paquetes para la aplicación Maya host a partir de la sección anterior.

1. Asegúrese de que su granja de Deadline Cloud esté configurada para su CLI de Deadline Cloud. Si ha seguido los pasos para [crear un canal conda con Amazon S3](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/configure-jobs-s3-channel.html), su granja debería estar configurada para su CLI. 

1. Ejecute el siguiente comando para enviar un trabajo que compile ambos Linux Windows paquetes.

   ` ./submit-package-job maya-mtoa-2025 --all-platforms`

# Pruebe su paquete con un trabajo de Maya renderizado
<a name="submit-render-maya-mtoa"></a>

Una vez que tengas el Maya 2025 y MtoA los paquetes creados, puedes enviar los trabajos para renderizarlos con el paquete. El [tocadiscos con Maya/Arnold](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/job_bundles/turntable_with_maya_arnold) un ejemplo de paquete de tareas renderiza una animación con Maya y. Arnold Este ejemplo también se utiliza FFmpeg para codificar un vídeo. Puede añadir el canal conda-forge a la lista de canales predeterminados de su entorno `CondaChannels` de colas conda para proporcionar una fuente para el paquete. `ffmpeg`

Desde el `job_bundles` directorio de tu clon de git [deadline-cloud-samples](https://github.com/aws-deadline/deadline-cloud-samples), ejecuta el siguiente comando.

```
deadline bundle submit turntable_with_maya_arnold
```

Puedes usar el monitor de Deadline Cloud para hacer un seguimiento del progreso de tu trabajo:

1. En el monitor, selecciona la tarea para el trabajo que has enviado y, a continuación, selecciona la opción para ver el registro.

1. En el lado derecho de la vista de registro, seleccione la acción **Iniciar sesión de Conda**.

Puede ver que la acción buscó maya y maya-mtoa en los canales conda configurados para el entorno de colas y encontró los paquetes en el canal S3.

# Automatice la creación de paquetes con Deadline Cloud
<a name="automate-package-builds"></a>

Para los CI/CD flujos de trabajo o cuando necesite crear paquetes para varios sistemas operativos, puede crear una cola de creación de paquetes de Deadline Cloud. Las listas de espera crean trabajos en su flota, que crean los paquetes y los publican en su canal conda de Amazon Simple Storage Service (Amazon S3). Esto simplifica el mantenimiento continuo de la creación de paquetes para las versiones de software en todas las configuraciones requeridas.

Puedes crear una cola de creación de paquetes utilizando una plantilla AWS CloudFormation (CloudFormation) o manualmente desde la consola de Deadline Cloud. La CloudFormation plantilla despliega una granja completa con una cola de producción y una cola de creación de paquetes ya configuradas. Al crear la cola desde la consola, tendrá más control sobre los ajustes individuales.

## Cree una cola de creación de paquetes con CloudFormation
<a name="s3-channel-create-queue-cfn"></a>

Puedes usar una CloudFormation plantilla para crear una granja de Deadline Cloud que incluya una cola de creación de paquetes. La plantilla configura una cola de producción y una cola de creación de paquetes con un canal conda privado de Amazon S3.

Antes de implementar la plantilla, cree un bucket de Amazon S3 para almacenar los adjuntos de trabajo y su canal conda. Puede crear un bucket desde la [consola de Amazon S3](https://console.aws.amazon.com/s3/). Necesitará el nombre del bucket al implementar la plantilla.

**Para implementar la CloudFormation plantilla**

1. Descargue la plantilla [deadline-cloud-starter-farm-template.yaml](https://github.com/aws-deadline/deadline-cloud-samples/raw/mainline/cloudformation/farm_templates/starter_farm/deadline-cloud-starter-farm-template.yaml) del repositorio de muestras de [Deadline](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/cloudformation/farm_templates/starter_farm) Cloud en. GitHub

1. Desde la [CloudFormation consola](https://console.aws.amazon.com/cloudformation/), selecciona **Crear pila** y, a continuación, **Con nuevos** recursos (estándar).

1. Seleccione la opción para cargar un archivo de plantilla y, a continuación, cargue el `deadline-cloud-starter-farm-template.yaml` archivo.

1. Introduzca un nombre para la pila, por ejemplo**StarterFarm**, y proporcione el nombre de un bucket de Amazon S3 para adjuntar trabajos y el canal conda.

1. Siga los pasos de la CloudFormation consola para completar la creación de la pila.

Para obtener más información sobre los parámetros de la plantilla y las opciones de personalización, consulta el [README de la granja de inicio](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/cloudformation/farm_templates/starter_farm) en el repositorio de muestras de Deadline Cloud enGitHub.

## Cree una cola de creación de paquetes desde la consola
<a name="s3-channel-create-queue"></a>

Sigue las instrucciones de la Guía del *usuario de Deadline Cloud sobre* cómo [crear una cola](https://docs.aws.amazon.com/deadline-cloud/latest/userguide/create-queue.html). Realice los siguientes cambios:
+ En el paso 5, elija un bucket de Amazon S3 existente. Especifica un nombre para la carpeta raíz, de **DeadlineCloudPackageBuild** forma que los artefactos de construcción permanezcan separados de los archivos adjuntos normales de Deadline Cloud.
+ En el paso 6, puede asociar la cola de creación de paquetes a una flota existente, o puede crear una flota completamente nueva si su flota actual no es adecuada.
+ En el paso 9, cree un nuevo rol de servicio para su cola de creación de paquetes. Modificará los permisos para conceder a la cola los permisos necesarios para cargar paquetes y volver a indexar un canal conda.

### Configure los permisos de creación de colas de paquetes
<a name="package-building-queue-permissions"></a>

Para permitir que la cola de creación de paquetes acceda al `/Conda` prefijo del bucket de Amazon S3 de la cola, debe modificar la función de la cola para darle acceso. read/write El rol necesita los siguientes permisos para que los trabajos de creación de paquetes puedan cargar nuevos paquetes y volver a indexar el canal.
+ `s3:GetObject`
+ `s3:PutObject`
+ `s3:ListBucket`
+ `s3:GetBucketLocation`
+ `s3:DeleteObject`

1. Abre la consola de Deadline Cloud y navega hasta la página de detalles de la cola de creación de paquetes.

1. **Elige la función de servicio de colas y, a continuación, selecciona Editar cola.**

1. Ve a la sección **Función de servicio de colas** y, a continuación, selecciona **Ver esta función en la** consola de IAM.

1. En la lista de políticas de permisos, elija la que desee **AmazonDeadlineCloudQueuePolicy**para su cola.

1. En la pestaña **Permisos**, selecciona **Editar**.

1. Añada una nueva sección a la función de servicio de colas, como se muestra a continuación. Sustituya *amzn-s3-demo-bucket* y *111122223333* por su propio depósito y cuenta.

   ```
   {
      "Effect": "Allow",
      "Sid": "CustomCondaChannelReadWrite",
      "Action": [
       "s3:GetObject",
       "s3:PutObject",
       "s3:DeleteObject",
       "s3:ListBucket",
       "s3:GetBucketLocation"
      ],
      "Resource": [
       "arn:aws:s3:::amzn-s3-demo-bucket",
       "arn:aws:s3:::amzn-s3-demo-bucket/Conda/*"
      ],
      "Condition": {
       "StringEquals": {
        "aws:ResourceAccount": "111122223333"
       }
      }
     },
   ```

## Envíe un trabajo de construcción de paquetes
<a name="automate-submit-package-job"></a>

Después de crear una cola de creación de paquetes y configurar los permisos de la cola, puede enviar trabajos para crear paquetes conda. El `submit-package-job` script del repositorio de [muestras de Deadline Cloud](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/conda_recipes#readme) GitHub envía un trabajo de compilación para una receta de conda.

Necesitará lo siguiente:
+ La [CLI de Deadline Cloud](https://github.com/aws-deadline/deadline-cloud) instalada en su estación de trabajo.
+ Una sesión de inicio de sesión activa [AWS en el monitor de Deadline Cloud (Deadline Cloud monitor)](https://docs.aws.amazon.com/deadline-cloud/latest/userguide/working-with-deadline-monitor.html).
+ Un clon del repositorio de [muestras de Deadline Cloud](https://github.com/aws-deadline/deadline-cloud-samples).

**Para enviar un trabajo de creación de paquetes**

1. Abre la GUI de configuración de Deadline Cloud y establece la granja y la cola predeterminadas en la cola de creación de paquetes.

   ```
   deadline config gui
   ```

1. Cambie al `conda_recipes` directorio del repositorio de muestras.

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

1. Ejecute el `submit-package-job` script con el directorio de recetas. El siguiente ejemplo crea la receta Blender 4.5.

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

   Si la receta requiere un archivo fuente que aún no haya descargado, el script proporciona las instrucciones de descarga. Descargue el archivo y vuelva a ejecutar el script.

Después de enviar el trabajo, utilice el monitor de Deadline Cloud para ver el progreso y el estado del trabajo.

![\[El monitor de Deadline Cloud muestra el progreso y el estado de un trabajo de creación de un paquete conda.\]](http://docs.aws.amazon.com/es_es/deadline-cloud/latest/developerguide/images/Conda-Figure3.png)


El monitor muestra los dos pasos del trabajo: crear el paquete y, a continuación, volver a indexar el canal conda. Al hacer clic con el botón derecho en la tarea correspondiente al paso de creación del paquete y seleccionar **Ver registros**, el monitor muestra las acciones de la sesión:
+ **Sincronizar los archivos adjuntos**: copia los archivos adjuntos del trabajo de entrada o monta un sistema de archivos virtual.
+ **Inicie Conda**, la acción del entorno de colas. El trabajo de compilación no especifica los paquetes de conda, por lo que esta acción finaliza rápidamente.
+ **Launch CondaBuild Env**: crea un entorno virtual conda con el software necesario para crear un paquete conda y volver a indexar un canal.
+ **Ejecución de tareas**: crea el paquete y carga los resultados en Amazon S3.

A medida que se ejecutan las acciones, envían registros a Amazon CloudWatch (CloudWatch). Cuando se complete un trabajo, seleccione **Ver registros para todas las tareas** para ver registros adicionales sobre la configuración y el desmontaje del entorno.