pindo 4.9.4 → 4.9.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/pindo/command/dev/repoinit.rb +3 -71
- data/lib/pindo/command/dev/tag.rb +2 -1
- data/lib/pindo/command/ios/autobuild.rb +41 -29
- data/lib/pindo/command/ios/build.rb +26 -21
- data/lib/pindo/command/pgyer/upload.rb +8 -6
- data/lib/pindo/command/unity/ipa.rb +8 -7
- data/lib/pindo/module/build/buildhelper.rb +89 -0
- data/lib/pindo/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 96b5085007e7368d7739d4788df1167fa8cb5e04c156000724eaf3ea2376acfa
|
4
|
+
data.tar.gz: 31712cdc4a2ff51d8be3d2992446ef2a2411ec300408eaf1b51a2ad270d598eb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 00b1e474bc20dfe842d866c5a5ee8be8d22f0ba4497fa6fff7b20cc29a98c4bfbdc596ae5b88cf55d6dbd60775ca0c581fd035c95d8888c79336e0c0401a805d
|
7
|
+
data.tar.gz: 39dc2e638e6235f771cde216b3e2788039633856e908706c8d014003ad67f0ea9f1be8b883f14afa5969a0a5e25bc9a8a53bcb53d65dbd987e7633c2c5be40eb
|
@@ -46,82 +46,14 @@ module Pindo
|
|
46
46
|
@additional_args = argv.remainder!
|
47
47
|
end
|
48
48
|
|
49
|
-
def write_gitignore(project_dir)
|
50
|
-
gitignore_path = File.join(project_dir, '.gitignore')
|
51
|
-
gitignore_content = <<~GITIGNORE
|
52
|
-
# Build logs
|
53
|
-
build_ios.log
|
54
|
-
CHANGELOG.md
|
55
|
-
|
56
|
-
# Platform specific directories
|
57
|
-
/GoodPlatform/iOS/*
|
58
|
-
/GoodPlatform/Android/*
|
59
|
-
/GoodPlatform/MacOS/*
|
60
|
-
/GoodPlatform/BaseiOS/Unity/*
|
61
|
-
/GoodPlatform/BaseiOS/Pods/
|
62
|
-
/GoodPlatform/BaseiOS/Podfile.lock
|
63
|
-
/GoodPlatform/BaseAndroid/Unity/*
|
64
|
-
/GoodPlatform/BaseMac/Unity/*
|
65
|
-
GITIGNORE
|
66
|
-
|
67
|
-
# Append to existing .gitignore or create new one
|
68
|
-
File.open(gitignore_path, 'a') do |f|
|
69
|
-
f.puts("\n# Added by Pindo")
|
70
|
-
f.puts(gitignore_content)
|
71
|
-
end
|
72
|
-
end
|
73
|
-
|
74
49
|
def run
|
75
|
-
|
76
|
-
clone_pindo_common_config_repo(force_delete:false)
|
77
|
-
pindo_common_dir = pindo_single_config.pindo_common_configdir
|
78
|
-
|
79
|
-
current_dir = Dir.pwd
|
80
|
-
puts
|
81
|
-
Funlog.instance.fancyinfo_start("添加仓库日志变更配置 git-cliff")
|
82
|
-
if is_git_directory?(local_repo_dir: current_dir)
|
83
|
-
current_git_root_path = git_root_directory(local_repo_dir: current_dir)
|
84
|
-
if File.exist?(File.join(pindo_common_dir, 'cliff.toml'))
|
85
|
-
FileUtils.cp_r(File.join(pindo_common_dir, 'cliff.toml'), File.join(current_git_root_path, 'cliff.toml'))
|
86
|
-
end
|
87
|
-
Funlog.instance.fancyinfo_update("仓库添加cliff配置")
|
88
|
-
write_gitignore(current_git_root_path)
|
89
|
-
Funlog.instance.fancyinfo_update("仓库添加.gitignore")
|
90
|
-
Dir.chdir(current_dir)
|
91
|
-
current_branch = git!(%W(-C #{current_dir} rev-parse --abbrev-ref HEAD)).strip
|
92
|
-
git!(%W(-C #{current_dir} add cliff.toml))
|
93
|
-
git!(%W(-C #{current_dir} add .gitignore))
|
94
|
-
git!(%W(-C #{current_dir} commit -m "更新cliff配置"))
|
95
|
-
git!(%W(-C #{current_dir} push origin #{current_branch}))
|
96
|
-
|
97
|
-
else
|
98
|
-
Funlog.instance.fancyinfo_error("当前目录不是git仓库,请在git仓库根目录下执行此命令")
|
99
|
-
raise Informative, "当前目录不是git仓库,请在git仓库根目录下执行此命令"
|
100
|
-
end
|
101
|
-
Funlog.instance.fancyinfo_success("仓库配置完成!")
|
102
50
|
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
# 请检查git-cliff命令是否安装
|
107
|
-
begin
|
108
|
-
if !system('git-cliff --version')
|
109
|
-
# /bin/bash -c "$(curl -fsSL https://gitee.com/goodtools/env/raw/master/gitcliff_install.sh)"
|
110
|
-
#安装git-cliff
|
111
|
-
system('bash -c "$(curl -fsSL https://gitee.com/goodtools/env/raw/master/gitcliff_install.sh)"')
|
112
|
-
else
|
113
|
-
puts "git-cliff已安装"
|
114
|
-
end
|
115
|
-
rescue
|
116
|
-
raise Informative, "安装git-cliff出现错误"
|
117
|
-
end
|
118
|
-
|
51
|
+
pindo_project_dir = Dir.pwd
|
52
|
+
build_helper = Pindo::BuildHelper.share_instance
|
53
|
+
build_helper.check_check_and_install_cliff(pindo_project_dir)
|
119
54
|
|
120
55
|
end
|
121
56
|
|
122
|
-
|
123
|
-
|
124
|
-
|
125
57
|
end
|
126
58
|
end
|
127
59
|
end
|
@@ -56,9 +56,10 @@ module Pindo
|
|
56
56
|
|
57
57
|
def run
|
58
58
|
current_project_dir = Dir.pwd
|
59
|
-
|
59
|
+
puts current_project_dir
|
60
60
|
# 检查当前目录是否是git仓库
|
61
61
|
unless is_git_directory?(local_repo_dir: current_project_dir)
|
62
|
+
|
62
63
|
Funlog.instance.fancyinfo_error("当前目录不是git仓库")
|
63
64
|
raise Informative, "请在git仓库目录下执行此命令"
|
64
65
|
end
|
@@ -78,15 +78,37 @@ module Pindo
|
|
78
78
|
end
|
79
79
|
|
80
80
|
def run
|
81
|
-
|
82
|
-
|
81
|
+
pindo_project_dir = Dir.pwd
|
82
|
+
|
83
83
|
build_helper = Pindo::BuildHelper.share_instance
|
84
|
-
|
85
|
-
|
84
|
+
project_type = build_helper.project_type(pindo_project_dir)
|
85
|
+
|
86
|
+
args_temp = []
|
87
|
+
args_temp << "--proj=#{@args_proj_name}" if @args_proj_name
|
88
|
+
args_temp << "--upload" if @args_upload_flag
|
89
|
+
args_temp << "--send" if @args_send_flag
|
90
|
+
case project_type
|
91
|
+
when :ios
|
92
|
+
ios_autobuild
|
93
|
+
when :android
|
94
|
+
puts "Android 工程, 请使用 pindo android build"
|
95
|
+
|
96
|
+
when :unity
|
97
|
+
Pindo::Command::Unity::Ipa::run(args_temp)
|
98
|
+
else
|
99
|
+
raise Informative, "当前目录不是工程目录,不能编译"
|
86
100
|
end
|
87
101
|
|
102
|
+
end
|
103
|
+
|
104
|
+
def ios_autobuild
|
105
|
+
|
106
|
+
pindo_project_dir = Dir.pwd
|
107
|
+
build_helper = Pindo::BuildHelper.share_instance
|
108
|
+
|
88
109
|
if @args_upload_flag
|
89
|
-
|
110
|
+
build_helper.check_check_and_install_cliff(pindo_project_dir)
|
111
|
+
is_need_add_tag,tag_action_parms = build_helper.check_is_need_add_tag?(pindo_project_dir)
|
90
112
|
if is_need_add_tag
|
91
113
|
Pindo::Command::Dev::Tag::run(tag_action_parms)
|
92
114
|
end
|
@@ -114,23 +136,22 @@ module Pindo
|
|
114
136
|
args_temp << mainapp_bundleid
|
115
137
|
Pindo::Command::Deploy::Pullconfig::run(args_temp)
|
116
138
|
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
Pindo::Command::Ios::Debug::modify_cert_with_project(project_dir:project_dir, config_file:config_json_file)
|
139
|
+
Dir.chdir(pindo_project_dir)
|
140
|
+
config_json_file = File.join(pindo_project_dir,"config.json")
|
141
|
+
Pindo::Command::Ios::Debug::modify_cert_with_project(project_dir:pindo_project_dir, config_file:config_json_file)
|
121
142
|
|
122
|
-
if File.exist?(File.join(
|
143
|
+
if File.exist?(File.join(pindo_project_dir, "Podfile"))
|
123
144
|
|
124
145
|
args_temp = []
|
125
146
|
args_temp << config_json_file
|
126
147
|
Pindo::Command::Lib::Update::run([])
|
127
148
|
|
128
149
|
begin
|
129
|
-
if File.exist?(File.join(
|
130
|
-
FileUtils.rm_rf(File.join(
|
150
|
+
if File.exist?(File.join(pindo_project_dir, "Podfile.lock"))
|
151
|
+
FileUtils.rm_rf(File.join(pindo_project_dir, "Podfile.lock"))
|
131
152
|
end
|
132
|
-
if File.exist?(File.join(
|
133
|
-
FileUtils.rm_rf(File.join(
|
153
|
+
if File.exist?(File.join(pindo_project_dir,"Pods"))
|
154
|
+
FileUtils.rm_rf(File.join(pindo_project_dir, "Pods"))
|
134
155
|
end
|
135
156
|
puts "正在执行pod deintegrate..."
|
136
157
|
system 'pod deintegrate'
|
@@ -141,8 +162,8 @@ module Pindo
|
|
141
162
|
raise Informative, "pod install失败!!先pod install 完成后成编译 !"
|
142
163
|
end
|
143
164
|
|
144
|
-
Dir.chdir(
|
145
|
-
pod_lock_file = File.join(
|
165
|
+
Dir.chdir(pindo_project_dir)
|
166
|
+
pod_lock_file = File.join(pindo_project_dir, "Podfile.lock")
|
146
167
|
if !File.exist?(pod_lock_file)
|
147
168
|
raise Informative, "pod install失败!!先pod install 完成后成编译 !"
|
148
169
|
end
|
@@ -157,7 +178,7 @@ module Pindo
|
|
157
178
|
args_temp << "--dev"
|
158
179
|
end
|
159
180
|
|
160
|
-
project_fullname = Dir.glob(File.join(
|
181
|
+
project_fullname = Dir.glob(File.join(pindo_project_dir, "/*.xcodeproj")).max_by {|f| File.mtime(f)}
|
161
182
|
if !project_fullname.nil?
|
162
183
|
project_obj = Xcodeproj::Project.open(project_fullname)
|
163
184
|
project_build_platform = project_obj.root_object.build_configuration_list.get_setting("SDKROOT")["Release"]
|
@@ -172,23 +193,14 @@ module Pindo
|
|
172
193
|
|
173
194
|
Pindo::Command::Deploy::Cert::run(args_temp)
|
174
195
|
|
175
|
-
Dir.chdir(
|
196
|
+
Dir.chdir(pindo_project_dir)
|
176
197
|
Pindo::Command::Deploy::Build::run(args_temp)
|
177
198
|
|
178
|
-
|
179
|
-
pindo_new_project_dir = Dir.pwd
|
180
|
-
build_path = File.join(pindo_new_project_dir, "build", "*.{ipa,app}")
|
199
|
+
build_path = File.join(pindo_project_dir, "build", "*.{ipa,app}")
|
181
200
|
ipa_file_upload = Dir.glob(build_path).max_by {|f| File.mtime(f)}
|
182
|
-
|
201
|
+
|
183
202
|
if !ipa_file_upload.nil? && !app_info_obj.nil?
|
184
203
|
description = nil
|
185
|
-
if File.exist?(File.join(pindo_new_project_dir, ".release_info"))
|
186
|
-
description = File.read(File.join(pindo_new_project_dir, ".release_info"))
|
187
|
-
else
|
188
|
-
if File.exist?(File.join(pindo_new_project_dir, ".git"))
|
189
|
-
description = git!(%W(-C #{pindo_new_project_dir} show -s --format=%h::%s)).strip
|
190
|
-
end
|
191
|
-
end
|
192
204
|
result_data = PgyerHelper.share_instace.start_upload(app_info_obj:app_info_obj, ipa_file_upload:ipa_file_upload, description:description)
|
193
205
|
if !result_data.nil? && !result_data["data"].nil? && !result_data["data"]["id"].nil?
|
194
206
|
msg_data = PgyerHelper.share_instace.make_msg_data(app_info_obj:app_info_obj, app_version_info_obj:result_data["data"])
|
@@ -64,21 +64,40 @@ module Pindo
|
|
64
64
|
end
|
65
65
|
|
66
66
|
def run
|
67
|
+
pindo_project_dir = Dir.pwd
|
67
68
|
|
68
|
-
pindo_unity_project_dir = Dir.pwd
|
69
69
|
build_helper = Pindo::BuildHelper.share_instance
|
70
|
-
|
71
|
-
|
70
|
+
project_type = build_helper.project_type(pindo_project_dir)
|
71
|
+
|
72
|
+
args_temp = []
|
73
|
+
args_temp << "--proj=#{@args_proj_name}" if @args_proj_name
|
74
|
+
args_temp << "--upload" if @args_upload_flag
|
75
|
+
args_temp << "--send" if @args_send_flag
|
76
|
+
case project_type
|
77
|
+
when :ios
|
78
|
+
ios_build
|
79
|
+
when :android
|
80
|
+
raise Informative, "Android 工程, 请使用 pindo android build"
|
81
|
+
when :unity
|
82
|
+
raise Informative, "Unity 工程, 请使用 pindo unity ipa"
|
83
|
+
else
|
84
|
+
raise Informative, "当前目录不是工程目录,不能编译"
|
72
85
|
end
|
86
|
+
|
87
|
+
end
|
73
88
|
|
89
|
+
def ios_build
|
90
|
+
|
91
|
+
pindo_project_dir = Dir.pwd
|
92
|
+
build_helper = Pindo::BuildHelper.share_instance
|
74
93
|
if @args_upload_flag
|
75
|
-
|
94
|
+
build_helper.check_check_and_install_cliff(pindo_project_dir)
|
95
|
+
is_need_add_tag,tag_action_parms = build_helper.check_is_need_add_tag?(pindo_project_dir)
|
76
96
|
if is_need_add_tag
|
77
97
|
Pindo::Command::Dev::Tag::run(tag_action_parms)
|
78
98
|
end
|
79
99
|
end
|
80
100
|
|
81
|
-
|
82
101
|
app_info_obj = nil
|
83
102
|
if @args_upload_flag
|
84
103
|
proj_name = @args_proj_name
|
@@ -90,24 +109,13 @@ module Pindo
|
|
90
109
|
Pindo::Command::Deploy::Build::run(args_temp)
|
91
110
|
|
92
111
|
|
93
|
-
|
94
|
-
build_path = File.join(
|
112
|
+
Dir.chdir(pindo_project_dir)
|
113
|
+
build_path = File.join(pindo_project_dir, "build", "*.{ipa,app,apk}")
|
95
114
|
ipa_file_upload = Dir.glob(build_path).max_by {|f| File.mtime(f)}
|
96
115
|
|
97
116
|
if !ipa_file_upload.nil? && !app_info_obj.nil?
|
98
117
|
|
99
118
|
description = nil
|
100
|
-
if File.exist?(File.join(pindo_new_project_dir, ".release_info"))
|
101
|
-
description = File.read(File.join(pindo_new_project_dir, ".release_info"))
|
102
|
-
else
|
103
|
-
if File.exist?(File.join(pindo_new_project_dir, ".git"))
|
104
|
-
description = git!(%W(-C #{pindo_new_project_dir} show -s --format=%h::%s)).strip
|
105
|
-
unless !description.nil? && description.length > 10
|
106
|
-
description = nil
|
107
|
-
end
|
108
|
-
end
|
109
|
-
end
|
110
|
-
|
111
119
|
result_data = PgyerHelper.share_instace.start_upload(app_info_obj:app_info_obj, ipa_file_upload:ipa_file_upload, description:description)
|
112
120
|
if !result_data.nil? && !result_data["data"].nil? && !result_data["data"]["id"].nil?
|
113
121
|
msg_data = PgyerHelper.share_instace.make_msg_data(app_info_obj:app_info_obj, app_version_info_obj:result_data["data"])
|
@@ -118,11 +126,8 @@ module Pindo
|
|
118
126
|
end
|
119
127
|
end
|
120
128
|
end
|
121
|
-
|
122
|
-
|
123
129
|
end
|
124
130
|
|
125
|
-
|
126
131
|
end
|
127
132
|
end
|
128
133
|
end
|
@@ -105,11 +105,17 @@ module Pindo
|
|
105
105
|
def run
|
106
106
|
|
107
107
|
current_project_dir = Dir.pwd
|
108
|
+
build_helper = Pindo::BuildHelper.share_instance
|
109
|
+
build_helper.check_check_and_install_cliff(current_project_dir)
|
110
|
+
is_need_add_tag,tag_action_parms = build_helper.check_is_need_add_tag?(current_project_dir)
|
111
|
+
|
112
|
+
Dir.chdir(current_project_dir)
|
113
|
+
if is_need_add_tag
|
114
|
+
Pindo::Command::Dev::Tag::run(tag_action_parms)
|
115
|
+
end
|
108
116
|
|
109
117
|
if @args_ipa_file.nil? || !File.exist?(@args_ipa_file)
|
110
118
|
# 获取build目录下的ipa文件
|
111
|
-
#
|
112
|
-
build_helper = Pindo::BuildHelper.share_instance
|
113
119
|
project_type = build_helper.project_type(current_project_dir)
|
114
120
|
case project_type
|
115
121
|
when :ios
|
@@ -167,7 +173,6 @@ module Pindo
|
|
167
173
|
msg_data = PgyerHelper.share_instace.make_msg_data(app_info_obj:app_info_obj, app_version_info_obj:result_data["data"])
|
168
174
|
PgyerHelper.share_instace.print_app_version_info(msg_data:msg_data)
|
169
175
|
|
170
|
-
|
171
176
|
if @args_send_flag
|
172
177
|
if @args_resign_flag
|
173
178
|
args = []
|
@@ -185,9 +190,6 @@ module Pindo
|
|
185
190
|
end
|
186
191
|
end
|
187
192
|
|
188
|
-
|
189
|
-
|
190
|
-
|
191
193
|
end
|
192
194
|
|
193
195
|
end
|
@@ -77,23 +77,24 @@ module Pindo
|
|
77
77
|
|
78
78
|
def run
|
79
79
|
|
80
|
-
|
80
|
+
pindo_project_dir = Dir.pwd
|
81
81
|
|
82
82
|
# 检查是否是Unity工程
|
83
83
|
unity_helper = Pindo::Client::UnityHelper.share_instance
|
84
|
-
unless unity_helper.unity_project?(
|
84
|
+
unless unity_helper.unity_project?(pindo_project_dir)
|
85
85
|
raise Informative, "当前目录不是Unity工程,请在Unity工程根目录下执行此命令"
|
86
86
|
end
|
87
87
|
|
88
88
|
if @args_upload_flag
|
89
89
|
build_helper = Pindo::BuildHelper.share_instance
|
90
|
-
|
90
|
+
build_helper.check_check_and_install_cliff(pindo_project_dir)
|
91
|
+
is_need_add_tag,tag_action_parms = build_helper.check_is_need_add_tag?(pindo_project_dir)
|
91
92
|
if is_need_add_tag
|
92
93
|
Pindo::Command::Dev::Tag::run(tag_action_parms)
|
93
94
|
end
|
94
95
|
end
|
95
96
|
|
96
|
-
project_unity_version = unity_helper.get_unity_version(
|
97
|
+
project_unity_version = unity_helper.get_unity_version(pindo_project_dir)
|
97
98
|
project_unity_major_version = project_unity_version.split('.')[0..1].join('.')
|
98
99
|
puts
|
99
100
|
puts "工程的Unity版本: #{project_unity_version}"
|
@@ -116,16 +117,16 @@ module Pindo
|
|
116
117
|
|
117
118
|
isLibrary = @args_base_flag
|
118
119
|
|
119
|
-
ios_export_lib_dir = File.join(
|
120
|
+
ios_export_lib_dir = File.join(pindo_project_dir, "GoodPlatform/BaseiOS")
|
120
121
|
if File.directory?(ios_export_lib_dir)
|
121
122
|
isLibrary = true
|
122
123
|
end
|
123
124
|
|
124
|
-
pindo_ios_project_dir = File.join(
|
125
|
+
pindo_ios_project_dir = File.join(pindo_project_dir, "GoodPlatform/iOS")
|
125
126
|
if isLibrary
|
126
127
|
pindo_ios_project_dir = ios_export_lib_dir
|
127
128
|
end
|
128
|
-
unity_helper.build_project(unity_exe_full_path:unity_exe_path, project_path:
|
129
|
+
unity_helper.build_project(unity_exe_full_path:unity_exe_path, project_path:pindo_project_dir, platform:'iOS', isLibrary:isLibrary)
|
129
130
|
|
130
131
|
|
131
132
|
args_temp = []
|
@@ -14,6 +14,95 @@ module Pindo
|
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
17
|
+
def check_check_and_install_cliff(project_path)
|
18
|
+
if is_git_directory?(local_repo_dir: project_path)
|
19
|
+
current_git_root_path = git_root_directory(local_repo_dir: project_path)
|
20
|
+
unless File.exist?(File.join(current_git_root_path, 'cliff.toml'))
|
21
|
+
add_git_cliffconfig(current_git_root_path)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
begin
|
26
|
+
if !system('which git-cliff > /dev/null 2>&1')
|
27
|
+
puts "安装git-cliff..."
|
28
|
+
install_gitcliff()
|
29
|
+
end
|
30
|
+
rescue
|
31
|
+
raise Informative, "安装git-cliff出现错误"
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
def write_gitignore(git_root_dir)
|
36
|
+
gitignore_path = File.join(git_root_dir, '.gitignore')
|
37
|
+
gitignore_content = <<~GITIGNORE
|
38
|
+
# Build logs
|
39
|
+
build_ios.log
|
40
|
+
CHANGELOG.md
|
41
|
+
|
42
|
+
# Platform specific directories
|
43
|
+
/GoodPlatform/iOS/config.json
|
44
|
+
/GoodPlatform/iOS/*
|
45
|
+
/GoodPlatform/Android/*
|
46
|
+
/GoodPlatform/MacOS/*
|
47
|
+
/GoodPlatform/BaseiOS/Unity/*
|
48
|
+
/GoodPlatform/BaseiOS/Pods/
|
49
|
+
/GoodPlatform/BaseiOS/Podfile.lock
|
50
|
+
/GoodPlatform/BaseAndroid/Unity/*
|
51
|
+
/GoodPlatform/BaseMac/Unity/*
|
52
|
+
GITIGNORE
|
53
|
+
# Append to existing .gitignore or create new one
|
54
|
+
File.open(gitignore_path, 'a') do |f|
|
55
|
+
f.puts("\n# Added by Pindo")
|
56
|
+
f.puts(gitignore_content)
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
def add_git_cliffconfig(project_path)
|
61
|
+
|
62
|
+
temp_dir = Dir.pwd
|
63
|
+
Funlog.instance.fancyinfo_start("添加日志变更git-cliff配置...")
|
64
|
+
if is_git_directory?(local_repo_dir: project_path)
|
65
|
+
current_git_root_path = git_root_directory(local_repo_dir: project_path)
|
66
|
+
Dir.chdir(current_git_root_path)
|
67
|
+
pindo_common_dir = clone_pindo_common_config_repo(force_delete:false)
|
68
|
+
if File.exist?(File.join(pindo_common_dir, 'cliff.toml'))
|
69
|
+
FileUtils.cp_r(File.join(pindo_common_dir, 'cliff.toml'), File.join(current_git_root_path, 'cliff.toml'))
|
70
|
+
end
|
71
|
+
Funlog.instance.fancyinfo_update("仓库添加git-cliff配置")
|
72
|
+
write_gitignore(current_git_root_path)
|
73
|
+
Funlog.instance.fancyinfo_update("仓库添加.gitignore")
|
74
|
+
Dir.chdir(current_git_root_path)
|
75
|
+
current_branch = git!(%W(-C #{current_git_root_path} rev-parse --abbrev-ref HEAD)).strip
|
76
|
+
git!(%W(-C #{current_git_root_path} add cliff.toml))
|
77
|
+
git!(%W(-C #{current_git_root_path} add .gitignore))
|
78
|
+
commit_message = "docs: 添加日志变更配置".encode('UTF-8')
|
79
|
+
git!(%W(-C #{current_git_root_path} commit -m #{commit_message}))
|
80
|
+
git!(%W(-C #{current_git_root_path} push origin #{current_branch}))
|
81
|
+
|
82
|
+
else
|
83
|
+
Funlog.instance.fancyinfo_error("当前目录不是git仓库,请在git仓库根目录下执行此命令")
|
84
|
+
raise Informative, "当前目录不是git仓库,请在git仓库根目录下执行此命令"
|
85
|
+
Dir.chdir(temp_dir)
|
86
|
+
end
|
87
|
+
Funlog.instance.fancyinfo_success("日志变更git-cliff配置完成!")
|
88
|
+
Dir.chdir(temp_dir)
|
89
|
+
end
|
90
|
+
|
91
|
+
def install_gitcliff()
|
92
|
+
puts "\n检查git-cliff命令是否安装"
|
93
|
+
# 请检查git-cliff命令是否安装
|
94
|
+
begin
|
95
|
+
if !system('which git-cliff > /dev/null 2>&1')
|
96
|
+
# /bin/bash -c "$(curl -fsSL https://gitee.com/goodtools/env/raw/master/gitcliff_install.sh)"
|
97
|
+
#安装git-cliff
|
98
|
+
system('bash -c "$(curl -fsSL https://gitee.com/goodtools/env/raw/master/gitcliff_install.sh)"')
|
99
|
+
end
|
100
|
+
rescue
|
101
|
+
raise Informative, "安装git-cliff出现错误"
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
|
17
106
|
def check_is_need_add_tag?(project_path)
|
18
107
|
tag_action_parms = nil
|
19
108
|
is_need_add_tag = false
|
data/lib/pindo/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pindo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.9.
|
4
|
+
version: 4.9.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- wade
|
8
8
|
bindir: bin
|
9
9
|
cert_chain: []
|
10
|
-
date: 2025-02-
|
10
|
+
date: 2025-02-23 00:00:00.000000000 Z
|
11
11
|
dependencies:
|
12
12
|
- !ruby/object:Gem::Dependency
|
13
13
|
name: claide
|