gazer 0.2.59 → 0.3.0

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.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/lint-pr.yml +17 -0
  3. data/.github/workflows/release.yml +3 -4
  4. data/.github/workflows/ruby-ci.yml +2 -2
  5. data/CHANGELOG.md +19 -0
  6. data/Gemfile.lock +6 -5
  7. data/gzr.gemspec +2 -1
  8. data/lib/gzr/cli.rb +5 -6
  9. data/lib/gzr/command.rb +27 -17
  10. data/lib/gzr/commands/attribute/create.rb +3 -3
  11. data/lib/gzr/commands/attribute/get_group_value.rb +1 -1
  12. data/lib/gzr/commands/attribute/import.rb +2 -2
  13. data/lib/gzr/commands/attribute/rm.rb +2 -2
  14. data/lib/gzr/commands/attribute/set_group_value.rb +1 -1
  15. data/lib/gzr/commands/attribute.rb +2 -2
  16. data/lib/gzr/commands/connection/ls.rb +1 -1
  17. data/lib/gzr/commands/dashboard/cat.rb +1 -1
  18. data/lib/gzr/commands/dashboard/import.rb +33 -26
  19. data/lib/gzr/commands/dashboard/mv.rb +8 -8
  20. data/lib/gzr/commands/dashboard.rb +8 -8
  21. data/lib/gzr/commands/{space → folder}/cat.rb +7 -7
  22. data/lib/gzr/commands/{space → folder}/create.rb +9 -9
  23. data/lib/gzr/commands/{space → folder}/export.rb +20 -20
  24. data/lib/gzr/commands/{space → folder}/ls.rb +11 -11
  25. data/lib/gzr/commands/{space → folder}/rm.rb +12 -12
  26. data/lib/gzr/commands/{space → folder}/top.rb +7 -7
  27. data/lib/gzr/commands/{space → folder}/tree.rb +21 -21
  28. data/lib/gzr/commands/{space.rb → folder.rb} +28 -28
  29. data/lib/gzr/commands/group.rb +1 -1
  30. data/lib/gzr/commands/look/import.rb +5 -5
  31. data/lib/gzr/commands/look/mv.rb +8 -8
  32. data/lib/gzr/commands/look.rb +8 -8
  33. data/lib/gzr/commands/permissions/ls.rb +1 -1
  34. data/lib/gzr/commands/plan/disable.rb +2 -2
  35. data/lib/gzr/commands/plan/enable.rb +2 -2
  36. data/lib/gzr/commands/plan/failures.rb +1 -1
  37. data/lib/gzr/commands/plan/import.rb +3 -3
  38. data/lib/gzr/commands/plan/run.rb +2 -2
  39. data/lib/gzr/commands/query/runquery.rb +3 -3
  40. data/lib/gzr/commands/role/group_add.rb +1 -1
  41. data/lib/gzr/commands/role/group_rm.rb +1 -1
  42. data/lib/gzr/commands/role/user_add.rb +1 -1
  43. data/lib/gzr/commands/role/user_rm.rb +1 -1
  44. data/lib/gzr/commands/user.rb +2 -2
  45. data/lib/gzr/modules/attribute.rb +8 -8
  46. data/lib/gzr/modules/connection.rb +2 -2
  47. data/lib/gzr/modules/dashboard.rb +34 -21
  48. data/lib/gzr/modules/filehelper.rb +1 -0
  49. data/lib/gzr/modules/{space.rb → folder.rb} +46 -46
  50. data/lib/gzr/modules/group.rb +10 -10
  51. data/lib/gzr/modules/look.rb +23 -22
  52. data/lib/gzr/modules/model.rb +1 -1
  53. data/lib/gzr/modules/permissions.rb +1 -1
  54. data/lib/gzr/modules/plan.rb +17 -17
  55. data/lib/gzr/modules/role.rb +7 -7
  56. data/lib/gzr/modules/session.rb +11 -16
  57. data/lib/gzr/modules/user.rb +7 -7
  58. data/lib/gzr/version.rb +1 -1
  59. metadata +26 -17
@@ -102,7 +102,7 @@ module Gzr
102
102
  conn_hash
103
103
  end
104
104
 
105
- def login(min_api_version=nil)
105
+ def login(min_api_version="4.0")
106
106
  if (@options[:client_id].nil? && ENV["LOOKERSDK_CLIENT_ID"])
107
107
  @options[:client_id] = ENV["LOOKERSDK_CLIENT_ID"]
108
108
  end
@@ -111,10 +111,6 @@ module Gzr
111
111
  @options[:client_secret] = ENV["LOOKERSDK_CLIENT_SECRET"]
112
112
  end
113
113
 
114
- if (@options[:api_version].nil? && ENV["LOOKERSDK_API_VERSION"])
115
- @options[:api_version] = ENV["LOOKERSDK_API_VERSION"]
116
- end
117
-
118
114
  if (@options[:verify_ssl] && ENV["LOOKERSDK_VERIFY_SSL"])
119
115
  @options[:verify_ssl] = !(/^f(alse)?$/i =~ ENV["LOOKERSDK_VERIFY_SSL"])
120
116
  end
@@ -137,6 +133,7 @@ module Gzr
137
133
  :links_parser => Sawyer::LinkParsers::Simple.new,
138
134
  :serializer => LookerSDK::Client::Serializer.new(JSON),
139
135
  :faraday => Faraday.new(conn_hash[:connection_options]) do |conn|
136
+ conn.use LookerSDK::Response::RaiseError
140
137
  if @options[:persistent]
141
138
  conn.adapter :net_http_persistent
142
139
  end
@@ -166,21 +163,19 @@ module Gzr
166
163
  end
167
164
 
168
165
  say_warning "API current_version #{@current_version}" if @options[:debug]
169
- say_warning "API versions #{@versions}" if @options[:debug]
170
-
171
- raise Gzr::CLI::Error, "Operation requires API v#{min_api_version}, but user specified version #{@options[:api_version]}" unless sufficient_version?(@options[:api_version],min_api_version)
166
+ say_warning "Supported API versions #{@versions}" if @options[:debug]
172
167
 
173
168
  api_version = [min_api_version, @current_version].max
174
169
  raise Gzr::CLI::Error, "Operation requires API v#{api_version}, which is not available from this host" if api_version && !@versions.any? {|v| v == api_version}
175
- raise Gzr::CLI::Error, "User specified API v#{@options[:api_version]}, which is not available from this host" if @options[:api_version] && !@versions.any? {|v| v == @options[:api_version]}
176
170
 
177
- conn_hash = build_connection_hash(@options[:api_version] || api_version)
171
+ conn_hash = build_connection_hash(api_version)
178
172
  @secret = nil
179
173
 
180
174
  say_ok("connecting to #{conn_hash.map { |k,v| "#{k}=>#{(k == :client_secret) ? '*********' : v}" }}") if @options[:debug]
181
175
 
182
176
  begin
183
177
  faraday = Faraday.new(conn_hash[:connection_options]) do |conn|
178
+ conn.use LookerSDK::Response::RaiseError
184
179
  if @options[:persistent]
185
180
  conn.adapter :net_http_persistent
186
181
  end
@@ -194,7 +189,7 @@ module Gzr
194
189
  raise
195
190
  rescue LookerSDK::Error => e
196
191
  say_error "Unable to connect"
197
- say_error e.message
192
+ say_error e
198
193
  say_error e.errors if e.respond_to?(:errors) && e.errors
199
194
  raise
200
195
  end
@@ -208,8 +203,8 @@ module Gzr
208
203
  @sdk.access_token = @sdk.login_user(@options[:su]).access_token
209
204
  say_warning "verify authentication: #{@sdk.authenticated?}" if @options[:debug]
210
205
  rescue LookerSDK::Error => e
211
- say_error "Unable to su to user #{@options[:su]}"
212
- say_error e.message
206
+ say_error "Unable to su to user #{@options[:su]}"
207
+ say_error e
213
208
  say_error e.errors if e.respond_to?(:errors) && e.errors
214
209
  raise
215
210
  end
@@ -224,7 +219,7 @@ module Gzr
224
219
  @sdk.logout
225
220
  rescue LookerSDK::Error => e
226
221
  say_error "Unable to logout"
227
- say_error e.message
222
+ say_error e
228
223
  say_error e.errors if e.respond_to?(:errors) && e.errors
229
224
  end if @sdk
230
225
  loop do
@@ -236,13 +231,13 @@ module Gzr
236
231
  @sdk.logout
237
232
  rescue LookerSDK::Error => e
238
233
  say_error "Unable to logout"
239
- say_error e.message
234
+ say_error e
240
235
  say_error e.errors if e.respond_to?(:errors) && e.errors
241
236
  end
242
237
  end
243
238
  end
244
239
 
245
- def with_session(min_api_version="3.0")
240
+ def with_session(min_api_version="4.0")
246
241
  return nil unless block_given?
247
242
  begin
248
243
  login(min_api_version) unless @sdk
@@ -30,7 +30,7 @@ module Gzr
30
30
  data = @sdk.me(fields ? {:fields=>fields} : nil )
31
31
  rescue LookerSDK::Error => e
32
32
  say_error "Error querying me({:fields=>\"#{fields}\"})"
33
- say_error e.message
33
+ say_error e
34
34
  raise
35
35
  end
36
36
  data
@@ -42,7 +42,7 @@ module Gzr
42
42
  data = @sdk.user(id, fields ? {:fields=>fields} : nil )
43
43
  rescue LookerSDK::Error => e
44
44
  say_error "Error querying user(#{id},{:fields=>\"#{fields}\"})"
45
- say_error e.message
45
+ say_error e
46
46
  raise
47
47
  end
48
48
  data
@@ -64,7 +64,7 @@ module Gzr
64
64
  scratch_data = @sdk.search_users(req)
65
65
  rescue LookerSDK::ClientError => e
66
66
  say_error "Unable to get search_users(#{JSON.pretty_generate(req)})"
67
- say_error e.message
67
+ say_error e
68
68
  raise
69
69
  end
70
70
  break if scratch_data.length == 0
@@ -89,7 +89,7 @@ module Gzr
89
89
  scratch_data = @sdk.all_users(req)
90
90
  rescue LookerSDK::ClientError => e
91
91
  say_error "Unable to get all_users(#{JSON.pretty_generate(req)})"
92
- say_error e.message
92
+ say_error e
93
93
  raise
94
94
  end
95
95
  break if scratch_data.length == 0
@@ -105,12 +105,12 @@ module Gzr
105
105
  data = @sdk.update_user(id,req)
106
106
  rescue LookerSDK::Error => e
107
107
  say_error "Error updating user(#{id},#{JSON.pretty_generate(req)})"
108
- say_error e.message
108
+ say_error e
109
109
  raise
110
110
  end
111
111
  data
112
112
  end
113
-
113
+
114
114
  def delete_user(id)
115
115
  data = nil
116
116
  req = id
@@ -118,7 +118,7 @@ module Gzr
118
118
  data = @sdk.delete_user(req)
119
119
  rescue LookerSDK::Error => e
120
120
  say_error "Error deleting user(#{id},#{JSON.pretty_generate(req)})"
121
- say_error e.message
121
+ say_error e
122
122
  raise
123
123
  end
124
124
  data
data/lib/gzr/version.rb CHANGED
@@ -20,5 +20,5 @@
20
20
  # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21
21
 
22
22
  module Gzr
23
- VERSION = '0.2.59'.freeze
23
+ VERSION = '0.3.0'.freeze
24
24
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gazer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.59
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike DeAngelo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-03-29 00:00:00.000000000 Z
11
+ date: 2023-04-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: tty-reader
@@ -120,6 +120,20 @@ dependencies:
120
120
  - - ">="
121
121
  - !ruby/object:Gem::Version
122
122
  version: 1.3.0
123
+ - !ruby/object:Gem::Dependency
124
+ name: faraday
125
+ requirement: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - "~>"
128
+ - !ruby/object:Gem::Version
129
+ version: 1.10.3
130
+ type: :runtime
131
+ prerelease: false
132
+ version_requirements: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - "~>"
135
+ - !ruby/object:Gem::Version
136
+ version: 1.10.3
123
137
  - !ruby/object:Gem::Dependency
124
138
  name: looker-sdk
125
139
  requirement: !ruby/object:Gem::Requirement
@@ -127,9 +141,6 @@ dependencies:
127
141
  - - "~>"
128
142
  - !ruby/object:Gem::Version
129
143
  version: 0.1.1
130
- - - "<="
131
- - !ruby/object:Gem::Version
132
- version: 0.1.2
133
144
  type: :runtime
134
145
  prerelease: false
135
146
  version_requirements: !ruby/object:Gem::Requirement
@@ -137,9 +148,6 @@ dependencies:
137
148
  - - "~>"
138
149
  - !ruby/object:Gem::Version
139
150
  version: 0.1.1
140
- - - "<="
141
- - !ruby/object:Gem::Version
142
- version: 0.1.2
143
151
  - !ruby/object:Gem::Dependency
144
152
  name: net-http-persistent
145
153
  requirement: !ruby/object:Gem::Requirement
@@ -238,6 +246,7 @@ extra_rdoc_files: []
238
246
  files:
239
247
  - ".github/scripts/parse_version.sh"
240
248
  - ".github/scripts/wait_for_looker.sh"
249
+ - ".github/workflows/lint-pr.yml"
241
250
  - ".github/workflows/release.yml"
242
251
  - ".github/workflows/ruby-ci.yml"
243
252
  - ".gitignore"
@@ -276,6 +285,14 @@ files:
276
285
  - lib/gzr/commands/dashboard/import.rb
277
286
  - lib/gzr/commands/dashboard/mv.rb
278
287
  - lib/gzr/commands/dashboard/rm.rb
288
+ - lib/gzr/commands/folder.rb
289
+ - lib/gzr/commands/folder/cat.rb
290
+ - lib/gzr/commands/folder/create.rb
291
+ - lib/gzr/commands/folder/export.rb
292
+ - lib/gzr/commands/folder/ls.rb
293
+ - lib/gzr/commands/folder/rm.rb
294
+ - lib/gzr/commands/folder/top.rb
295
+ - lib/gzr/commands/folder/tree.rb
279
296
  - lib/gzr/commands/group.rb
280
297
  - lib/gzr/commands/group/ls.rb
281
298
  - lib/gzr/commands/group/member_groups.rb
@@ -310,14 +327,6 @@ files:
310
327
  - lib/gzr/commands/role/user_add.rb
311
328
  - lib/gzr/commands/role/user_ls.rb
312
329
  - lib/gzr/commands/role/user_rm.rb
313
- - lib/gzr/commands/space.rb
314
- - lib/gzr/commands/space/cat.rb
315
- - lib/gzr/commands/space/create.rb
316
- - lib/gzr/commands/space/export.rb
317
- - lib/gzr/commands/space/ls.rb
318
- - lib/gzr/commands/space/rm.rb
319
- - lib/gzr/commands/space/top.rb
320
- - lib/gzr/commands/space/tree.rb
321
330
  - lib/gzr/commands/subcommandbase.rb
322
331
  - lib/gzr/commands/user.rb
323
332
  - lib/gzr/commands/user/cat.rb
@@ -330,6 +339,7 @@ files:
330
339
  - lib/gzr/modules/connection.rb
331
340
  - lib/gzr/modules/dashboard.rb
332
341
  - lib/gzr/modules/filehelper.rb
342
+ - lib/gzr/modules/folder.rb
333
343
  - lib/gzr/modules/group.rb
334
344
  - lib/gzr/modules/look.rb
335
345
  - lib/gzr/modules/model.rb
@@ -337,7 +347,6 @@ files:
337
347
  - lib/gzr/modules/plan.rb
338
348
  - lib/gzr/modules/role.rb
339
349
  - lib/gzr/modules/session.rb
340
- - lib/gzr/modules/space.rb
341
350
  - lib/gzr/modules/user.rb
342
351
  - lib/gzr/templates/.gitkeep
343
352
  - lib/gzr/templates/attribute/cat/.gitkeep