Environnement de développement : meilleure façon d'amorcer le premier compte administrateur sans e-mail ?

J’expérimente avec l’image Docker discourse/discourse_dev (sur un ordinateur portable Windows 11) et j’ai remarqué un petit point de friction dans le flux de travail des développeurs.

Lors de l’exécution de Discourse en mode développement sans configuration d’e-mail sortant :
\t1.\tVous pouvez accéder à la page d’inscription/connexion via Ember CLI (localhost:4200).
\t2.\tVous pouvez créer un compte utilisateur.
\t3.\tMais la connexion est bloquée car la confirmation par e-mail est requise.

La solution de contournement semble être d’activer manuellement le compte dans la console Rails, par exemple :

u = User.find_by(username: "admin")
u.approved = true
u.email_tokens.update_all(confirmed: true, expired: true)
u.save!

Cela fonctionne, mais je me demandais :

Existe-t-il un flux de travail de développement recommandé pour amorcer le premier compte administrateur lorsque l’e-mail n’est pas configuré ?

Par exemple :
\t•\tLes développeurs devraient-ils normalement configurer SMTP même en environnement de développement ?
\t•\tExiste-t-il une tâche d’aide pour cela (rake admin:create, etc.) ?
\t•\tSerait-il judicieux que le conteneur de développement autorise la connexion du premier utilisateur sans confirmation par e-mail ?

Je pose la question principalement pour documenter un processus d’installation plus fluide pour les nouveaux développeurs qui expérimentent avec le conteneur de développement.

Oui, il en existe une :

2 « J'aime »

Merci ! Cela résout le problème - je n’étais pas tombé sur bin/rails admin:create en expérimentant avec le conteneur discourse_dev.

Ce qui m’a initialement confus, c’est que le flux d’inscription de l’interface utilisateur normale fonctionne jusqu’au point de création du compte, mais la connexion est ensuite bloquée par la confirmation par e-mail si l’SMTP n’est pas configuré.

Pour quelqu’un qui explore simplement l’environnement de développement, cela donne l’impression que le flux de connexion est cassé à moins de connaître la tâche d’aide.

Il pourrait être utile de mentionner explicitement bin/rails admin:create dans la documentation de configuration du développement pour le conteneur de développement Docker, car les nouveaux contributeurs n’ont souvent pas de configuration SMTP.

Je ne suis pas sûr que ce soit nécessaire dans ce guide car il est indiqué

Donc, la création de l’utilisateur administrateur semble déjà faire partie du flux de travail

1 « J'aime »

Si vous avez besoin d’un accès par e-mail dans votre environnement de développement, vous pouvez également exécuter mailhog.

Tout ce que vous avez à faire est d’ouvrir une nouvelle ligne de commande dans votre répertoire Discourse et d’exécuter mailhog. Ensuite, si vous visitez localhost:8025, vous pourrez voir les e-mails qui seraient normalement envoyés, sans avoir besoin de configurer quoi que ce soit.

2 « J'aime »