comet_backup_ruby_sdk 2.8.0 → 2.10.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 +20 -0
- data/Gemfile.lock +1 -1
- data/comet_backup_ruby_sdk.gemspec +1 -1
- data/lib/comet/comet_server.rb +19 -1
- data/lib/comet/definitions.rb +193 -44
- data/lib/comet/models/admin_account_properties_response.rb +1 -0
- data/lib/comet/models/admin_security_options.rb +4 -0
- data/lib/comet/models/admin_u2fregistration.rb +2 -0
- data/lib/comet/models/admin_user_permissions.rb +73 -0
- data/lib/comet/models/admin_web_authn_registration.rb +2 -0
- data/lib/comet/models/allowed_admin_user.rb +4 -0
- data/lib/comet/models/authentication_role_options.rb +2 -0
- data/lib/comet/models/azure_destination_location.rb +2 -0
- data/lib/comet/models/b2destination_location.rb +2 -0
- data/lib/comet/models/backup_job_advanced_options.rb +3 -0
- data/lib/comet/models/backup_job_detail.rb +1 -0
- data/lib/comet/models/backup_job_progress.rb +4 -1
- data/lib/comet/models/backup_rule_config.rb +4 -0
- data/lib/comet/models/branding_options.rb +7 -0
- data/lib/comet/models/branding_properties.rb +5 -0
- data/lib/comet/models/bucket_properties.rb +2 -0
- data/lib/comet/models/comet_destination_location.rb +1 -0
- data/lib/comet/models/constellation_check_report.rb +2 -0
- data/lib/comet/models/constellation_stats.rb +5 -0
- data/lib/comet/models/content_measurement.rb +2 -0
- data/lib/comet/models/content_measurement_component.rb +12 -0
- data/lib/comet/models/default_email_report_policy.rb +4 -0
- data/lib/comet/models/destination_config.rb +35 -1
- data/lib/comet/models/destination_location.rb +33 -1
- data/lib/comet/models/destination_statistics.rb +2 -0
- data/lib/comet/models/device_config.rb +13 -0
- data/lib/comet/models/email_reporting_option.rb +2 -0
- data/lib/comet/models/external_ldapauthentication_source_server.rb +1 -0
- data/lib/comet/models/external_ldapauthentication_source_settings.rb +1 -0
- data/lib/comet/models/file_option.rb +132 -0
- data/lib/comet/models/ftpdestination_location.rb +5 -1
- data/lib/comet/models/install_token.rb +5 -0
- data/lib/comet/models/local_destination_location.rb +5 -0
- data/lib/comet/models/mac_oscode_sign_properties.rb +7 -0
- data/lib/comet/models/mssqlconnection.rb +3 -0
- data/lib/comet/models/mssqllogin_args.rb +2 -0
- data/lib/comet/models/my_sqlconnection.rb +2 -0
- data/lib/comet/models/news_entry.rb +1 -0
- data/lib/comet/models/office_365custom_setting.rb +3 -0
- data/lib/comet/models/office_365custom_setting_v2.rb +9 -0
- data/lib/comet/models/organization.rb +85 -70
- data/lib/comet/models/osinfo.rb +30 -0
- data/lib/comet/models/partition.rb +5 -0
- data/lib/comet/models/private_branding_properties.rb +5 -0
- data/lib/comet/models/psaconfig.rb +4 -0
- data/lib/comet/models/restore_job_advanced_options.rb +17 -0
- data/lib/comet/models/retention_range.rb +8 -0
- data/lib/comet/models/search_clause.rb +16 -0
- data/lib/comet/models/search_result_file_info.rb +39 -17
- data/lib/comet/models/self_backup_export_options.rb +4 -0
- data/lib/comet/models/self_backup_target.rb +5 -0
- data/lib/comet/models/server_config_options.rb +24 -0
- data/lib/comet/models/server_meta_branding_properties.rb +2 -0
- data/lib/comet/models/server_meta_version_info.rb +2 -0
- data/lib/comet/models/session_key_regenerated_response.rb +2 -0
- data/lib/comet/models/session_options.rb +2 -0
- data/lib/comet/models/sftpdestination_location.rb +7 -0
- data/lib/comet/models/single_field_source.rb +1 -0
- data/lib/comet/models/size_measurement.rb +3 -0
- data/lib/comet/models/software_update_news_response.rb +4 -0
- data/lib/comet/models/source_basic_info.rb +3 -0
- data/lib/comet/models/source_config.rb +26 -4
- data/lib/comet/models/source_include_pattern.rb +5 -0
- data/lib/comet/models/spanned_destination_location.rb +11 -0
- data/lib/comet/models/sshconnection.rb +6 -0
- data/lib/comet/models/storage_role_options.rb +1 -0
- data/lib/comet/models/stored_object.rb +7 -0
- data/lib/comet/models/streamable_event.rb +42 -0
- data/lib/comet/models/totp_regenerated_response.rb +3 -0
- data/lib/comet/models/update_campaign_device_status.rb +1 -0
- data/lib/comet/models/update_campaign_properties.rb +1 -0
- data/lib/comet/models/update_campaign_status.rb +1 -0
- data/lib/comet/models/update_campaign_status_device_entry.rb +1 -0
- data/lib/comet/models/user_profile_config.rb +9 -0
- data/lib/comet/models/user_profile_fragment.rb +1 -0
- data/lib/comet/models/vault_snapshot.rb +1 -0
- data/lib/comet/models/vsscomponent.rb +1 -0
- data/lib/comet/models/web_authn_credential.rb +2 -0
- data/lib/comet/models/web_authn_credential_descriptor.rb +1 -0
- data/lib/comet/models/web_authn_public_key_credential_creation_options.rb +1 -0
- data/lib/comet/models/web_authn_public_key_credential_request_options.rb +1 -0
- data/lib/comet/models/web_authn_user_entity.rb +1 -0
- data/lib/comet/models/web_interface_branding_properties.rb +2 -0
- data/lib/comet/models/webhook_option.rb +35 -16
- data/lib/comet/models/windows_code_sign_properties.rb +4 -0
- data/lib/comet_backup_ruby_sdk.rb +1 -0
- metadata +3 -2
data/lib/comet/models/osinfo.rb
CHANGED
|
@@ -10,17 +10,31 @@ require 'json'
|
|
|
10
10
|
module Comet
|
|
11
11
|
|
|
12
12
|
# OSInfo is a typed class wrapper around the underlying Comet Server API data structure.
|
|
13
|
+
# OSInfo represents the common set of version information between all operating systems
|
|
13
14
|
class OSInfo
|
|
14
15
|
|
|
16
|
+
# The primary version number (e.g. on Windows: 1703 / 2009, on Linux: 20.04 / 22.04)
|
|
15
17
|
# @type [String] version
|
|
16
18
|
attr_accessor :version
|
|
17
19
|
|
|
20
|
+
# The primary presentation name (e.g. "Windows 10 Pro", "debian", "Synology DSM")
|
|
18
21
|
# @type [String] distribution
|
|
19
22
|
attr_accessor :distribution
|
|
20
23
|
|
|
24
|
+
# The detailed build number (e.g. 19043)
|
|
21
25
|
# @type [String] build
|
|
22
26
|
attr_accessor :build
|
|
23
27
|
|
|
28
|
+
# The GOOS value
|
|
29
|
+
# This field is available in Comet 23.6.0 and later.
|
|
30
|
+
# @type [String] os
|
|
31
|
+
attr_accessor :os
|
|
32
|
+
|
|
33
|
+
# The GOARCH value
|
|
34
|
+
# This field is available in Comet 23.6.0 and later.
|
|
35
|
+
# @type [String] arch
|
|
36
|
+
attr_accessor :arch
|
|
37
|
+
|
|
24
38
|
# @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
|
|
25
39
|
attr_accessor :unknown_json_fields
|
|
26
40
|
|
|
@@ -32,6 +46,8 @@ module Comet
|
|
|
32
46
|
@version = ''
|
|
33
47
|
@distribution = ''
|
|
34
48
|
@build = ''
|
|
49
|
+
@os = ''
|
|
50
|
+
@arch = ''
|
|
35
51
|
@unknown_json_fields = {}
|
|
36
52
|
end
|
|
37
53
|
|
|
@@ -60,6 +76,14 @@ module Comet
|
|
|
60
76
|
raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
|
|
61
77
|
|
|
62
78
|
@build = v
|
|
79
|
+
when 'os'
|
|
80
|
+
raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
|
|
81
|
+
|
|
82
|
+
@os = v
|
|
83
|
+
when 'arch'
|
|
84
|
+
raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
|
|
85
|
+
|
|
86
|
+
@arch = v
|
|
63
87
|
else
|
|
64
88
|
@unknown_json_fields[k] = v
|
|
65
89
|
end
|
|
@@ -78,6 +102,12 @@ module Comet
|
|
|
78
102
|
unless @build.nil?
|
|
79
103
|
ret['build'] = @build
|
|
80
104
|
end
|
|
105
|
+
unless @os.nil?
|
|
106
|
+
ret['os'] = @os
|
|
107
|
+
end
|
|
108
|
+
unless @arch.nil?
|
|
109
|
+
ret['arch'] = @arch
|
|
110
|
+
end
|
|
81
111
|
@unknown_json_fields.each do |k, v|
|
|
82
112
|
ret[k] = v
|
|
83
113
|
end
|
|
@@ -15,6 +15,7 @@ module Comet
|
|
|
15
15
|
# @type [String] device_name
|
|
16
16
|
attr_accessor :device_name
|
|
17
17
|
|
|
18
|
+
# The name of the filesystem used on this partition (e.g. "NTFS")
|
|
18
19
|
# @type [String] filesystem
|
|
19
20
|
attr_accessor :filesystem
|
|
20
21
|
|
|
@@ -30,12 +31,16 @@ module Comet
|
|
|
30
31
|
# @type [Array<String>] mount_points
|
|
31
32
|
attr_accessor :mount_points
|
|
32
33
|
|
|
34
|
+
# Bytes. The partition's offset within the DeviceName. It will be zero if this partition has a
|
|
35
|
+
# direct DeviceName handle.
|
|
33
36
|
# @type [Number] read_offset
|
|
34
37
|
attr_accessor :read_offset
|
|
35
38
|
|
|
39
|
+
# Bytes
|
|
36
40
|
# @type [Number] size
|
|
37
41
|
attr_accessor :size
|
|
38
42
|
|
|
43
|
+
# Bytes. Only present for supported filesystems that are currently mounted by the OS
|
|
39
44
|
# @type [Number] used_size
|
|
40
45
|
attr_accessor :used_size
|
|
41
46
|
|
|
@@ -12,6 +12,7 @@ module Comet
|
|
|
12
12
|
# PrivateBrandingProperties is a typed class wrapper around the underlying Comet Server API data structure.
|
|
13
13
|
class PrivateBrandingProperties
|
|
14
14
|
|
|
15
|
+
# One of the CLIENTBRANDINGBUILD_ constants
|
|
15
16
|
# @type [Number] build_mode
|
|
16
17
|
attr_accessor :build_mode
|
|
17
18
|
|
|
@@ -39,12 +40,14 @@ module Comet
|
|
|
39
40
|
# @type [String] package_identifier
|
|
40
41
|
attr_accessor :package_identifier
|
|
41
42
|
|
|
43
|
+
# One of the WINDOWSCODESIGN_METHOD_ constants
|
|
42
44
|
# @type [Number] windows_code_sign_method
|
|
43
45
|
attr_accessor :windows_code_sign_method
|
|
44
46
|
|
|
45
47
|
# @type [String] windows_code_sign_pkcs12file_path
|
|
46
48
|
attr_accessor :windows_code_sign_pkcs12file_path
|
|
47
49
|
|
|
50
|
+
# One of the ENCRYPTIONMETHOD_ constants
|
|
48
51
|
# @type [Number] windows_code_sign_pkcs12password_format
|
|
49
52
|
attr_accessor :windows_code_sign_pkcs12password_format
|
|
50
53
|
|
|
@@ -64,6 +67,7 @@ module Comet
|
|
|
64
67
|
# @type [String] windows_code_sign_pkcs11key_id
|
|
65
68
|
attr_accessor :windows_code_sign_pkcs11key_id
|
|
66
69
|
|
|
70
|
+
# One of the ENCRYPTIONMETHOD_ constants
|
|
67
71
|
# @type [Number] windows_code_sign_pkcs11password_format
|
|
68
72
|
attr_accessor :windows_code_sign_pkcs11password_format
|
|
69
73
|
|
|
@@ -79,6 +83,7 @@ module Comet
|
|
|
79
83
|
# @type [String] windows_code_sign_azure_app_id
|
|
80
84
|
attr_accessor :windows_code_sign_azure_app_id
|
|
81
85
|
|
|
86
|
+
# One of the ENCRYPTIONMETHOD_ constants
|
|
82
87
|
# @type [Number] windows_code_sign_azure_app_secret_format
|
|
83
88
|
attr_accessor :windows_code_sign_azure_app_secret_format
|
|
84
89
|
|
|
@@ -12,18 +12,22 @@ module Comet
|
|
|
12
12
|
# PSAConfig is a typed class wrapper around the underlying Comet Server API data structure.
|
|
13
13
|
class PSAConfig
|
|
14
14
|
|
|
15
|
+
# For PSA_TYPE_GRADIENT. Defaults to enabled
|
|
15
16
|
# @type [Boolean] alerts_disabled
|
|
16
17
|
attr_accessor :alerts_disabled
|
|
17
18
|
|
|
18
19
|
# @type [Hash{String => String}] custom_headers
|
|
19
20
|
attr_accessor :custom_headers
|
|
20
21
|
|
|
22
|
+
# Specified credentials for the target PSA
|
|
21
23
|
# @type [String] partner_key
|
|
22
24
|
attr_accessor :partner_key
|
|
23
25
|
|
|
26
|
+
# One of the PSA_TYPE_ constants
|
|
24
27
|
# @type [Number] type
|
|
25
28
|
attr_accessor :type
|
|
26
29
|
|
|
30
|
+
# For PSA_TYPE_GENERIC
|
|
27
31
|
# @type [String] url
|
|
28
32
|
attr_accessor :url
|
|
29
33
|
|
|
@@ -12,6 +12,7 @@ module Comet
|
|
|
12
12
|
# RestoreJobAdvancedOptions is a typed class wrapper around the underlying Comet Server API data structure.
|
|
13
13
|
class RestoreJobAdvancedOptions
|
|
14
14
|
|
|
15
|
+
# One of the RESTORETYPE_ constants
|
|
15
16
|
# @type [Number] type
|
|
16
17
|
attr_accessor :type
|
|
17
18
|
|
|
@@ -40,6 +41,16 @@ module Comet
|
|
|
40
41
|
# @type [Number] archive_format
|
|
41
42
|
attr_accessor :archive_format
|
|
42
43
|
|
|
44
|
+
# Corresponds to the "Allow partial file restores (zero-out unrecoverable data)" option
|
|
45
|
+
# This field is available in Comet 23.6.4 and later.
|
|
46
|
+
# @type [Boolean] skip_unreadable_chunks
|
|
47
|
+
attr_accessor :skip_unreadable_chunks
|
|
48
|
+
|
|
49
|
+
# Corresponds to the "Prefer temporary files instead of RAM (slower)" option
|
|
50
|
+
# This field is available in Comet 23.6.4 and later.
|
|
51
|
+
# @type [Boolean] on_disk_indexes_key
|
|
52
|
+
attr_accessor :on_disk_indexes_key
|
|
53
|
+
|
|
43
54
|
# For RESTORETYPE_OFFICE365_CLOUD.
|
|
44
55
|
# @type [Comet::Office365Credential] office_365credential
|
|
45
56
|
attr_accessor :office_365credential
|
|
@@ -150,6 +161,10 @@ module Comet
|
|
|
150
161
|
raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
|
|
151
162
|
|
|
152
163
|
@archive_format = v
|
|
164
|
+
when 'SkipUnreadableChunks'
|
|
165
|
+
@skip_unreadable_chunks = v
|
|
166
|
+
when 'OnDiskIndexesKey'
|
|
167
|
+
@on_disk_indexes_key = v
|
|
153
168
|
when 'Office365Credential'
|
|
154
169
|
@office_365credential = Comet::Office365Credential.new
|
|
155
170
|
@office_365credential.from_hash(v)
|
|
@@ -204,6 +219,8 @@ module Comet
|
|
|
204
219
|
ret['DestPath'] = @dest_path
|
|
205
220
|
ret['ExactDestPaths'] = @exact_dest_paths
|
|
206
221
|
ret['ArchiveFormat'] = @archive_format
|
|
222
|
+
ret['SkipUnreadableChunks'] = @skip_unreadable_chunks
|
|
223
|
+
ret['OnDiskIndexesKey'] = @on_disk_indexes_key
|
|
207
224
|
unless @office_365credential.nil?
|
|
208
225
|
ret['Office365Credential'] = @office_365credential
|
|
209
226
|
end
|
|
@@ -10,11 +10,15 @@ require 'json'
|
|
|
10
10
|
module Comet
|
|
11
11
|
|
|
12
12
|
# RetentionRange is a typed class wrapper around the underlying Comet Server API data structure.
|
|
13
|
+
# The Type field controls which fields of this data type are used. For additional information, see
|
|
14
|
+
# the notes on the RETENTIONRANGE_ constants.
|
|
13
15
|
class RetentionRange
|
|
14
16
|
|
|
17
|
+
# One of the RETENTIONRANGE_ constants
|
|
15
18
|
# @type [Number] type
|
|
16
19
|
attr_accessor :type
|
|
17
20
|
|
|
21
|
+
# Unix timestamp, in seconds. Used by RETENTIONRANGE_NEWER_THAN_X.
|
|
18
22
|
# @type [Number] timestamp
|
|
19
23
|
attr_accessor :timestamp
|
|
20
24
|
|
|
@@ -34,6 +38,10 @@ module Comet
|
|
|
34
38
|
# @type [Number] week_offset
|
|
35
39
|
attr_accessor :week_offset
|
|
36
40
|
|
|
41
|
+
# 1: 1st, 31: 31st
|
|
42
|
+
# Prior to Comet version 23.6.2, 31 was treated as 30.
|
|
43
|
+
# For months that do not have a day equal to the specified offset, no backup will be retained.
|
|
44
|
+
# For example, if the offset is set to 30, no backup will be kept for February.
|
|
37
45
|
# @type [Number] month_offset
|
|
38
46
|
attr_accessor :month_offset
|
|
39
47
|
|
|
@@ -12,18 +12,34 @@ module Comet
|
|
|
12
12
|
# SearchClause is a typed class wrapper around the underlying Comet Server API data structure.
|
|
13
13
|
class SearchClause
|
|
14
14
|
|
|
15
|
+
# One of the SEARCHCLAUSE_ constants (e.g. empty-string if this is a rule, or "and"/"or" if there
|
|
16
|
+
# are ClauseChildren)
|
|
15
17
|
# @type [String] clause_type
|
|
16
18
|
attr_accessor :clause_type
|
|
17
19
|
|
|
20
|
+
# The field name to search. Check the specific API for more information about which fields are
|
|
21
|
+
# available for searching. For use with ClauseType = SEARCHCLAUSE_RULE.
|
|
18
22
|
# @type [String] rule_field
|
|
19
23
|
attr_accessor :rule_field
|
|
20
24
|
|
|
25
|
+
# One of the SEARCHOPERATOR_ constants. The operator must match the type of the particular field.
|
|
26
|
+
# For use with ClauseType = SEARCHCLAUSE_RULE.
|
|
21
27
|
# @type [String] rule_operator
|
|
22
28
|
attr_accessor :rule_operator
|
|
23
29
|
|
|
30
|
+
# The value to compare the field against.
|
|
31
|
+
# - If the field is a string, any string is permissable.
|
|
32
|
+
# - If the field is an integer, the integer should be cast to a base-10 string. There is currently
|
|
33
|
+
# no support for fractional or floating-point numbers.
|
|
34
|
+
# - If the field is a boolean, the following values can be used for true ("1", "t", "T", "true",
|
|
35
|
+
# "TRUE", "True") and the following values can be used for false ("0", "f", "F", "false", "FALSE",
|
|
36
|
+
# "False").
|
|
37
|
+
# For use with ClauseType = SEARCHCLAUSE_RULE.
|
|
24
38
|
# @type [String] rule_value
|
|
25
39
|
attr_accessor :rule_value
|
|
26
40
|
|
|
41
|
+
# If ClauseType is not SEARCHCLAUSE_RULE, the child rules will be applied according to the
|
|
42
|
+
# ClauseType (e.g. "and"/"or")
|
|
27
43
|
# @type [Array<Comet::SearchClause>] clause_children
|
|
28
44
|
attr_accessor :clause_children
|
|
29
45
|
|
|
@@ -10,29 +10,41 @@ require 'json'
|
|
|
10
10
|
module Comet
|
|
11
11
|
|
|
12
12
|
# SearchResultFileInfo is a typed class wrapper around the underlying Comet Server API data structure.
|
|
13
|
+
# SearchResultFileInfo describes a single result entry when searching for files within a Storage
|
|
14
|
+
# Vault snapshot.
|
|
13
15
|
class SearchResultFileInfo
|
|
14
16
|
|
|
17
|
+
# Path to the file within the selected snapshot, using forwardslash (/) separators
|
|
15
18
|
# @type [String] path
|
|
16
19
|
attr_accessor :path
|
|
17
20
|
|
|
21
|
+
# Filename
|
|
18
22
|
# @type [String] name
|
|
19
23
|
attr_accessor :name
|
|
20
24
|
|
|
25
|
+
# One of the STOREDOBJECTTYPE_ constants
|
|
21
26
|
# @type [String] type
|
|
22
27
|
attr_accessor :type
|
|
23
28
|
|
|
24
29
|
# @type [String] mode
|
|
25
30
|
attr_accessor :mode
|
|
26
31
|
|
|
27
|
-
#
|
|
28
|
-
|
|
32
|
+
# Timestamp in RFC3339 format with subsecond precision and time zone offset. See the Golang
|
|
33
|
+
# time.RFC3339Nano for more information.
|
|
34
|
+
# @type [String] mod_time
|
|
35
|
+
attr_accessor :mod_time
|
|
29
36
|
|
|
30
|
-
#
|
|
31
|
-
|
|
37
|
+
# Timestamp in RFC3339 format with subsecond precision and time zone offset. See the Golang
|
|
38
|
+
# time.RFC3339Nano for more information.
|
|
39
|
+
# @type [String] access_time
|
|
40
|
+
attr_accessor :access_time
|
|
32
41
|
|
|
33
|
-
#
|
|
34
|
-
|
|
42
|
+
# Timestamp in RFC3339 format with subsecond precision and time zone offset. See the Golang
|
|
43
|
+
# time.RFC3339Nano for more information.
|
|
44
|
+
# @type [String] change_time
|
|
45
|
+
attr_accessor :change_time
|
|
35
46
|
|
|
47
|
+
# Bytes
|
|
36
48
|
# @type [Number] size
|
|
37
49
|
attr_accessor :size
|
|
38
50
|
|
|
@@ -48,9 +60,9 @@ module Comet
|
|
|
48
60
|
@name = ''
|
|
49
61
|
@type = ''
|
|
50
62
|
@mode = ''
|
|
51
|
-
@
|
|
52
|
-
@
|
|
53
|
-
@
|
|
63
|
+
@mod_time = ''
|
|
64
|
+
@access_time = ''
|
|
65
|
+
@change_time = ''
|
|
54
66
|
@size = 0
|
|
55
67
|
@unknown_json_fields = {}
|
|
56
68
|
end
|
|
@@ -87,15 +99,15 @@ module Comet
|
|
|
87
99
|
when 'mtime'
|
|
88
100
|
raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
|
|
89
101
|
|
|
90
|
-
@
|
|
102
|
+
@mod_time = v
|
|
91
103
|
when 'atime'
|
|
92
104
|
raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
|
|
93
105
|
|
|
94
|
-
@
|
|
106
|
+
@access_time = v
|
|
95
107
|
when 'ctime'
|
|
96
108
|
raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
|
|
97
109
|
|
|
98
|
-
@
|
|
110
|
+
@change_time = v
|
|
99
111
|
when 'size'
|
|
100
112
|
raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
|
|
101
113
|
|
|
@@ -112,11 +124,21 @@ module Comet
|
|
|
112
124
|
ret['path'] = @path
|
|
113
125
|
ret['name'] = @name
|
|
114
126
|
ret['type'] = @type
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
127
|
+
unless @mode.nil?
|
|
128
|
+
ret['mode'] = @mode
|
|
129
|
+
end
|
|
130
|
+
unless @mod_time.nil?
|
|
131
|
+
ret['mtime'] = @mod_time
|
|
132
|
+
end
|
|
133
|
+
unless @access_time.nil?
|
|
134
|
+
ret['atime'] = @access_time
|
|
135
|
+
end
|
|
136
|
+
unless @change_time.nil?
|
|
137
|
+
ret['ctime'] = @change_time
|
|
138
|
+
end
|
|
139
|
+
unless @size.nil?
|
|
140
|
+
ret['size'] = @size
|
|
141
|
+
end
|
|
120
142
|
@unknown_json_fields.each do |k, v|
|
|
121
143
|
ret[k] = v
|
|
122
144
|
end
|
|
@@ -18,12 +18,16 @@ module Comet
|
|
|
18
18
|
# @type [String] encryption_key
|
|
19
19
|
attr_accessor :encryption_key
|
|
20
20
|
|
|
21
|
+
# One of the ENCRYPTIONMETHOD_ constants
|
|
21
22
|
# @type [Number] encryption_key_format
|
|
22
23
|
attr_accessor :encryption_key_format
|
|
23
24
|
|
|
25
|
+
# One of the COMPRESS_LVL_ constants
|
|
24
26
|
# @type [Number] compression
|
|
25
27
|
attr_accessor :compression
|
|
26
28
|
|
|
29
|
+
# The jobs database is often the largest component of the Server Self-Backup archive. By excluding
|
|
30
|
+
# it, you could run the Server Self-Backup more often.
|
|
27
31
|
# @type [Boolean] exclude_jobs_db
|
|
28
32
|
attr_accessor :exclude_jobs_db
|
|
29
33
|
|
|
@@ -15,6 +15,7 @@ module Comet
|
|
|
15
15
|
# @type [Array<Comet::ScheduleConfig>] schedule
|
|
16
16
|
attr_accessor :schedule
|
|
17
17
|
|
|
18
|
+
# Timezone in IANA format
|
|
18
19
|
# @type [String] schedule_timezone
|
|
19
20
|
attr_accessor :schedule_timezone
|
|
20
21
|
|
|
@@ -27,12 +28,16 @@ module Comet
|
|
|
27
28
|
# @type [String] encryption_key
|
|
28
29
|
attr_accessor :encryption_key
|
|
29
30
|
|
|
31
|
+
# One of the ENCRYPTIONMETHOD_ constants
|
|
30
32
|
# @type [Number] encryption_key_format
|
|
31
33
|
attr_accessor :encryption_key_format
|
|
32
34
|
|
|
35
|
+
# One of the COMPRESS_LVL_ constants
|
|
33
36
|
# @type [Number] compression
|
|
34
37
|
attr_accessor :compression
|
|
35
38
|
|
|
39
|
+
# The jobs database is often the largest component of the Server Self-Backup archive. By excluding
|
|
40
|
+
# it, you could run the Server Self-Backup more often.
|
|
36
41
|
# @type [Boolean] exclude_jobs_db
|
|
37
42
|
attr_accessor :exclude_jobs_db
|
|
38
43
|
|
|
@@ -35,30 +35,36 @@ module Comet
|
|
|
35
35
|
# @type [Comet::EmailOptions] email
|
|
36
36
|
attr_accessor :email
|
|
37
37
|
|
|
38
|
+
# An array of GUIDs that can enable additional early-access functionality
|
|
38
39
|
# @type [Array<String>] experimental_options
|
|
39
40
|
attr_accessor :experimental_options
|
|
40
41
|
|
|
41
42
|
# @type [Hash{String => Comet::ExternalAuthenticationSource}] external_admin_user_sources
|
|
42
43
|
attr_accessor :external_admin_user_sources
|
|
43
44
|
|
|
45
|
+
# The Comet Server can enforce a bandwidth limit based on the target IP address
|
|
44
46
|
# @type [Comet::RatelimitOptions] iprate_limit
|
|
45
47
|
attr_accessor :iprate_limit
|
|
46
48
|
|
|
47
49
|
# @type [Comet::LicenseOptions] license
|
|
48
50
|
attr_accessor :license
|
|
49
51
|
|
|
52
|
+
# Configure ip, port, and SSL settings for this self-hosted Comet Server.
|
|
50
53
|
# @type [Array<Comet::HTTPConnectorOptions>] listen_addresses
|
|
51
54
|
attr_accessor :listen_addresses
|
|
52
55
|
|
|
56
|
+
# Tenants
|
|
53
57
|
# @type [Hash{String => Comet::Organization}] organizations
|
|
54
58
|
attr_accessor :organizations
|
|
55
59
|
|
|
56
60
|
# @type [Array<Comet::PSAConfig>] psaconfigs
|
|
57
61
|
attr_accessor :psaconfigs
|
|
58
62
|
|
|
63
|
+
# Automatically create backup zip files of this Comet Server's configuration
|
|
59
64
|
# @type [Comet::SelfBackupOptions] self_backup
|
|
60
65
|
attr_accessor :self_backup
|
|
61
66
|
|
|
67
|
+
# Control how long admin accounts can remain logged in to the Comet Server web interface
|
|
62
68
|
# @type [Comet::SessionOptions] session_settings
|
|
63
69
|
attr_accessor :session_settings
|
|
64
70
|
|
|
@@ -68,12 +74,18 @@ module Comet
|
|
|
68
74
|
# @type [Comet::StorageRoleOptions] storage_role
|
|
69
75
|
attr_accessor :storage_role
|
|
70
76
|
|
|
77
|
+
# If true, the X-Forwarded-For header will be trusted for the purposes of IP allowlisting. This
|
|
78
|
+
# should only be enabled when you explicitly configure Comet Server behind a reverse proxy,
|
|
79
|
+
# otherwise it could allow malicious users to bypass the IP allowlist.
|
|
71
80
|
# @type [Boolean] trust_xforwarded_for
|
|
72
81
|
attr_accessor :trust_xforwarded_for
|
|
73
82
|
|
|
74
83
|
# @type [Hash{String => Comet::WebhookOption}] webhook_options
|
|
75
84
|
attr_accessor :webhook_options
|
|
76
85
|
|
|
86
|
+
# @type [Hash{String => Comet::FileOption}] audit_file_options
|
|
87
|
+
attr_accessor :audit_file_options
|
|
88
|
+
|
|
77
89
|
# @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
|
|
78
90
|
attr_accessor :unknown_json_fields
|
|
79
91
|
|
|
@@ -100,6 +112,7 @@ module Comet
|
|
|
100
112
|
@software_build_role = Comet::SoftwareBuildRoleOptions.new
|
|
101
113
|
@storage_role = Comet::StorageRoleOptions.new
|
|
102
114
|
@webhook_options = {}
|
|
115
|
+
@audit_file_options = {}
|
|
103
116
|
@unknown_json_fields = {}
|
|
104
117
|
end
|
|
105
118
|
|
|
@@ -222,6 +235,16 @@ module Comet
|
|
|
222
235
|
@webhook_options[k1].from_hash(v1)
|
|
223
236
|
end
|
|
224
237
|
end
|
|
238
|
+
when 'AuditFileOptions'
|
|
239
|
+
@audit_file_options = {}
|
|
240
|
+
if v.nil?
|
|
241
|
+
@audit_file_options = {}
|
|
242
|
+
else
|
|
243
|
+
v.each do |k1, v1|
|
|
244
|
+
@audit_file_options[k1] = Comet::FileOption.new
|
|
245
|
+
@audit_file_options[k1].from_hash(v1)
|
|
246
|
+
end
|
|
247
|
+
end
|
|
225
248
|
else
|
|
226
249
|
@unknown_json_fields[k] = v
|
|
227
250
|
end
|
|
@@ -254,6 +277,7 @@ module Comet
|
|
|
254
277
|
ret['StorageRole'] = @storage_role
|
|
255
278
|
ret['TrustXForwardedFor'] = @trust_xforwarded_for
|
|
256
279
|
ret['WebhookOptions'] = @webhook_options
|
|
280
|
+
ret['AuditFileOptions'] = @audit_file_options
|
|
257
281
|
@unknown_json_fields.each do |k, v|
|
|
258
282
|
ret[k] = v
|
|
259
283
|
end
|
|
@@ -28,9 +28,11 @@ module Comet
|
|
|
28
28
|
# @type [String] image_etag
|
|
29
29
|
attr_accessor :image_etag
|
|
30
30
|
|
|
31
|
+
# Colour in RGB hex format (e.g. "#FFFFFF")
|
|
31
32
|
# @type [String] top_color
|
|
32
33
|
attr_accessor :top_color
|
|
33
34
|
|
|
35
|
+
# Colour in RGB hex format (e.g. "#FFFFFF")
|
|
34
36
|
# @type [String] accent_color
|
|
35
37
|
attr_accessor :accent_color
|
|
36
38
|
|
|
@@ -62,6 +62,7 @@ module Comet
|
|
|
62
62
|
# @type [Number] server_license_feature_set
|
|
63
63
|
attr_accessor :server_license_feature_set
|
|
64
64
|
|
|
65
|
+
# Unix timestamp, in seconds.
|
|
65
66
|
# @type [Number] license_valid_until
|
|
66
67
|
attr_accessor :license_valid_until
|
|
67
68
|
|
|
@@ -89,6 +90,7 @@ module Comet
|
|
|
89
90
|
# @type [Boolean] scheduled_email_thread_last_wake_sent_emails
|
|
90
91
|
attr_accessor :scheduled_email_thread_last_wake_sent_emails
|
|
91
92
|
|
|
93
|
+
# This field is available in Comet 21.3.2 and later.
|
|
92
94
|
# @type [Array<Comet::SelfBackupStatistics>] self_backup
|
|
93
95
|
attr_accessor :self_backup
|
|
94
96
|
|
|
@@ -12,6 +12,8 @@ module Comet
|
|
|
12
12
|
# SessionOptions is a typed class wrapper around the underlying Comet Server API data structure.
|
|
13
13
|
class SessionOptions
|
|
14
14
|
|
|
15
|
+
# The number of seconds, after which an administrator should be automatically logged out of the
|
|
16
|
+
# Comet Server web interface. If zero, will be replaced with DEFAULT_SESSIONTIMEOUT.
|
|
15
17
|
# @type [Number] expired_in_seconds
|
|
16
18
|
attr_accessor :expired_in_seconds
|
|
17
19
|
|
|
@@ -18,6 +18,7 @@ module Comet
|
|
|
18
18
|
# @type [String] sftpusername
|
|
19
19
|
attr_accessor :sftpusername
|
|
20
20
|
|
|
21
|
+
# The directory on the SFTP server in which data is stored.
|
|
21
22
|
# @type [String] sftpremote_path
|
|
22
23
|
attr_accessor :sftpremote_path
|
|
23
24
|
|
|
@@ -25,15 +26,21 @@ module Comet
|
|
|
25
26
|
# @type [Number] sftpauth_mode
|
|
26
27
|
attr_accessor :sftpauth_mode
|
|
27
28
|
|
|
29
|
+
# For use with DESTINATION_SFTP_AUTHMODE_PASSWORD only: the SSH password to connect with
|
|
28
30
|
# @type [String] sftppassword
|
|
29
31
|
attr_accessor :sftppassword
|
|
30
32
|
|
|
33
|
+
# For use with DESTINATION_SFTP_AUTHMODE_PRIVATEKEY only: the SSH private key to connect with, in
|
|
34
|
+
# OpenSSH format.
|
|
31
35
|
# @type [String] sftpprivate_key
|
|
32
36
|
attr_accessor :sftpprivate_key
|
|
33
37
|
|
|
38
|
+
# If true, then the SFTPCustomAuth_KnownHostsFile will be used to verify the remote SSH server's
|
|
39
|
+
# host key, using Trust On First Use (TOFU).
|
|
34
40
|
# @type [Boolean] sftpcustom_auth__use_known_hosts_file
|
|
35
41
|
attr_accessor :sftpcustom_auth__use_known_hosts_file
|
|
36
42
|
|
|
43
|
+
# If SFTPCustomAuth_UseKnownHostFile is true, the path to the SSH known_hosts file.
|
|
37
44
|
# @type [String] sftpcustom_auth__known_hosts_file
|
|
38
45
|
attr_accessor :sftpcustom_auth__known_hosts_file
|
|
39
46
|
|
|
@@ -12,12 +12,15 @@ module Comet
|
|
|
12
12
|
# SizeMeasurement is a typed class wrapper around the underlying Comet Server API data structure.
|
|
13
13
|
class SizeMeasurement
|
|
14
14
|
|
|
15
|
+
# Bytes
|
|
15
16
|
# @type [Number] size
|
|
16
17
|
attr_accessor :size
|
|
17
18
|
|
|
19
|
+
# Unix timestamp in seconds
|
|
18
20
|
# @type [Number] measure_started
|
|
19
21
|
attr_accessor :measure_started
|
|
20
22
|
|
|
23
|
+
# Unix timestamp in seconds
|
|
21
24
|
# @type [Number] measure_completed
|
|
22
25
|
attr_accessor :measure_completed
|
|
23
26
|
|
|
@@ -12,15 +12,19 @@ module Comet
|
|
|
12
12
|
# SoftwareUpdateNewsResponse is a typed class wrapper around the underlying Comet Server API data structure.
|
|
13
13
|
class SoftwareUpdateNewsResponse
|
|
14
14
|
|
|
15
|
+
# The latest "Quarterly" release version of Comet known to the account.cometbackup.com system.
|
|
15
16
|
# @type [String] latest_stable
|
|
16
17
|
attr_accessor :latest_stable
|
|
17
18
|
|
|
19
|
+
# The latest "Voyager" release version of Comet known to the account.cometbackup.com system.
|
|
18
20
|
# @type [String] latest_prerelease
|
|
19
21
|
attr_accessor :latest_prerelease
|
|
20
22
|
|
|
23
|
+
# A URL linking to the Comet Server downloads page.
|
|
21
24
|
# @type [String] downloads_url
|
|
22
25
|
attr_accessor :downloads_url
|
|
23
26
|
|
|
27
|
+
# An array of recent news items written by Comet Backup staff. Entries are english plaintext.
|
|
24
28
|
# @type [Array<String>] whats_new
|
|
25
29
|
attr_accessor :whats_new
|
|
26
30
|
|
|
@@ -10,6 +10,8 @@ require 'json'
|
|
|
10
10
|
module Comet
|
|
11
11
|
|
|
12
12
|
# SourceBasicInfo is a typed class wrapper around the underlying Comet Server API data structure.
|
|
13
|
+
# SourceBasicInfo is the minimal amount of information one device knows about another device's
|
|
14
|
+
# Protected Items, in order to safely perform retention passes on their behalf.
|
|
13
15
|
class SourceBasicInfo
|
|
14
16
|
|
|
15
17
|
# @type [String] description
|
|
@@ -18,6 +20,7 @@ module Comet
|
|
|
18
20
|
# @type [Number] o365account_count
|
|
19
21
|
attr_accessor :o365account_count
|
|
20
22
|
|
|
23
|
+
# Bytes
|
|
21
24
|
# @type [Number] size
|
|
22
25
|
attr_accessor :size
|
|
23
26
|
|