bu_pr 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 54596c0e009bf87cf3ae9a97bb729ac246cfd901
4
- data.tar.gz: f24fee9674378beb3de263aa2697cae7fe783151
3
+ metadata.gz: a378ce215962223f4579793c8f83f8e26240d49a
4
+ data.tar.gz: dd89b9e076031789c9b8e347d6f5a9167217e440
5
5
  SHA512:
6
- metadata.gz: 958cffd7247c309166b0c49e16ad91519cb627fdf307d5eae71ce6143a863d10303325292ea3d0e258688f8c5210f2dda174d469658c773e6bf7a29e6c325f1f
7
- data.tar.gz: b55d196699098b60c69841df8edcda067cbf0e448c252eccd7238a63794be0e1eb32efdb01adf80aeac770bf16f6f54ee52f310f2618fdbf6ed70ed5dd451425
6
+ metadata.gz: e9a323893ebdf4506ddd47808aeb6e0b987a8a9695883d5db9b558cc14fbf712201cae200c2ce28e174a42f421f939a3a3c5ce4ed4ee72811dcd750569d0775d
7
+ data.tar.gz: 908fb84ded4440352d1d98cfb9f1de5e3470cd64c25356ba007d1531965639218cb72e6ba065101ae35ccbafb45b60284585ce6c0fd3539af1beb834f2285052
data/.travis.yml CHANGED
@@ -1,5 +1,10 @@
1
1
  sudo: false
2
2
  language: ruby
3
3
  rvm:
4
- - 2.3.1
5
- before_install: gem install bundler -v 1.13.6
4
+ - 2.1.0
5
+ - 2.2.0
6
+ - 2.3.0
7
+ - ruby-head
8
+ before_install: gem install bundler
9
+ matrix:
10
+ allow_failures: ruby-head
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # BuPr
2
2
 
3
+ [![Build Status](https://travis-ci.org/mmyoji/bu_pr.svg?branch=master)](https://travis-ci.org/mmyoji/bu_pr)
4
+
3
5
  Run `bundle update` and create its pull-request.
4
6
 
5
7
 
@@ -20,6 +22,8 @@ Or install it yourself as:
20
22
 
21
23
  ## Usage
22
24
 
25
+ Get Github access token from [this page](https://github.com/settings/tokens/new) with `repo` scope.
26
+
23
27
  ```rb
24
28
  require 'bu_pr'
25
29
 
@@ -45,10 +49,22 @@ BuPr.configure do |config|
45
49
  end
46
50
  ```
47
51
 
48
- then run the following command
52
+ then run the following commands
49
53
 
50
54
  ```sh
55
+ # Run all tasks
51
56
  $ bin/rake bu_pr:all
57
+
58
+ # If you want to execute each task,
59
+
60
+ # Run `bundle update` only
61
+ $ bin/rake bu_pr:bu
62
+
63
+ # Create pull-request
64
+ $ bin/rake bu_pr:pr
65
+
66
+ # Add gem diff comment
67
+ $ bin/rake bu_pr:diff
52
68
  ```
53
69
 
54
70
 
@@ -7,6 +7,7 @@ module BuPr
7
7
  module Handlers
8
8
  class Github
9
9
  attr_reader :base, :current_branch, :repo, :title, :token
10
+ attr_reader :linker
10
11
 
11
12
  def initialize(attrs = {})
12
13
  config = attrs[:config]
@@ -20,6 +21,22 @@ module BuPr
20
21
  end
21
22
 
22
23
  def call
24
+ number = create_pull_request
25
+ diff_comment(number)
26
+ end
27
+
28
+ def create_pull_request
29
+ res = client.create_pull_request \
30
+ repo,
31
+ base,
32
+ current_branch,
33
+ title
34
+
35
+ res[:number]
36
+ end
37
+
38
+ def diff_comment(pr_number)
39
+ load_linker(pr_number)
23
40
  linker.add_comment repo, pr_number, comment_content
24
41
  end
25
42
 
@@ -35,29 +52,12 @@ module BuPr
35
52
  "#{linker.make_compare_links.to_a.join("\n")}"
36
53
  end
37
54
 
38
- def linker
39
- @linker ||=
40
- begin
41
- ENV['OCTOKIT_ACCESS_TOKEN'] = token
42
-
43
- l = ::CompareLinker.new repo, pr_number
44
- l.formatter = ::CompareLinker::Formatter::Markdown.new
45
-
46
- l
47
- end
48
- end
49
-
50
- def pr_number
51
- @pr_number ||=
52
- begin
53
- res = client.create_pull_request \
54
- repo,
55
- base,
56
- current_branch,
57
- title
55
+ def load_linker(pr_number)
56
+ ENV['OCTOKIT_ACCESS_TOKEN'] = token
58
57
 
59
- res[:number]
60
- end
58
+ @linker = ::CompareLinker.new repo, pr_number
59
+ @linker.formatter = ::CompareLinker::Formatter::Markdown.new
60
+ @linker
61
61
  end
62
62
  end
63
63
  end
data/lib/bu_pr/runner.rb CHANGED
@@ -21,7 +21,7 @@ module BuPr
21
21
  end
22
22
 
23
23
  def call
24
- if valid? && bundle_update && !git.diff?
24
+ if bundle_update && !git.diff?
25
25
  puts "no update"
26
26
  exit
27
27
  end
@@ -32,6 +32,10 @@ module BuPr
32
32
  handler.call
33
33
  end
34
34
 
35
+ def bundle_update
36
+ valid? && _bundle_update
37
+ end
38
+
35
39
  def config
36
40
  self.class.config
37
41
  end
@@ -50,7 +54,7 @@ module BuPr
50
54
 
51
55
  private
52
56
 
53
- def bundle_update
57
+ def _bundle_update
54
58
  return true if system("bundle update")
55
59
 
56
60
  raise "Error(s) happened"
@@ -1,5 +1,44 @@
1
1
  namespace :bu_pr do
2
- desc "Run `bundle update` and create pull-request"
2
+ desc "Run `bundle update`"
3
+ task bu: :environment do
4
+ puts "Running `bundle update`..."
5
+
6
+ BuPr::Runner.new.bundle_update
7
+
8
+ puts "Finished `bundle update`"
9
+ end
10
+
11
+ desc "Create pull-request"
12
+ task pr: :environment do
13
+ puts "Creating pull-request..."
14
+
15
+ r = BuPr::Runner.new
16
+ handler = BuPr::Handlers::Github.new \
17
+ config: r.config,
18
+ current_branch: r.git.current_branch
19
+
20
+ pr_number = handler.create_pull_request
21
+
22
+ puts "Finished: p-r number is `#{pr_number}`"
23
+ end
24
+
25
+ desc "Add gem diff comment"
26
+ task diff: :environment do
27
+ pr_number = ENV.fetch("PR_NUMBER")
28
+
29
+ puts "Commenting..."
30
+
31
+ r = BuPr::Runner.new
32
+ handler = BuPr::Handlers::Github.new \
33
+ config: r.config,
34
+ current_branch: r.git.current_branch
35
+
36
+ handler.diff_comment(pr_number)
37
+
38
+ puts "Finished!"
39
+ end
40
+
41
+ desc "Run bu_pr all tasks"
3
42
  task all: :environment do
4
43
  BuPr::Runner.call
5
44
  end
data/lib/bu_pr/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module BuPr
2
- VERSION = "0.2.0"
2
+ VERSION = "0.3.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bu_pr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Masaya Myojin
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-11-15 00:00:00.000000000 Z
11
+ date: 2016-11-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: compare_linker
@@ -112,7 +112,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
112
112
  version: '0'
113
113
  requirements: []
114
114
  rubyforge_project:
115
- rubygems_version: 2.5.1
115
+ rubygems_version: 2.5.2
116
116
  signing_key:
117
117
  specification_version: 4
118
118
  summary: Simple bundle update p-r creator