cocoapods-hbh 0.0.3 → 0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 31f2592765405050041e12717abc2b09cfd47f330e051f4de48b50ebe20dc502
4
- data.tar.gz: 9cdb8ece30e50c8997e758a46acd773bc7bd6685ba4fbd5faa83bc54e63ecb28
3
+ metadata.gz: 98a4059653f831ffeab457d1035fe2c7143c75c5d03075d5ca6c54726a9f3c6f
4
+ data.tar.gz: d75359becf0c555bd9ef48cf4015258cbcc0b87c224d4a4874139e4c2964e9e9
5
5
  SHA512:
6
- metadata.gz: 5047868bf505be88016941cd3b4966fa7c1e4be02af0e7db568a66ec02a7d873b4322c1988eb2d0a085b2c1da52ba329a1b143fc77a82c11f024c0625482f504
7
- data.tar.gz: 30d0a3e632d08d03bf9ea88bcb8259ee2d52e20cf4e74873d741d98a26be6dceafe0d4ad41c093aa3f64f1f71c7c44fc9571caf847aa93685c9555c1874b94ce
6
+ metadata.gz: 43392b86ab6ab7f16f3b46e845270653db17c1463ce0ae95cd5da9eac7f3933a55f706a43257d08ae8d9b3e2d660b0d59513185e9a79afec03322b1a66771cb1
7
+ data.tar.gz: fdac187ae8d3e72687f0a65cd7b9b7cebb86e8f942d106b3fb75e29cce852208b179731dab22c8fae6fc1626702e9e7e8fb3613cba035148bec54bc124d47a1d
@@ -15,7 +15,7 @@ module Pod
15
15
  add_sub_module.pod_submoudle(name, *requirements)
16
16
  end
17
17
 
18
- def pod_private(name = nil, *requirements)
18
+ def pod_hbh(name = nil, *requirements)
19
19
  unless name
20
20
  raise StandardError, 'A dependency requires a name.'
21
21
  end
@@ -5,8 +5,6 @@ module Pod
5
5
  class Repo < Command
6
6
  class Push < Repo
7
7
  class HBH < Push
8
- # pod repo push HBHSpecs HBHNetwork.podspec、
9
- # --sources='http://gitlab.jiehun.tech/App/iOS/Modularization/HBHSpecs.git,https://github.com/CocoaPods/Specs' --allow-warnings
10
8
  def initialize(argv)
11
9
  super
12
10
  hbh_specs_env = HBHConfig.config.hbh_specs_env
@@ -2,6 +2,8 @@ require 'cocoapods-hbh/command/common/install'
2
2
  require 'cocoapods-hbh/command/common/podfile'
3
3
  require 'cocoapods-hbh/command/common/push'
4
4
  require 'cocoapods-hbh/command/common/hbh_init'
5
+ require 'cocoapods-hbh/command/native/native_install'
6
+ require 'cocoapods-hbh/command/native/native_update'
5
7
 
6
8
  module Pod
7
9
  class Command
@@ -43,7 +43,7 @@ module Pod
43
43
 
44
44
 
45
45
  # 添加模块 模块名称为podspec的名称,路径默认为Module/下的模块,tag或者branch 优先使用tag,默认develop分支
46
- # (moduleName, submodule: true, moduleTag: nil, moduleBranch: 'develop', appspecs: nil)
46
+ # (moduleName, : true, moduleTag: nil, moduleBranch: 'develop', appspecs: nil)
47
47
  def pod_submoudle (moduleName, *requirements)
48
48
  info = requirements.last
49
49
  is_submodule = get_info(info, :submodule, true)
@@ -55,7 +55,7 @@ module Pod
55
55
  moduleBranch = get_info(info, :branch, nil)
56
56
  if moduleTag.nil? && moduleBranch.nil?
57
57
  Pod::UI.puts "请配置依赖tag或者branch".red
58
- raise "注意: 请配置依赖tag或者branch"
58
+ exit()
59
59
  end
60
60
 
61
61
  appspecs = get_info(info, :appspecs, nil)
@@ -63,7 +63,7 @@ module Pod
63
63
  remoteUrl = sub_config['sub_url']
64
64
  if remoteUrl.blank?
65
65
  Pod::UI.puts "请配置subModule的sub_url".red
66
- raise "注意: 请配置subModule的sub_url"
66
+ exit()
67
67
  end
68
68
  moduleRoot = sub_config['sub_path'].blank? ? "Modules" : sub_config['sub_path']
69
69
 
@@ -0,0 +1,16 @@
1
+ require 'cocoapods'
2
+
3
+ module Pod
4
+ class Installer
5
+ alias old_prepare prepare
6
+ def prepare
7
+ spec_version = HBHConfig.config.cocoapods_version
8
+ cocoapods_version = Pod::VERSION
9
+ if spec_version != cocoapods_version
10
+ Pod::UI.puts "注意: 你当前的pod版本和指定的版本不一致,当前指定版本为#{spec_version},您的版本为#{cocoapods_version}".red
11
+ exit()
12
+ end
13
+ old_prepare()
14
+ end
15
+ end
16
+ end
File without changes
@@ -1,7 +1,15 @@
1
1
  require 'cocoapods'
2
2
  require 'cocoapods-hbh/command/hbh'
3
+ require 'cocoapods-hbh/git_hooks/githooks_sync'
3
4
 
4
-
5
- Pod::HooksManager.register('cocoapods-hbhhooks', :pre_install) do |_context, _|
6
-
5
+ module CocoapodsHBHGitHooks
6
+ Pod::HooksManager.register('cocoapods-hbh', :post_install) do |context|
7
+ GitHooksSync.new.sync()
8
+ end
9
+ Pod::HooksManager.register('cocoapods-hbh', :post_update) do |context|
10
+ GitHooksSync.new.sync()
11
+ end
12
+ Pod::HooksManager.register('cocoapods-hbh', :post_install) do |context|
13
+ Pod::UI.puts "恭喜你, 你已经 `pod install` 结束了."
14
+ end
7
15
  end
@@ -4,37 +4,21 @@ require 'cocoapods-hbh/gem_version'
4
4
 
5
5
  module HBHConfig
6
6
  class Config
7
-
8
- def write_config ()
9
- {
10
- "hbh_specs_env" =>
11
- {
12
- "specs_name" => "私有仓库名称",
13
- "specs_url" => "私有仓库地址"
14
- },
15
- "submodule_env" =>
7
+
8
+ def template_hash
16
9
  {
17
- "sub_path" => "子模块存储路径",
18
- "sub_url" => "子模块远程厂库地址"
19
- }
20
- }
21
- end
22
-
23
- def template_hash
24
- {
25
- 'hbh_specs_env' => { description: '私有仓库环境',
26
- default: {
27
- 'specs_name' => { description: '私有仓库名称' },
28
- 'specs_url' => { description: '私有仓库地址' },
29
- }
10
+ 'hbh_specs_env' => {
11
+ 'description' => '私有仓库环境配置',
12
+ 'specs_name' => '私有仓库名称',
13
+ 'specs_url' => '私有仓库地址',
30
14
  },
31
-
32
- 'submodule_env' => { description: '子仓库环境',
33
- default: {
34
- 'sub_path' => { description: '子模块存储路径' },
35
- 'sub_url' => { description: '子模块厂库地址' },
36
- }
15
+ 'submodule_env' => {
16
+ 'description' => '子仓库环境配置',
17
+ 'sub_path' => '子模块存储路径' ,
18
+ 'sub_url' => '子模块厂库地址' ,
37
19
  },
20
+ 'is_git_hooks' => 'false',
21
+ 'cocoapods_version' => '1.10.1',
38
22
  }
39
23
  end
40
24
 
@@ -68,7 +52,11 @@ module HBHConfig
68
52
  if File.exist?(config_name)
69
53
  YAML.load_file(config_name)
70
54
  else
71
- default_config
55
+ aFile = File.new(config_name, "w+")
56
+ if aFile
57
+ aFile.syswrite(template_hash.to_yaml)
58
+ end
59
+ raise "请在你的根目录配置创建并配置HBHConfig.yml文件"
72
60
  end
73
61
  end
74
62
 
@@ -1,3 +1,3 @@
1
1
  module CocoapodsHbh
2
- VERSION = "0.0.3"
2
+ VERSION = "0.1.0"
3
3
  end
@@ -0,0 +1,42 @@
1
+ require 'cocoapods'
2
+ require 'fileutils'
3
+
4
+ module CocoapodsHBHGitHooks
5
+ class GitHooksSync
6
+ def sync
7
+
8
+ return unless HBHConfig.config.is_git_hooks
9
+
10
+ Pod::UI.puts "开始同步git拦截设置"
11
+ if !File.directory?(".git")
12
+ Pod::UI.puts "没有发现git工程"
13
+ return
14
+ end
15
+
16
+ # 在当前ruby项目的githook文件copy到项目里去做拦截
17
+ # 如果项目里配置了 .git-hooks 文件件,将把里面的内容copy到项目里去做拦截
18
+ # 项目里的.git-hooks 配置优先
19
+ git_hooks = "#{File.dirname(__FILE__)}/../../script_source/pre-commit"
20
+
21
+ # if File.directory?(".git-hooks")
22
+
23
+ # end
24
+
25
+ git_hooks = '.git-hooks/.' unless Dir['.git-hooks/*'].empty?
26
+
27
+ if !File.directory?(".git/hooks")
28
+ FileUtils.mkdir ".git/hooks"
29
+ end
30
+ FileUtils.cp_r(git_hooks, ".git/hooks/")
31
+ path = ".git/hooks/"
32
+ Dir.open(path).each do |p|
33
+ filename = File.basename(p, File.extname(p))
34
+ if File.extname(p) == ".sh"
35
+ FileUtils.mv("#{path}/#{p}", "#{path}/#{filename}")
36
+ end
37
+ FileUtils.chmod("+x", "#{path}/#{filename}")
38
+ end
39
+ Pod::UI.puts "结束同步git拦截设置"
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,37 @@
1
+ STAGE_FILES=$(git diff --cached --name-only --diff-filter=ACM -- '*.swift')
2
+ swiftLintPath="./Pods/SwiftLint/swiftlint"
3
+ if test ${#STAGE_FILES} -gt 0
4
+ then
5
+ echo '检查提交的文件'
6
+ echo $(pwd)
7
+ if [ ! -e $swiftLintPath ]; then
8
+ echo '没安装SwiftLint'
9
+ exit 1
10
+ fi
11
+
12
+ PASS=true
13
+ PATH="./swiftLint"
14
+
15
+ for FILE in $STAGE_FILES
16
+ do
17
+ warning="*warning*"
18
+ $swiftLintPath lint --strict $FILE > $PATH
19
+ /bin/cat $PATH
20
+ Result=$(/bin/cat $PATH)
21
+ if [[ $Result == *$warning* ]]; then
22
+ PASS=false
23
+ fi
24
+ done
25
+ /bin/rm -rf $PATH
26
+ if ! $PASS; then
27
+ echo "SwiftLint检查没通过!"
28
+ exit 1
29
+ else
30
+ echo "SwiftLint检查完毕"
31
+ fi
32
+
33
+ else
34
+ echo '没有swift文件需要检查'
35
+ fi
36
+
37
+ exit 0
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods-hbh
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - zanju
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-09-14 00:00:00.000000000 Z
11
+ date: 2021-11-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: parallel
@@ -96,11 +96,15 @@ files:
96
96
  - lib/cocoapods-hbh/command/custom/sync_githooks.rb
97
97
  - lib/cocoapods-hbh/command/hbh.rb
98
98
  - lib/cocoapods-hbh/command/module/add_module.rb
99
+ - lib/cocoapods-hbh/command/native/native_install.rb
100
+ - lib/cocoapods-hbh/command/native/native_update.rb
99
101
  - lib/cocoapods-hbh/config/config.rb
100
102
  - lib/cocoapods-hbh/config/config_asker.rb
101
103
  - lib/cocoapods-hbh/gem_version.rb
104
+ - lib/cocoapods-hbh/git_hooks/githooks_sync.rb
102
105
  - lib/cocoapods-hbh/helpers/git_depend.rb
103
106
  - lib/cocoapods_plugin.rb
107
+ - lib/script_source/pre-commit
104
108
  homepage: https://github.com/EXAMPLE/cocoapods-hbh
105
109
  licenses:
106
110
  - MIT