comet_backup_ruby_sdk 2.32.0 → 2.34.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 92912a2a7fd950a339899d612dde32aa19155fca1a05c4432af548a2d7839621
4
- data.tar.gz: 87ad96a333fb2ce7b3277f6a0ffcba0841539f7b30007cc4efb9bc6a1b489394
3
+ metadata.gz: 2a5650246c6d613c814ac6c29ce1e20b08d354731c9a6552f350e86f7540c059
4
+ data.tar.gz: d05bbd26c3e6fa334ae38b799911de26e52486fac77d8fb87b99e02bbcd1f84a
5
5
  SHA512:
6
- metadata.gz: f06373d666c2dbe4546cf00cc72906d80b61367e5f3949feba3fc4820c273b08e654bf35eb0264fe6a470aedc168a455babaf200dc9387cb7a3569d8897e3140
7
- data.tar.gz: 4cd50e220bf77863f05d77ff01647abe2f22a5159e715d93ba2eede3ed7e69fcdb53bcac594534fa5bc0e8b6eef3bd4ce878b8f4764c0c3b87aecf9e08994455
6
+ metadata.gz: de6d656ff7144991407310eff6850bdfa2df887c9f0fe93ed8f52bef4c78c786c24e72d2ac5d966e69fccded36f28b85666cb7de5f08674130a70bf495a55abf
7
+ data.tar.gz: baa8c18ea3bfc5e98445e3ec1e0f0828fb5c76e53f74418f0a73b2e0c9a8ca7b05dd7234c8eb768d69ab17a937237c38d95e82a59d2c765a4087b7d729e29de2
data/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 2024-07-16 v2.34.0
4
+
5
+ - Based on Comet 24.6.4
6
+ - Added Server Device and Booster Limits
7
+ - Added API to count devices registered on a Server
8
+ - Added Software Build Role configuration per tenant
9
+
10
+ ## 2024-06-11 v2.33.0
11
+
12
+ - Based on Comet 24.6.0
13
+ - Added custom HELO/EHLO STMP support
14
+ - Added support to set if disabled Office 365 accounts should be backed up
15
+ - Added EngineType as a property of VaultSnapshots
16
+
3
17
  ## 2024-05-31 v2.32.0
4
18
 
5
19
  - Based on Comet 24.5.0
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- comet_backup_ruby_sdk (2.32.0)
4
+ comet_backup_ruby_sdk (2.34.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -12,7 +12,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
12
12
 
13
13
  Gem::Specification.new do |spec|
14
14
  spec.name = 'comet_backup_ruby_sdk'
15
- spec.version = '2.32.0'
15
+ spec.version = '2.34.0'
16
16
  spec.authors = ['Comet Licensing Ltd.']
17
17
  spec.email = ['hello@cometbackup.com']
18
18
 
@@ -7,13 +7,13 @@
7
7
 
8
8
  module Comet
9
9
 
10
- APPLICATION_VERSION = '24.5.0'
10
+ APPLICATION_VERSION = '24.6.4'
11
11
 
12
12
  APPLICATION_VERSION_MAJOR = 24
13
13
 
14
- APPLICATION_VERSION_MINOR = 5
14
+ APPLICATION_VERSION_MINOR = 6
15
15
 
16
- APPLICATION_VERSION_REVISION = 0
16
+ APPLICATION_VERSION_REVISION = 4
17
17
 
18
18
  # AutoRetentionLevel: The system will automatically choose how often to run an automatic Retention Pass after each backup job.
19
19
  BACKUPJOBAUTORETENTION_AUTOMATIC = 0
@@ -451,7 +451,7 @@ New code should explicitly use OBJECT_LOCK_ON / OBJECT_LOCK_OFF instead.
451
451
  # PSAType
452
452
  PSA_TYPE_SYNCRO = 2
453
453
 
454
- RELEASE_CODENAME = 'Enceladus'
454
+ RELEASE_CODENAME = 'Voyager'
455
455
 
456
456
  # RemoteServerType: Comet Server
457
457
  REMOTESERVER_COMET = 'comet'
@@ -75,6 +75,10 @@ module Comet
75
75
  # @type [Array<String>] allowed_user_policies
76
76
  attr_accessor :allowed_user_policies
77
77
 
78
+ # This field is available in Comet 24.6.1 and later.
79
+ # @type [Boolean] deny_software_build_role
80
+ attr_accessor :deny_software_build_role
81
+
78
82
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
79
83
  attr_accessor :unknown_json_fields
80
84
 
@@ -155,6 +159,8 @@ module Comet
155
159
  @allowed_user_policies[i1] = v1
156
160
  end
157
161
  end
162
+ when 'DenySoftwareBuildRole'
163
+ @deny_software_build_role = v
158
164
  else
159
165
  @unknown_json_fields[k] = v
160
166
  end
@@ -218,6 +224,9 @@ module Comet
218
224
  unless @allowed_user_policies.nil?
219
225
  ret['AllowedUserPolicies'] = @allowed_user_policies
220
226
  end
227
+ unless @deny_software_build_role.nil?
228
+ ret['DenySoftwareBuildRole'] = @deny_software_build_role
229
+ end
221
230
  @unknown_json_fields.each do |k, v|
222
231
  ret[k] = v
223
232
  end
@@ -43,6 +43,11 @@ module Comet
43
43
  # @type [Boolean] smtpallow_unencrypted
44
44
  attr_accessor :smtpallow_unencrypted
45
45
 
46
+ # Override the HELO/EHLO hostname for SMTP or MX Direct modes. If blank, uses system default
47
+ # HELO/EHLO hostname.
48
+ # @type [String] smtpcustom_ehlo
49
+ attr_accessor :smtpcustom_ehlo
50
+
46
51
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
47
52
  attr_accessor :unknown_json_fields
48
53
 
@@ -59,6 +64,7 @@ module Comet
59
64
  @smtpport = 0
60
65
  @smtpusername = ''
61
66
  @smtppassword = ''
67
+ @smtpcustom_ehlo = ''
62
68
  @unknown_json_fields = {}
63
69
  end
64
70
 
@@ -117,6 +123,10 @@ module Comet
117
123
  @smtpallow_invalid_certificate = v
118
124
  when 'SMTPAllowUnencrypted'
119
125
  @smtpallow_unencrypted = v
126
+ when 'SMTPCustomEhlo'
127
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
128
+
129
+ @smtpcustom_ehlo = v
120
130
  else
121
131
  @unknown_json_fields[k] = v
122
132
  end
@@ -150,6 +160,9 @@ module Comet
150
160
  unless @smtpallow_unencrypted.nil?
151
161
  ret['SMTPAllowUnencrypted'] = @smtpallow_unencrypted
152
162
  end
163
+ unless @smtpcustom_ehlo.nil?
164
+ ret['SMTPCustomEhlo'] = @smtpcustom_ehlo
165
+ end
153
166
  @unknown_json_fields.each do |k, v|
154
167
  ret[k] = v
155
168
  end
@@ -0,0 +1,93 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2020-2024 Comet Licensing Ltd.
4
+ # Please see the LICENSE file for usage information.
5
+ #
6
+ # SPDX-License-Identifier: MIT
7
+
8
+ require 'json'
9
+
10
+ module Comet
11
+
12
+ # LicenseLimits is a typed class wrapper around the underlying Comet Server API data structure.
13
+ class LicenseLimits
14
+
15
+ # @type [Number] device_count
16
+ attr_accessor :device_count
17
+
18
+ # @type [Hash{String => Number}] booster_count
19
+ attr_accessor :booster_count
20
+
21
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
22
+ attr_accessor :unknown_json_fields
23
+
24
+ def initialize
25
+ clear
26
+ end
27
+
28
+ def clear
29
+ @device_count = 0
30
+ @booster_count = {}
31
+ @unknown_json_fields = {}
32
+ end
33
+
34
+ # @param [String] json_string The complete object in JSON format
35
+ def from_json(json_string)
36
+ raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
37
+
38
+ from_hash(JSON.parse(json_string))
39
+ end
40
+
41
+ # @param [Hash] obj The complete object as a Ruby hash
42
+ def from_hash(obj)
43
+ raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
44
+
45
+ obj.each do |k, v|
46
+ case k
47
+ when 'deviceCount'
48
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
49
+
50
+ @device_count = v
51
+ when 'boosterCount'
52
+ @booster_count = {}
53
+ if v.nil?
54
+ @booster_count = {}
55
+ else
56
+ v.each do |k1, v1|
57
+ raise TypeError, "'v1' expected Numeric, got #{v1.class}" unless v1.is_a? Numeric
58
+
59
+ @booster_count[k1] = v1
60
+ end
61
+ end
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
+ unless @device_count.nil?
72
+ ret['deviceCount'] = @device_count
73
+ end
74
+ unless @booster_count.nil?
75
+ ret['boosterCount'] = @booster_count
76
+ end
77
+ @unknown_json_fields.each do |k, v|
78
+ ret[k] = v
79
+ end
80
+ ret
81
+ end
82
+
83
+ # @return [Hash] The complete object as a Ruby hash
84
+ def to_h
85
+ to_hash
86
+ end
87
+
88
+ # @return [String] The complete object as a JSON string
89
+ def to_json(options = {})
90
+ to_hash.to_json(options)
91
+ end
92
+ end
93
+ end
@@ -15,6 +15,9 @@ module Comet
15
15
  # @type [String] default_drive_id
16
16
  attr_accessor :default_drive_id
17
17
 
18
+ # @type [Boolean] disabled
19
+ attr_accessor :disabled
20
+
18
21
  # @type [String] display_name
19
22
  attr_accessor :display_name
20
23
 
@@ -99,6 +102,8 @@ module Comet
99
102
  raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
100
103
 
101
104
  @default_drive_id = v
105
+ when 'Disabled'
106
+ @disabled = v
102
107
  when 'DisplayName'
103
108
  raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
104
109
 
@@ -172,6 +177,9 @@ module Comet
172
177
  unless @default_drive_id.nil?
173
178
  ret['DefaultDriveID'] = @default_drive_id
174
179
  end
180
+ unless @disabled.nil?
181
+ ret['Disabled'] = @disabled
182
+ end
175
183
  unless @display_name.nil?
176
184
  ret['DisplayName'] = @display_name
177
185
  end
@@ -62,6 +62,21 @@ module Comet
62
62
  # @type [Number] server_license_feature_set
63
63
  attr_accessor :server_license_feature_set
64
64
 
65
+ # If non-zero, the maximum numbers of devices and Protected Item types that this server is allowed.
66
+ # This field is available in Comet 24.6.3 and later.
67
+ # @type [Comet::LicenseLimits] server_license_limit
68
+ attr_accessor :server_license_limit
69
+
70
+ # A count of the devices registered on the server that have a configured Protected Item.
71
+ # This field is available in Comet 24.6.3 and later.
72
+ # @type [Number] configured_devices
73
+ attr_accessor :configured_devices
74
+
75
+ # The current number of Protected Item types configured on the server.
76
+ # This field is available in Comet 24.6.3 and later.
77
+ # @type [Hash{String => Number}] booster_limit
78
+ attr_accessor :booster_limit
79
+
65
80
  # Unix timestamp, in seconds.
66
81
  # @type [Number] license_valid_until
67
82
  attr_accessor :license_valid_until
@@ -110,6 +125,9 @@ module Comet
110
125
  @current_time = 0
111
126
  @server_license_hash = ''
112
127
  @server_license_feature_set = 0
128
+ @server_license_limit = Comet::LicenseLimits.new
129
+ @configured_devices = 0
130
+ @booster_limit = {}
113
131
  @license_valid_until = 0
114
132
  @emails_sent_successfully = 0
115
133
  @emails_sent_errors = 0
@@ -186,6 +204,24 @@ module Comet
186
204
  raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
187
205
 
188
206
  @server_license_feature_set = v
207
+ when 'ServerLicenseLimit'
208
+ @server_license_limit = Comet::LicenseLimits.new
209
+ @server_license_limit.from_hash(v)
210
+ when 'ConfiguredDevices'
211
+ raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
212
+
213
+ @configured_devices = v
214
+ when 'BoosterLimit'
215
+ @booster_limit = {}
216
+ if v.nil?
217
+ @booster_limit = {}
218
+ else
219
+ v.each do |k1, v1|
220
+ raise TypeError, "'v1' expected Numeric, got #{v1.class}" unless v1.is_a? Numeric
221
+
222
+ @booster_limit[k1] = v1
223
+ end
224
+ end
189
225
  when 'LicenseValidUntil'
190
226
  raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
191
227
 
@@ -255,6 +291,9 @@ module Comet
255
291
  ret['ServerLicenseHash'] = @server_license_hash
256
292
  ret['ServerLicenseFeaturesAll'] = @server_license_features_all
257
293
  ret['ServerLicenseFeatureSet'] = @server_license_feature_set
294
+ ret['ServerLicenseLimit'] = @server_license_limit
295
+ ret['ConfiguredDevices'] = @configured_devices
296
+ ret['BoosterLimit'] = @booster_limit
258
297
  ret['LicenseValidUntil'] = @license_valid_until
259
298
  ret['EmailsSentSuccessfully'] = @emails_sent_successfully
260
299
  ret['EmailsSentErrors'] = @emails_sent_errors
@@ -15,6 +15,10 @@ module Comet
15
15
  # @type [String] snapshot
16
16
  attr_accessor :snapshot
17
17
 
18
+ # This field is available in Comet 24.3.x and later.
19
+ # @type [String] engine_type
20
+ attr_accessor :engine_type
21
+
18
22
  # @type [String] source
19
23
  attr_accessor :source
20
24
 
@@ -34,6 +38,7 @@ module Comet
34
38
 
35
39
  def clear
36
40
  @snapshot = ''
41
+ @engine_type = ''
37
42
  @source = ''
38
43
  @create_time = 0
39
44
  @unknown_json_fields = {}
@@ -56,6 +61,10 @@ module Comet
56
61
  raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
57
62
 
58
63
  @snapshot = v
64
+ when 'EngineType'
65
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
66
+
67
+ @engine_type = v
59
68
  when 'Source'
60
69
  raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
61
70
 
@@ -76,6 +85,7 @@ module Comet
76
85
  def to_hash
77
86
  ret = {}
78
87
  ret['Snapshot'] = @snapshot
88
+ ret['EngineType'] = @engine_type
79
89
  ret['Source'] = @source
80
90
  ret['CreateTime'] = @create_time
81
91
  ret['HasOriginalPathInfo'] = @has_original_path_info
@@ -93,6 +93,7 @@ require_relative 'comet/models/install_creds'
93
93
  require_relative 'comet/models/install_token'
94
94
  require_relative 'comet/models/install_token_response'
95
95
  require_relative 'comet/models/job_entry'
96
+ require_relative 'comet/models/license_limits'
96
97
  require_relative 'comet/models/license_options'
97
98
  require_relative 'comet/models/live_user_connection'
98
99
  require_relative 'comet/models/local_destination_location'
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: 2.32.0
4
+ version: 2.34.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: 2024-05-31 00:00:00.000000000 Z
11
+ date: 2024-07-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -170,6 +170,7 @@ files:
170
170
  - lib/comet/models/install_token.rb
171
171
  - lib/comet/models/install_token_response.rb
172
172
  - lib/comet/models/job_entry.rb
173
+ - lib/comet/models/license_limits.rb
173
174
  - lib/comet/models/license_options.rb
174
175
  - lib/comet/models/live_user_connection.rb
175
176
  - lib/comet/models/local_destination_location.rb