phoseum-cli 0.0.3 → 0.0.8
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/bin/phoseum-cli +9 -0
- data/lib/phoseum/phoseum-cli-lib.rb +49 -3
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 64322b7d05911b8e332b53a9c71e802ba0328a3f566f510a4c987eaab30447ad
|
|
4
|
+
data.tar.gz: 7f44480404aa5d42533deef77414997b9cf459d215726ce4723aeb37055ed9b9
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: eb7348f7bbac6a5f225be5e19a633fb46a57eb33122392dcbff9735eeca51c154acb4a2a7a269642c4145e8c26843620c6f9e3a7483db15fa3dc68ad650cd0fb
|
|
7
|
+
data.tar.gz: 27739486308f80512d929123d46a46b809e1ec930c5b63ff1f227654e9bf42aba183b823646b8a71eddc7f392b8b231e9a84a39b7b66f46ccf773b9529054d3e
|
data/bin/phoseum-cli
CHANGED
|
@@ -19,6 +19,7 @@ options = option_parser(ARGV)
|
|
|
19
19
|
BOUNDARY = "AaB03x"
|
|
20
20
|
$QUIET = options[:quiet] ? true : false
|
|
21
21
|
$DEBUG = options[:verbose] ? true : false
|
|
22
|
+
$MULTI = options[:multiple] ? true : false
|
|
22
23
|
|
|
23
24
|
client_checks
|
|
24
25
|
|
|
@@ -66,6 +67,13 @@ def upload(album)
|
|
|
66
67
|
# human_name = check_string_sanity(filename)
|
|
67
68
|
human_name = filename
|
|
68
69
|
|
|
70
|
+
somefound = search_image(image.signature)
|
|
71
|
+
if somefound
|
|
72
|
+
print "Filename: #{human_name} was found repeated in Phoseum Server :: ".yellow
|
|
73
|
+
puts somefound.yellow
|
|
74
|
+
next if !$MULTI
|
|
75
|
+
end
|
|
76
|
+
|
|
69
77
|
uri = URI.parse($config['SERVERURL'])
|
|
70
78
|
post_body = []
|
|
71
79
|
post_body << "--#{BOUNDARY}\r\n"
|
|
@@ -342,6 +350,7 @@ def delete(what='',path='')
|
|
|
342
350
|
http.request(request)
|
|
343
351
|
end
|
|
344
352
|
list = JSON.parse(response.body)
|
|
353
|
+
# missing begin test result
|
|
345
354
|
puts list
|
|
346
355
|
else
|
|
347
356
|
puts "Deleting cancelled.".green
|
|
@@ -32,6 +32,10 @@ def option_parser(opts)
|
|
|
32
32
|
options[:login] = l
|
|
33
33
|
end
|
|
34
34
|
|
|
35
|
+
opts.on("-m", "--multiple", "Ignore repeated images, keep multiple") do |m|
|
|
36
|
+
options[:multiple] = m
|
|
37
|
+
end
|
|
38
|
+
|
|
35
39
|
opts.on("-v", "--verbose", "Run verbosely (DEBUG mode)") do |v|
|
|
36
40
|
options[:verbose] = v
|
|
37
41
|
end
|
|
@@ -96,7 +100,7 @@ def client_checks
|
|
|
96
100
|
if $config['SERVERURL'] == ''
|
|
97
101
|
puts "I could not find a valid SERVERURL configuration. CFG is empty.".red
|
|
98
102
|
exit 1
|
|
99
|
-
elsif $config['SERVERURL'] !~ /\A#{URI::regexp(['https'])}\z/
|
|
103
|
+
elsif $config['SERVERURL'] !~ /\A#{URI::regexp(['https', 'http'])}\z/
|
|
100
104
|
puts "I could not find a valid SERVERURL configuration. Contains: #{$config['SERVERURL']}".red
|
|
101
105
|
exit 1
|
|
102
106
|
end
|
|
@@ -111,15 +115,57 @@ def client_checks
|
|
|
111
115
|
puts "I could not find the DEFAULT_SECRET from Phoseum config, Variable is empty.".red
|
|
112
116
|
exit 1
|
|
113
117
|
end
|
|
114
|
-
|
|
115
118
|
if !$config['SERVERURL']
|
|
116
119
|
puts "I could not find the SERVERURL from Phoseum config, this client is then useless.".red
|
|
117
120
|
exit 1
|
|
118
121
|
end
|
|
119
|
-
|
|
120
122
|
if !$config['PORT']
|
|
121
123
|
puts "I could not find the PORT from Phoseum config, this client is then useless.".red
|
|
122
124
|
exit 1
|
|
123
125
|
end
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
def clean_html(msg)
|
|
129
|
+
msg.gsub!(/<\/?[^>]*>/, ' ')
|
|
130
|
+
msg.gsub!(/\n\n+/, '\n')
|
|
131
|
+
msg.gsub!(/^\n|\n$/, ' ')
|
|
132
|
+
return msg
|
|
133
|
+
end
|
|
124
134
|
|
|
135
|
+
def search_image(sign)
|
|
136
|
+
headers = {}
|
|
137
|
+
if $config['TOKEN']
|
|
138
|
+
headers={ "bearer" => "#{$config['TOKEN']}" }
|
|
139
|
+
else
|
|
140
|
+
if token = user_login()
|
|
141
|
+
headers = { "bearer" => token }
|
|
142
|
+
else
|
|
143
|
+
puts "Login Failed".red
|
|
144
|
+
exit 1
|
|
145
|
+
end
|
|
146
|
+
end
|
|
147
|
+
some_uri="?signature=#{sign}"
|
|
148
|
+
base = URI.parse("#{$config['SERVERURL']}#{some_uri}")
|
|
149
|
+
request = Net::HTTP::Get.new(base,headers)
|
|
150
|
+
response = Net::HTTP.start(base.hostname, $config['PORT'],
|
|
151
|
+
:timeout => $config['CALL_TIMEOUT'],
|
|
152
|
+
:use_ssl => base.scheme == "https",
|
|
153
|
+
:verify_mode => OpenSSL::SSL::VERIFY_PEER,
|
|
154
|
+
:ca_file => $config['CA_TRUST']
|
|
155
|
+
) do |http|
|
|
156
|
+
http.request(request)
|
|
157
|
+
end
|
|
158
|
+
begin
|
|
159
|
+
list = JSON.parse(response.body)
|
|
160
|
+
if list['warning']
|
|
161
|
+
return list['warning']
|
|
162
|
+
end
|
|
163
|
+
if list['success']
|
|
164
|
+
return false
|
|
165
|
+
end
|
|
166
|
+
rescue
|
|
167
|
+
puts "\nThe server sent out an Error:".red
|
|
168
|
+
puts clean_html(response.body)
|
|
169
|
+
exit 1
|
|
170
|
+
end
|
|
125
171
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: phoseum-cli
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.8
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Julio C Hegedus
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2020-09-
|
|
11
|
+
date: 2020-09-07 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: yaml
|