SMTP 密码在入职流程中设置

在入职配置步骤中,系统要求添加 SMTP 密码,我们只需直接粘贴密码即可。但结果发现这会导致认证失败,因为密码被写成了 "password" 的格式,而 SMTP 服务器并不接受这种格式进行认证。

因此,解决方法是手动修改 app.yml 文件,移除引号,然后重启 Discourse,问题即可解决。

我们能否更改这一行为?

您的密码是否包含反斜杠或其他特殊字符?在大多数情况下它确实能按预期工作,但由于正则表达式和 sed 的特性,它稍显脆弱。您是许久以来第一位提出此问题的人(而且您还知道如何解决)。

如果您能想出办法让它正常工作,我相信提交一个 PR 会被接受(尽管这个决定不是我做的)。

我正在使用 SendGrid 的标准方法生成私钥密码。您说得对,这可能是因为正则表达式中的某些字符导致的。

我很乐意为此做出贡献,毕竟这不算什么大问题。但我刚接触 Discourse 贡献,能否指点我一下方向(是哪个组件负责此功能)?

这是 discourse_docker 中的 discourse-setup 脚本。

我想只需要修复执行替换的 sed 调用。如果你在这里提出修正建议,我可以查看一下。