bigkeeper 0.8.2 → 0.8.3
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/Gemfile.lock +1 -1
- data/lib/big_keeper.rb +3 -0
- data/lib/big_keeper/command/feature&hotfix/list.rb +2 -2
- data/lib/big_keeper/command/feature&hotfix/switch.rb +1 -2
- data/lib/big_keeper/command/module.rb +23 -0
- data/lib/big_keeper/command/module/list.rb +18 -0
- data/lib/big_keeper/command/release/home.rb +35 -14
- data/lib/big_keeper/command/release/module.rb +8 -6
- data/lib/big_keeper/util/git_operator.rb +3 -2
- data/lib/big_keeper/util/list_generator.rb +20 -1
- data/lib/big_keeper/version.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b0865993502adc9ea5a674ce5201cc9d28cad25b
|
4
|
+
data.tar.gz: 98224dd734ab65172620028b5a6138fa0a73d872
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: eb028888e708fd0156d0d1a4c03d6d107ac5f1c64b4138ecd8922e78a3048051d6f87dcf87a46b66ac0a5fb68f404463a9a13737ff9a6f4aed82a4109874d2ef
|
7
|
+
data.tar.gz: fcecfc0731700f362578423571b472fa1b277421df0653e88f79ac457b06462f7618315e4597f373754c690c7b1765ca7f2a07d4d159a082a1d233a1ecfb0e9e
|
data/Gemfile.lock
CHANGED
data/lib/big_keeper.rb
CHANGED
@@ -11,6 +11,7 @@ require 'big_keeper/model/gitflow_type'
|
|
11
11
|
require 'big_keeper/command/feature&hotfix'
|
12
12
|
require 'big_keeper/command/release'
|
13
13
|
require 'big_keeper/command/pod'
|
14
|
+
require 'big_keeper/command/module'
|
14
15
|
|
15
16
|
require 'big_keeper/service/git_service'
|
16
17
|
|
@@ -44,6 +45,8 @@ module BigKeeper
|
|
44
45
|
|
45
46
|
pod_command
|
46
47
|
|
48
|
+
module_command
|
49
|
+
|
47
50
|
desc 'Show version of bigkeeper'
|
48
51
|
command :version do |version|
|
49
52
|
version.action do |global_options, options, args|
|
@@ -22,7 +22,7 @@ module BigKeeper
|
|
22
22
|
file = File.new(json_path, 'w')
|
23
23
|
begin
|
24
24
|
#get all modules info
|
25
|
-
module_list_dic = get_module_info(path, user, type, version, branches)
|
25
|
+
module_list_dic = get_module_info(path, user, type, version, branches, is_print_log)
|
26
26
|
file << module_list_dic.to_json
|
27
27
|
file.close
|
28
28
|
end
|
@@ -33,7 +33,7 @@ module BigKeeper
|
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
36
|
-
def self.get_module_info(path, user, type, version, home_branches)
|
36
|
+
def self.get_module_info(path, user, type, version, home_branches, is_print_log)
|
37
37
|
#get module list
|
38
38
|
modules = BigkeeperParser.module_names
|
39
39
|
git_operator = GitOperator.new
|
@@ -7,13 +7,12 @@ require 'big_keeper/util/xcode_operator'
|
|
7
7
|
require 'big_keeper/dependency/dep_service'
|
8
8
|
|
9
9
|
module BigKeeper
|
10
|
-
def self.switch_to(path, version, user,
|
10
|
+
def self.switch_to(path, version, user, full_name, type)
|
11
11
|
begin
|
12
12
|
# Parse Bigkeeper file
|
13
13
|
BigkeeperParser.parse("#{path}/Bigkeeper")
|
14
14
|
|
15
15
|
version = BigkeeperParser.version if version == 'Version in Bigkeeper file'
|
16
|
-
full_name = "#{version}_#{user}_#{name}"
|
17
16
|
branch_name = "#{GitflowType.name(type)}/#{full_name}"
|
18
17
|
|
19
18
|
GitService.new.verify_home_branch(path, branch_name, OperateType::SWITCH)
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require 'big_keeper/command/module/list'
|
2
|
+
|
3
|
+
module BigKeeper
|
4
|
+
|
5
|
+
def self.module_command
|
6
|
+
|
7
|
+
desc 'Module operation'
|
8
|
+
command :module do | mod |
|
9
|
+
|
10
|
+
mod.desc 'module'
|
11
|
+
mod.desc 'Prase module relevant infomation.'
|
12
|
+
mod.command :list do | list |
|
13
|
+
list.action do |global_options, options, args|
|
14
|
+
path = File.expand_path(global_options[:path])
|
15
|
+
version = global_options[:ver]
|
16
|
+
user = global_options[:user].gsub(/[^0-9A-Za-z]/, '').downcase
|
17
|
+
|
18
|
+
module_list(path, user, options)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require 'logger'
|
2
|
+
require 'json'
|
3
|
+
|
4
|
+
module BigKeeper
|
5
|
+
def self.module_list(path, user, options)
|
6
|
+
BigkeeperParser.parse("#{path}/Bigkeeper")
|
7
|
+
module_dic = BigkeeperParser.parse_modules
|
8
|
+
module_list = Array.new
|
9
|
+
module_dic.keys.each do | key |
|
10
|
+
dic = Hash["module_name" => key,
|
11
|
+
"git" => module_dic[key][:git],
|
12
|
+
"pulls" => module_dic[key][:pulls]]
|
13
|
+
module_list << dic
|
14
|
+
end
|
15
|
+
json = JSON.pretty_generate(module_list)
|
16
|
+
Logger.default(json)
|
17
|
+
end
|
18
|
+
end
|
@@ -10,13 +10,15 @@ module BigKeeper
|
|
10
10
|
def self.release_home_start(path, version, user)
|
11
11
|
BigkeeperParser.parse("#{path}/Bigkeeper")
|
12
12
|
|
13
|
+
version = BigkeeperParser.version if version == 'Version in Bigkeeper file'
|
13
14
|
modules = BigkeeperParser.module_names
|
14
15
|
|
16
|
+
CacheOperator.new(path).save('Podfile')
|
17
|
+
|
15
18
|
#stash
|
16
19
|
StashService.new.stash_all(path, GitOperator.new.current_branch(path), user, modules)
|
17
20
|
|
18
21
|
# check
|
19
|
-
GitOperator.new.check_merge(path, "feature/#{version}")
|
20
22
|
GitOperator.new.check_diff(path, "develop", "master")
|
21
23
|
|
22
24
|
#checkout release branch
|
@@ -45,22 +47,41 @@ module BigKeeper
|
|
45
47
|
end
|
46
48
|
|
47
49
|
def self.release_home_finish(path, version)
|
50
|
+
BigkeeperParser.parse("#{path}/Bigkeeper")
|
51
|
+
version = BigkeeperParser.version if version == 'Version in Bigkeeper file'
|
52
|
+
Logger.highlight("Start finish release home for #{version}")
|
48
53
|
if GitOperator.new.has_branch(path, "release/#{version}")
|
49
|
-
if GitOperator.new.current_branch(path)
|
50
|
-
GitOperator.new.
|
51
|
-
GitOperator.new.push_to_remote(path, "release/#{version}")
|
52
|
-
GitflowOperator.new.finish_release(path, version)
|
53
|
-
if GitOperator.new.current_branch(path) == "master"
|
54
|
-
GitOperator.new.tag(path, version)
|
55
|
-
else
|
56
|
-
GitOperator.new.checkout(path, "master")
|
57
|
-
GitOperator.new.tag(path, version)
|
58
|
-
end
|
59
|
-
else
|
60
|
-
raise Logger.error("Not in release branch, please check your branches.")
|
54
|
+
if GitOperator.new.current_branch(path) != "release/#{version}"
|
55
|
+
GitOperator.new.checkout(path, "release/#{version}")
|
61
56
|
end
|
57
|
+
|
58
|
+
GitOperator.new.commit(path, "release: V #{version}")
|
59
|
+
GitOperator.new.push_to_remote(path, "release/#{version}")
|
60
|
+
|
61
|
+
# master
|
62
|
+
GitOperator.new.checkout(path, "master")
|
63
|
+
GitOperator.new.merge(path, "release/#{version}")
|
64
|
+
GitOperator.new.push_to_remote(path, "master")
|
65
|
+
if GitOperator.new.current_branch(path) != "master"
|
66
|
+
GitOperator.new.checkout(path, "master")
|
67
|
+
end
|
68
|
+
GitOperator.new.tag(path, version)
|
69
|
+
|
70
|
+
# develop
|
71
|
+
GitOperator.new.checkout(path, "release/#{version}")
|
72
|
+
CacheOperator.new(path).load('Podfile')
|
73
|
+
CacheOperator.new(path).clean()
|
74
|
+
GitOperator.new.commit(path, "reset #{verbose} Podfile")
|
75
|
+
GitOperator.new.push_to_remote(path, "release/#{version}")
|
76
|
+
|
77
|
+
GitOperator.new.checkout(path, "develop")
|
78
|
+
GitOperator.new.merge(path, "release/#{version}")
|
79
|
+
GitOperator.new.push_to_remote(path, "develop")
|
80
|
+
GitOperator.new.check_diff(path, "develop", "master")
|
81
|
+
|
82
|
+
Logger.highlight("Finish release home for #{version}")
|
62
83
|
else
|
63
|
-
raise Logger.error("
|
84
|
+
raise Logger.error("Dont have release/#{version} branch, please use release home start first.")
|
64
85
|
end
|
65
86
|
end
|
66
87
|
|
@@ -36,6 +36,12 @@ module BigKeeper
|
|
36
36
|
|
37
37
|
# check commit
|
38
38
|
Logger.error("current branch has unpush files") if GitOperator.new.has_changes(module_path)
|
39
|
+
|
40
|
+
#修改 podspec 文件
|
41
|
+
# TO DO: - advanced to use Regular Expression
|
42
|
+
has_change = PodfileOperator.new.podspec_change(%Q(#{module_path}/#{module_name}.podspec), version, module_name)
|
43
|
+
GitService.new.verify_push(module_path, "Change version number", "develop", "#{module_name}") if has_change == true
|
44
|
+
|
39
45
|
# check out master
|
40
46
|
Logger.highlight("'#{module_name}' checkout branch to master...")
|
41
47
|
GitService.new.verify_checkout_pull(module_path, "master")
|
@@ -43,13 +49,9 @@ module BigKeeper
|
|
43
49
|
Logger.highlight(%Q(Merge develop to master))
|
44
50
|
# merge develop to master
|
45
51
|
GitOperator.new.merge(module_path, "develop")
|
46
|
-
GitOperator.new.push_to_remote(module_path, "master")
|
52
|
+
# GitOperator.new.push_to_remote(module_path, "master")
|
47
53
|
|
48
|
-
|
49
|
-
# TO DO: - advanced to use Regular Expression
|
50
|
-
has_change = PodfileOperator.new.podspec_change(%Q(#{module_path}/#{module_name}.podspec), version, module_name)
|
51
|
-
GitService.new.verify_push(module_path, "Change version number", "master", "#{module_name}") if has_change == true
|
52
|
-
GitOperator.new.tag(module_path, version)
|
54
|
+
# GitOperator.new.tag(module_path, version)
|
53
55
|
# pod repo push
|
54
56
|
if spec == true
|
55
57
|
PodOperator.pod_repo_push(module_path, module_name, BigkeeperParser.source_spec_path(module_name), version)
|
@@ -184,8 +184,9 @@ module BigKeeper
|
|
184
184
|
compare_branch_commits.map { |item|
|
185
185
|
Logger.default(item)
|
186
186
|
}
|
187
|
-
Logger.error("#{compare_branch} branch has commit
|
188
|
-
|
187
|
+
Logger.error("#{compare_branch} branch has commit doesn't committed in #{branch}, please check")
|
188
|
+
else
|
189
|
+
Logger.highlight("#{compare_branch} branch doesn't has commit before #{branch}")
|
189
190
|
end
|
190
191
|
end
|
191
192
|
|
@@ -39,7 +39,26 @@ module BigKeeper
|
|
39
39
|
end
|
40
40
|
end
|
41
41
|
end
|
42
|
-
|
42
|
+
|
43
|
+
branch_dic["is_remote"] = false
|
44
|
+
if home_branch_name =~ /^remotes\//
|
45
|
+
home_branch_name = $~.post_match
|
46
|
+
branch_dic["is_remote"] = true
|
47
|
+
end
|
48
|
+
|
49
|
+
if home_branch_name =~ /^origin\//
|
50
|
+
home_branch_name = $~.post_match
|
51
|
+
end
|
52
|
+
|
53
|
+
if home_branch_name =~ /^feature\//
|
54
|
+
home_branch_name = $~.post_match
|
55
|
+
end
|
56
|
+
|
57
|
+
if home_branch_name =~ /^hotfix\//
|
58
|
+
home_branch_name = $~.post_match
|
59
|
+
end
|
60
|
+
|
61
|
+
branch_dic["home_branch_name"] = home_branch_name
|
43
62
|
branch_dic["involve_modules"] = involve_modules
|
44
63
|
json_array << branch_dic
|
45
64
|
end
|
data/lib/big_keeper/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bigkeeper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- mmoaay
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-05-
|
11
|
+
date: 2018-05-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: gli
|
@@ -235,6 +235,8 @@ files:
|
|
235
235
|
- lib/big_keeper/command/feature&hotfix/start.rb
|
236
236
|
- lib/big_keeper/command/feature&hotfix/switch.rb
|
237
237
|
- lib/big_keeper/command/feature&hotfix/update.rb
|
238
|
+
- lib/big_keeper/command/module.rb
|
239
|
+
- lib/big_keeper/command/module/list.rb
|
238
240
|
- lib/big_keeper/command/pod.rb
|
239
241
|
- lib/big_keeper/command/pod/podfile.rb
|
240
242
|
- lib/big_keeper/command/release.rb
|