comet_backup_ruby_sdk 2.32.0 → 2.34.0

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: 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