App Engine SDK DevServer Режим только для чтения? - PullRequest
13 голосов
/ 17 февраля 2010

Есть ли способ запустить сервер разработки ядра приложения в режиме только для чтения, чтобы имитировать плановое обслуживание Google, которое переводит хранилище данных в режим только для чтения?

Изящно ухудшается во время планового технического обслуживания

1 Ответ

2 голосов
/ 21 февраля 2010

Хотелось бы, чтобы был флажок, который сделал бы хранилище данных доступным только для чтения. Этот хак, кажется, делает то, что мне нужно. Поместите в ваш основной обработчик следующее:

from google.appengine.runtime.apiproxy_errors import CapabilityDisabledError
from google.appengine.api import apiproxy_stub_map

def make_datastore_readonly():
  """Throw ReadOnlyError on put and delete operations."""
  def hook(service, call, request, response):
    assert(service == 'datastore_v3')
    if call in ('Put', 'Delete'):
      raise CapabilityDisabledError('Datastore is in read-only mode')
  apiproxy_stub_map.apiproxy.GetPreCallHooks().Push('readonly_datastore', hook, 'datastore_v3')

def main():
  make_datastore_readonly()

Было найдено здесь: http://groups.google.com/group/google-appengine/msg/51db9d51401715ca

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...