katello 3.5.0.rc1 → 3.5.0.rc2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of katello might be problematic. Click here for more details.

Files changed (218) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/katello/containers/container.js +6 -6
  3. data/app/assets/javascripts/katello/hosts/host_and_hostgroup_edit.js +2 -1
  4. data/app/assets/javascripts/katello/sync_management/sync_management.js +8 -6
  5. data/app/controllers/katello/api/v2/activation_keys_controller.rb +23 -16
  6. data/app/controllers/katello/api/v2/api_controller.rb +7 -2
  7. data/app/controllers/katello/api/v2/capsule_content_controller.rb +10 -2
  8. data/app/controllers/katello/api/v2/content_uploads_controller.rb +5 -5
  9. data/app/controllers/katello/api/v2/content_view_components_controller.rb +9 -9
  10. data/app/controllers/katello/api/v2/content_view_filter_rules_controller.rb +14 -16
  11. data/app/controllers/katello/api/v2/content_view_filters_controller.rb +8 -8
  12. data/app/controllers/katello/api/v2/content_view_puppet_modules_controller.rb +7 -7
  13. data/app/controllers/katello/api/v2/content_view_versions_controller.rb +12 -12
  14. data/app/controllers/katello/api/v2/content_views_controller.rb +5 -5
  15. data/app/controllers/katello/api/v2/errata_controller.rb +2 -2
  16. data/app/controllers/katello/api/v2/gpg_keys_controller.rb +2 -2
  17. data/app/controllers/katello/api/v2/host_collections_controller.rb +7 -7
  18. data/app/controllers/katello/api/v2/host_errata_controller.rb +4 -4
  19. data/app/controllers/katello/api/v2/host_packages_controller.rb +5 -5
  20. data/app/controllers/katello/api/v2/host_subscriptions_controller.rb +9 -4
  21. data/app/controllers/katello/api/v2/host_tracer_controller.rb +1 -1
  22. data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +9 -1
  23. data/app/controllers/katello/api/v2/organizations_controller.rb +17 -3
  24. data/app/controllers/katello/api/v2/packages_controller.rb +2 -2
  25. data/app/controllers/katello/api/v2/products_controller.rb +3 -3
  26. data/app/controllers/katello/api/v2/repositories_controller.rb +11 -11
  27. data/app/controllers/katello/api/v2/repository_sets_controller.rb +1 -10
  28. data/app/controllers/katello/concerns/api/v2/hosts_controller_extensions.rb +1 -1
  29. data/app/controllers/katello/concerns/api/v2/repository_content_controller.rb +3 -3
  30. data/app/helpers/katello/providers_helper.rb +4 -1
  31. data/app/lib/actions/candlepin/abstract.rb +1 -0
  32. data/app/lib/actions/katello/host/hypervisors_update.rb +1 -0
  33. data/app/lib/actions/katello/host/update_release_version.rb +29 -0
  34. data/app/lib/actions/katello/product/create.rb +3 -6
  35. data/app/lib/actions/katello/product/reindex_subscriptions.rb +1 -1
  36. data/app/lib/actions/katello/repository/scheduled_sync.rb +15 -0
  37. data/app/lib/actions/katello/repository/upload_files.rb +4 -0
  38. data/app/lib/actions/middleware/keep_session_id.rb +29 -0
  39. data/app/lib/katello/resources/candlepin.rb +22 -5
  40. data/app/lib/katello/validators/hostgroup_kickstart_repository_validator.rb +30 -0
  41. data/app/models/katello/activation_key.rb +3 -33
  42. data/app/models/katello/candlepin/product_content.rb +1 -14
  43. data/app/models/katello/concerns/content_facet_host_extensions.rb +5 -1
  44. data/app/models/katello/concerns/content_view_filter_rule_common.rb +13 -0
  45. data/app/models/katello/concerns/hostgroup_extensions.rb +1 -0
  46. data/app/models/katello/concerns/subscription_facet_host_extensions.rb +2 -1
  47. data/app/models/katello/content_view_docker_filter_rule.rb +2 -1
  48. data/app/models/katello/content_view_erratum_filter_rule.rb +2 -1
  49. data/app/models/katello/content_view_package_filter_rule.rb +2 -1
  50. data/app/models/katello/content_view_package_group_filter_rule.rb +2 -1
  51. data/app/models/katello/erratum.rb +4 -5
  52. data/app/models/katello/glue/candlepin/owner.rb +32 -0
  53. data/app/models/katello/glue/pulp/repos.rb +1 -1
  54. data/app/models/katello/host/subscription_facet.rb +16 -0
  55. data/app/models/katello/repository.rb +2 -2
  56. data/app/models/katello/subscription.rb +4 -1
  57. data/app/models/katello/subscription_status.rb +8 -4
  58. data/app/presenters/katello/product_content_presenter.rb +7 -2
  59. data/app/services/katello/candlepin/consumer.rb +0 -28
  60. data/app/services/katello/product_content_finder.rb +37 -0
  61. data/app/views/foreman/smart_proxies/_content_sync.html.erb +0 -2
  62. data/app/views/katello/api/v2/activation_keys/base.json.rabl +34 -0
  63. data/app/views/katello/api/v2/activation_keys/index.json.rabl +4 -1
  64. data/app/views/katello/api/v2/activation_keys/product_content.json.rabl +3 -3
  65. data/app/views/katello/api/v2/activation_keys/show.json.rabl +2 -38
  66. data/app/views/katello/api/v2/common/releases.json.rabl +7 -0
  67. data/config/routes/api/v2.rb +1 -0
  68. data/config/routes/overrides.rb +1 -0
  69. data/db/migrate/20171010170443_add_index_to_katello_content_facet_errata.rb +5 -0
  70. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/activation-key.factory.js +1 -1
  71. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-add-host-collections.controller.js +8 -8
  72. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-add-subscriptions.controller.js +5 -4
  73. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-copy.controller.js +3 -6
  74. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-details.controller.js +7 -10
  75. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-host-collections.controller.js +7 -6
  76. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js +5 -5
  77. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-subscriptions.controller.js +5 -4
  78. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-host-collections-table.html +1 -3
  79. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/capsule-content/capsule-content.controller.js +7 -5
  80. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/capsule-content/capsule-content.factory.js +1 -1
  81. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/capsules/capsule.factory.js +1 -1
  82. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/common/api-error-handler.service.js +6 -16
  83. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-environment-modal.controller.js +4 -4
  84. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-errata-modal.controller.js +5 -5
  85. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-host-collections-modal.controller.js +5 -5
  86. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-packages-modal.controller.js +5 -5
  87. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-release-version-modal.controller.js +62 -0
  88. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-repository-sets-modal.controller.js +4 -4
  89. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-subscriptions-modal.controller.js +4 -4
  90. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-release-version-modal.html +56 -0
  91. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-subscriptions-modal.html +1 -1
  92. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-host-modal-helper.service.js +11 -0
  93. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-hosts.controller.js +10 -9
  94. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-packages.controller.js +6 -4
  95. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-traces.controller.js +0 -2
  96. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-add-host-collections.controller.js +3 -6
  97. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-add-subscriptions.controller.js +5 -4
  98. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-base-subscriptions.controller.js +5 -4
  99. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details-info.controller.js +0 -3
  100. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details.controller.js +8 -9
  101. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-host-collections.controller.js +10 -8
  102. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-repository-sets.controller.js +5 -5
  103. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-subscriptions.controller.js +5 -4
  104. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-repository-sets.html +0 -2
  105. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts.html +6 -0
  106. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/content-view.factory.js +1 -1
  107. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-deletion.controller.js +3 -3
  108. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-version-deletion-confirm.controller.js +5 -5
  109. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/components/content-view-component.factory.js +3 -3
  110. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-details.controller.js +6 -6
  111. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-promotion.controller.js +5 -5
  112. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-publish.controller.js +3 -3
  113. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-versions.controller.js +6 -6
  114. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/available-errata-filter.controller.js +5 -5
  115. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/available-package-group-filter.controller.js +5 -5
  116. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/date-type-errata-filter.controller.js +11 -5
  117. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/docker-tag-filter.controller.js +6 -6
  118. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/edit-filter.controller.js +4 -4
  119. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/errata-filter-list.controller.js +5 -5
  120. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter-repositories.controller.js +6 -6
  121. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter.factory.js +1 -1
  122. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filters.controller.js +4 -4
  123. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/new-filter.controller.js +3 -3
  124. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/package-filter.controller.js +6 -6
  125. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/package-group-list-filter.controller.js +5 -5
  126. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/rule.factory.js +1 -1
  127. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/histories/content-view-history.factory.js +1 -1
  128. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/content-view-puppet-module-versions.controller.js +5 -5
  129. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/content-view-puppet-module.factory.js +1 -1
  130. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/content-view-puppet-modules.controller.js +5 -5
  131. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/content-view-version.factory.js +1 -1
  132. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-manifests/docker-manifest.factory.js +1 -1
  133. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/docker-tag-details.controller.js +0 -3
  134. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/views/docker-tag-details.html +0 -2
  135. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/docker-tags.factory.js +1 -1
  136. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/environment.controller.js +5 -7
  137. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/environment.factory.js +1 -1
  138. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/new-environment.controller.js +3 -6
  139. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/views/new-environment.html +0 -2
  140. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/apply-errata.controller.js +9 -4
  141. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/erratum-content-hosts.controller.js +0 -3
  142. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/erratum.factory.js +1 -1
  143. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/apply-errata-confirm.html +0 -2
  144. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/details/file.controller.js +0 -3
  145. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/file.factory.js +1 -1
  146. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/details/gpg-key-details-info.controller.js +6 -5
  147. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/details/gpg-key-details.controller.js +4 -6
  148. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/gpg-key.factory.js +1 -1
  149. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/new/new-gpg-key.controller.js +6 -9
  150. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-add-hosts.controller.js +3 -3
  151. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-copy.controller.js +3 -6
  152. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-details.controller.js +13 -22
  153. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-hosts.controller.js +6 -5
  154. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-info.html +3 -3
  155. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/host-collection.factory.js +1 -1
  156. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-bulk-action.factory.js +2 -1
  157. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-erratum.factory.js +1 -1
  158. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-package.factory.js +1 -1
  159. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-subscription.factory.js +1 -1
  160. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-traces.factory.js +1 -1
  161. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host.factory.js +1 -1
  162. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/organizations/organization.factory.js +7 -5
  163. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/ostree-branch.factory.js +1 -1
  164. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/package-groups/package-group.factory.js +1 -1
  165. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/package.factory.js +1 -1
  166. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/product-bulk-action.factory.js +1 -1
  167. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/products-bulk-advanced-sync-modal.controller.js +5 -5
  168. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/products-bulk-sync-plan-modal.controller.js +6 -6
  169. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/product-details-info.controller.js +5 -8
  170. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/product-details.controller.js +6 -6
  171. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/product-repositories.controller.js +15 -14
  172. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-advanced-sync.controller.js +6 -3
  173. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-info.controller.js +9 -9
  174. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-manage-content.controller.js +5 -4
  175. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details.controller.js +7 -7
  176. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-advanced-sync.html +0 -2
  177. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html +0 -2
  178. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-docker-manifests.html +0 -2
  179. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-files.html +0 -2
  180. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-ostree-branches.html +0 -2
  181. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-packages.html +0 -2
  182. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-puppet-modules.html +0 -2
  183. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/new-repository.controller.js +5 -8
  184. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html +0 -2
  185. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/repository.factory.js +2 -2
  186. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/views/product-repositories.html +0 -20
  187. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/views/product-info.html +0 -1
  188. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/discovery-create.controller.js +4 -6
  189. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/discovery.controller.js +5 -8
  190. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/views/discovery-base.html +0 -2
  191. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/new/product-form.controller.js +3 -3
  192. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/product.factory.js +1 -1
  193. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/products.controller.js +7 -7
  194. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/details/puppet-module.controller.js +0 -3
  195. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/puppet-module.factory.js +1 -1
  196. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repository-sets/repository-set.factory.js +1 -1
  197. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/settings/setting.factory.js +1 -1
  198. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/subscription-details.controller.js +0 -3
  199. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/views/subscription-details.html +0 -2
  200. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/manifest-import.controller.js +9 -9
  201. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/views/manifest-import.html +0 -2
  202. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/subscriptions.factory.js +4 -4
  203. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-add-products.controller.js +6 -8
  204. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-details-info.controller.js +5 -6
  205. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-details.controller.js +5 -5
  206. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-products.controller.js +8 -8
  207. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/views/sync-plan-info.html +0 -2
  208. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/views/sync-plan-products.html +0 -2
  209. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/new/new-sync-plan.controller.js +4 -4
  210. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/sync-plan.factory.js +1 -1
  211. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/task.factory.js +2 -2
  212. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/tasks.module.js +3 -3
  213. data/lib/katello/permission_creator.rb +3 -2
  214. data/lib/katello/permissions/host_permissions.rb +1 -0
  215. data/lib/katello/permissions/organization_permissions.rb +1 -0
  216. data/lib/katello/tasks/clean_installed_packages.rake +20 -3
  217. data/lib/katello/version.rb +1 -1
  218. metadata +17 -6
@@ -6,7 +6,7 @@ module Katello
6
6
  before_action :find_content_view_puppet_module, :only => [:show, :update, :destroy]
7
7
 
8
8
  api :GET, "/content_views/:content_view_id/content_view_puppet_modules", N_("List content view puppet modules")
9
- param :content_view_id, :identifier, :desc => N_("content view identifier"), :required => true
9
+ param :content_view_id, :number, :desc => N_("content view identifier"), :required => true
10
10
  param :name, String, :desc => N_("name of the puppet module")
11
11
  param :author, String, :desc => N_("author of the puppet module")
12
12
  param :uuid, String, :desc => N_("the uuid of the puppet module to associate")
@@ -17,7 +17,7 @@ module Katello
17
17
 
18
18
  api :POST, "/content_views/:content_view_id/content_view_puppet_modules",
19
19
  N_("Add a puppet module to the content view")
20
- param :content_view_id, :identifier, :desc => N_("content view identifier"), :required => true
20
+ param :content_view_id, :number, :desc => N_("content view identifier"), :required => true
21
21
  param :name, String, :desc => N_("name of the puppet module")
22
22
  param :author, String, :desc => N_("author of the puppet module")
23
23
  param :id, String, :desc => N_("the id of the puppet module to associate")
@@ -29,15 +29,15 @@ module Katello
29
29
 
30
30
  api :GET, "/content_views/:content_view_id/content_view_puppet_modules/:id", N_("Show a content view puppet module")
31
31
  param :content_view_id, :number, :desc => N_("content view numeric identifier"), :required => true
32
- param :id, :identifier, :desc => N_("puppet module ID"), :required => true
32
+ param :id, :number, :desc => N_("puppet module ID"), :required => true
33
33
  def show
34
34
  respond :resource => @puppet_module
35
35
  end
36
36
 
37
37
  api :PUT, "/content_views/:content_view_id/content_view_puppet_modules/:id",
38
38
  N_("Update a puppet module associated with the content view")
39
- param :content_view_id, :identifier, :desc => N_("content view identifier"), :required => true
40
- param :id, :identifier, :desc => N_("puppet module ID"), :required => true
39
+ param :content_view_id, :number, :desc => N_("content view identifier"), :required => true
40
+ param :id, :number, :desc => N_("puppet module ID"), :required => true
41
41
  param :name, String, :desc => N_("name of the puppet module")
42
42
  param :author, String, :desc => N_("author of the puppet module")
43
43
  param :uuid, String, :desc => N_("the uuid of the puppet module to associate")
@@ -48,8 +48,8 @@ module Katello
48
48
 
49
49
  api :DELETE, "/content_views/:content_view_id/content_view_puppet_modules/:id",
50
50
  N_("Remove a puppet module from the content view")
51
- param :content_view_id, :identifier, :desc => N_("content view identifier"), :required => true
52
- param :id, :identifier, :desc => N_("puppet module ID"), :required => true
51
+ param :content_view_id, :number, :desc => N_("content view identifier"), :required => true
52
+ param :id, :number, :desc => N_("puppet module ID"), :required => true
53
53
  def destroy
54
54
  @puppet_module.destroy
55
55
  respond :resource => @puppet_module
@@ -14,12 +14,12 @@ module Katello
14
14
 
15
15
  api :GET, "/content_view_versions", N_("List content view versions")
16
16
  api :GET, "/content_views/:content_view_id/content_view_versions", N_("List content view versions")
17
- param :content_view_id, :identifier, :desc => N_("Content view identifier"), :required => false
18
- param :environment_id, :identifier, :desc => N_("Filter versions by environment"), :required => false
19
- param :puppet_module_id, :identifier, :desc => N_("Filter versions by puppet module"), :required => false
17
+ param :content_view_id, :number, :desc => N_("Content view identifier"), :required => false
18
+ param :environment_id, :number, :desc => N_("Filter versions by environment"), :required => false
19
+ param :puppet_module_id, :number, :desc => N_("Filter versions by puppet module"), :required => false
20
20
  param :version, String, :desc => N_("Filter versions by version number"), :required => false
21
- param :composite_version_id, :identifier, :desc => N_("Filter versions that are components in the specified composite version"), :required => false
22
- param :organization_id, :identifier, :desc => N_("Organization identifier")
21
+ param :composite_version_id, :number, :desc => N_("Filter versions that are components in the specified composite version"), :required => false
22
+ param :organization_id, :number, :desc => N_("Organization identifier")
23
23
  param_group :search, Api::V2::ApiController
24
24
  def index
25
25
  options = {
@@ -42,15 +42,15 @@ module Katello
42
42
  end
43
43
 
44
44
  api :GET, "/content_view_versions/:id", N_("Show content view version")
45
- param :id, :identifier, :desc => N_("Content view version identifier"), :required => true
45
+ param :id, :number, :desc => N_("Content view version identifier"), :required => true
46
46
  def show
47
47
  respond :resource => @version
48
48
  end
49
49
 
50
50
  api :POST, "/content_view_versions/:id/promote", N_("Promote a content view version")
51
- param :id, :identifier, :desc => N_("Content view version identifier"), :required => true
51
+ param :id, :number, :desc => N_("Content view version identifier"), :required => true
52
52
  param :force, :bool, :desc => N_("force content view promotion and bypass lifecycle environment restriction")
53
- param :environment_id, :identifier, :deprecated => true, :desc => N_("LifeCycle Environment identifier")
53
+ param :environment_id, :number, :deprecated => true, :desc => N_("LifeCycle Environment identifier")
54
54
  param :environment_ids, Array, :desc => N_("Identifiers for Lifecycle Environment")
55
55
  param :description, String, :desc => N_("The description for the content view version promotion")
56
56
  param :force_yum_metadata_regeneration, :bool, :desc => N_("Force metadata regeneration on the repositories " \
@@ -64,14 +64,14 @@ module Katello
64
64
  end
65
65
 
66
66
  api :PUT, "/content_view_versions/:id/republish_repositories", N_("Forces a republish of the version's repositories' metadata.")
67
- param :id, :identifier, :desc => N_("Content view version identifier"), :required => true
67
+ param :id, :number, :desc => N_("Content view version identifier"), :required => true
68
68
  def republish_repositories
69
69
  task = async_task(::Actions::Katello::ContentViewVersion::RepublishRepositories, @version)
70
70
  respond_for_async :resource => task
71
71
  end
72
72
 
73
73
  api :POST, "/content_view_versions/:id/export", N_("Export a content view version")
74
- param :id, :identifier, :desc => N_("Content view version identifier"), :required => true
74
+ param :id, :number, :desc => N_("Content view version identifier"), :required => true
75
75
  param :export_to_iso, :bool, :desc => N_("Export to ISO format"), :required => false
76
76
  param :iso_mb_size, :number, :desc => N_("maximum size of each ISO in MB"), :required => false
77
77
  param :since, Date, :desc => N_("Optional date of last export (ex: 2010-01-01T12:00:00Z)"), :required => false
@@ -96,7 +96,7 @@ module Katello
96
96
  end
97
97
 
98
98
  api :DELETE, "/content_view_versions/:id", N_("Remove content view version")
99
- param :id, :identifier, :desc => N_("Content view version identifier"), :required => true
99
+ param :id, :number, :desc => N_("Content view version identifier"), :required => true
100
100
  def destroy
101
101
  task = async_task(::Actions::Katello::ContentViewVersion::Destroy, @version)
102
102
  respond_for_async :resource => task
@@ -104,7 +104,7 @@ module Katello
104
104
 
105
105
  api :POST, "/content_view_versions/incremental_update", N_("Perform an Incremental Update on one or more Content View Versions")
106
106
  param :content_view_version_environments, Array do
107
- param :content_view_version_id, :identifier, :desc => N_("Content View Version Ids to perform an incremental update on. May contain composites as well as one or more components to update.")
107
+ param :content_view_version_id, :number, :desc => N_("Content View Version Ids to perform an incremental update on. May contain composites as well as one or more components to update.")
108
108
  param :environment_ids, Array, :desc => N_("The list of environments to promote the specified Content View Version to (replacing the older version).")
109
109
  end
110
110
  param :description, String, :desc => N_("The description for the new generated Content View Versions")
@@ -23,7 +23,7 @@ module Katello
23
23
  api :GET, "/organizations/:organization_id/content_views", N_("List content views")
24
24
  api :GET, "/content_views", N_("List content views")
25
25
  param :organization_id, :number, :desc => N_("organization identifier")
26
- param :environment_id, :identifier, :desc => N_("environment identifier")
26
+ param :environment_id, :number, :desc => N_("environment identifier")
27
27
  param :nondefault, :bool, :desc => N_("Filter out default content views")
28
28
  param :noncomposite, :bool, :desc => N_("Filter out composite content views")
29
29
  param :composite, :bool, :desc => N_("Filter only composite content views")
@@ -74,7 +74,7 @@ module Katello
74
74
  end
75
75
 
76
76
  api :POST, "/content_views/:id/publish", N_("Publish a content view")
77
- param :id, :identifier, :desc => N_("Content view identifier"), :required => true
77
+ param :id, :number, :desc => N_("Content view identifier"), :required => true
78
78
  param :description, String, :desc => N_("Description for the new published content view version")
79
79
  param :force_yum_metadata_regeneration, :bool, :desc => N_("Force yum metadata regeneration on the repositories " \
80
80
  "in the content view version")
@@ -92,7 +92,7 @@ module Katello
92
92
 
93
93
  api :GET, "/content_views/:id/available_puppet_modules",
94
94
  N_("Get puppet modules that are available to be added to the content view")
95
- param :id, :identifier, :desc => N_("content view numeric identifier"), :required => true
95
+ param :id, :number, :desc => N_("content view numeric identifier"), :required => true
96
96
  param :name, String, :desc => N_("module name to restrict modules for"), :required => false
97
97
  def available_puppet_modules
98
98
  current_cv_puppet_modules = @view.content_view_puppet_modules.where("uuid is NOT NULL")
@@ -124,7 +124,7 @@ module Katello
124
124
 
125
125
  api :GET, "/content_views/:id/available_puppet_module_names",
126
126
  N_("Get puppet modules names that are available to be added to the content view")
127
- param :id, :identifier, :desc => N_("content view numeric identifier"), :required => true
127
+ param :id, :number, :desc => N_("content view numeric identifier"), :required => true
128
128
  def available_puppet_module_names
129
129
  current_names = @view.content_view_puppet_modules.where("name is NOT NULL").pluck(:name)
130
130
 
@@ -189,7 +189,7 @@ module Katello
189
189
  end
190
190
 
191
191
  api :POST, "/content_views/:id/copy", N_("Make copy of a content view")
192
- param :id, :identifier, :desc => N_("Content view numeric identifier"), :required => true
192
+ param :id, :number, :desc => N_("Content view numeric identifier"), :required => true
193
193
  param :name, String, :required => true, :desc => N_("New content view name")
194
194
  def copy
195
195
  new_content_view = @view.copy(params[:content_view][:name])
@@ -5,8 +5,8 @@ module Katello
5
5
 
6
6
  api :GET, "/errata", N_("List errata")
7
7
  param :organization_id, :number, :desc => N_("organization identifier")
8
- param :content_view_version_id, :identifier, :desc => N_("content view version identifier")
9
- param :content_view_filter_id, :identifier, :desc => N_("content view filter identifier")
8
+ param :content_view_version_id, :number, :desc => N_("content view version identifier")
9
+ param :content_view_filter_id, :number, :desc => N_("content view filter identifier")
10
10
  param :repository_id, :number, :desc => N_("repository identifier")
11
11
  param :environment_id, :number, :desc => N_("environment identifier")
12
12
  param :cve, String, :desc => N_("CVE identifier")
@@ -51,13 +51,13 @@ module Katello
51
51
  end
52
52
 
53
53
  api :GET, "/gpg_keys/:id", N_("Show a gpg key")
54
- param :id, :identifier, :desc => N_("gpg key numeric identifier"), :required => true
54
+ param :id, :number, :desc => N_("gpg key numeric identifier"), :required => true
55
55
  def show
56
56
  respond_for_show(:resource => @gpg_key)
57
57
  end
58
58
 
59
59
  api :PUT, "/gpg_keys/:id", N_("Update a repository")
60
- param :id, :identifier, :desc => N_("gpg key numeric identifier"), :required => true
60
+ param :id, :number, :desc => N_("gpg key numeric identifier"), :required => true
61
61
  param_group :gpg_key
62
62
  def update
63
63
  @gpg_key.update_attributes!(gpg_key_params)
@@ -18,7 +18,7 @@ module Katello
18
18
  end
19
19
 
20
20
  api :GET, "/host_collections/:id", N_("Show a host collection")
21
- param :id, :identifier, :desc => N_("Id of the host collection"), :required => true
21
+ param :id, :number, :desc => N_("Id of the host collection"), :required => true
22
22
  def show
23
23
  respond
24
24
  end
@@ -30,7 +30,7 @@ module Katello
30
30
  param :organization_id, :number, :desc => N_("organization identifier"), :required => true
31
31
  param :name, String, :desc => N_("host collection name to filter by")
32
32
  param :activation_key_id, :identifier, :desc => N_("activation key identifier")
33
- param :host_id, :identifier, :desc => N_("Filter products by host id")
33
+ param :host_id, :number, :desc => N_("Filter products by host id")
34
34
  param :available_for, String, :required => false,
35
35
  :desc => N_("Interpret specified object to return only Host Collections that can be associated with specified object. The value 'host' is supported.")
36
36
  def index
@@ -72,7 +72,7 @@ module Katello
72
72
  end
73
73
 
74
74
  api :PUT, "/host_collections/:id", N_("Update a host collection")
75
- param :id, :identifier, :desc => N_("Id of the host collection"), :required => true
75
+ param :id, :number, :desc => N_("Id of the host collection"), :required => true
76
76
  param :name, String, :required => false, :desc => N_("Host Collection name")
77
77
  param_group :host_collection
78
78
  def update
@@ -81,7 +81,7 @@ module Katello
81
81
  end
82
82
 
83
83
  api :PUT, "/host_collections/:id/add_hosts", N_("Add host to the host collection")
84
- param :id, :identifier, :desc => N_("Id of the host collection"), :required => true
84
+ param :id, :number, :desc => N_("Id of the host collection"), :required => true
85
85
  param :host_ids, Array, :desc => N_("Array of host ids")
86
86
  def add_hosts
87
87
  host_ids = params[:host_ids].map(&:to_i)
@@ -116,7 +116,7 @@ module Katello
116
116
  end
117
117
 
118
118
  api :PUT, "/host_collections/:id/remove_hosts", N_("Remove hosts from the host collection")
119
- param :id, :identifier, :desc => N_("Id of the host collection"), :required => true
119
+ param :id, :number, :desc => N_("Id of the host collection"), :required => true
120
120
  param :host_ids, Array, :desc => N_("Array of host ids")
121
121
  def remove_hosts
122
122
  host_ids = params[:host_ids].map(&:to_i)
@@ -150,14 +150,14 @@ module Katello
150
150
  end
151
151
 
152
152
  api :DELETE, "/host_collections/:id", N_("Destroy a host collection")
153
- param :id, :identifier, :desc => N_("Id of the host collection"), :required => true
153
+ param :id, :number, :desc => N_("Id of the host collection"), :required => true
154
154
  def destroy
155
155
  @host_collection.destroy
156
156
  respond_for_destroy
157
157
  end
158
158
 
159
159
  api :POST, "/host_collections/:id/copy", N_("Make copy of a host collection")
160
- param :id, :identifier, :desc => N_("ID of the host collection"), :required => true
160
+ param :id, :number, :desc => N_("ID of the host collection"), :required => true
161
161
  param :name, String, :required => true, :desc => N_("New host collection name")
162
162
  def copy
163
163
  new_host_collection = HostCollection.new
@@ -18,7 +18,7 @@ module Katello
18
18
  end
19
19
 
20
20
  api :GET, "/hosts/:host_id/errata", N_("List errata available for the content host")
21
- param :host_id, :identifier, :desc => N_("UUID of the content host"), :required => true
21
+ param :host_id, :number, :desc => N_("UUID of the content host"), :required => true
22
22
  param :content_view_id, :number, :desc => N_("Calculate Applicable Errata based on a particular Content View"), :required => false
23
23
  param :environment_id, :number, :desc => N_("Calculate Applicable Errata based on a particular Environment"), :required => false
24
24
  param_group :search, Api::V2::ApiController
@@ -38,7 +38,7 @@ module Katello
38
38
  end
39
39
 
40
40
  api :PUT, "/hosts/:host_id/errata/apply", N_("Schedule errata for installation")
41
- param :host_id, :identifier, :desc => N_("Host ID"), :required => true
41
+ param :host_id, :number, :desc => N_("Host ID"), :required => true
42
42
  param :errata_ids, Array, :desc => N_("List of Errata ids to install"), :required => true
43
43
  def apply
44
44
  task = async_task(::Actions::Katello::Host::Erratum::Install, @host, params[:errata_ids])
@@ -46,7 +46,7 @@ module Katello
46
46
  end
47
47
 
48
48
  api :GET, "/hosts/:host_id/errata/:id", N_("Retrieve a single errata for a host")
49
- param :host_id, :identifier, :desc => N_("Host ID"), :required => true
49
+ param :host_id, :number, :desc => N_("Host ID"), :required => true
50
50
  param :id, String, :desc => N_("Errata id of the erratum (RHSA-2012:108)"), :required => true
51
51
  def show
52
52
  errata = Erratum.find_by(:errata_id => params[:id])
@@ -55,7 +55,7 @@ module Katello
55
55
  end
56
56
 
57
57
  api :PUT, "/hosts/:host_id/errata/applicability", N_("Force regenerate applicability.")
58
- param :host_id, :identifier, :desc => N_("Host ID"), :required => true
58
+ param :host_id, :number, :desc => N_("Host ID"), :required => true
59
59
  def applicability
60
60
  task = async_task(::Actions::Katello::Host::GenerateApplicability, [@host], false)
61
61
  respond_for_async :resource => task
@@ -18,7 +18,7 @@ module Katello
18
18
  end
19
19
 
20
20
  api :GET, "/hosts/:host_id/packages", N_("List packages installed on the host")
21
- param :host_id, :identifier, :required => true, :desc => N_("ID of the host")
21
+ param :host_id, :number, :required => true, :desc => N_("ID of the host")
22
22
  param_group :search, Api::V2::ApiController
23
23
  def index
24
24
  collection = scoped_search(index_relation, :name, :asc, :resource_class => ::Katello::InstalledPackage)
@@ -26,7 +26,7 @@ module Katello
26
26
  end
27
27
 
28
28
  api :PUT, "/hosts/:host_id/packages/install", N_("Install packages remotely")
29
- param :host_id, :identifier, :required => true, :desc => N_("ID of the host")
29
+ param :host_id, :number, :required => true, :desc => N_("ID of the host")
30
30
  param_group :packages_or_groups
31
31
  def install
32
32
  if params[:packages]
@@ -44,7 +44,7 @@ module Katello
44
44
  end
45
45
 
46
46
  api :PUT, "/hosts/:host_id/packages/upgrade", N_("Update packages remotely")
47
- param :host_id, :identifier, :required => true, :desc => N_("ID of the host")
47
+ param :host_id, :number, :required => true, :desc => N_("ID of the host")
48
48
  param :packages, Array, :desc => N_("list of packages names"), :required => true
49
49
  def upgrade
50
50
  if params[:packages]
@@ -55,14 +55,14 @@ module Katello
55
55
  end
56
56
 
57
57
  api :PUT, "/hosts/:host_id/packages/upgrade_all", N_("Update packages remotely")
58
- param :host_id, :identifier, :required => true, :desc => N_("ID of the host")
58
+ param :host_id, :number, :required => true, :desc => N_("ID of the host")
59
59
  def upgrade_all
60
60
  task = async_task(::Actions::Katello::Host::Package::Update, @host, [])
61
61
  respond_for_async :resource => task
62
62
  end
63
63
 
64
64
  api :PUT, "/hosts/:host_id/packages/remove", N_("Uninstall packages remotely")
65
- param :host_id, :identifier, :required => true, :desc => N_("ID of the host")
65
+ param :host_id, :number, :required => true, :desc => N_("ID of the host")
66
66
  param_group :packages_or_groups
67
67
  def remove
68
68
  if params[:packages]
@@ -172,11 +172,16 @@ module Katello
172
172
  def product_content
173
173
  content_access_mode_all = ::Foreman::Cast.to_bool(params[:content_access_mode_all])
174
174
  content_access_mode_env = ::Foreman::Cast.to_bool(params[:content_access_mode_env])
175
- content = @host.subscription_facet.candlepin_consumer.available_product_content(content_access_mode_all, content_access_mode_env)
176
- overrides = @host.subscription_facet.candlepin_consumer.content_overrides
177
- results = content.map { |product_content| Katello::ProductContentPresenter.new(product_content, overrides) }
178
175
 
179
- respond_for_index(:collection => full_result_response(results))
176
+ content_finder = ProductContentFinder.new(
177
+ :consumable => @host.subscription_facet,
178
+ :match_subscription => !content_access_mode_all,
179
+ :match_environment => content_access_mode_env
180
+ )
181
+
182
+ content = content_finder.presenter_with_overrides(@host.subscription_facet.candlepin_consumer.content_overrides)
183
+
184
+ respond_for_index(:collection => full_result_response(content))
180
185
  end
181
186
 
182
187
  api :GET, "/hosts/:host_id/subscriptions/available_release_versions", N_("Show releases available for the content host")
@@ -10,7 +10,7 @@ module Katello
10
10
  end
11
11
 
12
12
  api :GET, "/hosts/:host_id/tracer", N_("List servises that need restarting on the host")
13
- param :host_id, :identifier, :required => true, :desc => N_("ID of the host")
13
+ param :host_id, :number, :required => true, :desc => N_("ID of the host")
14
14
  def index
15
15
  collection = scoped_search(index_relation, :application, :asc, :resource_class => ::Katello::HostTracer)
16
16
  respond_for_index(:collection => collection)
@@ -35,7 +35,7 @@ module Katello
35
35
  }.with_indifferent_access
36
36
 
37
37
  def_param_group :bulk_params do
38
- param :organization_id, :identifier, :required => true, :desc => N_("ID of the organization")
38
+ param :organization_id, :number, :required => true, :desc => N_("ID of the organization")
39
39
  param :included, Hash, :required => true, :action_aware => true do
40
40
  param :search, String, :required => false, :desc => N_("Search string for hosts to perform an action on")
41
41
  param :ids, Array, :required => false, :desc => N_("List of host ids to perform an action on")
@@ -203,6 +203,14 @@ module Katello
203
203
  respond_for_async :resource => task
204
204
  end
205
205
 
206
+ api :PUT, "/hosts/bulk/release_version", N_("Assign the release version to one or more hosts")
207
+ param_group :bulk_params
208
+ param :release_version, String, :desc => N_("content release version")
209
+ def release_version
210
+ task = async_task(::Actions::BulkAction, ::Actions::Katello::Host::UpdateReleaseVersion, @hosts, params["release_version"])
211
+ respond_for_async :resource => task
212
+ end
213
+
206
214
  api :POST, "/hosts/bulk/available_incremental_updates", N_("Given a set of hosts and errata, lists the content view versions" \
207
215
  " and environments that need updating.")
208
216
  param_group :bulk_params
@@ -7,7 +7,7 @@ module Katello
7
7
 
8
8
  before_action :local_find_taxonomy, :only => %w(repo_discover cancel_repo_discover
9
9
  download_debug_certificate
10
- redhat_provider update
10
+ redhat_provider update releases
11
11
  autoattach_subscriptions)
12
12
 
13
13
  resource_description do
@@ -47,7 +47,7 @@ module Katello
47
47
  end
48
48
 
49
49
  api :GET, '/organizations/:id', N_('Show organization')
50
- param :id, :identifier, :desc => N_("organization ID"), :required => true
50
+ param :id, :number, :desc => N_("organization ID"), :required => true
51
51
  def show
52
52
  @render_template = 'katello/api/v2/organizations/show'
53
53
  super
@@ -58,7 +58,7 @@ module Katello
58
58
  # resource param_group instead of reusing the param_group :resource scoped from TaxonomiesController.
59
59
  # This is because name substitutions of the param group's name from :resource to :organization are limited
60
60
  # to the inclusion of a modules.
61
- param :id, :identifier, :desc => N_("organization ID"), :required => true
61
+ param :id, :number, :desc => N_("organization ID"), :required => true
62
62
  param :redhat_repository_url, String, :desc => N_("Red Hat CDN URL")
63
63
  param_group :resource, ::Api::V2::TaxonomiesController
64
64
  def update
@@ -120,6 +120,18 @@ module Katello
120
120
  :type => "application/text"
121
121
  end
122
122
 
123
+ api :GET, "/organizations/:id/releases", N_("List available releases in the organization")
124
+ param :id, String, :desc => N_("ID of the Organization"), :required => true
125
+ def releases
126
+ available_releases = @organization.library.available_releases
127
+ response = {
128
+ :results => available_releases,
129
+ :total => available_releases.size,
130
+ :subtotal => available_releases.size
131
+ }
132
+ respond_for_index :collection => response
133
+ end
134
+
123
135
  api :POST, "/organizations/:id/autoattach_subscriptions", N_("Auto-attach available subscriptions to all hosts within an organization. Asynchronous operation."), :deprecated => true
124
136
  def autoattach_subscriptions
125
137
  task = async_task(::Actions::Katello::Organization::AutoAttachSubscriptions, @organization)
@@ -138,6 +150,8 @@ module Katello
138
150
  if %w(download_debug_certificate redhat_provider repo_discover
139
151
  cancel_repo_discover autoattach_subscriptions).include?(params[:action])
140
152
  :edit
153
+ elsif params[:action] == "releases"
154
+ :view
141
155
  else
142
156
  super
143
157
  end
@@ -27,8 +27,8 @@ module Katello
27
27
  api :GET, "/content_view_filters/:content_view_filter_id/:resource_id", N_("List :resource_id")
28
28
  api :GET, "/repositories/:repository_id/:resource_id", N_("List :resource_id")
29
29
  param :organization_id, :number, :desc => N_("organization identifier")
30
- param :content_view_version_id, :identifier, :desc => N_("content view version identifier")
31
- param :content_view_filter_id, :identifier, :desc => N_("content view filter identifier")
30
+ param :content_view_version_id, :number, :desc => N_("content view version identifier")
31
+ param :content_view_filter_id, :number, :desc => N_("content view filter identifier")
32
32
  param :repository_id, :number, :desc => N_("repository identifier")
33
33
  param :environment_id, :number, :desc => N_("environment identifier")
34
34
  param :ids, Array, :desc => N_("ids to filter content by")