gitlab_mr_release 0.1.0.beta3 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 94cf94381a5bd1173394a72a3fd1c2a449bf591d
4
- data.tar.gz: 81ebabf5fc28deba8dc76480346ef0421bc2bf20
3
+ metadata.gz: a608d0ab003591e98a59236c25878f5c6bab1438
4
+ data.tar.gz: 8a088a1fe042c9603f4c53afbf89cc8a037b6d99
5
5
  SHA512:
6
- metadata.gz: b1fe995b72cbc201c5cc86723f0175ed93397b3da479ba78e952fd7fa9b635627fb8e7c2ee8d15b8c1f278909d395c6a91248abb3eab42132a2cc2e9d3116fc0
7
- data.tar.gz: 16b613513bafe61fcbe4d990e65ac65ace851acc0f359deac96af4beffa1563c67a834d50d8abcf1025fa177a9ed543ddcdeaa40ce61384c6bf376dc4e87c840
6
+ metadata.gz: 23e6c973a58871243869d3a0c6735d3251811f584b6309ded732da1361eb3da45bc163871d31fa575dabdce0a8ddf36d3768f3634321baad0babf4e3dbcb3c62
7
+ data.tar.gz: 6830949e68a38c55aaa88e10381c5d3118e96dfc147862d35dead4a1fbf2405cdf8c3a253118c4647df771b01d221a69d7b59a8c69ac0d67d8c071490dea4144
data/CHANGELOG.md ADDED
@@ -0,0 +1,5 @@
1
+ ## Unreleased
2
+ [full changelog](http://github.com/sue445/rubicure/compare/v0.1.0...master)
3
+
4
+ ## v0.1.0
5
+ * First release
data/README.md CHANGED
@@ -1,33 +1,101 @@
1
1
  # GitlabMrRelease
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/gitlab_mr_release`. To experiment with that code, run `bin/console` for an interactive prompt.
4
-
5
- TODO: Delete this and the text above, and describe your gem
3
+ Release MergeRequest generator for [GitLab](https://about.gitlab.com/)
6
4
 
5
+ [![Gem Version](https://badge.fury.io/rb/gitlab_mr_release.svg)](https://badge.fury.io/rb/gitlab_mr_release)
7
6
  [![Build Status](https://travis-ci.org/sue445/gitlab_mr_release.svg?branch=master)](https://travis-ci.org/sue445/gitlab_mr_release)
8
7
  [![Code Climate](https://codeclimate.com/github/sue445/gitlab_mr_release/badges/gpa.svg)](https://codeclimate.com/github/sue445/gitlab_mr_release)
9
8
  [![Coverage Status](https://coveralls.io/repos/sue445/gitlab_mr_release/badge.svg?branch=master&service=github)](https://coveralls.io/github/sue445/gitlab_mr_release?branch=master)
10
9
  [![Dependency Status](https://gemnasium.com/sue445/gitlab_mr_release.svg)](https://gemnasium.com/sue445/gitlab_mr_release)
11
10
 
11
+ This is inspired by the [git-pr-release](https://github.com/motemen/git-pr-release)
12
+
13
+ ## Requirements
14
+
15
+ * Ruby v2.1+
16
+ * GitLab v7.11.0+
17
+
12
18
  ## Installation
13
19
 
14
- Add this line to your application's Gemfile:
20
+ ```
21
+ $ gem install gitlab_mr_release
22
+ ```
23
+
24
+ ## Usage
25
+ ### init
15
26
 
16
- ```ruby
17
- gem 'gitlab_mr_release'
27
+ Copy setting files. And edit these files.
28
+
29
+ ```sh
30
+ $ gitlab_mr_release init
31
+ create .env.gitlab
32
+ create gitlab_mr_release.md.erb
18
33
  ```
19
34
 
20
- And then execute:
35
+ ### create
36
+ ```sh
37
+ $ gitlab_mr_release create --source=develop --target=master
38
+ MergeRequest is created
21
39
 
22
- $ bundle
40
+ [Title] Release develop -> master
23
41
 
24
- Or install it yourself as:
42
+ [Description]
43
+ # MergeRequests
25
44
 
26
- $ gem install gitlab_mr_release
45
+ * [ ] !7 Add fresh @sue445
27
46
 
28
- ## Usage
47
+ [Url] http://example.com/your/project/merge_requests/15
48
+ ```
49
+
50
+ description is accepted MergeRequests title between `--source` and `--target`
51
+
52
+ ![merge_request](img/merge_request.png)
53
+
54
+ detail
55
+
56
+ ```sh
57
+ $ gitlab_mr_release help create
58
+ Usage:
59
+ gitlab_mr_release create -s, --source=SOURCE -t, --target=TARGET
60
+
61
+ Options:
62
+ -s, --source=SOURCE # Source branch (e.g. develop)
63
+ -t, --target=TARGET # Target branch (e.g. master)
64
+ [--title=TITLE] # MergeRequest title (default. 'Release :source -> :target')
65
+
66
+ Create merge requrst
67
+ ```
68
+
69
+ ## ProTip
70
+ ### .env.gitlab
71
+ Environment variables read from `~/.env.gitlab` and current `.env.gitlab`
72
+
73
+ `~/.env.gitlab`
74
+
75
+ ```
76
+ GITLAB_API_ENDPOINT=http://example.com/api/v3
77
+ GITLAB_API_PRIVATE_TOKEN=XXXXXXXXXXXXXXXXXXX
78
+ TEMPLATE_FILE=gitlab_mr_release.md.erb
79
+ ```
80
+
81
+ current `.env.gitlab`
82
+
83
+ ```
84
+ GITLAB_PROJECT_NAME=group/name
85
+ TEMPLATE_FILE=gitlab_mr_release.md.erb
86
+ ```
87
+
88
+ If defined both `~/.env.gitlab` and current `.env.gitlab`, current `.env.gitlab` is priority
89
+
90
+ ### variables in template
91
+ ```markdown
92
+ # MergeRequests
93
+ <% merge_requests.each do |mr| %>
94
+ * [ ] !<%= mr.iid %> <%= mr.title %> @<%= mr.author.username %>
95
+ <% end %>
96
+ ```
29
97
 
30
- TODO: Write usage instructions here
98
+ `merge_requests` is array of [MergeRequest](https://github.com/gitlabhq/gitlabhq/blob/master/doc/api/merge_requests.md#get-single-mr)
31
99
 
32
100
  ## Development
33
101
 
@@ -37,7 +105,7 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
37
105
 
38
106
  ## Contributing
39
107
 
40
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/gitlab_mr_release.
108
+ Bug reports and pull requests are welcome on GitHub at https://github.com/sue445/gitlab_mr_release.
41
109
 
42
110
 
43
111
  ## License
Binary file
@@ -11,7 +11,7 @@ module GitlabMrRelease
11
11
  DEFAULT_TEMPLATE = <<-MARKDOWN
12
12
  # MergeRequests
13
13
  <% merge_requests.each do |mr| %>
14
- * [ ] !<%= mr.iid %> <%= mr.title %>
14
+ * [ ] !<%= mr.iid %> <%= mr.title %> @<%= mr.author.username %>
15
15
  <% end %>
16
16
  MARKDOWN
17
17
 
@@ -64,16 +64,25 @@ module GitlabMrRelease
64
64
  )
65
65
 
66
66
  mr_url = "#{project.web_url}/merge_requests/#{mr.iid}"
67
- puts "MergeRequst is created: #{mr_url}"
67
+
68
+ message = <<-EOS
69
+ MergeRequest is created
70
+
71
+ [Title] #{mr.title}
72
+
73
+ [Description]
74
+ #{mr.description}
75
+
76
+ [Url] #{mr_url}
77
+ EOS
78
+
79
+ puts message
68
80
  end
69
81
 
70
82
  private
71
83
 
72
84
  def assert_env(name)
73
- unless ENV[name]
74
- puts "Error: Environment variable #{name} is required"
75
- exit!
76
- end
85
+ raise "Error: Environment variable #{name} is required" unless ENV[name]
77
86
  end
78
87
 
79
88
  def default_title
@@ -38,7 +38,7 @@ module GitlabMrRelease
38
38
 
39
39
  def generate_description(iids, template)
40
40
  merge_requests = iids.map { |iid| merge_request(iid) }
41
- ERB.new(template).result(binding)
41
+ ERB.new(template).result(binding).strip
42
42
  end
43
43
 
44
44
  def create_merge_request(source_branch:, target_branch:, title:, template:)
@@ -1,3 +1,3 @@
1
1
  module GitlabMrRelease
2
- VERSION = "0.1.0.beta3"
2
+ VERSION = "0.1.0"
3
3
  end
@@ -1,4 +1,4 @@
1
1
  # MergeRequests
2
2
  <% merge_requests.each do |mr| %>
3
- * [ ] !<%= mr.iid %> <%= mr.title %>
3
+ * [ ] !<%= mr.iid %> <%= mr.title %> @<%= mr.author.username %>
4
4
  <% end %>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitlab_mr_release
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.beta3
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - sue445
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-11-14 00:00:00.000000000 Z
11
+ date: 2015-11-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dotenv
@@ -177,6 +177,7 @@ files:
177
177
  - ".gitignore"
178
178
  - ".rspec"
179
179
  - ".travis.yml"
180
+ - CHANGELOG.md
180
181
  - Gemfile
181
182
  - LICENSE.txt
182
183
  - README.md
@@ -185,6 +186,7 @@ files:
185
186
  - bin/setup
186
187
  - exe/gitlab_mr_release
187
188
  - gitlab_mr_release.gemspec
189
+ - img/merge_request.png
188
190
  - lib/gitlab_mr_release.rb
189
191
  - lib/gitlab_mr_release/cli.rb
190
192
  - lib/gitlab_mr_release/project.rb
@@ -206,9 +208,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
206
208
  version: '0'
207
209
  required_rubygems_version: !ruby/object:Gem::Requirement
208
210
  requirements:
209
- - - ">"
211
+ - - ">="
210
212
  - !ruby/object:Gem::Version
211
- version: 1.3.1
213
+ version: '0'
212
214
  requirements: []
213
215
  rubyforge_project:
214
216
  rubygems_version: 2.4.5.1