sfrest 0.0.29 → 0.0.30
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/sfrest/collection.rb +3 -3
- data/lib/sfrest/connection.rb +2 -2
- data/lib/sfrest/group.rb +10 -10
- data/lib/sfrest/role.rb +3 -3
- data/lib/sfrest/site.rb +6 -4
- data/lib/sfrest/stage.rb +6 -6
- data/lib/sfrest/task.rb +5 -5
- data/lib/sfrest/update.rb +3 -3
- data/lib/sfrest/user.rb +4 -4
- data/lib/sfrest/variable.rb +1 -1
- data/lib/sfrest/version.rb +1 -1
- metadata +10 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e5d935fa06aa4609da0f2a5216400ebc8b88ca7e5d973962f5834b83390ff516
|
4
|
+
data.tar.gz: 2d532f771e96c443e41c0184ff03d2af957a1759ce8207eb99c75fa90cf9e99c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0ced957ae4b74d3e968794cc4f7aebd061f278fe30f240fb04dc0fd2c4d3c90d23591972433c17005e923dddbaa2e9e690bf2c164225c60e203718c4b2f47a83
|
7
|
+
data.tar.gz: 3bc8c3d799abbae1467c404b4cab407e7e23fec78fdc4d4651e91e73bedafd335cedc8c9b6a052e4bdf5daf2905f490e274b963bfb67e130d464abccb0a1449f
|
data/lib/sfrest/collection.rb
CHANGED
@@ -14,14 +14,14 @@ module SFRest
|
|
14
14
|
# @return [Integer] the id of sitename
|
15
15
|
def get_collection_id(name)
|
16
16
|
pglimit = 100
|
17
|
-
res = @conn.get(
|
17
|
+
res = @conn.get("/api/v1/collections&limit=#{pglimit}")
|
18
18
|
count = res['count'].to_i
|
19
19
|
id = collection_data_from_results(res, name, 'id')
|
20
20
|
return id if id
|
21
21
|
|
22
22
|
pages = (count / pglimit) + 1
|
23
23
|
2.upto(pages) do |i|
|
24
|
-
res = @conn.get(
|
24
|
+
res = @conn.get("/api/v1/collections&limit=#{pglimit}?page=#{i}")
|
25
25
|
id = collection_data_from_results(res, name, 'id')
|
26
26
|
return id if id
|
27
27
|
end
|
@@ -45,7 +45,7 @@ module SFRest
|
|
45
45
|
# @param [Integer] id the site id
|
46
46
|
# @return [Hash]
|
47
47
|
def get_collection_data(id)
|
48
|
-
@conn.get(
|
48
|
+
@conn.get("/api/v1/collections/#{id}")
|
49
49
|
end
|
50
50
|
|
51
51
|
# gets the site id of the 1st one found using the api
|
data/lib/sfrest/connection.rb
CHANGED
@@ -42,7 +42,7 @@ module SFRest
|
|
42
42
|
user: username,
|
43
43
|
password: password,
|
44
44
|
ssl_verify_peer: false)
|
45
|
-
api_response res, true
|
45
|
+
api_response res, return_status: true
|
46
46
|
end
|
47
47
|
|
48
48
|
# http request via post
|
@@ -100,7 +100,7 @@ module SFRest
|
|
100
100
|
# with the reponse
|
101
101
|
# @return [Array|Object] if return_status then [int, Object]
|
102
102
|
# else Object
|
103
|
-
def api_response(res, return_status
|
103
|
+
def api_response(res, return_status: false)
|
104
104
|
data = access_check JSON(res.body), res.status
|
105
105
|
return_status ? [res.status, data] : data
|
106
106
|
rescue JSON::ParserError
|
data/lib/sfrest/group.rb
CHANGED
@@ -20,7 +20,7 @@ module SFRest
|
|
20
20
|
# Deletes the group with the specified id
|
21
21
|
# @param [Integer] group_id Id of the group to fetch
|
22
22
|
def delete_group(group_id)
|
23
|
-
current_path =
|
23
|
+
current_path = "/api/v1/groups/#{group_id}"
|
24
24
|
@conn.delete(current_path)
|
25
25
|
end
|
26
26
|
|
@@ -28,7 +28,7 @@ module SFRest
|
|
28
28
|
# @param [Integer] group_id Id of the group to rename.
|
29
29
|
# @param [String] groupname New name for the group.
|
30
30
|
def rename_group(group_id, groupname)
|
31
|
-
current_path =
|
31
|
+
current_path = "/api/v1/groups/#{group_id}/update"
|
32
32
|
payload = { 'group_name' => groupname }.to_json
|
33
33
|
@conn.put(current_path, payload)
|
34
34
|
end
|
@@ -37,7 +37,7 @@ module SFRest
|
|
37
37
|
# @param [Integer] group_id Id of the group to fetch
|
38
38
|
# @return [Hash] group object from the SF Api
|
39
39
|
def get_group(group_id = 0)
|
40
|
-
current_path =
|
40
|
+
current_path = "/api/v1/groups/#{group_id}"
|
41
41
|
@conn.get(current_path)
|
42
42
|
end
|
43
43
|
|
@@ -45,7 +45,7 @@ module SFRest
|
|
45
45
|
# @param [Integer] group_id Id of the group to fetch
|
46
46
|
# @return [Hash] {'count' => count, 'members' => Hash }
|
47
47
|
def get_members(group_id = 0)
|
48
|
-
current_path =
|
48
|
+
current_path = "/api/v1/groups/#{group_id}/members"
|
49
49
|
@conn.get(current_path)
|
50
50
|
end
|
51
51
|
|
@@ -54,7 +54,7 @@ module SFRest
|
|
54
54
|
# @param [Array] uids of the users that need to be added
|
55
55
|
# @return [Hash] {'count' => count, 'uids_added' => Hash }
|
56
56
|
def add_members(group_id, uids)
|
57
|
-
current_path =
|
57
|
+
current_path = "/api/v1/groups/#{group_id}/members"
|
58
58
|
payload = { 'uids' => uids.map(&:to_i) }.to_json
|
59
59
|
@conn.post(current_path, payload)
|
60
60
|
end
|
@@ -64,7 +64,7 @@ module SFRest
|
|
64
64
|
# @param [Array] uids of the users that need to be removed
|
65
65
|
# @return [Hash] {'group_id' => 123, 'uids_removed' => [1, 2, ...]}
|
66
66
|
def remove_members(group_id, uids)
|
67
|
-
current_path =
|
67
|
+
current_path = "/api/v1/groups/#{group_id}/members"
|
68
68
|
payload = { 'uids' => uids.map(&:to_i) }.to_json
|
69
69
|
@conn.delete(current_path, payload)
|
70
70
|
end
|
@@ -74,7 +74,7 @@ module SFRest
|
|
74
74
|
# @param [Array] uids of the users that need to be promoted
|
75
75
|
# @return [Hash] {'count' => count, 'uids_promoted' => [1, 2, ...] }
|
76
76
|
def promote_to_admins(group_id, uids)
|
77
|
-
current_path =
|
77
|
+
current_path = "/api/v1/groups/#{group_id}/admins"
|
78
78
|
payload = { 'uids' => uids.map(&:to_i) }.to_json
|
79
79
|
@conn.post(current_path, payload)
|
80
80
|
end
|
@@ -84,7 +84,7 @@ module SFRest
|
|
84
84
|
# @param [Array] uids of the users that need to be demoted
|
85
85
|
# @return [Hash] {'count' => count, 'uids_demoted' => Hash }
|
86
86
|
def demote_from_admins(group_id, uids)
|
87
|
-
current_path =
|
87
|
+
current_path = "/api/v1/groups/#{group_id}/admins"
|
88
88
|
payload = { 'uids' => uids.map(&:to_i) }.to_json
|
89
89
|
@conn.delete(current_path, payload)
|
90
90
|
end
|
@@ -94,7 +94,7 @@ module SFRest
|
|
94
94
|
# @param [Array] site_ids Ids of the sites that need to be added
|
95
95
|
# @return [Hash] {'group_id' => 123, 'site_ids_added' => [1, 2, ...]}
|
96
96
|
def add_sites(group_id, site_ids)
|
97
|
-
current_path =
|
97
|
+
current_path = "/api/v1/groups/#{group_id}/sites"
|
98
98
|
payload = { 'site_ids' => site_ids }.to_json
|
99
99
|
@conn.post(current_path, payload)
|
100
100
|
end
|
@@ -104,7 +104,7 @@ module SFRest
|
|
104
104
|
# @param [Array] site_ids Ids of the sites that need to be removed.
|
105
105
|
# @return [Hash] {'group_id' => 123, 'site_ids_removed' => [1, 2, ...], 'site_ids_failed' => [3, 4, ...]}
|
106
106
|
def remove_sites(group_id, site_ids)
|
107
|
-
current_path =
|
107
|
+
current_path = "/api/v1/groups/#{group_id}/sites"
|
108
108
|
payload = { 'site_ids' => site_ids }.to_json
|
109
109
|
@conn.delete(current_path, payload)
|
110
110
|
end
|
data/lib/sfrest/role.rb
CHANGED
@@ -44,14 +44,14 @@ module SFRest
|
|
44
44
|
# this will iterate through the roles pages
|
45
45
|
def get_role_id(rolename)
|
46
46
|
pglimit = 100
|
47
|
-
res = @conn.get(
|
47
|
+
res = @conn.get("/api/v1/roles&limit=#{pglimit}")
|
48
48
|
rolecount = res['count'].to_i
|
49
49
|
id = role_data_from_results(res, rolename)
|
50
50
|
return id if id
|
51
51
|
|
52
52
|
pages = (rolecount / pglimit) + 1
|
53
53
|
2.upto(pages) do |i|
|
54
|
-
res = @conn.get(
|
54
|
+
res = @conn.get("/api/v1/roles&limit=#{pglimit}?page=#{i}")
|
55
55
|
id = role_data_from_results(res, rolename)
|
56
56
|
return id if id
|
57
57
|
end
|
@@ -74,7 +74,7 @@ module SFRest
|
|
74
74
|
# @param [Integer] id the role id
|
75
75
|
# @return [Hash] the role
|
76
76
|
def role_data(id)
|
77
|
-
@conn.get(
|
77
|
+
@conn.get("/api/v1/roles/#{id}")
|
78
78
|
end
|
79
79
|
|
80
80
|
# Creates a role.
|
data/lib/sfrest/site.rb
CHANGED
@@ -14,14 +14,14 @@ module SFRest
|
|
14
14
|
# @return [Integer] the id of sitename
|
15
15
|
def get_site_id(sitename)
|
16
16
|
pglimit = 100
|
17
|
-
res = @conn.get(
|
17
|
+
res = @conn.get("/api/v1/sites&limit=#{pglimit}")
|
18
18
|
sitecount = res['count'].to_i
|
19
19
|
id = site_data_from_results(res, sitename, 'id')
|
20
20
|
return id if id
|
21
21
|
|
22
22
|
pages = (sitecount / pglimit) + 1
|
23
23
|
2.upto(pages) do |i|
|
24
|
-
res = @conn.get(
|
24
|
+
res = @conn.get("/api/v1/sites&limit=#{pglimit}?page=#{i}")
|
25
25
|
id = site_data_from_results(res, sitename, 'id')
|
26
26
|
return id if id
|
27
27
|
end
|
@@ -45,7 +45,7 @@ module SFRest
|
|
45
45
|
# @param [Integer] site_id the site id
|
46
46
|
# @return [Hash]
|
47
47
|
def get_site_data(site_id)
|
48
|
-
@conn.get(
|
48
|
+
@conn.get("/api/v1/sites/#{site_id}")
|
49
49
|
end
|
50
50
|
|
51
51
|
# gets the site id of the 1st one found using the api
|
@@ -60,6 +60,7 @@ module SFRest
|
|
60
60
|
# @param [Boolean] show_incomplete whether to include incomplete sites in
|
61
61
|
# the list. The default differs from UI/SF to maintain backward compatibility.
|
62
62
|
# @return [Hash{'count' => Integer, 'sites' => Hash}]
|
63
|
+
# rubocop: disable Style/OptionalBooleanParameter
|
63
64
|
def site_list(show_incomplete = true)
|
64
65
|
page = 1
|
65
66
|
not_done = true
|
@@ -85,6 +86,7 @@ module SFRest
|
|
85
86
|
end
|
86
87
|
{ 'count' => count, 'sites' => sites }
|
87
88
|
end
|
89
|
+
# rubocop: enable Style/OptionalBooleanParameter
|
88
90
|
|
89
91
|
# Creates a site.
|
90
92
|
# @param [String] sitename The name of the site to create.
|
@@ -110,7 +112,7 @@ module SFRest
|
|
110
112
|
# @param [Integer] site_id The id of the stie to be deleted
|
111
113
|
# @return [Hash]
|
112
114
|
def delete(site_id)
|
113
|
-
current_path =
|
115
|
+
current_path = "/api/v1/sites/#{site_id}"
|
114
116
|
@conn.delete current_path
|
115
117
|
end
|
116
118
|
|
data/lib/sfrest/stage.rb
CHANGED
@@ -15,6 +15,7 @@ module SFRest
|
|
15
15
|
# @param [Boolean] skip_gardener skip staging the gardener and only stage the sites
|
16
16
|
#
|
17
17
|
# @return [Integer] Id of the staging task created.
|
18
|
+
# rubocop: disable Style/OptionalBooleanParameter
|
18
19
|
def stage(to_env = 'test', sites = nil, email_site_status = false, skip_gardener = false)
|
19
20
|
raise InvalidApiVersion, staging_versions unless staging_versions.include? 1
|
20
21
|
|
@@ -23,6 +24,7 @@ module SFRest
|
|
23
24
|
'skip_gardener' => skip_gardener }.to_json
|
24
25
|
@conn.post('/api/v1/stage', payload)
|
25
26
|
end
|
27
|
+
# rubocop: enable Style/OptionalBooleanParameter
|
26
28
|
|
27
29
|
# Stage a site using the new method
|
28
30
|
# @param [String] to_env the name of of target env. defaults to test
|
@@ -65,12 +67,10 @@ module SFRest
|
|
65
67
|
possible_versions = [1, 2]
|
66
68
|
@versions ||= []
|
67
69
|
possible_versions.each do |version|
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
nil
|
73
|
-
end
|
70
|
+
@conn.get "/api/v#{version}/stage"
|
71
|
+
@versions.push version
|
72
|
+
rescue SFRest::InvalidResponse
|
73
|
+
nil
|
74
74
|
end
|
75
75
|
@versions
|
76
76
|
end
|
data/lib/sfrest/task.rb
CHANGED
@@ -209,7 +209,7 @@ module SFRest
|
|
209
209
|
# Get a specific task's logs
|
210
210
|
# @param [Integer] task_id
|
211
211
|
def get_task_logs(task_id)
|
212
|
-
current_path =
|
212
|
+
current_path = "/api/v1/tasks/#{task_id}/logs"
|
213
213
|
@conn.get(current_path)
|
214
214
|
end
|
215
215
|
|
@@ -233,7 +233,7 @@ module SFRest
|
|
233
233
|
# @param [Integer] task_id
|
234
234
|
# @param [String] level family|task
|
235
235
|
def pause_task(task_id, level = 'family')
|
236
|
-
current_path =
|
236
|
+
current_path = "/api/v1/pause/#{task_id}"
|
237
237
|
payload = { 'paused' => true, 'level' => level }.to_json
|
238
238
|
@conn.post(current_path, payload)
|
239
239
|
end
|
@@ -243,7 +243,7 @@ module SFRest
|
|
243
243
|
# @param [Integer] task_id
|
244
244
|
# @param [String] level family|task
|
245
245
|
def resume_task(task_id, level = 'family')
|
246
|
-
current_path =
|
246
|
+
current_path = "/api/v1/pause/#{task_id}"
|
247
247
|
payload = { 'paused' => false, 'level' => level }.to_json
|
248
248
|
@conn.post(current_path, payload)
|
249
249
|
end
|
@@ -261,7 +261,7 @@ module SFRest
|
|
261
261
|
# This will delete the task and its children
|
262
262
|
# @param [Integer] task_id
|
263
263
|
def delete_task(task_id)
|
264
|
-
current_path =
|
264
|
+
current_path = "/api/v1/tasks/#{task_id}"
|
265
265
|
@conn.delete(current_path)
|
266
266
|
end
|
267
267
|
|
@@ -269,7 +269,7 @@ module SFRest
|
|
269
269
|
# @param [String] type softpaused | softpause-for-update
|
270
270
|
# @return [Array] Array of wip classes
|
271
271
|
def get_task_class_info(type = '')
|
272
|
-
current_path =
|
272
|
+
current_path = "/api/v1/classes/#{type}"
|
273
273
|
@conn.get(current_path)
|
274
274
|
end
|
275
275
|
|
data/lib/sfrest/update.rb
CHANGED
@@ -26,7 +26,7 @@ module SFRest
|
|
26
26
|
|
27
27
|
# Lists vcs refs.
|
28
28
|
def list_vcs_refs(type = 'sites', stack_id = 1)
|
29
|
-
current_path =
|
29
|
+
current_path = "/api/v1/vcs?type=#{type}&stack_id=#{stack_id}"
|
30
30
|
@conn.get(current_path)
|
31
31
|
end
|
32
32
|
|
@@ -71,7 +71,7 @@ module SFRest
|
|
71
71
|
|
72
72
|
# Gets the progress of an update by id.
|
73
73
|
def update_progress(update_id)
|
74
|
-
current_path =
|
74
|
+
current_path = "/api/v1/update/#{update_id}/status"
|
75
75
|
@conn.get(current_path)
|
76
76
|
end
|
77
77
|
|
@@ -109,7 +109,7 @@ module SFRest
|
|
109
109
|
begin
|
110
110
|
@conn.post '/api/v2/update', '{}'
|
111
111
|
rescue SFRest::BadRequestError
|
112
|
-
|
112
|
+
@has_v2_endpoint = true
|
113
113
|
rescue SFRest::InvalidResponse => e
|
114
114
|
return @has_v2_endpoint = false if e.message =~ /Invalid data, status 404/
|
115
115
|
|
data/lib/sfrest/user.rb
CHANGED
@@ -16,7 +16,7 @@ module SFRest
|
|
16
16
|
not_done = true
|
17
17
|
count = 0
|
18
18
|
while not_done
|
19
|
-
current_path =
|
19
|
+
current_path = "/api/v1/users?page=#{page}"
|
20
20
|
res = @conn.get(current_path)
|
21
21
|
if res['users'] == []
|
22
22
|
not_done = false
|
@@ -41,14 +41,14 @@ module SFRest
|
|
41
41
|
# @return [Integer] the uid of the drupal user
|
42
42
|
def get_user_id(username)
|
43
43
|
pglimit = 100
|
44
|
-
res = @conn.get(
|
44
|
+
res = @conn.get("/api/v1/users&limit=#{pglimit}")
|
45
45
|
usercount = res['count'].to_i
|
46
46
|
id = user_data_from_results(res, username, 'uid')
|
47
47
|
return id if id
|
48
48
|
|
49
49
|
pages = (usercount / pglimit) + 1
|
50
50
|
2.upto(pages) do |i|
|
51
|
-
res = @conn.get(
|
51
|
+
res = @conn.get("/api/v1/users&limit=#{pglimit}?page=#{i}")
|
52
52
|
id = user_data_from_results(res, username, 'uid')
|
53
53
|
return id if id
|
54
54
|
end
|
@@ -72,7 +72,7 @@ module SFRest
|
|
72
72
|
# @param [int] uid site id
|
73
73
|
# @return [Hash]
|
74
74
|
def get_user_data(uid)
|
75
|
-
@conn.get(
|
75
|
+
@conn.get("/api/v1/users/#{uid}")
|
76
76
|
end
|
77
77
|
|
78
78
|
# Creates a user.
|
data/lib/sfrest/variable.rb
CHANGED
data/lib/sfrest/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sfrest
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.30
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ACSF Engineering
|
@@ -70,30 +70,30 @@ dependencies:
|
|
70
70
|
name: simplecov
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - "
|
73
|
+
- - ">="
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '0
|
75
|
+
version: '0'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - "
|
80
|
+
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: '0
|
82
|
+
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: webmock
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- - "
|
87
|
+
- - ">="
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: '
|
89
|
+
version: '0'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - "
|
94
|
+
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: '
|
96
|
+
version: '0'
|
97
97
|
description: Wrapper methods around the ACSF Rest API.
|
98
98
|
email:
|
99
99
|
executables: []
|
@@ -140,7 +140,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
140
140
|
- !ruby/object:Gem::Version
|
141
141
|
version: '0'
|
142
142
|
requirements: []
|
143
|
-
rubygems_version: 3.0.
|
143
|
+
rubygems_version: 3.0.8
|
144
144
|
signing_key:
|
145
145
|
specification_version: 4
|
146
146
|
summary: Acquia Site Factory Rest API.
|