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,849 @@
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 'cgi'
14
+
15
+ module DockerHub
16
+ class RepositoriesApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Check repository in a namespace
23
+ # Check a repository within the specified namespace (organization or user). Public repositories are accessible to everyone, while private repositories require appropriate authentication and permissions.
24
+ # @param namespace [String]
25
+ # @param repository [String]
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [RepositoryInfo]
28
+ def check_repository(namespace, repository, opts = {})
29
+ data, _status_code, _headers = check_repository_with_http_info(namespace, repository, opts)
30
+ data
31
+ end
32
+
33
+ # Check repository in a namespace
34
+ # Check a repository within the specified namespace (organization or user). Public repositories are accessible to everyone, while private repositories require appropriate authentication and permissions.
35
+ # @param namespace [String]
36
+ # @param repository [String]
37
+ # @param [Hash] opts the optional parameters
38
+ # @return [Array<(RepositoryInfo, Integer, Hash)>] RepositoryInfo data, response status code and response headers
39
+ def check_repository_with_http_info(namespace, repository, opts = {})
40
+ if @api_client.config.debugging
41
+ @api_client.config.logger.debug 'Calling API: RepositoriesApi.check_repository ...'
42
+ end
43
+ # verify the required parameter 'namespace' is set
44
+ if @api_client.config.client_side_validation && namespace.nil?
45
+ fail ArgumentError, "Missing the required parameter 'namespace' when calling RepositoriesApi.check_repository"
46
+ end
47
+ # verify the required parameter 'repository' is set
48
+ if @api_client.config.client_side_validation && repository.nil?
49
+ fail ArgumentError, "Missing the required parameter 'repository' when calling RepositoriesApi.check_repository"
50
+ end
51
+ # resource path
52
+ local_var_path = '/v2/namespaces/{namespace}/repositories/{repository}'.sub('{' + 'namespace' + '}', CGI.escape(namespace.to_s)).sub('{' + 'repository' + '}', CGI.escape(repository.to_s))
53
+
54
+ # query parameters
55
+ query_params = opts[:query_params] || {}
56
+
57
+ # header parameters
58
+ header_params = opts[:header_params] || {}
59
+ # HTTP header 'Accept' (if needed)
60
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
61
+
62
+ # form parameters
63
+ form_params = opts[:form_params] || {}
64
+
65
+ # http body (model)
66
+ post_body = opts[:debug_body]
67
+
68
+ # return_type
69
+ return_type = opts[:debug_return_type] || 'RepositoryInfo'
70
+
71
+ # auth_names
72
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
73
+
74
+ new_options = opts.merge(
75
+ :operation => :"RepositoriesApi.check_repository",
76
+ :header_params => header_params,
77
+ :query_params => query_params,
78
+ :form_params => form_params,
79
+ :body => post_body,
80
+ :auth_names => auth_names,
81
+ :return_type => return_type
82
+ )
83
+
84
+ data, status_code, headers = @api_client.call_api(:HEAD, local_var_path, new_options)
85
+ if @api_client.config.debugging
86
+ @api_client.config.logger.debug "API called: RepositoriesApi#check_repository\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
87
+ end
88
+ return data, status_code, headers
89
+ end
90
+
91
+ # Create a new repository
92
+ # Creates a new repository within the specified namespace. The repository will be created with the provided metadata including name, description, and privacy settings.
93
+ # @param namespace [String]
94
+ # @param repo_creation_request [RepoCreationRequest]
95
+ # @param [Hash] opts the optional parameters
96
+ # @return [RepositoryInfo]
97
+ def create_repository(namespace, repo_creation_request, opts = {})
98
+ data, _status_code, _headers = create_repository_with_http_info(namespace, repo_creation_request, opts)
99
+ data
100
+ end
101
+
102
+ # Create a new repository
103
+ # Creates a new repository within the specified namespace. The repository will be created with the provided metadata including name, description, and privacy settings.
104
+ # @param namespace [String]
105
+ # @param repo_creation_request [RepoCreationRequest]
106
+ # @param [Hash] opts the optional parameters
107
+ # @return [Array<(RepositoryInfo, Integer, Hash)>] RepositoryInfo data, response status code and response headers
108
+ def create_repository_with_http_info(namespace, repo_creation_request, opts = {})
109
+ if @api_client.config.debugging
110
+ @api_client.config.logger.debug 'Calling API: RepositoriesApi.create_repository ...'
111
+ end
112
+ # verify the required parameter 'namespace' is set
113
+ if @api_client.config.client_side_validation && namespace.nil?
114
+ fail ArgumentError, "Missing the required parameter 'namespace' when calling RepositoriesApi.create_repository"
115
+ end
116
+ # verify the required parameter 'repo_creation_request' is set
117
+ if @api_client.config.client_side_validation && repo_creation_request.nil?
118
+ fail ArgumentError, "Missing the required parameter 'repo_creation_request' when calling RepositoriesApi.create_repository"
119
+ end
120
+ # resource path
121
+ local_var_path = '/v2/namespaces/{namespace}/repositories'.sub('{' + 'namespace' + '}', CGI.escape(namespace.to_s))
122
+
123
+ # query parameters
124
+ query_params = opts[:query_params] || {}
125
+
126
+ # header parameters
127
+ header_params = opts[:header_params] || {}
128
+ # HTTP header 'Accept' (if needed)
129
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
130
+ # HTTP header 'Content-Type'
131
+ content_type = @api_client.select_header_content_type(['application/json'])
132
+ if !content_type.nil?
133
+ header_params['Content-Type'] = content_type
134
+ end
135
+
136
+ # form parameters
137
+ form_params = opts[:form_params] || {}
138
+
139
+ # http body (model)
140
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(repo_creation_request)
141
+
142
+ # return_type
143
+ return_type = opts[:debug_return_type] || 'RepositoryInfo'
144
+
145
+ # auth_names
146
+ auth_names = opts[:debug_auth_names] || []
147
+
148
+ new_options = opts.merge(
149
+ :operation => :"RepositoriesApi.create_repository",
150
+ :header_params => header_params,
151
+ :query_params => query_params,
152
+ :form_params => form_params,
153
+ :body => post_body,
154
+ :auth_names => auth_names,
155
+ :return_type => return_type
156
+ )
157
+
158
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
159
+ if @api_client.config.debugging
160
+ @api_client.config.logger.debug "API called: RepositoriesApi#create_repository\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
161
+ end
162
+ return data, status_code, headers
163
+ end
164
+
165
+ # Assign a group (Team) to a repository for access
166
+ # @param namespace [String]
167
+ # @param repository [String]
168
+ # @param repository_group_creation_request [RepositoryGroupCreationRequest]
169
+ # @param [Hash] opts the optional parameters
170
+ # @return [RepositoryGroup]
171
+ def create_repository_group(namespace, repository, repository_group_creation_request, opts = {})
172
+ data, _status_code, _headers = create_repository_group_with_http_info(namespace, repository, repository_group_creation_request, opts)
173
+ data
174
+ end
175
+
176
+ # Assign a group (Team) to a repository for access
177
+ # @param namespace [String]
178
+ # @param repository [String]
179
+ # @param repository_group_creation_request [RepositoryGroupCreationRequest]
180
+ # @param [Hash] opts the optional parameters
181
+ # @return [Array<(RepositoryGroup, Integer, Hash)>] RepositoryGroup data, response status code and response headers
182
+ def create_repository_group_with_http_info(namespace, repository, repository_group_creation_request, opts = {})
183
+ if @api_client.config.debugging
184
+ @api_client.config.logger.debug 'Calling API: RepositoriesApi.create_repository_group ...'
185
+ end
186
+ # verify the required parameter 'namespace' is set
187
+ if @api_client.config.client_side_validation && namespace.nil?
188
+ fail ArgumentError, "Missing the required parameter 'namespace' when calling RepositoriesApi.create_repository_group"
189
+ end
190
+ # verify the required parameter 'repository' is set
191
+ if @api_client.config.client_side_validation && repository.nil?
192
+ fail ArgumentError, "Missing the required parameter 'repository' when calling RepositoriesApi.create_repository_group"
193
+ end
194
+ # verify the required parameter 'repository_group_creation_request' is set
195
+ if @api_client.config.client_side_validation && repository_group_creation_request.nil?
196
+ fail ArgumentError, "Missing the required parameter 'repository_group_creation_request' when calling RepositoriesApi.create_repository_group"
197
+ end
198
+ # resource path
199
+ local_var_path = '/v2/repositories/{namespace}/{repository}/groups'.sub('{' + 'namespace' + '}', CGI.escape(namespace.to_s)).sub('{' + 'repository' + '}', CGI.escape(repository.to_s))
200
+
201
+ # query parameters
202
+ query_params = opts[:query_params] || {}
203
+
204
+ # header parameters
205
+ header_params = opts[:header_params] || {}
206
+ # HTTP header 'Accept' (if needed)
207
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
208
+ # HTTP header 'Content-Type'
209
+ content_type = @api_client.select_header_content_type(['application/json'])
210
+ if !content_type.nil?
211
+ header_params['Content-Type'] = content_type
212
+ end
213
+
214
+ # form parameters
215
+ form_params = opts[:form_params] || {}
216
+
217
+ # http body (model)
218
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(repository_group_creation_request)
219
+
220
+ # return_type
221
+ return_type = opts[:debug_return_type] || 'RepositoryGroup'
222
+
223
+ # auth_names
224
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
225
+
226
+ new_options = opts.merge(
227
+ :operation => :"RepositoriesApi.create_repository_group",
228
+ :header_params => header_params,
229
+ :query_params => query_params,
230
+ :form_params => form_params,
231
+ :body => post_body,
232
+ :auth_names => auth_names,
233
+ :return_type => return_type
234
+ )
235
+
236
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
237
+ if @api_client.config.debugging
238
+ @api_client.config.logger.debug "API called: RepositoriesApi#create_repository_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
239
+ end
240
+ return data, status_code, headers
241
+ end
242
+
243
+ # Get repository in a namespace
244
+ # Returns a repository within the specified namespace (organization or user). Public repositories are accessible to everyone, while private repositories require appropriate authentication and permissions.
245
+ # @param namespace [String]
246
+ # @param repository [String]
247
+ # @param [Hash] opts the optional parameters
248
+ # @return [RepositoryInfo]
249
+ def get_repository(namespace, repository, opts = {})
250
+ data, _status_code, _headers = get_repository_with_http_info(namespace, repository, opts)
251
+ data
252
+ end
253
+
254
+ # Get repository in a namespace
255
+ # Returns a repository within the specified namespace (organization or user). Public repositories are accessible to everyone, while private repositories require appropriate authentication and permissions.
256
+ # @param namespace [String]
257
+ # @param repository [String]
258
+ # @param [Hash] opts the optional parameters
259
+ # @return [Array<(RepositoryInfo, Integer, Hash)>] RepositoryInfo data, response status code and response headers
260
+ def get_repository_with_http_info(namespace, repository, opts = {})
261
+ if @api_client.config.debugging
262
+ @api_client.config.logger.debug 'Calling API: RepositoriesApi.get_repository ...'
263
+ end
264
+ # verify the required parameter 'namespace' is set
265
+ if @api_client.config.client_side_validation && namespace.nil?
266
+ fail ArgumentError, "Missing the required parameter 'namespace' when calling RepositoriesApi.get_repository"
267
+ end
268
+ # verify the required parameter 'repository' is set
269
+ if @api_client.config.client_side_validation && repository.nil?
270
+ fail ArgumentError, "Missing the required parameter 'repository' when calling RepositoriesApi.get_repository"
271
+ end
272
+ # resource path
273
+ local_var_path = '/v2/namespaces/{namespace}/repositories/{repository}'.sub('{' + 'namespace' + '}', CGI.escape(namespace.to_s)).sub('{' + 'repository' + '}', CGI.escape(repository.to_s))
274
+
275
+ # query parameters
276
+ query_params = opts[:query_params] || {}
277
+
278
+ # header parameters
279
+ header_params = opts[:header_params] || {}
280
+ # HTTP header 'Accept' (if needed)
281
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
282
+
283
+ # form parameters
284
+ form_params = opts[:form_params] || {}
285
+
286
+ # http body (model)
287
+ post_body = opts[:debug_body]
288
+
289
+ # return_type
290
+ return_type = opts[:debug_return_type] || 'RepositoryInfo'
291
+
292
+ # auth_names
293
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
294
+
295
+ new_options = opts.merge(
296
+ :operation => :"RepositoriesApi.get_repository",
297
+ :header_params => header_params,
298
+ :query_params => query_params,
299
+ :form_params => form_params,
300
+ :body => post_body,
301
+ :auth_names => auth_names,
302
+ :return_type => return_type
303
+ )
304
+
305
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
306
+ if @api_client.config.debugging
307
+ @api_client.config.logger.debug "API called: RepositoriesApi#get_repository\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
308
+ end
309
+ return data, status_code, headers
310
+ end
311
+
312
+ # Read repository tag
313
+ # @param namespace [String]
314
+ # @param repository [String]
315
+ # @param tag [String]
316
+ # @param [Hash] opts the optional parameters
317
+ # @return [Tag]
318
+ def get_repository_tag(namespace, repository, tag, opts = {})
319
+ data, _status_code, _headers = get_repository_tag_with_http_info(namespace, repository, tag, opts)
320
+ data
321
+ end
322
+
323
+ # Read repository tag
324
+ # @param namespace [String]
325
+ # @param repository [String]
326
+ # @param tag [String]
327
+ # @param [Hash] opts the optional parameters
328
+ # @return [Array<(Tag, Integer, Hash)>] Tag data, response status code and response headers
329
+ def get_repository_tag_with_http_info(namespace, repository, tag, opts = {})
330
+ if @api_client.config.debugging
331
+ @api_client.config.logger.debug 'Calling API: RepositoriesApi.get_repository_tag ...'
332
+ end
333
+ # verify the required parameter 'namespace' is set
334
+ if @api_client.config.client_side_validation && namespace.nil?
335
+ fail ArgumentError, "Missing the required parameter 'namespace' when calling RepositoriesApi.get_repository_tag"
336
+ end
337
+ # verify the required parameter 'repository' is set
338
+ if @api_client.config.client_side_validation && repository.nil?
339
+ fail ArgumentError, "Missing the required parameter 'repository' when calling RepositoriesApi.get_repository_tag"
340
+ end
341
+ # verify the required parameter 'tag' is set
342
+ if @api_client.config.client_side_validation && tag.nil?
343
+ fail ArgumentError, "Missing the required parameter 'tag' when calling RepositoriesApi.get_repository_tag"
344
+ end
345
+ # resource path
346
+ local_var_path = '/v2/namespaces/{namespace}/repositories/{repository}/tags/{tag}'.sub('{' + 'namespace' + '}', CGI.escape(namespace.to_s)).sub('{' + 'repository' + '}', CGI.escape(repository.to_s)).sub('{' + 'tag' + '}', CGI.escape(tag.to_s))
347
+
348
+ # query parameters
349
+ query_params = opts[:query_params] || {}
350
+
351
+ # header parameters
352
+ header_params = opts[:header_params] || {}
353
+ # HTTP header 'Accept' (if needed)
354
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
355
+
356
+ # form parameters
357
+ form_params = opts[:form_params] || {}
358
+
359
+ # http body (model)
360
+ post_body = opts[:debug_body]
361
+
362
+ # return_type
363
+ return_type = opts[:debug_return_type] || 'Tag'
364
+
365
+ # auth_names
366
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
367
+
368
+ new_options = opts.merge(
369
+ :operation => :"RepositoriesApi.get_repository_tag",
370
+ :header_params => header_params,
371
+ :query_params => query_params,
372
+ :form_params => form_params,
373
+ :body => post_body,
374
+ :auth_names => auth_names,
375
+ :return_type => return_type
376
+ )
377
+
378
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
379
+ if @api_client.config.debugging
380
+ @api_client.config.logger.debug "API called: RepositoriesApi#get_repository_tag\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
381
+ end
382
+ return data, status_code, headers
383
+ end
384
+
385
+ # List repositories in a namespace
386
+ # Returns a list of repositories within the specified namespace (organization or user). Public repositories are accessible to everyone, while private repositories require appropriate authentication and permissions.
387
+ # @param namespace [String]
388
+ # @param [Hash] opts the optional parameters
389
+ # @option opts [Integer] :page Page number to get. Defaults to 1. (default to 1)
390
+ # @option opts [Integer] :page_size Number of repositories to get per page. Defaults to 10. Max of 100. (default to 10)
391
+ # @option opts [String] :name Filter repositories by name (partial match).
392
+ # @option opts [String] :ordering Order repositories by the specified field. Prefix with &#39;-&#39; for descending order. Available options: - &#x60;name&#x60; / &#x60;-name&#x60;: Repository name (ascending/descending) - &#x60;last_updated&#x60; / &#x60;-last_updated&#x60;: Last update time (ascending/descending) - &#x60;pull_count&#x60; / &#x60;-pull_count&#x60;: Number of pulls (ascending/descending)
393
+ # @return [ListRepositoriesResponse]
394
+ def list_namespace_repositories(namespace, opts = {})
395
+ data, _status_code, _headers = list_namespace_repositories_with_http_info(namespace, opts)
396
+ data
397
+ end
398
+
399
+ # List repositories in a namespace
400
+ # Returns a list of repositories within the specified namespace (organization or user). Public repositories are accessible to everyone, while private repositories require appropriate authentication and permissions.
401
+ # @param namespace [String]
402
+ # @param [Hash] opts the optional parameters
403
+ # @option opts [Integer] :page Page number to get. Defaults to 1. (default to 1)
404
+ # @option opts [Integer] :page_size Number of repositories to get per page. Defaults to 10. Max of 100. (default to 10)
405
+ # @option opts [String] :name Filter repositories by name (partial match).
406
+ # @option opts [String] :ordering Order repositories by the specified field. Prefix with &#39;-&#39; for descending order. Available options: - &#x60;name&#x60; / &#x60;-name&#x60;: Repository name (ascending/descending) - &#x60;last_updated&#x60; / &#x60;-last_updated&#x60;: Last update time (ascending/descending) - &#x60;pull_count&#x60; / &#x60;-pull_count&#x60;: Number of pulls (ascending/descending)
407
+ # @return [Array<(ListRepositoriesResponse, Integer, Hash)>] ListRepositoriesResponse data, response status code and response headers
408
+ def list_namespace_repositories_with_http_info(namespace, opts = {})
409
+ if @api_client.config.debugging
410
+ @api_client.config.logger.debug 'Calling API: RepositoriesApi.list_namespace_repositories ...'
411
+ end
412
+ # verify the required parameter 'namespace' is set
413
+ if @api_client.config.client_side_validation && namespace.nil?
414
+ fail ArgumentError, "Missing the required parameter 'namespace' when calling RepositoriesApi.list_namespace_repositories"
415
+ end
416
+ if @api_client.config.client_side_validation && !opts[:'page'].nil? && opts[:'page'] < 1
417
+ fail ArgumentError, 'invalid value for "opts[:"page"]" when calling RepositoriesApi.list_namespace_repositories, must be greater than or equal to 1.'
418
+ end
419
+
420
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 100
421
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling RepositoriesApi.list_namespace_repositories, must be smaller than or equal to 100.'
422
+ end
423
+
424
+ if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] < 1
425
+ fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling RepositoriesApi.list_namespace_repositories, must be greater than or equal to 1.'
426
+ end
427
+
428
+ allowable_values = ["name", "-name", "last_updated", "-last_updated", "pull_count", "-pull_count"]
429
+ if @api_client.config.client_side_validation && opts[:'ordering'] && !allowable_values.include?(opts[:'ordering'])
430
+ fail ArgumentError, "invalid value for \"ordering\", must be one of #{allowable_values}"
431
+ end
432
+ # resource path
433
+ local_var_path = '/v2/namespaces/{namespace}/repositories'.sub('{' + 'namespace' + '}', CGI.escape(namespace.to_s))
434
+
435
+ # query parameters
436
+ query_params = opts[:query_params] || {}
437
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
438
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
439
+ query_params[:'name'] = opts[:'name'] if !opts[:'name'].nil?
440
+ query_params[:'ordering'] = opts[:'ordering'] if !opts[:'ordering'].nil?
441
+
442
+ # header parameters
443
+ header_params = opts[:header_params] || {}
444
+ # HTTP header 'Accept' (if needed)
445
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
446
+
447
+ # form parameters
448
+ form_params = opts[:form_params] || {}
449
+
450
+ # http body (model)
451
+ post_body = opts[:debug_body]
452
+
453
+ # return_type
454
+ return_type = opts[:debug_return_type] || 'ListRepositoriesResponse'
455
+
456
+ # auth_names
457
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
458
+
459
+ new_options = opts.merge(
460
+ :operation => :"RepositoriesApi.list_namespace_repositories",
461
+ :header_params => header_params,
462
+ :query_params => query_params,
463
+ :form_params => form_params,
464
+ :body => post_body,
465
+ :auth_names => auth_names,
466
+ :return_type => return_type
467
+ )
468
+
469
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
470
+ if @api_client.config.debugging
471
+ @api_client.config.logger.debug "API called: RepositoriesApi#list_namespace_repositories\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
472
+ end
473
+ return data, status_code, headers
474
+ end
475
+
476
+ # List repository tags
477
+ # @param namespace [String]
478
+ # @param repository [String]
479
+ # @param [Hash] opts the optional parameters
480
+ # @option opts [Integer] :page Page number to get. Defaults to 1.
481
+ # @option opts [Integer] :page_size Number of items to get per page. Defaults to 10. Max of 100.
482
+ # @return [PaginatedTags]
483
+ def list_repository_tags(namespace, repository, opts = {})
484
+ data, _status_code, _headers = list_repository_tags_with_http_info(namespace, repository, opts)
485
+ data
486
+ end
487
+
488
+ # List repository tags
489
+ # @param namespace [String]
490
+ # @param repository [String]
491
+ # @param [Hash] opts the optional parameters
492
+ # @option opts [Integer] :page Page number to get. Defaults to 1.
493
+ # @option opts [Integer] :page_size Number of items to get per page. Defaults to 10. Max of 100.
494
+ # @return [Array<(PaginatedTags, Integer, Hash)>] PaginatedTags data, response status code and response headers
495
+ def list_repository_tags_with_http_info(namespace, repository, opts = {})
496
+ if @api_client.config.debugging
497
+ @api_client.config.logger.debug 'Calling API: RepositoriesApi.list_repository_tags ...'
498
+ end
499
+ # verify the required parameter 'namespace' is set
500
+ if @api_client.config.client_side_validation && namespace.nil?
501
+ fail ArgumentError, "Missing the required parameter 'namespace' when calling RepositoriesApi.list_repository_tags"
502
+ end
503
+ # verify the required parameter 'repository' is set
504
+ if @api_client.config.client_side_validation && repository.nil?
505
+ fail ArgumentError, "Missing the required parameter 'repository' when calling RepositoriesApi.list_repository_tags"
506
+ end
507
+ # resource path
508
+ local_var_path = '/v2/namespaces/{namespace}/repositories/{repository}/tags'.sub('{' + 'namespace' + '}', CGI.escape(namespace.to_s)).sub('{' + 'repository' + '}', CGI.escape(repository.to_s))
509
+
510
+ # query parameters
511
+ query_params = opts[:query_params] || {}
512
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
513
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
514
+
515
+ # header parameters
516
+ header_params = opts[:header_params] || {}
517
+ # HTTP header 'Accept' (if needed)
518
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
519
+
520
+ # form parameters
521
+ form_params = opts[:form_params] || {}
522
+
523
+ # http body (model)
524
+ post_body = opts[:debug_body]
525
+
526
+ # return_type
527
+ return_type = opts[:debug_return_type] || 'PaginatedTags'
528
+
529
+ # auth_names
530
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
531
+
532
+ new_options = opts.merge(
533
+ :operation => :"RepositoriesApi.list_repository_tags",
534
+ :header_params => header_params,
535
+ :query_params => query_params,
536
+ :form_params => form_params,
537
+ :body => post_body,
538
+ :auth_names => auth_names,
539
+ :return_type => return_type
540
+ )
541
+
542
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
543
+ if @api_client.config.debugging
544
+ @api_client.config.logger.debug "API called: RepositoriesApi#list_repository_tags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
545
+ end
546
+ return data, status_code, headers
547
+ end
548
+
549
+ # Update repository immutable tags
550
+ # Updates the immutable tags configuration for this repository. **Only users with administrative privileges for the repository can modify these settings.**
551
+ # @param namespace [String]
552
+ # @param repository [String]
553
+ # @param update_repository_immutable_tags_request [UpdateRepositoryImmutableTagsRequest]
554
+ # @param [Hash] opts the optional parameters
555
+ # @return [RepositoryInfo]
556
+ def update_repository_immutable_tags(namespace, repository, update_repository_immutable_tags_request, opts = {})
557
+ data, _status_code, _headers = update_repository_immutable_tags_with_http_info(namespace, repository, update_repository_immutable_tags_request, opts)
558
+ data
559
+ end
560
+
561
+ # Update repository immutable tags
562
+ # Updates the immutable tags configuration for this repository. **Only users with administrative privileges for the repository can modify these settings.**
563
+ # @param namespace [String]
564
+ # @param repository [String]
565
+ # @param update_repository_immutable_tags_request [UpdateRepositoryImmutableTagsRequest]
566
+ # @param [Hash] opts the optional parameters
567
+ # @return [Array<(RepositoryInfo, Integer, Hash)>] RepositoryInfo data, response status code and response headers
568
+ def update_repository_immutable_tags_with_http_info(namespace, repository, update_repository_immutable_tags_request, opts = {})
569
+ if @api_client.config.debugging
570
+ @api_client.config.logger.debug 'Calling API: RepositoriesApi.update_repository_immutable_tags ...'
571
+ end
572
+ # verify the required parameter 'namespace' is set
573
+ if @api_client.config.client_side_validation && namespace.nil?
574
+ fail ArgumentError, "Missing the required parameter 'namespace' when calling RepositoriesApi.update_repository_immutable_tags"
575
+ end
576
+ # verify the required parameter 'repository' is set
577
+ if @api_client.config.client_side_validation && repository.nil?
578
+ fail ArgumentError, "Missing the required parameter 'repository' when calling RepositoriesApi.update_repository_immutable_tags"
579
+ end
580
+ # verify the required parameter 'update_repository_immutable_tags_request' is set
581
+ if @api_client.config.client_side_validation && update_repository_immutable_tags_request.nil?
582
+ fail ArgumentError, "Missing the required parameter 'update_repository_immutable_tags_request' when calling RepositoriesApi.update_repository_immutable_tags"
583
+ end
584
+ # resource path
585
+ local_var_path = '/v2/namespaces/{namespace}/repositories/{repository}/immutabletags'.sub('{' + 'namespace' + '}', CGI.escape(namespace.to_s)).sub('{' + 'repository' + '}', CGI.escape(repository.to_s))
586
+
587
+ # query parameters
588
+ query_params = opts[:query_params] || {}
589
+
590
+ # header parameters
591
+ header_params = opts[:header_params] || {}
592
+ # HTTP header 'Accept' (if needed)
593
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
594
+ # HTTP header 'Content-Type'
595
+ content_type = @api_client.select_header_content_type(['application/json'])
596
+ if !content_type.nil?
597
+ header_params['Content-Type'] = content_type
598
+ end
599
+
600
+ # form parameters
601
+ form_params = opts[:form_params] || {}
602
+
603
+ # http body (model)
604
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(update_repository_immutable_tags_request)
605
+
606
+ # return_type
607
+ return_type = opts[:debug_return_type] || 'RepositoryInfo'
608
+
609
+ # auth_names
610
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
611
+
612
+ new_options = opts.merge(
613
+ :operation => :"RepositoriesApi.update_repository_immutable_tags",
614
+ :header_params => header_params,
615
+ :query_params => query_params,
616
+ :form_params => form_params,
617
+ :body => post_body,
618
+ :auth_names => auth_names,
619
+ :return_type => return_type
620
+ )
621
+
622
+ data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
623
+ if @api_client.config.debugging
624
+ @api_client.config.logger.debug "API called: RepositoriesApi#update_repository_immutable_tags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
625
+ end
626
+ return data, status_code, headers
627
+ end
628
+
629
+ # Check repository tags
630
+ # @param namespace [String]
631
+ # @param repository [String]
632
+ # @param [Hash] opts the optional parameters
633
+ # @return [nil]
634
+ def v2_namespaces_namespace_repositories_repository_tags_head(namespace, repository, opts = {})
635
+ v2_namespaces_namespace_repositories_repository_tags_head_with_http_info(namespace, repository, opts)
636
+ nil
637
+ end
638
+
639
+ # Check repository tags
640
+ # @param namespace [String]
641
+ # @param repository [String]
642
+ # @param [Hash] opts the optional parameters
643
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
644
+ def v2_namespaces_namespace_repositories_repository_tags_head_with_http_info(namespace, repository, opts = {})
645
+ if @api_client.config.debugging
646
+ @api_client.config.logger.debug 'Calling API: RepositoriesApi.v2_namespaces_namespace_repositories_repository_tags_head ...'
647
+ end
648
+ # verify the required parameter 'namespace' is set
649
+ if @api_client.config.client_side_validation && namespace.nil?
650
+ fail ArgumentError, "Missing the required parameter 'namespace' when calling RepositoriesApi.v2_namespaces_namespace_repositories_repository_tags_head"
651
+ end
652
+ # verify the required parameter 'repository' is set
653
+ if @api_client.config.client_side_validation && repository.nil?
654
+ fail ArgumentError, "Missing the required parameter 'repository' when calling RepositoriesApi.v2_namespaces_namespace_repositories_repository_tags_head"
655
+ end
656
+ # resource path
657
+ local_var_path = '/v2/namespaces/{namespace}/repositories/{repository}/tags'.sub('{' + 'namespace' + '}', CGI.escape(namespace.to_s)).sub('{' + 'repository' + '}', CGI.escape(repository.to_s))
658
+
659
+ # query parameters
660
+ query_params = opts[:query_params] || {}
661
+
662
+ # header parameters
663
+ header_params = opts[:header_params] || {}
664
+ # HTTP header 'Accept' (if needed)
665
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
666
+
667
+ # form parameters
668
+ form_params = opts[:form_params] || {}
669
+
670
+ # http body (model)
671
+ post_body = opts[:debug_body]
672
+
673
+ # return_type
674
+ return_type = opts[:debug_return_type]
675
+
676
+ # auth_names
677
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
678
+
679
+ new_options = opts.merge(
680
+ :operation => :"RepositoriesApi.v2_namespaces_namespace_repositories_repository_tags_head",
681
+ :header_params => header_params,
682
+ :query_params => query_params,
683
+ :form_params => form_params,
684
+ :body => post_body,
685
+ :auth_names => auth_names,
686
+ :return_type => return_type
687
+ )
688
+
689
+ data, status_code, headers = @api_client.call_api(:HEAD, local_var_path, new_options)
690
+ if @api_client.config.debugging
691
+ @api_client.config.logger.debug "API called: RepositoriesApi#v2_namespaces_namespace_repositories_repository_tags_head\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
692
+ end
693
+ return data, status_code, headers
694
+ end
695
+
696
+ # Check repository tag
697
+ # @param namespace [String]
698
+ # @param repository [String]
699
+ # @param tag [String]
700
+ # @param [Hash] opts the optional parameters
701
+ # @return [nil]
702
+ def v2_namespaces_namespace_repositories_repository_tags_tag_head(namespace, repository, tag, opts = {})
703
+ v2_namespaces_namespace_repositories_repository_tags_tag_head_with_http_info(namespace, repository, tag, opts)
704
+ nil
705
+ end
706
+
707
+ # Check repository tag
708
+ # @param namespace [String]
709
+ # @param repository [String]
710
+ # @param tag [String]
711
+ # @param [Hash] opts the optional parameters
712
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
713
+ def v2_namespaces_namespace_repositories_repository_tags_tag_head_with_http_info(namespace, repository, tag, opts = {})
714
+ if @api_client.config.debugging
715
+ @api_client.config.logger.debug 'Calling API: RepositoriesApi.v2_namespaces_namespace_repositories_repository_tags_tag_head ...'
716
+ end
717
+ # verify the required parameter 'namespace' is set
718
+ if @api_client.config.client_side_validation && namespace.nil?
719
+ fail ArgumentError, "Missing the required parameter 'namespace' when calling RepositoriesApi.v2_namespaces_namespace_repositories_repository_tags_tag_head"
720
+ end
721
+ # verify the required parameter 'repository' is set
722
+ if @api_client.config.client_side_validation && repository.nil?
723
+ fail ArgumentError, "Missing the required parameter 'repository' when calling RepositoriesApi.v2_namespaces_namespace_repositories_repository_tags_tag_head"
724
+ end
725
+ # verify the required parameter 'tag' is set
726
+ if @api_client.config.client_side_validation && tag.nil?
727
+ fail ArgumentError, "Missing the required parameter 'tag' when calling RepositoriesApi.v2_namespaces_namespace_repositories_repository_tags_tag_head"
728
+ end
729
+ # resource path
730
+ local_var_path = '/v2/namespaces/{namespace}/repositories/{repository}/tags/{tag}'.sub('{' + 'namespace' + '}', CGI.escape(namespace.to_s)).sub('{' + 'repository' + '}', CGI.escape(repository.to_s)).sub('{' + 'tag' + '}', CGI.escape(tag.to_s))
731
+
732
+ # query parameters
733
+ query_params = opts[:query_params] || {}
734
+
735
+ # header parameters
736
+ header_params = opts[:header_params] || {}
737
+ # HTTP header 'Accept' (if needed)
738
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
739
+
740
+ # form parameters
741
+ form_params = opts[:form_params] || {}
742
+
743
+ # http body (model)
744
+ post_body = opts[:debug_body]
745
+
746
+ # return_type
747
+ return_type = opts[:debug_return_type]
748
+
749
+ # auth_names
750
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
751
+
752
+ new_options = opts.merge(
753
+ :operation => :"RepositoriesApi.v2_namespaces_namespace_repositories_repository_tags_tag_head",
754
+ :header_params => header_params,
755
+ :query_params => query_params,
756
+ :form_params => form_params,
757
+ :body => post_body,
758
+ :auth_names => auth_names,
759
+ :return_type => return_type
760
+ )
761
+
762
+ data, status_code, headers = @api_client.call_api(:HEAD, local_var_path, new_options)
763
+ if @api_client.config.debugging
764
+ @api_client.config.logger.debug "API called: RepositoriesApi#v2_namespaces_namespace_repositories_repository_tags_tag_head\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
765
+ end
766
+ return data, status_code, headers
767
+ end
768
+
769
+ # Verify repository immutable tags
770
+ # Validates the immutable tags regex pass in parameter and returns a list of tags matching it in this repository. **Only users with administrative privileges for the repository call this endpoint.**
771
+ # @param namespace [String]
772
+ # @param repository [String]
773
+ # @param immutable_tags_verify_request [ImmutableTagsVerifyRequest]
774
+ # @param [Hash] opts the optional parameters
775
+ # @return [ImmutableTagsVerifyResponse]
776
+ def verify_repository_immutable_tags(namespace, repository, immutable_tags_verify_request, opts = {})
777
+ data, _status_code, _headers = verify_repository_immutable_tags_with_http_info(namespace, repository, immutable_tags_verify_request, opts)
778
+ data
779
+ end
780
+
781
+ # Verify repository immutable tags
782
+ # Validates the immutable tags regex pass in parameter and returns a list of tags matching it in this repository. **Only users with administrative privileges for the repository call this endpoint.**
783
+ # @param namespace [String]
784
+ # @param repository [String]
785
+ # @param immutable_tags_verify_request [ImmutableTagsVerifyRequest]
786
+ # @param [Hash] opts the optional parameters
787
+ # @return [Array<(ImmutableTagsVerifyResponse, Integer, Hash)>] ImmutableTagsVerifyResponse data, response status code and response headers
788
+ def verify_repository_immutable_tags_with_http_info(namespace, repository, immutable_tags_verify_request, opts = {})
789
+ if @api_client.config.debugging
790
+ @api_client.config.logger.debug 'Calling API: RepositoriesApi.verify_repository_immutable_tags ...'
791
+ end
792
+ # verify the required parameter 'namespace' is set
793
+ if @api_client.config.client_side_validation && namespace.nil?
794
+ fail ArgumentError, "Missing the required parameter 'namespace' when calling RepositoriesApi.verify_repository_immutable_tags"
795
+ end
796
+ # verify the required parameter 'repository' is set
797
+ if @api_client.config.client_side_validation && repository.nil?
798
+ fail ArgumentError, "Missing the required parameter 'repository' when calling RepositoriesApi.verify_repository_immutable_tags"
799
+ end
800
+ # verify the required parameter 'immutable_tags_verify_request' is set
801
+ if @api_client.config.client_side_validation && immutable_tags_verify_request.nil?
802
+ fail ArgumentError, "Missing the required parameter 'immutable_tags_verify_request' when calling RepositoriesApi.verify_repository_immutable_tags"
803
+ end
804
+ # resource path
805
+ local_var_path = '/v2/namespaces/{namespace}/repositories/{repository}/immutabletags/verify'.sub('{' + 'namespace' + '}', CGI.escape(namespace.to_s)).sub('{' + 'repository' + '}', CGI.escape(repository.to_s))
806
+
807
+ # query parameters
808
+ query_params = opts[:query_params] || {}
809
+
810
+ # header parameters
811
+ header_params = opts[:header_params] || {}
812
+ # HTTP header 'Accept' (if needed)
813
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
814
+ # HTTP header 'Content-Type'
815
+ content_type = @api_client.select_header_content_type(['application/json'])
816
+ if !content_type.nil?
817
+ header_params['Content-Type'] = content_type
818
+ end
819
+
820
+ # form parameters
821
+ form_params = opts[:form_params] || {}
822
+
823
+ # http body (model)
824
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(immutable_tags_verify_request)
825
+
826
+ # return_type
827
+ return_type = opts[:debug_return_type] || 'ImmutableTagsVerifyResponse'
828
+
829
+ # auth_names
830
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
831
+
832
+ new_options = opts.merge(
833
+ :operation => :"RepositoriesApi.verify_repository_immutable_tags",
834
+ :header_params => header_params,
835
+ :query_params => query_params,
836
+ :form_params => form_params,
837
+ :body => post_body,
838
+ :auth_names => auth_names,
839
+ :return_type => return_type
840
+ )
841
+
842
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
843
+ if @api_client.config.debugging
844
+ @api_client.config.logger.debug "API called: RepositoriesApi#verify_repository_immutable_tags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
845
+ end
846
+ return data, status_code, headers
847
+ end
848
+ end
849
+ end