“咕噜”后生成“heroku run fileName”

要了解更多关于Heroku的日程安排,我读了这篇文章,并构build了它所描述的应用程序。 这篇文章的关键部分是当我能够heroku run numCheck和执行numCheck文件内的代码 。 经过testing, heroku run numCheck工作,我能够安排在Heroku经常发生的事件就好了。

我用哟angular-fullstack来创build我的应用程序, 天使洞察和它的function。 不过,我想添加heroku的调度function,但我陷入了困境。 我的问题是,我运行grunt build后,我无法在dist文件夹中运行heroku run refresh 。 这是我特别试过的…

  1. 在Grunt构build之前添加了bin / refresh(下面的刷新代码)
  2. grunt构build完成后,将bin / refresh直接添加到Dist文件夹中
  3. 试过heroku运行任何文件后,git与heroku高手同时尝试

““““

 #!/usr/bin/env node var sendgrid = require('sendgrid')( process.env.SENDGRID_USERNAME, process.env.SENDGRID_PASSWORD ); var num1 = Math.ceil(Math.random() * 100); var num2 = Math.ceil(Math.random() * 100); var comparator; if (num1 > num2) { comparator = "greater than"; } else if (num1 < num2) { comparator = "less than"; } else { comparator = "equal to"; } sendgrid.send({ to: 'andrewscheuermann@gmail.com', from: 'scheduler@tester.com', subject: 'Num1 v Num2', text: (num1 + ' is ' + comparator + " " + num2 + ".") }, function(err, json) { if (err) { console.error(err); } 

我真的陷入困境,任何见解都非常感谢!

对于angular度发生器,您必须小心地覆盖dist目录。 每当你grunt build你就要开始一个干净的dist目录。

步骤应该是这样的:

  1. grunt build
  2. cp refresh dist/refresh
  3. cd dist && git commit
  4. git push heroku master
  5. heroku run refresh

主要缺失的步骤是,你必须复制后复制的文件提交到dist ,否则heroku不会得到它。 你总是可以做heroku run ls或者heroku run bash来查看你的文件是否在那里。

之后,你应该看看你的Gruntfile.js ,以确保每次refresh ,你可能想看看copy任务。