nblog_zon 0.0.68 → 0.0.69
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 +4 -4
- data/lib/nblog_zon.rb +18 -9
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 78482e43be8ba374f5dea3f420d9307984955330d35877df99dcbb5d01cd324a
|
4
|
+
data.tar.gz: 6cd1bbaa990dbec975c36640be202d6611821f04d81484622b164f9224459062
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ee2d73b65433743bee002f813b5ff7e05b33a714c62fb7f69f5945c36002700b22b430b42fcdb3b18475f9c12cbf2d9db776a9df97b4a78829ef8cb796299e22
|
7
|
+
data.tar.gz: bc1715cd0d791bf25ff2ed798fb10a6a766bfbfebff0a95a072f4a38f7e920490f285b8e400928a996e55c9b29ab404844f79f0c3313fc523cd4f591950757ba
|
data/lib/nblog_zon.rb
CHANGED
@@ -2329,44 +2329,49 @@ class Wordpress
|
|
2329
2329
|
if @data['포스트설정']['테더링'].checked?
|
2330
2330
|
puts 'Tethering IP change...'
|
2331
2331
|
|
2332
|
-
# 현재 실행 파일이 있는 디렉터리 경로를 얻기
|
2333
2332
|
current_dir = File.dirname(__FILE__)
|
2334
|
-
|
2335
|
-
# adb.exe의 절대 경로
|
2336
2333
|
adb_path = File.join(current_dir, 'adb.exe')
|
2337
2334
|
|
2338
|
-
# adb devices 명령어 실행
|
2339
2335
|
stdout, stderr, status = Open3.capture3("#{adb_path} devices")
|
2340
|
-
|
2336
|
+
|
2341
2337
|
if status.success?
|
2342
2338
|
device_id = stdout.split("\n")[1].split("\t")[0]
|
2343
2339
|
puts device_id
|
2344
2340
|
|
2345
2341
|
# ADB 서버 초기화
|
2346
2342
|
puts 'adb kill-server'
|
2347
|
-
Open3.capture3("#{adb_path} kill-server")
|
2343
|
+
stdout, stderr, status = Open3.capture3("#{adb_path} kill-server")
|
2344
|
+
puts stdout
|
2345
|
+
puts stderr
|
2348
2346
|
sleep(2)
|
2349
2347
|
|
2350
2348
|
# 다시 ADB 서버 실행
|
2351
2349
|
puts 'adb start-server'
|
2352
|
-
Open3.capture3("#{adb_path} start-server")
|
2350
|
+
stdout, stderr, status = Open3.capture3("#{adb_path} start-server")
|
2351
|
+
puts stdout
|
2352
|
+
puts stderr
|
2353
2353
|
sleep(2)
|
2354
2354
|
|
2355
2355
|
# 데이터를 끄고 켜기
|
2356
2356
|
puts "adb -s #{device_id} shell svc data disable"
|
2357
2357
|
stdout2, stderr2, status2 = Open3.capture3("#{adb_path} -s #{device_id} shell svc data disable")
|
2358
|
+
puts stdout2
|
2359
|
+
puts stderr2
|
2358
2360
|
|
2359
2361
|
if status2.success?
|
2360
2362
|
sleep(3)
|
2361
2363
|
puts "adb -s #{device_id} shell svc data enable"
|
2362
|
-
Open3.capture3("#{adb_path} -s #{device_id} shell svc data enable")
|
2364
|
+
stdout3, stderr3, status3 = Open3.capture3("#{adb_path} -s #{device_id} shell svc data enable")
|
2365
|
+
puts stdout3
|
2366
|
+
puts stderr3
|
2363
2367
|
sleep(3)
|
2364
2368
|
puts 'adb ok'
|
2365
2369
|
sleep(8)
|
2366
2370
|
|
2367
2371
|
# IP 변경을 확인하는 람다 함수
|
2368
2372
|
robot_ip = lambda do
|
2369
|
-
|
2373
|
+
retries = 5 # 최대 5번 재시도
|
2374
|
+
loop do
|
2370
2375
|
begin
|
2371
2376
|
http = HTTP.get('https://www.findip.kr/')
|
2372
2377
|
noko = Nokogiri::HTML(http.to_s)
|
@@ -2378,10 +2383,14 @@ class Wordpress
|
|
2378
2383
|
break # IP가 변경되었으면 루프 종료
|
2379
2384
|
else
|
2380
2385
|
puts 'IP가 변경되지 않음. 재시도...'
|
2386
|
+
retries -= 1
|
2387
|
+
break if retries <= 0 # 재시도 횟수를 다 사용했으면 루프 종료
|
2381
2388
|
sleep(3) # 3초 후 재시도
|
2382
2389
|
end
|
2383
2390
|
rescue => e
|
2384
2391
|
puts "IP 확인 중 오류 발생: #{e.message}. 재시도 중..."
|
2392
|
+
retries -= 1
|
2393
|
+
break if retries <= 0 # 재시도 횟수를 다 사용했으면 루프 종료
|
2385
2394
|
sleep(3) # 3초 후 재시도
|
2386
2395
|
end
|
2387
2396
|
end
|