sfrest 0.0.40 → 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: ef1480dd089e071458111ef6c8f2ea4e0e4aa7ff7bfc509e2c150f33167f0e69
4
- data.tar.gz: f90b9028fbf5e4b117d8856144d271516c5f4af6e9ae04800d55c1f1cc2c48db
3
+ metadata.gz: 56ae7ea4f4d053d0263ad970320261fb9e2cea437d24b6785ddb5661d8b9a41a
4
+ data.tar.gz: 6c9eae93565ffa04bd0ba347838e51b2a33d7c4bececd1819265ea26d31a4d88
5
5
  SHA512:
6
- metadata.gz: e940d9ece6a6ad534a9d3025e3dfe2aa56ef3026f74d7efbdaa84fe9add7d9b62831d68d87a0bf12b7e2ccb5d91ba19eeb6b3822ce23e82b992c15d7d531a166
7
- data.tar.gz: b488d33656b6ebc149f35f488da4963c34994fe762482a08717ae78f783db9d9354663803b7a9eedc5773afeeb69ed153c54a4efe1f7c66d5b38fb715d15f25b
6
+ metadata.gz: b4677baf9be68f2c5d00b86d223ff79721eaae9d52446b0683bd55bc08cedfba094c6594a4b5cbf84bd44a90751851252c76b190d01341a60ee48f2d328db04c
7
+ data.tar.gz: d5feaaa64b0be6c1267b9eb5ec9d4d94690ab33c5a9e5d31f7c68ddc7c4300d7c766dbd5681527b2ccea255298d7580a3c79b7784ed66a5274f910e70f6a458d
@@ -180,6 +180,7 @@ module SFRest
180
180
  site_update_priority
181
181
  stage
182
182
  task
183
+ task_log_settings
183
184
  theme
184
185
  update
185
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
@@ -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,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.40'
5
+ VERSION = '0.0.41'
6
6
  end
data/lib/sfrest.rb CHANGED
@@ -29,6 +29,7 @@ require 'sfrest/site_ownership'
29
29
  require 'sfrest/site_update_priority'
30
30
  require 'sfrest/stage'
31
31
  require 'sfrest/task'
32
+ require 'sfrest/task_log_settings'
32
33
  require 'sfrest/theme'
33
34
  require 'sfrest/update'
34
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.40
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-04-08 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
@@ -122,6 +122,7 @@ files:
122
122
  - lib/sfrest/site_update_priority.rb
123
123
  - lib/sfrest/stage.rb
124
124
  - lib/sfrest/task.rb
125
+ - lib/sfrest/task_log_settings.rb
125
126
  - lib/sfrest/theme.rb
126
127
  - lib/sfrest/update.rb
127
128
  - lib/sfrest/usage.rb
@@ -147,7 +148,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
147
148
  - !ruby/object:Gem::Version
148
149
  version: '0'
149
150
  requirements: []
150
- rubygems_version: 3.2.17
151
+ rubygems_version: 3.3.12
151
152
  signing_key:
152
153
  specification_version: 4
153
154
  summary: Acquia Site Factory Rest API.