comet_backup_ruby_sdk 1.12.0 → 1.15.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.
@@ -12,6 +12,9 @@ require 'json'
12
12
  module Comet
13
13
 
14
14
  # UpdateCampaignOptions is a typed class wrapper around the underlying Comet Server API data structure.
15
+ # This data structure describes which devices should receive a remote software upgrade. Both the
16
+ # target version criteria (UpgradeOlder/ReinstallCurrentVer/DowngradeNewer) and the target device
17
+ # criteria (ApplyDeviceFilter/DeviceFilter) must be met in order for the remote upgrade to be applied.
15
18
  class UpdateCampaignOptions
16
19
 
17
20
  # @type [Boolean] active
@@ -26,6 +29,15 @@ module Comet
26
29
  # @type [Boolean] downgrade_newer
27
30
  attr_accessor :downgrade_newer
28
31
 
32
+ # @type [Boolean] force_upgrade_running
33
+ attr_accessor :force_upgrade_running
34
+
35
+ # @type [Boolean] apply_device_filter
36
+ attr_accessor :apply_device_filter
37
+
38
+ # @type [Comet::SearchClause] device_filter
39
+ attr_accessor :device_filter
40
+
29
41
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
30
42
  attr_accessor :unknown_json_fields
31
43
 
@@ -34,6 +46,7 @@ module Comet
34
46
  end
35
47
 
36
48
  def clear
49
+ @device_filter = Comet::SearchClause.new
37
50
  @unknown_json_fields = {}
38
51
  end
39
52
 
@@ -58,6 +71,13 @@ module Comet
58
71
  @reinstall_current_ver = v
59
72
  when 'DowngradeNewer'
60
73
  @downgrade_newer = v
74
+ when 'ForceUpgradeRunning'
75
+ @force_upgrade_running = v
76
+ when 'ApplyDeviceFilter'
77
+ @apply_device_filter = v
78
+ when 'DeviceFilter'
79
+ @device_filter = Comet::SearchClause.new
80
+ @device_filter.from_hash(v)
61
81
  else
62
82
  @unknown_json_fields[k] = v
63
83
  end
@@ -71,6 +91,9 @@ module Comet
71
91
  ret['UpgradeOlder'] = @upgrade_older
72
92
  ret['ReinstallCurrentVer'] = @reinstall_current_ver
73
93
  ret['DowngradeNewer'] = @downgrade_newer
94
+ ret['ForceUpgradeRunning'] = @force_upgrade_running
95
+ ret['ApplyDeviceFilter'] = @apply_device_filter
96
+ ret['DeviceFilter'] = @device_filter
74
97
  @unknown_json_fields.each do |k, v|
75
98
  ret[k] = v
76
99
  end
@@ -26,6 +26,15 @@ module Comet
26
26
  # @type [Boolean] downgrade_newer
27
27
  attr_accessor :downgrade_newer
28
28
 
29
+ # @type [Boolean] force_upgrade_running
30
+ attr_accessor :force_upgrade_running
31
+
32
+ # @type [Boolean] apply_device_filter
33
+ attr_accessor :apply_device_filter
34
+
35
+ # @type [Comet::SearchClause] device_filter
36
+ attr_accessor :device_filter
37
+
29
38
  # @type [Number] start_time
30
39
  attr_accessor :start_time
31
40
 
@@ -40,6 +49,7 @@ module Comet
40
49
  end
41
50
 
42
51
  def clear
52
+ @device_filter = Comet::SearchClause.new
43
53
  @start_time = 0
44
54
  @target_version = ''
45
55
  @unknown_json_fields = {}
@@ -66,6 +76,13 @@ module Comet
66
76
  @reinstall_current_ver = v
67
77
  when 'DowngradeNewer'
68
78
  @downgrade_newer = v
79
+ when 'ForceUpgradeRunning'
80
+ @force_upgrade_running = v
81
+ when 'ApplyDeviceFilter'
82
+ @apply_device_filter = v
83
+ when 'DeviceFilter'
84
+ @device_filter = Comet::SearchClause.new
85
+ @device_filter.from_hash(v)
69
86
  when 'StartTime'
70
87
  raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
71
88
 
@@ -87,6 +104,9 @@ module Comet
87
104
  ret['UpgradeOlder'] = @upgrade_older
88
105
  ret['ReinstallCurrentVer'] = @reinstall_current_ver
89
106
  ret['DowngradeNewer'] = @downgrade_newer
107
+ ret['ForceUpgradeRunning'] = @force_upgrade_running
108
+ ret['ApplyDeviceFilter'] = @apply_device_filter
109
+ ret['DeviceFilter'] = @device_filter
90
110
  ret['StartTime'] = @start_time
91
111
  ret['TargetVersion'] = @target_version
92
112
  @unknown_json_fields.each do |k, v|
@@ -26,6 +26,15 @@ module Comet
26
26
  # @type [Boolean] downgrade_newer
27
27
  attr_accessor :downgrade_newer
28
28
 
29
+ # @type [Boolean] force_upgrade_running
30
+ attr_accessor :force_upgrade_running
31
+
32
+ # @type [Boolean] apply_device_filter
33
+ attr_accessor :apply_device_filter
34
+
35
+ # @type [Comet::SearchClause] device_filter
36
+ attr_accessor :device_filter
37
+
29
38
  # @type [Number] start_time
30
39
  attr_accessor :start_time
31
40
 
@@ -43,6 +52,7 @@ module Comet
43
52
  end
44
53
 
45
54
  def clear
55
+ @device_filter = Comet::SearchClause.new
46
56
  @start_time = 0
47
57
  @target_version = ''
48
58
  @devices = []
@@ -70,6 +80,13 @@ module Comet
70
80
  @reinstall_current_ver = v
71
81
  when 'DowngradeNewer'
72
82
  @downgrade_newer = v
83
+ when 'ForceUpgradeRunning'
84
+ @force_upgrade_running = v
85
+ when 'ApplyDeviceFilter'
86
+ @apply_device_filter = v
87
+ when 'DeviceFilter'
88
+ @device_filter = Comet::SearchClause.new
89
+ @device_filter.from_hash(v)
73
90
  when 'StartTime'
74
91
  raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
75
92
 
@@ -101,6 +118,9 @@ module Comet
101
118
  ret['UpgradeOlder'] = @upgrade_older
102
119
  ret['ReinstallCurrentVer'] = @reinstall_current_ver
103
120
  ret['DowngradeNewer'] = @downgrade_newer
121
+ ret['ForceUpgradeRunning'] = @force_upgrade_running
122
+ ret['ApplyDeviceFilter'] = @apply_device_filter
123
+ ret['DeviceFilter'] = @device_filter
104
124
  ret['StartTime'] = @start_time
105
125
  ret['TargetVersion'] = @target_version
106
126
  ret['Devices'] = @devices
@@ -12,6 +12,7 @@ require 'json'
12
12
  module Comet
13
13
 
14
14
  # UserProfileConfig is a typed class wrapper around the underlying Comet Server API data structure.
15
+ # This is the main data structure for a user's profile.
15
16
  class UserProfileConfig
16
17
 
17
18
  # @type [String] username
@@ -26,6 +27,7 @@ module Comet
26
27
  # @type [String] language_code
27
28
  attr_accessor :language_code
28
29
 
30
+ # Tenant
29
31
  # @type [String] organization_id
30
32
  attr_accessor :organization_id
31
33
 
@@ -38,9 +40,11 @@ module Comet
38
40
  # @type [Boolean] send_email_reports
39
41
  attr_accessor :send_email_reports
40
42
 
43
+ # Storage Vaults
41
44
  # @type [Hash{String => Comet::DestinationConfig}] destinations
42
45
  attr_accessor :destinations
43
46
 
47
+ # Protected Items
44
48
  # @type [Hash{String => Comet::SourceConfig}] sources
45
49
  attr_accessor :sources
46
50
 
@@ -62,12 +66,17 @@ module Comet
62
66
  # @type [Number] maximum_devices
63
67
  attr_accessor :maximum_devices
64
68
 
69
+ # If the PolicyID field is set to a non-empty string, the Comet Server will enforce the contents of
70
+ # the Policy field based on the matching server's policy. Otherwise if the PolicyID field is set to an
71
+ # empty string, the administrator may configure any custom values in the Policy field.
65
72
  # @type [String] policy_id
66
73
  attr_accessor :policy_id
67
74
 
68
75
  # @type [Comet::UserPolicy] policy
69
76
  attr_accessor :policy
70
77
 
78
+ # To change the user's password, use the AdminResetUserPassword API instead of accessing these fields
79
+ # directly. Otherwise, other encrypted fields in the user profile may become corrupted.
71
80
  # @type [Number] password_format
72
81
  attr_accessor :password_format
73
82
 
@@ -0,0 +1,90 @@
1
+ #!/usr/bin/env ruby --enable-frozen-string-literal
2
+ #
3
+ # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
+ # Please see the LICENSE file for usage information.
5
+ #
6
+ # SPDX-License-Identifier: MIT
7
+ #
8
+ # frozen_string_literal: true
9
+
10
+ require 'json'
11
+
12
+ module Comet
13
+
14
+ # VMDKSnapshotViewOptions is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class VMDKSnapshotViewOptions
16
+
17
+ # @type [Boolean] enabled
18
+ attr_accessor :enabled
19
+
20
+ # @type [String] partition_guid
21
+ attr_accessor :partition_guid
22
+
23
+ # @type [String] list_path
24
+ attr_accessor :list_path
25
+
26
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
27
+ attr_accessor :unknown_json_fields
28
+
29
+ def initialize
30
+ clear
31
+ end
32
+
33
+ def clear
34
+ @partition_guid = ''
35
+ @list_path = ''
36
+ @unknown_json_fields = {}
37
+ end
38
+
39
+ # @param [String] json_string The complete object in JSON format
40
+ def from_json(json_string)
41
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
42
+
43
+ from_hash(JSON.parse(json_string))
44
+ end
45
+
46
+ # @param [Hash] obj The complete object as a Ruby hash
47
+ def from_hash(obj)
48
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
49
+
50
+ obj.each do |k, v|
51
+ case k
52
+ when 'Enabled'
53
+ @enabled = v
54
+ when 'PartitionGUID'
55
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
56
+
57
+ @partition_guid = v
58
+ when 'ListPath'
59
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
60
+
61
+ @list_path = v
62
+ else
63
+ @unknown_json_fields[k] = v
64
+ end
65
+ end
66
+ end
67
+
68
+ # @return [Hash] The complete object as a Ruby hash
69
+ def to_hash
70
+ ret = {}
71
+ ret['Enabled'] = @enabled
72
+ ret['PartitionGUID'] = @partition_guid
73
+ ret['ListPath'] = @list_path
74
+ @unknown_json_fields.each do |k, v|
75
+ ret[k] = v
76
+ end
77
+ ret
78
+ end
79
+
80
+ # @return [Hash] The complete object as a Ruby hash
81
+ def to_h
82
+ to_hash
83
+ end
84
+
85
+ # @return [String] The complete object as a JSON string
86
+ def to_json(options = {})
87
+ to_hash.to_json(options)
88
+ end
89
+ end
90
+ end
@@ -50,6 +50,7 @@ require_relative 'comet/models/content_measurement'
50
50
  require_relative 'comet/models/content_measurement_component'
51
51
  require_relative 'comet/models/create_group_policy_response'
52
52
  require_relative 'comet/models/custom_remote_bucket_settings'
53
+ require_relative 'comet/models/days_of_week_config'
53
54
  require_relative 'comet/models/default_email_report_policy'
54
55
  require_relative 'comet/models/default_source_with_osrestriction'
55
56
  require_relative 'comet/models/destination_config'
@@ -72,6 +73,7 @@ require_relative 'comet/models/get_group_policy_response'
72
73
  require_relative 'comet/models/get_profile_and_hash_response_message'
73
74
  require_relative 'comet/models/get_profile_hash_response_message'
74
75
  require_relative 'comet/models/group_policy'
76
+ require_relative 'comet/models/hour_sched_config'
75
77
  require_relative 'comet/models/hyper_vmachine_info'
76
78
  require_relative 'comet/models/install_creds'
77
79
  require_relative 'comet/models/install_token'
@@ -152,6 +154,7 @@ require_relative 'comet/models/user_policy'
152
154
  require_relative 'comet/models/user_profile_config'
153
155
  require_relative 'comet/models/user_profile_fragment'
154
156
  require_relative 'comet/models/vault_snapshot'
157
+ require_relative 'comet/models/vmdksnapshot_view_options'
155
158
  require_relative 'comet/models/vsscomponent'
156
159
  require_relative 'comet/models/vsswriter_info'
157
160
  require_relative 'comet/models/wasabi_virtual_storage_role_settings'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: comet_backup_ruby_sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.12.0
4
+ version: 1.15.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Comet Licensing Ltd.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-28 00:00:00.000000000 Z
11
+ date: 2022-06-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -95,6 +95,7 @@ files:
95
95
  - lib/comet/models/admin_user_permissions.rb
96
96
  - lib/comet/models/admin_web_authn_registration.rb
97
97
  - lib/comet/models/allowed_admin_user.rb
98
+ - lib/comet/models/amazon_awsvirtual_storage_role_settings.rb
98
99
  - lib/comet/models/available_download.rb
99
100
  - lib/comet/models/azure_destination_location.rb
100
101
  - lib/comet/models/b2destination_location.rb
@@ -126,6 +127,7 @@ files:
126
127
  - lib/comet/models/content_measurement_component.rb
127
128
  - lib/comet/models/create_group_policy_response.rb
128
129
  - lib/comet/models/custom_remote_bucket_settings.rb
130
+ - lib/comet/models/days_of_week_config.rb
129
131
  - lib/comet/models/default_email_report_policy.rb
130
132
  - lib/comet/models/default_source_with_osrestriction.rb
131
133
  - lib/comet/models/destination_config.rb
@@ -148,6 +150,7 @@ files:
148
150
  - lib/comet/models/get_profile_and_hash_response_message.rb
149
151
  - lib/comet/models/get_profile_hash_response_message.rb
150
152
  - lib/comet/models/group_policy.rb
153
+ - lib/comet/models/hour_sched_config.rb
151
154
  - lib/comet/models/hyper_vmachine_info.rb
152
155
  - lib/comet/models/install_creds.rb
153
156
  - lib/comet/models/install_token.rb
@@ -184,6 +187,7 @@ files:
184
187
  - lib/comet/models/retention_policy.rb
185
188
  - lib/comet/models/retention_range.rb
186
189
  - lib/comet/models/s3destination_location.rb
190
+ - lib/comet/models/s3generic_virtual_storage_role.rb
187
191
  - lib/comet/models/schedule_config.rb
188
192
  - lib/comet/models/search_clause.rb
189
193
  - lib/comet/models/self_backup_statistics.rb
@@ -228,6 +232,7 @@ files:
228
232
  - lib/comet/models/user_profile_config.rb
229
233
  - lib/comet/models/user_profile_fragment.rb
230
234
  - lib/comet/models/vault_snapshot.rb
235
+ - lib/comet/models/vmdksnapshot_view_options.rb
231
236
  - lib/comet/models/vsscomponent.rb
232
237
  - lib/comet/models/vsswriter_info.rb
233
238
  - lib/comet/models/wasabi_virtual_storage_role_settings.rb