Created
May 31, 2017 10:23
-
-
Save ota42y/0eddfa230e82df902c2e8b532cb453be to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 環境変数GITHUB_TOKENの設定が必要 | |
# LABEL_NAMEに設定した名前のラベルをIssueに付けて作成する | |
# Issueの名前はrubocopのルールの名前と完全に一致する | |
# old_rubocop_rule.ymlの中に同じルールがあった場合はその内容をbodyに加える | |
require 'yaml' | |
require 'octokit' | |
LABEL_NAME = 'rubocop-auto-config' | |
client = Octokit::Client.new(:access_token => ENV['GITHUB_TOKEN']) | |
rubocop_todo = YAML.load(open('.rubocop_todo.yml').read) | |
old_rubocop = YAML.load(open('old_rubocop_rule.yml').read) | |
repo = 'username/reponame' | |
options = Hash.new | |
options[:labels] = LABEL_NAME | |
cops = rubocop_todo.keys | |
cops.each do |cop| | |
old = old_rubcop[cop] | |
now = rubocop_todo[cop] | |
body_ar = [] | |
body_ar << "# now\n" + now.map{|k, v| "## #{k} \n #{v}"}.join("\n") | |
body_ar << "# old rubocop\n" + old.map{|k, v| "## #{k} \n #{v}"}.join("\n") if old | |
client.create_issue(repo, cop, body_ar.join("\n"), options) | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment