Как создать пул-пуш-очереди в локальной среде движка приложения Google - PullRequest
0 голосов
/ 29 июня 2018

Мне нужно запустить проект Google App Engine локально. Обычно он работает на сервере Google, но отладка становится проблемой, поскольку развертывание каждого исправления занимает много времени. Мне почти удалось запустить его локально, но я не понимаю, как создавать очереди, которые необходимы. Мои шаги:

  1. run dev_appserver.py app.yaml, следуя используя локальный сервер разработки руководство. Все отлично работает, кроме очередей:

    _, err := taskqueue.Add(u.Ctx(), task, queueName)
    exceptions.ThrowIfErr(true, "err_msg", err)
    

    Выдает

    Panic! UserMessage: <err_msg>, Error: API error 1 (taskqueue: UNKNOWN_QUEUE),...
    
  2. Я могу легко создавать очереди на удаленном сервере (используя создание push и создание pull направляющих):

    gcloud app deploy queue.yaml
    

    Для queue.yaml:

    queue:
    - name: Pull-Data-Queue
      mode: pull
    
    - name: Push-Data-Queue
      mode: push
      rate: 1/s
    
  3. Я могу открыть http://localhost:8000/datastore и посмотреть некоторые созданные данные.
  4. Я могу открыть http://localhost:8000/taskqueue и увидеть только одну push-очередь по умолчанию. Здесь нет инструментов для добавления новых очередей.

Руководство Google сообщает, что очереди не могут создаваться динамически из кода, только с помощью yaml или xml. Но как их создать в местной среде. Это вообще возможно? gcloud app deploy queue.yaml насколько я понимаю, работает только для удаленного развертывания.

1 Ответ

0 голосов
/ 02 июля 2018

Если файл queue.yaml соседствует с файлом app.yaml, сервер разработки обнаруживает его автоматически. Можно использовать символическую ссылку вместо копирования. Это исправило проблему.

...