docker-hub 2.pre.beta.2

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 (346) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +268 -0
  4. data/Rakefile +10 -0
  5. data/docker-hub.gemspec +39 -0
  6. data/docs/AccessToken.md +40 -0
  7. data/docs/AccessTokensApi.md +362 -0
  8. data/docs/AuditLog.md +30 -0
  9. data/docs/AuditLogAction.md +22 -0
  10. data/docs/AuditLogActions.md +20 -0
  11. data/docs/AuditLogsApi.md +163 -0
  12. data/docs/AuthCreateAccessTokenRequest.md +20 -0
  13. data/docs/AuthCreateTokenResponse.md +18 -0
  14. data/docs/AuthenticationApiApi.md +204 -0
  15. data/docs/BulkInvite.md +18 -0
  16. data/docs/BulkInviteInviteesInner.md +22 -0
  17. data/docs/Category.md +20 -0
  18. data/docs/CreateAccessTokenRequest.md +22 -0
  19. data/docs/CreateOrgAccessTokenRequest.md +24 -0
  20. data/docs/CreateOrgAccessTokenResponse.md +34 -0
  21. data/docs/EmailAddress.md +26 -0
  22. data/docs/EmailWithUsername.md +28 -0
  23. data/docs/Error.md +22 -0
  24. data/docs/GetAccessTokensResponse.md +26 -0
  25. data/docs/GetAuditActionsResponse.md +18 -0
  26. data/docs/GetAuditLogsResponse.md +18 -0
  27. data/docs/GetOrgAccessTokenResponse.md +32 -0
  28. data/docs/GetOrgAccessTokensResponse.md +24 -0
  29. data/docs/GroupMember.md +38 -0
  30. data/docs/GroupsApi.md +682 -0
  31. data/docs/Image.md +40 -0
  32. data/docs/ImmutableTagsSettings.md +20 -0
  33. data/docs/ImmutableTagsVerifyRequest.md +18 -0
  34. data/docs/ImmutableTagsVerifyResponse.md +18 -0
  35. data/docs/Invite.md +28 -0
  36. data/docs/InvitesApi.md +289 -0
  37. data/docs/Layer.md +22 -0
  38. data/docs/LegacyEmailAddress.md +28 -0
  39. data/docs/ListRepositoriesResponse.md +24 -0
  40. data/docs/OrgAccessToken.md +30 -0
  41. data/docs/OrgAccessTokenResource.md +22 -0
  42. data/docs/OrgAccessTokensApi.md +368 -0
  43. data/docs/OrgGroup.md +26 -0
  44. data/docs/OrgMember.md +52 -0
  45. data/docs/OrgMemberPaginated.md +24 -0
  46. data/docs/OrgSettings.md +18 -0
  47. data/docs/OrgSettingsApi.md +149 -0
  48. data/docs/OrgsApi.md +306 -0
  49. data/docs/Page.md +22 -0
  50. data/docs/PaginatedTags.md +24 -0
  51. data/docs/PatchAccessTokenRequest.md +20 -0
  52. data/docs/PostUsers2FALoginErrorResponse.md +18 -0
  53. data/docs/PostUsersLoginErrorResponse.md +20 -0
  54. data/docs/PostUsersLoginSuccessResponse.md +18 -0
  55. data/docs/ProtobufAny.md +20 -0
  56. data/docs/RepoCreationRequest.md +28 -0
  57. data/docs/RepoPermissions.md +22 -0
  58. data/docs/RepositoriesApi.md +806 -0
  59. data/docs/RepositoryGroup.md +22 -0
  60. data/docs/RepositoryGroupCreationRequest.md +20 -0
  61. data/docs/RepositoryInfo.md +68 -0
  62. data/docs/RepositoryListEntry.md +50 -0
  63. data/docs/RestrictedImages.md +22 -0
  64. data/docs/RpcStatus.md +22 -0
  65. data/docs/ScimApi.md +642 -0
  66. data/docs/ScimEmail.md +22 -0
  67. data/docs/ScimError.md +22 -0
  68. data/docs/ScimGroup.md +20 -0
  69. data/docs/ScimResourceType.md +28 -0
  70. data/docs/ScimSchema.md +26 -0
  71. data/docs/ScimSchemaAttribute.md +34 -0
  72. data/docs/ScimSchemaParentAttribute.md +36 -0
  73. data/docs/ScimServiceProviderConfig.md +34 -0
  74. data/docs/ScimServiceProviderConfigAuthenticationSchemes.md +24 -0
  75. data/docs/ScimServiceProviderConfigBulk.md +22 -0
  76. data/docs/ScimServiceProviderConfigChangePassword.md +18 -0
  77. data/docs/ScimServiceProviderConfigFilter.md +20 -0
  78. data/docs/ScimServiceProviderConfigPatch.md +18 -0
  79. data/docs/ScimServiceProviderConfigSort.md +18 -0
  80. data/docs/ScimUser.md +34 -0
  81. data/docs/ScimUserMeta.md +24 -0
  82. data/docs/ScimUserName.md +20 -0
  83. data/docs/Tag.md +42 -0
  84. data/docs/TeamRepo.md +20 -0
  85. data/docs/UpdateOrgAccessTokenRequest.md +24 -0
  86. data/docs/UpdateOrgAccessTokenResponse.md +32 -0
  87. data/docs/UpdateRepositoryImmutableTagsRequest.md +20 -0
  88. data/docs/User.md +36 -0
  89. data/docs/Users2FALoginRequest.md +20 -0
  90. data/docs/UsersLoginRequest.md +20 -0
  91. data/docs/V2AccessTokensUuidGet200Response.md +40 -0
  92. data/docs/V2InvitesBulkPost202Response.md +18 -0
  93. data/docs/V2InvitesBulkPostRequest.md +26 -0
  94. data/docs/V2OrgsNameSettingsPutRequest.md +18 -0
  95. data/docs/V2OrgsNameSettingsPutRequestRestrictedImages.md +22 -0
  96. data/docs/V2OrgsOrgNameGroupsGet200Response.md +24 -0
  97. data/docs/V2OrgsOrgNameGroupsGroupNameMembersGet200Response.md +24 -0
  98. data/docs/V2OrgsOrgNameGroupsGroupNameMembersPostRequest.md +18 -0
  99. data/docs/V2OrgsOrgNameGroupsGroupNamePatchRequest.md +20 -0
  100. data/docs/V2OrgsOrgNameGroupsPostRequest.md +20 -0
  101. data/docs/V2OrgsOrgNameInvitesGet200Response.md +18 -0
  102. data/docs/V2OrgsOrgNameMembersExportGet200ResponseInner.md +30 -0
  103. data/docs/V2OrgsOrgNameMembersUsernamePutRequest.md +18 -0
  104. data/docs/V2Scim20ResourceTypesGet200Response.md +22 -0
  105. data/docs/V2Scim20ResourceTypesNameGet404Response.md +22 -0
  106. data/docs/V2Scim20SchemasGet200Response.md +22 -0
  107. data/docs/V2Scim20ServiceProviderConfigGet401Response.md +22 -0
  108. data/docs/V2Scim20ServiceProviderConfigGet500Response.md +22 -0
  109. data/docs/V2Scim20UsersGet200Response.md +26 -0
  110. data/docs/V2Scim20UsersGet400Response.md +24 -0
  111. data/docs/V2Scim20UsersGet403Response.md +22 -0
  112. data/docs/V2Scim20UsersIdPutRequest.md +22 -0
  113. data/docs/V2Scim20UsersIdPutRequestName.md +20 -0
  114. data/docs/V2Scim20UsersPost409Response.md +22 -0
  115. data/docs/V2Scim20UsersPostRequest.md +22 -0
  116. data/docs/ValueError.md +20 -0
  117. data/git_push.sh +57 -0
  118. data/lib/docker-hub/api/access_tokens_api.rb +353 -0
  119. data/lib/docker-hub/api/audit_logs_api.rb +169 -0
  120. data/lib/docker-hub/api/authentication_api_api.rb +222 -0
  121. data/lib/docker-hub/api/groups_api.rb +690 -0
  122. data/lib/docker-hub/api/invites_api.rb +282 -0
  123. data/lib/docker-hub/api/org_access_tokens_api.rb +371 -0
  124. data/lib/docker-hub/api/org_settings_api.rb +159 -0
  125. data/lib/docker-hub/api/orgs_api.rb +323 -0
  126. data/lib/docker-hub/api/repositories_api.rb +849 -0
  127. data/lib/docker-hub/api/scim_api.rb +615 -0
  128. data/lib/docker-hub/api_client.rb +394 -0
  129. data/lib/docker-hub/api_error.rb +58 -0
  130. data/lib/docker-hub/configuration.rb +306 -0
  131. data/lib/docker-hub/models/access_token.rb +316 -0
  132. data/lib/docker-hub/models/audit_log.rb +271 -0
  133. data/lib/docker-hub/models/audit_log_action.rb +236 -0
  134. data/lib/docker-hub/models/audit_log_actions.rb +227 -0
  135. data/lib/docker-hub/models/auth_create_access_token_request.rb +240 -0
  136. data/lib/docker-hub/models/auth_create_token_response.rb +216 -0
  137. data/lib/docker-hub/models/bulk_invite.rb +217 -0
  138. data/lib/docker-hub/models/bulk_invite_invitees_inner.rb +234 -0
  139. data/lib/docker-hub/models/category.rb +289 -0
  140. data/lib/docker-hub/models/create_access_token_request.rb +279 -0
  141. data/lib/docker-hub/models/create_org_access_token_request.rb +248 -0
  142. data/lib/docker-hub/models/create_org_access_token_response.rb +298 -0
  143. data/lib/docker-hub/models/email_address.rb +250 -0
  144. data/lib/docker-hub/models/email_with_username.rb +266 -0
  145. data/lib/docker-hub/models/error.rb +234 -0
  146. data/lib/docker-hub/models/get_access_tokens_response.rb +252 -0
  147. data/lib/docker-hub/models/get_audit_actions_response.rb +218 -0
  148. data/lib/docker-hub/models/get_audit_logs_response.rb +218 -0
  149. data/lib/docker-hub/models/get_org_access_token_response.rb +289 -0
  150. data/lib/docker-hub/models/get_org_access_tokens_response.rb +243 -0
  151. data/lib/docker-hub/models/group_member.rb +339 -0
  152. data/lib/docker-hub/models/image.rb +363 -0
  153. data/lib/docker-hub/models/immutable_tags_settings.rb +241 -0
  154. data/lib/docker-hub/models/immutable_tags_verify_request.rb +243 -0
  155. data/lib/docker-hub/models/immutable_tags_verify_response.rb +224 -0
  156. data/lib/docker-hub/models/invite.rb +263 -0
  157. data/lib/docker-hub/models/layer.rb +236 -0
  158. data/lib/docker-hub/models/legacy_email_address.rb +266 -0
  159. data/lib/docker-hub/models/list_repositories_response.rb +255 -0
  160. data/lib/docker-hub/models/org_access_token.rb +270 -0
  161. data/lib/docker-hub/models/org_access_token_resource.rb +271 -0
  162. data/lib/docker-hub/models/org_group.rb +255 -0
  163. data/lib/docker-hub/models/org_member.rb +431 -0
  164. data/lib/docker-hub/models/org_member_paginated.rb +247 -0
  165. data/lib/docker-hub/models/org_settings.rb +214 -0
  166. data/lib/docker-hub/models/page.rb +237 -0
  167. data/lib/docker-hub/models/paginated_tags.rb +255 -0
  168. data/lib/docker-hub/models/patch_access_token_request.rb +251 -0
  169. data/lib/docker-hub/models/post_users2_fa_login_error_response.rb +216 -0
  170. data/lib/docker-hub/models/post_users_login_error_response.rb +234 -0
  171. data/lib/docker-hub/models/post_users_login_success_response.rb +216 -0
  172. data/lib/docker-hub/models/protobuf_any.rb +223 -0
  173. data/lib/docker-hub/models/repo_creation_request.rb +358 -0
  174. data/lib/docker-hub/models/repo_permissions.rb +256 -0
  175. data/lib/docker-hub/models/repository_group.rb +269 -0
  176. data/lib/docker-hub/models/repository_group_creation_request.rb +273 -0
  177. data/lib/docker-hub/models/repository_info.rb +609 -0
  178. data/lib/docker-hub/models/repository_list_entry.rb +488 -0
  179. data/lib/docker-hub/models/restricted_images.rb +235 -0
  180. data/lib/docker-hub/models/rpc_status.rb +234 -0
  181. data/lib/docker-hub/models/scim_email.rb +232 -0
  182. data/lib/docker-hub/models/scim_error.rb +236 -0
  183. data/lib/docker-hub/models/scim_group.rb +223 -0
  184. data/lib/docker-hub/models/scim_resource_type.rb +261 -0
  185. data/lib/docker-hub/models/scim_schema.rb +254 -0
  186. data/lib/docker-hub/models/scim_schema_attribute.rb +320 -0
  187. data/lib/docker-hub/models/scim_schema_parent_attribute.rb +338 -0
  188. data/lib/docker-hub/models/scim_service_provider_config.rb +288 -0
  189. data/lib/docker-hub/models/scim_service_provider_config_authentication_schemes.rb +241 -0
  190. data/lib/docker-hub/models/scim_service_provider_config_bulk.rb +232 -0
  191. data/lib/docker-hub/models/scim_service_provider_config_change_password.rb +214 -0
  192. data/lib/docker-hub/models/scim_service_provider_config_filter.rb +223 -0
  193. data/lib/docker-hub/models/scim_service_provider_config_patch.rb +214 -0
  194. data/lib/docker-hub/models/scim_service_provider_config_sort.rb +214 -0
  195. data/lib/docker-hub/models/scim_user.rb +295 -0
  196. data/lib/docker-hub/models/scim_user_meta.rb +243 -0
  197. data/lib/docker-hub/models/scim_user_name.rb +223 -0
  198. data/lib/docker-hub/models/tag.rb +371 -0
  199. data/lib/docker-hub/models/team_repo.rb +244 -0
  200. data/lib/docker-hub/models/update_org_access_token_request.rb +247 -0
  201. data/lib/docker-hub/models/update_org_access_token_response.rb +289 -0
  202. data/lib/docker-hub/models/update_repository_immutable_tags_request.rb +241 -0
  203. data/lib/docker-hub/models/user.rb +330 -0
  204. data/lib/docker-hub/models/users2_fa_login_request.rb +240 -0
  205. data/lib/docker-hub/models/users_login_request.rb +240 -0
  206. data/lib/docker-hub/models/v2_access_tokens_uuid_get200_response.rb +323 -0
  207. data/lib/docker-hub/models/v2_invites_bulk_post202_response.rb +214 -0
  208. data/lib/docker-hub/models/v2_invites_bulk_post_request.rb +271 -0
  209. data/lib/docker-hub/models/v2_orgs_name_settings_put_request.rb +221 -0
  210. data/lib/docker-hub/models/v2_orgs_name_settings_put_request_restricted_images.rb +263 -0
  211. data/lib/docker-hub/models/v2_orgs_org_name_groups_get200_response.rb +243 -0
  212. data/lib/docker-hub/models/v2_orgs_org_name_groups_group_name_members_get200_response.rb +243 -0
  213. data/lib/docker-hub/models/v2_orgs_org_name_groups_group_name_members_post_request.rb +221 -0
  214. data/lib/docker-hub/models/v2_orgs_org_name_groups_group_name_patch_request.rb +223 -0
  215. data/lib/docker-hub/models/v2_orgs_org_name_groups_post_request.rb +230 -0
  216. data/lib/docker-hub/models/v2_orgs_org_name_invites_get200_response.rb +216 -0
  217. data/lib/docker-hub/models/v2_orgs_org_name_members_export_get200_response_inner.rb +356 -0
  218. data/lib/docker-hub/models/v2_orgs_org_name_members_username_put_request.rb +256 -0
  219. data/lib/docker-hub/models/v2_scim20_resource_types_get200_response.rb +236 -0
  220. data/lib/docker-hub/models/v2_scim20_resource_types_name_get404_response.rb +243 -0
  221. data/lib/docker-hub/models/v2_scim20_schemas_get200_response.rb +236 -0
  222. data/lib/docker-hub/models/v2_scim20_service_provider_config_get401_response.rb +243 -0
  223. data/lib/docker-hub/models/v2_scim20_service_provider_config_get500_response.rb +243 -0
  224. data/lib/docker-hub/models/v2_scim20_users_get200_response.rb +254 -0
  225. data/lib/docker-hub/models/v2_scim20_users_get400_response.rb +253 -0
  226. data/lib/docker-hub/models/v2_scim20_users_get403_response.rb +243 -0
  227. data/lib/docker-hub/models/v2_scim20_users_id_put_request.rb +244 -0
  228. data/lib/docker-hub/models/v2_scim20_users_id_put_request_name.rb +230 -0
  229. data/lib/docker-hub/models/v2_scim20_users_post409_response.rb +243 -0
  230. data/lib/docker-hub/models/v2_scim20_users_post_request.rb +249 -0
  231. data/lib/docker-hub/models/value_error.rb +226 -0
  232. data/lib/docker-hub/version.rb +15 -0
  233. data/lib/docker-hub.rb +150 -0
  234. data/spec/api/access_tokens_api_spec.rb +97 -0
  235. data/spec/api/audit_logs_api_spec.rb +66 -0
  236. data/spec/api/authentication_api_api_spec.rb +71 -0
  237. data/spec/api/groups_api_spec.rb +162 -0
  238. data/spec/api/invites_api_spec.rb +84 -0
  239. data/spec/api/org_access_tokens_api_spec.rb +100 -0
  240. data/spec/api/org_settings_api_spec.rb +60 -0
  241. data/spec/api/orgs_api_spec.rb +92 -0
  242. data/spec/api/repositories_api_spec.rb +183 -0
  243. data/spec/api/scim_api_spec.rb +146 -0
  244. data/spec/models/access_token_spec.rb +102 -0
  245. data/spec/models/audit_log_action_spec.rb +48 -0
  246. data/spec/models/audit_log_actions_spec.rb +42 -0
  247. data/spec/models/audit_log_spec.rb +72 -0
  248. data/spec/models/auth_create_access_token_request_spec.rb +42 -0
  249. data/spec/models/auth_create_token_response_spec.rb +36 -0
  250. data/spec/models/bulk_invite_invitees_inner_spec.rb +48 -0
  251. data/spec/models/bulk_invite_spec.rb +36 -0
  252. data/spec/models/category_spec.rb +42 -0
  253. data/spec/models/create_access_token_request_spec.rb +48 -0
  254. data/spec/models/create_org_access_token_request_spec.rb +54 -0
  255. data/spec/models/create_org_access_token_response_spec.rb +84 -0
  256. data/spec/models/email_address_spec.rb +60 -0
  257. data/spec/models/email_with_username_spec.rb +66 -0
  258. data/spec/models/error_spec.rb +48 -0
  259. data/spec/models/get_access_tokens_response_spec.rb +60 -0
  260. data/spec/models/get_audit_actions_response_spec.rb +36 -0
  261. data/spec/models/get_audit_logs_response_spec.rb +36 -0
  262. data/spec/models/get_org_access_token_response_spec.rb +78 -0
  263. data/spec/models/get_org_access_tokens_response_spec.rb +54 -0
  264. data/spec/models/group_member_spec.rb +100 -0
  265. data/spec/models/image_spec.rb +106 -0
  266. data/spec/models/immutable_tags_settings_spec.rb +42 -0
  267. data/spec/models/immutable_tags_verify_request_spec.rb +36 -0
  268. data/spec/models/immutable_tags_verify_response_spec.rb +36 -0
  269. data/spec/models/invite_spec.rb +66 -0
  270. data/spec/models/layer_spec.rb +48 -0
  271. data/spec/models/legacy_email_address_spec.rb +66 -0
  272. data/spec/models/list_repositories_response_spec.rb +54 -0
  273. data/spec/models/org_access_token_resource_spec.rb +52 -0
  274. data/spec/models/org_access_token_spec.rb +72 -0
  275. data/spec/models/org_group_spec.rb +60 -0
  276. data/spec/models/org_member_paginated_spec.rb +54 -0
  277. data/spec/models/org_member_spec.rb +146 -0
  278. data/spec/models/org_settings_spec.rb +36 -0
  279. data/spec/models/page_spec.rb +48 -0
  280. data/spec/models/paginated_tags_spec.rb +54 -0
  281. data/spec/models/patch_access_token_request_spec.rb +42 -0
  282. data/spec/models/post_users2_fa_login_error_response_spec.rb +36 -0
  283. data/spec/models/post_users_login_error_response_spec.rb +42 -0
  284. data/spec/models/post_users_login_success_response_spec.rb +36 -0
  285. data/spec/models/protobuf_any_spec.rb +42 -0
  286. data/spec/models/repo_creation_request_spec.rb +66 -0
  287. data/spec/models/repo_permissions_spec.rb +48 -0
  288. data/spec/models/repository_group_creation_request_spec.rb +46 -0
  289. data/spec/models/repository_group_spec.rb +52 -0
  290. data/spec/models/repository_info_spec.rb +186 -0
  291. data/spec/models/repository_list_entry_spec.rb +140 -0
  292. data/spec/models/restricted_images_spec.rb +48 -0
  293. data/spec/models/rpc_status_spec.rb +48 -0
  294. data/spec/models/scim_email_spec.rb +48 -0
  295. data/spec/models/scim_error_spec.rb +48 -0
  296. data/spec/models/scim_group_spec.rb +42 -0
  297. data/spec/models/scim_resource_type_spec.rb +66 -0
  298. data/spec/models/scim_schema_attribute_spec.rb +88 -0
  299. data/spec/models/scim_schema_parent_attribute_spec.rb +94 -0
  300. data/spec/models/scim_schema_spec.rb +60 -0
  301. data/spec/models/scim_service_provider_config_authentication_schemes_spec.rb +54 -0
  302. data/spec/models/scim_service_provider_config_bulk_spec.rb +48 -0
  303. data/spec/models/scim_service_provider_config_change_password_spec.rb +36 -0
  304. data/spec/models/scim_service_provider_config_filter_spec.rb +42 -0
  305. data/spec/models/scim_service_provider_config_patch_spec.rb +36 -0
  306. data/spec/models/scim_service_provider_config_sort_spec.rb +36 -0
  307. data/spec/models/scim_service_provider_config_spec.rb +84 -0
  308. data/spec/models/scim_user_meta_spec.rb +54 -0
  309. data/spec/models/scim_user_name_spec.rb +42 -0
  310. data/spec/models/scim_user_spec.rb +84 -0
  311. data/spec/models/tag_spec.rb +112 -0
  312. data/spec/models/team_repo_spec.rb +46 -0
  313. data/spec/models/update_org_access_token_request_spec.rb +54 -0
  314. data/spec/models/update_org_access_token_response_spec.rb +78 -0
  315. data/spec/models/update_repository_immutable_tags_request_spec.rb +42 -0
  316. data/spec/models/user_spec.rb +94 -0
  317. data/spec/models/users2_fa_login_request_spec.rb +42 -0
  318. data/spec/models/users_login_request_spec.rb +42 -0
  319. data/spec/models/v2_access_tokens_uuid_get200_response_spec.rb +102 -0
  320. data/spec/models/v2_invites_bulk_post202_response_spec.rb +36 -0
  321. data/spec/models/v2_invites_bulk_post_request_spec.rb +60 -0
  322. data/spec/models/v2_orgs_name_settings_put_request_restricted_images_spec.rb +48 -0
  323. data/spec/models/v2_orgs_name_settings_put_request_spec.rb +36 -0
  324. data/spec/models/v2_orgs_org_name_groups_get200_response_spec.rb +54 -0
  325. data/spec/models/v2_orgs_org_name_groups_group_name_members_get200_response_spec.rb +54 -0
  326. data/spec/models/v2_orgs_org_name_groups_group_name_members_post_request_spec.rb +36 -0
  327. data/spec/models/v2_orgs_org_name_groups_group_name_patch_request_spec.rb +42 -0
  328. data/spec/models/v2_orgs_org_name_groups_post_request_spec.rb +42 -0
  329. data/spec/models/v2_orgs_org_name_invites_get200_response_spec.rb +36 -0
  330. data/spec/models/v2_orgs_org_name_members_export_get200_response_inner_spec.rb +80 -0
  331. data/spec/models/v2_orgs_org_name_members_username_put_request_spec.rb +40 -0
  332. data/spec/models/v2_scim20_resource_types_get200_response_spec.rb +48 -0
  333. data/spec/models/v2_scim20_resource_types_name_get404_response_spec.rb +48 -0
  334. data/spec/models/v2_scim20_schemas_get200_response_spec.rb +48 -0
  335. data/spec/models/v2_scim20_service_provider_config_get401_response_spec.rb +48 -0
  336. data/spec/models/v2_scim20_service_provider_config_get500_response_spec.rb +48 -0
  337. data/spec/models/v2_scim20_users_get200_response_spec.rb +60 -0
  338. data/spec/models/v2_scim20_users_get400_response_spec.rb +54 -0
  339. data/spec/models/v2_scim20_users_get403_response_spec.rb +48 -0
  340. data/spec/models/v2_scim20_users_id_put_request_name_spec.rb +42 -0
  341. data/spec/models/v2_scim20_users_id_put_request_spec.rb +48 -0
  342. data/spec/models/v2_scim20_users_post409_response_spec.rb +48 -0
  343. data/spec/models/v2_scim20_users_post_request_spec.rb +48 -0
  344. data/spec/models/value_error_spec.rb +42 -0
  345. data/spec/spec_helper.rb +111 -0
  346. metadata +539 -0
@@ -0,0 +1,488 @@
1
+ =begin
2
+ #Docker HUB API
3
+
4
+ #Docker Hub is a service provided by Docker for finding and sharing container images with your team. It is the world's largest library and community for container images. In addition to the [Docker Hub UI](https://docs.docker.com/docker-hub/) and [Docker Hub CLI tool](https://github.com/docker/hub-tool#readme) (currently experimental), Docker provides an API that allows you to interact with Docker Hub. Browse through the Docker Hub API documentation to explore the supported endpoints.
5
+
6
+ The version of the OpenAPI document: 2-beta
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 7.2.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module DockerHub
17
+ class RepositoryListEntry
18
+ # Name of the repository
19
+ attr_accessor :name
20
+
21
+ # Namespace (organization or username) that owns the repository
22
+ attr_accessor :namespace
23
+
24
+ # Type of repository
25
+ attr_accessor :repository_type
26
+
27
+ # Repository status code
28
+ attr_accessor :status
29
+
30
+ # Human-readable repository status
31
+ attr_accessor :status_description
32
+
33
+ # Repository description
34
+ attr_accessor :description
35
+
36
+ # Whether the repository is private
37
+ attr_accessor :is_private
38
+
39
+ # Number of users who starred this repository
40
+ attr_accessor :star_count
41
+
42
+ # Total number of pulls for this repository
43
+ attr_accessor :pull_count
44
+
45
+ # ISO 8601 timestamp of when the repository was last updated
46
+ attr_accessor :last_updated
47
+
48
+ # ISO 8601 timestamp of when the repository was last modified
49
+ attr_accessor :last_modified
50
+
51
+ # ISO 8601 timestamp of when the repository was created
52
+ attr_accessor :date_registered
53
+
54
+ # User's affiliation with the repository (empty string if no affiliation)
55
+ attr_accessor :affiliation
56
+
57
+ # Media types supported by this repository
58
+ attr_accessor :media_types
59
+
60
+ # Content types supported by this repository
61
+ attr_accessor :content_types
62
+
63
+ # Categories associated with this repository
64
+ attr_accessor :categories
65
+
66
+ # Storage size in bytes used by this repository
67
+ attr_accessor :storage_size
68
+
69
+ class EnumAttributeValidator
70
+ attr_reader :datatype
71
+ attr_reader :allowable_values
72
+
73
+ def initialize(datatype, allowable_values)
74
+ @allowable_values = allowable_values.map do |value|
75
+ case datatype.to_s
76
+ when /Integer/i
77
+ value.to_i
78
+ when /Float/i
79
+ value.to_f
80
+ else
81
+ value
82
+ end
83
+ end
84
+ end
85
+
86
+ def valid?(value)
87
+ !value || allowable_values.include?(value)
88
+ end
89
+ end
90
+
91
+ # Attribute mapping from ruby-style variable name to JSON key.
92
+ def self.attribute_map
93
+ {
94
+ :'name' => :'name',
95
+ :'namespace' => :'namespace',
96
+ :'repository_type' => :'repository_type',
97
+ :'status' => :'status',
98
+ :'status_description' => :'status_description',
99
+ :'description' => :'description',
100
+ :'is_private' => :'is_private',
101
+ :'star_count' => :'star_count',
102
+ :'pull_count' => :'pull_count',
103
+ :'last_updated' => :'last_updated',
104
+ :'last_modified' => :'last_modified',
105
+ :'date_registered' => :'date_registered',
106
+ :'affiliation' => :'affiliation',
107
+ :'media_types' => :'media_types',
108
+ :'content_types' => :'content_types',
109
+ :'categories' => :'categories',
110
+ :'storage_size' => :'storage_size'
111
+ }
112
+ end
113
+
114
+ # Returns all the JSON keys this model knows about
115
+ def self.acceptable_attributes
116
+ attribute_map.values
117
+ end
118
+
119
+ # Attribute type mapping.
120
+ def self.openapi_types
121
+ {
122
+ :'name' => :'String',
123
+ :'namespace' => :'String',
124
+ :'repository_type' => :'String',
125
+ :'status' => :'Integer',
126
+ :'status_description' => :'String',
127
+ :'description' => :'String',
128
+ :'is_private' => :'Boolean',
129
+ :'star_count' => :'Integer',
130
+ :'pull_count' => :'Integer',
131
+ :'last_updated' => :'Time',
132
+ :'last_modified' => :'Time',
133
+ :'date_registered' => :'Time',
134
+ :'affiliation' => :'String',
135
+ :'media_types' => :'Array<String>',
136
+ :'content_types' => :'Array<String>',
137
+ :'categories' => :'Array<Category>',
138
+ :'storage_size' => :'Integer'
139
+ }
140
+ end
141
+
142
+ # List of attributes with nullable: true
143
+ def self.openapi_nullable
144
+ Set.new([
145
+ :'repository_type',
146
+ :'description',
147
+ :'last_updated',
148
+ :'last_modified',
149
+ ])
150
+ end
151
+
152
+ # Initializes the object
153
+ # @param [Hash] attributes Model attributes in the form of hash
154
+ def initialize(attributes = {})
155
+ if (!attributes.is_a?(Hash))
156
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DockerHub::RepositoryListEntry` initialize method"
157
+ end
158
+
159
+ # check to see if the attribute exists and convert string to symbol for hash key
160
+ attributes = attributes.each_with_object({}) { |(k, v), h|
161
+ if (!self.class.attribute_map.key?(k.to_sym))
162
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DockerHub::RepositoryListEntry`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
163
+ end
164
+ h[k.to_sym] = v
165
+ }
166
+
167
+ if attributes.key?(:'name')
168
+ self.name = attributes[:'name']
169
+ end
170
+
171
+ if attributes.key?(:'namespace')
172
+ self.namespace = attributes[:'namespace']
173
+ end
174
+
175
+ if attributes.key?(:'repository_type')
176
+ self.repository_type = attributes[:'repository_type']
177
+ end
178
+
179
+ if attributes.key?(:'status')
180
+ self.status = attributes[:'status']
181
+ end
182
+
183
+ if attributes.key?(:'status_description')
184
+ self.status_description = attributes[:'status_description']
185
+ end
186
+
187
+ if attributes.key?(:'description')
188
+ self.description = attributes[:'description']
189
+ end
190
+
191
+ if attributes.key?(:'is_private')
192
+ self.is_private = attributes[:'is_private']
193
+ end
194
+
195
+ if attributes.key?(:'star_count')
196
+ self.star_count = attributes[:'star_count']
197
+ end
198
+
199
+ if attributes.key?(:'pull_count')
200
+ self.pull_count = attributes[:'pull_count']
201
+ end
202
+
203
+ if attributes.key?(:'last_updated')
204
+ self.last_updated = attributes[:'last_updated']
205
+ end
206
+
207
+ if attributes.key?(:'last_modified')
208
+ self.last_modified = attributes[:'last_modified']
209
+ end
210
+
211
+ if attributes.key?(:'date_registered')
212
+ self.date_registered = attributes[:'date_registered']
213
+ end
214
+
215
+ if attributes.key?(:'affiliation')
216
+ self.affiliation = attributes[:'affiliation']
217
+ end
218
+
219
+ if attributes.key?(:'media_types')
220
+ if (value = attributes[:'media_types']).is_a?(Array)
221
+ self.media_types = value
222
+ end
223
+ end
224
+
225
+ if attributes.key?(:'content_types')
226
+ if (value = attributes[:'content_types']).is_a?(Array)
227
+ self.content_types = value
228
+ end
229
+ end
230
+
231
+ if attributes.key?(:'categories')
232
+ if (value = attributes[:'categories']).is_a?(Array)
233
+ self.categories = value
234
+ end
235
+ end
236
+
237
+ if attributes.key?(:'storage_size')
238
+ self.storage_size = attributes[:'storage_size']
239
+ end
240
+ end
241
+
242
+ # Show invalid properties with the reasons. Usually used together with valid?
243
+ # @return Array for valid properties with the reasons
244
+ def list_invalid_properties
245
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
246
+ invalid_properties = Array.new
247
+ if !@star_count.nil? && @star_count < 0
248
+ invalid_properties.push('invalid value for "star_count", must be greater than or equal to 0.')
249
+ end
250
+
251
+ if !@pull_count.nil? && @pull_count < 0
252
+ invalid_properties.push('invalid value for "pull_count", must be greater than or equal to 0.')
253
+ end
254
+
255
+ if !@storage_size.nil? && @storage_size < 0
256
+ invalid_properties.push('invalid value for "storage_size", must be greater than or equal to 0.')
257
+ end
258
+
259
+ invalid_properties
260
+ end
261
+
262
+ # Check to see if the all the properties in the model are valid
263
+ # @return true if the model is valid
264
+ def valid?
265
+ warn '[DEPRECATED] the `valid?` method is obsolete'
266
+ repository_type_validator = EnumAttributeValidator.new('String', ["image", "plugin", "null"])
267
+ return false unless repository_type_validator.valid?(@repository_type)
268
+ status_description_validator = EnumAttributeValidator.new('String', ["active", "inactive"])
269
+ return false unless status_description_validator.valid?(@status_description)
270
+ return false if !@star_count.nil? && @star_count < 0
271
+ return false if !@pull_count.nil? && @pull_count < 0
272
+ return false if !@storage_size.nil? && @storage_size < 0
273
+ true
274
+ end
275
+
276
+ # Custom attribute writer method checking allowed values (enum).
277
+ # @param [Object] repository_type Object to be assigned
278
+ def repository_type=(repository_type)
279
+ validator = EnumAttributeValidator.new('String', ["image", "plugin", "null"])
280
+ unless validator.valid?(repository_type)
281
+ fail ArgumentError, "invalid value for \"repository_type\", must be one of #{validator.allowable_values}."
282
+ end
283
+ @repository_type = repository_type
284
+ end
285
+
286
+ # Custom attribute writer method checking allowed values (enum).
287
+ # @param [Object] status_description Object to be assigned
288
+ def status_description=(status_description)
289
+ validator = EnumAttributeValidator.new('String', ["active", "inactive"])
290
+ unless validator.valid?(status_description)
291
+ fail ArgumentError, "invalid value for \"status_description\", must be one of #{validator.allowable_values}."
292
+ end
293
+ @status_description = status_description
294
+ end
295
+
296
+ # Custom attribute writer method with validation
297
+ # @param [Object] star_count Value to be assigned
298
+ def star_count=(star_count)
299
+ if star_count.nil?
300
+ fail ArgumentError, 'star_count cannot be nil'
301
+ end
302
+
303
+ if star_count < 0
304
+ fail ArgumentError, 'invalid value for "star_count", must be greater than or equal to 0.'
305
+ end
306
+
307
+ @star_count = star_count
308
+ end
309
+
310
+ # Custom attribute writer method with validation
311
+ # @param [Object] pull_count Value to be assigned
312
+ def pull_count=(pull_count)
313
+ if pull_count.nil?
314
+ fail ArgumentError, 'pull_count cannot be nil'
315
+ end
316
+
317
+ if pull_count < 0
318
+ fail ArgumentError, 'invalid value for "pull_count", must be greater than or equal to 0.'
319
+ end
320
+
321
+ @pull_count = pull_count
322
+ end
323
+
324
+ # Custom attribute writer method with validation
325
+ # @param [Object] storage_size Value to be assigned
326
+ def storage_size=(storage_size)
327
+ if storage_size.nil?
328
+ fail ArgumentError, 'storage_size cannot be nil'
329
+ end
330
+
331
+ if storage_size < 0
332
+ fail ArgumentError, 'invalid value for "storage_size", must be greater than or equal to 0.'
333
+ end
334
+
335
+ @storage_size = storage_size
336
+ end
337
+
338
+ # Checks equality by comparing each attribute.
339
+ # @param [Object] Object to be compared
340
+ def ==(o)
341
+ return true if self.equal?(o)
342
+ self.class == o.class &&
343
+ name == o.name &&
344
+ namespace == o.namespace &&
345
+ repository_type == o.repository_type &&
346
+ status == o.status &&
347
+ status_description == o.status_description &&
348
+ description == o.description &&
349
+ is_private == o.is_private &&
350
+ star_count == o.star_count &&
351
+ pull_count == o.pull_count &&
352
+ last_updated == o.last_updated &&
353
+ last_modified == o.last_modified &&
354
+ date_registered == o.date_registered &&
355
+ affiliation == o.affiliation &&
356
+ media_types == o.media_types &&
357
+ content_types == o.content_types &&
358
+ categories == o.categories &&
359
+ storage_size == o.storage_size
360
+ end
361
+
362
+ # @see the `==` method
363
+ # @param [Object] Object to be compared
364
+ def eql?(o)
365
+ self == o
366
+ end
367
+
368
+ # Calculates hash code according to all attributes.
369
+ # @return [Integer] Hash code
370
+ def hash
371
+ [name, namespace, repository_type, status, status_description, description, is_private, star_count, pull_count, last_updated, last_modified, date_registered, affiliation, media_types, content_types, categories, storage_size].hash
372
+ end
373
+
374
+ # Builds the object from hash
375
+ # @param [Hash] attributes Model attributes in the form of hash
376
+ # @return [Object] Returns the model itself
377
+ def self.build_from_hash(attributes)
378
+ return nil unless attributes.is_a?(Hash)
379
+ attributes = attributes.transform_keys(&:to_sym)
380
+ transformed_hash = {}
381
+ openapi_types.each_pair do |key, type|
382
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
383
+ transformed_hash["#{key}"] = nil
384
+ elsif type =~ /\AArray<(.*)>/i
385
+ # check to ensure the input is an array given that the attribute
386
+ # is documented as an array but the input is not
387
+ if attributes[attribute_map[key]].is_a?(Array)
388
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
389
+ end
390
+ elsif !attributes[attribute_map[key]].nil?
391
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
392
+ end
393
+ end
394
+ new(transformed_hash)
395
+ end
396
+
397
+ # Deserializes the data based on type
398
+ # @param string type Data type
399
+ # @param string value Value to be deserialized
400
+ # @return [Object] Deserialized data
401
+ def self._deserialize(type, value)
402
+ case type.to_sym
403
+ when :Time
404
+ Time.parse(value)
405
+ when :Date
406
+ Date.parse(value)
407
+ when :String
408
+ value.to_s
409
+ when :Integer
410
+ value.to_i
411
+ when :Float
412
+ value.to_f
413
+ when :Boolean
414
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
415
+ true
416
+ else
417
+ false
418
+ end
419
+ when :Object
420
+ # generic object (usually a Hash), return directly
421
+ value
422
+ when /\AArray<(?<inner_type>.+)>\z/
423
+ inner_type = Regexp.last_match[:inner_type]
424
+ value.map { |v| _deserialize(inner_type, v) }
425
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
426
+ k_type = Regexp.last_match[:k_type]
427
+ v_type = Regexp.last_match[:v_type]
428
+ {}.tap do |hash|
429
+ value.each do |k, v|
430
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
431
+ end
432
+ end
433
+ else # model
434
+ # models (e.g. Pet) or oneOf
435
+ klass = DockerHub.const_get(type)
436
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
437
+ end
438
+ end
439
+
440
+ # Returns the string representation of the object
441
+ # @return [String] String presentation of the object
442
+ def to_s
443
+ to_hash.to_s
444
+ end
445
+
446
+ # to_body is an alias to to_hash (backward compatibility)
447
+ # @return [Hash] Returns the object in the form of hash
448
+ def to_body
449
+ to_hash
450
+ end
451
+
452
+ # Returns the object in the form of hash
453
+ # @return [Hash] Returns the object in the form of hash
454
+ def to_hash
455
+ hash = {}
456
+ self.class.attribute_map.each_pair do |attr, param|
457
+ value = self.send(attr)
458
+ if value.nil?
459
+ is_nullable = self.class.openapi_nullable.include?(attr)
460
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
461
+ end
462
+
463
+ hash[param] = _to_hash(value)
464
+ end
465
+ hash
466
+ end
467
+
468
+ # Outputs non-array value in the form of hash
469
+ # For object, use to_hash. Otherwise, just return the value
470
+ # @param [Object] value Any valid value
471
+ # @return [Hash] Returns the value in the form of hash
472
+ def _to_hash(value)
473
+ if value.is_a?(Array)
474
+ value.compact.map { |v| _to_hash(v) }
475
+ elsif value.is_a?(Hash)
476
+ {}.tap do |hash|
477
+ value.each { |k, v| hash[k] = _to_hash(v) }
478
+ end
479
+ elsif value.respond_to? :to_hash
480
+ value.to_hash
481
+ else
482
+ value
483
+ end
484
+ end
485
+
486
+ end
487
+
488
+ end