lhj-tools 0.2.32 → 0.2.33

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 23e4b1ca63b9edadde731a0fba99ad2815029e3a65fca292d80d5ded572f0cca
4
- data.tar.gz: 01606d47b8191a85c0cd44b9ec15fa069fa0936da3287325abb72ebf90370ac6
3
+ metadata.gz: ff6929383a9eb5b439ba528f359328c1794dea01bbe1716ba5a5561c30d70f22
4
+ data.tar.gz: f6be4caa44459d4fc44bd0d2b11eef4601ef53df196250f6b20b59dd240be3bb
5
5
  SHA512:
6
- metadata.gz: c11804e3e40eb39886babf9347106e959d0bf1366f4f89ab0c62174b844fd7e38656f954c658402944a01e110e14506a9cda195952a6e61e144e313ed78f0038
7
- data.tar.gz: aff83c9066ee3975ad45d7ccfa29db7f5cc7bfbe09f8481dd07c5d9d477d67ba2b4e965919935c6f6457e20e9b02af1dfa03637b6318ffc4f501164b1e7442c5
6
+ metadata.gz: b27ba2d5508724e1b6c3325492cff864cf1243dea0a13d2abf325a0cd77fa8b9fbbdf690b8f1765625fe5ae8e708f62bc1e14e4df8b6e682d25cfc5c68b3df25
7
+ data.tar.gz: ab0e21f4c76d6bdc9c1c1bcdf1699b4b098044631259a943dd18b963a9210df26518fc767b93e9cd62a2682111ff72b902a72586cd220ac94d4b50e456f299f5
@@ -13,7 +13,8 @@ module Lhj
13
13
  self.description = '使用工具前先执行`lhj init --url=http://xxx`'
14
14
 
15
15
  self.arguments = [
16
- CLAide::Argument.new('url', true)
16
+ CLAide::Argument.new('url', false),
17
+ CLAide::Argument.new('key', false)
17
18
  ]
18
19
 
19
20
  def self.options
@@ -22,16 +23,10 @@ module Lhj
22
23
  ]
23
24
  end
24
25
 
25
- def validate!
26
- super
27
- unless @url
28
- path = File.join(target_folder, 'config_file.yml')
29
- help! '配置url必须输入' unless File.exist?(path)
30
- end
31
- end
32
-
33
26
  def initialize(argv)
34
27
  @url = argv.option('url')
28
+ @key = argv.option('key')
29
+ @url = Lhj::CipherHelper.strict_decode64_encode(@key) if @key
35
30
  super
36
31
  end
37
32
 
@@ -46,22 +46,16 @@ module Lhj
46
46
  end
47
47
 
48
48
  def handle
49
- # file = File.join(Lhj::Config.instance.home_dir, 'all_device.txt')
50
- # File.open(file, 'r+') do |f|
51
- # f.each_line do |line|
52
- # ma = line.match(/(?<device>[^\s]*)(\s*)(?<name>.*)/)
53
- # device = ma[:device]
54
- # name = ma[:name].gsub(/(\S*)\s(\S*)\s(.*)/, '\\1-\\2-\\3')
55
- # name = name.gsub(/\s/, '')
56
- # add_device(device, name)
57
- # end
58
- # end
59
- #
60
- api = Lhj::YapiHelper.new(project_id: 694, interface_id: 71426, model_name: 'Result', model_pre: 'ML', language: :java)
61
- api_result = api.process
62
- ss = api_result.reject { |k, v| v.nil? }
63
- # //.map { |key, v| { "#{key}": "```sss #{v}```" } }
64
- puts ss
49
+ file = File.join(Lhj::Config.instance.home_dir, 'all_device.txt')
50
+ File.open(file, 'r+') do |f|
51
+ f.each_line do |line|
52
+ ma = line.match(/(?<device>[^\s]*)(\s*)(?<name>.*)/)
53
+ device = ma[:device]
54
+ name = ma[:name].gsub(/(\S*)\s(\S*)\s(.*)/, '\\1-\\2-\\3')
55
+ name = name.gsub(/\s/, '')
56
+ add_device(device, name)
57
+ end
58
+ end
65
59
 
66
60
  # api = Lhj::YapiHelper.new(project_id: 694, interface_id: 70595, model_name: 'Order', model_pre: 'AA')
67
61
  # api.process
@@ -0,0 +1,56 @@
1
+ require 'openssl'
2
+ require 'base64'
3
+
4
+ module Lhj
5
+ class CipherHelper
6
+ CIPHER_KEY = '1234567890'.freeze
7
+ CIPHERIV = '456'.freeze
8
+
9
+ def self.key
10
+ key = [CIPHER_KEY].pack('H*')
11
+ key << ("\x00" * (32 - key.length))
12
+ key
13
+ end
14
+
15
+ def self.iv
16
+ iv = [CIPHERIV].pack('H*')
17
+ iv << ("\x00" * (16 - iv.length))
18
+ iv
19
+ end
20
+
21
+ def self.strict_encode64_encode(str)
22
+ encode_str = Base64.strict_encode64(str)
23
+ encode(encode_str)
24
+ end
25
+
26
+ def self.encode64_encode(str)
27
+ encode_str = Base64.encode64(str)
28
+ encode(encode_str)
29
+ end
30
+
31
+ def self.strict_decode64_encode(str)
32
+ decode_str = decode(str)
33
+ Base64.strict_decode64(decode_str)
34
+ end
35
+
36
+ def self.decode64_encode(str)
37
+ decode_str = decode(str)
38
+ Base64.decode64(decode_str)
39
+ end
40
+
41
+ def self.encode(data)
42
+ cipher = OpenSSL::Cipher.new('AES-256-CBC').encrypt
43
+ cipher.key = key
44
+ cipher.iv = iv
45
+ encrypted = cipher.update(data) + cipher.final
46
+ Base64.strict_encode64(encrypted)
47
+ end
48
+
49
+ def self.decode(str)
50
+ decipher = OpenSSL::Cipher.new('AES-256-CBC').decrypt
51
+ decipher.key = key
52
+ decipher.iv = iv
53
+ decipher.update(Base64.strict_decode64(str)) + decipher.final
54
+ end
55
+ end
56
+ end
data/lib/lhj/lhj.rb CHANGED
@@ -7,6 +7,7 @@ module Lhj
7
7
  require 'lhj/env'
8
8
  require 'lhj/ui/ui'
9
9
  require 'lhj/config'
10
+ require 'lhj/helper/cipher_helper'
10
11
  require 'lhj/helper/jenkins_config'
11
12
  require 'lhj/helper/apple/apple_jwt_config'
12
13
  require 'lhj/helper/apple/apple_connect_api'
data/lib/lhj/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Lhj
4
- VERSION = '0.2.32'
4
+ VERSION = '0.2.33'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lhj-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.32
4
+ version: 0.2.33
5
5
  platform: ruby
6
6
  authors:
7
7
  - lihaijian
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-29 00:00:00.000000000 Z
11
+ date: 2023-04-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: xcodeproj
@@ -386,6 +386,7 @@ files:
386
386
  - lib/lhj/helper/apple/apple_jwt_config.rb
387
387
  - lib/lhj/helper/bugly_helper.rb
388
388
  - lib/lhj/helper/chat_gpt_config.rb
389
+ - lib/lhj/helper/cipher_helper.rb
389
390
  - lib/lhj/helper/dingtalk_config.rb
390
391
  - lib/lhj/helper/dingtalk_helper.rb
391
392
  - lib/lhj/helper/erb_template_helper.rb