gazer 0.3.10 → 0.3.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (79) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -0
  3. data/Gemfile.lock +1 -1
  4. data/lib/gzr/command.rb +9 -5
  5. data/lib/gzr/commands/alert/cat.rb +2 -2
  6. data/lib/gzr/commands/alert/ls.rb +2 -2
  7. data/lib/gzr/commands/alert/notifications.rb +2 -2
  8. data/lib/gzr/commands/attribute/cat.rb +3 -3
  9. data/lib/gzr/commands/attribute/create.rb +2 -2
  10. data/lib/gzr/commands/attribute/get_group_value.rb +4 -4
  11. data/lib/gzr/commands/attribute/import.rb +3 -3
  12. data/lib/gzr/commands/attribute/ls.rb +3 -3
  13. data/lib/gzr/commands/attribute/rm.rb +4 -4
  14. data/lib/gzr/commands/attribute/set_group_value.rb +4 -4
  15. data/lib/gzr/commands/connection/dialects.rb +4 -4
  16. data/lib/gzr/commands/connection/ls.rb +2 -2
  17. data/lib/gzr/commands/connection/test.rb +2 -2
  18. data/lib/gzr/commands/dashboard/import.rb +30 -30
  19. data/lib/gzr/commands/dashboard/mv.rb +1 -1
  20. data/lib/gzr/commands/folder/cat.rb +3 -3
  21. data/lib/gzr/commands/folder/create.rb +3 -3
  22. data/lib/gzr/commands/folder/export.rb +2 -2
  23. data/lib/gzr/commands/folder/ls.rb +3 -4
  24. data/lib/gzr/commands/folder/rm.rb +3 -3
  25. data/lib/gzr/commands/folder/top.rb +4 -4
  26. data/lib/gzr/commands/folder/tree.rb +11 -11
  27. data/lib/gzr/commands/group/ls.rb +3 -3
  28. data/lib/gzr/commands/group/member_groups.rb +3 -3
  29. data/lib/gzr/commands/group/member_users.rb +3 -3
  30. data/lib/gzr/commands/look/cat.rb +1 -1
  31. data/lib/gzr/commands/look/import.rb +5 -5
  32. data/lib/gzr/commands/look/mv.rb +1 -1
  33. data/lib/gzr/commands/look/rm.rb +1 -1
  34. data/lib/gzr/commands/model/ls.rb +4 -4
  35. data/lib/gzr/commands/model/set/ls.rb +2 -2
  36. data/lib/gzr/commands/permission/ls.rb +2 -2
  37. data/lib/gzr/commands/permission/set/ls.rb +2 -2
  38. data/lib/gzr/commands/plan/cat.rb +3 -3
  39. data/lib/gzr/commands/plan/disable.rb +3 -3
  40. data/lib/gzr/commands/plan/enable.rb +3 -3
  41. data/lib/gzr/commands/plan/failures.rb +12 -7
  42. data/lib/gzr/commands/plan/import.rb +5 -5
  43. data/lib/gzr/commands/plan/ls.rb +5 -5
  44. data/lib/gzr/commands/plan/run.rb +2 -2
  45. data/lib/gzr/commands/project/branch.rb +4 -4
  46. data/lib/gzr/commands/project/ls.rb +3 -3
  47. data/lib/gzr/commands/role/cat.rb +2 -2
  48. data/lib/gzr/commands/role/group_add.rb +2 -2
  49. data/lib/gzr/commands/role/group_ls.rb +3 -3
  50. data/lib/gzr/commands/role/group_rm.rb +2 -2
  51. data/lib/gzr/commands/role/ls.rb +3 -3
  52. data/lib/gzr/commands/role/user_add.rb +2 -2
  53. data/lib/gzr/commands/role/user_ls.rb +3 -3
  54. data/lib/gzr/commands/role/user_rm.rb +2 -2
  55. data/lib/gzr/commands/user/cat.rb +5 -3
  56. data/lib/gzr/commands/user/delete.rb +2 -1
  57. data/lib/gzr/commands/user/disable.rb +2 -1
  58. data/lib/gzr/commands/user/enable.rb +2 -1
  59. data/lib/gzr/commands/user/ls.rb +22 -11
  60. data/lib/gzr/commands/user/me.rb +6 -2
  61. data/lib/gzr/commands/user.rb +2 -0
  62. data/lib/gzr/modules/alert.rb +30 -17
  63. data/lib/gzr/modules/attribute.rb +24 -22
  64. data/lib/gzr/modules/connection.rb +10 -25
  65. data/lib/gzr/modules/dashboard.rb +86 -44
  66. data/lib/gzr/modules/folder.rb +20 -28
  67. data/lib/gzr/modules/group.rb +8 -10
  68. data/lib/gzr/modules/look.rb +23 -21
  69. data/lib/gzr/modules/model/set.rb +6 -6
  70. data/lib/gzr/modules/model.rb +14 -7
  71. data/lib/gzr/modules/permission/set.rb +2 -2
  72. data/lib/gzr/modules/permission.rb +2 -4
  73. data/lib/gzr/modules/plan.rb +36 -36
  74. data/lib/gzr/modules/project.rb +26 -21
  75. data/lib/gzr/modules/role.rb +48 -36
  76. data/lib/gzr/modules/session.rb +2 -2
  77. data/lib/gzr/modules/user.rb +52 -43
  78. data/lib/gzr/version.rb +1 -1
  79. metadata +2 -2
@@ -1,6 +1,6 @@
1
1
  # The MIT License (MIT)
2
2
 
3
- # Copyright (c) 2018 Mike DeAngelo Looker Data Sciences, Inc.
3
+ # Copyright (c) 2023 Mike DeAngelo Google, Inc.
4
4
 
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy of
6
6
  # this software and associated documentation files (the "Software"), to deal in
@@ -24,104 +24,113 @@
24
24
  module Gzr
25
25
  module User
26
26
 
27
- def query_me(fields=nil)
28
- data = nil
27
+ def query_me(fields='id')
29
28
  begin
30
- data = @sdk.me(fields ? {:fields=>fields} : nil )
29
+ @sdk.me(fields ? {:fields=>fields} : nil ).to_attrs
31
30
  rescue LookerSDK::Error => e
32
31
  say_error "Error querying me({:fields=>\"#{fields}\"})"
33
32
  say_error e
34
33
  raise
35
34
  end
36
- data
37
35
  end
38
36
 
39
- def query_user(id,fields=nil)
40
- data = nil
37
+ def query_user(id,fields='id')
41
38
  begin
42
- data = @sdk.user(id, fields ? {:fields=>fields} : nil )
39
+ @sdk.user(id, fields ? {:fields=>fields} : nil ).to_attrs
40
+ rescue LookerSDK::NotFound => e
41
+ say_error "user(#{id}) not found"
42
+ say_error e
43
+ raise
43
44
  rescue LookerSDK::Error => e
44
45
  say_error "Error querying user(#{id},{:fields=>\"#{fields}\"})"
45
46
  say_error e
46
47
  raise
47
48
  end
48
- data
49
49
  end
50
50
 
51
51
  def search_users(filter, fields=nil, sorts=nil)
52
52
  req = {
53
- :per_page=>128
53
+ :limit=>64
54
54
  }
55
55
  req.merge!(filter)
56
56
  req[:fields] = fields if fields
57
57
  req[:sorts] = sorts if sorts
58
58
 
59
59
  data = Array.new
60
- page = 1
61
- loop do
62
- begin
63
- req[:page] = page
64
- scratch_data = @sdk.search_users(req)
65
- rescue LookerSDK::ClientError => e
66
- say_error "Unable to get search_users(#{JSON.pretty_generate(req)})"
67
- say_error e
68
- raise
60
+ begin
61
+ loop do
62
+ page = @sdk.search_users(req).collect { |r| r.to_attrs }
63
+ data+=page
64
+ break unless page.length == req[:limit]
65
+ req[:offset] = (req[:offset] || 0) + req[:limit]
69
66
  end
70
- break if scratch_data.length == 0
71
- page += 1
72
- data += scratch_data
67
+ rescue LookerSDK::NotFound => e
68
+ # do nothing
69
+ rescue LookerSDK::ClientError => e
70
+ say_error "Unable to get search_users(#{JSON.pretty_generate(req)})"
71
+ say_error e
72
+ raise
73
73
  end
74
74
  data
75
75
  end
76
76
 
77
77
  def query_all_users(fields=nil, sorts=nil)
78
78
  req = {
79
- :per_page=>128
79
+ :limit=>64
80
80
  }
81
81
  req[:fields] = fields if fields
82
82
  req[:sorts] = sorts if sorts
83
83
 
84
84
  data = Array.new
85
- page = 1
86
- loop do
87
- begin
88
- req[:page] = page
89
- scratch_data = @sdk.all_users(req)
90
- rescue LookerSDK::ClientError => e
91
- say_error "Unable to get all_users(#{JSON.pretty_generate(req)})"
92
- say_error e
93
- raise
85
+ begin
86
+ loop do
87
+ page = @sdk.all_users(req).collect { |r| r.to_attrs }
88
+ data+=page
89
+ break unless page.length == req[:limit]
90
+ req[:offset] = (req[:offset] || 0) + req[:limit]
94
91
  end
95
- break if scratch_data.length == 0
96
- page += 1
97
- data += scratch_data
92
+ rescue LookerSDK::NotFound => e
93
+ # do nothing
94
+ rescue LookerSDK::ClientError => e
95
+ say_error "Unable to get all_users(#{JSON.pretty_generate(req)})"
96
+ say_error e
97
+ raise
98
98
  end
99
99
  data
100
100
  end
101
101
 
102
102
  def update_user(id,req)
103
- data = nil
104
103
  begin
105
- data = @sdk.update_user(id,req)
104
+ @sdk.update_user(id,req)&.to_attrs
105
+ rescue LookerSDK::NotFound => e
106
+ say_error "updating user(#{id},#{JSON.pretty_generate(req)}) not found"
107
+ say_error e
108
+ raise
106
109
  rescue LookerSDK::Error => e
107
110
  say_error "Error updating user(#{id},#{JSON.pretty_generate(req)})"
108
111
  say_error e
109
112
  raise
110
113
  end
111
- data
112
114
  end
113
115
 
114
116
  def delete_user(id)
115
- data = nil
116
- req = id
117
117
  begin
118
- data = @sdk.delete_user(req)
118
+ @sdk.delete_user(id)
119
+ rescue LookerSDK::NotFound => e
120
+ say_error "delete user(#{id},#{JSON.pretty_generate(req)}) not found"
121
+ say_error e
122
+ raise
119
123
  rescue LookerSDK::Error => e
120
- say_error "Error deleting user(#{id},#{JSON.pretty_generate(req)})"
124
+ say_error "Error deleting user(#{id})"
121
125
  say_error e
122
126
  raise
123
127
  end
124
- data
128
+ end
129
+
130
+ def trim_user(data)
131
+ data.select do |k,v|
132
+ (keys_to_keep('create_user') + [:id]).include? k
133
+ end
125
134
  end
126
135
  end
127
136
  end
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.3.10'.freeze
23
+ VERSION = '0.3.12'.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.3.10
4
+ version: 0.3.12
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-07-11 00:00:00.000000000 Z
11
+ date: 2023-10-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: tty-reader