lhj-tools 0.2.24 → 0.2.25

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: 253e532b62ca8fd6c1b10281d9dfc87cb2f1a40abbd185f66066abc72b7cd72d
4
- data.tar.gz: 3b67e5cfb736805d1b078b72efe4cab2d8f28848c77e8b3d049fbf6dfc227648
3
+ metadata.gz: d1172af22907b68257770cdd7996d7dc8f90500e6427b9fde02e5ac59f451a3e
4
+ data.tar.gz: 1a9ed45b72d8542823a406f59b508788ac347911a5b1d4b687faad1a74dde193
5
5
  SHA512:
6
- metadata.gz: f23ae53bdd2047b055f1baec787b67a21684b42f23f1004c503ebcfc157670fd6d09c58f774a7a3fad374371ae474b534cc616835da73ea53595a40047fa321f
7
- data.tar.gz: 7ddab83f382970b112d558ec7b410def3530281cc321dc3f77af73d5c342ade9f600779870e9ced7bfe78c6d3c6c15c58d205e4b1ef3a5f0c34f2f013258f5f3
6
+ metadata.gz: 3d3c41fc6ae30f4536d83d89630107c0d2cc4fa8f597895a231d827ebc2d63205141f3a1737db0a60bba28a007263af510190267041d4a2442056b77db5ada16
7
+ data.tar.gz: 16bd226cda26f4b469015dfb7fcdedbcb28a86f044543ba072e9fe0f8fe9fd3347d4371631c8b54e5de51955a6a46dc960a3f595d264a95daa540bea0d6fae20
@@ -30,34 +30,80 @@ module Lhj
30
30
  end
31
31
 
32
32
  def handle
33
- d = {
34
- "data": {
35
- "attributes": {
36
- "email": "878943972@qq.com",
37
- "firstName": "li",
38
- "lastName": "haijian"
33
+ job_name = '更新分支功能描述'
34
+ server_ip = Lhj::JenkinsConfig.server_ip
35
+ server_port = Lhj::JenkinsConfig.server_port
36
+ username = Lhj::JenkinsConfig.username
37
+ password = Lhj::JenkinsConfig.password
38
+ client = JenkinsApi::Client.new(server_ip: server_ip, server_port: server_port, username: username, password: password)
39
+
40
+ # puts client.job.get_config(job_name)
41
+
42
+ update_job(job_name, :string, 'AA', '这是一个测试', 'WWWW描述')
43
+ end
44
+
45
+ def update_job(job_name, param_type, param_key, param_value, param_desc)
46
+ server_ip = Lhj::JenkinsConfig.server_ip
47
+ server_port = Lhj::JenkinsConfig.server_port
48
+ username = Lhj::JenkinsConfig.username
49
+ password = Lhj::JenkinsConfig.password
50
+ client = JenkinsApi::Client.new(server_ip: server_ip, server_port: server_port, username: username, password: password)
51
+
52
+ property_arr = client.job.get_build_params(job_name)
53
+ puts property_arr
54
+ xml = client.job.get_config(job_name)
55
+ n_xml = Nokogiri::XML(xml)
56
+ params = n_xml.xpath('//parameterDefinitions').first
57
+ string_params = params.children.select { |p| p.name.eql?('hudson.model.StringParameterDefinition') }
58
+ param = string_params.find { |p| p.children.find { |c| c.name.eql?('name') && c.content.eql?(param_key) } }
59
+ has_desc = false
60
+ param.children.each do |p|
61
+ has_desc = true if p.name.eql?('description')
62
+ p.content = param_value if p.name.eql?('defaultValue')
63
+ p.content = param_desc if p.name.eql?('description')
64
+ p.content = 'true' if p.name.eql?('trim')
65
+ end
66
+ param.add_child("<description>#{param_desc}</description>") unless has_desc
67
+ xml_modified = n_xml.to_xml
68
+ client.job.post_config(job_name, xml_modified)
69
+ end
70
+
71
+ def create_tester(email, id)
72
+ names = email.split('@') if email =~ /@/
73
+ first_name = names[1] if names && names.length > 1
74
+ last_name = names[0] if names&.length&.positive?
75
+ first_name ||= 'first'
76
+ last_name ||= 'last'
77
+ post_data = {
78
+ 'data' => {
79
+ 'attributes' => {
80
+ 'email' => email,
81
+ 'firstName' => first_name,
82
+ 'lastName' => last_name
39
83
  },
40
- "relationships": {
41
- "builds": {
42
- "data": [
84
+ 'relationships' => {
85
+ 'betaGroups' => {
86
+ 'data' => [
43
87
  {
44
- "id": "0cd7ac82-b2d9-4772-bfa1-0ff6e8037f7d",
45
- "type": "builds"
88
+ 'id' => id,
89
+ 'type' => 'betaGroups'
46
90
  }
47
91
  ]
48
92
  }
49
93
  },
50
- "type": "betaTesters"
94
+ 'type' => 'betaTesters'
51
95
  }
52
96
  }
53
- res = Lhj::ConnectAPI.post('https://api.appstoreconnect.apple.com/v1/betaTesters', d)
54
- puts res.read_body
97
+ res = Lhj::ConnectAPI.post('https://api.appstoreconnect.apple.com/v1/betaTesters', post_data)
98
+ res_body = JSON.parse(res.body)
99
+ puts 'success' if res_body['data']
100
+ end
55
101
 
56
- # client = JenkinsApi::Client.new(server_ip: 'ip', server_port: 0, username: 'xx', password: 'xx')
57
- # puts client.user.get('aomi')
58
- # puts client.job.list_all
59
- # client.job.build('aomi_uat')
60
- # puts client.job.get_console_output('aomi_uat', 253)
102
+ def all_group
103
+ res = Lhj::ConnectAPI.get('https://api.appstoreconnect.apple.com/v1/betaGroups')
104
+ res_body = JSON.parse(res.body)
105
+ names = res_body['data'].map { |item| { id: item['id'], name: item['attributes']['name'] } }
106
+ names.each { |a| puts a[:name] + '---' + a[:id] }
61
107
  end
62
108
  end
63
109
  end
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.24'
4
+ VERSION = '0.2.25'
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.24
4
+ version: 0.2.25
5
5
  platform: ruby
6
6
  authors:
7
7
  - lihaijian
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-02-20 00:00:00.000000000 Z
11
+ date: 2023-02-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: xcodeproj
@@ -252,16 +252,16 @@ dependencies:
252
252
  name: json
253
253
  requirement: !ruby/object:Gem::Requirement
254
254
  requirements:
255
- - - '='
255
+ - - "<"
256
256
  - !ruby/object:Gem::Version
257
- version: 2.3.0
257
+ version: 3.0.0
258
258
  type: :runtime
259
259
  prerelease: false
260
260
  version_requirements: !ruby/object:Gem::Requirement
261
261
  requirements:
262
- - - '='
262
+ - - "<"
263
263
  - !ruby/object:Gem::Version
264
- version: 2.3.0
264
+ version: 3.0.0
265
265
  - !ruby/object:Gem::Dependency
266
266
  name: bundler
267
267
  requirement: !ruby/object:Gem::Requirement