我试图使用heroku插件“ scheduler”运行myFile
。
简化的文件结构(MyProject是根目录)
MyProject -> bin -> myFile
MyFile
#!/usr/bin/env node
const foo = require('myFunc');
foo();
process.exit();
从我的PC本地从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”的正确命令是什么?
没有关于此事的文档
答案 0 :(得分:0)
根据Heroku Scheduler Documentation,您应使用heroku run myFile
来测试命令在本地是否起作用。
该文档还说明了如何使用Scheduler仪表板中的滑轨进行操作的方法:
例如,添加
rake update_feed
,选择“小时”和“:30”以在半小时内每小时更新一次提要。然后添加rake send_reminders,分别选择“每日”和“ 00:00”,每天在午夜发送提醒。
因此,在您的情况下,应将调度程序仪表板上的heroku run myFile
更改为myFile