Uso de código compartido - Guía del usuario de Lumberyard

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.

Uso de código compartido

Open 3D Engine (O3DE), el sucesor de Lumberyard, ya está disponible en Developer Preview. Descargar O3DEo visite elBlog de AWS Game Techpara obtener más información.

El comando lmbr_aws cloud-gem-framework añade una API de servicio a un grupo de recursos. add-service-api-resources Antes de la versión 1.10 de Lumberyard, copiaba el código Lambda del servicio para enviar llamadas a la API de servicio desde elCloudGemFramework\AWS\resource-manager-code\default-resource-group-content\lambda-function-codeal directorio del grupo de recursoslambda-function-codedirectory.

En la versión 1.10, Lumberyard añade un mecanismo de código compartido con fines generales. Puede utilizar este mecanismo para incluir una única copia del código de envío de la API de servicio en todas las funciones Lambda que lo necesiten. Ponga el código que desee compartir en un subdirectorio del directorio AWS\common-code de una gema. El nombre del subdirectorio es el nombre del paquete de código.

Se puede encontrar un archivo .import en el directorio de AWS de una gema o en el directorio del grupo de recursos de un proyecto. El archivo se puede colocar en cualquiera de los directorios siguientes para indicar que el código depende de un conjunto de paquetes especificado:

  • lambda-code\<lambda-name>\

  • lambda-function-code\

  • <lambda-name>-lambda-code\

  • resource-manager-code\

  • common-code\<package-name>\

Puede utilizar el directorio common-code\<package-name>\ para añadir dependencias de forma repetida. Lalambda-code\<lambda-name>\es nuevo en Lumberyard 1.10. Para obtener más información acerca de este directorio, consulte Directorios de código Lambda.

El archivo .import tiene el formato siguiente:

<gem-name>.<package-name> <gem-name>.<package-name> ...

Las entradas del archivo .import instruyen a Cloud Gem Framework para que incluya el contenido del directorio AWS\common-code\<package-name> de la gema especificada. En cuanto al código Lambda, el contenido del directorio se incluye en el.zipque contiene otro código Lambda. Cuando el administrador de recursos carga el código especificado por sys.path (la ruta de búsqueda del módulo predeterminado Python o PYTHONPATH), el directorio resource-manager-code se incluye en dicha ruta.

El código de envío del API de servicio puede encontrarse en Gems\CloudGemFramework\v<N>\AWS\common-code\LambdaService. El directorio Gems\CloudGemFramework\v<N>\AWS\common-code\LambdaSettings contiene código para obtener acceso a la configuración inyectada.