我有以下cron.yaml
:
cron:
- description: "TEST_TEST_TEST"
- url: /cronBatchClean
- schedule: every 2 minutes
然后在app.yaml
:
service: environ-flexible
runtime: python
env: flex
entrypoint: gunicorn -b :$PORT main:app
runtime_config:
python_version: 3
这就像main.py
:
from flask import Flask, request
import sys
app = Flask(__name__)
@app.route('/cronBatchClean')
def cronBatchClean():
print("CRON_CHECK", file=sys.stderr)
return "CRON_CHECK"
当我输入完整的URL时,我在屏幕上收到“CRON_CHECK”,但这似乎没有执行。同样在App Engine仪表板中,当我单击CRON作业时,没有列出任何内容。
任何有助于执行此操作的帮助将非常感激,
谢谢 :)
编辑1
我现在执行了cron任务但是我收到了404
错误。当我输入完整的URL(即 - https://.appspot.com/cronBatchClean)时,相应的代码将执行。
我添加了一个GET
处理程序,但我仍然没有收到运气。
@app.route('/cronBatchClean', methods=['GET'])
def cronBatchClean():
print("CRON_JOB_PRINT", file=sys.stderr)
return "CRON_CHECK"
在cron.yaml
中有不必要的“ - ”字符,它们正在开始新的列表。 YAML Syntax
正确的格式为Cron Jobs cron.yaml
,see Google Cloud documentation:
cron:
- description: "TEST_TEST_TEST"
url: /cronBatchClean
schedule: every 2 minutes
要部署Cron Job,请使用gcloud command:
$ gcloud app deploy cron.yaml