comet_backup_ruby_sdk 2.7.0 → 2.9.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.
Files changed (103) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +17 -0
  3. data/Gemfile.lock +1 -1
  4. data/comet_backup_ruby_sdk.gemspec +1 -1
  5. data/lib/comet/definitions.rb +331 -188
  6. data/lib/comet/models/add_bucket_response_message.rb +1 -0
  7. data/lib/comet/models/admin_resource_response.rb +1 -0
  8. data/lib/comet/models/azure_destination_location.rb +3 -0
  9. data/lib/comet/models/b2destination_location.rb +7 -0
  10. data/lib/comet/models/backup_job_advanced_options.rb +9 -0
  11. data/lib/comet/models/backup_job_detail.rb +15 -0
  12. data/lib/comet/models/backup_job_progress.rb +4 -0
  13. data/lib/comet/models/backup_rule_config.rb +17 -0
  14. data/lib/comet/models/backup_rule_event_triggers.rb +3 -0
  15. data/lib/comet/models/branding_options.rb +2 -0
  16. data/lib/comet/models/browse_disk_drives_response.rb +1 -0
  17. data/lib/comet/models/browse_edbresponse.rb +1 -0
  18. data/lib/comet/models/browse_hvresponse.rb +1 -0
  19. data/lib/comet/models/browse_office_365list_virtual_accounts_response.rb +1 -0
  20. data/lib/comet/models/browse_office_365objects_response.rb +1 -0
  21. data/lib/comet/models/browse_sqlserver_response.rb +1 -0
  22. data/lib/comet/models/browse_vssresponse.rb +1 -0
  23. data/lib/comet/models/bucket_usage_info.rb +2 -0
  24. data/lib/comet/models/comet_apiresponse_message.rb +1 -0
  25. data/lib/comet/models/comet_destination_location.rb +1 -0
  26. data/lib/comet/models/constellation_check_report.rb +2 -0
  27. data/lib/comet/models/constellation_status_apiresponse.rb +1 -0
  28. data/lib/comet/models/content_measurement.rb +2 -0
  29. data/lib/comet/models/content_measurement_component.rb +12 -0
  30. data/lib/comet/models/create_group_policy_response.rb +1 -0
  31. data/lib/comet/models/default_email_report_policy.rb +4 -0
  32. data/lib/comet/models/destination_config.rb +47 -0
  33. data/lib/comet/models/destination_location.rb +36 -0
  34. data/lib/comet/models/destination_statistics.rb +2 -0
  35. data/lib/comet/models/device_config.rb +5 -0
  36. data/lib/comet/models/dispatcher_admin_sources_response.rb +1 -0
  37. data/lib/comet/models/dispatcher_stored_objects_response.rb +1 -0
  38. data/lib/comet/models/dispatcher_vault_snapshots_response.rb +1 -0
  39. data/lib/comet/models/dispatcher_windisk_snapshot_response.rb +1 -0
  40. data/lib/comet/models/email_options.rb +1 -0
  41. data/lib/comet/models/email_report_config.rb +3 -0
  42. data/lib/comet/models/email_report_generated_preview.rb +1 -0
  43. data/lib/comet/models/extra_file_exclusion.rb +4 -0
  44. data/lib/comet/models/file_option.rb +132 -0
  45. data/lib/comet/models/ftpdestination_location.rb +5 -0
  46. data/lib/comet/models/get_group_policy_response.rb +1 -0
  47. data/lib/comet/models/get_profile_and_hash_response_message.rb +4 -0
  48. data/lib/comet/models/get_profile_hash_response_message.rb +1 -0
  49. data/lib/comet/models/group_policy.rb +4 -0
  50. data/lib/comet/models/install_token_response.rb +1 -0
  51. data/lib/comet/models/job_entry.rb +2 -0
  52. data/lib/comet/models/live_user_connection.rb +11 -0
  53. data/lib/comet/models/local_destination_location.rb +5 -0
  54. data/lib/comet/models/mac_oscode_sign_properties.rb +1 -0
  55. data/lib/comet/models/mongo_dbconnection.rb +2 -0
  56. data/lib/comet/models/mssqllogin_args.rb +2 -0
  57. data/lib/comet/models/my_sqlconnection.rb +2 -0
  58. data/lib/comet/models/office_365custom_setting.rb +3 -0
  59. data/lib/comet/models/office_365custom_setting_v2.rb +9 -0
  60. data/lib/comet/models/office_365object_info.rb +1 -0
  61. data/lib/comet/models/organization.rb +85 -70
  62. data/lib/comet/models/request_storage_vault_response_message.rb +1 -0
  63. data/lib/comet/models/restore_job_advanced_options.rb +19 -0
  64. data/lib/comet/models/retention_policy.rb +1 -0
  65. data/lib/comet/models/retention_range.rb +1 -0
  66. data/lib/comet/models/s3destination_location.rb +1 -0
  67. data/lib/comet/models/search_result_file_info.rb +39 -17
  68. data/lib/comet/models/search_snapshots_response.rb +1 -0
  69. data/lib/comet/models/self_backup_export_options.rb +3 -0
  70. data/lib/comet/models/self_backup_target.rb +4 -0
  71. data/lib/comet/models/server_config_options.rb +28 -0
  72. data/lib/comet/models/server_meta_branding_properties.rb +4 -0
  73. data/lib/comet/models/server_meta_version_info.rb +8 -0
  74. data/lib/comet/models/session_key_regenerated_response.rb +1 -0
  75. data/lib/comet/models/session_options.rb +2 -0
  76. data/lib/comet/models/sftpdestination_location.rb +8 -0
  77. data/lib/comet/models/size_measurement.rb +3 -0
  78. data/lib/comet/models/source_basic_info.rb +1 -0
  79. data/lib/comet/models/source_config.rb +53 -0
  80. data/lib/comet/models/source_include_pattern.rb +5 -0
  81. data/lib/comet/models/spanned_destination_location.rb +11 -0
  82. data/lib/comet/models/sshconnection.rb +7 -0
  83. data/lib/comet/models/stored_object.rb +7 -0
  84. data/lib/comet/models/streamable_event.rb +42 -0
  85. data/lib/comet/models/swift_destination_location.rb +7 -0
  86. data/lib/comet/models/test_response.rb +1 -0
  87. data/lib/comet/models/time_span.rb +2 -0
  88. data/lib/comet/models/totp_regenerated_response.rb +1 -0
  89. data/lib/comet/models/u2fregistration_challenge_response.rb +1 -0
  90. data/lib/comet/models/uninstall_config.rb +4 -0
  91. data/lib/comet/models/update_campaign_options.rb +3 -0
  92. data/lib/comet/models/update_campaign_properties.rb +3 -0
  93. data/lib/comet/models/update_campaign_status.rb +3 -0
  94. data/lib/comet/models/user_on_server.rb +2 -0
  95. data/lib/comet/models/user_profile_config.rb +45 -0
  96. data/lib/comet/models/user_profile_fragment.rb +1 -0
  97. data/lib/comet/models/vmdksnapshot_view_options.rb +4 -0
  98. data/lib/comet/models/web_authn_registration_challenge_response.rb +1 -0
  99. data/lib/comet/models/web_interface_branding_properties.rb +2 -0
  100. data/lib/comet/models/webhook_option.rb +35 -16
  101. data/lib/comet/models/win_smbauth.rb +6 -0
  102. data/lib/comet_backup_ruby_sdk.rb +1 -0
  103. metadata +3 -2
@@ -12,38 +12,41 @@ module Comet
12
12
  # Organization is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class Organization
14
14
 
15
- # @type [String] name
16
- attr_accessor :name
17
-
18
- # @type [Array<String>] hosts
19
- attr_accessor :hosts
20
-
21
- # @type [Comet::SoftwareBuildRoleOptions] software_build_role
22
- attr_accessor :software_build_role
15
+ # @type [Hash{String => Comet::FileOption}] audit_file_options
16
+ attr_accessor :audit_file_options
23
17
 
24
18
  # @type [Comet::BrandingOptions] branding
25
19
  attr_accessor :branding
26
20
 
27
- # @type [Array<Comet::RemoteStorageOption>] remote_storage
28
- attr_accessor :remote_storage
29
-
30
21
  # @type [Comet::ConstellationRoleOptions] constellation_role
31
22
  attr_accessor :constellation_role
32
23
 
33
- # @type [Hash{String => Comet::WebhookOption}] webhook_options
34
- attr_accessor :webhook_options
35
-
36
- # @type [Array<Comet::PSAConfig>] psaconfigs
37
- attr_accessor :psaconfigs
38
-
39
24
  # @type [Comet::EmailOptions] email
40
25
  attr_accessor :email
41
26
 
27
+ # @type [Array<String>] experimental_options
28
+ attr_accessor :experimental_options
29
+
30
+ # @type [Array<String>] hosts
31
+ attr_accessor :hosts
32
+
33
+ # @type [String] name
34
+ attr_accessor :name
35
+
42
36
  # @type [Boolean] is_suspended
43
37
  attr_accessor :is_suspended
44
38
 
45
- # @type [Array<String>] experimental_options
46
- attr_accessor :experimental_options
39
+ # @type [Array<Comet::PSAConfig>] psaconfigs
40
+ attr_accessor :psaconfigs
41
+
42
+ # @type [Array<Comet::RemoteStorageOption>] remote_storage
43
+ attr_accessor :remote_storage
44
+
45
+ # @type [Comet::SoftwareBuildRoleOptions] software_build_role
46
+ attr_accessor :software_build_role
47
+
48
+ # @type [Hash{String => Comet::WebhookOption}] webhook_options
49
+ attr_accessor :webhook_options
47
50
 
48
51
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
49
52
  attr_accessor :unknown_json_fields
@@ -53,16 +56,17 @@ module Comet
53
56
  end
54
57
 
55
58
  def clear
56
- @name = ''
57
- @hosts = []
58
- @software_build_role = Comet::SoftwareBuildRoleOptions.new
59
+ @audit_file_options = {}
59
60
  @branding = Comet::BrandingOptions.new
60
- @remote_storage = []
61
61
  @constellation_role = Comet::ConstellationRoleOptions.new
62
- @webhook_options = {}
63
- @psaconfigs = []
64
62
  @email = Comet::EmailOptions.new
65
63
  @experimental_options = []
64
+ @hosts = []
65
+ @name = ''
66
+ @psaconfigs = []
67
+ @remote_storage = []
68
+ @software_build_role = Comet::SoftwareBuildRoleOptions.new
69
+ @webhook_options = {}
66
70
  @unknown_json_fields = {}
67
71
  end
68
72
 
@@ -79,10 +83,36 @@ module Comet
79
83
 
80
84
  obj.each do |k, v|
81
85
  case k
82
- when 'Name'
83
- raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
86
+ when 'AuditFileOptions'
87
+ @audit_file_options = {}
88
+ if v.nil?
89
+ @audit_file_options = {}
90
+ else
91
+ v.each do |k1, v1|
92
+ @audit_file_options[k1] = Comet::FileOption.new
93
+ @audit_file_options[k1].from_hash(v1)
94
+ end
95
+ end
96
+ when 'Branding'
97
+ @branding = Comet::BrandingOptions.new
98
+ @branding.from_hash(v)
99
+ when 'ConstellationRole'
100
+ @constellation_role = Comet::ConstellationRoleOptions.new
101
+ @constellation_role.from_hash(v)
102
+ when 'Email'
103
+ @email = Comet::EmailOptions.new
104
+ @email.from_hash(v)
105
+ when 'ExperimentalOptions'
106
+ if v.nil?
107
+ @experimental_options = []
108
+ else
109
+ @experimental_options = Array.new(v.length)
110
+ v.each_with_index do |v1, i1|
111
+ raise TypeError, "'v1' expected String, got #{v1.class}" unless v1.is_a? String
84
112
 
85
- @name = v
113
+ @experimental_options[i1] = v1
114
+ end
115
+ end
86
116
  when 'Hosts'
87
117
  if v.nil?
88
118
  @hosts = []
@@ -94,12 +124,22 @@ module Comet
94
124
  @hosts[i1] = v1
95
125
  end
96
126
  end
97
- when 'SoftwareBuildRole'
98
- @software_build_role = Comet::SoftwareBuildRoleOptions.new
99
- @software_build_role.from_hash(v)
100
- when 'Branding'
101
- @branding = Comet::BrandingOptions.new
102
- @branding.from_hash(v)
127
+ when 'Name'
128
+ raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String
129
+
130
+ @name = v
131
+ when 'IsSuspended'
132
+ @is_suspended = v
133
+ when 'PSAConfigs'
134
+ if v.nil?
135
+ @psaconfigs = []
136
+ else
137
+ @psaconfigs = Array.new(v.length)
138
+ v.each_with_index do |v1, i1|
139
+ @psaconfigs[i1] = Comet::PSAConfig.new
140
+ @psaconfigs[i1].from_hash(v1)
141
+ end
142
+ end
103
143
  when 'RemoteStorage'
104
144
  if v.nil?
105
145
  @remote_storage = []
@@ -110,9 +150,9 @@ module Comet
110
150
  @remote_storage[i1].from_hash(v1)
111
151
  end
112
152
  end
113
- when 'ConstellationRole'
114
- @constellation_role = Comet::ConstellationRoleOptions.new
115
- @constellation_role.from_hash(v)
153
+ when 'SoftwareBuildRole'
154
+ @software_build_role = Comet::SoftwareBuildRoleOptions.new
155
+ @software_build_role.from_hash(v)
116
156
  when 'WebhookOptions'
117
157
  @webhook_options = {}
118
158
  if v.nil?
@@ -123,32 +163,6 @@ module Comet
123
163
  @webhook_options[k1].from_hash(v1)
124
164
  end
125
165
  end
126
- when 'PSAConfigs'
127
- if v.nil?
128
- @psaconfigs = []
129
- else
130
- @psaconfigs = Array.new(v.length)
131
- v.each_with_index do |v1, i1|
132
- @psaconfigs[i1] = Comet::PSAConfig.new
133
- @psaconfigs[i1].from_hash(v1)
134
- end
135
- end
136
- when 'Email'
137
- @email = Comet::EmailOptions.new
138
- @email.from_hash(v)
139
- when 'IsSuspended'
140
- @is_suspended = v
141
- when 'ExperimentalOptions'
142
- if v.nil?
143
- @experimental_options = []
144
- else
145
- @experimental_options = Array.new(v.length)
146
- v.each_with_index do |v1, i1|
147
- raise TypeError, "'v1' expected String, got #{v1.class}" unless v1.is_a? String
148
-
149
- @experimental_options[i1] = v1
150
- end
151
- end
152
166
  else
153
167
  @unknown_json_fields[k] = v
154
168
  end
@@ -158,19 +172,20 @@ module Comet
158
172
  # @return [Hash] The complete object as a Ruby hash
159
173
  def to_hash
160
174
  ret = {}
161
- ret['Name'] = @name
162
- ret['Hosts'] = @hosts
163
- ret['SoftwareBuildRole'] = @software_build_role
175
+ ret['AuditFileOptions'] = @audit_file_options
164
176
  ret['Branding'] = @branding
165
- ret['RemoteStorage'] = @remote_storage
166
177
  ret['ConstellationRole'] = @constellation_role
167
- ret['WebhookOptions'] = @webhook_options
168
- ret['PSAConfigs'] = @psaconfigs
169
178
  ret['Email'] = @email
170
- ret['IsSuspended'] = @is_suspended
171
179
  unless @experimental_options.nil?
172
180
  ret['ExperimentalOptions'] = @experimental_options
173
181
  end
182
+ ret['Hosts'] = @hosts
183
+ ret['Name'] = @name
184
+ ret['IsSuspended'] = @is_suspended
185
+ ret['PSAConfigs'] = @psaconfigs
186
+ ret['RemoteStorage'] = @remote_storage
187
+ ret['SoftwareBuildRole'] = @software_build_role
188
+ ret['WebhookOptions'] = @webhook_options
174
189
  @unknown_json_fields.each do |k, v|
175
190
  ret[k] = v
176
191
  end
@@ -12,6 +12,7 @@ module Comet
12
12
  # RequestStorageVaultResponseMessage is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class RequestStorageVaultResponseMessage
14
14
 
15
+ # If the operation was successful, the status will be in the 200-299 range.
15
16
  # @type [Number] status
16
17
  attr_accessor :status
17
18
 
@@ -12,57 +12,76 @@ 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
 
19
+ # For RESTORETYPE_FILE
18
20
  # @type [Boolean] overwrite_existing_files
19
21
  attr_accessor :overwrite_existing_files
20
22
 
23
+ # For RESTORETYPE_FILE. If set, OverwriteExistingFiles must be true
21
24
  # @type [Boolean] overwrite_if_newer
22
25
  attr_accessor :overwrite_if_newer
23
26
 
27
+ # For RESTORETYPE_FILE. If set, DestPath must be blank
24
28
  # @type [Boolean] dest_is_original_location
25
29
  attr_accessor :dest_is_original_location
26
30
 
31
+ # For RESTORETYPE_FILE or RESTORETYPE_PROCESS_xxx
27
32
  # @type [String] dest_path
28
33
  attr_accessor :dest_path
29
34
 
35
+ # For RESTORETYPE_WINDISK only. Must have one entry for each selected restore path
30
36
  # @type [Array<String>] exact_dest_paths
31
37
  attr_accessor :exact_dest_paths
32
38
 
39
+ # For RESTORETYPE_FILE_ARCHIVE or RESTORETYPE_PROCESS_ARCHIVE. Default 0 is *.tar, for backward
40
+ # compatibility
33
41
  # @type [Number] archive_format
34
42
  attr_accessor :archive_format
35
43
 
44
+ # For RESTORETYPE_OFFICE365_CLOUD.
36
45
  # @type [Comet::Office365Credential] office_365credential
37
46
  attr_accessor :office_365credential
38
47
 
48
+ # For RESTORETYPE_MYSQL
39
49
  # @type [String] username
40
50
  attr_accessor :username
41
51
 
52
+ # For RESTORETYPE_MYSQL
42
53
  # @type [String] password
43
54
  attr_accessor :password
44
55
 
56
+ # For RESTORETYPE_MYSQL
45
57
  # @type [String] host
46
58
  attr_accessor :host
47
59
 
60
+ # For RESTORETYPE_MYSQL
48
61
  # @type [String] port
49
62
  attr_accessor :port
50
63
 
64
+ # For RESTORETYPE_MYSQL
51
65
  # @type [Boolean] use_ssl
52
66
  attr_accessor :use_ssl
53
67
 
68
+ # For RESTORETYPE_MYSQL i.e.: Self signed certs
54
69
  # @type [Boolean] ssl_allow_invalid
55
70
  attr_accessor :ssl_allow_invalid
56
71
 
72
+ # For RESTORETYPE_MYSQL
57
73
  # @type [String] ssl_ca_file
58
74
  attr_accessor :ssl_ca_file
59
75
 
76
+ # For RESTORETYPE_MYSQL
60
77
  # @type [String] ssl_crt_file
61
78
  attr_accessor :ssl_crt_file
62
79
 
80
+ # For RESTORETYPE_MYSQL
63
81
  # @type [String] ssl_key_file
64
82
  attr_accessor :ssl_key_file
65
83
 
84
+ # For RESTORETYPE_MSSQL.
66
85
  # @type [Comet::MSSQLLoginArgs] ms_sql_connection
67
86
  attr_accessor :ms_sql_connection
68
87
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # RetentionPolicy is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class RetentionPolicy
14
14
 
15
+ # One of the RETENTIONMODE_ constants
15
16
  # @type [Number] mode
16
17
  attr_accessor :mode
17
18
 
@@ -30,6 +30,7 @@ module Comet
30
30
  # @type [Number] months
31
31
  attr_accessor :months
32
32
 
33
+ # 0: Sunday, 6: Saturday
33
34
  # @type [Number] week_offset
34
35
  attr_accessor :week_offset
35
36
 
@@ -33,6 +33,7 @@ module Comet
33
33
  # @type [String] s3custom_region
34
34
  attr_accessor :s3custom_region
35
35
 
36
+ # If true, use legacy v2 signing. If false (default), use modern v4 signing
36
37
  # @type [Boolean] s3uses_v2signing
37
38
  attr_accessor :s3uses_v2signing
38
39
 
@@ -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
- # @type [String] mtime
28
- attr_accessor :mtime
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
- # @type [String] atime
31
- attr_accessor :atime
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
- # @type [String] ctime
34
- attr_accessor :ctime
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
- @mtime = ''
52
- @atime = ''
53
- @ctime = ''
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
- @mtime = v
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
- @atime = v
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
- @ctime = v
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
- ret['mode'] = @mode
116
- ret['mtime'] = @mtime
117
- ret['atime'] = @atime
118
- ret['ctime'] = @ctime
119
- ret['size'] = @size
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
@@ -12,6 +12,7 @@ module Comet
12
12
  # SearchSnapshotsResponse is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class SearchSnapshotsResponse
14
14
 
15
+ # If the operation was successful, the status will be in the 200-299 range.
15
16
  # @type [Number] status
16
17
  attr_accessor :status
17
18
 
@@ -21,9 +21,12 @@ module Comet
21
21
  # @type [Number] encryption_key_format
22
22
  attr_accessor :encryption_key_format
23
23
 
24
+ # One of the COMPRESS_LVL_ constants
24
25
  # @type [Number] compression
25
26
  attr_accessor :compression
26
27
 
28
+ # The jobs database is often the largest component of the Server Self-Backup archive. By excluding
29
+ # it, you could run the Server Self-Backup more often.
27
30
  # @type [Boolean] exclude_jobs_db
28
31
  attr_accessor :exclude_jobs_db
29
32
 
@@ -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
 
@@ -30,9 +31,12 @@ module Comet
30
31
  # @type [Number] encryption_key_format
31
32
  attr_accessor :encryption_key_format
32
33
 
34
+ # One of the COMPRESS_LVL_ constants
33
35
  # @type [Number] compression
34
36
  attr_accessor :compression
35
37
 
38
+ # The jobs database is often the largest component of the Server Self-Backup archive. By excluding
39
+ # it, you could run the Server Self-Backup more often.
36
40
  # @type [Boolean] exclude_jobs_db
37
41
  attr_accessor :exclude_jobs_db
38
42
 
@@ -24,12 +24,18 @@ module Comet
24
24
  # @type [Comet::ConstellationRoleOptions] constellation_role
25
25
  attr_accessor :constellation_role
26
26
 
27
+ # This field is defined for compatibility with 17.x.x versions of Comet Server. Do not rely on this
28
+ # field. In Comet 23.2.x, if this field is defined, it is imported into the replacement
29
+ # 'ConstellationRole' field under the assumption that you are upgrading this Comet Server from a
30
+ # 17.x.x version. In Comet 23.3.x and later, this field is ignored and will not be respected during
31
+ # the import process.
27
32
  # @type [Comet::ConstellationRoleOptions] constellation_role__legacy
28
33
  attr_accessor :constellation_role__legacy
29
34
 
30
35
  # @type [Comet::EmailOptions] email
31
36
  attr_accessor :email
32
37
 
38
+ # An array of GUIDs that can enable additional early-access functionality
33
39
  # @type [Array<String>] experimental_options
34
40
  attr_accessor :experimental_options
35
41
 
@@ -42,18 +48,22 @@ module Comet
42
48
  # @type [Comet::LicenseOptions] license
43
49
  attr_accessor :license
44
50
 
51
+ # Configure ip, port, and SSL settings for this self-hosted Comet Server.
45
52
  # @type [Array<Comet::HTTPConnectorOptions>] listen_addresses
46
53
  attr_accessor :listen_addresses
47
54
 
55
+ # Tenants
48
56
  # @type [Hash{String => Comet::Organization}] organizations
49
57
  attr_accessor :organizations
50
58
 
51
59
  # @type [Array<Comet::PSAConfig>] psaconfigs
52
60
  attr_accessor :psaconfigs
53
61
 
62
+ # Automatically create backup zip files of this Comet Server's configuration
54
63
  # @type [Comet::SelfBackupOptions] self_backup
55
64
  attr_accessor :self_backup
56
65
 
66
+ # Control how long admin accounts can remain logged in to the Comet Server web interface
57
67
  # @type [Comet::SessionOptions] session_settings
58
68
  attr_accessor :session_settings
59
69
 
@@ -63,12 +73,18 @@ module Comet
63
73
  # @type [Comet::StorageRoleOptions] storage_role
64
74
  attr_accessor :storage_role
65
75
 
76
+ # If true, the X-Forwarded-For header will be trusted for the purposes of IP allowlisting. This
77
+ # should only be enabled when you explicitly configure Comet Server behind a reverse proxy,
78
+ # otherwise it could allow malicious users to bypass the IP allowlist.
66
79
  # @type [Boolean] trust_xforwarded_for
67
80
  attr_accessor :trust_xforwarded_for
68
81
 
69
82
  # @type [Hash{String => Comet::WebhookOption}] webhook_options
70
83
  attr_accessor :webhook_options
71
84
 
85
+ # @type [Hash{String => Comet::FileOption}] audit_file_options
86
+ attr_accessor :audit_file_options
87
+
72
88
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
73
89
  attr_accessor :unknown_json_fields
74
90
 
@@ -95,6 +111,7 @@ module Comet
95
111
  @software_build_role = Comet::SoftwareBuildRoleOptions.new
96
112
  @storage_role = Comet::StorageRoleOptions.new
97
113
  @webhook_options = {}
114
+ @audit_file_options = {}
98
115
  @unknown_json_fields = {}
99
116
  end
100
117
 
@@ -217,6 +234,16 @@ module Comet
217
234
  @webhook_options[k1].from_hash(v1)
218
235
  end
219
236
  end
237
+ when 'AuditFileOptions'
238
+ @audit_file_options = {}
239
+ if v.nil?
240
+ @audit_file_options = {}
241
+ else
242
+ v.each do |k1, v1|
243
+ @audit_file_options[k1] = Comet::FileOption.new
244
+ @audit_file_options[k1].from_hash(v1)
245
+ end
246
+ end
220
247
  else
221
248
  @unknown_json_fields[k] = v
222
249
  end
@@ -249,6 +276,7 @@ module Comet
249
276
  ret['StorageRole'] = @storage_role
250
277
  ret['TrustXForwardedFor'] = @trust_xforwarded_for
251
278
  ret['WebhookOptions'] = @webhook_options
279
+ ret['AuditFileOptions'] = @audit_file_options
252
280
  @unknown_json_fields.each do |k, v|
253
281
  ret[k] = v
254
282
  end
@@ -18,9 +18,13 @@ module Comet
18
18
  # @type [String] product_name
19
19
  attr_accessor :product_name
20
20
 
21
+ # If true, this Comet Server has an image configured for its main logo. You can access it from the
22
+ # /gen/logo.img endpoint. If false, this Comet Server has text configured for its main logo.
21
23
  # @type [Boolean] has_image
22
24
  attr_accessor :has_image
23
25
 
26
+ # A value that will change if the branding image (/gen/logo.img) changes. You can use this as a
27
+ # cache key.
24
28
  # @type [String] image_etag
25
29
  attr_accessor :image_etag
26
30
 
@@ -28,6 +28,7 @@ module Comet
28
28
  attr_accessor :software_build_role
29
29
 
30
30
  # @type [Boolean] constellation_role__legacy
31
+ # @deprecated This member has been deprecated since Comet version 18.2.0 "Overseer Role" was the old name for the Constellation Role. This field is a duplicate of ConstellationRole for backward compatibility with earlier API consumers.
31
32
  attr_accessor :constellation_role__legacy
32
33
 
33
34
  # @type [Boolean] constellation_role
@@ -36,15 +37,22 @@ module Comet
36
37
  # @type [Array<String>] experimental_options
37
38
  attr_accessor :experimental_options
38
39
 
40
+ # Unix timestamp, in seconds.
39
41
  # @type [Number] server_start_time
40
42
  attr_accessor :server_start_time
41
43
 
44
+ # A GUID that was randomly generated when this Comet Server started up. You can check this value to
45
+ # see if the Comet Server has restarted.
42
46
  # @type [String] server_start_hash
43
47
  attr_accessor :server_start_hash
44
48
 
49
+ # The current time on the Comet Server host machine. Unix timestamp, in seconds. You can check this
50
+ # value to see if clock drift is occuring.
45
51
  # @type [Number] current_time
46
52
  attr_accessor :current_time
47
53
 
54
+ # A hash derived from the Comet Server's serial number. You can check this value to see if two Comet
55
+ # Server endpoints point to an identical server.
48
56
  # @type [String] server_license_hash
49
57
  attr_accessor :server_license_hash
50
58
 
@@ -12,6 +12,7 @@ module Comet
12
12
  # SessionKeyRegeneratedResponse is a typed class wrapper around the underlying Comet Server API data structure.
13
13
  class SessionKeyRegeneratedResponse
14
14
 
15
+ # If the operation was successful, the status will be in the 200-299 range.
15
16
  # @type [Number] status
16
17
  attr_accessor :status
17
18
 
@@ -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,21 +18,29 @@ 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
+ # One of the DESTINATION_SFTP_AUTHMODE_ constants
24
26
  # @type [Number] sftpauth_mode
25
27
  attr_accessor :sftpauth_mode
26
28
 
29
+ # For use with DESTINATION_SFTP_AUTHMODE_PASSWORD only: the SSH password to connect with
27
30
  # @type [String] sftppassword
28
31
  attr_accessor :sftppassword
29
32
 
33
+ # For use with DESTINATION_SFTP_AUTHMODE_PRIVATEKEY only: the SSH private key to connect with, in
34
+ # OpenSSH format.
30
35
  # @type [String] sftpprivate_key
31
36
  attr_accessor :sftpprivate_key
32
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).
33
40
  # @type [Boolean] sftpcustom_auth__use_known_hosts_file
34
41
  attr_accessor :sftpcustom_auth__use_known_hosts_file
35
42
 
43
+ # If SFTPCustomAuth_UseKnownHostFile is true, the path to the SSH known_hosts file.
36
44
  # @type [String] sftpcustom_auth__known_hosts_file
37
45
  attr_accessor :sftpcustom_auth__known_hosts_file
38
46