运行文件的 heroku 调度程序命令是啥?
Posted
技术标签:
【中文标题】运行文件的 heroku 调度程序命令是啥?【英文标题】:What is the heroku scheduler command to run a file?运行文件的 heroku 调度程序命令是什么? 【发布时间】:2019-02-10 13:59:39 【问题描述】:我尝试使用 heroku 插件“调度程序”运行 myFile
。
简化的文件结构(MyProject 为根)
MyProject -> bin -> myFile
我的文件
#!/usr/bin/env node
const foo = require('myFunc');
foo();
process.exit();
从我的电脑本地测试 heroku-cli bash 中的 MyFile,它按预期工作。但是我 Heroku 调度程序 cmd 很可能是错误的,因为调度程序在指定时间触发,我在日志中收到以下错误:
2018-09-05T12:00:08.323971+00:00 app[api]: Starting process with command `run eovendoEarnMoney` by user scheduler@addons.heroku.com
2018-09-05T12:01:05.759152+00:00 heroku[scheduler.4007]: Starting process with command `run myFile`
2018-09-05T12:01:06.419284+00:00 heroku[scheduler.4007]: State changed from starting to up
2018-09-05T12:01:08.283555+00:00 heroku[scheduler.4007]: State changed from up to complete
2018-09-05T12:01:08.223306+00:00 heroku[scheduler.4007]: Process exited with status 127
2018-09-05T12:01:08.154580+00:00 app[scheduler.4007]: bash: heroku: command not found
我尝试将 bash 命令(在上图中)更改为:run myFile
。导致同样的错误,只是这次的错误是:
2018-09-05T12:01:08.154580+00:00 app[scheduler.4007]: bash: run: command not found
我在 this answer 之后为 heroku-cli 添加了一个构建包,因为我认为这会有所帮助。
运行“myFile”的正确命令是什么?
没有关于此事的文件
【问题讨论】:
【参考方案1】:根据Heroku Scheduler Documentation,您应该使用heroku run myFile
来测试命令在本地运行。
该文档还解释了使用调度程序仪表板中的 rails 执行此操作的方法:
例如,添加
rake update_feed
,选择“每小时”和“:30”以在半小时内每小时更新一次订阅源。然后添加rake send_reminders,选择“每日”和“00:00”每天午夜发送提醒。
因此,在您的情况下,您应该将 heroku run myFile
更改为 myFile
到调度程序仪表板
【讨论】:
以上是关于运行文件的 heroku 调度程序命令是啥?的主要内容,如果未能解决你的问题,请参考以下文章
“找不到那个应用程序。”在控制台中运行 heroku 命令时
heroku ECONNREFUSED:为所有运行命令连接 ECONNREFUSED
python 无法打开文件'manage.py'-“heroku 运行 python manage.py 迁移命令输入”