comet_backup_ruby_sdk 1.14.0 → 1.15.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 (181) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -0
  3. data/.rubocop.yml +0 -0
  4. data/CHANGELOG.md +6 -0
  5. data/Gemfile.lock +0 -0
  6. data/RELEASING.md +0 -0
  7. data/comet_backup_ruby_sdk.gemspec +1 -1
  8. data/lib/comet/comet_server.rb +49 -10
  9. data/lib/comet/definitions.rb +37 -4
  10. data/lib/{models/wasabi_virtual_storage_role_settings.rb → comet/models/amazon_awsvirtual_storage_role_settings.rb} +2 -2
  11. data/lib/comet/models/remote_server_address.rb +21 -0
  12. data/lib/comet/models/remote_storage_option.rb +21 -0
  13. data/lib/{models → comet/models}/s3generic_virtual_storage_role.rb +0 -0
  14. metadata +4 -171
  15. data/lib/api_response_error.rb +0 -27
  16. data/lib/comet_server.rb +0 -3785
  17. data/lib/definitions.rb +0 -710
  18. data/lib/models/add_bucket_response_message.rb +0 -102
  19. data/lib/models/admin_account_properties_response.rb +0 -91
  20. data/lib/models/admin_email_options.rb +0 -84
  21. data/lib/models/admin_resource_response.rb +0 -93
  22. data/lib/models/admin_security_options.rb +0 -177
  23. data/lib/models/admin_u2fregistration.rb +0 -93
  24. data/lib/models/admin_user_permissions.rb +0 -106
  25. data/lib/models/admin_web_authn_registration.rb +0 -121
  26. data/lib/models/allowed_admin_user.rb +0 -214
  27. data/lib/models/available_download.rb +0 -90
  28. data/lib/models/azure_destination_location.rb +0 -111
  29. data/lib/models/b2destination_location.rb +0 -130
  30. data/lib/models/b2storage_extra_info.rb +0 -81
  31. data/lib/models/b2transaction_totals.rb +0 -93
  32. data/lib/models/b2virtual_storage_role_settings.rb +0 -99
  33. data/lib/models/backup_job_advanced_options.rb +0 -117
  34. data/lib/models/backup_job_detail.rb +0 -328
  35. data/lib/models/backup_job_progress.rb +0 -111
  36. data/lib/models/backup_rule_config.rb +0 -233
  37. data/lib/models/backup_rule_event_triggers.rb +0 -82
  38. data/lib/models/branding_options.rb +0 -335
  39. data/lib/models/branding_properties.rb +0 -293
  40. data/lib/models/browse_disk_drives_response.rb +0 -99
  41. data/lib/models/browse_edbresponse.rb +0 -99
  42. data/lib/models/browse_hvresponse.rb +0 -99
  43. data/lib/models/browse_office_365list_virtual_accounts_response.rb +0 -99
  44. data/lib/models/browse_office_365objects_response.rb +0 -99
  45. data/lib/models/browse_sqlserver_response.rb +0 -100
  46. data/lib/models/browse_vssresponse.rb +0 -99
  47. data/lib/models/bucket_properties.rb +0 -110
  48. data/lib/models/bucket_usage_info.rb +0 -97
  49. data/lib/models/comet_apiresponse_message.rb +0 -84
  50. data/lib/models/comet_destination_location.rb +0 -93
  51. data/lib/models/constellation_check_report.rb +0 -99
  52. data/lib/models/constellation_stats.rb +0 -102
  53. data/lib/models/constellation_status_apiresponse.rb +0 -114
  54. data/lib/models/content_measurement.rb +0 -99
  55. data/lib/models/content_measurement_component.rb +0 -91
  56. data/lib/models/create_group_policy_response.rb +0 -93
  57. data/lib/models/custom_remote_bucket_settings.rb +0 -75
  58. data/lib/models/days_of_week_config.rb +0 -108
  59. data/lib/models/default_email_report_policy.rb +0 -87
  60. data/lib/models/default_source_with_osrestriction.rb +0 -83
  61. data/lib/models/destination_config.rb +0 -562
  62. data/lib/models/destination_location.rb +0 -421
  63. data/lib/models/destination_statistics.rb +0 -115
  64. data/lib/models/device_config.rb +0 -124
  65. data/lib/models/disk_drive.rb +0 -180
  66. data/lib/models/dispatcher_admin_sources_response.rb +0 -100
  67. data/lib/models/dispatcher_stored_objects_response.rb +0 -99
  68. data/lib/models/dispatcher_vault_snapshots_response.rb +0 -99
  69. data/lib/models/dispatcher_windisk_snapshot_response.rb +0 -99
  70. data/lib/models/edbfile_info.rb +0 -99
  71. data/lib/models/email_options.rb +0 -153
  72. data/lib/models/email_report_config.rb +0 -98
  73. data/lib/models/email_report_generated_preview.rb +0 -136
  74. data/lib/models/external_ldapauthentication_source_settings.rb +0 -135
  75. data/lib/models/extra_file_exclusion.rb +0 -90
  76. data/lib/models/ftpdestination_location.rb +0 -141
  77. data/lib/models/get_group_policy_response.rb +0 -101
  78. data/lib/models/get_profile_and_hash_response_message.rb +0 -101
  79. data/lib/models/get_profile_hash_response_message.rb +0 -93
  80. data/lib/models/group_policy.rb +0 -98
  81. data/lib/models/hour_sched_config.rb +0 -84
  82. data/lib/models/hyper_vmachine_info.rb +0 -84
  83. data/lib/models/install_creds.rb +0 -99
  84. data/lib/models/install_token.rb +0 -117
  85. data/lib/models/install_token_response.rb +0 -92
  86. data/lib/models/job_entry.rb +0 -94
  87. data/lib/models/live_user_connection.rb +0 -149
  88. data/lib/models/local_destination_location.rb +0 -102
  89. data/lib/models/mac_oscode_sign_properties.rb +0 -197
  90. data/lib/models/mongo_dbconnection.rb +0 -230
  91. data/lib/models/mssqlconnection.rb +0 -120
  92. data/lib/models/my_sqlconnection.rb +0 -141
  93. data/lib/models/new_bucket_detail.rb +0 -84
  94. data/lib/models/news_entry.rb +0 -93
  95. data/lib/models/office_365connection.rb +0 -131
  96. data/lib/models/office_365credential.rb +0 -111
  97. data/lib/models/office_365custom_setting.rb +0 -133
  98. data/lib/models/office_365custom_setting_v2.rb +0 -108
  99. data/lib/models/office_365mixed_virtual_account.rb +0 -211
  100. data/lib/models/office_365object_info.rb +0 -118
  101. data/lib/models/organization.rb +0 -151
  102. data/lib/models/organization_response.rb +0 -101
  103. data/lib/models/osinfo.rb +0 -99
  104. data/lib/models/partition.rb +0 -172
  105. data/lib/models/private_branding_properties.rb +0 -227
  106. data/lib/models/protected_item_engine_type_policy.rb +0 -88
  107. data/lib/models/public_branding_properties.rb +0 -132
  108. data/lib/models/register_office_application_begin_response.rb +0 -93
  109. data/lib/models/register_office_application_check_response.rb +0 -100
  110. data/lib/models/remote_server_address.rb +0 -167
  111. data/lib/models/remote_storage_option.rb +0 -188
  112. data/lib/models/replicator_state_apiresponse.rb +0 -174
  113. data/lib/models/request_storage_vault_response_message.rb +0 -93
  114. data/lib/models/restore_job_advanced_options.rb +0 -131
  115. data/lib/models/retention_policy.rb +0 -90
  116. data/lib/models/retention_range.rb +0 -138
  117. data/lib/models/s3destination_location.rb +0 -123
  118. data/lib/models/schedule_config.rb +0 -131
  119. data/lib/models/search_clause.rb +0 -119
  120. data/lib/models/self_backup_statistics.rb +0 -108
  121. data/lib/models/server_config_options_branding_fragment.rb +0 -74
  122. data/lib/models/server_config_options_software_build_role_fragment.rb +0 -74
  123. data/lib/models/server_meta_branding_properties.rb +0 -144
  124. data/lib/models/server_meta_version_info.rb +0 -261
  125. data/lib/models/session_key_regenerated_response.rb +0 -102
  126. data/lib/models/sftpdestination_location.rb +0 -135
  127. data/lib/models/size_measurement.rb +0 -93
  128. data/lib/models/software_build_role_options.rb +0 -78
  129. data/lib/models/software_update_news_response.rb +0 -109
  130. data/lib/models/source_basic_info.rb +0 -101
  131. data/lib/models/source_config.rb +0 -202
  132. data/lib/models/source_include_pattern.rb +0 -84
  133. data/lib/models/source_statistics.rb +0 -82
  134. data/lib/models/spanned_destination_location.rb +0 -87
  135. data/lib/models/spanned_storage_extra_info.rb +0 -81
  136. data/lib/models/sshconnection.rb +0 -126
  137. data/lib/models/stat_result.rb +0 -111
  138. data/lib/models/storage_free_space_info.rb +0 -110
  139. data/lib/models/storage_vault_provider_policy.rb +0 -88
  140. data/lib/models/stored_object.rb +0 -238
  141. data/lib/models/streamable_event.rb +0 -92
  142. data/lib/models/swift_destination_location.rb +0 -209
  143. data/lib/models/test_response.rb +0 -90
  144. data/lib/models/totp_regenerated_response.rb +0 -111
  145. data/lib/models/u2fregister_request.rb +0 -85
  146. data/lib/models/u2fregistered_key.rb +0 -94
  147. data/lib/models/u2fregistration_challenge_response.rb +0 -133
  148. data/lib/models/u2fsign_request.rb +0 -109
  149. data/lib/models/u2fsign_response.rb +0 -103
  150. data/lib/models/uninstall_config.rb +0 -78
  151. data/lib/models/update_campaign_device_status.rb +0 -75
  152. data/lib/models/update_campaign_options.rb +0 -113
  153. data/lib/models/update_campaign_properties.rb +0 -128
  154. data/lib/models/update_campaign_status.rb +0 -143
  155. data/lib/models/update_campaign_status_device_entry.rb +0 -93
  156. data/lib/models/user_custom_email_settings.rb +0 -81
  157. data/lib/models/user_on_server.rb +0 -84
  158. data/lib/models/user_policy.rb +0 -339
  159. data/lib/models/user_profile_config.rb +0 -349
  160. data/lib/models/user_profile_fragment.rb +0 -75
  161. data/lib/models/vault_snapshot.rb +0 -99
  162. data/lib/models/vmdksnapshot_view_options.rb +0 -90
  163. data/lib/models/vsscomponent.rb +0 -99
  164. data/lib/models/vsswriter_info.rb +0 -90
  165. data/lib/models/web_authn_authenticator_selection.rb +0 -96
  166. data/lib/models/web_authn_credential.rb +0 -105
  167. data/lib/models/web_authn_credential_assertion.rb +0 -74
  168. data/lib/models/web_authn_credential_descriptor.rb +0 -101
  169. data/lib/models/web_authn_credential_entity.rb +0 -86
  170. data/lib/models/web_authn_credential_parameter.rb +0 -84
  171. data/lib/models/web_authn_public_key_credential_creation_options.rb +0 -172
  172. data/lib/models/web_authn_public_key_credential_request_options.rb +0 -140
  173. data/lib/models/web_authn_registration_challenge_response.rb +0 -101
  174. data/lib/models/web_authn_relying_party_entity.rb +0 -95
  175. data/lib/models/web_authn_sign_request.rb +0 -83
  176. data/lib/models/web_authn_sign_response.rb +0 -84
  177. data/lib/models/web_authn_user_entity.rb +0 -105
  178. data/lib/models/web_interface_branding_properties.rb +0 -108
  179. data/lib/models/webhook_option.rb +0 -107
  180. data/lib/models/win_smbauth.rb +0 -102
  181. data/lib/models/windows_code_sign_properties.rb +0 -147
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0a833332b5cd52d9b4e3758fcddb3b9373df704be059cf7111590c713d892969
4
- data.tar.gz: 54592e78d1caff12b0bb1c1bc45970732b18a9be8512a3d20df834bc2d2cf421
3
+ metadata.gz: 856c001592ef3dad994ed3d321f8fa68e9f01829770a33117f688a4d22312801
4
+ data.tar.gz: b31ac9bbebfd4b3696d079b15ede4fcab8c7a927e087f84651861714a38a8172
5
5
  SHA512:
6
- metadata.gz: abaab4397fa41629c8c6f2aafa31729265b1d9d3563cce1dcf4153042468e68c2d8e861c08ef2d7dafc7ddf2929a5a183db9fbe967121abb40b836cb2a7509df
7
- data.tar.gz: 7c378053ecaee1576a4ea609a233c88e97b4122a8e46063f35ceea1cb07aac898d191c6a2e7e9020388ec75427ede2d4799352b8c942f1cf701b28c25b811af6
6
+ metadata.gz: 1cf63478b5051ef36b844cbc82c8f20344e27a12e73898aec44e7f31f09a1cbd07e9d17ab58c0d1685de10716467d4643d90662208a331c0a3ec99eb0c96cfa2
7
+ data.tar.gz: ee74bad01ce9338fa8536c02a38a66e9d8838b1dfe5560b1180163f978a81a75a8c438b885a95f6c4049d15cf26908ca60146b9b51689da4e5ef12f18454c24b
data/.gitignore CHANGED
File without changes
data/.rubocop.yml CHANGED
File without changes
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 2022-06-03 v1.15.0
4
+ - Based on 22.5.0
5
+ - Add `COMPRESS_*` compression settings for Self-Backups
6
+ - Add `RESTOREARCHIVEFORMAT_TARZSTD` for using the tar.zst archive restore format
7
+ - Add `target_organization` parameter to support cross-tenant operations in some API methods
8
+
3
9
  ## 2022-05-25 v1.14.0
4
10
  - Based on 22.3.7
5
11
  - Add new `REMOTESERVER_S3_GENERIC` `RemoteServerType`
data/Gemfile.lock CHANGED
File without changes
data/RELEASING.md CHANGED
File without changes
@@ -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 = '1.14.0'
15
+ spec.version = '1.15.0'
16
16
  spec.authors = ['Comet Licensing Ltd.']
17
17
  spec.email = ['hello@cometbackup.com']
18
18
 
@@ -314,8 +314,9 @@ module Comet
314
314
  # @param [String] target_password New account password
315
315
  # @param [Number] store_recovery_code (Optional) If set to 1, store and keep a password recovery code for the generated user (>= 18.3.9)
316
316
  # @param [Number] require_password_change (Optional) If set to 1, require to reset password at the first login for the generated user (>= 20.3.4)
317
+ # @param [String] target_organization (Optional) If present, create the user account on behalf of another organization. Only allowed for administrator accounts in the top-level organization. (>= 22.3.7)
317
318
  # @return [Comet::CometAPIResponseMessage]
318
- def admin_add_user(target_user, target_password, store_recovery_code = nil, require_password_change = nil)
319
+ def admin_add_user(target_user, target_password, store_recovery_code = nil, require_password_change = nil, target_organization = nil)
319
320
  submit_params = {}
320
321
  raise TypeError, "'target_user' expected String, got #{target_user.class}" unless target_user.is_a? String
321
322
 
@@ -333,6 +334,11 @@ module Comet
333
334
 
334
335
  submit_params['RequirePasswordChange'] = require_password_change
335
336
  end
337
+ unless target_organization.nil?
338
+ raise TypeError, "'target_organization' expected String, got #{target_organization.class}" unless target_organization.is_a? String
339
+
340
+ submit_params['TargetOrganization'] = target_organization
341
+ end
336
342
 
337
343
  body = perform_request('api/v1/admin/add-user', submit_params)
338
344
  json_body = JSON.parse body
@@ -352,8 +358,9 @@ module Comet
352
358
  #
353
359
  # @param [String] target_user New account username
354
360
  # @param [Comet::UserProfileConfig] profile_data New account profile
361
+ # @param [String] target_organization (Optional) If present, create the user account on behalf of another organization. Only allowed for administrator accounts in the top-level organization. (>= 22.3.7)
355
362
  # @return [Comet::CometAPIResponseMessage]
356
- def admin_add_user_from_profile(target_user, profile_data)
363
+ def admin_add_user_from_profile(target_user, profile_data, target_organization = nil)
357
364
  submit_params = {}
358
365
  raise TypeError, "'target_user' expected String, got #{target_user.class}" unless target_user.is_a? String
359
366
 
@@ -361,6 +368,11 @@ module Comet
361
368
  raise TypeError, "'profile_data' expected Comet::UserProfileConfig, got #{profile_data.class}" unless profile_data.is_a? Comet::UserProfileConfig
362
369
 
363
370
  submit_params['ProfileData'] = profile_data.to_json
371
+ unless target_organization.nil?
372
+ raise TypeError, "'target_organization' expected String, got #{target_organization.class}" unless target_organization.is_a? String
373
+
374
+ submit_params['TargetOrganization'] = target_organization
375
+ end
364
376
 
365
377
  body = perform_request('api/v1/admin/add-user-from-profile', submit_params)
366
378
  json_body = JSON.parse body
@@ -3106,13 +3118,22 @@ module Comet
3106
3118
  # AdminPoliciesList
3107
3119
  #
3108
3120
  # List all policy object names.
3121
+ # For the top-level organization, the API result includes all policies for all organizations, unless the TargetOrganization parameter is present.
3109
3122
  #
3110
3123
  # You must supply administrator authentication credentials to use this API.
3111
3124
  # This API requires the Auth Role to be enabled.
3112
3125
  #
3126
+ # @param [String] target_organization (Optional) If present, list the policies belonging to another organization. Only allowed for administrator accounts in the top-level organization. (>= 22.3.7)
3113
3127
  # @return [Hash{String => String}]
3114
- def admin_policies_list
3115
- body = perform_request('api/v1/admin/policies/list')
3128
+ def admin_policies_list(target_organization = nil)
3129
+ submit_params = {}
3130
+ unless target_organization.nil?
3131
+ raise TypeError, "'target_organization' expected String, got #{target_organization.class}" unless target_organization.is_a? String
3132
+
3133
+ submit_params['TargetOrganization'] = target_organization
3134
+ end
3135
+
3136
+ body = perform_request('api/v1/admin/policies/list', submit_params)
3116
3137
  json_body = JSON.parse body
3117
3138
  check_status json_body
3118
3139
  ret = {}
@@ -3131,13 +3152,22 @@ module Comet
3131
3152
  # AdminPoliciesListFull
3132
3153
  #
3133
3154
  # Get all policy objects.
3155
+ # For the top-level organization, the API result includes all policies for all organizations, unless the TargetOrganization parameter is present.
3134
3156
  #
3135
3157
  # You must supply administrator authentication credentials to use this API.
3136
3158
  # This API requires the Auth Role to be enabled.
3137
3159
  #
3160
+ # @param [String] target_organization (Optional) If present, list the policies belonging to another organization. Only allowed for administrator accounts in the top-level organization. (>= 22.3.7)
3138
3161
  # @return [Hash{String => Comet::GroupPolicy}]
3139
- def admin_policies_list_full
3140
- body = perform_request('api/v1/admin/policies/list-full')
3162
+ def admin_policies_list_full(target_organization = nil)
3163
+ submit_params = {}
3164
+ unless target_organization.nil?
3165
+ raise TypeError, "'target_organization' expected String, got #{target_organization.class}" unless target_organization.is_a? String
3166
+
3167
+ submit_params['TargetOrganization'] = target_organization
3168
+ end
3169
+
3170
+ body = perform_request('api/v1/admin/policies/list-full', submit_params)
3141
3171
  json_body = JSON.parse body
3142
3172
  check_status json_body
3143
3173
  ret = {}
@@ -3272,6 +3302,7 @@ module Comet
3272
3302
  # Request a new Storage Vault on behalf of a user.
3273
3303
  # This action does not respect the "Prevent creating new Storage Vaults (via Request)" policy setting. New Storage Vaults can be requested regardless of the policy setting.
3274
3304
  # Prior to Comet 19.8.0, the response type was CometAPIResponseMessage (i.e. no DestinationID field in response).
3305
+ # The StorageProvider must exist for the target user account's organization.
3275
3306
  #
3276
3307
  # You must supply administrator authentication credentials to use this API.
3277
3308
  # This API requires the Auth Role to be enabled.
@@ -3311,9 +3342,17 @@ module Comet
3311
3342
  # You must supply administrator authentication credentials to use this API.
3312
3343
  # This API requires the Auth Role to be enabled.
3313
3344
  #
3345
+ # @param [String] target_organization (Optional) If present, list the requestable Storage Vault options belonging to another organization. Only allowed for administrator accounts in the top-level organization. (>= 22.3.7)
3314
3346
  # @return [Hash{String => String}]
3315
- def admin_request_storage_vault_providers
3316
- body = perform_request('api/v1/admin/request-storage-vault-providers')
3347
+ def admin_request_storage_vault_providers(target_organization = nil)
3348
+ submit_params = {}
3349
+ unless target_organization.nil?
3350
+ raise TypeError, "'target_organization' expected String, got #{target_organization.class}" unless target_organization.is_a? String
3351
+
3352
+ submit_params['TargetOrganization'] = target_organization
3353
+ end
3354
+
3355
+ body = perform_request('api/v1/admin/request-storage-vault-providers', submit_params)
3317
3356
  json_body = JSON.parse body
3318
3357
  check_status json_body
3319
3358
  ret = {}
@@ -3730,7 +3769,7 @@ module Comet
3730
3769
 
3731
3770
  ret_error = Comet::CometAPIResponseMessage.new
3732
3771
  ret_error.from_hash(obj)
3733
- raise Comet::APIResponseError, ret_error
3772
+ raise Comet::APIResponseError.new(ret_error)
3734
3773
  end
3735
3774
 
3736
3775
  # Perform a synchronous HTTP request.
@@ -3767,7 +3806,7 @@ module Comet
3767
3806
 
3768
3807
  form_params = []
3769
3808
  params.each do |k, v|
3770
- form_params.append [k, v, { :filename => k }]
3809
+ form_params.append [k, v, {:filename => k}]
3771
3810
  end
3772
3811
  req.set_form(form_params, 'multipart/form-data')
3773
3812
 
@@ -235,6 +235,9 @@ module Comet
235
235
  # RestoreArchiveFormat: SquashFS container
236
236
  RESTOREARCHIVEFORMAT_SQFS = 3
237
237
 
238
+ # RestoreArchiveFormat:
239
+ RESTOREARCHIVEFORMAT_TARZSTD = 4
240
+
238
241
  # RetentionMode: If this mode is set in a RetentionPolicy, then RetentionPolicy.Ranges should be ignored.
239
242
  RETENTIONMODE_KEEP_EVERYTHING = 801
240
243
 
@@ -465,15 +468,15 @@ module Comet
465
468
 
466
469
  DEFAULT_TIMEZONE = 'UTC'
467
470
 
468
- APPLICATION_VERSION = '22.3.5'
471
+ APPLICATION_VERSION = '22.5.0'
469
472
 
470
473
  APPLICATION_VERSION_MAJOR = 22
471
474
 
472
- APPLICATION_VERSION_MINOR = 3
475
+ APPLICATION_VERSION_MINOR = 5
473
476
 
474
- APPLICATION_VERSION_REVISION = 5
477
+ APPLICATION_VERSION_REVISION = 0
475
478
 
476
- RELEASE_CODENAME = 'Voyager'
479
+ RELEASE_CODENAME = 'Lysithea'
477
480
 
478
481
  ENCRYPTIONMETHOD_UNCONFIGURED = 0
479
482
 
@@ -652,6 +655,12 @@ module Comet
652
655
  # RemoteServerType:
653
656
  REMOTESERVER_CUSTOM = 'custom'
654
657
 
658
+ # RemoteServerType:
659
+ REMOTESERVER_S3_GENERIC = 's3'
660
+
661
+ # RemoteServerType:
662
+ REMOTESERVER_AWS = 'aws'
663
+
655
664
  LDAPSECURITYMETHOD_PLAIN = 'plain'
656
665
 
657
666
  LDAPSECURITYMETHOD_LDAPS = 'ldaps'
@@ -694,6 +703,30 @@ module Comet
694
703
  # StreamableEventType:
695
704
  SEVT__MAX = 4999
696
705
 
706
+ # CompressMode:
707
+ COMPRESS_INVALID = 0
708
+
709
+ # CompressMode:
710
+ COMPRESS_LVL_1 = 1
711
+
712
+ # CompressMode:
713
+ COMPRESS_LVL_2 = 2
714
+
715
+ # CompressMode:
716
+ COMPRESS_LVL_3 = 3
717
+
718
+ # CompressMode:
719
+ COMPRESS_LVL_4 = 4
720
+
721
+ # CompressMode:
722
+ COMPRESS_LVL_5 = 5
723
+
724
+ # CompressMode:
725
+ COMPRESS_MAX = COMPRESS_LVL_5
726
+
727
+ # CompressMode:
728
+ COMPRESS_DEFAULT = COMPRESS_LVL_4
729
+
697
730
  OFFICE365_REGION_PUBLIC = 'GlobalPublicCloud'
698
731
 
699
732
  OFFICE365_REGION_CHINA = 'ChinaCloud'
@@ -11,8 +11,8 @@ require 'json'
11
11
 
12
12
  module Comet
13
13
 
14
- # WasabiVirtualStorageRoleSettings is a typed class wrapper around the underlying Comet Server API data structure.
15
- class WasabiVirtualStorageRoleSettings
14
+ # AmazonAWSVirtualStorageRoleSettings is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class AmazonAWSVirtualStorageRoleSettings
16
16
 
17
17
  # @type [String] master_bucket
18
18
  attr_accessor :master_bucket
@@ -41,6 +41,13 @@ module Comet
41
41
  # @type [Comet::CustomRemoteBucketSettings] custom
42
42
  attr_accessor :custom
43
43
 
44
+ # @type [Comet::S3GenericVirtualStorageRole] s3
45
+ attr_accessor :s3
46
+
47
+ # Amazon AWS - Virtual Storage Role
48
+ # @type [Comet::AmazonAWSVirtualStorageRoleSettings] aws
49
+ attr_accessor :aws
50
+
44
51
  # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
45
52
  attr_accessor :unknown_json_fields
46
53
 
@@ -58,6 +65,8 @@ module Comet
58
65
  @b2 = Comet::B2VirtualStorageRoleSettings.new
59
66
  @wasabi = Comet::WasabiVirtualStorageRoleSettings.new
60
67
  @custom = Comet::CustomRemoteBucketSettings.new
68
+ @s3 = Comet::S3GenericVirtualStorageRole.new
69
+ @aws = Comet::AmazonAWSVirtualStorageRoleSettings.new
61
70
  @unknown_json_fields = {}
62
71
  end
63
72
 
@@ -106,6 +115,12 @@ module Comet
106
115
  when 'Custom'
107
116
  @custom = Comet::CustomRemoteBucketSettings.new
108
117
  @custom.from_hash(v)
118
+ when 'S3'
119
+ @s3 = Comet::S3GenericVirtualStorageRole.new
120
+ @s3.from_hash(v)
121
+ when 'AWS'
122
+ @aws = Comet::AmazonAWSVirtualStorageRoleSettings.new
123
+ @aws.from_hash(v)
109
124
  else
110
125
  @unknown_json_fields[k] = v
111
126
  end
@@ -138,6 +153,12 @@ module Comet
138
153
  unless @custom.nil?
139
154
  ret['Custom'] = @custom
140
155
  end
156
+ unless @s3.nil?
157
+ ret['S3'] = @s3
158
+ end
159
+ unless @aws.nil?
160
+ ret['AWS'] = @aws
161
+ end
141
162
  @unknown_json_fields.each do |k, v|
142
163
  ret[k] = v
143
164
  end
@@ -41,6 +41,13 @@ module Comet
41
41
  # @type [Comet::CustomRemoteBucketSettings] custom
42
42
  attr_accessor :custom
43
43
 
44
+ # @type [Comet::S3GenericVirtualStorageRole] s3
45
+ attr_accessor :s3
46
+
47
+ # Amazon AWS - Virtual Storage Role
48
+ # @type [Comet::AmazonAWSVirtualStorageRoleSettings] aws
49
+ attr_accessor :aws
50
+
44
51
  # @type [Boolean] storage_limit_enabled
45
52
  attr_accessor :storage_limit_enabled
46
53
 
@@ -67,6 +74,8 @@ module Comet
67
74
  @b2 = Comet::B2VirtualStorageRoleSettings.new
68
75
  @wasabi = Comet::WasabiVirtualStorageRoleSettings.new
69
76
  @custom = Comet::CustomRemoteBucketSettings.new
77
+ @s3 = Comet::S3GenericVirtualStorageRole.new
78
+ @aws = Comet::AmazonAWSVirtualStorageRoleSettings.new
70
79
  @storage_limit_bytes = 0
71
80
  @unknown_json_fields = {}
72
81
  end
@@ -116,6 +125,12 @@ module Comet
116
125
  when 'Custom'
117
126
  @custom = Comet::CustomRemoteBucketSettings.new
118
127
  @custom.from_hash(v)
128
+ when 'S3'
129
+ @s3 = Comet::S3GenericVirtualStorageRole.new
130
+ @s3.from_hash(v)
131
+ when 'AWS'
132
+ @aws = Comet::AmazonAWSVirtualStorageRoleSettings.new
133
+ @aws.from_hash(v)
119
134
  when 'StorageLimitEnabled'
120
135
  @storage_limit_enabled = v
121
136
  when 'StorageLimitBytes'
@@ -156,6 +171,12 @@ module Comet
156
171
  unless @custom.nil?
157
172
  ret['Custom'] = @custom
158
173
  end
174
+ unless @s3.nil?
175
+ ret['S3'] = @s3
176
+ end
177
+ unless @aws.nil?
178
+ ret['AWS'] = @aws
179
+ end
159
180
  ret['StorageLimitEnabled'] = @storage_limit_enabled
160
181
  ret['StorageLimitBytes'] = @storage_limit_bytes
161
182
  ret['RebrandStorage'] = @rebrand_storage
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: 1.14.0
4
+ version: 1.15.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: 2022-05-24 00:00:00.000000000 Z
11
+ date: 2022-06-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -83,7 +83,6 @@ files:
83
83
  - RELEASING.md
84
84
  - Rakefile
85
85
  - comet_backup_ruby_sdk.gemspec
86
- - lib/api_response_error.rb
87
86
  - lib/comet/api_response_error.rb
88
87
  - lib/comet/comet_server.rb
89
88
  - lib/comet/definitions.rb
@@ -96,6 +95,7 @@ files:
96
95
  - lib/comet/models/admin_user_permissions.rb
97
96
  - lib/comet/models/admin_web_authn_registration.rb
98
97
  - lib/comet/models/allowed_admin_user.rb
98
+ - lib/comet/models/amazon_awsvirtual_storage_role_settings.rb
99
99
  - lib/comet/models/available_download.rb
100
100
  - lib/comet/models/azure_destination_location.rb
101
101
  - lib/comet/models/b2destination_location.rb
@@ -187,6 +187,7 @@ files:
187
187
  - lib/comet/models/retention_policy.rb
188
188
  - lib/comet/models/retention_range.rb
189
189
  - lib/comet/models/s3destination_location.rb
190
+ - lib/comet/models/s3generic_virtual_storage_role.rb
190
191
  - lib/comet/models/schedule_config.rb
191
192
  - lib/comet/models/search_clause.rb
192
193
  - lib/comet/models/self_backup_statistics.rb
@@ -253,174 +254,6 @@ files:
253
254
  - lib/comet/models/win_smbauth.rb
254
255
  - lib/comet/models/windows_code_sign_properties.rb
255
256
  - lib/comet_backup_ruby_sdk.rb
256
- - lib/comet_server.rb
257
- - lib/definitions.rb
258
- - lib/models/add_bucket_response_message.rb
259
- - lib/models/admin_account_properties_response.rb
260
- - lib/models/admin_email_options.rb
261
- - lib/models/admin_resource_response.rb
262
- - lib/models/admin_security_options.rb
263
- - lib/models/admin_u2fregistration.rb
264
- - lib/models/admin_user_permissions.rb
265
- - lib/models/admin_web_authn_registration.rb
266
- - lib/models/allowed_admin_user.rb
267
- - lib/models/available_download.rb
268
- - lib/models/azure_destination_location.rb
269
- - lib/models/b2destination_location.rb
270
- - lib/models/b2storage_extra_info.rb
271
- - lib/models/b2transaction_totals.rb
272
- - lib/models/b2virtual_storage_role_settings.rb
273
- - lib/models/backup_job_advanced_options.rb
274
- - lib/models/backup_job_detail.rb
275
- - lib/models/backup_job_progress.rb
276
- - lib/models/backup_rule_config.rb
277
- - lib/models/backup_rule_event_triggers.rb
278
- - lib/models/branding_options.rb
279
- - lib/models/branding_properties.rb
280
- - lib/models/browse_disk_drives_response.rb
281
- - lib/models/browse_edbresponse.rb
282
- - lib/models/browse_hvresponse.rb
283
- - lib/models/browse_office_365list_virtual_accounts_response.rb
284
- - lib/models/browse_office_365objects_response.rb
285
- - lib/models/browse_sqlserver_response.rb
286
- - lib/models/browse_vssresponse.rb
287
- - lib/models/bucket_properties.rb
288
- - lib/models/bucket_usage_info.rb
289
- - lib/models/comet_apiresponse_message.rb
290
- - lib/models/comet_destination_location.rb
291
- - lib/models/constellation_check_report.rb
292
- - lib/models/constellation_stats.rb
293
- - lib/models/constellation_status_apiresponse.rb
294
- - lib/models/content_measurement.rb
295
- - lib/models/content_measurement_component.rb
296
- - lib/models/create_group_policy_response.rb
297
- - lib/models/custom_remote_bucket_settings.rb
298
- - lib/models/days_of_week_config.rb
299
- - lib/models/default_email_report_policy.rb
300
- - lib/models/default_source_with_osrestriction.rb
301
- - lib/models/destination_config.rb
302
- - lib/models/destination_location.rb
303
- - lib/models/destination_statistics.rb
304
- - lib/models/device_config.rb
305
- - lib/models/disk_drive.rb
306
- - lib/models/dispatcher_admin_sources_response.rb
307
- - lib/models/dispatcher_stored_objects_response.rb
308
- - lib/models/dispatcher_vault_snapshots_response.rb
309
- - lib/models/dispatcher_windisk_snapshot_response.rb
310
- - lib/models/edbfile_info.rb
311
- - lib/models/email_options.rb
312
- - lib/models/email_report_config.rb
313
- - lib/models/email_report_generated_preview.rb
314
- - lib/models/external_ldapauthentication_source_settings.rb
315
- - lib/models/extra_file_exclusion.rb
316
- - lib/models/ftpdestination_location.rb
317
- - lib/models/get_group_policy_response.rb
318
- - lib/models/get_profile_and_hash_response_message.rb
319
- - lib/models/get_profile_hash_response_message.rb
320
- - lib/models/group_policy.rb
321
- - lib/models/hour_sched_config.rb
322
- - lib/models/hyper_vmachine_info.rb
323
- - lib/models/install_creds.rb
324
- - lib/models/install_token.rb
325
- - lib/models/install_token_response.rb
326
- - lib/models/job_entry.rb
327
- - lib/models/live_user_connection.rb
328
- - lib/models/local_destination_location.rb
329
- - lib/models/mac_oscode_sign_properties.rb
330
- - lib/models/mongo_dbconnection.rb
331
- - lib/models/mssqlconnection.rb
332
- - lib/models/my_sqlconnection.rb
333
- - lib/models/new_bucket_detail.rb
334
- - lib/models/news_entry.rb
335
- - lib/models/office_365connection.rb
336
- - lib/models/office_365credential.rb
337
- - lib/models/office_365custom_setting.rb
338
- - lib/models/office_365custom_setting_v2.rb
339
- - lib/models/office_365mixed_virtual_account.rb
340
- - lib/models/office_365object_info.rb
341
- - lib/models/organization.rb
342
- - lib/models/organization_response.rb
343
- - lib/models/osinfo.rb
344
- - lib/models/partition.rb
345
- - lib/models/private_branding_properties.rb
346
- - lib/models/protected_item_engine_type_policy.rb
347
- - lib/models/public_branding_properties.rb
348
- - lib/models/register_office_application_begin_response.rb
349
- - lib/models/register_office_application_check_response.rb
350
- - lib/models/remote_server_address.rb
351
- - lib/models/remote_storage_option.rb
352
- - lib/models/replicator_state_apiresponse.rb
353
- - lib/models/request_storage_vault_response_message.rb
354
- - lib/models/restore_job_advanced_options.rb
355
- - lib/models/retention_policy.rb
356
- - lib/models/retention_range.rb
357
- - lib/models/s3destination_location.rb
358
- - lib/models/s3generic_virtual_storage_role.rb
359
- - lib/models/schedule_config.rb
360
- - lib/models/search_clause.rb
361
- - lib/models/self_backup_statistics.rb
362
- - lib/models/server_config_options_branding_fragment.rb
363
- - lib/models/server_config_options_software_build_role_fragment.rb
364
- - lib/models/server_meta_branding_properties.rb
365
- - lib/models/server_meta_version_info.rb
366
- - lib/models/session_key_regenerated_response.rb
367
- - lib/models/sftpdestination_location.rb
368
- - lib/models/size_measurement.rb
369
- - lib/models/software_build_role_options.rb
370
- - lib/models/software_update_news_response.rb
371
- - lib/models/source_basic_info.rb
372
- - lib/models/source_config.rb
373
- - lib/models/source_include_pattern.rb
374
- - lib/models/source_statistics.rb
375
- - lib/models/spanned_destination_location.rb
376
- - lib/models/spanned_storage_extra_info.rb
377
- - lib/models/sshconnection.rb
378
- - lib/models/stat_result.rb
379
- - lib/models/storage_free_space_info.rb
380
- - lib/models/storage_vault_provider_policy.rb
381
- - lib/models/stored_object.rb
382
- - lib/models/streamable_event.rb
383
- - lib/models/swift_destination_location.rb
384
- - lib/models/test_response.rb
385
- - lib/models/totp_regenerated_response.rb
386
- - lib/models/u2fregister_request.rb
387
- - lib/models/u2fregistered_key.rb
388
- - lib/models/u2fregistration_challenge_response.rb
389
- - lib/models/u2fsign_request.rb
390
- - lib/models/u2fsign_response.rb
391
- - lib/models/uninstall_config.rb
392
- - lib/models/update_campaign_device_status.rb
393
- - lib/models/update_campaign_options.rb
394
- - lib/models/update_campaign_properties.rb
395
- - lib/models/update_campaign_status.rb
396
- - lib/models/update_campaign_status_device_entry.rb
397
- - lib/models/user_custom_email_settings.rb
398
- - lib/models/user_on_server.rb
399
- - lib/models/user_policy.rb
400
- - lib/models/user_profile_config.rb
401
- - lib/models/user_profile_fragment.rb
402
- - lib/models/vault_snapshot.rb
403
- - lib/models/vmdksnapshot_view_options.rb
404
- - lib/models/vsscomponent.rb
405
- - lib/models/vsswriter_info.rb
406
- - lib/models/wasabi_virtual_storage_role_settings.rb
407
- - lib/models/web_authn_authenticator_selection.rb
408
- - lib/models/web_authn_credential.rb
409
- - lib/models/web_authn_credential_assertion.rb
410
- - lib/models/web_authn_credential_descriptor.rb
411
- - lib/models/web_authn_credential_entity.rb
412
- - lib/models/web_authn_credential_parameter.rb
413
- - lib/models/web_authn_public_key_credential_creation_options.rb
414
- - lib/models/web_authn_public_key_credential_request_options.rb
415
- - lib/models/web_authn_registration_challenge_response.rb
416
- - lib/models/web_authn_relying_party_entity.rb
417
- - lib/models/web_authn_sign_request.rb
418
- - lib/models/web_authn_sign_response.rb
419
- - lib/models/web_authn_user_entity.rb
420
- - lib/models/web_interface_branding_properties.rb
421
- - lib/models/webhook_option.rb
422
- - lib/models/win_smbauth.rb
423
- - lib/models/windows_code_sign_properties.rb
424
257
  homepage: https://github.com/CometBackup/comet-ruby-sdk
425
258
  licenses:
426
259
  - MIT
@@ -1,27 +0,0 @@
1
- #!/usr/bin/env ruby --enable-frozen-string-literal
2
- #
3
- # Copyright (c) 2020-2022 Comet Licensing Ltd.
4
- # Please see the LICENSE file for usage information.
5
- #
6
- # SPDX-License-Identifier: MIT
7
- #
8
- # frozen_string_literal: true
9
-
10
- module Comet
11
-
12
- # APIResponseError is a custom exception class that wraps the Comet::CometAPIResponseMessage
13
- # type. These represent application-level error responses from the Comet Server API.
14
- # Network-level error responses should be caught using the Net::HTTP error types.
15
- class APIResponseError < StandardError
16
-
17
- # @type [Comet::CometAPIResponseMessage] The application-level error
18
- attr_reader :detail
19
-
20
- def initialize(carm)
21
- @detail = carm
22
-
23
- super("#{carm.message} (#{carm.status})")
24
- end
25
- end
26
-
27
- end