Итак ... это было то, что я не направлялся в это место. Я на самом деле был в состоянии просто установить маршрут (с администратором против него) на URL, а затем смог вызвать его через cron.yaml.
все остальное работает ... чтобы предвосхитить это. Но я действительно не вышел за пределы интерфейса администратора. Я пытаюсь получить данные из API и вставить их в базу данных, если есть изменения. Мне удалось написать скрипт, который может это сделать (теоретически ... он может делать это локально), но я не могу заставить приложение в облаке распознать его существование. Я последовал предложению Google добавить его в app.yaml и cron.yaml безрезультатно.
Нужно ли добавить это в urls.py? До сих пор я совсем не разбирался с обработчиками, и я не уверен, что происходит с установкой settings.py, что происходит с файлами yaml, и сколько из этого составляет пиковая пыль.
вот соответствующие файлы ... app.yaml
runtime: python
env: flex
entrypoint: gunicorn -b :$PORT mysite.wsgi
threadsafe: yes
beta_settings:
cloud_sql_instances: [redacted]
runtime_config:
python_version: 3
health_check:
enable_health_check: False
handlers:
- url: /static
static_dir: static/
- url: /run/get_data/
script: JSONdownload.app
login: admin
- url: .*
script: mysite.wsgi.application
cron.yaml
cron:
- description: "get data"
url: /run/get_data/
schedule: every 5 minutes
JSONdownload.py
#!/usr/bin/env python
# /var/spool/cron/crontabs
import json
import urllib2
from django.http import HttpResponse
from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import run_wsgi_app
from .models import Game
from .models import Team
class JSONdownloadHandler(webapp.RequestHandler):
def get(self):
self.response.write('cron')
class MainHandler(webapp.RequestHandler):
def get(self):
self.response.write('yay')
Я нахожу большие ресурсы для базового приложения на Python ... но на самом деле ни одного для этой ситуации ... кто-нибудь знает что-то лучше, чем то, что я делаю, ПОЖАЛУЙСТА, дайте мне знать!