harbor1_client 0.1.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 (444) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +7 -0
  3. data/README.md +438 -0
  4. data/Rakefile +8 -0
  5. data/docs/AccessLog.md +13 -0
  6. data/docs/Action.md +8 -0
  7. data/docs/Action1.md +8 -0
  8. data/docs/AdminJobSchedule.md +8 -0
  9. data/docs/AdminJobScheduleObj.md +9 -0
  10. data/docs/BadRequestFormatedError.md +8 -0
  11. data/docs/BoolConfigItem.md +9 -0
  12. data/docs/CVEWhitelist.md +11 -0
  13. data/docs/CVEWhitelistItem.md +8 -0
  14. data/docs/ChartAPIError.md +8 -0
  15. data/docs/ChartInfoEntry.md +15 -0
  16. data/docs/ChartInfoList.md +7 -0
  17. data/docs/ChartMetadata.md +18 -0
  18. data/docs/ChartRepositoryApi.md +698 -0
  19. data/docs/ChartVersion.md +23 -0
  20. data/docs/ChartVersionDetails.md +13 -0
  21. data/docs/ChartVersions.md +7 -0
  22. data/docs/ComponentHealthStatus.md +10 -0
  23. data/docs/ComponentOverviewEntry.md +9 -0
  24. data/docs/Configurations.md +42 -0
  25. data/docs/ConfigurationsResponse.md +41 -0
  26. data/docs/ConfigurationsScanAllPolicy.md +9 -0
  27. data/docs/ConfigurationsScanAllPolicyParameter.md +8 -0
  28. data/docs/ConflictFormatedError.md +8 -0
  29. data/docs/Dependency.md +10 -0
  30. data/docs/DetailedTag.md +18 -0
  31. data/docs/DigitalSignature.md +9 -0
  32. data/docs/EmailServerSetting.md +13 -0
  33. data/docs/Endpoint.md +9 -0
  34. data/docs/FilterStyle.md +10 -0
  35. data/docs/ForbiddenChartAPIError.md +8 -0
  36. data/docs/GCResult.md +15 -0
  37. data/docs/GeneralInfo.md +20 -0
  38. data/docs/GeneralInfoClairVulnerabilityStatus.md +9 -0
  39. data/docs/HasAdminRole.md +8 -0
  40. data/docs/ImmutableTagRule.md +11 -0
  41. data/docs/InlineResponse200.md +8 -0
  42. data/docs/InputSecret.md +8 -0
  43. data/docs/InsufficientStorageChartAPIError.md +8 -0
  44. data/docs/IntegerConfigItem.md +9 -0
  45. data/docs/InternalChartAPIError.md +8 -0
  46. data/docs/IsDefault.md +8 -0
  47. data/docs/JobStatus.md +15 -0
  48. data/docs/Label.md +16 -0
  49. data/docs/LabelApi.md +191 -0
  50. data/docs/Labels.md +7 -0
  51. data/docs/LdapConf.md +15 -0
  52. data/docs/LdapFailedImportUsers.md +9 -0
  53. data/docs/LdapImportUsers.md +8 -0
  54. data/docs/LdapUsers.md +10 -0
  55. data/docs/Manifest.md +9 -0
  56. data/docs/Namespace.md +9 -0
  57. data/docs/NativeReportSummary.md +14 -0
  58. data/docs/NotFoundChartAPIError.md +8 -0
  59. data/docs/OverallHealthStatus.md +9 -0
  60. data/docs/Password.md +9 -0
  61. data/docs/Permission.md +9 -0
  62. data/docs/PingRegistry.md +14 -0
  63. data/docs/ProductsApi.md +8594 -0
  64. data/docs/Project.md +21 -0
  65. data/docs/ProjectMember.md +10 -0
  66. data/docs/ProjectMemberEntity.md +14 -0
  67. data/docs/ProjectMetadata.md +13 -0
  68. data/docs/ProjectReq.md +12 -0
  69. data/docs/ProjectScanner.md +8 -0
  70. data/docs/ProjectSummary.md +14 -0
  71. data/docs/ProjectSummaryQuota.md +9 -0
  72. data/docs/PutRegistry.md +14 -0
  73. data/docs/Quota.md +13 -0
  74. data/docs/QuotaApi.md +118 -0
  75. data/docs/QuotaRefObject.md +7 -0
  76. data/docs/QuotaSwitcher.md +8 -0
  77. data/docs/QuotaUpdateReq.md +8 -0
  78. data/docs/Registry.md +17 -0
  79. data/docs/RegistryCredential.md +10 -0
  80. data/docs/RegistryInfo.md +11 -0
  81. data/docs/ReplicationExecution.md +19 -0
  82. data/docs/ReplicationFilter.md +9 -0
  83. data/docs/ReplicationPolicy.md +20 -0
  84. data/docs/ReplicationTask.md +16 -0
  85. data/docs/ReplicationTrigger.md +9 -0
  86. data/docs/RepoSignature.md +9 -0
  87. data/docs/Report.md +11 -0
  88. data/docs/Repository.md +17 -0
  89. data/docs/RepositoryDescription.md +8 -0
  90. data/docs/Resource.md +8 -0
  91. data/docs/ResourceList.md +7 -0
  92. data/docs/RetagReq.md +10 -0
  93. data/docs/RetentionApi.md +449 -0
  94. data/docs/RetentionExecution.md +14 -0
  95. data/docs/RetentionExecutionTask.md +18 -0
  96. data/docs/RetentionMetadata.md +10 -0
  97. data/docs/RetentionPolicy.md +12 -0
  98. data/docs/RetentionPolicyScope.md +9 -0
  99. data/docs/RetentionRule.md +15 -0
  100. data/docs/RetentionRuleMetadata.md +11 -0
  101. data/docs/RetentionRuleParamMetadata.md +10 -0
  102. data/docs/RetentionRuleTrigger.md +10 -0
  103. data/docs/RetentionSelector.md +10 -0
  104. data/docs/RetentionSelectorMetadata.md +10 -0
  105. data/docs/RobotAccount.md +15 -0
  106. data/docs/RobotAccountAccess.md +9 -0
  107. data/docs/RobotAccountApi.md +291 -0
  108. data/docs/RobotAccountCreate.md +10 -0
  109. data/docs/RobotAccountPostRep.md +9 -0
  110. data/docs/RobotAccountUpdate.md +8 -0
  111. data/docs/Role.md +11 -0
  112. data/docs/RoleParam.md +9 -0
  113. data/docs/RoleRequest.md +8 -0
  114. data/docs/ScanApi.md +281 -0
  115. data/docs/ScanOverview.md +7 -0
  116. data/docs/Scanner.md +10 -0
  117. data/docs/ScannerAdapterMetadata.md +10 -0
  118. data/docs/ScannerCapability.md +9 -0
  119. data/docs/ScannerRegistration.md +21 -0
  120. data/docs/ScannerRegistrationReq.md +15 -0
  121. data/docs/ScannerRegistrationSettings.md +11 -0
  122. data/docs/ScannersApi.md +600 -0
  123. data/docs/Search.md +10 -0
  124. data/docs/SearchRepository.md +13 -0
  125. data/docs/SearchResult.md +10 -0
  126. data/docs/SecurityReport.md +8 -0
  127. data/docs/StatisticMap.md +13 -0
  128. data/docs/Stats.md +11 -0
  129. data/docs/Storage.md +9 -0
  130. data/docs/StringConfigItem.md +9 -0
  131. data/docs/SystemApi.md +163 -0
  132. data/docs/SystemInfo.md +8 -0
  133. data/docs/Tags.md +8 -0
  134. data/docs/TriggerSettings.md +8 -0
  135. data/docs/UnauthorizedChartAPIError.md +8 -0
  136. data/docs/User.md +21 -0
  137. data/docs/UserEntity.md +9 -0
  138. data/docs/UserGroup.md +11 -0
  139. data/docs/UserProfile.md +10 -0
  140. data/docs/UserSearch.md +9 -0
  141. data/docs/VulnNamespaceTimestamp.md +9 -0
  142. data/docs/VulnerabilityItem.md +14 -0
  143. data/docs/VulnerabilitySummary.md +10 -0
  144. data/docs/WebhookJob.md +15 -0
  145. data/docs/WebhookLastTrigger.md +11 -0
  146. data/docs/WebhookPolicy.md +17 -0
  147. data/docs/WebhookTargetObject.md +11 -0
  148. data/git_push.sh +55 -0
  149. data/harbor1_client.gemspec +46 -0
  150. data/lib/harbor1_client.rb +182 -0
  151. data/lib/harbor1_client/api/chart_repository_api.rb +762 -0
  152. data/lib/harbor1_client/api/label_api.rb +230 -0
  153. data/lib/harbor1_client/api/products_api.rb +8783 -0
  154. data/lib/harbor1_client/api/quota_api.rb +136 -0
  155. data/lib/harbor1_client/api/retention_api.rb +482 -0
  156. data/lib/harbor1_client/api/robot_account_api.rb +321 -0
  157. data/lib/harbor1_client/api/scan_api.rb +307 -0
  158. data/lib/harbor1_client/api/scanners_api.rb +624 -0
  159. data/lib/harbor1_client/api/system_api.rb +173 -0
  160. data/lib/harbor1_client/api_client.rb +391 -0
  161. data/lib/harbor1_client/api_error.rb +38 -0
  162. data/lib/harbor1_client/configuration.rb +209 -0
  163. data/lib/harbor1_client/models/access_log.rb +235 -0
  164. data/lib/harbor1_client/models/action.rb +184 -0
  165. data/lib/harbor1_client/models/action_1.rb +184 -0
  166. data/lib/harbor1_client/models/admin_job_schedule.rb +184 -0
  167. data/lib/harbor1_client/models/admin_job_schedule_obj.rb +195 -0
  168. data/lib/harbor1_client/models/bad_request_formated_error.rb +191 -0
  169. data/lib/harbor1_client/models/bool_config_item.rb +195 -0
  170. data/lib/harbor1_client/models/chart_api_error.rb +191 -0
  171. data/lib/harbor1_client/models/chart_info_entry.rb +271 -0
  172. data/lib/harbor1_client/models/chart_info_list.rb +176 -0
  173. data/lib/harbor1_client/models/chart_metadata.rb +320 -0
  174. data/lib/harbor1_client/models/chart_version.rb +371 -0
  175. data/lib/harbor1_client/models/chart_version_details.rb +236 -0
  176. data/lib/harbor1_client/models/chart_versions.rb +176 -0
  177. data/lib/harbor1_client/models/component_health_status.rb +206 -0
  178. data/lib/harbor1_client/models/component_overview_entry.rb +195 -0
  179. data/lib/harbor1_client/models/configurations.rb +524 -0
  180. data/lib/harbor1_client/models/configurations_response.rb +514 -0
  181. data/lib/harbor1_client/models/configurations_scan_all_policy.rb +194 -0
  182. data/lib/harbor1_client/models/configurations_scan_all_policy_parameter.rb +186 -0
  183. data/lib/harbor1_client/models/conflict_formated_error.rb +191 -0
  184. data/lib/harbor1_client/models/cve_whitelist.rb +217 -0
  185. data/lib/harbor1_client/models/cve_whitelist_item.rb +186 -0
  186. data/lib/harbor1_client/models/dependency.rb +216 -0
  187. data/lib/harbor1_client/models/detailed_tag.rb +287 -0
  188. data/lib/harbor1_client/models/digital_signature.rb +196 -0
  189. data/lib/harbor1_client/models/email_server_setting.rb +235 -0
  190. data/lib/harbor1_client/models/endpoint.rb +195 -0
  191. data/lib/harbor1_client/models/filter_style.rb +208 -0
  192. data/lib/harbor1_client/models/forbidden_chart_api_error.rb +191 -0
  193. data/lib/harbor1_client/models/gc_result.rb +254 -0
  194. data/lib/harbor1_client/models/general_info.rb +304 -0
  195. data/lib/harbor1_client/models/general_info_clair_vulnerability_status.rb +198 -0
  196. data/lib/harbor1_client/models/has_admin_role.rb +185 -0
  197. data/lib/harbor1_client/models/immutable_tag_rule.rb +211 -0
  198. data/lib/harbor1_client/models/inline_response_200.rb +184 -0
  199. data/lib/harbor1_client/models/input_secret.rb +185 -0
  200. data/lib/harbor1_client/models/insufficient_storage_chart_api_error.rb +191 -0
  201. data/lib/harbor1_client/models/integer_config_item.rb +195 -0
  202. data/lib/harbor1_client/models/internal_chart_api_error.rb +191 -0
  203. data/lib/harbor1_client/models/is_default.rb +185 -0
  204. data/lib/harbor1_client/models/job_status.rb +257 -0
  205. data/lib/harbor1_client/models/label.rb +265 -0
  206. data/lib/harbor1_client/models/labels.rb +176 -0
  207. data/lib/harbor1_client/models/ldap_conf.rb +255 -0
  208. data/lib/harbor1_client/models/ldap_failed_import_users.rb +195 -0
  209. data/lib/harbor1_client/models/ldap_import_users.rb +187 -0
  210. data/lib/harbor1_client/models/ldap_users.rb +205 -0
  211. data/lib/harbor1_client/models/manifest.rb +195 -0
  212. data/lib/harbor1_client/models/namespace.rb +196 -0
  213. data/lib/harbor1_client/models/native_report_summary.rb +245 -0
  214. data/lib/harbor1_client/models/not_found_chart_api_error.rb +191 -0
  215. data/lib/harbor1_client/models/overall_health_status.rb +197 -0
  216. data/lib/harbor1_client/models/password.rb +195 -0
  217. data/lib/harbor1_client/models/permission.rb +196 -0
  218. data/lib/harbor1_client/models/ping_registry.rb +245 -0
  219. data/lib/harbor1_client/models/project.rb +317 -0
  220. data/lib/harbor1_client/models/project_member.rb +203 -0
  221. data/lib/harbor1_client/models/project_member_entity.rb +245 -0
  222. data/lib/harbor1_client/models/project_metadata.rb +235 -0
  223. data/lib/harbor1_client/models/project_req.rb +225 -0
  224. data/lib/harbor1_client/models/project_scanner.rb +185 -0
  225. data/lib/harbor1_client/models/project_summary.rb +244 -0
  226. data/lib/harbor1_client/models/project_summary_quota.rb +195 -0
  227. data/lib/harbor1_client/models/put_registry.rb +245 -0
  228. data/lib/harbor1_client/models/quota.rb +236 -0
  229. data/lib/harbor1_client/models/quota_ref_object.rb +175 -0
  230. data/lib/harbor1_client/models/quota_switcher.rb +185 -0
  231. data/lib/harbor1_client/models/quota_update_req.rb +185 -0
  232. data/lib/harbor1_client/models/registry.rb +274 -0
  233. data/lib/harbor1_client/models/registry_credential.rb +205 -0
  234. data/lib/harbor1_client/models/registry_info.rb +220 -0
  235. data/lib/harbor1_client/models/replication_execution.rb +296 -0
  236. data/lib/harbor1_client/models/replication_filter.rb +195 -0
  237. data/lib/harbor1_client/models/replication_policy.rb +306 -0
  238. data/lib/harbor1_client/models/replication_task.rb +266 -0
  239. data/lib/harbor1_client/models/replication_trigger.rb +194 -0
  240. data/lib/harbor1_client/models/repo_signature.rb +195 -0
  241. data/lib/harbor1_client/models/report.rb +216 -0
  242. data/lib/harbor1_client/models/repository.rb +277 -0
  243. data/lib/harbor1_client/models/repository_description.rb +185 -0
  244. data/lib/harbor1_client/models/resource.rb +187 -0
  245. data/lib/harbor1_client/models/resource_list.rb +175 -0
  246. data/lib/harbor1_client/models/retag_req.rb +205 -0
  247. data/lib/harbor1_client/models/retention_execution.rb +238 -0
  248. data/lib/harbor1_client/models/retention_execution_task.rb +274 -0
  249. data/lib/harbor1_client/models/retention_metadata.rb +212 -0
  250. data/lib/harbor1_client/models/retention_policy.rb +223 -0
  251. data/lib/harbor1_client/models/retention_policy_scope.rb +193 -0
  252. data/lib/harbor1_client/models/retention_rule.rb +253 -0
  253. data/lib/harbor1_client/models/retention_rule_metadata.rb +218 -0
  254. data/lib/harbor1_client/models/retention_rule_param_metadata.rb +203 -0
  255. data/lib/harbor1_client/models/retention_rule_trigger.rb +202 -0
  256. data/lib/harbor1_client/models/retention_selector.rb +202 -0
  257. data/lib/harbor1_client/models/retention_selector_metadata.rb +205 -0
  258. data/lib/harbor1_client/models/robot_account.rb +256 -0
  259. data/lib/harbor1_client/models/robot_account_access.rb +195 -0
  260. data/lib/harbor1_client/models/robot_account_create.rb +207 -0
  261. data/lib/harbor1_client/models/robot_account_post_rep.rb +195 -0
  262. data/lib/harbor1_client/models/robot_account_update.rb +185 -0
  263. data/lib/harbor1_client/models/role.rb +214 -0
  264. data/lib/harbor1_client/models/role_param.rb +197 -0
  265. data/lib/harbor1_client/models/role_request.rb +185 -0
  266. data/lib/harbor1_client/models/scan_overview.rb +176 -0
  267. data/lib/harbor1_client/models/scanner.rb +205 -0
  268. data/lib/harbor1_client/models/scanner_adapter_metadata.rb +207 -0
  269. data/lib/harbor1_client/models/scanner_capability.rb +197 -0
  270. data/lib/harbor1_client/models/scanner_registration.rb +328 -0
  271. data/lib/harbor1_client/models/scanner_registration_req.rb +263 -0
  272. data/lib/harbor1_client/models/scanner_registration_settings.rb +217 -0
  273. data/lib/harbor1_client/models/search.rb +211 -0
  274. data/lib/harbor1_client/models/search_repository.rb +235 -0
  275. data/lib/harbor1_client/models/search_result.rb +205 -0
  276. data/lib/harbor1_client/models/security_report.rb +185 -0
  277. data/lib/harbor1_client/models/statistic_map.rb +235 -0
  278. data/lib/harbor1_client/models/stats.rb +218 -0
  279. data/lib/harbor1_client/models/storage.rb +195 -0
  280. data/lib/harbor1_client/models/string_config_item.rb +195 -0
  281. data/lib/harbor1_client/models/system_info.rb +187 -0
  282. data/lib/harbor1_client/models/tags.rb +185 -0
  283. data/lib/harbor1_client/models/trigger_settings.rb +185 -0
  284. data/lib/harbor1_client/models/unauthorized_chart_api_error.rb +191 -0
  285. data/lib/harbor1_client/models/user.rb +302 -0
  286. data/lib/harbor1_client/models/user_entity.rb +195 -0
  287. data/lib/harbor1_client/models/user_group.rb +215 -0
  288. data/lib/harbor1_client/models/user_profile.rb +205 -0
  289. data/lib/harbor1_client/models/user_search.rb +194 -0
  290. data/lib/harbor1_client/models/vuln_namespace_timestamp.rb +195 -0
  291. data/lib/harbor1_client/models/vulnerability_item.rb +247 -0
  292. data/lib/harbor1_client/models/vulnerability_summary.rb +208 -0
  293. data/lib/harbor1_client/models/webhook_job.rb +256 -0
  294. data/lib/harbor1_client/models/webhook_last_trigger.rb +216 -0
  295. data/lib/harbor1_client/models/webhook_policy.rb +278 -0
  296. data/lib/harbor1_client/models/webhook_target_object.rb +216 -0
  297. data/lib/harbor1_client/version.rb +15 -0
  298. data/spec/api/chart_repository_api_spec.rb +196 -0
  299. data/spec/api/label_api_spec.rb +79 -0
  300. data/spec/api/products_api_spec.rb +2010 -0
  301. data/spec/api/quota_api_spec.rb +60 -0
  302. data/spec/api/retention_api_spec.rb +136 -0
  303. data/spec/api/robot_account_api_spec.rb +100 -0
  304. data/spec/api/scan_api_spec.rb +98 -0
  305. data/spec/api/scanners_api_spec.rb +169 -0
  306. data/spec/api/system_api_spec.rb +70 -0
  307. data/spec/api_client_spec.rb +243 -0
  308. data/spec/configuration_spec.rb +42 -0
  309. data/spec/models/access_log_spec.rb +71 -0
  310. data/spec/models/action_1_spec.rb +41 -0
  311. data/spec/models/action_spec.rb +41 -0
  312. data/spec/models/admin_job_schedule_obj_spec.rb +47 -0
  313. data/spec/models/admin_job_schedule_spec.rb +41 -0
  314. data/spec/models/bad_request_formated_error_spec.rb +41 -0
  315. data/spec/models/bool_config_item_spec.rb +47 -0
  316. data/spec/models/chart_api_error_spec.rb +41 -0
  317. data/spec/models/chart_info_entry_spec.rb +83 -0
  318. data/spec/models/chart_info_list_spec.rb +35 -0
  319. data/spec/models/chart_metadata_spec.rb +101 -0
  320. data/spec/models/chart_version_details_spec.rb +71 -0
  321. data/spec/models/chart_version_spec.rb +131 -0
  322. data/spec/models/chart_versions_spec.rb +35 -0
  323. data/spec/models/component_health_status_spec.rb +53 -0
  324. data/spec/models/component_overview_entry_spec.rb +47 -0
  325. data/spec/models/configurations_response_spec.rb +239 -0
  326. data/spec/models/configurations_scan_all_policy_parameter_spec.rb +41 -0
  327. data/spec/models/configurations_scan_all_policy_spec.rb +47 -0
  328. data/spec/models/configurations_spec.rb +245 -0
  329. data/spec/models/conflict_formated_error_spec.rb +41 -0
  330. data/spec/models/cve_whitelist_item_spec.rb +41 -0
  331. data/spec/models/cve_whitelist_spec.rb +59 -0
  332. data/spec/models/dependency_spec.rb +53 -0
  333. data/spec/models/detailed_tag_spec.rb +101 -0
  334. data/spec/models/digital_signature_spec.rb +47 -0
  335. data/spec/models/email_server_setting_spec.rb +71 -0
  336. data/spec/models/endpoint_spec.rb +47 -0
  337. data/spec/models/filter_style_spec.rb +53 -0
  338. data/spec/models/forbidden_chart_api_error_spec.rb +41 -0
  339. data/spec/models/gc_result_spec.rb +83 -0
  340. data/spec/models/general_info_clair_vulnerability_status_spec.rb +47 -0
  341. data/spec/models/general_info_spec.rb +113 -0
  342. data/spec/models/has_admin_role_spec.rb +41 -0
  343. data/spec/models/immutable_tag_rule_spec.rb +59 -0
  344. data/spec/models/inline_response_200_spec.rb +41 -0
  345. data/spec/models/input_secret_spec.rb +41 -0
  346. data/spec/models/insufficient_storage_chart_api_error_spec.rb +41 -0
  347. data/spec/models/integer_config_item_spec.rb +47 -0
  348. data/spec/models/internal_chart_api_error_spec.rb +41 -0
  349. data/spec/models/is_default_spec.rb +41 -0
  350. data/spec/models/job_status_spec.rb +83 -0
  351. data/spec/models/label_spec.rb +89 -0
  352. data/spec/models/labels_spec.rb +35 -0
  353. data/spec/models/ldap_conf_spec.rb +83 -0
  354. data/spec/models/ldap_failed_import_users_spec.rb +47 -0
  355. data/spec/models/ldap_import_users_spec.rb +41 -0
  356. data/spec/models/ldap_users_spec.rb +53 -0
  357. data/spec/models/manifest_spec.rb +47 -0
  358. data/spec/models/namespace_spec.rb +47 -0
  359. data/spec/models/native_report_summary_spec.rb +77 -0
  360. data/spec/models/not_found_chart_api_error_spec.rb +41 -0
  361. data/spec/models/overall_health_status_spec.rb +47 -0
  362. data/spec/models/password_spec.rb +47 -0
  363. data/spec/models/permission_spec.rb +47 -0
  364. data/spec/models/ping_registry_spec.rb +77 -0
  365. data/spec/models/project_member_entity_spec.rb +77 -0
  366. data/spec/models/project_member_spec.rb +53 -0
  367. data/spec/models/project_metadata_spec.rb +71 -0
  368. data/spec/models/project_req_spec.rb +65 -0
  369. data/spec/models/project_scanner_spec.rb +41 -0
  370. data/spec/models/project_spec.rb +119 -0
  371. data/spec/models/project_summary_quota_spec.rb +47 -0
  372. data/spec/models/project_summary_spec.rb +77 -0
  373. data/spec/models/put_registry_spec.rb +77 -0
  374. data/spec/models/quota_ref_object_spec.rb +35 -0
  375. data/spec/models/quota_spec.rb +71 -0
  376. data/spec/models/quota_switcher_spec.rb +41 -0
  377. data/spec/models/quota_update_req_spec.rb +41 -0
  378. data/spec/models/registry_credential_spec.rb +53 -0
  379. data/spec/models/registry_info_spec.rb +59 -0
  380. data/spec/models/registry_spec.rb +95 -0
  381. data/spec/models/replication_execution_spec.rb +107 -0
  382. data/spec/models/replication_filter_spec.rb +47 -0
  383. data/spec/models/replication_policy_spec.rb +113 -0
  384. data/spec/models/replication_task_spec.rb +89 -0
  385. data/spec/models/replication_trigger_spec.rb +47 -0
  386. data/spec/models/repo_signature_spec.rb +47 -0
  387. data/spec/models/report_spec.rb +59 -0
  388. data/spec/models/repository_description_spec.rb +41 -0
  389. data/spec/models/repository_spec.rb +95 -0
  390. data/spec/models/resource_list_spec.rb +35 -0
  391. data/spec/models/resource_spec.rb +41 -0
  392. data/spec/models/retag_req_spec.rb +53 -0
  393. data/spec/models/retention_execution_spec.rb +77 -0
  394. data/spec/models/retention_execution_task_spec.rb +101 -0
  395. data/spec/models/retention_metadata_spec.rb +53 -0
  396. data/spec/models/retention_policy_scope_spec.rb +47 -0
  397. data/spec/models/retention_policy_spec.rb +65 -0
  398. data/spec/models/retention_rule_metadata_spec.rb +59 -0
  399. data/spec/models/retention_rule_param_metadata_spec.rb +53 -0
  400. data/spec/models/retention_rule_spec.rb +83 -0
  401. data/spec/models/retention_rule_trigger_spec.rb +53 -0
  402. data/spec/models/retention_selector_metadata_spec.rb +53 -0
  403. data/spec/models/retention_selector_spec.rb +53 -0
  404. data/spec/models/robot_account_access_spec.rb +47 -0
  405. data/spec/models/robot_account_create_spec.rb +53 -0
  406. data/spec/models/robot_account_post_rep_spec.rb +47 -0
  407. data/spec/models/robot_account_spec.rb +83 -0
  408. data/spec/models/robot_account_update_spec.rb +41 -0
  409. data/spec/models/role_param_spec.rb +47 -0
  410. data/spec/models/role_request_spec.rb +41 -0
  411. data/spec/models/role_spec.rb +59 -0
  412. data/spec/models/scan_overview_spec.rb +35 -0
  413. data/spec/models/scanner_adapter_metadata_spec.rb +53 -0
  414. data/spec/models/scanner_capability_spec.rb +47 -0
  415. data/spec/models/scanner_registration_req_spec.rb +83 -0
  416. data/spec/models/scanner_registration_settings_spec.rb +59 -0
  417. data/spec/models/scanner_registration_spec.rb +119 -0
  418. data/spec/models/scanner_spec.rb +53 -0
  419. data/spec/models/search_repository_spec.rb +71 -0
  420. data/spec/models/search_result_spec.rb +53 -0
  421. data/spec/models/search_spec.rb +53 -0
  422. data/spec/models/security_report_spec.rb +41 -0
  423. data/spec/models/statistic_map_spec.rb +71 -0
  424. data/spec/models/stats_spec.rb +59 -0
  425. data/spec/models/storage_spec.rb +47 -0
  426. data/spec/models/string_config_item_spec.rb +47 -0
  427. data/spec/models/system_info_spec.rb +41 -0
  428. data/spec/models/tags_spec.rb +41 -0
  429. data/spec/models/trigger_settings_spec.rb +41 -0
  430. data/spec/models/unauthorized_chart_api_error_spec.rb +41 -0
  431. data/spec/models/user_entity_spec.rb +47 -0
  432. data/spec/models/user_group_spec.rb +59 -0
  433. data/spec/models/user_profile_spec.rb +53 -0
  434. data/spec/models/user_search_spec.rb +47 -0
  435. data/spec/models/user_spec.rb +119 -0
  436. data/spec/models/vuln_namespace_timestamp_spec.rb +47 -0
  437. data/spec/models/vulnerability_item_spec.rb +77 -0
  438. data/spec/models/vulnerability_summary_spec.rb +53 -0
  439. data/spec/models/webhook_job_spec.rb +83 -0
  440. data/spec/models/webhook_last_trigger_spec.rb +59 -0
  441. data/spec/models/webhook_policy_spec.rb +95 -0
  442. data/spec/models/webhook_target_object_spec.rb +59 -0
  443. data/spec/spec_helper.rb +111 -0
  444. metadata +832 -0
@@ -0,0 +1,245 @@
1
+ =begin
2
+ #Harbor API
3
+
4
+ #These APIs provide services for manipulating Harbor project.
5
+
6
+ OpenAPI spec version: 1.10.0
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.17
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module Harbor1Client
16
+ class PingRegistry
17
+ # The ID of the registry
18
+ attr_accessor :id
19
+
20
+ # Type of the registry, e.g. 'harbor'.
21
+ attr_accessor :type
22
+
23
+ # The registry address URL string.
24
+ attr_accessor :url
25
+
26
+ # Credential type of the registry, e.g. 'basic'.
27
+ attr_accessor :credential_type
28
+
29
+ # The registry access key.
30
+ attr_accessor :access_key
31
+
32
+ # The registry access secret.
33
+ attr_accessor :access_secret
34
+
35
+ # Whether or not the certificate will be verified when Harbor tries to access the server.
36
+ attr_accessor :insecure
37
+
38
+ # Attribute mapping from ruby-style variable name to JSON key.
39
+ def self.attribute_map
40
+ {
41
+ :'id' => :'id',
42
+ :'type' => :'type',
43
+ :'url' => :'url',
44
+ :'credential_type' => :'credential_type',
45
+ :'access_key' => :'access_key',
46
+ :'access_secret' => :'access_secret',
47
+ :'insecure' => :'insecure'
48
+ }
49
+ end
50
+
51
+ # Attribute type mapping.
52
+ def self.swagger_types
53
+ {
54
+ :'id' => :'Integer',
55
+ :'type' => :'String',
56
+ :'url' => :'String',
57
+ :'credential_type' => :'String',
58
+ :'access_key' => :'String',
59
+ :'access_secret' => :'String',
60
+ :'insecure' => :'BOOLEAN'
61
+ }
62
+ end
63
+
64
+ # Initializes the object
65
+ # @param [Hash] attributes Model attributes in the form of hash
66
+ def initialize(attributes = {})
67
+ return unless attributes.is_a?(Hash)
68
+
69
+ # convert string to symbol for hash key
70
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
71
+
72
+ if attributes.has_key?(:'id')
73
+ self.id = attributes[:'id']
74
+ end
75
+
76
+ if attributes.has_key?(:'type')
77
+ self.type = attributes[:'type']
78
+ end
79
+
80
+ if attributes.has_key?(:'url')
81
+ self.url = attributes[:'url']
82
+ end
83
+
84
+ if attributes.has_key?(:'credential_type')
85
+ self.credential_type = attributes[:'credential_type']
86
+ end
87
+
88
+ if attributes.has_key?(:'access_key')
89
+ self.access_key = attributes[:'access_key']
90
+ end
91
+
92
+ if attributes.has_key?(:'access_secret')
93
+ self.access_secret = attributes[:'access_secret']
94
+ end
95
+
96
+ if attributes.has_key?(:'insecure')
97
+ self.insecure = attributes[:'insecure']
98
+ end
99
+ end
100
+
101
+ # Show invalid properties with the reasons. Usually used together with valid?
102
+ # @return Array for valid properties with the reasons
103
+ def list_invalid_properties
104
+ invalid_properties = Array.new
105
+ invalid_properties
106
+ end
107
+
108
+ # Check to see if the all the properties in the model are valid
109
+ # @return true if the model is valid
110
+ def valid?
111
+ true
112
+ end
113
+
114
+ # Checks equality by comparing each attribute.
115
+ # @param [Object] Object to be compared
116
+ def ==(o)
117
+ return true if self.equal?(o)
118
+ self.class == o.class &&
119
+ id == o.id &&
120
+ type == o.type &&
121
+ url == o.url &&
122
+ credential_type == o.credential_type &&
123
+ access_key == o.access_key &&
124
+ access_secret == o.access_secret &&
125
+ insecure == o.insecure
126
+ end
127
+
128
+ # @see the `==` method
129
+ # @param [Object] Object to be compared
130
+ def eql?(o)
131
+ self == o
132
+ end
133
+
134
+ # Calculates hash code according to all attributes.
135
+ # @return [Fixnum] Hash code
136
+ def hash
137
+ [id, type, url, credential_type, access_key, access_secret, insecure].hash
138
+ end
139
+
140
+ # Builds the object from hash
141
+ # @param [Hash] attributes Model attributes in the form of hash
142
+ # @return [Object] Returns the model itself
143
+ def build_from_hash(attributes)
144
+ return nil unless attributes.is_a?(Hash)
145
+ self.class.swagger_types.each_pair do |key, type|
146
+ if type =~ /\AArray<(.*)>/i
147
+ # check to ensure the input is an array given that the attribute
148
+ # is documented as an array but the input is not
149
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
150
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
151
+ end
152
+ elsif !attributes[self.class.attribute_map[key]].nil?
153
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
154
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
155
+ end
156
+
157
+ self
158
+ end
159
+
160
+ # Deserializes the data based on type
161
+ # @param string type Data type
162
+ # @param string value Value to be deserialized
163
+ # @return [Object] Deserialized data
164
+ def _deserialize(type, value)
165
+ case type.to_sym
166
+ when :DateTime
167
+ DateTime.parse(value)
168
+ when :Date
169
+ Date.parse(value)
170
+ when :String
171
+ value.to_s
172
+ when :Integer
173
+ value.to_i
174
+ when :Float
175
+ value.to_f
176
+ when :BOOLEAN
177
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
178
+ true
179
+ else
180
+ false
181
+ end
182
+ when :Object
183
+ # generic object (usually a Hash), return directly
184
+ value
185
+ when /\AArray<(?<inner_type>.+)>\z/
186
+ inner_type = Regexp.last_match[:inner_type]
187
+ value.map { |v| _deserialize(inner_type, v) }
188
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
189
+ k_type = Regexp.last_match[:k_type]
190
+ v_type = Regexp.last_match[:v_type]
191
+ {}.tap do |hash|
192
+ value.each do |k, v|
193
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
194
+ end
195
+ end
196
+ else # model
197
+ temp_model = Harbor1Client.const_get(type).new
198
+ temp_model.build_from_hash(value)
199
+ end
200
+ end
201
+
202
+ # Returns the string representation of the object
203
+ # @return [String] String presentation of the object
204
+ def to_s
205
+ to_hash.to_s
206
+ end
207
+
208
+ # to_body is an alias to to_hash (backward compatibility)
209
+ # @return [Hash] Returns the object in the form of hash
210
+ def to_body
211
+ to_hash
212
+ end
213
+
214
+ # Returns the object in the form of hash
215
+ # @return [Hash] Returns the object in the form of hash
216
+ def to_hash
217
+ hash = {}
218
+ self.class.attribute_map.each_pair do |attr, param|
219
+ value = self.send(attr)
220
+ next if value.nil?
221
+ hash[param] = _to_hash(value)
222
+ end
223
+ hash
224
+ end
225
+
226
+ # Outputs non-array value in the form of hash
227
+ # For object, use to_hash. Otherwise, just return the value
228
+ # @param [Object] value Any valid value
229
+ # @return [Hash] Returns the value in the form of hash
230
+ def _to_hash(value)
231
+ if value.is_a?(Array)
232
+ value.compact.map { |v| _to_hash(v) }
233
+ elsif value.is_a?(Hash)
234
+ {}.tap do |hash|
235
+ value.each { |k, v| hash[k] = _to_hash(v) }
236
+ end
237
+ elsif value.respond_to? :to_hash
238
+ value.to_hash
239
+ else
240
+ value
241
+ end
242
+ end
243
+
244
+ end
245
+ end
@@ -0,0 +1,317 @@
1
+ =begin
2
+ #Harbor API
3
+
4
+ #These APIs provide services for manipulating Harbor project.
5
+
6
+ OpenAPI spec version: 1.10.0
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.17
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module Harbor1Client
16
+ class Project
17
+ # Project ID
18
+ attr_accessor :project_id
19
+
20
+ # The owner ID of the project always means the creator of the project.
21
+ attr_accessor :owner_id
22
+
23
+ # The name of the project.
24
+ attr_accessor :name
25
+
26
+ # The creation time of the project.
27
+ attr_accessor :creation_time
28
+
29
+ # The update time of the project.
30
+ attr_accessor :update_time
31
+
32
+ # A deletion mark of the project.
33
+ attr_accessor :deleted
34
+
35
+ # The owner name of the project.
36
+ attr_accessor :owner_name
37
+
38
+ # Correspond to the UI about whether the project's publicity is updatable (for UI)
39
+ attr_accessor :togglable
40
+
41
+ # The role ID with highest permission of the current user who triggered the API (for UI)
42
+ attr_accessor :current_user_role_id
43
+
44
+ # The list of role ID of the current user who triggered the API (for UI)
45
+ attr_accessor :current_user_role_ids
46
+
47
+ # The number of the repositories under this project.
48
+ attr_accessor :repo_count
49
+
50
+ # The total number of charts under this project.
51
+ attr_accessor :chart_count
52
+
53
+ # The metadata of the project.
54
+ attr_accessor :metadata
55
+
56
+ # The CVE whitelist of this project.
57
+ attr_accessor :cve_whitelist
58
+
59
+ # Attribute mapping from ruby-style variable name to JSON key.
60
+ def self.attribute_map
61
+ {
62
+ :'project_id' => :'project_id',
63
+ :'owner_id' => :'owner_id',
64
+ :'name' => :'name',
65
+ :'creation_time' => :'creation_time',
66
+ :'update_time' => :'update_time',
67
+ :'deleted' => :'deleted',
68
+ :'owner_name' => :'owner_name',
69
+ :'togglable' => :'togglable',
70
+ :'current_user_role_id' => :'current_user_role_id',
71
+ :'current_user_role_ids' => :'current_user_role_ids',
72
+ :'repo_count' => :'repo_count',
73
+ :'chart_count' => :'chart_count',
74
+ :'metadata' => :'metadata',
75
+ :'cve_whitelist' => :'cve_whitelist'
76
+ }
77
+ end
78
+
79
+ # Attribute type mapping.
80
+ def self.swagger_types
81
+ {
82
+ :'project_id' => :'Integer',
83
+ :'owner_id' => :'Integer',
84
+ :'name' => :'String',
85
+ :'creation_time' => :'String',
86
+ :'update_time' => :'String',
87
+ :'deleted' => :'BOOLEAN',
88
+ :'owner_name' => :'String',
89
+ :'togglable' => :'BOOLEAN',
90
+ :'current_user_role_id' => :'Integer',
91
+ :'current_user_role_ids' => :'Array<Integer>',
92
+ :'repo_count' => :'Integer',
93
+ :'chart_count' => :'Integer',
94
+ :'metadata' => :'ProjectMetadata',
95
+ :'cve_whitelist' => :'CVEWhitelist'
96
+ }
97
+ end
98
+
99
+ # Initializes the object
100
+ # @param [Hash] attributes Model attributes in the form of hash
101
+ def initialize(attributes = {})
102
+ return unless attributes.is_a?(Hash)
103
+
104
+ # convert string to symbol for hash key
105
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
106
+
107
+ if attributes.has_key?(:'project_id')
108
+ self.project_id = attributes[:'project_id']
109
+ end
110
+
111
+ if attributes.has_key?(:'owner_id')
112
+ self.owner_id = attributes[:'owner_id']
113
+ end
114
+
115
+ if attributes.has_key?(:'name')
116
+ self.name = attributes[:'name']
117
+ end
118
+
119
+ if attributes.has_key?(:'creation_time')
120
+ self.creation_time = attributes[:'creation_time']
121
+ end
122
+
123
+ if attributes.has_key?(:'update_time')
124
+ self.update_time = attributes[:'update_time']
125
+ end
126
+
127
+ if attributes.has_key?(:'deleted')
128
+ self.deleted = attributes[:'deleted']
129
+ end
130
+
131
+ if attributes.has_key?(:'owner_name')
132
+ self.owner_name = attributes[:'owner_name']
133
+ end
134
+
135
+ if attributes.has_key?(:'togglable')
136
+ self.togglable = attributes[:'togglable']
137
+ end
138
+
139
+ if attributes.has_key?(:'current_user_role_id')
140
+ self.current_user_role_id = attributes[:'current_user_role_id']
141
+ end
142
+
143
+ if attributes.has_key?(:'current_user_role_ids')
144
+ if (value = attributes[:'current_user_role_ids']).is_a?(Array)
145
+ self.current_user_role_ids = value
146
+ end
147
+ end
148
+
149
+ if attributes.has_key?(:'repo_count')
150
+ self.repo_count = attributes[:'repo_count']
151
+ end
152
+
153
+ if attributes.has_key?(:'chart_count')
154
+ self.chart_count = attributes[:'chart_count']
155
+ end
156
+
157
+ if attributes.has_key?(:'metadata')
158
+ self.metadata = attributes[:'metadata']
159
+ end
160
+
161
+ if attributes.has_key?(:'cve_whitelist')
162
+ self.cve_whitelist = attributes[:'cve_whitelist']
163
+ end
164
+ end
165
+
166
+ # Show invalid properties with the reasons. Usually used together with valid?
167
+ # @return Array for valid properties with the reasons
168
+ def list_invalid_properties
169
+ invalid_properties = Array.new
170
+ invalid_properties
171
+ end
172
+
173
+ # Check to see if the all the properties in the model are valid
174
+ # @return true if the model is valid
175
+ def valid?
176
+ true
177
+ end
178
+
179
+ # Checks equality by comparing each attribute.
180
+ # @param [Object] Object to be compared
181
+ def ==(o)
182
+ return true if self.equal?(o)
183
+ self.class == o.class &&
184
+ project_id == o.project_id &&
185
+ owner_id == o.owner_id &&
186
+ name == o.name &&
187
+ creation_time == o.creation_time &&
188
+ update_time == o.update_time &&
189
+ deleted == o.deleted &&
190
+ owner_name == o.owner_name &&
191
+ togglable == o.togglable &&
192
+ current_user_role_id == o.current_user_role_id &&
193
+ current_user_role_ids == o.current_user_role_ids &&
194
+ repo_count == o.repo_count &&
195
+ chart_count == o.chart_count &&
196
+ metadata == o.metadata &&
197
+ cve_whitelist == o.cve_whitelist
198
+ end
199
+
200
+ # @see the `==` method
201
+ # @param [Object] Object to be compared
202
+ def eql?(o)
203
+ self == o
204
+ end
205
+
206
+ # Calculates hash code according to all attributes.
207
+ # @return [Fixnum] Hash code
208
+ def hash
209
+ [project_id, owner_id, name, creation_time, update_time, deleted, owner_name, togglable, current_user_role_id, current_user_role_ids, repo_count, chart_count, metadata, cve_whitelist].hash
210
+ end
211
+
212
+ # Builds the object from hash
213
+ # @param [Hash] attributes Model attributes in the form of hash
214
+ # @return [Object] Returns the model itself
215
+ def build_from_hash(attributes)
216
+ return nil unless attributes.is_a?(Hash)
217
+ self.class.swagger_types.each_pair do |key, type|
218
+ if type =~ /\AArray<(.*)>/i
219
+ # check to ensure the input is an array given that the attribute
220
+ # is documented as an array but the input is not
221
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
222
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
223
+ end
224
+ elsif !attributes[self.class.attribute_map[key]].nil?
225
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
226
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
227
+ end
228
+
229
+ self
230
+ end
231
+
232
+ # Deserializes the data based on type
233
+ # @param string type Data type
234
+ # @param string value Value to be deserialized
235
+ # @return [Object] Deserialized data
236
+ def _deserialize(type, value)
237
+ case type.to_sym
238
+ when :DateTime
239
+ DateTime.parse(value)
240
+ when :Date
241
+ Date.parse(value)
242
+ when :String
243
+ value.to_s
244
+ when :Integer
245
+ value.to_i
246
+ when :Float
247
+ value.to_f
248
+ when :BOOLEAN
249
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
250
+ true
251
+ else
252
+ false
253
+ end
254
+ when :Object
255
+ # generic object (usually a Hash), return directly
256
+ value
257
+ when /\AArray<(?<inner_type>.+)>\z/
258
+ inner_type = Regexp.last_match[:inner_type]
259
+ value.map { |v| _deserialize(inner_type, v) }
260
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
261
+ k_type = Regexp.last_match[:k_type]
262
+ v_type = Regexp.last_match[:v_type]
263
+ {}.tap do |hash|
264
+ value.each do |k, v|
265
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
266
+ end
267
+ end
268
+ else # model
269
+ temp_model = Harbor1Client.const_get(type).new
270
+ temp_model.build_from_hash(value)
271
+ end
272
+ end
273
+
274
+ # Returns the string representation of the object
275
+ # @return [String] String presentation of the object
276
+ def to_s
277
+ to_hash.to_s
278
+ end
279
+
280
+ # to_body is an alias to to_hash (backward compatibility)
281
+ # @return [Hash] Returns the object in the form of hash
282
+ def to_body
283
+ to_hash
284
+ end
285
+
286
+ # Returns the object in the form of hash
287
+ # @return [Hash] Returns the object in the form of hash
288
+ def to_hash
289
+ hash = {}
290
+ self.class.attribute_map.each_pair do |attr, param|
291
+ value = self.send(attr)
292
+ next if value.nil?
293
+ hash[param] = _to_hash(value)
294
+ end
295
+ hash
296
+ end
297
+
298
+ # Outputs non-array value in the form of hash
299
+ # For object, use to_hash. Otherwise, just return the value
300
+ # @param [Object] value Any valid value
301
+ # @return [Hash] Returns the value in the form of hash
302
+ def _to_hash(value)
303
+ if value.is_a?(Array)
304
+ value.compact.map { |v| _to_hash(v) }
305
+ elsif value.is_a?(Hash)
306
+ {}.tap do |hash|
307
+ value.each { |k, v| hash[k] = _to_hash(v) }
308
+ end
309
+ elsif value.respond_to? :to_hash
310
+ value.to_hash
311
+ else
312
+ value
313
+ end
314
+ end
315
+
316
+ end
317
+ end