Closed ssacard closed 13 years ago
Ah mais le pb est plus grave que ça en fait : quand on se connecte avec facebook pour la première fois, le user n'est pas créé dans la db.
Bien sûr, ça fonctionne comme prévu en local. Heroku commence à m'agacer :/
On peut déployer sur une autre plateforme si besoin, pas de soucis.
Pourquoi est-ce dû à Heroku ?
Le 19 juil. 2011 à 11:57, oelmekki a écrit :
Ah mais le pb est plus grave que ça en fait : quand on se connecte avec facebook pour la première fois, le user n'est pas créé dans la db.
Bien sûr, ça fonctionne comme prévu en local. Heroku commence à m'agacer :/
Reply to this email directly or view it on GitHub: https://github.com/ssacard/mon-dvdclub/issues/37#issuecomment-1605785
Pas certain que ça vienne de heroku, je pencherais plus pour l'instant pour un problème de subdomain, comme c'était le cas pour la déconnexion facebook.
Le problème avec heroku, c'est que quand on a un problème en prod, il n'y a pas de manière simple de le debugger : on est obligé pour chaque test de faire un commit en local et de le pusher. Il y a bien la console rails, mais elle n'est que de peu d'utilité quand le problème concerne un service tiers, comme c'est le cas avec facebook.
Lorsqu'on sera en rails-3, on pourra mettre l'app sur mon server de pré-prod rails, si tu veux. En utilisant capistrano, le déploiement est aussi simple qu'avec heroku et se résume en une commande : cap deploy. Ça crée une nouvelle version de l'app dans le fs, migre la db, restart le server, et tout autre tâche qu'on veut automatiser. ET ça permet de se connecter en ssh pour aller voir ce qui ne va pas :)
Qu'est-ce qu'on pourrait voir sur un serveur qu'on ne peut pas voir sur Heroku avec la commande "heroku logs" ?
Le 19 juil. 2011 à 12:14, oelmekki a écrit :
Pas certain que ça vienne de heroku, je pencherais plus pour l'instant pour un problème de subdomain, comme c'était le cas pour la déconnexion facebook.
Le problème avec heroku, c'est que quand on a un problème en prod, il n'y a pas de manière simple de le debugger : on est obligé pour chaque test de faire un commit en local et de le pusher. Il y a bien la console rails, mais elle n'est que de peu d'utilité quand le problème concerne un service tiers, comme c'est le cas avec facebook.
Lorsqu'on sera en rails-3, on pourra mettre l'app sur mon server de pré-prod rails, si tu veux. En utilisant capistrano, le déploiement est aussi simple qu'avec heroku et se résume en une commande : cap deploy. Ça crée une nouvelle version de l'app dans le fs, migre la db, restart le server, et tout autre tâche qu'on veut automatiser. ET ça permet de se connecter en ssh pour aller voir ce qui ne va pas :)
Reply to this email directly or view it on GitHub: https://github.com/ssacard/mon-dvdclub/issues/37#issuecomment-1605872
Par exemple ici, on a un pb dans la méthode facebook_connect du controller users. Cette méthode prend en paramètre des arguments cryptiques fournis par facebook. Elle ne génère pas d'erreur, il n'y a juste pas d'user créé.
Si je voulais la "simuler", il faudrait d'abord que je retrouve les arguments passés par facebook et que je les utilise en console. Painful.
Étant donné que ça dépend d'une requête venant d'un service tiers, c'est l'une des rares occasions ou c'est plus pratique de mettre des infos de debug dans la méthode concernée plutôt que d'utiliser la console rails.
Si je peux me connecter en ssh, je modifie le fichier sur le server de prod pour faire appaitre des infos dans les logs, ce qui me permet éventuellement de le reproduire en local.
Avec heroku, je dois modifier le fichier en local, commit la modif de debug, la push sur heroku, puis si ça ne suffit pas, remodifier le fichier en local, le recommit, le repush, etc. C'est non seulement plus long et plus pénible, mais en plus ça pourri les logs git.
OK je comprends.
Heroku est effectivement une plateforme de "prod", l'alternative serait d'avoir un environnement de dev similiaire (domaine en www.mondvdclub.fr) ? Mais cela nécessite de se passer de Webrick, et d'avoir une conf Apache+Passenger ?
Le 19 juil. 2011 à 12:23, oelmekki a écrit :
Par exemple ici, on a un pb dans la méthode facebook_connect du controller users. Cette méthode prend en paramètre des arguments cryptiques fournis par facebook. Elle ne génère pas d'erreur, il n'y a juste pas d'user créé.
Si je voulais la "simuler", il faudrait d'abord que je retrouve les arguments passés par facebook et que je les utilise en console. Painful.
Étant donné que ça dépend d'une requête venant d'un service tiers, c'est l'une des rares occasions ou c'est plus pratique de mettre des infos de debug dans la méthode concernée plutôt que d'utiliser la console rails.
Si je peux me connecter en ssh, je modifie le fichier sur le server de prod pour faire appaitre des infos dans les logs, ce qui me permet éventuellement de le reproduire en local.
Avec heroku, je dois modifier le fichier en local, commit la modif de debug, la push sur heroku, puis si ça ne suffit pas, remodifier le fichier en local, le recommit, le repush, etc. C'est non seulement plus long et plus pénible, mais en plus ça pourri les logs git.
Reply to this email directly or view it on GitHub: https://github.com/ssacard/mon-dvdclub/issues/37#issuecomment-1605926
Ce n'est pas une urgence, cela dit, c'est pénible mais je peux me débrouiller :)
Perso, j'utilise nginx + unicorn, sur mon server. C'est plus une config de prod que de pré-prod, parce que le gros intérêt de unicorn est d'être capable de redémarrer sans interrompre les connexions en cours (idéal pour les sites à fort traffic, c'est d'ailleurs la config utilisée par github). Mais ça ne fait pas de mal en pré-prod/dév non plus :)
Ah, ça ne change rien en local, bien sûr, tu peux utiliser le server que tu veux.
OK !
Le 19 juil. 2011 à 12:32, oelmekki a écrit :
Ce n'est pas une urgence, cela dit, c'est pénible mais je peux me débrouiller :)
Perso, j'utilise nginx + unicorn, sur mon server. C'est plus une config de prod que de pré-prod, parce que le gros intérêt de unicorn est d'être capable de redémarrer sans interrompre les connexions en cours (idéal pour les sites à fort traffic, c'est d'ailleurs la config utilisée par github). Mais ça ne fait pas de mal en pré-prod/dév non plus :)
Reply to this email directly or view it on GitHub: https://github.com/ssacard/mon-dvdclub/issues/37#issuecomment-1605966
fixed
Merci !
Le 19 juil. 2011 à 14:05, oelmekki a écrit :
fixed
Reply to this email directly or view it on GitHub: https://github.com/ssacard/mon-dvdclub/issues/37#issuecomment-1606399
1/ Créer un compte via Facebook ou en direct => On reçoit un mail de bienvenu
2/ Se déconnecter et se reconnecter via Facebook ou en direct => On reçoit à nouveau le mail, on ne devrait pas .
Merci !