Skip to content

Resolve "Remind "Milestone ending" in Slack"

佳濠 高请求将37-remind-milestone-ending-in-slack合并到master

What does this MR do and why?

To remind milestone ending, we should get all members of dev-team. So I modify bin/generate_members, adding properties 'slack_real_name' to find relationship between slack real name and jihulab username of each member. I also use this doc to regenerate each member's triage/config/members/XXX.yml file.

I designed a function jihu_remind_milestone_ending_in_slack to send message to slack. First it will call proper_date_for_remind_milestone_ending_in_slack? to check if today is proper for reminding milestone ending in slack. Then it will call jihu_remind_milestone_ending_in_slack_message to get the slack message string whose format is similar to message showed in #37 (closed) .

To get the message, jihu_remind_milestone_ending_in_slack_message will call dev_members_to_remind_milestone_ending. dev_members_to_remind_milestone_ending calls dev_team_members to get all members related to Dev1 and Dev2. Then dev_members_to_remind_milestone_ending scan every dev team member, calling jihulab api to get number of opened issue of each relative member and package these information into a array of hash.

After that, jihu_remind_milestone_ending_in_slack_message will generate message string according to the array of hash. Then jihu_remind_milestone_ending_in_slack will call slack api to send this message string to channel "engineering-internal".

How to set up and validate locally

Using bundle exec rspec to validate locally.

Closes #37 (closed)

佳濠 高 编辑于

合并请求报告