作为一个项目管理平台,必须能够通知项目成员有关项目和任务的各种状态变化。这也是一种典型的观察者模式。开发人员可以跟踪某个任务,当任务状态、备注、文档、优先级等变化时开发人员就可以得到通知。
对于新配置的 Redmine ,需要创建用户,还需要给新建的用户发一封邮件,告诉他帐号、 Redmine 平台地址等相关信息。
因此配置邮件通知是第一步,必须要做的事情。
配置文件
config/configuration.yml 是 Redminde 的配置文件,里面有非常多的选项,邮件通知、附件保存地址、 SCM 、rmagick……简直是乱花渐欲迷人眼啊。
什么, config 目录下木有这个文件?啊,忘了说了,安装完成后,的的确确查无此人,你需要复制 configuration.yml.example 文件,然后把 .example 后缀去掉。
顺便提一句,建议通过文件夹选项中的查看标签,把“隐藏已知文件类型的扩展名”这个选项给干掉,不然容易出错。
基础的邮件服务器及帐号配置
用文本编辑器打开 configuration.yml 文件,找到下面这块内容:
- email_delivery:
- delivery_method: :smtp
- smtp_settings:
- address: smtp.example.net
- port: 25
- domain: example.net
- authentication: :login
- user_name: "redmine@example.net"
- password: "redmine"
修改 address 选项配置你的邮件服务器。 port 是端口。 user_name 配置供 Redmine 使用的邮件账号, Redmine 向用户发送邮件时就使用它,因此你还要设置 password 。
就这么简单了。
问题状态变更通知
我们在 configuration.yml 中设置了基本的邮件服务器和帐号,确保 Redmine 在需要时可以发邮件。而 Redmine 会在什么条件下发送邮件给用户呢?这个需要登录 Redmine 管理平台类设置。
一图胜千言:
看到了吧,你只要勾选需要发送邮件通知的动作即可。
页面下方有个保存按钮,一定要点啊。每一类配置,如一般、认证、问题跟踪、邮件通知等等,修改了之后都要点保存,这里页面的保存是针对标签的,不是全局的,如果你不点它,抱歉,再来吧。
OK,邮件通知现在应该可以工作啦。
测试邮件通知提示"hostname was not match with the server certificate"
解决方法:
修改redmine/config/configuration.yml
82行到96行
- # default configuration options for all environments
- default:
- # Outgoing emails configuration (see examples above)
- email_delivery:
- delivery_method: :smtp
- smtp_settings:
- address: smtp.kingmed.com.cn
- port: 25
- domain: kingmed.com.cn
- authentication: :login
- user_name: app
- password: "******"
- enable_starttls_auto: true
- openssl_verify_mode: 'none'
增加一行 openssl_verify_mode: 'none'
重启服务即可