akcache 1.1.3 → 2.0.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: 61606c56e5669af26ac45d1570d7c03b9f7162fada8fa21f81b7d6e31cfd73c9
4
- data.tar.gz: 1a4f8d700c08f5f3a4c76b98859587a39fbf84a6a3f4e9d0f726c14b78506238
3
+ metadata.gz: 4f1e7c5b3e86764ec008d18297ddd6046bef0bba071131cb071f547216f98643
4
+ data.tar.gz: e40db2fb5988f4d10979fee186b9c2edaccbefb01ba15689727ce6940bdd86a4
5
5
  SHA512:
6
- metadata.gz: c1bcf43339041a467e95482b9ed716d1422075aa1dd71340119df6f7aaf84046497de93501ca4740703887cf3e5d90f4f107d8860bdeb783a3aa422b077fc91e
7
- data.tar.gz: 75be160670313f6ed6f1add935ac70f1851e69ed0597e9ac3a69817c4b4bda6d3bf959d10bf80c5c8b52abd90990dadc850e2c8246d9532726bbe1a647a60f50
6
+ metadata.gz: 55e5fde66337bd885753e702737b5e063b4af05ce2825bf4071ff1dbbde1c1476a0195db9a9b686bac07224757d33b0c71b459cd6e25aec00fc53c2f43cfa1aa
7
+ data.tar.gz: dd9221c730af1b32c8525479bc36b3417949f01fa3c923f343f92fc738d8e2bcaeb9b696ff9109f24bbd76552bcfff38b0b4c98b0041ba8dc546cd5487d0ebd4
data/bin/kcache CHANGED
@@ -10,11 +10,9 @@ if ARGV[0] == "xcodebuild" or ARGV[0] == "fastlane"
10
10
  manager.project_task_end
11
11
 
12
12
  elsif ARGV[0] == "inject"
13
-
14
13
  manager.set_prama_to_yaml
15
14
 
16
15
  elsif ARGV[0] == "copy"
17
-
18
16
  manager.copy_cache
19
17
 
20
18
  elsif ARGV[0] == "begin"
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Kcache
4
- VERSION = "1.1.3"
4
+ VERSION = "2.0.0"
5
5
  end
data/lib/kcache.rb CHANGED
@@ -36,6 +36,7 @@ OBJROOT = "OBJROOT"
36
36
 
37
37
  #变量
38
38
  $target_build_configuration = "Release"
39
+ $project_build_branch = "master"
39
40
  $podfile_spec_checksums = nil
40
41
  $file_md5_hash = {}
41
42
  $exclude_target = []
@@ -43,9 +44,21 @@ $exclude_target = []
43
44
  class CacheManager
44
45
 
45
46
  def get_cache_root
46
- return Dir.home + "/ysCache"
47
+ return Dir.home + "/ysCache" +"/#{$project_build_branch}"
48
+ end
49
+
50
+ def get_default_cache_root
51
+ return Dir.home + "/ysCache/master"
47
52
  end
48
53
 
54
+ def is_private_target(target)
55
+ if target.name.start_with? "AK" or target.name.start_with? "EUR" or target.name.start_with? "A4K"
56
+ return true
57
+ else
58
+ return false
59
+ end
60
+ end
61
+
49
62
  def get_content_without_pwd(content)
50
63
  content = content.gsub("#{Dir.pwd}/", "").gsub(/#{Dir.pwd}(\W|$)/, '\1')
51
64
  return content
@@ -269,7 +282,7 @@ class CacheManager
269
282
  else
270
283
  source_md5_list.push "Target configuration: #{$target_build_configuration}"
271
284
  end
272
-
285
+
273
286
  source_md5_content = source_md5_list.join("\n")
274
287
  return source_md5_content
275
288
 
@@ -282,7 +295,11 @@ class CacheManager
282
295
 
283
296
  dependency_start_time = Time.now
284
297
 
285
- target_cache_dirs = Dir.glob(get_cache_root + "/" + target.name + "-" + target_md5 + "-*")
298
+ if is_private_target(target)
299
+ target_cache_dirs = Dir.glob(get_cache_root + "/" + target.name + "-" + target_md5 + "-*")
300
+ else
301
+ target_cache_dirs = Dir.glob(get_default_cache_root + "/" + target.name + "-" + target_md5 + "-*")
302
+ end
286
303
 
287
304
  hit_results = []
288
305
 
@@ -437,14 +454,25 @@ class CacheManager
437
454
  return false
438
455
  end
439
456
 
440
- already_target_cache_dirs = Dir.glob(get_cache_root + "/" + target.name + "-" + target_md5 + "-*")
457
+
458
+ if is_private_target(target)
459
+ already_target_cache_dirs = Dir.glob(get_cache_root + "/" + target.name + "-" + target_md5 + "-*")
460
+ else
461
+ already_target_cache_dirs = Dir.glob(get_default_cache_root + "/" + target.name + "-" + target_md5 + "-*")
462
+ end
463
+
441
464
  already_target_cache_dirs.each do |path|
442
465
  if File.exist? path
443
466
  raise unless system "rm -rf \"#{path}\""
444
467
  end
445
468
  end
446
469
 
447
- target_cache_dir = get_cache_root + "/" + target.name + "-" + target_md5 + "-" + (Time.now.to_f * 1000).to_i.to_s
470
+ if is_private_target(target)
471
+ target_cache_dir = get_cache_root + "/" + target.name + "-" + target_md5 + "-" + (Time.now.to_f * 1000).to_i.to_s
472
+ else
473
+ target_cache_dir = get_default_cache_root + "/" + target.name + "-" + target_md5 + "-" + (Time.now.to_f * 1000).to_i.to_s
474
+ end
475
+
448
476
  if File.exist? target_cache_dir
449
477
  puts "<INFO> #{target_cache_dir} should not exist"
450
478
  raise unless system "rm -rf \"#{target_cache_dir}\""
@@ -526,6 +554,8 @@ class CacheManager
526
554
  elsif prama.include? "Release"
527
555
  $target_build_configuration = "Release"
528
556
  end
557
+ elsif prama.include? "branch:"
558
+ $project_build_branch = prama.dup.gsub!("branch:", "")
529
559
  end
530
560
  end
531
561
 
@@ -552,6 +582,9 @@ class CacheManager
552
582
 
553
583
  projects.each do |project|
554
584
  project.native_targets.each do |target|
585
+ target.build_phases.delete_if { |phase|
586
+ phase.class == Xcodeproj::Project::Object::PBXShellScriptBuildPhase and phase.name.include? "ys_"
587
+ }
555
588
  if can_cache_target(target)
556
589
  total_count = total_count + 1
557
590
  source_files = get_target_source_files(target)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: akcache
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.3
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - yusheng
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-11 00:00:00.000000000 Z
11
+ date: 2022-07-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: xcodeproj