verto 0.5.0 → 0.9.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/CHANGELOG.md +15 -0
- data/Gemfile.lock +2 -2
- data/README.md +26 -39
- data/Vertofile +49 -0
- data/exe/verto +1 -1
- data/lib/verto.rb +14 -0
- data/lib/verto/commands/main_command.rb +1 -1
- data/lib/verto/commands/tag_command.rb +25 -9
- data/lib/verto/dsl/built_in_hooks.rb +22 -0
- data/lib/verto/dsl/syntax.rb +27 -5
- data/lib/verto/utils/templates/Vertofile +18 -13
- data/lib/verto/version.rb +1 -1
- data/verto.gemspec +3 -3
- metadata +9 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bfde45c8eb00cd3302f89417e1302b90e2fd41a2fd49a5c402c6e29ec2e46fdf
|
4
|
+
data.tar.gz: d6822ed93c979646fc7c0064b39310a1a180ae632a92ea53b2a7b7841503c138
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f93afd8ec28cfcf7a6183d82570da5e5636f23ffd1387c111de3bbbbddae2db114b7022207a953f47e45020f6069024a1cdeffca419aec6fe0ca0d923583fc78
|
7
|
+
data.tar.gz: c07c60169151793d64806ae93851aabd649233f2d8364fe1aba2e896a57c89054dfd634d37b69554f934219420964f76ae3b932504b7964a2f3c14b9aeb8fe57
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
## 0.9.0 - 08/08/2020
|
2
|
+
* [FEATURE] Custom Default Pre-Release Identifier
|
3
|
+
|
4
|
+
## 0.8.0 - 05/05/2020
|
5
|
+
* [PATCH] Handles Ctrl-C / SIGINT in CLI
|
6
|
+
|
7
|
+
## 0.7.0 - 29/04/2020
|
8
|
+
* [FEATURE Built In Git Hooks]
|
9
|
+
|
10
|
+
## 0.6.1 - 15/04/2020
|
11
|
+
* [FIX] Fix Vertofile to add Gemfile.lock before release
|
12
|
+
|
13
|
+
## 0.6.0 - 14/04/2020
|
14
|
+
* [FEATURE] Adds Version Prefix
|
15
|
+
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
verto (0.
|
4
|
+
verto (0.9.0)
|
5
5
|
dry-auto_inject (~> 0.7)
|
6
6
|
dry-configurable (~> 0.8)
|
7
7
|
dry-container (~> 0.7)
|
@@ -17,7 +17,7 @@ GEM
|
|
17
17
|
docile (1.3.2)
|
18
18
|
dry-auto_inject (0.7.0)
|
19
19
|
dry-container (>= 0.3.4)
|
20
|
-
dry-configurable (0.11.
|
20
|
+
dry-configurable (0.11.6)
|
21
21
|
concurrent-ruby (~> 1.0)
|
22
22
|
dry-core (~> 0.4, >= 0.4.7)
|
23
23
|
dry-equalizer (~> 0.2)
|
data/README.md
CHANGED
@@ -32,28 +32,20 @@ You don't need to install verto in your machine, you can run verto via the docke
|
|
32
32
|
To use verto in the same way that you use any other cli, you can set an alias in your `.bashrc`, `.zshrc`, etc:
|
33
33
|
|
34
34
|
```shell
|
35
|
-
alias verto='docker run -v $(pwd):/usr/src/project -it catks/verto:0.
|
35
|
+
alias verto='docker run -v $(pwd):/usr/src/project -it catks/verto:0.9.0'
|
36
36
|
```
|
37
37
|
|
38
38
|
If you want you can share your git configuration and known_hosts with:
|
39
39
|
|
40
40
|
```shell
|
41
|
-
alias verto='docker run -v ~/.gitconfig:/etc/gitconfig -v $(pwd):/usr/src/project -v $HOME/.ssh/known_hosts:/root/.ssh/known_hosts -it catks/verto:0.
|
41
|
+
alias verto='docker run -v ~/.gitconfig:/etc/gitconfig -v $(pwd):/usr/src/project -v $HOME/.ssh/known_hosts:/root/.ssh/known_hosts -it catks/verto:0.9.0'
|
42
42
|
|
43
43
|
```
|
44
44
|
|
45
|
-
You can also use your ssh keys with verto container (for git push):
|
45
|
+
You can also use your ssh keys, know_hosts and git config with verto container (for git push):
|
46
46
|
|
47
47
|
```shell
|
48
|
-
alias verto='docker run -v $(pwd):/usr/src/project -v $HOME/.ssh/known_hosts:/root/.ssh/known_hosts -v $HOME/.ssh/id_rsa:/root/.ssh/id_rsa -e SSH_PRIVATE_KEY=/root/.ssh/id_rsa -it catks/verto:0.
|
49
|
-
|
50
|
-
```
|
51
|
-
|
52
|
-
Or share the git config, known_hosts and ssh_keys:
|
53
|
-
|
54
|
-
|
55
|
-
```shell
|
56
|
-
alias verto='docker run -v ~/.gitconfig:/etc/gitconfig -v $(pwd):/usr/src/project -v $HOME/.ssh/known_hosts:/root/.ssh/known_hosts -v $HOME/.ssh/id_rsa:/root/.ssh/id_rsa -e SSH_PRIVATE_KEY=/root/.ssh/id_rsa -it catks/verto:0.4.1'
|
48
|
+
alias verto='docker run -v ~/.gitconfig:/etc/gitconfig -v $(pwd):/usr/src/project -v $HOME/.ssh/known_hosts:/root/.ssh/known_hosts -v $HOME/.ssh/id_rsa:/root/.ssh/id_rsa -e SSH_PRIVATE_KEY=/root/.ssh/id_rsa -it catks/verto:0.9.0'
|
57
49
|
|
58
50
|
```
|
59
51
|
|
@@ -93,22 +85,24 @@ You can create a new Vertofile with `verto init` or following the next example:
|
|
93
85
|
```ruby
|
94
86
|
# Vertofile
|
95
87
|
|
96
|
-
verto_version '0.
|
88
|
+
verto_version '0.9.0'
|
89
|
+
|
90
|
+
config {
|
91
|
+
# version.prefix = 'v' # Adds a version_prefix
|
92
|
+
# pre_release.default_identifier = 'alpha' } # Defaults to 'rc'
|
93
|
+
git.pull_before_tag_creation = true # Pull Changes before tag creation
|
94
|
+
git.push_after_tag_creation = true # Push changes after tag creation
|
95
|
+
}
|
97
96
|
|
98
97
|
context(branch('master')) {
|
99
|
-
|
100
|
-
git!('origin master')
|
98
|
+
before_command_tag_up {
|
101
99
|
command_options.add(filter: 'release_only')
|
102
100
|
}
|
103
101
|
|
104
|
-
|
105
|
-
|
106
|
-
version_changes = ""
|
107
|
-
bitbucket_changes = sh(
|
102
|
+
before_tag_creation {
|
103
|
+
version_changes = sh(
|
108
104
|
%q#git log --oneline --decorate | grep -B 100 -m 1 "tag:" | grep "pull request" | awk '{print $1}' | xargs git show --format='%b' | grep -v Approved | grep -v "^$" | grep -E "^[[:space:]]*\[.*\]" | sed 's/^[[:space:]]*\(.*\)/ * \1/'#, output: false
|
109
105
|
).output
|
110
|
-
version_changes = bitbucket_changes
|
111
|
-
|
112
106
|
|
113
107
|
puts "---------------------------"
|
114
108
|
version_changes = "## #{new_version} - #{Time.now.strftime('%d/%m/%Y')}\n#{version_changes}\n"
|
@@ -126,38 +120,33 @@ context(branch('master')) {
|
|
126
120
|
# file('package.json').replace(/"(\d+)\.(\d+)\.(\d+)(-?.*)"/, %Q{"#{new_version}"})
|
127
121
|
# git('add package.json')
|
128
122
|
|
129
|
-
git('commit -m "Updates CHANGELOG"')
|
123
|
+
git!('commit -m "Updates CHANGELOG"')
|
130
124
|
}
|
131
125
|
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
126
|
+
# After Hooks
|
127
|
+
# after_command_tag_up {
|
128
|
+
# git('push --tags')
|
129
|
+
# git('push origin master')
|
130
|
+
# }
|
136
131
|
}
|
137
132
|
|
138
133
|
context(branch('staging')) {
|
139
|
-
|
134
|
+
before_command_tag_up {
|
140
135
|
git!('pull origin staging')
|
141
136
|
command_options.add(pre_release: 'rc')
|
142
137
|
}
|
143
138
|
|
144
|
-
|
139
|
+
before_tag_creation {
|
145
140
|
# file('package.json').replace(/"(\d+)\.(\d+)\.(\d+)(-?.*)"/, %Q{"#{new_version}"})
|
146
141
|
# git('add package.json')
|
147
142
|
|
148
|
-
git('commit -m "Release
|
149
|
-
git('commit --allow-empty -m "Staging Release"')
|
150
|
-
}
|
151
|
-
|
152
|
-
after_command('tag_up') {
|
153
|
-
git('push --tags')
|
154
|
-
git('push origin staging')
|
143
|
+
git!('commit --allow-empty -m "Staging Release"')
|
155
144
|
}
|
156
145
|
}
|
157
146
|
|
158
147
|
# Block tag creation in other branchs
|
159
148
|
context(!branch('master', 'staging')) {
|
160
|
-
error "Tags only
|
149
|
+
error "Tags can only be created in master or staging branch"
|
161
150
|
exit
|
162
151
|
}
|
163
152
|
```
|
@@ -170,9 +159,7 @@ context(!branch('master', 'staging')) {
|
|
170
159
|
|
171
160
|
1. Complete README.md description
|
172
161
|
2. Add a configuration to enable, disable or specify the number of tags that a single commit can have(eg: only one release and one pre-release)
|
173
|
-
3.
|
174
|
-
4. Improve DSL Syntax Errors Messages(Ruby backtrace is printed currently)
|
175
|
-
5. Adds more specs and test coverage in CI
|
162
|
+
3. Adds more specs and test coverage in CI
|
176
163
|
|
177
164
|
## Contributing
|
178
165
|
|
data/Vertofile
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
verto_version '0.7.0'
|
2
|
+
|
3
|
+
config {
|
4
|
+
version.prefix = 'v' # Adds a version_prefix
|
5
|
+
git.pull_before_tag_creation = true
|
6
|
+
git.push_after_tag_creation = true
|
7
|
+
}
|
8
|
+
|
9
|
+
context(branch('master')) {
|
10
|
+
before_command_tag_up {
|
11
|
+
command_options.add(filter: 'release_only')
|
12
|
+
}
|
13
|
+
|
14
|
+
before_tag_creation {
|
15
|
+
version_changes = ""
|
16
|
+
bitbucket_changes = sh(
|
17
|
+
%q#git log --oneline --decorate | grep -B 100 -m 1 "tag:" | grep "pull request" | awk '{print $1}' | xargs git show --format='%b' | grep -v Approved | grep -v "^$" | grep -E "^[[:space:]]*\[.*\]" | sed 's/^[[:space:]]*\(.*\)/ * \1/'#, output: false
|
18
|
+
).output
|
19
|
+
version_changes = bitbucket_changes
|
20
|
+
|
21
|
+
puts "---------------------------"
|
22
|
+
version_changes = "## #{new_version} - #{Time.now.strftime('%d/%m/%Y')}\n#{version_changes}\n"
|
23
|
+
exit unless confirm("Create new Realease?\n" \
|
24
|
+
"---------------------------\n" \
|
25
|
+
"#{version_changes}" \
|
26
|
+
"---------------------------\n"
|
27
|
+
)
|
28
|
+
|
29
|
+
# CHANGELOG
|
30
|
+
file('CHANGELOG.md').prepend(version_changes)
|
31
|
+
git!('add CHANGELOG.md')
|
32
|
+
|
33
|
+
file('lib/verto/version.rb').replace(latest_version.to_s, new_version.to_s)
|
34
|
+
git!('add lib/verto/version.rb')
|
35
|
+
|
36
|
+
file('README.md').replace_all(latest_version.to_s, new_version.to_s)
|
37
|
+
git!('add README.md')
|
38
|
+
|
39
|
+
file('lib/verto/utils/templates/Vertofile').replace(latest_version.to_s, new_version.to_s)
|
40
|
+
git!('add lib/verto/utils/templates/Vertofile')
|
41
|
+
|
42
|
+
sh!('bundle install')
|
43
|
+
sh!('rake install')
|
44
|
+
git!('add Gemfile.lock')
|
45
|
+
|
46
|
+
git!('commit -m "Bumps Version"')
|
47
|
+
}
|
48
|
+
}
|
49
|
+
|
data/exe/verto
CHANGED
data/lib/verto.rb
CHANGED
@@ -13,6 +13,7 @@ module Verto
|
|
13
13
|
|
14
14
|
setting :pre_release do
|
15
15
|
setting :initial_number, 1
|
16
|
+
setting :default_identifier, 'rc'
|
16
17
|
end
|
17
18
|
|
18
19
|
setting :project do
|
@@ -24,6 +25,18 @@ module Verto
|
|
24
25
|
setting :stderr_to, nil
|
25
26
|
end
|
26
27
|
|
28
|
+
setting :version do
|
29
|
+
setting :prefix, ''
|
30
|
+
setting :validations do
|
31
|
+
setting :new_version_must_be_bigger, true
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
setting :git do
|
36
|
+
setting :pull_before_tag_creation, false
|
37
|
+
setting :push_after_tag_creation, false
|
38
|
+
end
|
39
|
+
|
27
40
|
setting :hooks, []
|
28
41
|
setting :command_options, CommandOptions.new
|
29
42
|
|
@@ -84,6 +97,7 @@ require "verto/dsl/syntax"
|
|
84
97
|
require "verto/dsl/interpreter"
|
85
98
|
require "verto/dsl/hook"
|
86
99
|
require "verto/dsl/file"
|
100
|
+
require "verto/dsl/built_in_hooks"
|
87
101
|
require "verto/commands/base_command"
|
88
102
|
require "verto/commands/tag_command"
|
89
103
|
require "verto/commands/main_command"
|
@@ -8,8 +8,11 @@ module Verto
|
|
8
8
|
option :pre_release, type: :string
|
9
9
|
option :filter, type: :string
|
10
10
|
option :release, type: :boolean, default: false
|
11
|
+
option :version_prefix, type: :string, default: nil
|
11
12
|
|
12
13
|
def up
|
14
|
+
load_config_hooks!
|
15
|
+
|
13
16
|
call_hooks(%i[before before_tag_up], with_attributes: { command_options: options} )
|
14
17
|
|
15
18
|
validate_version_option_presence!
|
@@ -26,9 +29,9 @@ module Verto
|
|
26
29
|
|
27
30
|
call_hooks(:before_tag_creation, with_attributes: { new_version: new_version } )
|
28
31
|
|
29
|
-
stderr.puts "Creating Tag #{new_version}..."
|
30
|
-
tag_repository.create!(new_version
|
31
|
-
stderr.puts "Tag #{new_version} Created!"
|
32
|
+
stderr.puts "Creating Tag #{version_prefix}#{new_version}..."
|
33
|
+
tag_repository.create!("#{version_prefix}#{new_version}")
|
34
|
+
stderr.puts "Tag #{version_prefix}#{new_version} Created!"
|
32
35
|
|
33
36
|
call_hooks(:after_tag_up, with_attributes: { new_version: new_version })
|
34
37
|
call_hooks(:after)
|
@@ -39,13 +42,13 @@ module Verto
|
|
39
42
|
include Verto.import['tag_repository']
|
40
43
|
|
41
44
|
def up_version(version, options)
|
42
|
-
up_options = options.select { |
|
43
|
-
up_option = up_options.
|
45
|
+
up_options = options.select { |_, value| value == true }.keys.map(&:to_sym) & [:major, :minor, :patch]
|
46
|
+
up_option = up_options.min
|
44
47
|
|
45
48
|
new_version = version.up(up_option)
|
46
49
|
|
47
50
|
if options[:pre_release]
|
48
|
-
identifier = pre_release_configured? ? options[:pre_release] : version.pre_release.name
|
51
|
+
identifier = pre_release_configured? ? options[:pre_release] : version.pre_release.name || default_identifier
|
49
52
|
new_version = new_version.with_pre_release(identifier)
|
50
53
|
new_version = new_version.up(:pre_release) if new_version.pre_release.name == version.pre_release.name && new_version == version
|
51
54
|
end
|
@@ -65,7 +68,7 @@ module Verto
|
|
65
68
|
command_error!(
|
66
69
|
<<~TEXT
|
67
70
|
Project doesn't have a previous tag version, create a new tag with git.
|
68
|
-
eg: `git tag 0.1.0`
|
71
|
+
eg: `git tag #{version_prefix}0.1.0`
|
69
72
|
TEXT
|
70
73
|
) unless latest_tag
|
71
74
|
end
|
@@ -74,11 +77,11 @@ module Verto
|
|
74
77
|
command_error!(
|
75
78
|
<<~TEXT
|
76
79
|
New version(#{new_version}) can't be equal or lower than latest version(#{latest_version})
|
77
|
-
run up --pre-release with --patch, --minor or --major (eg: verto tag up --pre-release
|
80
|
+
run up --pre-release with --patch, --minor or --major (eg: verto tag up --patch --pre-release=rc),
|
78
81
|
add filters (eg: verto tag up --pre-release --filter=pre_release_only)
|
79
82
|
or disable tag validation in Vertofile with config.version.validations.new_version_must_be_bigger = false
|
80
83
|
TEXT
|
81
|
-
) if new_version < latest_version
|
84
|
+
) if new_version < latest_version && Verto.config.version.validations.new_version_must_be_bigger
|
82
85
|
end
|
83
86
|
|
84
87
|
def validate_version_option_presence!
|
@@ -99,5 +102,18 @@ module Verto
|
|
99
102
|
def load_filter
|
100
103
|
TagFilter.for(options[:filter]) || Regexp.new(options[:filter].to_s)
|
101
104
|
end
|
105
|
+
|
106
|
+
def version_prefix
|
107
|
+
options[:version_prefix] || Verto.config.version.prefix
|
108
|
+
end
|
109
|
+
|
110
|
+
def load_config_hooks!
|
111
|
+
Verto.config.hooks.prepend Verto::DSL::BuiltInHooks::GitPullCurrentBranch if Verto.config.git.pull_before_tag_creation
|
112
|
+
Verto.config.hooks << Verto::DSL::BuiltInHooks::GitPushCurrentBranch if Verto.config.git.push_after_tag_creation
|
113
|
+
end
|
114
|
+
|
115
|
+
def default_identifier
|
116
|
+
Verto.config.pre_release.default_identifier
|
117
|
+
end
|
102
118
|
end
|
103
119
|
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module Verto
|
2
|
+
module DSL
|
3
|
+
module BuiltInHooks
|
4
|
+
GitPullCurrentBranch = DSL::Hook.new(moment: :before) do
|
5
|
+
git!("pull origin #{current_branch}")
|
6
|
+
end
|
7
|
+
|
8
|
+
GitPushTags = DSL::Hook.new(moment: :after) do
|
9
|
+
git!("push --tags")
|
10
|
+
end
|
11
|
+
|
12
|
+
GitPushCurrentBranchCommits = DSL::Hook.new(moment: :after) do
|
13
|
+
git!("push origin #{current_branch}")
|
14
|
+
end
|
15
|
+
|
16
|
+
GitPushCurrentBranch = DSL::Hook.new(moment: :after) do
|
17
|
+
GitPushTags.call
|
18
|
+
GitPushCurrentBranchCommits.call
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
data/lib/verto/dsl/syntax.rb
CHANGED
@@ -55,17 +55,13 @@ module Verto
|
|
55
55
|
end
|
56
56
|
|
57
57
|
def sh!(command, output: :from_config)
|
58
|
-
raise Verto::ExitError unless sh(command, output: output).success?
|
58
|
+
raise Verto::ExitError, command unless sh(command, output: output).success?
|
59
59
|
end
|
60
60
|
|
61
61
|
def command_options
|
62
62
|
Verto.config.command_options
|
63
63
|
end
|
64
64
|
|
65
|
-
def on(moment, &block)
|
66
|
-
Verto.config.hooks << Hook.new(moment: moment, &block)
|
67
|
-
end
|
68
|
-
|
69
65
|
def before(&block)
|
70
66
|
Verto.config.hooks << Hook.new(moment: :before, &block)
|
71
67
|
end
|
@@ -74,14 +70,36 @@ module Verto
|
|
74
70
|
Verto.config.hooks << Hook.new(moment: :after, &block)
|
75
71
|
end
|
76
72
|
|
73
|
+
def on(moment, &block)
|
74
|
+
deprecate('on', use: 'before_tag_creation')
|
75
|
+
|
76
|
+
Verto.config.hooks << Hook.new(moment: moment, &block)
|
77
|
+
end
|
78
|
+
|
77
79
|
def before_command(command_name, &block)
|
80
|
+
deprecate('before_command', use: 'before_command_tag_up')
|
81
|
+
|
78
82
|
Verto.config.hooks << Hook.new(moment: "before_#{command_name}", &block)
|
79
83
|
end
|
80
84
|
|
81
85
|
def after_command(command_name, &block)
|
86
|
+
deprecate('after_command', use: 'after_command_tag_up')
|
87
|
+
|
82
88
|
Verto.config.hooks << Hook.new(moment: "after_#{command_name}", &block)
|
83
89
|
end
|
84
90
|
|
91
|
+
def before_command_tag_up(&block)
|
92
|
+
Verto.config.hooks << Hook.new(moment: 'before_tag_up', &block)
|
93
|
+
end
|
94
|
+
|
95
|
+
def after_command_tag_up(&block)
|
96
|
+
Verto.config.hooks << Hook.new(moment: 'after_tag_up', &block)
|
97
|
+
end
|
98
|
+
|
99
|
+
def before_tag_creation(&block)
|
100
|
+
Verto.config.hooks << Hook.new(moment: 'before_tag_creation', &block)
|
101
|
+
end
|
102
|
+
|
85
103
|
def file(filepath)
|
86
104
|
DSL::File.new(filepath)
|
87
105
|
end
|
@@ -135,6 +153,10 @@ module Verto
|
|
135
153
|
|
136
154
|
SemanticVersion.new(tag_version)
|
137
155
|
end
|
156
|
+
|
157
|
+
def deprecate(current, use:)
|
158
|
+
warn "[DEPRECATED] `#{current}` is deprecated and will be removed in a future release, use `#{use}` instead"
|
159
|
+
end
|
138
160
|
end
|
139
161
|
end
|
140
162
|
end
|
@@ -1,20 +1,25 @@
|
|
1
|
-
verto_version '0.
|
1
|
+
verto_version '0.9.0'
|
2
|
+
|
3
|
+
config {
|
4
|
+
# version.prefix = 'v' # Adds a version_prefix
|
5
|
+
# pre_release.initial_number = 0 # Configures pre_release initial number, defaults to 1
|
6
|
+
# project.path = "#{project_path}" # Configures a custom project path
|
7
|
+
# git.pull_before_tag_creation = true # Pull Changes before tag creation
|
8
|
+
# git.push_after_tag_creation = true # Push changes after tag creation
|
9
|
+
}
|
2
10
|
|
3
11
|
context(branch('master')) {
|
4
|
-
|
5
|
-
git!('origin master')
|
12
|
+
before_command_tag_up {
|
13
|
+
git!('pull origin master')
|
6
14
|
command_options.add(filter: 'release_only')
|
7
15
|
}
|
8
16
|
|
9
|
-
|
10
|
-
|
17
|
+
before_tag_creation{
|
11
18
|
version_changes = ""
|
12
|
-
# Uncomment to get
|
13
|
-
#
|
19
|
+
# Uncomment to get Merged PRs Titles as changes to add in CHANGELOG.
|
20
|
+
# version_changes = sh(
|
14
21
|
# %q#git log --oneline --decorate | grep -B 100 -m 1 "tag:" | grep "pull request" | awk '{print $1}' | xargs git show --format='%b' | grep -v Approved | grep -v "^$" | grep -E "^[[:space:]]*\[.*\]" | sed 's/^[[:space:]]*\(.*\)/ * \1/'#, output: false
|
15
22
|
# ).output
|
16
|
-
# version_changes = bitbucket_changes
|
17
|
-
|
18
23
|
|
19
24
|
puts "---------------------------"
|
20
25
|
version_changes = "## #{new_version} - #{Time.now.strftime('%d/%m/%Y')}\n#{version_changes}\n"
|
@@ -35,7 +40,7 @@ context(branch('master')) {
|
|
35
40
|
git('commit -m "Updates CHANGELOG"')
|
36
41
|
}
|
37
42
|
|
38
|
-
|
43
|
+
after_command_tag_up {
|
39
44
|
git('push --tags')
|
40
45
|
git('push origin master')
|
41
46
|
}
|
@@ -43,18 +48,18 @@ context(branch('master')) {
|
|
43
48
|
|
44
49
|
# Uncomment to get a specific pre_release proccess, like a staging or qa branch
|
45
50
|
# context(branch('staging')) {
|
46
|
-
#
|
51
|
+
# before_command_tag_up {
|
47
52
|
# git!('pull origin staging')
|
48
53
|
# command_options.add(pre_release: 'rc')
|
49
54
|
# }
|
50
55
|
#
|
51
|
-
#
|
56
|
+
# before_tag_creation {
|
52
57
|
# file('package.json').replace(/"(\d+)\.(\d+)\.(\d+)(-?.*)"/, %Q{"#{new_version}"}) # Atualiza versão do package.json
|
53
58
|
# git('add package.json')
|
54
59
|
# git('commit --allow-empty -m "Staging Release"')
|
55
60
|
# }
|
56
61
|
|
57
|
-
#
|
62
|
+
# after_command_tag_up {
|
58
63
|
# git('push --tags')
|
59
64
|
# git('push origin staging')
|
60
65
|
# }
|
data/lib/verto/version.rb
CHANGED
data/verto.gemspec
CHANGED
@@ -13,9 +13,9 @@ Gem::Specification.new do |spec|
|
|
13
13
|
spec.license = "MIT"
|
14
14
|
|
15
15
|
|
16
|
-
|
17
|
-
|
18
|
-
|
16
|
+
spec.metadata["homepage_uri"] = spec.homepage
|
17
|
+
spec.metadata["source_code_uri"] = "https://github.com/catks/verto"
|
18
|
+
spec.metadata["changelog_uri"] = "https://github.com/catks/verto/blob/master/CHANGELOG.md"
|
19
19
|
|
20
20
|
# Specify which files should be added to the gem when it is released.
|
21
21
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: verto
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Carlos Atkinson
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-08-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -162,12 +162,14 @@ files:
|
|
162
162
|
- ".rspec"
|
163
163
|
- ".ruby-version"
|
164
164
|
- ".travis.yml"
|
165
|
+
- CHANGELOG.md
|
165
166
|
- Dockerfile
|
166
167
|
- Gemfile
|
167
168
|
- Gemfile.lock
|
168
169
|
- LICENSE.txt
|
169
170
|
- README.md
|
170
171
|
- Rakefile
|
172
|
+
- Vertofile
|
171
173
|
- bin/console
|
172
174
|
- bin/setup
|
173
175
|
- docker-entrypoint.sh
|
@@ -177,6 +179,7 @@ files:
|
|
177
179
|
- lib/verto/commands/main_command.rb
|
178
180
|
- lib/verto/commands/tag_command.rb
|
179
181
|
- lib/verto/dsl.rb
|
182
|
+
- lib/verto/dsl/built_in_hooks.rb
|
180
183
|
- lib/verto/dsl/file.rb
|
181
184
|
- lib/verto/dsl/hook.rb
|
182
185
|
- lib/verto/dsl/interpreter.rb
|
@@ -193,7 +196,10 @@ files:
|
|
193
196
|
homepage: https://github.com/catks/verto
|
194
197
|
licenses:
|
195
198
|
- MIT
|
196
|
-
metadata:
|
199
|
+
metadata:
|
200
|
+
homepage_uri: https://github.com/catks/verto
|
201
|
+
source_code_uri: https://github.com/catks/verto
|
202
|
+
changelog_uri: https://github.com/catks/verto/blob/master/CHANGELOG.md
|
197
203
|
post_install_message:
|
198
204
|
rdoc_options: []
|
199
205
|
require_paths:
|