gitlab_awesome_release 0.1.0 → 0.1.1
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 +4 -4
- data/.gitlab-ci.yml +81 -4
- data/.rubocop.yml +8 -0
- data/CHANGELOG.md +6 -1
- data/Gemfile +1 -1
- data/README.md +0 -1
- data/gitlab-ci/rspec.sh +3 -0
- data/gitlab-ci/rubocop.sh +3 -0
- data/gitlab-ci/setup.sh +3 -0
- data/gitlab_awesome_release.gemspec +5 -5
- data/lib/gitlab_awesome_release.rb +0 -1
- data/lib/gitlab_awesome_release/cli.rb +68 -63
- data/lib/gitlab_awesome_release/gitlab_logging_ext.rb +10 -3
- data/lib/gitlab_awesome_release/project.rb +37 -33
- data/lib/gitlab_awesome_release/version.rb +1 -1
- metadata +21 -19
- data/script/build.sh +0 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: faf0baaeedceda64b9174c9bb51eee530f0318e8
|
|
4
|
+
data.tar.gz: 1fc19a40157181302624ba03bf87e52559e1a1bf
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 6e45e224237477007cb9cc328f7d7bf3e5ccf95b48b4c30edb49a4fdb98c0c2fe27d1475f483baf40d8c6e743365a3f96ef652c7edc89386e6ad3a8990901199
|
|
7
|
+
data.tar.gz: 4ecd3077daca1765e1fb710cdb65b06579cc450e14aa7dcfd488132aa30479f37eafa8c2ef4b6d15b18e47385e18ab65a4516be95aec0749e337e89b2c84e602
|
data/.gitlab-ci.yml
CHANGED
|
@@ -1,9 +1,86 @@
|
|
|
1
1
|
stages:
|
|
2
2
|
- test
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
.job_template: &job_definition
|
|
5
|
+
variables:
|
|
6
|
+
CI: "true"
|
|
7
|
+
BUNDLE_CACHE: "vendor/bundle/"
|
|
8
|
+
|
|
9
|
+
cache:
|
|
10
|
+
untracked: true
|
|
11
|
+
key: "$CI_BUILD_NAME"
|
|
12
|
+
paths:
|
|
13
|
+
- vendor/bundle/
|
|
14
|
+
|
|
15
|
+
before_script:
|
|
16
|
+
- ./gitlab-ci/setup.sh
|
|
17
|
+
|
|
5
18
|
stage: test
|
|
19
|
+
|
|
20
|
+
except:
|
|
21
|
+
- tags
|
|
22
|
+
|
|
23
|
+
ruby2.1:rspec:
|
|
24
|
+
<<: *job_definition
|
|
25
|
+
image: drecom/centos-ruby:2.1.10
|
|
26
|
+
|
|
27
|
+
script:
|
|
28
|
+
- ./gitlab-ci/rspec.sh
|
|
29
|
+
|
|
30
|
+
ruby2.1:rubocop:
|
|
31
|
+
<<: *job_definition
|
|
32
|
+
image: drecom/centos-ruby:2.1.10
|
|
33
|
+
|
|
34
|
+
script:
|
|
35
|
+
- ./gitlab-ci/rubocop.sh
|
|
36
|
+
|
|
37
|
+
allow_failure: true
|
|
38
|
+
|
|
39
|
+
ruby2.2:rspec:
|
|
40
|
+
<<: *job_definition
|
|
41
|
+
image: drecom/centos-ruby:2.2.6
|
|
42
|
+
|
|
43
|
+
script:
|
|
44
|
+
- ./gitlab-ci/rspec.sh
|
|
45
|
+
|
|
46
|
+
ruby2.2:rubocop:
|
|
47
|
+
<<: *job_definition
|
|
48
|
+
|
|
49
|
+
image: drecom/centos-ruby:2.2.6
|
|
50
|
+
|
|
51
|
+
script:
|
|
52
|
+
- ./gitlab-ci/rubocop.sh
|
|
53
|
+
|
|
54
|
+
allow_failure: true
|
|
55
|
+
|
|
56
|
+
ruby2.3:rspec:
|
|
57
|
+
<<: *job_definition
|
|
58
|
+
image: drecom/centos-ruby:2.3.3
|
|
59
|
+
|
|
60
|
+
script:
|
|
61
|
+
- ./gitlab-ci/rspec.sh
|
|
62
|
+
|
|
63
|
+
ruby2.3:rubocop:
|
|
64
|
+
<<: *job_definition
|
|
65
|
+
image: drecom/centos-ruby:2.3.3
|
|
66
|
+
|
|
6
67
|
script:
|
|
7
|
-
- ./
|
|
8
|
-
|
|
9
|
-
|
|
68
|
+
- ./gitlab-ci/rubocop.sh
|
|
69
|
+
|
|
70
|
+
allow_failure: true
|
|
71
|
+
|
|
72
|
+
ruby2.4:rspec:
|
|
73
|
+
<<: *job_definition
|
|
74
|
+
image: drecom/centos-ruby:2.4.0
|
|
75
|
+
|
|
76
|
+
script:
|
|
77
|
+
- ./gitlab-ci/rspec.sh
|
|
78
|
+
|
|
79
|
+
ruby2.4:rubocop:
|
|
80
|
+
<<: *job_definition
|
|
81
|
+
image: drecom/centos-ruby:2.4.0
|
|
82
|
+
|
|
83
|
+
script:
|
|
84
|
+
- ./gitlab-ci/rubocop.sh
|
|
85
|
+
|
|
86
|
+
allow_failure: true
|
data/.rubocop.yml
ADDED
data/CHANGELOG.md
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
## Unreleased
|
|
2
|
-
[full changelog](https://gitlab.com/sue445/gitlab_awesome_release/compare/v0.1.0
|
|
2
|
+
[full changelog](https://gitlab.com/sue445/gitlab_awesome_release/compare/v0.1.0...HEAD)
|
|
3
3
|
|
|
4
4
|
|
|
5
|
+
## v0.1.0
|
|
6
|
+
[full changelog](https://gitlab.com/sue445/gitlab_awesome_release/compare/v0.1.0.beta8...v0.1.0)
|
|
7
|
+
|
|
8
|
+
* Add create_latest_note [!18](https://gitlab.com/sue445/gitlab_awesome_release/merge_requests/18) *@sue445*
|
|
9
|
+
|
|
5
10
|
## v0.1.0.beta8
|
|
6
11
|
[full changelog](https://gitlab.com/sue445/gitlab_awesome_release/compare/v0.1.0.beta7...v0.1.0.beta8)
|
|
7
12
|
|
data/Gemfile
CHANGED
data/README.md
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Generate changelog from tags and MergeRequests on [GitLab](https://about.gitlab.com/)
|
|
3
3
|
|
|
4
4
|
[](https://badge.fury.io/rb/gitlab_awesome_release)
|
|
5
|
-
[](https://gitlab.com/ci/projects/9759?ref=master)
|
|
6
5
|
[](https://gemnasium.com/19478d2f2735ee355f4c6cd1b8d2c12e)
|
|
7
6
|
|
|
8
7
|
This is inspired by [GitHub Changelog Generator](https://github.com/skywinder/github-changelog-generator)
|
data/gitlab-ci/rspec.sh
ADDED
data/gitlab-ci/setup.sh
ADDED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
|
-
lib = File.expand_path(
|
|
2
|
+
lib = File.expand_path("../lib", __FILE__)
|
|
3
3
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
|
-
require
|
|
4
|
+
require "gitlab_awesome_release/version"
|
|
5
5
|
|
|
6
6
|
Gem::Specification.new do |spec|
|
|
7
7
|
spec.name = "gitlab_awesome_release"
|
|
@@ -9,8 +9,8 @@ Gem::Specification.new do |spec|
|
|
|
9
9
|
spec.authors = ["sue445"]
|
|
10
10
|
spec.email = ["sue445@sue445.net"]
|
|
11
11
|
|
|
12
|
-
spec.summary =
|
|
13
|
-
spec.description =
|
|
12
|
+
spec.summary = "Generate changelog from tags and MergeRequests on GitLab"
|
|
13
|
+
spec.description = "Generate changelog from tags and MergeRequests on GitLab"
|
|
14
14
|
spec.homepage = "https://gitlab.com/sue445/gitlab_awesome_release"
|
|
15
15
|
spec.license = "MIT"
|
|
16
16
|
|
|
@@ -21,12 +21,12 @@ Gem::Specification.new do |spec|
|
|
|
21
21
|
|
|
22
22
|
spec.required_ruby_version = ">= 2.1.0"
|
|
23
23
|
|
|
24
|
-
spec.add_dependency "activesupport"
|
|
25
24
|
spec.add_dependency "dotenv"
|
|
26
25
|
spec.add_dependency "gitlab"
|
|
27
26
|
spec.add_dependency "thor"
|
|
28
27
|
|
|
29
28
|
spec.add_development_dependency "bundler", "~> 1.10"
|
|
29
|
+
spec.add_development_dependency "onkcop", "0.47.1.0"
|
|
30
30
|
spec.add_development_dependency "pry-byebug"
|
|
31
31
|
spec.add_development_dependency "rake", "~> 10.0"
|
|
32
32
|
spec.add_development_dependency "rspec"
|
|
@@ -3,14 +3,16 @@ require "gitlab_awesome_release"
|
|
|
3
3
|
require "dotenv"
|
|
4
4
|
|
|
5
5
|
module GitlabAwesomeRelease
|
|
6
|
+
require "logger"
|
|
7
|
+
|
|
6
8
|
class CLI < Thor
|
|
7
|
-
DEFAULT_VERSION_FORMAT = "^v?[\\d.]+"
|
|
8
|
-
GITLAB_ENV_FILES = %w(.env.gitlab ~/.env.gitlab)
|
|
9
|
+
DEFAULT_VERSION_FORMAT = "^v?[\\d.]+".freeze
|
|
10
|
+
GITLAB_ENV_FILES = %w(.env.gitlab ~/.env.gitlab).freeze
|
|
9
11
|
|
|
10
|
-
GITLAB_API_DESCRIPTION = "GitLab API endpoint (e.g. http://example.com/api/v3)"
|
|
11
|
-
GITLAB_API_PRIVATE_TOKEN_DESCRIPTION = "Your private token"
|
|
12
|
-
GITLAB_API_PROJECT_NAME = "Target project (e.g. group/repo_name)"
|
|
13
|
-
LOG_LEVEL_DESCRIPTION = "Log level (debug|info|warn|error|fatal|unknown)"
|
|
12
|
+
GITLAB_API_DESCRIPTION = "GitLab API endpoint (e.g. http://example.com/api/v3)".freeze
|
|
13
|
+
GITLAB_API_PRIVATE_TOKEN_DESCRIPTION = "Your private token".freeze
|
|
14
|
+
GITLAB_API_PROJECT_NAME = "Target project (e.g. group/repo_name)".freeze
|
|
15
|
+
LOG_LEVEL_DESCRIPTION = "Log level (debug|info|warn|error|fatal|unknown)".freeze
|
|
14
16
|
|
|
15
17
|
desc "version", "Show gitlab_awesome_release version"
|
|
16
18
|
def version
|
|
@@ -92,70 +94,73 @@ module GitlabAwesomeRelease
|
|
|
92
94
|
|
|
93
95
|
private
|
|
94
96
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
97
|
+
def option_or_env(name, default = nil)
|
|
98
|
+
upper_name = name.to_s.upcase
|
|
99
|
+
return options[name] if options[name] && !options[name].to_s.empty?
|
|
100
|
+
return ENV[upper_name] if ENV[upper_name] && !ENV[upper_name].empty?
|
|
99
101
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
return value if value
|
|
102
|
+
default
|
|
103
|
+
end
|
|
103
104
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
105
|
+
def option_or_env!(name)
|
|
106
|
+
value = option_or_env(name)
|
|
107
|
+
return value if value
|
|
107
108
|
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
gitlab_project_name = option_or_env!(:gitlab_project_name)
|
|
112
|
-
allow_tag_format = option_or_env(:allow_tag_format, DEFAULT_VERSION_FORMAT)
|
|
113
|
-
|
|
114
|
-
@logger = Logger.new(STDOUT)
|
|
115
|
-
@logger.level = logger_level(option_or_env(:log_level))
|
|
116
|
-
@logger.formatter = proc{ |severity, datetime, progname, message|
|
|
117
|
-
"[#{datetime}] #{severity} #{message}\n"
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
Gitlab::Request.logger = @logger
|
|
121
|
-
GitlabAwesomeRelease::Project.new(
|
|
122
|
-
api_endpoint: gitlab_api_endpoint,
|
|
123
|
-
private_token: gitlab_api_private_token,
|
|
124
|
-
project_name: gitlab_project_name,
|
|
125
|
-
allow_tag_format: /#{allow_tag_format}/,
|
|
126
|
-
logger: @logger,
|
|
127
|
-
)
|
|
128
|
-
end
|
|
109
|
+
puts "--#{name.to_s.tr("_", "-")} or #{name.to_s.upcase} is either required!"
|
|
110
|
+
exit!
|
|
111
|
+
end
|
|
129
112
|
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
113
|
+
def create_project
|
|
114
|
+
gitlab_api_endpoint = option_or_env!(:gitlab_api_endpoint)
|
|
115
|
+
gitlab_api_private_token = option_or_env!(:gitlab_api_private_token)
|
|
116
|
+
gitlab_project_name = option_or_env!(:gitlab_project_name)
|
|
117
|
+
allow_tag_format = option_or_env(:allow_tag_format, DEFAULT_VERSION_FORMAT)
|
|
118
|
+
|
|
119
|
+
@logger = Logger.new(STDOUT)
|
|
120
|
+
@logger.level = logger_level(option_or_env(:log_level))
|
|
121
|
+
@logger.formatter = proc { |severity, datetime, _progname, message|
|
|
122
|
+
"[#{datetime}] #{severity} #{message}\n"
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
Gitlab::Request.logger = @logger
|
|
126
|
+
GitlabAwesomeRelease::Project.new(
|
|
127
|
+
api_endpoint: gitlab_api_endpoint,
|
|
128
|
+
private_token: gitlab_api_private_token,
|
|
129
|
+
project_name: gitlab_project_name,
|
|
130
|
+
allow_tag_format: /#{allow_tag_format}/,
|
|
131
|
+
logger: @logger
|
|
132
|
+
)
|
|
133
|
+
end
|
|
134
|
+
|
|
135
|
+
def write_changelog(changelog)
|
|
136
|
+
filename = option_or_env(:filename)
|
|
137
|
+
if filename
|
|
138
|
+
File.open(filename, "wb") do |f|
|
|
139
|
+
f.write(changelog)
|
|
140
|
+
end
|
|
141
|
+
@logger.info "Write to #{filename}"
|
|
142
|
+
else
|
|
143
|
+
puts changelog
|
|
135
144
|
end
|
|
136
|
-
@logger.info "Write to #{filename}"
|
|
137
|
-
else
|
|
138
|
-
puts changelog
|
|
139
145
|
end
|
|
140
|
-
end
|
|
141
146
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
147
|
+
def logger_level(log_level)
|
|
148
|
+
case log_level.to_sym
|
|
149
|
+
when :debug
|
|
150
|
+
Logger::DEBUG
|
|
151
|
+
when :error
|
|
152
|
+
Logger::ERROR
|
|
153
|
+
when :fatal
|
|
154
|
+
Logger::FATAL
|
|
155
|
+
when :info
|
|
156
|
+
Logger::INFO
|
|
157
|
+
when :unknown
|
|
158
|
+
Logger::UNKNOWN
|
|
159
|
+
when :warn
|
|
160
|
+
Logger::WARN
|
|
161
|
+
else
|
|
162
|
+
raise "Unknown log_level: #{log_level}"
|
|
163
|
+
end
|
|
158
164
|
end
|
|
159
|
-
end
|
|
160
165
|
end
|
|
161
166
|
end
|
|
@@ -10,8 +10,8 @@ module GitlabAwesomeRelease
|
|
|
10
10
|
end_time = Time.now
|
|
11
11
|
|
|
12
12
|
# NOTE: options[:headers] contains PRIVATE-TOKEN
|
|
13
|
-
_options = options.reject{ |k, _v| k == :headers }
|
|
14
|
-
logger.debug "(#{end_time - start_time} sec) #{method.upcase} #{path} #{_options}"
|
|
13
|
+
_options = options.reject { |k, _v| k == :headers }
|
|
14
|
+
self.class.logger.debug "(#{end_time - start_time} sec) #{method.upcase} #{path} #{_options}"
|
|
15
15
|
end
|
|
16
16
|
end
|
|
17
17
|
end
|
|
@@ -20,5 +20,12 @@ end
|
|
|
20
20
|
|
|
21
21
|
Gitlab::Request.class_eval do
|
|
22
22
|
prepend GitlabAwesomeRelease::GitlabLoggingExt
|
|
23
|
-
|
|
23
|
+
|
|
24
|
+
def self.logger
|
|
25
|
+
Gitlab::Request.instance_variable_get(:@logger)
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def self.logger=(logger)
|
|
29
|
+
Gitlab::Request.instance_variable_set(:@logger, logger)
|
|
30
|
+
end
|
|
24
31
|
end
|
|
@@ -35,7 +35,7 @@ module GitlabAwesomeRelease
|
|
|
35
35
|
with_paging do |params|
|
|
36
36
|
Gitlab.repo_tags(escaped_project_name, params)
|
|
37
37
|
end
|
|
38
|
-
@all_tag_names = repo_tags.sort_by{ |tag| tag.commit.authored_date }.map(&:name)
|
|
38
|
+
@all_tag_names = repo_tags.sort_by { |tag| tag.commit.authored_date }.map(&:name)
|
|
39
39
|
end
|
|
40
40
|
|
|
41
41
|
# @return [Array<String>]
|
|
@@ -60,8 +60,8 @@ module GitlabAwesomeRelease
|
|
|
60
60
|
str << "\n"
|
|
61
61
|
end
|
|
62
62
|
|
|
63
|
-
changelog << <<-MARKDOWN
|
|
64
|
-
|
|
63
|
+
changelog << <<-MARKDOWN
|
|
64
|
+
*This Change Log was automatically generated by [gitlab_awesome_release](https://gitlab.com/sue445/gitlab_awesome_release)*
|
|
65
65
|
MARKDOWN
|
|
66
66
|
|
|
67
67
|
changelog
|
|
@@ -79,8 +79,8 @@ module GitlabAwesomeRelease
|
|
|
79
79
|
summary = merge_requests_summary_between(from, to)
|
|
80
80
|
|
|
81
81
|
header = generate_heading(title)
|
|
82
|
-
header << <<-MARKDOWN
|
|
83
|
-
|
|
82
|
+
header << <<-MARKDOWN
|
|
83
|
+
[full changelog](#{web_url}/compare/#{from}...#{to})
|
|
84
84
|
|
|
85
85
|
MARKDOWN
|
|
86
86
|
|
|
@@ -97,10 +97,14 @@ module GitlabAwesomeRelease
|
|
|
97
97
|
# @return [Array<Integer>] MergeRequest iids
|
|
98
98
|
def merge_request_iids_between(from, to)
|
|
99
99
|
commits = Gitlab.repo_compare(escaped_project_name, from, to).commits
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
100
|
+
|
|
101
|
+
merge_request_iids =
|
|
102
|
+
commits.map do |commit|
|
|
103
|
+
commit["message"] =~ /^Merge branch .*See merge request \!(\d+)$/m
|
|
104
|
+
Regexp.last_match(1)
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
merge_request_iids.compact.map(&:to_i)
|
|
104
108
|
end
|
|
105
109
|
|
|
106
110
|
# @param iid [Integer] MergeRequest iid
|
|
@@ -130,34 +134,34 @@ module GitlabAwesomeRelease
|
|
|
130
134
|
|
|
131
135
|
private
|
|
132
136
|
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
137
|
+
def escaped_project_name
|
|
138
|
+
CGI.escape(@project_name)
|
|
139
|
+
end
|
|
136
140
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
141
|
+
# @yield [params] paging block
|
|
142
|
+
# @yieldparam params [Hash] paging params for GitLab API (page: current page, per_page)
|
|
143
|
+
# @yieldreturn response in all pages
|
|
144
|
+
def with_paging
|
|
145
|
+
all_response = []
|
|
146
|
+
page = 1
|
|
147
|
+
loop do
|
|
148
|
+
response = yield(page: page, per_page: PER_PAGE)
|
|
149
|
+
all_response += response
|
|
150
|
+
return all_response if response.size < PER_PAGE
|
|
151
|
+
page += 1
|
|
152
|
+
end
|
|
148
153
|
end
|
|
149
|
-
end
|
|
150
154
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
+
def merge_requests_summary_between(from, to)
|
|
156
|
+
mr_iids = merge_request_iids_between(from, to)
|
|
157
|
+
mr_iids.each_with_object("") do |iid, str|
|
|
158
|
+
str << merge_request_summary(iid) + "\n"
|
|
159
|
+
end
|
|
155
160
|
end
|
|
156
|
-
end
|
|
157
161
|
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
+
def assert_merge_request_iid(mr, iid)
|
|
163
|
+
# NOTE: MR is found, but server is old GitLab?
|
|
164
|
+
raise "MergeRequest iid does not match (expected #{iid}, but #{mr.iid})" unless iid == mr.iid
|
|
165
|
+
end
|
|
162
166
|
end
|
|
163
167
|
end
|
metadata
CHANGED
|
@@ -1,29 +1,15 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: gitlab_awesome_release
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- sue445
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2017-02-06 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
|
-
- !ruby/object:Gem::Dependency
|
|
14
|
-
name: activesupport
|
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
|
16
|
-
requirements:
|
|
17
|
-
- - ">="
|
|
18
|
-
- !ruby/object:Gem::Version
|
|
19
|
-
version: '0'
|
|
20
|
-
type: :runtime
|
|
21
|
-
prerelease: false
|
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
-
requirements:
|
|
24
|
-
- - ">="
|
|
25
|
-
- !ruby/object:Gem::Version
|
|
26
|
-
version: '0'
|
|
27
13
|
- !ruby/object:Gem::Dependency
|
|
28
14
|
name: dotenv
|
|
29
15
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -80,6 +66,20 @@ dependencies:
|
|
|
80
66
|
- - "~>"
|
|
81
67
|
- !ruby/object:Gem::Version
|
|
82
68
|
version: '1.10'
|
|
69
|
+
- !ruby/object:Gem::Dependency
|
|
70
|
+
name: onkcop
|
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
|
72
|
+
requirements:
|
|
73
|
+
- - '='
|
|
74
|
+
- !ruby/object:Gem::Version
|
|
75
|
+
version: 0.47.1.0
|
|
76
|
+
type: :development
|
|
77
|
+
prerelease: false
|
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
+
requirements:
|
|
80
|
+
- - '='
|
|
81
|
+
- !ruby/object:Gem::Version
|
|
82
|
+
version: 0.47.1.0
|
|
83
83
|
- !ruby/object:Gem::Dependency
|
|
84
84
|
name: pry-byebug
|
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -190,6 +190,7 @@ files:
|
|
|
190
190
|
- ".gitignore"
|
|
191
191
|
- ".gitlab-ci.yml"
|
|
192
192
|
- ".rspec"
|
|
193
|
+
- ".rubocop.yml"
|
|
193
194
|
- ".yardopts"
|
|
194
195
|
- CHANGELOG.md
|
|
195
196
|
- Gemfile
|
|
@@ -199,6 +200,9 @@ files:
|
|
|
199
200
|
- bin/console
|
|
200
201
|
- bin/setup
|
|
201
202
|
- exe/gitlab_awesome_release
|
|
203
|
+
- gitlab-ci/rspec.sh
|
|
204
|
+
- gitlab-ci/rubocop.sh
|
|
205
|
+
- gitlab-ci/setup.sh
|
|
202
206
|
- gitlab_awesome_release.gemspec
|
|
203
207
|
- img/private_token.png
|
|
204
208
|
- lib/gitlab_awesome_release.rb
|
|
@@ -207,7 +211,6 @@ files:
|
|
|
207
211
|
- lib/gitlab_awesome_release/gitlab_logging_ext.rb
|
|
208
212
|
- lib/gitlab_awesome_release/project.rb
|
|
209
213
|
- lib/gitlab_awesome_release/version.rb
|
|
210
|
-
- script/build.sh
|
|
211
214
|
homepage: https://gitlab.com/sue445/gitlab_awesome_release
|
|
212
215
|
licenses:
|
|
213
216
|
- MIT
|
|
@@ -228,9 +231,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
228
231
|
version: '0'
|
|
229
232
|
requirements: []
|
|
230
233
|
rubyforge_project:
|
|
231
|
-
rubygems_version: 2.
|
|
234
|
+
rubygems_version: 2.5.1
|
|
232
235
|
signing_key:
|
|
233
236
|
specification_version: 4
|
|
234
237
|
summary: Generate changelog from tags and MergeRequests on GitLab
|
|
235
238
|
test_files: []
|
|
236
|
-
has_rdoc:
|