pulp_ansible_client 0.7.6 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (477) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/README.md +4 -4
  4. data/build/lib/pulpcore/__init__.py +2 -0
  5. data/build/lib/pulpcore/client/__init__.py +2 -0
  6. data/build/lib/pulpcore/client/pulp_ansible/__init__.py +115 -0
  7. data/build/lib/pulpcore/client/pulp_ansible/api/__init__.py +28 -0
  8. data/build/lib/pulpcore/client/pulp_ansible/api/ansible_collections_api.py +316 -0
  9. data/build/lib/pulpcore/client/pulp_ansible/api/ansible_copy_api.py +156 -0
  10. data/build/lib/pulpcore/client/pulp_ansible/api/api_collections_api.py +294 -0
  11. data/build/lib/pulpcore/client/pulp_ansible/api/api_roles_api.py +172 -0
  12. data/build/lib/pulpcore/client/pulp_ansible/api/collection_import_api.py +167 -0
  13. data/build/lib/pulpcore/client/pulp_ansible/api/content_collection_versions_api.py +455 -0
  14. data/build/lib/pulpcore/client/pulp_ansible/api/content_roles_api.py +440 -0
  15. data/build/lib/pulpcore/client/pulp_ansible/api/distributions_ansible_api.py +830 -0
  16. data/build/lib/pulpcore/client/pulp_ansible/api/galaxy_detail_api.py +162 -0
  17. data/build/lib/pulpcore/client/pulp_ansible/api/pulp_ansible_api_api.py +158 -0
  18. data/build/lib/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_api_collections_api.py +474 -0
  19. data/build/lib/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_api_v2_versions_api.py +185 -0
  20. data/build/lib/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_api_v3_all_api.py +301 -0
  21. data/build/lib/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_api_v3_collections_api.py +185 -0
  22. data/build/lib/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_api_v3_collections_docs_blob_api.py +189 -0
  23. data/build/lib/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_api_v3_versions_api.py +386 -0
  24. data/build/lib/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_v3_api.py +162 -0
  25. data/build/lib/pulpcore/client/pulp_ansible/api/pulp_ansible_tags_api.py +168 -0
  26. data/build/lib/pulpcore/client/pulp_ansible/api/remotes_collection_api.py +840 -0
  27. data/build/lib/pulpcore/client/pulp_ansible/api/remotes_role_api.py +840 -0
  28. data/build/lib/pulpcore/client/pulp_ansible/api/repositories_ansible_api.py +1063 -0
  29. data/build/lib/pulpcore/client/pulp_ansible/api/repositories_ansible_versions_api.py +614 -0
  30. data/build/lib/pulpcore/client/pulp_ansible/api/versions_api.py +301 -0
  31. data/build/lib/pulpcore/client/pulp_ansible/api_client.py +667 -0
  32. data/build/lib/pulpcore/client/pulp_ansible/configuration.py +427 -0
  33. data/build/lib/pulpcore/client/pulp_ansible/exceptions.py +121 -0
  34. data/build/lib/pulpcore/client/pulp_ansible/models/__init__.py +78 -0
  35. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_ansible_distribution.py +260 -0
  36. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_ansible_distribution_response.py +342 -0
  37. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_ansible_repository.py +259 -0
  38. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_ansible_repository_response.py +365 -0
  39. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_collection_remote.py +771 -0
  40. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_collection_remote_response.py +718 -0
  41. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_collection_response.py +153 -0
  42. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_collection_version.py +639 -0
  43. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_collection_version_response.py +887 -0
  44. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_repository_sync_url.py +179 -0
  45. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_role.py +205 -0
  46. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_role_remote.py +657 -0
  47. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_role_remote_response.py +604 -0
  48. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_role_response.py +259 -0
  49. data/build/lib/pulpcore/client/pulp_ansible/models/ansible_tag_response.py +123 -0
  50. data/build/lib/pulpcore/client/pulp_ansible/models/artifact_ref_response.py +176 -0
  51. data/build/lib/pulpcore/client/pulp_ansible/models/async_operation_response.py +124 -0
  52. data/build/lib/pulpcore/client/pulp_ansible/models/collection_import_detail_response.py +311 -0
  53. data/build/lib/pulpcore/client/pulp_ansible/models/collection_metadata_response.py +356 -0
  54. data/build/lib/pulpcore/client/pulp_ansible/models/collection_namespace_response.py +122 -0
  55. data/build/lib/pulpcore/client/pulp_ansible/models/collection_one_shot.py +236 -0
  56. data/build/lib/pulpcore/client/pulp_ansible/models/collection_ref_response.py +175 -0
  57. data/build/lib/pulpcore/client/pulp_ansible/models/collection_response.py +303 -0
  58. data/build/lib/pulpcore/client/pulp_ansible/models/collection_version_docs_response.py +122 -0
  59. data/build/lib/pulpcore/client/pulp_ansible/models/collection_version_response.py +441 -0
  60. data/build/lib/pulpcore/client/pulp_ansible/models/content_summary.py +176 -0
  61. data/build/lib/pulpcore/client/pulp_ansible/models/content_summary_response.py +176 -0
  62. data/build/lib/pulpcore/client/pulp_ansible/models/copy.py +124 -0
  63. data/build/lib/pulpcore/client/pulp_ansible/models/galaxy_collection.py +203 -0
  64. data/build/lib/pulpcore/client/pulp_ansible/models/galaxy_collection_response.py +307 -0
  65. data/build/lib/pulpcore/client/pulp_ansible/models/galaxy_collection_version_response.py +253 -0
  66. data/build/lib/pulpcore/client/pulp_ansible/models/galaxy_role_response.py +175 -0
  67. data/build/lib/pulpcore/client/pulp_ansible/models/galaxy_role_version_response.py +148 -0
  68. data/build/lib/pulpcore/client/pulp_ansible/models/paginated_collection_response_list.py +173 -0
  69. data/build/lib/pulpcore/client/pulp_ansible/models/paginated_collection_response_list_links.py +195 -0
  70. data/build/lib/pulpcore/client/pulp_ansible/models/paginated_collection_response_list_meta.py +121 -0
  71. data/build/lib/pulpcore/client/pulp_ansible/models/paginated_collection_version_response_list.py +173 -0
  72. data/build/lib/pulpcore/client/pulp_ansible/models/paginated_galaxy_collection_response_list.py +197 -0
  73. data/build/lib/pulpcore/client/pulp_ansible/models/paginated_galaxy_collection_version_response_list.py +197 -0
  74. data/build/lib/pulpcore/client/pulp_ansible/models/paginated_galaxy_role_response_list.py +197 -0
  75. data/build/lib/pulpcore/client/pulp_ansible/models/paginated_galaxy_role_version_response_list.py +197 -0
  76. data/build/lib/pulpcore/client/pulp_ansible/models/paginated_repository_version_response_list.py +197 -0
  77. data/build/lib/pulpcore/client/pulp_ansible/models/paginated_tag_response_list.py +197 -0
  78. data/build/lib/pulpcore/client/pulp_ansible/models/paginatedansible_ansible_distribution_response_list.py +197 -0
  79. data/build/lib/pulpcore/client/pulp_ansible/models/paginatedansible_ansible_repository_response_list.py +197 -0
  80. data/build/lib/pulpcore/client/pulp_ansible/models/paginatedansible_collection_remote_response_list.py +197 -0
  81. data/build/lib/pulpcore/client/pulp_ansible/models/paginatedansible_collection_response_list.py +197 -0
  82. data/build/lib/pulpcore/client/pulp_ansible/models/paginatedansible_collection_version_response_list.py +197 -0
  83. data/build/lib/pulpcore/client/pulp_ansible/models/paginatedansible_role_remote_response_list.py +197 -0
  84. data/build/lib/pulpcore/client/pulp_ansible/models/paginatedansible_role_response_list.py +197 -0
  85. data/build/lib/pulpcore/client/pulp_ansible/models/patchedansible_ansible_distribution.py +258 -0
  86. data/build/lib/pulpcore/client/pulp_ansible/models/patchedansible_ansible_repository.py +258 -0
  87. data/build/lib/pulpcore/client/pulp_ansible/models/patchedansible_collection_remote.py +769 -0
  88. data/build/lib/pulpcore/client/pulp_ansible/models/patchedansible_role_remote.py +655 -0
  89. data/build/lib/pulpcore/client/pulp_ansible/models/policy_enum.py +101 -0
  90. data/build/lib/pulpcore/client/pulp_ansible/models/repo_metadata_response.py +122 -0
  91. data/build/lib/pulpcore/client/pulp_ansible/models/repository_add_remove_content.py +179 -0
  92. data/build/lib/pulpcore/client/pulp_ansible/models/repository_version.py +123 -0
  93. data/build/lib/pulpcore/client/pulp_ansible/models/repository_version_response.py +257 -0
  94. data/build/lib/pulpcore/client/pulp_ansible/models/tag_response.py +121 -0
  95. data/build/lib/pulpcore/client/pulp_ansible/models/unpaginated_collection_version_response.py +385 -0
  96. data/build/lib/pulpcore/client/pulp_ansible/rest.py +292 -0
  97. data/dist/pulp_ansible-client-0.8.0.tar.gz +0 -0
  98. data/dist/pulp_ansible_client-0.8.0-py3-none-any.whl +0 -0
  99. data/docs/AnsibleAnsibleDistribution.md +3 -1
  100. data/docs/AnsibleAnsibleDistributionResponse.md +3 -1
  101. data/docs/AnsibleAnsibleRepository.md +2 -0
  102. data/docs/AnsibleAnsibleRepositoryResponse.md +2 -0
  103. data/docs/AnsibleCollectionRemote.md +3 -1
  104. data/docs/AnsibleCollectionRemoteResponse.md +3 -1
  105. data/docs/AnsibleCollectionVersionResponse.md +4 -4
  106. data/docs/AnsibleRoleResponse.md +4 -4
  107. data/docs/PatchedansibleAnsibleDistribution.md +3 -1
  108. data/docs/PatchedansibleAnsibleRepository.md +2 -0
  109. data/docs/PatchedansibleCollectionRemote.md +3 -1
  110. data/docs/RepositoryAddRemoveContent.md +2 -2
  111. data/docs/RepositoryVersionResponse.md +2 -0
  112. data/lib/pulp_ansible_client/api/ansible_collections_api.rb +1 -1
  113. data/lib/pulp_ansible_client/api/ansible_copy_api.rb +1 -1
  114. data/lib/pulp_ansible_client/api/api_collections_api.rb +1 -1
  115. data/lib/pulp_ansible_client/api/api_roles_api.rb +1 -1
  116. data/lib/pulp_ansible_client/api/collection_import_api.rb +1 -1
  117. data/lib/pulp_ansible_client/api/content_collection_versions_api.rb +1 -1
  118. data/lib/pulp_ansible_client/api/content_roles_api.rb +1 -1
  119. data/lib/pulp_ansible_client/api/distributions_ansible_api.rb +1 -1
  120. data/lib/pulp_ansible_client/api/galaxy_detail_api.rb +1 -1
  121. data/lib/pulp_ansible_client/api/pulp_ansible_api_api.rb +1 -1
  122. data/lib/pulp_ansible_client/api/pulp_ansible_galaxy_api_collections_api.rb +1 -1
  123. data/lib/pulp_ansible_client/api/pulp_ansible_galaxy_api_v2_versions_api.rb +1 -1
  124. data/lib/pulp_ansible_client/api/pulp_ansible_galaxy_api_v3_all_api.rb +1 -1
  125. data/lib/pulp_ansible_client/api/pulp_ansible_galaxy_api_v3_collections_api.rb +1 -1
  126. data/lib/pulp_ansible_client/api/pulp_ansible_galaxy_api_v3_collections_docs_blob_api.rb +1 -1
  127. data/lib/pulp_ansible_client/api/pulp_ansible_galaxy_api_v3_versions_api.rb +1 -1
  128. data/lib/pulp_ansible_client/api/pulp_ansible_galaxy_v3_api.rb +1 -1
  129. data/lib/pulp_ansible_client/api/pulp_ansible_tags_api.rb +1 -1
  130. data/lib/pulp_ansible_client/api/remotes_collection_api.rb +1 -1
  131. data/lib/pulp_ansible_client/api/remotes_role_api.rb +1 -1
  132. data/lib/pulp_ansible_client/api/repositories_ansible_api.rb +1 -1
  133. data/lib/pulp_ansible_client/api/repositories_ansible_versions_api.rb +1 -1
  134. data/lib/pulp_ansible_client/api/versions_api.rb +1 -1
  135. data/lib/pulp_ansible_client/api_client.rb +12 -13
  136. data/lib/pulp_ansible_client/api_error.rb +1 -1
  137. data/lib/pulp_ansible_client/configuration.rb +1 -9
  138. data/lib/pulp_ansible_client/models/ansible_ansible_distribution.rb +15 -6
  139. data/lib/pulp_ansible_client/models/ansible_ansible_distribution_response.rb +14 -5
  140. data/lib/pulp_ansible_client/models/ansible_ansible_repository.rb +28 -2
  141. data/lib/pulp_ansible_client/models/ansible_ansible_repository_response.rb +28 -2
  142. data/lib/pulp_ansible_client/models/ansible_collection_remote.rb +19 -6
  143. data/lib/pulp_ansible_client/models/ansible_collection_remote_response.rb +19 -6
  144. data/lib/pulp_ansible_client/models/ansible_collection_response.rb +1 -1
  145. data/lib/pulp_ansible_client/models/ansible_collection_version.rb +1 -1
  146. data/lib/pulp_ansible_client/models/ansible_collection_version_response.rb +15 -15
  147. data/lib/pulp_ansible_client/models/ansible_repository_sync_url.rb +1 -1
  148. data/lib/pulp_ansible_client/models/ansible_role.rb +1 -1
  149. data/lib/pulp_ansible_client/models/ansible_role_remote.rb +1 -1
  150. data/lib/pulp_ansible_client/models/ansible_role_remote_response.rb +1 -1
  151. data/lib/pulp_ansible_client/models/ansible_role_response.rb +15 -15
  152. data/lib/pulp_ansible_client/models/ansible_tag_response.rb +1 -1
  153. data/lib/pulp_ansible_client/models/artifact_ref_response.rb +1 -1
  154. data/lib/pulp_ansible_client/models/async_operation_response.rb +1 -1
  155. data/lib/pulp_ansible_client/models/collection_import_detail_response.rb +1 -1
  156. data/lib/pulp_ansible_client/models/collection_metadata_response.rb +1 -1
  157. data/lib/pulp_ansible_client/models/collection_namespace_response.rb +1 -1
  158. data/lib/pulp_ansible_client/models/collection_one_shot.rb +1 -1
  159. data/lib/pulp_ansible_client/models/collection_ref_response.rb +1 -1
  160. data/lib/pulp_ansible_client/models/collection_response.rb +1 -1
  161. data/lib/pulp_ansible_client/models/collection_version_docs_response.rb +1 -1
  162. data/lib/pulp_ansible_client/models/collection_version_response.rb +1 -1
  163. data/lib/pulp_ansible_client/models/content_summary.rb +1 -1
  164. data/lib/pulp_ansible_client/models/content_summary_response.rb +1 -1
  165. data/lib/pulp_ansible_client/models/copy.rb +1 -1
  166. data/lib/pulp_ansible_client/models/galaxy_collection.rb +1 -1
  167. data/lib/pulp_ansible_client/models/galaxy_collection_response.rb +1 -1
  168. data/lib/pulp_ansible_client/models/galaxy_collection_version_response.rb +1 -1
  169. data/lib/pulp_ansible_client/models/galaxy_role_response.rb +1 -1
  170. data/lib/pulp_ansible_client/models/galaxy_role_version_response.rb +1 -1
  171. data/lib/pulp_ansible_client/models/paginated_collection_response_list.rb +1 -1
  172. data/lib/pulp_ansible_client/models/paginated_collection_response_list_links.rb +1 -1
  173. data/lib/pulp_ansible_client/models/paginated_collection_response_list_meta.rb +1 -1
  174. data/lib/pulp_ansible_client/models/paginated_collection_version_response_list.rb +1 -1
  175. data/lib/pulp_ansible_client/models/paginated_galaxy_collection_response_list.rb +1 -1
  176. data/lib/pulp_ansible_client/models/paginated_galaxy_collection_version_response_list.rb +1 -1
  177. data/lib/pulp_ansible_client/models/paginated_galaxy_role_response_list.rb +1 -1
  178. data/lib/pulp_ansible_client/models/paginated_galaxy_role_version_response_list.rb +1 -1
  179. data/lib/pulp_ansible_client/models/paginated_repository_version_response_list.rb +1 -1
  180. data/lib/pulp_ansible_client/models/paginated_tag_response_list.rb +1 -1
  181. data/lib/pulp_ansible_client/models/paginatedansible_ansible_distribution_response_list.rb +1 -1
  182. data/lib/pulp_ansible_client/models/paginatedansible_ansible_repository_response_list.rb +1 -1
  183. data/lib/pulp_ansible_client/models/paginatedansible_collection_remote_response_list.rb +1 -1
  184. data/lib/pulp_ansible_client/models/paginatedansible_collection_response_list.rb +1 -1
  185. data/lib/pulp_ansible_client/models/paginatedansible_collection_version_response_list.rb +1 -1
  186. data/lib/pulp_ansible_client/models/paginatedansible_role_remote_response_list.rb +1 -1
  187. data/lib/pulp_ansible_client/models/paginatedansible_role_response_list.rb +1 -1
  188. data/lib/pulp_ansible_client/models/patchedansible_ansible_distribution.rb +15 -6
  189. data/lib/pulp_ansible_client/models/patchedansible_ansible_repository.rb +28 -2
  190. data/lib/pulp_ansible_client/models/patchedansible_collection_remote.rb +19 -6
  191. data/lib/pulp_ansible_client/models/patchedansible_role_remote.rb +1 -1
  192. data/lib/pulp_ansible_client/models/policy_enum.rb +1 -1
  193. data/lib/pulp_ansible_client/models/repo_metadata_response.rb +1 -1
  194. data/lib/pulp_ansible_client/models/repository_add_remove_content.rb +3 -3
  195. data/lib/pulp_ansible_client/models/repository_version.rb +1 -1
  196. data/lib/pulp_ansible_client/models/repository_version_response.rb +11 -2
  197. data/lib/pulp_ansible_client/models/tag_response.rb +1 -1
  198. data/lib/pulp_ansible_client/models/unpaginated_collection_version_response.rb +1 -1
  199. data/lib/pulp_ansible_client/version.rb +2 -2
  200. data/lib/pulp_ansible_client.rb +1 -1
  201. data/pulp_ansible_client.egg-info/PKG-INFO +15 -0
  202. data/pulp_ansible_client.egg-info/SOURCES.txt +185 -0
  203. data/pulp_ansible_client.egg-info/dependency_links.txt +1 -0
  204. data/pulp_ansible_client.egg-info/requires.txt +4 -0
  205. data/pulp_ansible_client.egg-info/top_level.txt +1 -0
  206. data/pulp_ansible_client.gemspec +2 -2
  207. data/pulpcore/__init__.py +2 -0
  208. data/pulpcore/client/__init__.py +2 -0
  209. data/pulpcore/client/pulp_ansible/__init__.py +115 -0
  210. data/pulpcore/client/pulp_ansible/api/__init__.py +28 -0
  211. data/pulpcore/client/pulp_ansible/api/ansible_collections_api.py +316 -0
  212. data/pulpcore/client/pulp_ansible/api/ansible_copy_api.py +156 -0
  213. data/pulpcore/client/pulp_ansible/api/api_collections_api.py +294 -0
  214. data/pulpcore/client/pulp_ansible/api/api_roles_api.py +172 -0
  215. data/pulpcore/client/pulp_ansible/api/collection_import_api.py +167 -0
  216. data/pulpcore/client/pulp_ansible/api/content_collection_versions_api.py +455 -0
  217. data/pulpcore/client/pulp_ansible/api/content_roles_api.py +440 -0
  218. data/pulpcore/client/pulp_ansible/api/distributions_ansible_api.py +830 -0
  219. data/pulpcore/client/pulp_ansible/api/galaxy_detail_api.py +162 -0
  220. data/pulpcore/client/pulp_ansible/api/pulp_ansible_api_api.py +158 -0
  221. data/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_api_collections_api.py +474 -0
  222. data/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_api_v2_versions_api.py +185 -0
  223. data/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_api_v3_all_api.py +301 -0
  224. data/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_api_v3_collections_api.py +185 -0
  225. data/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_api_v3_collections_docs_blob_api.py +189 -0
  226. data/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_api_v3_versions_api.py +386 -0
  227. data/pulpcore/client/pulp_ansible/api/pulp_ansible_galaxy_v3_api.py +162 -0
  228. data/pulpcore/client/pulp_ansible/api/pulp_ansible_tags_api.py +168 -0
  229. data/pulpcore/client/pulp_ansible/api/remotes_collection_api.py +840 -0
  230. data/pulpcore/client/pulp_ansible/api/remotes_role_api.py +840 -0
  231. data/pulpcore/client/pulp_ansible/api/repositories_ansible_api.py +1063 -0
  232. data/pulpcore/client/pulp_ansible/api/repositories_ansible_versions_api.py +614 -0
  233. data/pulpcore/client/pulp_ansible/api/versions_api.py +301 -0
  234. data/pulpcore/client/pulp_ansible/api_client.py +667 -0
  235. data/pulpcore/client/pulp_ansible/configuration.py +427 -0
  236. data/pulpcore/client/pulp_ansible/exceptions.py +121 -0
  237. data/pulpcore/client/pulp_ansible/models/__init__.py +78 -0
  238. data/pulpcore/client/pulp_ansible/models/ansible_ansible_distribution.py +260 -0
  239. data/pulpcore/client/pulp_ansible/models/ansible_ansible_distribution_response.py +342 -0
  240. data/pulpcore/client/pulp_ansible/models/ansible_ansible_repository.py +259 -0
  241. data/pulpcore/client/pulp_ansible/models/ansible_ansible_repository_response.py +365 -0
  242. data/pulpcore/client/pulp_ansible/models/ansible_collection_remote.py +771 -0
  243. data/pulpcore/client/pulp_ansible/models/ansible_collection_remote_response.py +718 -0
  244. data/pulpcore/client/pulp_ansible/models/ansible_collection_response.py +153 -0
  245. data/pulpcore/client/pulp_ansible/models/ansible_collection_version.py +639 -0
  246. data/pulpcore/client/pulp_ansible/models/ansible_collection_version_response.py +887 -0
  247. data/pulpcore/client/pulp_ansible/models/ansible_repository_sync_url.py +179 -0
  248. data/pulpcore/client/pulp_ansible/models/ansible_role.py +205 -0
  249. data/pulpcore/client/pulp_ansible/models/ansible_role_remote.py +657 -0
  250. data/pulpcore/client/pulp_ansible/models/ansible_role_remote_response.py +604 -0
  251. data/pulpcore/client/pulp_ansible/models/ansible_role_response.py +259 -0
  252. data/pulpcore/client/pulp_ansible/models/ansible_tag_response.py +123 -0
  253. data/pulpcore/client/pulp_ansible/models/artifact_ref_response.py +176 -0
  254. data/pulpcore/client/pulp_ansible/models/async_operation_response.py +124 -0
  255. data/pulpcore/client/pulp_ansible/models/collection_import_detail_response.py +311 -0
  256. data/pulpcore/client/pulp_ansible/models/collection_metadata_response.py +356 -0
  257. data/pulpcore/client/pulp_ansible/models/collection_namespace_response.py +122 -0
  258. data/pulpcore/client/pulp_ansible/models/collection_one_shot.py +236 -0
  259. data/pulpcore/client/pulp_ansible/models/collection_ref_response.py +175 -0
  260. data/pulpcore/client/pulp_ansible/models/collection_response.py +303 -0
  261. data/pulpcore/client/pulp_ansible/models/collection_version_docs_response.py +122 -0
  262. data/pulpcore/client/pulp_ansible/models/collection_version_response.py +441 -0
  263. data/pulpcore/client/pulp_ansible/models/content_summary.py +176 -0
  264. data/pulpcore/client/pulp_ansible/models/content_summary_response.py +176 -0
  265. data/pulpcore/client/pulp_ansible/models/copy.py +124 -0
  266. data/pulpcore/client/pulp_ansible/models/galaxy_collection.py +203 -0
  267. data/pulpcore/client/pulp_ansible/models/galaxy_collection_response.py +307 -0
  268. data/pulpcore/client/pulp_ansible/models/galaxy_collection_version_response.py +253 -0
  269. data/pulpcore/client/pulp_ansible/models/galaxy_role_response.py +175 -0
  270. data/pulpcore/client/pulp_ansible/models/galaxy_role_version_response.py +148 -0
  271. data/pulpcore/client/pulp_ansible/models/paginated_collection_response_list.py +173 -0
  272. data/pulpcore/client/pulp_ansible/models/paginated_collection_response_list_links.py +195 -0
  273. data/pulpcore/client/pulp_ansible/models/paginated_collection_response_list_meta.py +121 -0
  274. data/pulpcore/client/pulp_ansible/models/paginated_collection_version_response_list.py +173 -0
  275. data/pulpcore/client/pulp_ansible/models/paginated_galaxy_collection_response_list.py +197 -0
  276. data/pulpcore/client/pulp_ansible/models/paginated_galaxy_collection_version_response_list.py +197 -0
  277. data/pulpcore/client/pulp_ansible/models/paginated_galaxy_role_response_list.py +197 -0
  278. data/pulpcore/client/pulp_ansible/models/paginated_galaxy_role_version_response_list.py +197 -0
  279. data/pulpcore/client/pulp_ansible/models/paginated_repository_version_response_list.py +197 -0
  280. data/pulpcore/client/pulp_ansible/models/paginated_tag_response_list.py +197 -0
  281. data/pulpcore/client/pulp_ansible/models/paginatedansible_ansible_distribution_response_list.py +197 -0
  282. data/pulpcore/client/pulp_ansible/models/paginatedansible_ansible_repository_response_list.py +197 -0
  283. data/pulpcore/client/pulp_ansible/models/paginatedansible_collection_remote_response_list.py +197 -0
  284. data/pulpcore/client/pulp_ansible/models/paginatedansible_collection_response_list.py +197 -0
  285. data/pulpcore/client/pulp_ansible/models/paginatedansible_collection_version_response_list.py +197 -0
  286. data/pulpcore/client/pulp_ansible/models/paginatedansible_role_remote_response_list.py +197 -0
  287. data/pulpcore/client/pulp_ansible/models/paginatedansible_role_response_list.py +197 -0
  288. data/pulpcore/client/pulp_ansible/models/patchedansible_ansible_distribution.py +258 -0
  289. data/pulpcore/client/pulp_ansible/models/patchedansible_ansible_repository.py +258 -0
  290. data/pulpcore/client/pulp_ansible/models/patchedansible_collection_remote.py +769 -0
  291. data/pulpcore/client/pulp_ansible/models/patchedansible_role_remote.py +655 -0
  292. data/pulpcore/client/pulp_ansible/models/policy_enum.py +101 -0
  293. data/pulpcore/client/pulp_ansible/models/repo_metadata_response.py +122 -0
  294. data/pulpcore/client/pulp_ansible/models/repository_add_remove_content.py +179 -0
  295. data/pulpcore/client/pulp_ansible/models/repository_version.py +123 -0
  296. data/pulpcore/client/pulp_ansible/models/repository_version_response.py +257 -0
  297. data/pulpcore/client/pulp_ansible/models/tag_response.py +121 -0
  298. data/pulpcore/client/pulp_ansible/models/unpaginated_collection_version_response.py +385 -0
  299. data/pulpcore/client/pulp_ansible/rest.py +292 -0
  300. data/requirements.txt +6 -0
  301. data/setup.cfg +2 -0
  302. data/setup.py +42 -0
  303. data/spec/api/ansible_collections_api_spec.rb +1 -1
  304. data/spec/api/ansible_copy_api_spec.rb +1 -1
  305. data/spec/api/api_collections_api_spec.rb +1 -1
  306. data/spec/api/api_roles_api_spec.rb +1 -1
  307. data/spec/api/collection_import_api_spec.rb +1 -1
  308. data/spec/api/content_collection_versions_api_spec.rb +1 -1
  309. data/spec/api/content_roles_api_spec.rb +1 -1
  310. data/spec/api/distributions_ansible_api_spec.rb +1 -1
  311. data/spec/api/galaxy_detail_api_spec.rb +1 -1
  312. data/spec/api/pulp_ansible_api_api_spec.rb +1 -1
  313. data/spec/api/pulp_ansible_galaxy_api_collections_api_spec.rb +1 -1
  314. data/spec/api/pulp_ansible_galaxy_api_v2_versions_api_spec.rb +1 -1
  315. data/spec/api/pulp_ansible_galaxy_api_v3_all_api_spec.rb +1 -1
  316. data/spec/api/pulp_ansible_galaxy_api_v3_collections_api_spec.rb +1 -1
  317. data/spec/api/pulp_ansible_galaxy_api_v3_collections_docs_blob_api_spec.rb +1 -1
  318. data/spec/api/pulp_ansible_galaxy_api_v3_versions_api_spec.rb +1 -1
  319. data/spec/api/pulp_ansible_galaxy_v3_api_spec.rb +1 -1
  320. data/spec/api/pulp_ansible_tags_api_spec.rb +1 -1
  321. data/spec/api/remotes_collection_api_spec.rb +1 -1
  322. data/spec/api/remotes_role_api_spec.rb +1 -1
  323. data/spec/api/repositories_ansible_api_spec.rb +1 -1
  324. data/spec/api/repositories_ansible_versions_api_spec.rb +1 -1
  325. data/spec/api/versions_api_spec.rb +1 -1
  326. data/spec/api_client_spec.rb +2 -2
  327. data/spec/configuration_spec.rb +1 -1
  328. data/spec/models/ansible_ansible_distribution_response_spec.rb +7 -1
  329. data/spec/models/ansible_ansible_distribution_spec.rb +7 -1
  330. data/spec/models/ansible_ansible_repository_response_spec.rb +7 -1
  331. data/spec/models/ansible_ansible_repository_spec.rb +7 -1
  332. data/spec/models/ansible_collection_remote_response_spec.rb +7 -1
  333. data/spec/models/ansible_collection_remote_spec.rb +7 -1
  334. data/spec/models/ansible_collection_response_spec.rb +1 -1
  335. data/spec/models/ansible_collection_version_response_spec.rb +3 -3
  336. data/spec/models/ansible_collection_version_spec.rb +1 -1
  337. data/spec/models/ansible_repository_sync_url_spec.rb +1 -1
  338. data/spec/models/ansible_role_remote_response_spec.rb +1 -1
  339. data/spec/models/ansible_role_remote_spec.rb +1 -1
  340. data/spec/models/ansible_role_response_spec.rb +3 -3
  341. data/spec/models/ansible_role_spec.rb +1 -1
  342. data/spec/models/ansible_tag_response_spec.rb +1 -1
  343. data/spec/models/artifact_ref_response_spec.rb +1 -1
  344. data/spec/models/async_operation_response_spec.rb +1 -1
  345. data/spec/models/collection_import_detail_response_spec.rb +1 -1
  346. data/spec/models/collection_metadata_response_spec.rb +1 -1
  347. data/spec/models/collection_namespace_response_spec.rb +1 -1
  348. data/spec/models/collection_one_shot_spec.rb +1 -1
  349. data/spec/models/collection_ref_response_spec.rb +1 -1
  350. data/spec/models/collection_response_spec.rb +1 -1
  351. data/spec/models/collection_version_docs_response_spec.rb +1 -1
  352. data/spec/models/collection_version_response_spec.rb +1 -1
  353. data/spec/models/content_summary_response_spec.rb +1 -1
  354. data/spec/models/content_summary_spec.rb +1 -1
  355. data/spec/models/copy_spec.rb +1 -1
  356. data/spec/models/galaxy_collection_response_spec.rb +1 -1
  357. data/spec/models/galaxy_collection_spec.rb +1 -1
  358. data/spec/models/galaxy_collection_version_response_spec.rb +1 -1
  359. data/spec/models/galaxy_role_response_spec.rb +1 -1
  360. data/spec/models/galaxy_role_version_response_spec.rb +1 -1
  361. data/spec/models/paginated_collection_response_list_links_spec.rb +1 -1
  362. data/spec/models/paginated_collection_response_list_meta_spec.rb +1 -1
  363. data/spec/models/paginated_collection_response_list_spec.rb +1 -1
  364. data/spec/models/paginated_collection_version_response_list_spec.rb +1 -1
  365. data/spec/models/paginated_galaxy_collection_response_list_spec.rb +1 -1
  366. data/spec/models/paginated_galaxy_collection_version_response_list_spec.rb +1 -1
  367. data/spec/models/paginated_galaxy_role_response_list_spec.rb +1 -1
  368. data/spec/models/paginated_galaxy_role_version_response_list_spec.rb +1 -1
  369. data/spec/models/paginated_repository_version_response_list_spec.rb +1 -1
  370. data/spec/models/paginated_tag_response_list_spec.rb +1 -1
  371. data/spec/models/paginatedansible_ansible_distribution_response_list_spec.rb +1 -1
  372. data/spec/models/paginatedansible_ansible_repository_response_list_spec.rb +1 -1
  373. data/spec/models/paginatedansible_collection_remote_response_list_spec.rb +1 -1
  374. data/spec/models/paginatedansible_collection_response_list_spec.rb +1 -1
  375. data/spec/models/paginatedansible_collection_version_response_list_spec.rb +1 -1
  376. data/spec/models/paginatedansible_role_remote_response_list_spec.rb +1 -1
  377. data/spec/models/paginatedansible_role_response_list_spec.rb +1 -1
  378. data/spec/models/patchedansible_ansible_distribution_spec.rb +7 -1
  379. data/spec/models/patchedansible_ansible_repository_spec.rb +7 -1
  380. data/spec/models/patchedansible_collection_remote_spec.rb +7 -1
  381. data/spec/models/patchedansible_role_remote_spec.rb +1 -1
  382. data/spec/models/policy_enum_spec.rb +1 -1
  383. data/spec/models/repo_metadata_response_spec.rb +1 -1
  384. data/spec/models/repository_add_remove_content_spec.rb +1 -1
  385. data/spec/models/repository_version_response_spec.rb +7 -1
  386. data/spec/models/repository_version_spec.rb +1 -1
  387. data/spec/models/tag_response_spec.rb +1 -1
  388. data/spec/models/unpaginated_collection_version_response_spec.rb +1 -1
  389. data/spec/spec_helper.rb +1 -1
  390. data/test/__init__.py +0 -0
  391. data/test/test_ansible_ansible_distribution.py +60 -0
  392. data/test/test_ansible_ansible_distribution_response.py +63 -0
  393. data/test/test_ansible_ansible_repository.py +59 -0
  394. data/test/test_ansible_ansible_repository_response.py +63 -0
  395. data/test/test_ansible_collection_remote.py +80 -0
  396. data/test/test_ansible_collection_remote_response.py +78 -0
  397. data/test/test_ansible_collection_response.py +56 -0
  398. data/test/test_ansible_collection_version.py +99 -0
  399. data/test/test_ansible_collection_version_response.py +111 -0
  400. data/test/test_ansible_collections_api.py +48 -0
  401. data/test/test_ansible_copy_api.py +41 -0
  402. data/test/test_ansible_repository_sync_url.py +55 -0
  403. data/test/test_ansible_role.py +60 -0
  404. data/test/test_ansible_role_remote.py +76 -0
  405. data/test/test_ansible_role_remote_response.py +74 -0
  406. data/test/test_ansible_role_response.py +62 -0
  407. data/test/test_ansible_tag_response.py +53 -0
  408. data/test/test_api_collections_api.py +46 -0
  409. data/test/test_api_roles_api.py +40 -0
  410. data/test/test_artifact_ref_response.py +58 -0
  411. data/test/test_async_operation_response.py +54 -0
  412. data/test/test_collection_import_api.py +41 -0
  413. data/test/test_collection_import_detail_response.py +68 -0
  414. data/test/test_collection_metadata_response.py +71 -0
  415. data/test/test_collection_namespace_response.py +54 -0
  416. data/test/test_collection_one_shot.py +58 -0
  417. data/test/test_collection_ref_response.py +57 -0
  418. data/test/test_collection_response.py +60 -0
  419. data/test/test_collection_version_docs_response.py +54 -0
  420. data/test/test_collection_version_response.py +67 -0
  421. data/test/test_content_collection_versions_api.py +55 -0
  422. data/test/test_content_roles_api.py +55 -0
  423. data/test/test_content_summary.py +70 -0
  424. data/test/test_content_summary_response.py +70 -0
  425. data/test/test_copy.py +54 -0
  426. data/test/test_distributions_ansible_api.py +76 -0
  427. data/test/test_galaxy_collection.py +60 -0
  428. data/test/test_galaxy_collection_response.py +64 -0
  429. data/test/test_galaxy_collection_version_response.py +92 -0
  430. data/test/test_galaxy_detail_api.py +40 -0
  431. data/test/test_galaxy_role_response.py +57 -0
  432. data/test/test_galaxy_role_version_response.py +55 -0
  433. data/test/test_paginated_collection_response_list.py +70 -0
  434. data/test/test_paginated_collection_response_list_links.py +56 -0
  435. data/test/test_paginated_collection_response_list_meta.py +53 -0
  436. data/test/test_paginated_collection_version_response_list.py +75 -0
  437. data/test/test_paginated_galaxy_collection_response_list.py +66 -0
  438. data/test/test_paginated_galaxy_collection_version_response_list.py +80 -0
  439. data/test/test_paginated_galaxy_role_response_list.py +61 -0
  440. data/test/test_paginated_galaxy_role_version_response_list.py +60 -0
  441. data/test/test_paginated_repository_version_response_list.py +64 -0
  442. data/test/test_paginated_tag_response_list.py +59 -0
  443. data/test/test_paginatedansible_ansible_distribution_response_list.py +67 -0
  444. data/test/test_paginatedansible_ansible_repository_response_list.py +68 -0
  445. data/test/test_paginatedansible_collection_remote_response_list.py +82 -0
  446. data/test/test_paginatedansible_collection_response_list.py +60 -0
  447. data/test/test_paginatedansible_collection_version_response_list.py +94 -0
  448. data/test/test_paginatedansible_role_remote_response_list.py +78 -0
  449. data/test/test_paginatedansible_role_response_list.py +64 -0
  450. data/test/test_patchedansible_ansible_distribution.py +58 -0
  451. data/test/test_patchedansible_ansible_repository.py +58 -0
  452. data/test/test_patchedansible_collection_remote.py +78 -0
  453. data/test/test_patchedansible_role_remote.py +74 -0
  454. data/test/test_policy_enum.py +52 -0
  455. data/test/test_pulp_ansible_api_api.py +40 -0
  456. data/test/test_pulp_ansible_galaxy_api_collections_api.py +52 -0
  457. data/test/test_pulp_ansible_galaxy_api_v2_versions_api.py +40 -0
  458. data/test/test_pulp_ansible_galaxy_api_v3_all_api.py +46 -0
  459. data/test/test_pulp_ansible_galaxy_api_v3_collections_api.py +41 -0
  460. data/test/test_pulp_ansible_galaxy_api_v3_collections_docs_blob_api.py +40 -0
  461. data/test/test_pulp_ansible_galaxy_api_v3_versions_api.py +46 -0
  462. data/test/test_pulp_ansible_galaxy_v3_api.py +40 -0
  463. data/test/test_pulp_ansible_tags_api.py +41 -0
  464. data/test/test_remotes_collection_api.py +76 -0
  465. data/test/test_remotes_role_api.py +76 -0
  466. data/test/test_repo_metadata_response.py +54 -0
  467. data/test/test_repositories_ansible_api.py +89 -0
  468. data/test/test_repositories_ansible_versions_api.py +61 -0
  469. data/test/test_repository_add_remove_content.py +59 -0
  470. data/test/test_repository_version.py +53 -0
  471. data/test/test_repository_version_response.py +58 -0
  472. data/test/test_tag_response.py +53 -0
  473. data/test/test_unpaginated_collection_version_response.py +65 -0
  474. data/test/test_versions_api.py +46 -0
  475. data/test-requirements.txt +3 -0
  476. data/tox.ini +9 -0
  477. metadata +354 -77
@@ -0,0 +1,667 @@
1
+ # coding: utf-8
2
+ """
3
+ Pulp 3 API
4
+
5
+ Fetch, Upload, Organize, and Distribute Software Packages # noqa: E501
6
+
7
+ The version of the OpenAPI document: v3
8
+ Contact: pulp-list@redhat.com
9
+ Generated by: https://openapi-generator.tech
10
+ """
11
+
12
+ from __future__ import absolute_import
13
+
14
+ import atexit
15
+ import datetime
16
+ from dateutil.parser import parse
17
+ import json
18
+ import mimetypes
19
+ from multiprocessing.pool import ThreadPool
20
+ import os
21
+ import re
22
+ import tempfile
23
+
24
+ # python 2 and python 3 compatibility library
25
+ import six
26
+ from six.moves.urllib.parse import quote
27
+
28
+ from pulpcore.client.pulp_ansible.configuration import Configuration
29
+ import pulpcore.client.pulp_ansible.models
30
+ from pulpcore.client.pulp_ansible import rest
31
+ from pulpcore.client.pulp_ansible.exceptions import ApiValueError, ApiException
32
+
33
+
34
+ class ApiClient(object):
35
+ """Generic API client for OpenAPI client library builds.
36
+
37
+ OpenAPI generic API client. This client handles the client-
38
+ server communication, and is invariant across implementations. Specifics of
39
+ the methods and models for each application are generated from the OpenAPI
40
+ templates.
41
+
42
+ NOTE: This class is auto generated by OpenAPI Generator.
43
+ Ref: https://openapi-generator.tech
44
+ Do not edit the class manually.
45
+
46
+ :param configuration: .Configuration object for this client
47
+ :param header_name: a header to pass when making calls to the API.
48
+ :param header_value: a header value to pass when making calls to
49
+ the API.
50
+ :param cookie: a cookie to include in the header when making calls
51
+ to the API
52
+ :param pool_threads: The number of threads to use for async requests
53
+ to the API. More threads means more concurrent API requests.
54
+ """
55
+
56
+ PRIMITIVE_TYPES = (float, bool, bytes, six.text_type) + six.integer_types
57
+ NATIVE_TYPES_MAPPING = {
58
+ 'int': int,
59
+ 'long': int if six.PY3 else long, # noqa: F821
60
+ 'float': float,
61
+ 'str': str,
62
+ 'bool': bool,
63
+ 'date': datetime.date,
64
+ 'datetime': datetime.datetime,
65
+ 'object': object,
66
+ }
67
+ _pool = None
68
+
69
+ def __init__(self, configuration=None, header_name=None, header_value=None,
70
+ cookie=None, pool_threads=1):
71
+ if configuration is None:
72
+ configuration = Configuration.get_default_copy()
73
+ self.configuration = configuration
74
+ self.pool_threads = pool_threads
75
+
76
+ self.rest_client = rest.RESTClientObject(configuration)
77
+ self.default_headers = {}
78
+ if header_name is not None:
79
+ self.default_headers[header_name] = header_value
80
+ self.cookie = cookie
81
+ # Set default User-Agent.
82
+ self.user_agent = 'OpenAPI-Generator/0.8.0/python'
83
+ self.client_side_validation = configuration.client_side_validation
84
+
85
+ def __enter__(self):
86
+ return self
87
+
88
+ def __exit__(self, exc_type, exc_value, traceback):
89
+ self.close()
90
+
91
+ def close(self):
92
+ if self._pool:
93
+ self._pool.close()
94
+ self._pool.join()
95
+ self._pool = None
96
+ if hasattr(atexit, 'unregister'):
97
+ atexit.unregister(self.close)
98
+
99
+ @property
100
+ def pool(self):
101
+ """Create thread pool on first request
102
+ avoids instantiating unused threadpool for blocking clients.
103
+ """
104
+ if self._pool is None:
105
+ atexit.register(self.close)
106
+ self._pool = ThreadPool(self.pool_threads)
107
+ return self._pool
108
+
109
+ @property
110
+ def user_agent(self):
111
+ """User agent for this API client"""
112
+ return self.default_headers['User-Agent']
113
+
114
+ @user_agent.setter
115
+ def user_agent(self, value):
116
+ self.default_headers['User-Agent'] = value
117
+
118
+ def set_default_header(self, header_name, header_value):
119
+ self.default_headers[header_name] = header_value
120
+
121
+ def __call_api(
122
+ self, resource_path, method, path_params=None,
123
+ query_params=None, header_params=None, body=None, post_params=None,
124
+ files=None, response_type=None, auth_settings=None,
125
+ _return_http_data_only=None, collection_formats=None,
126
+ _preload_content=True, _request_timeout=None, _host=None):
127
+
128
+ config = self.configuration
129
+
130
+ # header parameters
131
+ header_params = header_params or {}
132
+ header_params.update(self.default_headers)
133
+ if self.cookie:
134
+ header_params['Cookie'] = self.cookie
135
+ if header_params:
136
+ header_params = self.sanitize_for_serialization(header_params)
137
+ header_params = dict(self.parameters_to_tuples(header_params,
138
+ collection_formats))
139
+
140
+ # path parameters
141
+ if path_params:
142
+ path_params = self.sanitize_for_serialization(path_params)
143
+ path_params = self.parameters_to_tuples(path_params,
144
+ collection_formats)
145
+ for k, v in path_params:
146
+ # specified safe chars, encode everything
147
+ resource_path = resource_path.replace(
148
+ '{%s}' % k,
149
+ quote(str(v), safe=config.safe_chars_for_path_param)
150
+ )
151
+
152
+ # query parameters
153
+ if query_params:
154
+ query_params = self.sanitize_for_serialization(query_params)
155
+ query_params = self.parameters_to_tuples(query_params,
156
+ collection_formats)
157
+
158
+ # post parameters
159
+ if post_params or files:
160
+ post_params = post_params if post_params else []
161
+ post_params = self.sanitize_for_serialization(post_params)
162
+ post_params = self.parameters_to_tuples(post_params,
163
+ collection_formats)
164
+ post_params.extend(self.files_parameters(files))
165
+
166
+ # auth setting
167
+ self.update_params_for_auth(header_params, query_params, auth_settings)
168
+
169
+ # body
170
+ if body:
171
+ body = self.sanitize_for_serialization(body)
172
+
173
+ # request url
174
+ if _host is None:
175
+ url = self.configuration.host + resource_path
176
+ else:
177
+ # use server/host defined in path or operation instead
178
+ url = _host + resource_path
179
+
180
+ try:
181
+ # perform request and return response
182
+ response_data = self.request(
183
+ method, url, query_params=query_params, headers=header_params,
184
+ post_params=post_params, body=body,
185
+ _preload_content=_preload_content,
186
+ _request_timeout=_request_timeout)
187
+ except ApiException as e:
188
+ e.body = e.body.decode('utf-8') if six.PY3 else e.body
189
+ raise e
190
+
191
+ content_type = response_data.getheader('content-type')
192
+
193
+ self.last_response = response_data
194
+
195
+ return_data = response_data
196
+
197
+ if not _preload_content:
198
+ return return_data
199
+
200
+ if six.PY3 and response_type not in ["file", "bytes"]:
201
+ match = None
202
+ if content_type is not None:
203
+ match = re.search(r"charset=([a-zA-Z\-\d]+)[\s\;]?", content_type)
204
+ encoding = match.group(1) if match else "utf-8"
205
+ response_data.data = response_data.data.decode(encoding)
206
+
207
+ # deserialize response data
208
+ if response_type:
209
+ return_data = self.deserialize(response_data, response_type)
210
+ else:
211
+ return_data = None
212
+
213
+ if _return_http_data_only:
214
+ return (return_data)
215
+ else:
216
+ return (return_data, response_data.status,
217
+ response_data.getheaders())
218
+
219
+ def sanitize_for_serialization(self, obj):
220
+ """Builds a JSON POST object.
221
+
222
+ If obj is None, return None.
223
+ If obj is str, int, long, float, bool, return directly.
224
+ If obj is datetime.datetime, datetime.date
225
+ convert to string in iso8601 format.
226
+ If obj is list, sanitize each element in the list.
227
+ If obj is dict, return the dict.
228
+ If obj is OpenAPI model, return the properties dict.
229
+
230
+ :param obj: The data to serialize.
231
+ :return: The serialized form of data.
232
+ """
233
+ if obj is None:
234
+ return None
235
+ elif isinstance(obj, self.PRIMITIVE_TYPES):
236
+ return obj
237
+ elif isinstance(obj, list):
238
+ return [self.sanitize_for_serialization(sub_obj)
239
+ for sub_obj in obj]
240
+ elif isinstance(obj, tuple):
241
+ return tuple(self.sanitize_for_serialization(sub_obj)
242
+ for sub_obj in obj)
243
+ elif isinstance(obj, (datetime.datetime, datetime.date)):
244
+ return obj.isoformat()
245
+
246
+ if isinstance(obj, dict):
247
+ obj_dict = obj
248
+ else:
249
+ # Convert model obj to dict except
250
+ # attributes `openapi_types`, `attribute_map`
251
+ # and attributes which value is not None.
252
+ # Convert attribute name to json key in
253
+ # model definition for request.
254
+ obj_dict = {obj.attribute_map[attr]: getattr(obj, attr)
255
+ for attr, _ in six.iteritems(obj.openapi_types)
256
+ if getattr(obj, attr) is not None}
257
+
258
+ return {key: self.sanitize_for_serialization(val)
259
+ for key, val in six.iteritems(obj_dict)}
260
+
261
+ def deserialize(self, response, response_type):
262
+ """Deserializes response into an object.
263
+
264
+ :param response: RESTResponse object to be deserialized.
265
+ :param response_type: class literal for
266
+ deserialized object, or string of class name.
267
+
268
+ :return: deserialized object.
269
+ """
270
+ # handle file downloading
271
+ # save response body into a tmp file and return the instance
272
+ if response_type == "file":
273
+ return self.__deserialize_file(response)
274
+
275
+ # fetch data from response object
276
+ try:
277
+ data = json.loads(response.data)
278
+ except ValueError:
279
+ data = response.data
280
+
281
+ return self.__deserialize(data, response_type)
282
+
283
+ def __deserialize(self, data, klass):
284
+ """Deserializes dict, list, str into an object.
285
+
286
+ :param data: dict, list or str.
287
+ :param klass: class literal, or string of class name.
288
+
289
+ :return: object.
290
+ """
291
+ if data is None:
292
+ return None
293
+
294
+ if type(klass) == str:
295
+ if klass.startswith('list['):
296
+ sub_kls = re.match(r'list\[(.*)\]', klass).group(1)
297
+ return [self.__deserialize(sub_data, sub_kls)
298
+ for sub_data in data]
299
+
300
+ if klass.startswith('dict('):
301
+ sub_kls = re.match(r'dict\(([^,]*), (.*)\)', klass).group(2)
302
+ return {k: self.__deserialize(v, sub_kls)
303
+ for k, v in six.iteritems(data)}
304
+
305
+ # convert str to class
306
+ if klass in self.NATIVE_TYPES_MAPPING:
307
+ klass = self.NATIVE_TYPES_MAPPING[klass]
308
+ else:
309
+ klass = getattr(pulpcore.client.pulp_ansible.models, klass)
310
+
311
+ if klass in self.PRIMITIVE_TYPES:
312
+ return self.__deserialize_primitive(data, klass)
313
+ elif klass == object:
314
+ return self.__deserialize_object(data)
315
+ elif klass == datetime.date:
316
+ return self.__deserialize_date(data)
317
+ elif klass == datetime.datetime:
318
+ return self.__deserialize_datetime(data)
319
+ else:
320
+ return self.__deserialize_model(data, klass)
321
+
322
+ def call_api(self, resource_path, method,
323
+ path_params=None, query_params=None, header_params=None,
324
+ body=None, post_params=None, files=None,
325
+ response_type=None, auth_settings=None, async_req=None,
326
+ _return_http_data_only=None, collection_formats=None,
327
+ _preload_content=True, _request_timeout=None, _host=None):
328
+ """Makes the HTTP request (synchronous) and returns deserialized data.
329
+
330
+ To make an async_req request, set the async_req parameter.
331
+
332
+ :param resource_path: Path to method endpoint.
333
+ :param method: Method to call.
334
+ :param path_params: Path parameters in the url.
335
+ :param query_params: Query parameters in the url.
336
+ :param header_params: Header parameters to be
337
+ placed in the request header.
338
+ :param body: Request body.
339
+ :param post_params dict: Request post form parameters,
340
+ for `application/x-www-form-urlencoded`, `multipart/form-data`.
341
+ :param auth_settings list: Auth Settings names for the request.
342
+ :param response: Response data type.
343
+ :param files dict: key -> filename, value -> filepath,
344
+ for `multipart/form-data`.
345
+ :param async_req bool: execute request asynchronously
346
+ :param _return_http_data_only: response data without head status code
347
+ and headers
348
+ :param collection_formats: dict of collection formats for path, query,
349
+ header, and post parameters.
350
+ :param _preload_content: if False, the urllib3.HTTPResponse object will
351
+ be returned without reading/decoding response
352
+ data. Default is True.
353
+ :param _request_timeout: timeout setting for this request. If one
354
+ number provided, it will be total request
355
+ timeout. It can also be a pair (tuple) of
356
+ (connection, read) timeouts.
357
+ :return:
358
+ If async_req parameter is True,
359
+ the request will be called asynchronously.
360
+ The method will return the request thread.
361
+ If parameter async_req is False or missing,
362
+ then the method will return the response directly.
363
+ """
364
+ if not async_req:
365
+ return self.__call_api(resource_path, method,
366
+ path_params, query_params, header_params,
367
+ body, post_params, files,
368
+ response_type, auth_settings,
369
+ _return_http_data_only, collection_formats,
370
+ _preload_content, _request_timeout, _host)
371
+
372
+ return self.pool.apply_async(self.__call_api, (resource_path,
373
+ method, path_params,
374
+ query_params,
375
+ header_params, body,
376
+ post_params, files,
377
+ response_type,
378
+ auth_settings,
379
+ _return_http_data_only,
380
+ collection_formats,
381
+ _preload_content,
382
+ _request_timeout,
383
+ _host))
384
+
385
+ def request(self, method, url, query_params=None, headers=None,
386
+ post_params=None, body=None, _preload_content=True,
387
+ _request_timeout=None):
388
+ """Makes the HTTP request using RESTClient."""
389
+ if method == "GET":
390
+ return self.rest_client.GET(url,
391
+ query_params=query_params,
392
+ _preload_content=_preload_content,
393
+ _request_timeout=_request_timeout,
394
+ headers=headers)
395
+ elif method == "HEAD":
396
+ return self.rest_client.HEAD(url,
397
+ query_params=query_params,
398
+ _preload_content=_preload_content,
399
+ _request_timeout=_request_timeout,
400
+ headers=headers)
401
+ elif method == "OPTIONS":
402
+ return self.rest_client.OPTIONS(url,
403
+ query_params=query_params,
404
+ headers=headers,
405
+ _preload_content=_preload_content,
406
+ _request_timeout=_request_timeout)
407
+ elif method == "POST":
408
+ return self.rest_client.POST(url,
409
+ query_params=query_params,
410
+ headers=headers,
411
+ post_params=post_params,
412
+ _preload_content=_preload_content,
413
+ _request_timeout=_request_timeout,
414
+ body=body)
415
+ elif method == "PUT":
416
+ return self.rest_client.PUT(url,
417
+ query_params=query_params,
418
+ headers=headers,
419
+ post_params=post_params,
420
+ _preload_content=_preload_content,
421
+ _request_timeout=_request_timeout,
422
+ body=body)
423
+ elif method == "PATCH":
424
+ return self.rest_client.PATCH(url,
425
+ query_params=query_params,
426
+ headers=headers,
427
+ post_params=post_params,
428
+ _preload_content=_preload_content,
429
+ _request_timeout=_request_timeout,
430
+ body=body)
431
+ elif method == "DELETE":
432
+ return self.rest_client.DELETE(url,
433
+ query_params=query_params,
434
+ headers=headers,
435
+ _preload_content=_preload_content,
436
+ _request_timeout=_request_timeout,
437
+ body=body)
438
+ else:
439
+ raise ApiValueError(
440
+ "http method must be `GET`, `HEAD`, `OPTIONS`,"
441
+ " `POST`, `PATCH`, `PUT` or `DELETE`."
442
+ )
443
+
444
+ def parameters_to_tuples(self, params, collection_formats):
445
+ """Get parameters as list of tuples, formatting collections.
446
+
447
+ :param params: Parameters as dict or list of two-tuples
448
+ :param dict collection_formats: Parameter collection formats
449
+ :return: Parameters as list of tuples, collections formatted
450
+ """
451
+ new_params = []
452
+ if collection_formats is None:
453
+ collection_formats = {}
454
+ for k, v in six.iteritems(params) if isinstance(params, dict) else params: # noqa: E501
455
+ if k in collection_formats:
456
+ collection_format = collection_formats[k]
457
+ if collection_format == 'multi':
458
+ new_params.extend((k, value) for value in v)
459
+ else:
460
+ if collection_format == 'ssv':
461
+ delimiter = ' '
462
+ elif collection_format == 'tsv':
463
+ delimiter = '\t'
464
+ elif collection_format == 'pipes':
465
+ delimiter = '|'
466
+ else: # csv is the default
467
+ delimiter = ','
468
+ new_params.append(
469
+ (k, delimiter.join(str(value) for value in v)))
470
+ else:
471
+ new_params.append((k, v))
472
+ return new_params
473
+
474
+ def files_parameters(self, files=None):
475
+ """Builds form parameters.
476
+
477
+ :param files: File parameters.
478
+ :return: Form parameters with files.
479
+ """
480
+ params = []
481
+
482
+ if files:
483
+ for k, v in six.iteritems(files):
484
+ if not v:
485
+ continue
486
+ file_names = v if type(v) is list else [v]
487
+ for n in file_names:
488
+ with open(n, 'rb') as f:
489
+ filename = os.path.basename(f.name)
490
+ filedata = f.read()
491
+ mimetype = (mimetypes.guess_type(filename)[0] or
492
+ 'application/octet-stream')
493
+ params.append(
494
+ tuple([k, tuple([filename, filedata, mimetype])]))
495
+
496
+ return params
497
+
498
+ def select_header_accept(self, accepts):
499
+ """Returns `Accept` based on an array of accepts provided.
500
+
501
+ :param accepts: List of headers.
502
+ :return: Accept (e.g. application/json).
503
+ """
504
+ if not accepts:
505
+ return
506
+
507
+ accepts = [x.lower() for x in accepts]
508
+
509
+ if 'application/json' in accepts:
510
+ return 'application/json'
511
+ else:
512
+ return ', '.join(accepts)
513
+
514
+ def select_header_content_type(self, content_types):
515
+ """Returns `Content-Type` based on an array of content_types provided.
516
+
517
+ :param content_types: List of content-types.
518
+ :return: Content-Type (e.g. application/json).
519
+ """
520
+ if not content_types:
521
+ return 'application/json'
522
+
523
+ content_types = [x.lower() for x in content_types]
524
+
525
+ if 'application/json' in content_types or '*/*' in content_types:
526
+ return 'application/json'
527
+ else:
528
+ return content_types[0]
529
+
530
+ def update_params_for_auth(self, headers, querys, auth_settings):
531
+ """Updates header and query params based on authentication setting.
532
+
533
+ :param headers: Header parameters dict to be updated.
534
+ :param querys: Query parameters tuple list to be updated.
535
+ :param auth_settings: Authentication setting identifiers list.
536
+ """
537
+ if not auth_settings:
538
+ return
539
+
540
+ for auth in auth_settings:
541
+ auth_setting = self.configuration.auth_settings().get(auth)
542
+ if auth_setting:
543
+ if auth_setting['in'] == 'cookie':
544
+ headers['Cookie'] = auth_setting['value']
545
+ elif auth_setting['in'] == 'header':
546
+ headers[auth_setting['key']] = auth_setting['value']
547
+ elif auth_setting['in'] == 'query':
548
+ querys.append((auth_setting['key'], auth_setting['value']))
549
+ else:
550
+ raise ApiValueError(
551
+ 'Authentication token must be in `query` or `header`'
552
+ )
553
+
554
+ def __deserialize_file(self, response):
555
+ """Deserializes body to file
556
+
557
+ Saves response body into a file in a temporary folder,
558
+ using the filename from the `Content-Disposition` header if provided.
559
+
560
+ :param response: RESTResponse.
561
+ :return: file path.
562
+ """
563
+ fd, path = tempfile.mkstemp(dir=self.configuration.temp_folder_path)
564
+ os.close(fd)
565
+ os.remove(path)
566
+
567
+ content_disposition = response.getheader("Content-Disposition")
568
+ if content_disposition:
569
+ filename = re.search(r'filename=[\'"]?([^\'"\s]+)[\'"]?',
570
+ content_disposition).group(1)
571
+ path = os.path.join(os.path.dirname(path), filename)
572
+
573
+ with open(path, "wb") as f:
574
+ f.write(response.data)
575
+
576
+ return path
577
+
578
+ def __deserialize_primitive(self, data, klass):
579
+ """Deserializes string to primitive type.
580
+
581
+ :param data: str.
582
+ :param klass: class literal.
583
+
584
+ :return: int, long, float, str, bool.
585
+ """
586
+ try:
587
+ return klass(data)
588
+ except UnicodeEncodeError:
589
+ return six.text_type(data)
590
+ except TypeError:
591
+ return data
592
+
593
+ def __deserialize_object(self, value):
594
+ """Return an original value.
595
+
596
+ :return: object.
597
+ """
598
+ return value
599
+
600
+ def __deserialize_date(self, string):
601
+ """Deserializes string to date.
602
+
603
+ :param string: str.
604
+ :return: date.
605
+ """
606
+ try:
607
+ return parse(string).date()
608
+ except ImportError:
609
+ return string
610
+ except ValueError:
611
+ raise rest.ApiException(
612
+ status=0,
613
+ reason="Failed to parse `{0}` as date object".format(string)
614
+ )
615
+
616
+ def __deserialize_datetime(self, string):
617
+ """Deserializes string to datetime.
618
+
619
+ The string should be in iso8601 datetime format.
620
+
621
+ :param string: str.
622
+ :return: datetime.
623
+ """
624
+ try:
625
+ return parse(string)
626
+ except ImportError:
627
+ return string
628
+ except ValueError:
629
+ raise rest.ApiException(
630
+ status=0,
631
+ reason=(
632
+ "Failed to parse `{0}` as datetime object"
633
+ .format(string)
634
+ )
635
+ )
636
+
637
+ def __deserialize_model(self, data, klass):
638
+ """Deserializes list or dict to model.
639
+
640
+ :param data: dict, list.
641
+ :param klass: class literal.
642
+ :return: model object.
643
+ """
644
+ has_discriminator = False
645
+ if (hasattr(klass, 'get_real_child_model')
646
+ and klass.discriminator_value_class_map):
647
+ has_discriminator = True
648
+
649
+ if not klass.openapi_types and has_discriminator is False:
650
+ return data
651
+
652
+ kwargs = {}
653
+ if (data is not None and
654
+ klass.openapi_types is not None and
655
+ isinstance(data, (list, dict))):
656
+ for attr, attr_type in six.iteritems(klass.openapi_types):
657
+ if klass.attribute_map[attr] in data:
658
+ value = data[klass.attribute_map[attr]]
659
+ kwargs[attr] = self.__deserialize(value, attr_type)
660
+
661
+ instance = klass(**kwargs)
662
+
663
+ if has_discriminator:
664
+ klass_name = instance.get_real_child_model(data)
665
+ if klass_name:
666
+ instance = self.__deserialize(data, klass_name)
667
+ return instance