sfrest 0.0.37 → 0.0.40

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: 573ae6cb7e5e7436c17d556e135ae412e91aececfdbe2b85a1dfa2ff813302df
4
- data.tar.gz: 7ca7acc2ef22b1bf02bccb4ad19ea548d1d66756379d0882c488f9ac8bb3c2e7
3
+ metadata.gz: ef1480dd089e071458111ef6c8f2ea4e0e4aa7ff7bfc509e2c150f33167f0e69
4
+ data.tar.gz: f90b9028fbf5e4b117d8856144d271516c5f4af6e9ae04800d55c1f1cc2c48db
5
5
  SHA512:
6
- metadata.gz: 886b5c70829c51516e3812c062188a52883541d922ad1bf9c952bb05093aa0b890616b5a6a5b3f4ed24604fd5d4b2551c803922773d826a1fd3a82e7e4583d6f
7
- data.tar.gz: aaa80a02745ecc266300b76f37c6e0874adb2e9e2ca640ca94419f6fa48d23b64bb6eeab915a2dc4a6c2d8d21f6957014ed6c45c92e68bb0d919ddf17f57a8dc
6
+ metadata.gz: e940d9ece6a6ad534a9d3025e3dfe2aa56ef3026f74d7efbdaa84fe9add7d9b62831d68d87a0bf12b7e2ccb5d91ba19eeb6b3822ce23e82b992c15d7d531a166
7
+ data.tar.gz: b488d33656b6ebc149f35f488da4963c34994fe762482a08717ae78f783db9d9354663803b7a9eedc5773afeeb69ed153c54a4efe1f7c66d5b38fb715d15f25b
@@ -167,13 +167,17 @@ module SFRest
167
167
  centralized_role_management
168
168
  codebase
169
169
  collection
170
+ cron
170
171
  domains
172
+ factory_standard_domain
171
173
  group
172
174
  info
173
175
  profile
174
176
  role
175
177
  site
178
+ site_guard
176
179
  site_ownership
180
+ site_update_priority
177
181
  stage
178
182
  task
179
183
  theme
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SFRest
4
+ # Manipulates SF cron jobs.
5
+ class Cron
6
+ # @param [SFRest::Connection] conn
7
+ def initialize(conn)
8
+ @conn = conn
9
+ end
10
+
11
+ # Gets a list of cron jobs
12
+ # @param [Integer] page
13
+ # @param [Integer] items per page
14
+ def get_cron_jobs(page = nil, limit = nil)
15
+ args = {}
16
+ args['page'] = page unless page.nil?
17
+ args['limit'] = limit unless limit.nil?
18
+ url = "/api/v1/cronjobs?#{args.map { |k, v| "#{k}=#{v}" }.join('&')}"
19
+ @conn.get(url)
20
+ end
21
+
22
+ # Gets a cron job by its node id
23
+ # @param [Integer] cron job nid
24
+ def get_cron_job(nid)
25
+ @conn.get("/api/v1/cronjobs/#{nid}")
26
+ end
27
+ end
28
+ 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
@@ -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
data/lib/sfrest/stage.rb CHANGED
@@ -34,6 +34,7 @@ module SFRest
34
34
  # @param [synchronize_all_users] only stage the user accounts required for the related collections and groups
35
35
  # @param [Array] Stacks Array of stack ids to wipe
36
36
  # @param [Boolean] skip_site_files site skip file transfer during staging
37
+ # @param [Array] skip_site_files_overwrite list of files to skip during staging
37
38
  #
38
39
  # @return [Integer] Id of the staging task created.
39
40
  # rubocop:disable Metrics/ParameterLists
@@ -43,7 +44,8 @@ module SFRest
43
44
  wipe_target_environment: false,
44
45
  synchronize_all_users: true,
45
46
  wipe_stacks: [],
46
- skip_site_files: false)
47
+ skip_site_files: false,
48
+ skip_site_files_overwrite: [])
47
49
  raise InvalidApiVersion, staging_versions unless staging_versions.include? 2
48
50
 
49
51
  payload = { 'to_env' => env, 'sites' => sites,
@@ -51,7 +53,8 @@ module SFRest
51
53
  'wipe_target_environment' => wipe_target_environment,
52
54
  'synchronize_all_users' => synchronize_all_users,
53
55
  'wipe_stacks' => wipe_stacks,
54
- 'skip_site_files' => skip_site_files }.to_json
56
+ 'skip_site_files' => skip_site_files,
57
+ 'skip_site_files_overwrite' => skip_site_files_overwrite }.to_json
55
58
  @conn.post('/api/v2/stage', payload)
56
59
  end
57
60
  # rubocop:enable Metrics/ParameterLists
@@ -2,5 +2,5 @@
2
2
 
3
3
  module SFRest
4
4
  # Just tracks the version of sfrest.
5
- VERSION = '0.0.37'
5
+ VERSION = '0.0.40'
6
6
  end
data/lib/sfrest.rb CHANGED
@@ -14,15 +14,19 @@ require 'sfrest/centralized_role_management'
14
14
  require 'sfrest/codebase'
15
15
  require 'sfrest/collection'
16
16
  require 'sfrest/connection'
17
+ require 'sfrest/cron'
17
18
  require 'sfrest/domains'
18
19
  require 'sfrest/error'
20
+ require 'sfrest/factory_standard_domain'
19
21
  require 'sfrest/group'
20
22
  require 'sfrest/info'
21
23
  require 'sfrest/profile'
22
24
  require 'sfrest/pathbuilder'
23
25
  require 'sfrest/role'
24
26
  require 'sfrest/site'
27
+ require 'sfrest/site_guard'
25
28
  require 'sfrest/site_ownership'
29
+ require 'sfrest/site_update_priority'
26
30
  require 'sfrest/stage'
27
31
  require 'sfrest/task'
28
32
  require 'sfrest/theme'
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.37
4
+ version: 0.0.40
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-01-28 00:00:00.000000000 Z
11
+ date: 2022-04-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: excon
@@ -107,15 +107,19 @@ files:
107
107
  - lib/sfrest/codebase.rb
108
108
  - lib/sfrest/collection.rb
109
109
  - lib/sfrest/connection.rb
110
+ - lib/sfrest/cron.rb
110
111
  - lib/sfrest/domains.rb
111
112
  - lib/sfrest/error.rb
113
+ - lib/sfrest/factory_standard_domain.rb
112
114
  - lib/sfrest/group.rb
113
115
  - lib/sfrest/info.rb
114
116
  - lib/sfrest/pathbuilder.rb
115
117
  - lib/sfrest/profile.rb
116
118
  - lib/sfrest/role.rb
117
119
  - lib/sfrest/site.rb
120
+ - lib/sfrest/site_guard.rb
118
121
  - lib/sfrest/site_ownership.rb
122
+ - lib/sfrest/site_update_priority.rb
119
123
  - lib/sfrest/stage.rb
120
124
  - lib/sfrest/task.rb
121
125
  - lib/sfrest/theme.rb