我正在开发我的第一个应用。我选择使用与DataTables交互的Flexible Python环境。我有应用程序工作,它使用Identity-Aware代理保护,以限制对我们公司域的访问。
我现在正在尝试部署一个cron作业来定期清理旧实体以保持数据集大小不变。我有清理任务工作,可以手动运行它。但是,在尝试让它自动运行时,我不断在日志中收到以下错误:
请求失败,因为URL要求用户登录。对于在App Engine中调用的请求(诸如任务队列之类的离线请求,或者像XMPP和传入邮件之类的webhook),URL必须要求管理员登录(或不登录)。
根据我在文档中看到的内容,Flex环境不再使用app.yaml文件的处理程序部分,应用程序应该处理cron服务本身的验证。但是这个错误似乎表明该脚本甚至没有被运行。
我尝试过以下操作,结果是每次上面的错误消息: 1.关闭IAP并且对访问没有限制 2.将处理程序部分添加到app.yaml文件中以进行/ clean作业
有没有人遇到这个问题并让它发挥作用?
的app.yaml:
service: dashboard
env: flex
runtime: python
entrypoint: gunicorn -b :$PORT dashboard:app --timeout 300
api_version: 1
threadsafe: false
skip_files:
- ^(.*/)?\.pyc$
runtime_config:
python_version: 2
cron.yaml:
cron:
- description: remove old cluster heartbeats
url: /clean?
schedule: every 24 hours
target: dashboard
答案 0 :(得分:0)
我终于有了这个工作。但我不确定究竟是什么让它起作用。我没有更改我的app.yaml,cron.yaml或应用程序代码。
但是,我确实在这个项目中创建了另一个基本的“Hello World”服务,看看我是否可以使它工作。一旦我开始工作,我就回去尝试我原来的仪表板服务,它现在正在运行。无论出现什么问题,都可以解决新的服务部署问题。