gitlab_awesome_release 1.0.3 → 1.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 +4 -4
- data/.gitlab-ci.yml +30 -61
- data/CHANGELOG.md +13 -1
- data/Gemfile +64 -0
- data/README.md +11 -3
- data/gitlab-ci/setup.sh +4 -4
- data/gitlab_awesome_release.gemspec +7 -4
- data/lib/gitlab_awesome_release/cli.rb +23 -18
- data/lib/gitlab_awesome_release/project.rb +6 -5
- data/lib/gitlab_awesome_release/version.rb +1 -1
- metadata +16 -43
- data/.rubocop.yml +0 -20
- data/gitlab-ci/config +0 -4
- data/gitlab-ci/rspec.sh +0 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e6119d125dfe22d2498b05ac8239fedd1faea8308a6f7608d1c5e2d658aaacbb
|
|
4
|
+
data.tar.gz: 67f2eb14cf37f406cf8639a62982cb21fc5fc030b35303c5ce592874a4ddbb72
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cb463789ea8b4495ea08e9906b78c2b3c179c40a59ec958049d8d475cd8039e02a2a601be64adbebbd7ded9143ecf3b4eea5208c43ac5107f76b404fe9bf4c9d
|
|
7
|
+
data.tar.gz: bee53477925536e2fa9994a15dd5009c0dd90397b96f4b3abb50159692b5d87d6abe88e46a9706e2838b2042ee4b4baaf4a39f68fbddb0a491a5ede2eb92443d
|
data/.gitlab-ci.yml
CHANGED
|
@@ -16,73 +16,40 @@ stages:
|
|
|
16
16
|
|
|
17
17
|
stage: test
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
- tags
|
|
21
|
-
|
|
22
|
-
ruby2.1:rspec:
|
|
23
|
-
extends: .default
|
|
24
|
-
image: ruby:2.1
|
|
25
|
-
|
|
26
|
-
script:
|
|
27
|
-
- ./gitlab-ci/rspec.sh
|
|
28
|
-
|
|
29
|
-
ruby2.2:rspec:
|
|
19
|
+
test:
|
|
30
20
|
extends: .default
|
|
31
|
-
image: ruby:2.2
|
|
32
21
|
|
|
33
|
-
|
|
34
|
-
- ./gitlab-ci/rspec.sh
|
|
35
|
-
|
|
36
|
-
ruby2.3:rspec:
|
|
37
|
-
extends: .default
|
|
38
|
-
image: ruby:2.3
|
|
22
|
+
image: $IMAGE
|
|
39
23
|
|
|
40
24
|
script:
|
|
41
|
-
-
|
|
25
|
+
- bundle exec rspec
|
|
42
26
|
|
|
43
|
-
|
|
44
|
-
extends: .default
|
|
45
|
-
image: ruby:2.4
|
|
46
|
-
|
|
47
|
-
script:
|
|
48
|
-
- ./gitlab-ci/rspec.sh
|
|
49
|
-
|
|
50
|
-
ruby2.5:rspec:
|
|
51
|
-
extends: .default
|
|
52
|
-
image: ruby:2.5
|
|
53
|
-
|
|
54
|
-
script:
|
|
55
|
-
- ./gitlab-ci/rspec.sh
|
|
56
|
-
|
|
57
|
-
ruby2.6:rspec:
|
|
58
|
-
extends: .default
|
|
59
|
-
image: ruby:2.6
|
|
27
|
+
coverage: '/LOC \(([\d.]+)%\) covered/'
|
|
60
28
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
allow_failure: true
|
|
29
|
+
artifacts:
|
|
30
|
+
reports:
|
|
31
|
+
coverage_report:
|
|
32
|
+
coverage_format: cobertura
|
|
33
|
+
path: coverage/coverage.xml
|
|
34
|
+
|
|
35
|
+
rules:
|
|
36
|
+
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
|
|
37
|
+
- if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
|
|
38
|
+
|
|
39
|
+
parallel:
|
|
40
|
+
matrix:
|
|
41
|
+
- IMAGE:
|
|
42
|
+
- ruby:2.1
|
|
43
|
+
- ruby:2.2
|
|
44
|
+
- ruby:2.3
|
|
45
|
+
- ruby:2.4
|
|
46
|
+
- ruby:2.5
|
|
47
|
+
- ruby:2.6
|
|
48
|
+
- ruby:2.7
|
|
49
|
+
- ruby:3.0
|
|
50
|
+
- ruby:3.1
|
|
51
|
+
- ruby:3.2
|
|
52
|
+
- ruby:3.3
|
|
86
53
|
|
|
87
54
|
pages:
|
|
88
55
|
extends: .default
|
|
@@ -97,3 +64,5 @@ pages:
|
|
|
97
64
|
- public
|
|
98
65
|
only:
|
|
99
66
|
- master
|
|
67
|
+
except:
|
|
68
|
+
- tags
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
## Unreleased
|
|
2
|
-
[full changelog](https://gitlab.com/sue445/gitlab_awesome_release/compare/v1.0
|
|
2
|
+
[full changelog](https://gitlab.com/sue445/gitlab_awesome_release/compare/v1.1.0...master)
|
|
3
|
+
|
|
4
|
+
## v1.1.0
|
|
5
|
+
[full changelog](https://gitlab.com/sue445/gitlab_awesome_release/compare/v1.0.4...v1.1.0)
|
|
6
|
+
|
|
7
|
+
* Allow specifying M-R commit format for changelog generation
|
|
8
|
+
* https://gitlab.com/sue445/gitlab_awesome_release/-/merge_requests/57
|
|
9
|
+
|
|
10
|
+
## v1.0.4
|
|
11
|
+
[full changelog](https://gitlab.com/sue445/gitlab_awesome_release/compare/v1.0.3...v1.0.4)
|
|
12
|
+
|
|
13
|
+
* Enable MFA requirement for gem releasing
|
|
14
|
+
* https://gitlab.com/sue445/gitlab_awesome_release/-/merge_requests/47
|
|
3
15
|
|
|
4
16
|
## v1.0.3
|
|
5
17
|
[full changelog](https://gitlab.com/sue445/gitlab_awesome_release/compare/v1.0.2...v1.0.3)
|
data/Gemfile
CHANGED
|
@@ -3,9 +3,73 @@ source "https://rubygems.org"
|
|
|
3
3
|
# Specify your gem's dependencies in gitlab_awesome_release.gemspec
|
|
4
4
|
gemspec
|
|
5
5
|
|
|
6
|
+
if Gem::Version.create(RUBY_VERSION) < Gem::Version.create("2.2.0")
|
|
7
|
+
group :development do
|
|
8
|
+
# NOTE: addressable 2.8.1+ requires ruby 2.2.0+
|
|
9
|
+
gem "addressable", "< 2.8.1"
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
6
13
|
if Gem::Version.create(RUBY_VERSION) < Gem::Version.create("2.3.0")
|
|
7
14
|
group :development do
|
|
8
15
|
# NOTE: gitlab 4.6.0+ requires ruby 2.3.0+
|
|
9
16
|
gem "gitlab", "< 4.6.0"
|
|
17
|
+
|
|
18
|
+
# NOTE: json 2.6.0+ requires ruby 2.3.0+
|
|
19
|
+
gem "json", "< 2.6.0"
|
|
20
|
+
|
|
21
|
+
# NOTE: httparty 0.20.0+ requires ruby 2.3.0+
|
|
22
|
+
gem "httparty", "< 0.20.0"
|
|
23
|
+
|
|
24
|
+
# NOTE: webrick 1.4.0+ requires ruby 2.3.0+
|
|
25
|
+
gem "webrick", "< 1.4.0"
|
|
26
|
+
|
|
27
|
+
# NOTE: webmock 3.17.0+ requires ruby 2.3.0+
|
|
28
|
+
gem "webmock", "< 3.17.0"
|
|
29
|
+
end
|
|
30
|
+
elsif Gem::Version.create(RUBY_VERSION) < Gem::Version.create("2.4.0")
|
|
31
|
+
group :development do
|
|
32
|
+
# NOTE: gitlab 4.14.0 doesn't work on Ruby 2.3
|
|
33
|
+
# https://gitlab.com/sue445/gitlab_awesome_release/-/jobs/1235102823
|
|
34
|
+
gem "gitlab", "< 4.14.0"
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
if Gem::Version.create(RUBY_VERSION) < Gem::Version.create("2.2.0")
|
|
39
|
+
group :development do
|
|
40
|
+
# NOTE: parallel 1.14.0+ requires ruby 2.2.0+
|
|
41
|
+
gem "parallel", "< 1.14.0"
|
|
42
|
+
end
|
|
43
|
+
elsif Gem::Version.create(RUBY_VERSION) < Gem::Version.create("2.4.0")
|
|
44
|
+
group :development do
|
|
45
|
+
# NOTE: parallel 1.20.1+ requires ruby 2.4.0+
|
|
46
|
+
gem "parallel", "< 1.20.1"
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
if Gem::Version.create(RUBY_VERSION) < Gem::Version.create("2.5.0")
|
|
51
|
+
group :development do
|
|
52
|
+
# NOTE: docile 1.4.0+ requires ruby 2.5.0+
|
|
53
|
+
gem "docile", "< 1.4.0"
|
|
54
|
+
|
|
55
|
+
# NOTE: simplecov-cobertura 2.0.0+ requires ruby 2.5.0+
|
|
56
|
+
gem "simplecov-cobertura", "< 2.0.0"
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
if Gem::Version.create(RUBY_VERSION) < Gem::Version.create("2.4.0")
|
|
61
|
+
group :development do
|
|
62
|
+
# NOTE: simplecov-html 0.11.0+ requires ruby 2.4.0+
|
|
63
|
+
gem "simplecov-html", "< 0.11.0"
|
|
64
|
+
|
|
65
|
+
# NOTE: unicode-display_width 2.4.0+ requires ruby 2.4.0+
|
|
66
|
+
gem "unicode-display_width", "< 2.4.0"
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
if Gem::Version.create(RUBY_VERSION) < Gem::Version.create("2.3.0")
|
|
71
|
+
group :development do
|
|
72
|
+
# NOTE: public_suffix 4.0.0+ requires ruby 2.3.0+
|
|
73
|
+
gem "public_suffix", "< 4.0.0"
|
|
10
74
|
end
|
|
11
75
|
end
|
data/README.md
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# GitlabAwesomeRelease
|
|
2
|
-
Generate changelog from tags and MergeRequests on [GitLab](https://about.gitlab.com/)
|
|
2
|
+
Generate changelog from tags and MergeRequests on [GitLab™](https://about.gitlab.com/)
|
|
3
|
+
|
|
4
|
+
_GITLAB is a trademark of GitLab Inc. in the United States and other countries and regions_
|
|
3
5
|
|
|
4
6
|
[](https://badge.fury.io/rb/gitlab_awesome_release)
|
|
5
7
|
[](https://gitlab.com/sue445/gitlab_awesome_release/commits/master)
|
|
@@ -60,8 +62,11 @@ All options can be specified in both the command arguments and environment varia
|
|
|
60
62
|
* Filepath to changelog file (e.g. `CHANGELOG.md`)
|
|
61
63
|
* if empty, output to console
|
|
62
64
|
* `--allow-tag-format` , `ALLOW_TAG_FORMAT`
|
|
63
|
-
* Tag format for release note heading (regular
|
|
65
|
+
* Tag format for release note heading (regular expression pattern)
|
|
64
66
|
* default: `^v?[\d.]+`
|
|
67
|
+
* `--merge-request-commit-format` , `MERGE_REQUEST_COMMIT_FORMAT`
|
|
68
|
+
* Commit format for matching merge request (regular expression pattern)
|
|
69
|
+
* default: `^Merge branch .*See merge request .*\!(\d+)$`
|
|
65
70
|
* `--log-level` , `LOG_LEVEL`
|
|
66
71
|
* Log level `(debug|info|warn|error|fatal|unknown)`
|
|
67
72
|
* default: `info`
|
|
@@ -86,8 +91,11 @@ All options can be specified in both the command arguments and environment varia
|
|
|
86
91
|
* Filepath to changelog file (e.g. `CHANGELOG.md`)
|
|
87
92
|
* if empty, output to console
|
|
88
93
|
* `--allow-tag-format` , `ALLOW_TAG_FORMAT`
|
|
89
|
-
* Tag format for release note heading (regular
|
|
94
|
+
* Tag format for release note heading (regular expression pattern)
|
|
90
95
|
* default: `^v?[\d.]+`
|
|
96
|
+
* `--merge-request-commit-format` , `MERGE_REQUEST_COMMIT_FORMAT`
|
|
97
|
+
* Commit format for matching merge request (regular expression pattern)
|
|
98
|
+
* default: `^Merge branch .*See merge request .*\!(\d+)$`
|
|
91
99
|
* `--log-level` , `LOG_LEVEL`
|
|
92
100
|
* Log level `(debug|info|warn|error|fatal|unknown)`
|
|
93
101
|
* default: `info`
|
data/gitlab-ci/setup.sh
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/bin/bash -xe
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
bundle config set --local path 'vendor/bundle/'
|
|
4
|
+
bundle config set --local clean 'true'
|
|
5
5
|
|
|
6
6
|
ruby --version
|
|
7
7
|
gem --version
|
|
8
8
|
bundle --version
|
|
9
9
|
|
|
10
|
-
bundle
|
|
11
|
-
bundle
|
|
10
|
+
bundle install --jobs $(nproc)
|
|
11
|
+
bundle update
|
|
@@ -13,6 +13,11 @@ Gem::Specification.new do |spec|
|
|
|
13
13
|
spec.homepage = "https://gitlab.com/sue445/gitlab_awesome_release"
|
|
14
14
|
spec.license = "MIT"
|
|
15
15
|
|
|
16
|
+
spec.metadata["homepage_uri"] = spec.homepage
|
|
17
|
+
spec.metadata["source_code_uri"] = spec.homepage
|
|
18
|
+
spec.metadata["changelog_uri"] = "#{spec.homepage}/blob/master/CHANGELOG.md"
|
|
19
|
+
spec.metadata["rubygems_mfa_required"] = "true"
|
|
20
|
+
|
|
16
21
|
spec.files = `git ls-files -z`.split("\x0").reject {|f| f.match(%r{^(test|spec|features)/}) }
|
|
17
22
|
spec.bindir = "exe"
|
|
18
23
|
spec.executables = spec.files.grep(%r{^exe/}) {|f| File.basename(f) }
|
|
@@ -25,13 +30,11 @@ Gem::Specification.new do |spec|
|
|
|
25
30
|
spec.add_dependency "thor"
|
|
26
31
|
|
|
27
32
|
spec.add_development_dependency "bundler", ">= 1.10"
|
|
28
|
-
spec.add_development_dependency "
|
|
29
|
-
spec.add_development_dependency "pry-byebug"
|
|
30
|
-
spec.add_development_dependency "rake", "~> 10.0"
|
|
33
|
+
spec.add_development_dependency "rake", ">= 10.0"
|
|
31
34
|
spec.add_development_dependency "rspec"
|
|
32
35
|
spec.add_development_dependency "rspec-temp_dir"
|
|
33
|
-
spec.add_development_dependency "rubocop", "0.57.2" # rubocop v0.58.0+ requires ruby 2.2+
|
|
34
36
|
spec.add_development_dependency "simplecov"
|
|
37
|
+
spec.add_development_dependency "simplecov-cobertura"
|
|
35
38
|
spec.add_development_dependency "webmock"
|
|
36
39
|
spec.add_development_dependency "yard"
|
|
37
40
|
end
|
|
@@ -7,6 +7,7 @@ module GitlabAwesomeRelease
|
|
|
7
7
|
|
|
8
8
|
class CLI < Thor
|
|
9
9
|
DEFAULT_VERSION_FORMAT = "^v?[\\d.]+".freeze
|
|
10
|
+
DEFAULT_MERGE_REQUEST_COMMIT_FORMAT = "^Merge branch .*See merge request .*\!(\d+)$".freeze
|
|
10
11
|
GITLAB_ENV_FILES = %w[.env.gitlab ~/.env.gitlab].freeze
|
|
11
12
|
|
|
12
13
|
GITLAB_API_DESCRIPTION = "GitLab API endpoint (e.g. http://example.com/api/v4)".freeze
|
|
@@ -20,14 +21,15 @@ module GitlabAwesomeRelease
|
|
|
20
21
|
end
|
|
21
22
|
|
|
22
23
|
desc "create_note", "generate changelog"
|
|
23
|
-
option :gitlab_api_endpoint,
|
|
24
|
-
option :gitlab_api_private_token,
|
|
25
|
-
option :gitlab_project_name,
|
|
26
|
-
option :from_tag,
|
|
27
|
-
option :to_tag,
|
|
28
|
-
option :filename,
|
|
29
|
-
option :allow_tag_format,
|
|
30
|
-
option :
|
|
24
|
+
option :gitlab_api_endpoint, desc: GITLAB_API_DESCRIPTION
|
|
25
|
+
option :gitlab_api_private_token, desc: GITLAB_API_PRIVATE_TOKEN_DESCRIPTION
|
|
26
|
+
option :gitlab_project_name, desc: GITLAB_API_PROJECT_NAME
|
|
27
|
+
option :from_tag, desc: "The first tag to create a changelog (default: oldest tag)"
|
|
28
|
+
option :to_tag, desc: "The last tag to create a changelog (default: latest tag)"
|
|
29
|
+
option :filename, desc: "Filepath to changelog file (e.g. CHANGELOG.md). if empty, output to console"
|
|
30
|
+
option :allow_tag_format, desc: "Tag format for release note heading (regular expression pattern)", default: DEFAULT_VERSION_FORMAT
|
|
31
|
+
option :merge_request_commit_format, desc: "Commit format for matching merge request (regular expression pattern)", default: DEFAULT_MERGE_REQUEST_COMMIT_FORMAT
|
|
32
|
+
option :log_level, desc: LOG_LEVEL_DESCRIPTION, default: "info"
|
|
31
33
|
def create_note
|
|
32
34
|
Dotenv.load(*GITLAB_ENV_FILES)
|
|
33
35
|
|
|
@@ -44,12 +46,13 @@ module GitlabAwesomeRelease
|
|
|
44
46
|
end
|
|
45
47
|
|
|
46
48
|
desc "create_latest_note", "generate release note only latest version and unreleased"
|
|
47
|
-
option :gitlab_api_endpoint,
|
|
48
|
-
option :gitlab_api_private_token,
|
|
49
|
-
option :gitlab_project_name,
|
|
50
|
-
option :filename,
|
|
51
|
-
option :allow_tag_format,
|
|
52
|
-
option :
|
|
49
|
+
option :gitlab_api_endpoint, desc: GITLAB_API_DESCRIPTION
|
|
50
|
+
option :gitlab_api_private_token, desc: GITLAB_API_PRIVATE_TOKEN_DESCRIPTION
|
|
51
|
+
option :gitlab_project_name, desc: GITLAB_API_PROJECT_NAME
|
|
52
|
+
option :filename, desc: "Filepath to changelog file (e.g. CHANGELOG.md). if empty, output to console"
|
|
53
|
+
option :allow_tag_format, desc: "Tag format for release note heading (regular expression pattern)", default: DEFAULT_VERSION_FORMAT
|
|
54
|
+
option :merge_request_commit_format, desc: "Commit format for matching merge request (regular expression pattern)", default: DEFAULT_MERGE_REQUEST_COMMIT_FORMAT
|
|
55
|
+
option :log_level, desc: LOG_LEVEL_DESCRIPTION, default: "info"
|
|
53
56
|
def create_latest_note
|
|
54
57
|
Dotenv.load(*GITLAB_ENV_FILES)
|
|
55
58
|
|
|
@@ -111,10 +114,11 @@ module GitlabAwesomeRelease
|
|
|
111
114
|
end
|
|
112
115
|
|
|
113
116
|
def create_project
|
|
114
|
-
gitlab_api_endpoint
|
|
115
|
-
gitlab_api_private_token
|
|
116
|
-
gitlab_project_name
|
|
117
|
-
allow_tag_format
|
|
117
|
+
gitlab_api_endpoint = option_or_env!(:gitlab_api_endpoint)
|
|
118
|
+
gitlab_api_private_token = option_or_env!(:gitlab_api_private_token)
|
|
119
|
+
gitlab_project_name = option_or_env!(:gitlab_project_name)
|
|
120
|
+
allow_tag_format = option_or_env(:allow_tag_format, DEFAULT_VERSION_FORMAT)
|
|
121
|
+
merge_request_commit_format = option_or_env(:merge_request_commit_format, DEFAULT_MERGE_REQUEST_COMMIT_FORMAT)
|
|
118
122
|
|
|
119
123
|
@logger = Logger.new(STDOUT)
|
|
120
124
|
@logger.level = logger_level(option_or_env(:log_level))
|
|
@@ -128,6 +132,7 @@ module GitlabAwesomeRelease
|
|
|
128
132
|
private_token: gitlab_api_private_token,
|
|
129
133
|
project_name: gitlab_project_name,
|
|
130
134
|
allow_tag_format: /#{allow_tag_format}/,
|
|
135
|
+
merge_request_commit_format: /#{merge_request_commit_format}/m,
|
|
131
136
|
logger: @logger,
|
|
132
137
|
)
|
|
133
138
|
end
|
|
@@ -11,13 +11,15 @@ module GitlabAwesomeRelease
|
|
|
11
11
|
# @param private_token [String]
|
|
12
12
|
# @param project_name [String]
|
|
13
13
|
# @param allow_tag_format [Regexp]
|
|
14
|
-
|
|
14
|
+
# @param merge_request_commit_format [Regexp]
|
|
15
|
+
def initialize(api_endpoint:, private_token:, project_name:, allow_tag_format:, merge_request_commit_format:, logger:)
|
|
15
16
|
Gitlab.configure do |config|
|
|
16
17
|
config.endpoint = api_endpoint
|
|
17
18
|
config.private_token = private_token
|
|
18
19
|
end
|
|
19
20
|
@project_name = project_name
|
|
20
21
|
@allow_tag_format = allow_tag_format
|
|
22
|
+
@merge_request_commit_format = merge_request_commit_format
|
|
21
23
|
@logger = logger
|
|
22
24
|
end
|
|
23
25
|
|
|
@@ -36,10 +38,9 @@ module GitlabAwesomeRelease
|
|
|
36
38
|
Gitlab.repo_tags(@project_name, params)
|
|
37
39
|
end
|
|
38
40
|
|
|
39
|
-
#
|
|
41
|
+
# avoid SEGV on ruby 2.6.0
|
|
40
42
|
# https://bugs.ruby-lang.org/issues/15489
|
|
41
43
|
@all_tag_names = repo_tags.sort_by {|tag| tag.commit.authored_date }.map {|tag| tag.name }
|
|
42
|
-
# rubocop:enable Style/SymbolProc
|
|
43
44
|
end
|
|
44
45
|
|
|
45
46
|
# @return [Array<String>]
|
|
@@ -104,7 +105,7 @@ module GitlabAwesomeRelease
|
|
|
104
105
|
|
|
105
106
|
merge_request_iids =
|
|
106
107
|
commits.map do |commit|
|
|
107
|
-
commit["message"] =~
|
|
108
|
+
commit["message"] =~ @merge_request_commit_format
|
|
108
109
|
Regexp.last_match(1)
|
|
109
110
|
end
|
|
110
111
|
|
|
@@ -139,7 +140,7 @@ module GitlabAwesomeRelease
|
|
|
139
140
|
mr_iids.each_with_object("") do |iid, str|
|
|
140
141
|
begin
|
|
141
142
|
str << merge_request_summary(iid) + "\n"
|
|
142
|
-
rescue Gitlab::Error::NotFound
|
|
143
|
+
rescue Gitlab::Error::NotFound
|
|
143
144
|
# NOTE: suppress error (e.g. other repo's iid)
|
|
144
145
|
end
|
|
145
146
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: gitlab_awesome_release
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0
|
|
4
|
+
version: 1.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:
|
|
11
|
+
date: 2024-07-24 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: dotenv
|
|
@@ -66,46 +66,18 @@ dependencies:
|
|
|
66
66
|
- - ">="
|
|
67
67
|
- !ruby/object:Gem::Version
|
|
68
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.53.0.2
|
|
76
|
-
type: :development
|
|
77
|
-
prerelease: false
|
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
-
requirements:
|
|
80
|
-
- - '='
|
|
81
|
-
- !ruby/object:Gem::Version
|
|
82
|
-
version: 0.53.0.2
|
|
83
|
-
- !ruby/object:Gem::Dependency
|
|
84
|
-
name: pry-byebug
|
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
|
86
|
-
requirements:
|
|
87
|
-
- - ">="
|
|
88
|
-
- !ruby/object:Gem::Version
|
|
89
|
-
version: '0'
|
|
90
|
-
type: :development
|
|
91
|
-
prerelease: false
|
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
93
|
-
requirements:
|
|
94
|
-
- - ">="
|
|
95
|
-
- !ruby/object:Gem::Version
|
|
96
|
-
version: '0'
|
|
97
69
|
- !ruby/object:Gem::Dependency
|
|
98
70
|
name: rake
|
|
99
71
|
requirement: !ruby/object:Gem::Requirement
|
|
100
72
|
requirements:
|
|
101
|
-
- - "
|
|
73
|
+
- - ">="
|
|
102
74
|
- !ruby/object:Gem::Version
|
|
103
75
|
version: '10.0'
|
|
104
76
|
type: :development
|
|
105
77
|
prerelease: false
|
|
106
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
79
|
requirements:
|
|
108
|
-
- - "
|
|
80
|
+
- - ">="
|
|
109
81
|
- !ruby/object:Gem::Version
|
|
110
82
|
version: '10.0'
|
|
111
83
|
- !ruby/object:Gem::Dependency
|
|
@@ -137,21 +109,21 @@ dependencies:
|
|
|
137
109
|
- !ruby/object:Gem::Version
|
|
138
110
|
version: '0'
|
|
139
111
|
- !ruby/object:Gem::Dependency
|
|
140
|
-
name:
|
|
112
|
+
name: simplecov
|
|
141
113
|
requirement: !ruby/object:Gem::Requirement
|
|
142
114
|
requirements:
|
|
143
|
-
- -
|
|
115
|
+
- - ">="
|
|
144
116
|
- !ruby/object:Gem::Version
|
|
145
|
-
version: 0
|
|
117
|
+
version: '0'
|
|
146
118
|
type: :development
|
|
147
119
|
prerelease: false
|
|
148
120
|
version_requirements: !ruby/object:Gem::Requirement
|
|
149
121
|
requirements:
|
|
150
|
-
- -
|
|
122
|
+
- - ">="
|
|
151
123
|
- !ruby/object:Gem::Version
|
|
152
|
-
version: 0
|
|
124
|
+
version: '0'
|
|
153
125
|
- !ruby/object:Gem::Dependency
|
|
154
|
-
name: simplecov
|
|
126
|
+
name: simplecov-cobertura
|
|
155
127
|
requirement: !ruby/object:Gem::Requirement
|
|
156
128
|
requirements:
|
|
157
129
|
- - ">="
|
|
@@ -204,7 +176,6 @@ files:
|
|
|
204
176
|
- ".gitignore"
|
|
205
177
|
- ".gitlab-ci.yml"
|
|
206
178
|
- ".rspec"
|
|
207
|
-
- ".rubocop.yml"
|
|
208
179
|
- ".yardopts"
|
|
209
180
|
- CHANGELOG.md
|
|
210
181
|
- Gemfile
|
|
@@ -214,8 +185,6 @@ files:
|
|
|
214
185
|
- bin/console
|
|
215
186
|
- bin/setup
|
|
216
187
|
- exe/gitlab_awesome_release
|
|
217
|
-
- gitlab-ci/config
|
|
218
|
-
- gitlab-ci/rspec.sh
|
|
219
188
|
- gitlab-ci/setup.sh
|
|
220
189
|
- gitlab_awesome_release.gemspec
|
|
221
190
|
- img/private_token.png
|
|
@@ -228,7 +197,11 @@ files:
|
|
|
228
197
|
homepage: https://gitlab.com/sue445/gitlab_awesome_release
|
|
229
198
|
licenses:
|
|
230
199
|
- MIT
|
|
231
|
-
metadata:
|
|
200
|
+
metadata:
|
|
201
|
+
homepage_uri: https://gitlab.com/sue445/gitlab_awesome_release
|
|
202
|
+
source_code_uri: https://gitlab.com/sue445/gitlab_awesome_release
|
|
203
|
+
changelog_uri: https://gitlab.com/sue445/gitlab_awesome_release/blob/master/CHANGELOG.md
|
|
204
|
+
rubygems_mfa_required: 'true'
|
|
232
205
|
post_install_message:
|
|
233
206
|
rdoc_options: []
|
|
234
207
|
require_paths:
|
|
@@ -244,7 +217,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
244
217
|
- !ruby/object:Gem::Version
|
|
245
218
|
version: '0'
|
|
246
219
|
requirements: []
|
|
247
|
-
rubygems_version: 3.
|
|
220
|
+
rubygems_version: 3.5.11
|
|
248
221
|
signing_key:
|
|
249
222
|
specification_version: 4
|
|
250
223
|
summary: Generate changelog from tags and MergeRequests on GitLab
|
data/.rubocop.yml
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
inherit_gem:
|
|
2
|
-
onkcop: "config/rubocop.yml"
|
|
3
|
-
|
|
4
|
-
AllCops:
|
|
5
|
-
TargetRubyVersion: 2.4
|
|
6
|
-
|
|
7
|
-
Gemspec/RequiredRubyVersion:
|
|
8
|
-
Enabled: false
|
|
9
|
-
|
|
10
|
-
Layout/AlignHash:
|
|
11
|
-
EnforcedColonStyle: table
|
|
12
|
-
|
|
13
|
-
Layout/ClosingHeredocIndentation:
|
|
14
|
-
Enabled: false
|
|
15
|
-
|
|
16
|
-
Layout/IndentHeredoc:
|
|
17
|
-
Enabled: false
|
|
18
|
-
|
|
19
|
-
Metrics/ClassLength:
|
|
20
|
-
Max: 130
|
data/gitlab-ci/config
DELETED
data/gitlab-ci/rspec.sh
DELETED