J'essaie de configurer un verrou sur rufus-scheduler pour empêcher mes tâches planifiées de s'exécuter plusieurs fois. Quand je déploie cette production, je reçois l'erreur suivante:Autorisation de Rufus-Scheduler refusée lors de la définition de rufus-scheduler.lock
nginx_error.log — Message from application: Permission denied @ rb_sysopen - .rufus-scheduler.lock (Errno::EACCES)
Je suis en Ubuntu 16.04.2 et Rails 4.2 sur l'océan numérique. Cela fonctionne bien sans le verrou, mais toutes les tâches planifiées sont exécutées deux fois. Voici le code avec le verrou ajouté qui déclenche le problème d'autorisation:
SCHEDULER = Rufus::Scheduler.new(:lockfile => ".rufus-scheduler.lock")
Cet environnement a été configuré automatiquement à l'aide de Cloud66.
J'ai essayé la solution b, mais il a conduit au même problème: nginx_error.log - Message de l'application: Permission refusée @ rb_sysopen - /tmp/.rufus-scheduler.lock (Errno :: EACCES) –
Ensuite, vous devez donnez plus de droits à votre utilisateur, ou lancez votre processus Ruby avec un utilisateur qui a plus de droits. Vous devriez mettre à jour la question et indiquer comment vous avez installé (quel Digital Ocean guide vous avez suivi), sinon il sera difficile de vous aider – jmettraux