On Mon, Mar 01, 2021 at 10:54:25AM +0800, Cao Xueliang wrote:
Yaml file define: delimiter: to: mai1, mail3
^ mail1
Thanks, Luan Shengde
bcc: mail2, mail3
The mail_bisect_result calls parse_mail_list('delimiter') to get the delimiter mail list.
Signed-off-by: Cao Xueliang caoxl78320@163.com
lib/mail_bisect_result.rb | 14 +++++++++++--- lib/mail_list.yaml | 3 +++ lib/parse_mail_list.rb | 13 +++++++++++++ 3 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 lib/mail_list.yaml create mode 100644 lib/parse_mail_list.rb
diff --git a/lib/mail_bisect_result.rb b/lib/mail_bisect_result.rb index 104f098..23a8ade 100644 --- a/lib/mail_bisect_result.rb +++ b/lib/mail_bisect_result.rb @@ -6,6 +6,7 @@ require_relative 'git' require_relative 'es_query' require_relative 'constants' require_relative 'mail_client' +require_relative 'parse_mail_list' require_relative 'assign_account_client'
# compose and send email for bisect result @@ -22,10 +23,17 @@ class MailBisectResult @git_commit = GitCommit.new(@work_dir, @commit_id) @to = @git_commit.author_email # now send mail to review
- @bcc = 'caoxl@crystal.ci, caoxl78320@163.com, huming15@163.com, wfg@mail.ustc.edu.cn'
@bcc = 'caoxl78320@163.com, huming15@163.com, wfg@mail.ustc.edu.cn'
end
def parse_mail_info
mail_hash = parse_mail_list('delimiter')
@to = mail_hash['to'] if mail_hash.key?('to')
@bcc = mail_hash['bcc'] if mail_hash.key?('bcc') end
def create_send_email
parse_mail_info send_report_mail(compose_mail) send_account_mail rm_work_dir
@@ -35,7 +43,7 @@ class MailBisectResult subject = "[Compass-CI][#{@repo.split('/')[1]}] #{@commit_id[0..9]} #{@bisect_error[0].split("\n")[0]}" prefix_srv = "http://#%7BSRV_HTTP_DOMAIN%7D:#%7BSRV_HTTP_PORT%7D" bisect_job_url = ENV['result_root'] ? "bisect job result directory:\n#{prefix_srv}#{ENV['result_root']}\n" : ''
- bisect_report_doc = "bisect email doc:\nhttps://gitee.com/wu_fengguang/compass-ci/blob/master/doc/bisect_email.en.md..."
- report_doc = "bisect email doc:\nhttps://gitee.com/wu_fengguang/compass-ci/blob/master/doc/bisect_email.en.md..." pkgbuild_repo_url = "PKGBUILD:\n#{prefix_srv}/git/#{@pkgbuild_repo}\n" first_bad_commit_job_url = "first bad commit job result directory:\n#{prefix_srv}#{@first_bad_commit_result_root}\n"
@@ -58,7 +66,7 @@ class MailBisectResult #{pkgbuild_repo_url} #{first_bad_commit_job_url} #{bisect_job_url}
- #{bisect_report_doc}
- #{report_doc} Regards, Compass CI team BODY
diff --git a/lib/mail_list.yaml b/lib/mail_list.yaml new file mode 100644 index 0000000..d982c93 --- /dev/null +++ b/lib/mail_list.yaml @@ -0,0 +1,3 @@ +delimiter:
- to: caoxl78320@163.com
- bcc: caoxl78320@163.com, wfg@mail.ustc.edu.cn, ljx.joe@qq.com, huming15@163.com
diff --git a/lib/parse_mail_list.rb b/lib/parse_mail_list.rb new file mode 100644 index 0000000..49b5c88 --- /dev/null +++ b/lib/parse_mail_list.rb @@ -0,0 +1,13 @@ +# SPDX-License-Identifier: MulanPSL-2.0+ +# frozen_string_literal: true
+require 'yaml'
+def parse_mail_list(type)
- content = {}
- mail_list_yaml = './mail_list.yaml'
- content = YAML.safe_load(File.open(mail_list_yaml)) if FileTest.exists?(mail_list_yaml)
- return {} unless content[type]
- return content[type]
+end
2.23.0