Python 2 ya no es compatible con la comunidad. Recomendamos que migres las apps de Python 2 a Python 3.

Argumentos de la línea de comandos appcfg.py

El comando appcfg.py toma un conjunto de opciones, una acción y argumentos para la acción. Este comando se usa para varias tareas de administración de aplicaciones, entre ellas, implementar tu app y actualizar los índices del almacén de datos.

La herramienta appcfg solo se incluye con el SDK de App Engine original, que puedes descargar e instalar en el SDK de App Engine original para Python 2.

El SDK de App Engine se actualiza a menudo, por lo que esta lista de argumentos podría no estar actualizada. Escribe appcfg.py help para ver la lista de todas las acciones disponibles y appcfg.py help <action> a fin de ver los detalles de una acción en particular.

update

appcfg.py [options] update <app-directory>|<files...>

La acción de actualización crea o actualiza la versión de la app con nombre en el archivo app.yaml en el nivel superior del directorio.

Si especificas un directorio, este debe contener un archivo app.yaml y todos los otros archivos que requiere la aplicación o el módulo que define el archivo app.yaml.

Si el directorio contiene archivos de configuración de la aplicación global (index.yaml, queues.yaml, dispatch.yaml, dos.yaml, cron.yaml), usa el comando de actualización específico para cada uno de estos a fin de implementar el archivo de configuración. Por ejemplo, usa update_dispatch para implementar el archivo de envío, update_cron a fin de implementar el archivo cron, y así sucesivamente.

El comando sigue enlaces simbólicos y sube todos los archivos al servidor de forma recurrente. Se omiten los archivos temporales o de control de versiones, como foo~ y .svn/*.

Usa el argumento de archivos para subir uno o más archivos YAML que definen módulos. No puede aparecer ningún otro tipo de archivo YAML en la línea de comandos. Solo se actualizarán los módulos especificados.

La siguiente opción se aplica a update:

--max_size
Tamaño máximo de un archivo que se sube (en bytes).
--no_precompilation
Inhabilita la precompilación automática de Python. La precompilación aumenta el rendimiento de la aplicación y reduce el tiempo de importación de un módulo o archivo de Python, lo que aumenta la velocidad de la primera solicitud manejada por una instancia de la aplicación. Si se producen errores de precompilación cuando implementas tu aplicación, intenta especificar este parámetro.

help

appcfg.py help <action>
Imprime un mensaje de ayuda sobre una acción determinada y, luego, se cierra.

cron_info

appcfg.py [options] cron_info <app-directory>
Muestra información acerca de la configuración de tareas programadas (cron), incluidas las horas esperadas para las ejecuciones siguientes. De forma predeterminada, muestra cuándo se realizarán las 5 ejecuciones siguientes. Puedes modificar la cantidad de tiempos de ejecución futuros que se muestran con la opción --num_runs=....

download_app

appcfg.py download_app -A <project_id> -V <version> <output-dir>

Recupera la versión más reciente del código de tu aplicación usando las opciones siguientes:

-A
Obligatorio El ID del proyecto.
-V
Opcional. Especifica la versión del código que se descarga. Si se omite, se descarga la versión predeterminada.
<output-dir>
Obligatorio El directorio donde deseas guardar los archivos.

request_logs

appcfg.py [options] request_logs <app-directory> <output-file>

Recupera datos de registros para la aplicación que se ejecuta en App Engine. Si se establece la marca --append, el parámetro output-file es el nombre del archivo que se creará, reemplazará o agregará. Si output-file es un guion (-), los datos de registro se imprimen en la consola. Las siguientes opciones se aplican a request_logs:

--num_days=...
La cantidad de días para los que recuperar datos de registro, con finalización en la fecha actual a medianoche UTC. El valor 0 recupera todos los registros disponibles. Si se incluye --append, el valor predeterminado es 0; de lo contrario, el valor predeterminado es 1.
--end_date=...

La fecha más reciente de los datos de registro para mostrar, en el formato YYYY-MM-DD. El valor predeterminado es hoy. La opción --num_days cuenta hacia atrás desde la fecha de finalización.

--severity=...

El nivel de registro mínimo para los mensajes de registro a recuperar. El valor es un número correspondiente al nivel de registro: 4 para CRÍTICO, 3 para ERROR, 2 para ADVERTENCIA, 1 para INFORMACIÓN, 0 para DEPURACIÓN. Se recuperan todos los mensajes en el nivel de registro especificado y superiores. El valor predeterminado es 1 (INFORMACIÓN).

--append

Adjunta los datos recuperados al archivo de salida, empezando por la línea de registro que no está presente en el archivo. Ejecutar esta acción una vez por día con --append genera un archivo que contiene todos los datos de registros.

De forma predeterminada se reemplaza el archivo de salida. No se aplica si output-file es - (se imprime en la consola).

--vhost=...

Si está presente, limita los mensajes de registro que se descargan de modo que se incluyan solo aquellos emitidos por solicitudes para un nombre de dominio dado. Por ejemplo, --vhost=google.com descarga solo los mensajes de registro de la app en vivo en el dominio de G Suite google.com y excluye los mensajes de registro emitidos por una versión nueva que se prueba en https://2-dot-latest-dot-your_project_id.[REGION_ID].r.appspot.com. De manera similar, --vhost=2.latest.your_project_id.[REGION_ID].r.appspot.com descarga solo los registros para la versión de prueba y excluye la versión activa.

El valor es una expresión regular que coincide con el encabezado Host de las solicitudes entrantes. Ten en cuenta que el patrón distingue entre mayúsculas y minúsculas, mientras que los nombres de los dominios no suelen hacerlo.

--include_vhost

Incluye el nombre del dominio para cada solicitud (el encabezado de la solicitud Host) en los datos de registro de la solicitud como un campo adicional.

rollback

appcfg.py [options] rollback <app-directory>
Revierte la actualización parcialmente completada de una aplicación dada. Puedes usarlo si se interrumpió la actualización o si el comando informa de que la aplicación no puede actualizarse debido a un bloqueo.

set_default_version

appcfg.py [options] set_default_version <app-directory>
Especifica la versión predeterminada de un módulo dado.

migrate_traffic

appcfg.py [options] migrate_traffic <app-directory>
Implementa la migración de tráfico. Vuelve a enrutar de forma dinámica el tráfico de la versión de la aplicación predeterminada actual (en funcionamiento) a la versión especificada en app.yaml. Se traslada el tráfico de la versión anterior a la nueva en unos minutos, según cuánto tráfico reciba la aplicación y cuántas instancias se estén ejecutando. Una vez que se ha migrado el tráfico, la versión predeterminada (en funcionamiento) se restablece a la nueva versión.

list_versions

appcfg.py [options] list_versions <app-directory>
Genera las versiones subidas para cada módulo de una aplicación en YAML. YAML recibe un formato de arreglo asociado, en el que los module_ids se asignan a la lista de versiones subida para ese módulo. La versión predeterminada es la primera de la lista.

delete_version

appcfg.py [options] delete_version -A project_id -V version
Borra la versión especificada para la aplicación especificada.

update_cron

appcfg.py [options] update_cron <app-directory>
Actualiza la configuración de las tareas de programación (cron) de la aplicación, según el archivo cron.yaml.

update_dos

appcfg.py [options] update_dos <app-directory>
Actualiza la configuración de la protección contra DoS de la aplicación, según el archivo dos.yaml.

update_indexes

appcfg.py [options] update_indexes <app-directory>
Actualiza los índices del almacén de datos en App Engine para incluir índices agregados recientemente. Si una nueva versión de tu aplicación requiere una definición de índice adicional que se agregó a index.yaml, puedes actualizar tus definiciones de índices en App Engine antes de subir la nueva versión de tu aplicación. Ejecutar esta acción unas horas antes de subir la nueva versión de tu aplicación brinda a los índices tiempo para compilar y empezar a entregar cuando se implemente la aplicación.

update_queues

appcfg.py [options] update_queues <app-directory>
Actualiza la configuración de la lista de tareas en cola de la app, según el archivo queue.yaml.

update_dispatch

appcfg.py [options] update_dispatch <app-directory>
Actualiza el envío de la aplicación según el archivo dispatch.yaml.

start_module_version

appcfg.py [options] start_module_version <app-directory>

Inicia la versión especificada del módulo.

Usa las opciones --module y --version para anular la configuración en el archivo app.yaml.

stop_module_version

appcfg.py [options] stop_module_version <app-directory>

Detiene la versión especificada del módulo.

Usa las opciones --module y --version para anular la configuración en el archivo app.yaml.

vacuum_indexes

appcfg.py [options] vacuum_indexes <app-directory>
Borra de App Engine los índices del almacén de datos que no se usan. Los índices sin usar se acumulan cuando quitas definiciones de índices de index.yaml, ya que esta eliminación no borra automáticamente los índices de App Engine. Si se invoca este comando, se borran todos esos índices que no se usan de App Engine.

Opciones globales

El comando appcfg.py acepta las siguientes opciones para todas las acciones:

--application=...
El ID del proyecto que se usará. De forma predeterminada, este se deriva de la línea de application: del archivo app.yaml en el directorio de la aplicación. Si se especifica --application, este anula el ID en app.yaml para la acción.
--force
Fuerza la eliminación de los índices sin usar. De forma predeterminada, subir una aplicación no borra los índices no utilizados del servidor, incluso si no aparecen en el archivo index.yaml.
--host=...
El nombre de host de la máquina local que se usa para las llamadas de procedimiento remoto.
--max_size=...
El tamaño máximo de archivos que se subirá, como una cantidad de bytes. Los archivos de mayor tamaño no se subirán. El predeterminado es 10485760. El servidor aplica un tamaño de archivo máximo de 10,485,760 bytes, por lo que aumentar este valor no tendrá ningún efecto.
--module=...
El nombre del módulo que se usará. De forma predeterminada, este se deriva de la línea de module: del archivo app.yaml en el directorio de la aplicación. Si se especifica --module, este anula el valor en app.yaml para esta acción.
--no_cookies
No se almacena el token de acceso del usuario. y se aplica el flujo de OAuth2 todas las veces.
--noisy
Se imprimen muchos mensajes sobre lo que está haciendo el comando. Es útil principalmente cuando trabajas con el equipo de App Engine para solucionar problemas de subida.
--noauth_local_webserver
No se usa el navegador web para mostrar páginas web de autenticación. Es útil para la autenticación OAuth2 si accedes de forma remota a una máquina. Esta marca se aplica solo para OAuth2.
--oauth2_refresh_token=token
Se usa un token de actualización de OAuth2 para autenticar en lugar del predeterminado que se almacena en el directorio principal del usuario.
--quiet
No se imprimen mensajes cuando la acción se completa con éxito.
--server=...
El nombre de host del servidor de App Engine. El predeterminado es appengine.google.com.
--verbose
Se imprimen mensajes acerca de lo que está haciendo el comando.
--version=...
El ID de la versión que se usará. De forma predeterminada, este se deriva de la línea de version: del archivo app.yaml en el directorio de la aplicación. Si se especifica --version, esto anula el ID de versión en app.yaml para esta acción.