Desde una aplicación de App Engine, ¿hay alguna forma de determinar el ID del proyecto en el que se ejecuta una instancia de GAE (App Engine)?

Quiero acceder a una tabla de consulta grande en el mismo proyecto en el que se ejecuta la instancia de App Engine. Prefiero no codificarla ni incluirla en otro archivo de configuración si es posible.

Editar: olvidé mencionar que esto es de Python

12
Kevin S. 28 ago. 2014 a las 19:33

4 respuestas

La mejor respuesta

Puede obtener mucha información de las variables de entorno:

import os
print os.getenv('APPLICATION_ID')
print os.getenv('CURRENT_VERSION_ID')
print os.environ
8
Dmytro Sadovnychyi 28 ago. 2014 a las 16:31

Probé los otros enfoques en 2019 usando Python3. Hasta donde puedo decir, esos enfoques son para Python2 (y uno para Java).

Pude lograr esto en Python3 usando:

import os

app_id = os.getenv('GAE_APPLICATION')
print(app_id)
project_id = os.getenv('GOOGLE_CLOUD_PROJECT')
print(project_id)

Fuente: https://cloud.google.com/appengine/docs/standard/ python3 / runtime

2
jeremydeanlakey 15 abr. 2019 a las 17:59

También agregué una versión de la aplicación, en caso de que la necesites también.

import com.google.appengine.api.utils.SystemProperty;


String appId = SystemProperty.applicationId.get();
String appVersion = SystemProperty.applicationVersion.get();
5
Andrei Volgin 28 ago. 2014 a las 15:36

Esta es la forma "oficial":

from google.appengine.api import app_identity

GAE_APP_ID = app_identity.get_application_id()

Ver más aquí: https://developers.google.com/appengine/docs/python/ appidentity /

12
Mihail Russu 28 ago. 2014 a las 18:11