comet_backup_ruby_sdk 2.36.0 → 2.37.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 +4 -4
- data/CHANGELOG.md +9 -0
- data/Gemfile.lock +1 -1
- data/comet_backup_ruby_sdk.gemspec +1 -1
- data/lib/comet/comet_server.rb +27 -0
- data/lib/comet/definitions.rb +5 -2
- data/lib/comet/models/backup_job_detail.rb +14 -0
- data/lib/comet/models/backup_job_progress.rb +9 -0
- data/lib/comet/models/disk_drive.rb +24 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1c01a7f3572cedb42436655e3c78edad5a23839bf1a761e7f05cb498d0af549b
|
4
|
+
data.tar.gz: c878557323cd9c3c7af6079b1c926af9f50612bbdc3d3d1993db474c7b0325be
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ea48fbee3a53dde34f0093288a1ad9d0fef767baef9bf40b8133d26a2c4e738529e7276da17acb1c66c27ac997a292f97ecb717d2e37626dd18d5d1afb2883b3
|
7
|
+
data.tar.gz: 9d2527444570ecaf3b04c1b289def0d50f687930c77166cfed0df8e2b2e935a671529cfdbd10173aeea5496821dfd8c442f034c2c55a33e43b0fc936f053f182
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,14 @@
|
|
1
1
|
# CHANGELOG
|
2
2
|
|
3
|
+
## 2024-10-29 v2.37.0
|
4
|
+
|
5
|
+
- Based on Comet 24.9.6
|
6
|
+
- New API AdminDispatcherTestSmbAuth to instruct a device to test Windows SMB credentials
|
7
|
+
- New RESTORETYPE_WINDISK_VHDX to restore Disk Image backup as Hyper-V VHDX format
|
8
|
+
- BackupJobDetail supports ConflictingJobID field to indicate conflicting job if a lock error occurred
|
9
|
+
- BackupJobProgress can report the total number of items for progress visualization
|
10
|
+
- DiskDrive adds information about parent disks on Linux
|
11
|
+
|
3
12
|
## 2024-09-17 v2.36.0
|
4
13
|
|
5
14
|
- Based on Comet 24.9.1
|
data/Gemfile.lock
CHANGED
@@ -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.
|
15
|
+
spec.version = '2.37.0'
|
16
16
|
spec.authors = ['Comet Licensing Ltd.']
|
17
17
|
spec.email = ['hello@cometbackup.com']
|
18
18
|
|
data/lib/comet/comet_server.rb
CHANGED
@@ -2169,6 +2169,33 @@ module Comet
|
|
2169
2169
|
ret
|
2170
2170
|
end
|
2171
2171
|
|
2172
|
+
# AdminDispatcherTestSmbAuth
|
2173
|
+
#
|
2174
|
+
# Test a set of Windows SMB credentials.
|
2175
|
+
#
|
2176
|
+
# You must supply administrator authentication credentials to use this API.
|
2177
|
+
# This API requires the Auth Role to be enabled.
|
2178
|
+
#
|
2179
|
+
# @param [String] target_id The live connection GUID
|
2180
|
+
# @param [Comet::WinSMBAuth] wsa The target credentials to test
|
2181
|
+
# @return [Comet::CometAPIResponseMessage]
|
2182
|
+
def admin_dispatcher_test_smb_auth(target_id, wsa)
|
2183
|
+
submit_params = {}
|
2184
|
+
raise TypeError, "'target_id' expected String, got #{target_id.class}" unless target_id.is_a? String
|
2185
|
+
|
2186
|
+
submit_params['TargetID'] = target_id
|
2187
|
+
raise TypeError, "'wsa' expected Comet::WinSMBAuth, got #{wsa.class}" unless wsa.is_a? Comet::WinSMBAuth
|
2188
|
+
|
2189
|
+
submit_params['Wsa'] = wsa.to_json
|
2190
|
+
|
2191
|
+
body = perform_request('api/v1/admin/dispatcher/test-smb-auth', submit_params)
|
2192
|
+
json_body = JSON.parse body
|
2193
|
+
check_status json_body
|
2194
|
+
ret = Comet::CometAPIResponseMessage.new
|
2195
|
+
ret.from_hash(json_body)
|
2196
|
+
ret
|
2197
|
+
end
|
2198
|
+
|
2172
2199
|
# AdminDispatcherUninstallSoftware
|
2173
2200
|
#
|
2174
2201
|
# Instruct a live connected device to self-uninstall the software.
|
data/lib/comet/definitions.rb
CHANGED
@@ -7,13 +7,13 @@
|
|
7
7
|
|
8
8
|
module Comet
|
9
9
|
|
10
|
-
APPLICATION_VERSION = '24.9.
|
10
|
+
APPLICATION_VERSION = '24.9.6'
|
11
11
|
|
12
12
|
APPLICATION_VERSION_MAJOR = 24
|
13
13
|
|
14
14
|
APPLICATION_VERSION_MINOR = 9
|
15
15
|
|
16
|
-
APPLICATION_VERSION_REVISION =
|
16
|
+
APPLICATION_VERSION_REVISION = 6
|
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
|
@@ -585,6 +585,9 @@ New code should explicitly use OBJECT_LOCK_ON / OBJECT_LOCK_OFF instead.
|
|
585
585
|
# RestoreType: Restore disk image backup as VMware-compatible virtual disks
|
586
586
|
RESTORETYPE_WINDISK_ESXI = 12
|
587
587
|
|
588
|
+
# RestoreType: Restore disk image backup as Hyper-V-compatible virtual disks (.vhdx format)
|
589
|
+
RESTORETYPE_WINDISK_VHDX = 13
|
590
|
+
|
588
591
|
# RestoreType: Legacy name alias - Prefer to use RESTORETYPE_PROCESS_ARCHIVE since multiple archive file formats are supported within this single RESTORETYPE_
|
589
592
|
RESTORETYPE_PROCESS_TARBALL = 3
|
590
593
|
|
@@ -99,6 +99,12 @@ module Comet
|
|
99
99
|
# @type [Number] total_unlicensed_mails_count
|
100
100
|
attr_accessor :total_unlicensed_mails_count
|
101
101
|
|
102
|
+
# If this field is present, this job did not perform some work because the Storage Vault is
|
103
|
+
# currently busy.
|
104
|
+
# This field is available in Comet 24.9.2 and later.
|
105
|
+
# @type [String] conflicting_job_id
|
106
|
+
attr_accessor :conflicting_job_id
|
107
|
+
|
102
108
|
# If this field is present, it is possible to request cancellation of this job via the API.
|
103
109
|
# @type [String] cancellation_id
|
104
110
|
attr_accessor :cancellation_id
|
@@ -149,6 +155,7 @@ module Comet
|
|
149
155
|
@total_accounts_count = 0
|
150
156
|
@total_licensed_mails_count = 0
|
151
157
|
@total_unlicensed_mails_count = 0
|
158
|
+
@conflicting_job_id = ''
|
152
159
|
@cancellation_id = ''
|
153
160
|
@progress = Comet::BackupJobProgress.new
|
154
161
|
@destination_size_start = Comet::SizeMeasurement.new
|
@@ -269,6 +276,10 @@ module Comet
|
|
269
276
|
raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
|
270
277
|
|
271
278
|
@total_unlicensed_mails_count = v
|
279
|
+
when 'ConflictingJobID'
|
280
|
+
raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
|
281
|
+
|
282
|
+
@conflicting_job_id = v
|
272
283
|
when 'CancellationID'
|
273
284
|
raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
|
274
285
|
|
@@ -332,6 +343,9 @@ module Comet
|
|
332
343
|
unless @total_unlicensed_mails_count.nil?
|
333
344
|
ret['TotalUnlicensedMailsCount'] = @total_unlicensed_mails_count
|
334
345
|
end
|
346
|
+
unless @conflicting_job_id.nil?
|
347
|
+
ret['ConflictingJobID'] = @conflicting_job_id
|
348
|
+
end
|
335
349
|
unless @cancellation_id.nil?
|
336
350
|
ret['CancellationID'] = @cancellation_id
|
337
351
|
end
|
@@ -31,6 +31,9 @@ module Comet
|
|
31
31
|
# @type [Number] items_done
|
32
32
|
attr_accessor :items_done
|
33
33
|
|
34
|
+
# @type [Number] items_total
|
35
|
+
attr_accessor :items_total
|
36
|
+
|
34
37
|
# @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
|
35
38
|
attr_accessor :unknown_json_fields
|
36
39
|
|
@@ -44,6 +47,7 @@ module Comet
|
|
44
47
|
@recieved_time = 0
|
45
48
|
@bytes_done = 0
|
46
49
|
@items_done = 0
|
50
|
+
@items_total = 0
|
47
51
|
@unknown_json_fields = {}
|
48
52
|
end
|
49
53
|
|
@@ -80,6 +84,10 @@ module Comet
|
|
80
84
|
raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
|
81
85
|
|
82
86
|
@items_done = v
|
87
|
+
when 'ItemsTotal'
|
88
|
+
raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
|
89
|
+
|
90
|
+
@items_total = v
|
83
91
|
else
|
84
92
|
@unknown_json_fields[k] = v
|
85
93
|
end
|
@@ -94,6 +102,7 @@ module Comet
|
|
94
102
|
ret['RecievedTime'] = @recieved_time
|
95
103
|
ret['BytesDone'] = @bytes_done
|
96
104
|
ret['ItemsDone'] = @items_done
|
105
|
+
ret['ItemsTotal'] = @items_total
|
97
106
|
@unknown_json_fields.each do |k, v|
|
98
107
|
ret[k] = v
|
99
108
|
end
|
@@ -27,22 +27,33 @@ module Comet
|
|
27
27
|
# @type [String] serial_number
|
28
28
|
attr_accessor :serial_number
|
29
29
|
|
30
|
+
# Bytes
|
30
31
|
# @type [Number] size
|
31
32
|
attr_accessor :size
|
32
33
|
|
33
34
|
# @type [Array<Comet::Partition>] partitions
|
34
35
|
attr_accessor :partitions
|
35
36
|
|
37
|
+
# For physical disks, this array will be empty. For virtual disks, RAID devices or Linux DM devices,
|
38
|
+
# this array may contain the DeviceName of the parent device.
|
39
|
+
# This field is available in Comet 24.6.x and later.
|
40
|
+
# @type [Array<String>] device_parents
|
41
|
+
attr_accessor :device_parents
|
42
|
+
|
43
|
+
# See WINDISKFLAG_ constants
|
36
44
|
# @type [Number] flags
|
37
45
|
attr_accessor :flags
|
38
46
|
|
39
47
|
# @type [Number] cylinders
|
48
|
+
# @deprecated This member has been deprecated since Comet version 24.6.x This value is reported from the disk driver if available. Otherwise emulates a value based on modern LBA addressing. The field value is not used.
|
40
49
|
attr_accessor :cylinders
|
41
50
|
|
42
51
|
# @type [Number] heads
|
52
|
+
# @deprecated This member has been deprecated since Comet version 24.6.x This value is reported from the disk driver if available. Otherwise emulates a value based on modern LBA addressing. The field value is not used.
|
43
53
|
attr_accessor :heads
|
44
54
|
|
45
55
|
# @type [Number] sectors
|
56
|
+
# @deprecated This member has been deprecated since Comet version 24.6.x This value is reported from the disk driver if available. Otherwise emulates a value based on modern LBA addressing. The field value is not used.
|
46
57
|
attr_accessor :sectors
|
47
58
|
|
48
59
|
# @type [Number] sector_size
|
@@ -63,6 +74,7 @@ module Comet
|
|
63
74
|
@serial_number = ''
|
64
75
|
@size = 0
|
65
76
|
@partitions = []
|
77
|
+
@device_parents = []
|
66
78
|
@flags = 0
|
67
79
|
@cylinders = 0
|
68
80
|
@heads = 0
|
@@ -118,6 +130,17 @@ module Comet
|
|
118
130
|
@partitions[i1].from_hash(v1)
|
119
131
|
end
|
120
132
|
end
|
133
|
+
when 'DeviceParents'
|
134
|
+
if v.nil?
|
135
|
+
@device_parents = []
|
136
|
+
else
|
137
|
+
@device_parents = Array.new(v.length)
|
138
|
+
v.each_with_index do |v1, i1|
|
139
|
+
raise TypeError, "'v1' expected String, got #{v1.class}" unless v1.is_a? String
|
140
|
+
|
141
|
+
@device_parents[i1] = v1
|
142
|
+
end
|
143
|
+
end
|
121
144
|
when 'Flags'
|
122
145
|
raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
|
123
146
|
|
@@ -154,6 +177,7 @@ module Comet
|
|
154
177
|
ret['SerialNumber'] = @serial_number
|
155
178
|
ret['Size'] = @size
|
156
179
|
ret['Partitions'] = @partitions
|
180
|
+
ret['DeviceParents'] = @device_parents
|
157
181
|
ret['Flags'] = @flags
|
158
182
|
ret['Cylinders'] = @cylinders
|
159
183
|
ret['Heads'] = @heads
|
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.
|
4
|
+
version: 2.37.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-
|
11
|
+
date: 2024-10-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|