- Dir.chdir ENV['ROBOT_TMP_REPOS_DIR']
That's essentially a tmp dir? /tmp/xxx could be enough, no need make it configurable.
Thanks, Fengguang
- %x(/usr/bin/git clone #{repo_url} #{repo_dir})
- email_index = %x(/usr/bin/git -C #{repo_dir} show #{commit_id}).index @my_email
- FileUtils.rm_rf repo_dir
- check_gitee_commit_exist(email_index)
- end
- def check_gitee_commit_exist(email_index)
- return unless email_index.nil?
- error_message = 'Your commit url is not a valid commit url.'
- send_error_email(error_message)
- raise error_message
- end
- def check_out_pub_key
- pub_key = @mail_content.part[1].body.decoded if @mail_content.part[1].filename == 'id_rsa.pub'
- check_pub_key(pub_key)
- return pub_key
- end
- def check_pub_key(pub_key)
- return unless pub_key.nil?
- error_message = 'No pub_key found'
- send_error_email(error_message)
- raise error_message
- end
+end
+# apply jumper account for user +class ApplyAccount
- def initialize(apply_account_info)
- @apply_account_info = apply_account_info
- end
- def apply_jumper_account
- account_info_str = %x(curl -XGET "#{ENV['JUMPER_HOST']}:#{ENV['JUMPER_PORT']}/assign_account" \
-d '#{@apply_account_info.to_json}')
- account_info = JSON.parse account_info_str
- check_account_info(account_info)
- return account_info
- end
- def check_account_info(account_info)
- return unless account_info['account'].nil?
- error_message = 'No more available jumper account.'
- send_error_email(error_message)
- raise error_message
- end
+end
+# build mail data and send mail +class SendMail
- def initialize(send_mail_info)
- @send_mail_host = %x(/sbin/ip route |awk '/default/ {print $3}').chomp
- @my_email = send_mail_info['my_email']
- @my_name = send_mail_info['my_name']
- @error_message = send_mail_info['error_message']
- @my_info = send_mail_info['my_info']
- end
- def send_uuid_email
- email_msg = <<~EMAIL_MESSAGE
To: #{@my_email}
Subject: [compass-ci] Account Ready
Dear #{@my_name},
Thank you for joining us.
You can use the following info to submit jobs:
1) setup default config
run the following command to add the below setup to default config file
mkdir -p ~/.config/compass-ci/defaults/
cat >> ~/.config/compass-ci/defaults/\\${USER}.yaml <<-EOF
my_uuid: #{@my_info['my_uuid']}
my_email: #{@my_info['my_email']}
my_name: #{@my_info['my_name']}
EOF
2) download lkp-tests and dependencies
run the following command to install the lkp-test and effect the configuration
git clone https://gitee.com/wu_fengguang/lkp-tests.git
cd lkp-tests
make install
source ${HOME}/.bashrc && source ${HOME}/.bash_profile
3) submit job
reference: https://gitee.com/wu_fengguang/compass-ci/blob/master/doc/tutorial.md
find how to write job yaml
submit jobs/netperf.yaml
regards
compass-ci
- EMAIL_MESSAGE
- send_mail(email_msg)
- end
- def send_error_email
- email_msg = <<~EMAIL_MESSAGE
To: #{@my_email}
Subject: apply account failed
Dear #{@my_name}
Your application for account failed with following errors
#{@error_message}
regards
compass-ci
- EMAIL_MESSAGE
- send_mail(email_msg)
- end
- def send_mail(email_msg)
- %x(curl -XPOST "#{@send_mail_host}:#{ENV['SEND_MAIL_PORT']}/send_mail_text" -d "#{email_msg}")
- end
+end
2.23.0