Skip to content

Commit e46228c

Browse files
committed
add cli command to process data. might delete later
1 parent ac69218 commit e46228c

File tree

2 files changed

+28
-5
lines changed

2 files changed

+28
-5
lines changed

lib/file_uploader.rb

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
require 'logger'
33

44
class FileUploader
5-
UPLOAD_URL = "https://crowllectordb.onrender.com/api/v1/upload" || ENV['MOCKSI_UPLOAD_URL']
5+
# FIXME: use a base URL for the upload and process URLs
6+
UPLOAD_URL = ENV['MOCKSI_UPLOAD_URL'] || "https://crowllectordb.onrender.com/api/v1/upload"
7+
PROCESS_URL = ENV['MOCKSI_PROCESS_URL'] || "https://crowllectordb.onrender.com/api/v1/process"
68

79
def initialize(logger, client_uuid)
810
@logger = logger
@@ -15,6 +17,17 @@ def upload_files(tar_gz_files)
1517
wait_for_threads(threads)
1618
end
1719

20+
def process_files
21+
HTTPX.wrap do |client|
22+
response = client.post(PROCESS_URL, headers: { "x-client-id" => @client_uuid })
23+
if response.is_a?(HTTPX::Response)
24+
@logger.info "Processing uploaded files. Status: #{response.status}"
25+
else
26+
@logger.error "Failed to process files. Error: #{response.error}"
27+
end
28+
end
29+
end
30+
1831
private
1932

2033
def log_upload_start(tar_gz_files)
@@ -54,7 +67,7 @@ def post_file(client, tar_gz_file)
5467
end
5568

5669
def log_upload_result(tar_gz_file, response)
57-
if response && response.status == 200
70+
if response && response.is_a?(HTTPX::Response) && response.status == 200
5871
@logger.info "Uploaded #{tar_gz_file}: #{response.status}"
5972
else
6073
@logger.error "Failed to upload #{tar_gz_file}. Status: #{response&.status}, Body: #{response&.body}"

lib/uploads_cli.rb

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,6 @@
99
require 'logger'
1010

1111
class UploadsCLI < Thor
12-
desc "update", "Update uploaded requests and responses"
13-
option :base_dir, type: :string, desc: 'Base directory for storing intercepted data. Defaults to ./tmp/intercepted_data'
14-
1512
def initialize(*args)
1613
super
1714
@logger = Logger.new(STDOUT)
@@ -22,6 +19,8 @@ def initialize(*args)
2219
@file_uploader = FileUploader.new(@logger, @client_uuid)
2320
end
2421

22+
desc "update", "Update uploaded requests and responses"
23+
option :base_dir, type: :string, desc: 'Base directory for storing intercepted data. Defaults to ./tmp/intercepted_data'
2524
def update(*args)
2625
set_base_dir
2726
files = find_files
@@ -37,6 +36,13 @@ def update(*args)
3736
upload_files(tar_gz_files)
3837
end
3938

39+
desc "process", "Process uploaded requests and responses"
40+
option :base_dir, type: :string, desc: 'Base directory for storing intercepted data. Defaults to ./tmp/intercepted_data'
41+
def process(*args)
42+
set_base_dir
43+
process_files
44+
end
45+
4046
private
4147

4248
def set_base_dir
@@ -65,4 +71,8 @@ def valid_tar_gz_files?(tar_gz_files)
6571
def upload_files(tar_gz_files)
6672
@file_uploader.upload_files(tar_gz_files)
6773
end
74+
75+
def process_files
76+
@file_uploader.process_files
77+
end
6878
end

0 commit comments

Comments
 (0)