google_directory 0.2.4 → 1.0.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.
- checksums.yaml +4 -4
- data/lib/google_directory/user_commands.rb +18 -2
- data/lib/google_directory/users_commands.rb +2 -1
- data/lib/google_directory/version.rb +1 -1
- metadata +13 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2c500b521381a697f0db03d78359f84358f9bbc518bb10fcceb5346032e1f473
|
|
4
|
+
data.tar.gz: 61a5059a6b49f492184d27b053b696927de371127abb5b1bb8b5bc0140af3d01
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 218c568d547060affbac27d35f3361d61411991f11a1f90dd4e646c78f0cab19d785cd3725d249eb4d94d09f28deb60c1c7f470f10b39ec7065a6de4ef306c8d
|
|
7
|
+
data.tar.gz: 3b14d88941ee473e25987ab62effde623e65b18f2084cfa789fac640503c9cdda1df54b04733c6306a78e7ad0ab8e04caf481deffc30958ac6b9e9eade27be55
|
|
@@ -43,7 +43,15 @@ module GoogleDirectory
|
|
|
43
43
|
defaults = { suspended: true, password: password, change_password_at_next_login: true }
|
|
44
44
|
user_attr = defaults.merge( attributes )
|
|
45
45
|
# create a google user object
|
|
46
|
-
|
|
46
|
+
# Ruby 3: pass keyword args instead of positional Hash
|
|
47
|
+
# Also coerce nested :name Hash into a UserName object if provided
|
|
48
|
+
if user_attr[:name].is_a?(Hash)
|
|
49
|
+
name_hash = user_attr[:name]
|
|
50
|
+
user_attr = user_attr.merge(
|
|
51
|
+
name: Google::Apis::AdminDirectoryV1::UserName.new(**name_hash.transform_keys(&:to_sym))
|
|
52
|
+
)
|
|
53
|
+
end
|
|
54
|
+
user_object = Google::Apis::AdminDirectoryV1::User.new(**user_attr)
|
|
47
55
|
# create user in directory services
|
|
48
56
|
response = service.insert_user( user_object )
|
|
49
57
|
{response: response, attributes: attributes[:primary_email], command: :user_create}
|
|
@@ -108,7 +116,15 @@ module GoogleDirectory
|
|
|
108
116
|
private
|
|
109
117
|
def update_user( user_attr )
|
|
110
118
|
# create a user object that google will create
|
|
111
|
-
|
|
119
|
+
# Ruby 3: pass keyword args instead of positional Hash
|
|
120
|
+
# Also coerce nested :name Hash into a UserName object if provided
|
|
121
|
+
if user_attr[:name].is_a?(Hash)
|
|
122
|
+
name_hash = user_attr[:name]
|
|
123
|
+
user_attr = user_attr.merge(
|
|
124
|
+
name: Google::Apis::AdminDirectoryV1::UserName.new(**name_hash.transform_keys(&:to_sym))
|
|
125
|
+
)
|
|
126
|
+
end
|
|
127
|
+
user_object = Google::Apis::AdminDirectoryV1::User.new(**user_attr)
|
|
112
128
|
# send user object to google directory
|
|
113
129
|
service.update_user( user_attr[:primary_email], user_object )
|
|
114
130
|
end
|
|
@@ -16,7 +16,8 @@ module GoogleDirectory
|
|
|
16
16
|
def users_list( attributes: {} )
|
|
17
17
|
defaults = { max_results: 10, order_by: 'email' }
|
|
18
18
|
filters = defaults.merge( attributes )
|
|
19
|
-
|
|
19
|
+
# Ruby 3: DirectoryService#list_users accepts only keyword args
|
|
20
|
+
response = service.list_users(**filters)
|
|
20
21
|
{response: response, attributes: filters, command: :users_list}
|
|
21
22
|
end
|
|
22
23
|
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: google_directory
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 1.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Bill Tihen
|
|
@@ -9,22 +9,28 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: exe
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date:
|
|
12
|
+
date: 2025-11-20 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: google-api-client
|
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
|
17
17
|
requirements:
|
|
18
|
-
- - "
|
|
18
|
+
- - ">="
|
|
19
|
+
- !ruby/object:Gem::Version
|
|
20
|
+
version: '0.53'
|
|
21
|
+
- - "<"
|
|
19
22
|
- !ruby/object:Gem::Version
|
|
20
|
-
version: '0
|
|
23
|
+
version: '1.0'
|
|
21
24
|
type: :runtime
|
|
22
25
|
prerelease: false
|
|
23
26
|
version_requirements: !ruby/object:Gem::Requirement
|
|
24
27
|
requirements:
|
|
25
|
-
- - "
|
|
28
|
+
- - ">="
|
|
26
29
|
- !ruby/object:Gem::Version
|
|
27
|
-
version: '0.
|
|
30
|
+
version: '0.53'
|
|
31
|
+
- - "<"
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '1.0'
|
|
28
34
|
- !ruby/object:Gem::Dependency
|
|
29
35
|
name: bundler
|
|
30
36
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -106,7 +112,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
106
112
|
requirements:
|
|
107
113
|
- - ">="
|
|
108
114
|
- !ruby/object:Gem::Version
|
|
109
|
-
version: '
|
|
115
|
+
version: '2.7'
|
|
110
116
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
111
117
|
requirements:
|
|
112
118
|
- - ">="
|