Есть ли простой способ получить текущую версию приложения-приложения в AppEngine?
AppEngine: получить текущую версию приложения-приложения
Ответ 1
os.environ['CURRENT_VERSION_ID']
Ответ 2
String version = SystemProperty.version.get();
String applicationVersion = SystemProperty.applicationVersion.get();
Это синтаксис:
public static final SystemProperty applicationVersion
Основной номер версии для текущей версии приложения плюс отметка времени, в которой она была развернута. Имеет ключ "com.google.appengine.application.version".
Смотрите здесь
PS. Одна головоломка остается. Что означает временная метка рядом с версией и как ее читать?
EDIT: Вот ключ к тайне.
Date UploadDate = new Date(Long.parseLong(
applicationVersion.substring(applicationVersion.lastIndexOf(".")+1))
/ (2 << 27) * 1000);
Ответ 3
Для Python (версия GAE SDK: "1.4.2" )
version_id = self.request.environ["CURRENT_VERSION_ID"].split('.')[1]
timestamp = long(version_id) / pow(2,28)
version = datetime.datetime.fromtimestamp(timestamp).strftime("%d/%m/%y %X")
См. http://groups.google.com/group/google-appengine-python/browse_thread/thread/f86010e7cf3c71b4
Ответ 4
from google.appengine.api import modules
modules.get_current_version_name()
Источник: https://cloud.google.com/appengine/docs/python/modules/functions
Ответ 5
Вы также можете получить доступ к переменным среды процесса:
GAE_VERSION
которая доступна при развертывании (развертывание приложения gcloud) с использованием флага --version
Ответ 6
Для nodejs я не уверен, задокументировано ли это.
process.env.GAE_VERSION