Hello I need to set permissions for editor role. The editors need cron to send maillists/newsletters. How do I make cron available for them? It seems there is no way.
The permission to run cron in Drupal 7 is Administer site configuration.
Warning: Give to trusted roles only; this permission has security implications.
It can debated whether it is a good idea to give permission to the editor role, as opposed to running cron automatically every five minutes.
However, in my use case cron does some heavy lifting every time it runs, so running it every five minutes would make my site very slow, creating a bad UX. I've scheduled it to just run cron automatically once per day (at 3 am). I use Notify to distribute newsletters, and it in turn relies on cron, so I permit trusted editors who use the site for sending out newsletters hit cron manually if there is some urgency about getting a newsletter distributed.
The path to the Drupal cron UI is
admin/config/system/cron. It is probably a good idea to add this path to some menu the editor has access to make it easy to find.
You don't need any Drupal permission to run cron.php. The only permission Drupal uses is for the administrative page containing the link to run cron, but on Drupal 6 you can just use the link to http://yoursite.com/cron.php. On Drupal 7, you need to use the cron key, or Drupal will refuse to run cron, but the correct link is given on admin/config/system/cron.
That said, it is probably excessive to run cron tasks more frequently to just be sure the emails are sent more quickly, since cron tasks on Drupal don't do just that. I would rather investigate on which method the module you are using has to allow you to send the email more often, or immediately.
I personally wouldn't. If e-mails need to be sent regularly, I'd just set your server to hit Cron every 5 or so minutes. That way, when an editor sends an e-mail through your site, Cron will run at MOST 5 minutes later and send the message. If you feel every 5 mintues is too much, you can use Elysia Cron to fine tune what runs at what time (eg you can have your mail stuff run every 5 minutes, and everything else on the hour..day..week etc.).