sfrest 0.0.38 → 0.0.41

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7039e02a8fd620b58a601bdbca8cb00353ac78819593e4d45612e9ec93e3bd5d
4
- data.tar.gz: 0b62f183dabf16e48091bc6aeaffbc938c0de3d2b0171f65d4230eac8139f71d
3
+ metadata.gz: 56ae7ea4f4d053d0263ad970320261fb9e2cea437d24b6785ddb5661d8b9a41a
4
+ data.tar.gz: 6c9eae93565ffa04bd0ba347838e51b2a33d7c4bececd1819265ea26d31a4d88
5
5
  SHA512:
6
- metadata.gz: 352329ee8101653fc4d58943724590fbe91b7b8243d0d72e9e82a62683c3276824b91c64b1fe1f4a91551cfb3659bdd516aaf090de588e35651b19a549c87abd
7
- data.tar.gz: 46e63d0eb317bac5bd088dcf5cd0ae3bb4ffd84c8f4d3aaed07b589a3ceb76d0b40502fa9e5e49d0c4553614d69838c5f56b10fe279ffab0ba7fd8582a492536
6
+ metadata.gz: b4677baf9be68f2c5d00b86d223ff79721eaae9d52446b0683bd55bc08cedfba094c6594a4b5cbf84bd44a90751851252c76b190d01341a60ee48f2d328db04c
7
+ data.tar.gz: d5feaaa64b0be6c1267b9eb5ec9d4d94690ab33c5a9e5d31f7c68ddc7c4300d7c766dbd5681527b2ccea255298d7580a3c79b7784ed66a5274f910e70f6a458d
@@ -169,14 +169,18 @@ module SFRest
169
169
  collection
170
170
  cron
171
171
  domains
172
+ factory_standard_domain
172
173
  group
173
174
  info
174
175
  profile
175
176
  role
176
177
  site
178
+ site_guard
177
179
  site_ownership
180
+ site_update_priority
178
181
  stage
179
182
  task
183
+ task_log_settings
180
184
  theme
181
185
  update
182
186
  usage
data/lib/sfrest/cron.rb CHANGED
@@ -24,5 +24,58 @@ module SFRest
24
24
  def get_cron_job(nid)
25
25
  @conn.get("/api/v1/cronjobs/#{nid}")
26
26
  end
27
+
28
+ # Creates a new cron job
29
+ # @param [string] cron job name
30
+ # @param [string] cron job command
31
+ # @param [string] A unix cron expression
32
+ # @param [string] Sites affected by cron
33
+ # @param [int] if the cron should be enabled
34
+ # @param [int] The percentage of cron threads that should be used for this cron
35
+ # @param [array] An array of stack ids for which the cron should be enabled
36
+ # rubocop: disable Metrics/ParameterLists
37
+ def create_cron_job(name, command, interval, scope, enabled, thread_percentage, stacks)
38
+ # rubocop: enable Metrics/ParameterLists
39
+ payload = {
40
+ 'name' => name,
41
+ 'command' => command,
42
+ 'interval' => interval,
43
+ 'sites_affected' => scope,
44
+ 'enabled' => enabled,
45
+ 'thread_percentage' => thread_percentage,
46
+ 'stacks' => stacks
47
+ }.to_json
48
+ @conn.post('/api/v1/cronjobs', payload)
49
+ end
50
+
51
+ # Edits a cron job by its node id
52
+ # @param [int] cron job nid
53
+ # @param [string] cron job name
54
+ # @param [string] cron job command
55
+ # @param [string] A unix cron expression
56
+ # @param [string] Sites affected by cron
57
+ # @param [int] if the cron should be enabled
58
+ # @param [int] The percentage of cron threads that should be used for this cron
59
+ # @param [array] An array of stack ids for which the cron should be enabled
60
+ # rubocop: disable Metrics/ParameterLists
61
+ def edit_cron_job(nid, name, command, interval, scope, enabled, thread_percentage, stacks)
62
+ # rubocop: enable Metrics/ParameterLists
63
+ payload = {
64
+ 'name' => name,
65
+ 'command' => command,
66
+ 'interval' => interval,
67
+ 'sites_affected' => scope,
68
+ 'enabled' => enabled,
69
+ 'thread_percentage' => thread_percentage,
70
+ 'stacks' => stacks
71
+ }.to_json
72
+ @conn.put("/api/v1/cronjobs/#{nid}", payload)
73
+ end
74
+
75
+ # Deletes a cron job by its node id
76
+ # @param [int] cron job nid
77
+ def delete_cron_job(nid)
78
+ @conn.delete("/api/v1/cronjobs/#{nid}")
79
+ end
27
80
  end
28
81
  end
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SFRest
4
+ # We need to keep this naming due to the way connection.rb autoloads things.
5
+ # rubocop: disable Naming/ClassAndModuleCamelCase
6
+ # Manage the factory standard domain feature.
7
+ class Factory_standard_domain
8
+ # rubocop: enable Naming/ClassAndModuleCamelCase
9
+
10
+ # @param [SFRest::Connection] conn
11
+ def initialize(conn)
12
+ @conn = conn
13
+ end
14
+
15
+ # Get current factory standard domains settings
16
+ #
17
+ # @return [Array] an array of factory standard domains with their associated settings.
18
+ def factory_standard_domain_mapping
19
+ @conn.get('/api/v1/factory-standard-domains')
20
+ end
21
+
22
+ # Enable the factory standard domains settings for a given template name.
23
+ # @param [String] domain_template_name the domain template name.
24
+ # @param [Array] new_template the templates to be used.
25
+ #
26
+ # @return [Array] an array of factory standard domains with their associated settings.
27
+ def enable_factory_standard_domain_template(domain_template_name, new_template = [])
28
+ payload = {
29
+ 'new_template' => new_template
30
+ }.to_json
31
+ @conn.put("/api/v1/factory-standard-domains/#{domain_template_name}", payload)
32
+ end
33
+
34
+ # Disable the centralized role management settings for a given role.
35
+ # @param [String] domain_template_name the domain template name.
36
+ #
37
+ # @return [Array] an array of factory standard domains with their associated settings.
38
+ def disable_factory_standard_domain_template(domain_template_name)
39
+ @conn.delete("/api/v1/factory-standard-domains/#{domain_template_name}")
40
+ end
41
+
42
+ # Backfills the factory standard domains using the templates defined.
43
+ #
44
+ # @return [Array] an array containing the message and task_id for that operation.
45
+ def backfill_domains
46
+ @conn.post('/api/v1/factory-standard-domains', {}.to_json)
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SFRest
4
+ # We need to keep this naming due to the way connection.rb autoloads things.
5
+ # rubocop: disable Naming/ClassAndModuleCamelCase
6
+ # Manage the site guard feature.
7
+ class Site_guard
8
+ # rubocop: enable Naming/ClassAndModuleCamelCase
9
+
10
+ # @param [SFRest::Connection] conn
11
+ def initialize(conn)
12
+ @conn = conn
13
+ end
14
+
15
+ # Get current site guard settings.
16
+ #
17
+ # @return [Array] an array containing current settings.
18
+ def current_settings
19
+ @conn.get('/api/v1/site-guard')
20
+ end
21
+
22
+ # Set and enables the site guard settings.
23
+ # @param [String] The message which will be displayed by the site guard.
24
+ # @param [String] The username which will be required by the site guard.
25
+ # @param [String] The password which will be required by the site guard.
26
+ #
27
+ # @return [Array] an array containing the message given by the server.
28
+ def enable_site_guard(message, username, password)
29
+ payload = {
30
+ 'message' => message,
31
+ 'username' => username,
32
+ 'password' => password
33
+ }
34
+
35
+ @conn.put('/api/v1/site-guard', payload.to_json)
36
+ end
37
+
38
+ # Removes and disableds the site guard settings.
39
+ #
40
+ # @return [Array] an array containing the message given by the server.
41
+ def disable_site_guard
42
+ @conn.delete('/api/v1/site-guard')
43
+ end
44
+ end
45
+ end
@@ -37,5 +37,35 @@ module SFRest
37
37
  def remove_default_owner
38
38
  @conn.delete('/api/v1/site-ownership')
39
39
  end
40
+
41
+ # Transfers site ownership using recipients username.
42
+ # @param [Integer] site id.
43
+ # @param [String] username.
44
+ # @param [Boolean] force_transfer.
45
+ #
46
+ # @return [Array] an array containing the message given by the server.
47
+ def transfer_site_ownership_using_username(site_id, username, force_transfer)
48
+ payload = {
49
+ 'username' => username,
50
+ 'force_transfer' => force_transfer
51
+ }
52
+
53
+ @conn.post("/api/v1/site-ownership/#{site_id}", payload.to_json)
54
+ end
55
+
56
+ # Transfers site ownership using recipients email.
57
+ # @param [Integer] site id.
58
+ # @param [String] email.
59
+ # @param [Boolean] force_transfer.
60
+ #
61
+ # @return [Array] an array containing the message given by the server.
62
+ def transfer_site_ownership_using_email(site_id, email, force_transfer)
63
+ payload = {
64
+ 'email' => email,
65
+ 'force_transfer' => force_transfer
66
+ }
67
+
68
+ @conn.post("/api/v1/site-ownership/#{site_id}", payload.to_json)
69
+ end
40
70
  end
41
71
  end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SFRest
4
+ # We need to keep this naming due to the way connection.rb autoloads things.
5
+ # rubocop: disable Naming/ClassAndModuleCamelCase
6
+ # Manage the site update priority feature.
7
+ class Site_update_priority
8
+ # rubocop: enable Naming/ClassAndModuleCamelCase
9
+
10
+ # @param [SFRest::Connection] conn
11
+ def initialize(conn)
12
+ @conn = conn
13
+ end
14
+
15
+ # Get current site update priority.
16
+ #
17
+ # @return [Array] an array of the current site update priority.
18
+ def current_update_priority
19
+ @conn.get('/api/v1/site-update-priority')
20
+ end
21
+
22
+ # Set the site update priority list.
23
+ # @param [Array] site node ids in the desired update order.
24
+ #
25
+ # @return [Array] an array containing the message given by the server.
26
+ def change_update_priority(priority)
27
+ payload = {
28
+ 'priority' => priority
29
+ }.to_json
30
+ @conn.put('/api/v1/site-update-priority', payload)
31
+ end
32
+
33
+ # Reset the site update priority to the default.
34
+ #
35
+ # @return [Array] an array containing the message given by the server.
36
+ def reset_update_priority
37
+ @conn.delete('/api/v1/site-update-priority')
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SFRest
4
+ # We need to keep this naming due to the way connection.rb autoloads things.
5
+ # rubocop: disable Naming/ClassAndModuleCamelCase
6
+ # Manage the site default ownership feature.
7
+ class Task_log_settings
8
+ # rubocop: enable Naming/ClassAndModuleCamelCase
9
+
10
+ # @param [SFRest::Connection] conn
11
+ def initialize(conn)
12
+ @conn = conn
13
+ end
14
+
15
+ # Get current task log settings.
16
+ #
17
+ # @return [Array] an array containing current settings.
18
+ def current_task_log_settings
19
+ @conn.get('/api/v1/task-log-settings')
20
+ end
21
+
22
+ # Set the site ownership settings.
23
+ # @param [String] The maximum log level that will be written to the log.
24
+ # @param [String] Level of Wip log messages to keep on successful completion.
25
+ #
26
+ # @return [Array] an array containing the message given by the server.
27
+ def edit_task_log_settings(wip_log_maximum_level, wip_log_level)
28
+ payload = {
29
+ 'wip_log_maximum_level' => wip_log_maximum_level,
30
+ 'wip_log_level' => wip_log_level
31
+ }
32
+
33
+ @conn.put('/api/v1/task-log-settings', payload.to_json)
34
+ end
35
+
36
+ # Reset current task log settings.
37
+ #
38
+ # @return [Array] an array containing the message given by the server.
39
+ def reset_task_log_settings
40
+ @conn.delete('/api/v1/task-log-settings')
41
+ end
42
+ end
43
+ end
@@ -2,5 +2,5 @@
2
2
 
3
3
  module SFRest
4
4
  # Just tracks the version of sfrest.
5
- VERSION = '0.0.38'
5
+ VERSION = '0.0.41'
6
6
  end
data/lib/sfrest.rb CHANGED
@@ -17,15 +17,19 @@ require 'sfrest/connection'
17
17
  require 'sfrest/cron'
18
18
  require 'sfrest/domains'
19
19
  require 'sfrest/error'
20
+ require 'sfrest/factory_standard_domain'
20
21
  require 'sfrest/group'
21
22
  require 'sfrest/info'
22
23
  require 'sfrest/profile'
23
24
  require 'sfrest/pathbuilder'
24
25
  require 'sfrest/role'
25
26
  require 'sfrest/site'
27
+ require 'sfrest/site_guard'
26
28
  require 'sfrest/site_ownership'
29
+ require 'sfrest/site_update_priority'
27
30
  require 'sfrest/stage'
28
31
  require 'sfrest/task'
32
+ require 'sfrest/task_log_settings'
29
33
  require 'sfrest/theme'
30
34
  require 'sfrest/update'
31
35
  require 'sfrest/usage'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sfrest
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.38
4
+ version: 0.0.41
5
5
  platform: ruby
6
6
  authors:
7
7
  - ACSF Engineering
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-11 00:00:00.000000000 Z
11
+ date: 2022-05-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: excon
@@ -110,15 +110,19 @@ files:
110
110
  - lib/sfrest/cron.rb
111
111
  - lib/sfrest/domains.rb
112
112
  - lib/sfrest/error.rb
113
+ - lib/sfrest/factory_standard_domain.rb
113
114
  - lib/sfrest/group.rb
114
115
  - lib/sfrest/info.rb
115
116
  - lib/sfrest/pathbuilder.rb
116
117
  - lib/sfrest/profile.rb
117
118
  - lib/sfrest/role.rb
118
119
  - lib/sfrest/site.rb
120
+ - lib/sfrest/site_guard.rb
119
121
  - lib/sfrest/site_ownership.rb
122
+ - lib/sfrest/site_update_priority.rb
120
123
  - lib/sfrest/stage.rb
121
124
  - lib/sfrest/task.rb
125
+ - lib/sfrest/task_log_settings.rb
122
126
  - lib/sfrest/theme.rb
123
127
  - lib/sfrest/update.rb
124
128
  - lib/sfrest/usage.rb
@@ -144,7 +148,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
144
148
  - !ruby/object:Gem::Version
145
149
  version: '0'
146
150
  requirements: []
147
- rubygems_version: 3.2.17
151
+ rubygems_version: 3.3.12
148
152
  signing_key:
149
153
  specification_version: 4
150
154
  summary: Acquia Site Factory Rest API.