katello 1.5.0 → 2.2.2

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 (2256) hide show
  1. checksums.yaml +15 -0
  2. data/README.md +3 -77
  3. data/app/assets/javascripts/katello/common/bastion-routes.js +0 -8
  4. data/app/assets/javascripts/katello/common/env_select.js +1 -1
  5. data/app/assets/javascripts/katello/common/env_select_scroll.js +4 -4
  6. data/app/assets/javascripts/katello/common/experimental/katello-globals.module.js +1 -1
  7. data/app/assets/javascripts/katello/common/index.js +1 -5
  8. data/app/assets/javascripts/katello/common/jquery.jeditable.custominputs.js +6 -6
  9. data/app/assets/javascripts/katello/common/katello.common.js +9 -20
  10. data/app/assets/javascripts/katello/common/katello.global.js +3 -3
  11. data/app/assets/javascripts/katello/common/katello.js +6 -8
  12. data/app/assets/javascripts/katello/common/katello_object.js +1 -1
  13. data/app/assets/javascripts/katello/common/menu.js +1 -1
  14. data/app/assets/javascripts/katello/common/notices.js +2 -2
  15. data/app/assets/javascripts/katello/common/panel.js +3 -3
  16. data/app/assets/javascripts/katello/common/routes.js +0 -8
  17. data/app/assets/javascripts/katello/common/search.js +2 -2
  18. data/app/assets/javascripts/katello/common/vendor.js +10 -20
  19. data/app/assets/javascripts/katello/containers/container.js +308 -0
  20. data/app/assets/javascripts/katello/content_search/content_search.js +26 -76
  21. data/app/assets/javascripts/katello/content_search/index.js +5 -3
  22. data/app/assets/javascripts/katello/dashboard/dashboard.js +2 -7
  23. data/app/assets/javascripts/katello/dashboard/index.js +1 -4
  24. data/app/assets/javascripts/katello/hosts/activation_key_edit.js +182 -0
  25. data/app/assets/javascripts/katello/hosts/host_and_hostgroup_edit.js +178 -0
  26. data/app/assets/javascripts/katello/html5/index.js +1 -1
  27. data/app/assets/javascripts/katello/notices/index.js +1 -1
  28. data/app/assets/javascripts/katello/notices/notices_list.js +1 -1
  29. data/app/assets/javascripts/katello/organizations/download_certificate.js +2 -2
  30. data/app/assets/javascripts/katello/providers/index.js +1 -3
  31. data/app/assets/javascripts/katello/providers/products_repos.js +1 -1
  32. data/app/assets/javascripts/katello/providers/provider.js +1 -1
  33. data/app/assets/javascripts/katello/providers/provider_create.js +1 -1
  34. data/app/assets/javascripts/katello/providers/provider_redhat.js +28 -50
  35. data/app/assets/javascripts/katello/providers/redhat/index.js +2 -2
  36. data/app/assets/javascripts/katello/providers/repo.js +1 -1
  37. data/app/assets/javascripts/katello/providers/repo_discovery.js +5 -5
  38. data/app/assets/javascripts/katello/providers/repo_discovery_create.js +1 -1
  39. data/app/assets/javascripts/katello/sync_management/index.js +2 -2
  40. data/app/assets/javascripts/katello/sync_management/sync_management.js +23 -22
  41. data/app/assets/javascripts/katello/widgets/auto_complete.js +3 -3
  42. data/app/assets/javascripts/katello/widgets/comparison_grid.js +19 -17
  43. data/app/assets/javascripts/katello/widgets/env_content_view_selector.js +3 -3
  44. data/app/assets/javascripts/katello/widgets/filtertable/filtertable.js +1 -1
  45. data/app/assets/javascripts/katello/widgets/jquery.jeditable.helpers.js +248 -244
  46. data/app/assets/javascripts/katello/widgets/one_panel.js +1 -1
  47. data/app/assets/javascripts/katello/widgets/path_selector.js +1 -1
  48. data/app/assets/javascripts/katello/widgets/slidingtree.js +7 -7
  49. data/app/assets/javascripts/katello/widgets/subpanel_new.js +1 -1
  50. data/app/assets/javascripts/katello/widgets/tabs.js +1 -1
  51. data/app/assets/javascripts/katello/widgets/tipsy.custom.js +4 -4
  52. data/app/assets/stylesheets/katello/_katello_base.scss +0 -4
  53. data/app/assets/stylesheets/katello/_katello_colors.scss +1 -1
  54. data/app/assets/stylesheets/katello/_katello_mixins.scss +3 -13
  55. data/app/assets/stylesheets/katello/_katello_vars.scss +0 -46
  56. data/app/assets/stylesheets/katello/_overrides.scss +2 -4
  57. data/app/assets/stylesheets/katello/containers/container.scss +4 -0
  58. data/app/assets/stylesheets/katello/content_search.scss +32 -29
  59. data/app/assets/stylesheets/katello/contents.scss +7 -139
  60. data/app/assets/stylesheets/katello/dashboard.scss +29 -90
  61. data/app/assets/stylesheets/katello/generic.scss +1 -1
  62. data/app/assets/stylesheets/katello/katello.scss +42 -133
  63. data/app/assets/stylesheets/katello/katello_sprites.css.scss +0 -36
  64. data/app/assets/stylesheets/katello/widgets/_scrollpane.scss +3 -3
  65. data/app/assets/stylesheets/katello/widgets/tabs.scss +21 -35
  66. data/app/controllers/katello/api/api_controller.rb +3 -131
  67. data/app/controllers/katello/api/rhsm/candlepin_proxies_controller.rb +502 -0
  68. data/app/controllers/katello/api/v2/activation_keys_controller.rb +317 -22
  69. data/app/controllers/katello/api/v2/api_controller.rb +94 -35
  70. data/app/controllers/katello/api/v2/capsule_content_controller.rb +84 -0
  71. data/app/controllers/katello/api/v2/capsules_controller.rb +47 -0
  72. data/app/controllers/katello/api/v2/content_uploads_controller.rb +40 -4
  73. data/app/controllers/katello/api/v2/content_view_filter_rules_controller.rb +132 -0
  74. data/app/controllers/katello/api/v2/content_view_filters_controller.rb +143 -0
  75. data/app/controllers/katello/api/v2/content_view_puppet_modules_controller.rb +93 -0
  76. data/app/controllers/katello/api/v2/content_view_versions_controller.rb +229 -0
  77. data/app/controllers/katello/api/v2/content_views_controller.rb +218 -33
  78. data/app/controllers/katello/api/v2/distributions_controller.rb +35 -4
  79. data/app/controllers/katello/api/v2/docker_images_controller.rb +33 -0
  80. data/app/controllers/katello/api/v2/docker_tags_controller.rb +35 -0
  81. data/app/controllers/katello/api/v2/environments_controller.rb +186 -77
  82. data/app/controllers/katello/api/v2/errata_controller.rb +36 -66
  83. data/app/controllers/katello/api/v2/gpg_keys_controller.rb +36 -55
  84. data/app/controllers/katello/api/v2/host_collections_controller.rb +227 -0
  85. data/app/controllers/katello/api/v2/organizations_controller.rb +88 -46
  86. data/app/controllers/katello/api/v2/package_groups_controller.rb +24 -0
  87. data/app/controllers/katello/api/v2/packages_controller.rb +18 -4
  88. data/app/controllers/katello/api/v2/ping_controller.rb +10 -9
  89. data/app/controllers/katello/api/v2/products_bulk_actions_controller.rb +77 -0
  90. data/app/controllers/katello/api/v2/products_controller.rb +134 -97
  91. data/app/controllers/katello/api/v2/puppet_modules_controller.rb +12 -4
  92. data/app/controllers/katello/api/v2/repositories_bulk_actions_controller.rb +80 -0
  93. data/app/controllers/katello/api/v2/repositories_controller.rb +252 -124
  94. data/app/controllers/katello/api/v2/repository_sets_controller.rb +92 -13
  95. data/app/controllers/katello/api/v2/root_controller.rb +32 -4
  96. data/app/controllers/katello/api/v2/subscriptions_controller.rb +268 -140
  97. data/app/controllers/katello/api/v2/sync_controller.rb +39 -25
  98. data/app/controllers/katello/api/v2/sync_plans_controller.rb +124 -30
  99. data/app/controllers/katello/api/v2/system_errata_controller.rb +32 -28
  100. data/app/controllers/katello/api/v2/system_packages_controller.rb +88 -91
  101. data/app/controllers/katello/api/v2/systems_bulk_actions_controller.rb +203 -188
  102. data/app/controllers/katello/api/v2/systems_controller.rb +354 -532
  103. data/app/controllers/katello/api/v2/uebercerts_controller.rb +14 -4
  104. data/app/controllers/katello/api/v2/users_controller.rb +2 -60
  105. data/app/controllers/katello/application_controller.rb +584 -589
  106. data/app/controllers/katello/auto_complete_search_controller.rb +29 -0
  107. data/app/controllers/katello/concerns/api/api_controller.rb +111 -0
  108. data/app/controllers/katello/concerns/api/v2/bulk_systems_extensions.rb +57 -0
  109. data/app/controllers/katello/concerns/api/v2/hostgroups_controller_extensions.rb +56 -0
  110. data/app/controllers/katello/concerns/api/v2/hosts_controller_extensions.rb +27 -0
  111. data/app/controllers/katello/concerns/api/v2/repository_content_controller.rb +189 -0
  112. data/app/controllers/katello/concerns/api/v2/repository_db_content_controller.rb +109 -0
  113. data/app/controllers/katello/concerns/authorization/api/v2/content_views_controller.rb +163 -0
  114. data/app/controllers/katello/concerns/containers/steps_controller_extensions.rb +57 -0
  115. data/app/controllers/katello/concerns/filtered_auto_complete_search.rb +35 -0
  116. data/app/controllers/katello/concerns/hosts_controller_extensions.rb +41 -0
  117. data/app/controllers/katello/concerns/operatingsystems_controller_extensions.rb +44 -0
  118. data/app/controllers/katello/concerns/organizations_controller_extensions.rb +60 -0
  119. data/app/controllers/katello/consumers_controller_logic.rb +31 -33
  120. data/app/controllers/katello/content_search_controller.rb +523 -603
  121. data/app/controllers/katello/content_views_controller.rb +19 -82
  122. data/app/controllers/katello/dashboard_controller.rb +71 -78
  123. data/app/controllers/katello/distributor_events_controller.rb +81 -77
  124. data/app/controllers/katello/distributors_controller.rb +407 -409
  125. data/app/controllers/katello/errata_controller.rb +12 -54
  126. data/app/controllers/katello/errors_controller.rb +18 -18
  127. data/app/controllers/katello/failed_authentication_controller.rb +42 -42
  128. data/app/controllers/katello/http_errors.rb +41 -42
  129. data/app/controllers/katello/notices_controller.rb +66 -64
  130. data/app/controllers/katello/organizations_controller.rb +18 -261
  131. data/app/controllers/katello/packages_controller.rb +22 -63
  132. data/app/controllers/katello/products_controller.rb +77 -124
  133. data/app/controllers/katello/providers_controller.rb +30 -241
  134. data/app/controllers/katello/puppet_modules_controller.rb +8 -49
  135. data/app/controllers/katello/repositories_controller.rb +24 -135
  136. data/app/controllers/katello/search_controller.rb +55 -57
  137. data/app/controllers/katello/sort_column_list.rb +14 -16
  138. data/app/controllers/katello/sync_management_controller.rb +111 -198
  139. data/app/helpers/katello/activation_keys_helper.rb +3 -3
  140. data/app/helpers/katello/application_helper.rb +270 -330
  141. data/app/helpers/katello/concerns/foreman_docker/container_steps_helper_extensions.rb +102 -0
  142. data/app/helpers/katello/content_search_helper.rb +43 -43
  143. data/app/helpers/katello/dashboard_helper.rb +145 -164
  144. data/app/helpers/katello/distributors_helper.rb +43 -45
  145. data/app/helpers/katello/errata_mailer_helper.rb +47 -0
  146. data/app/helpers/katello/host_collection_events_helper.rb +19 -0
  147. data/app/helpers/katello/hosts_and_hostgroups_helper.rb +81 -0
  148. data/app/helpers/katello/katello_form_builder.rb +127 -126
  149. data/app/helpers/katello/katello_url_helper.rb +19 -30
  150. data/app/helpers/katello/katello_urls_helper.rb +30 -0
  151. data/app/helpers/katello/layout_helper.rb +14 -16
  152. data/app/helpers/katello/notices_helper.rb +7 -9
  153. data/app/helpers/katello/organizations_helper.rb +16 -18
  154. data/app/helpers/katello/packages_helper.rb +54 -56
  155. data/app/helpers/katello/products_helper.rb +45 -46
  156. data/app/helpers/katello/providers_helper.rb +70 -80
  157. data/app/helpers/katello/repositories_helper.rb +14 -14
  158. data/app/helpers/katello/search_helper.rb +17 -19
  159. data/app/helpers/katello/subscriptions_helper.rb +24 -25
  160. data/app/helpers/katello/sync_management_helper.rb +82 -85
  161. data/app/helpers/katello/system_events_helper.rb +3 -3
  162. data/app/helpers/katello/system_packages_helper.rb +33 -34
  163. data/app/helpers/katello/taxonomy_helper.rb +2 -4
  164. data/app/helpers/katello/translation_helper.rb +13 -13
  165. data/app/helpers/katello/users_helper.rb +27 -28
  166. data/app/lib/actions/abstract_async_task.rb +25 -0
  167. data/app/lib/actions/candlepin/abstract.rb +20 -0
  168. data/app/lib/actions/candlepin/abstract_async_task.rb +36 -0
  169. data/app/lib/actions/candlepin/activation_key/create.rb +28 -0
  170. data/app/lib/actions/candlepin/activation_key/destroy.rb +25 -0
  171. data/app/lib/actions/candlepin/activation_key/update.rb +34 -0
  172. data/app/lib/actions/candlepin/candlepin_listening_service.rb +108 -0
  173. data/app/lib/actions/candlepin/consumer/auto_attach_subscriptions.rb +31 -0
  174. data/app/lib/actions/candlepin/consumer/create.rb +63 -0
  175. data/app/lib/actions/candlepin/consumer/destroy.rb +27 -0
  176. data/app/lib/actions/candlepin/consumer/update.rb +45 -0
  177. data/app/lib/actions/candlepin/environment/create.rb +33 -0
  178. data/app/lib/actions/candlepin/environment/destroy.rb +27 -0
  179. data/app/lib/actions/candlepin/environment/set_content.rb +59 -0
  180. data/app/lib/actions/candlepin/listen_on_candlepin_events.rb +196 -0
  181. data/app/lib/actions/candlepin/owner/auto_attach.rb +27 -0
  182. data/app/lib/actions/candlepin/owner/create.rb +28 -0
  183. data/app/lib/actions/candlepin/owner/destroy.rb +27 -0
  184. data/app/lib/actions/candlepin/product/content_add.rb +29 -0
  185. data/app/lib/actions/candlepin/product/content_create.rb +36 -0
  186. data/app/lib/actions/candlepin/product/content_destroy.rb +28 -0
  187. data/app/lib/actions/candlepin/product/content_remove.rb +29 -0
  188. data/app/lib/actions/candlepin/product/content_update.rb +40 -0
  189. data/app/lib/actions/candlepin/product/create.rb +31 -0
  190. data/app/lib/actions/candlepin/product/create_unlimited_subscription.rb +29 -0
  191. data/app/lib/actions/candlepin/product/delete_pools.rb +31 -0
  192. data/app/lib/actions/candlepin/product/delete_subscriptions.rb +28 -0
  193. data/app/lib/actions/candlepin/product/delete_unused.rb +13 -0
  194. data/app/lib/actions/candlepin/product/destroy.rb +27 -0
  195. data/app/lib/actions/candlepin/product/update.rb +41 -0
  196. data/app/lib/actions/candlepin/reindex_pool_subscription_handler.rb +91 -0
  197. data/app/lib/actions/elastic_search/abstract.rb +19 -0
  198. data/app/lib/actions/elastic_search/content_view_puppet_environment/index_content.rb +28 -0
  199. data/app/lib/actions/elastic_search/provider/reindex_subscriptions.rb +33 -0
  200. data/app/lib/actions/elastic_search/reindex.rb +38 -0
  201. data/app/lib/actions/elastic_search/reindex_on_association_change.rb +37 -0
  202. data/app/lib/actions/elastic_search/repository/destroy.rb +35 -0
  203. data/app/lib/actions/elastic_search/repository/filtered_index_content.rb +46 -0
  204. data/app/lib/actions/elastic_search/repository/index_content.rb +29 -0
  205. data/app/lib/actions/elastic_search/repository/remove_packages.rb +28 -0
  206. data/app/lib/actions/elastic_search/repository/remove_puppet_modules.rb +28 -0
  207. data/app/lib/actions/foreman/environment/destroy.rb +35 -0
  208. data/app/lib/actions/helpers/presenter.rb +50 -0
  209. data/app/lib/actions/katello/activation_key/create.rb +44 -0
  210. data/app/lib/actions/katello/activation_key/destroy.rb +37 -0
  211. data/app/lib/actions/katello/activation_key/reassign.rb +26 -0
  212. data/app/lib/actions/katello/activation_key/update.rb +44 -0
  213. data/app/lib/actions/katello/capsule_content/configure_capsule.rb +26 -0
  214. data/app/lib/actions/katello/capsule_content/manage_bound_repositories.rb +49 -0
  215. data/app/lib/actions/katello/capsule_content/sync.rb +58 -0
  216. data/app/lib/actions/katello/capsule_content/update_without_content.rb +27 -0
  217. data/app/lib/actions/katello/content_view/add_to_environment.rb +30 -0
  218. data/app/lib/actions/katello/content_view/capsule_generate_and_sync.rb +36 -0
  219. data/app/lib/actions/katello/content_view/create.rb +29 -0
  220. data/app/lib/actions/katello/content_view/destroy.rb +49 -0
  221. data/app/lib/actions/katello/content_view/environment_create.rb +35 -0
  222. data/app/lib/actions/katello/content_view/errata_mail.rb +37 -0
  223. data/app/lib/actions/katello/content_view/incremental_updates.rb +89 -0
  224. data/app/lib/actions/katello/content_view/node_metadata_generate.rb +42 -0
  225. data/app/lib/actions/katello/content_view/presenters/incremental_updates_presenter.rb +55 -0
  226. data/app/lib/actions/katello/content_view/promote.rb +80 -0
  227. data/app/lib/actions/katello/content_view/publish.rb +88 -0
  228. data/app/lib/actions/katello/content_view/remove.rb +141 -0
  229. data/app/lib/actions/katello/content_view/remove_from_environment.rb +51 -0
  230. data/app/lib/actions/katello/content_view/remove_version.rb +43 -0
  231. data/app/lib/actions/katello/content_view/update.rb +44 -0
  232. data/app/lib/actions/katello/content_view/update_environment.rb +33 -0
  233. data/app/lib/actions/katello/content_view_environment/destroy.rb +56 -0
  234. data/app/lib/actions/katello/content_view_environment/reassign_objects.rb +31 -0
  235. data/app/lib/actions/katello/content_view_puppet_environment/clear.rb +23 -0
  236. data/app/lib/actions/katello/content_view_puppet_environment/clone.rb +88 -0
  237. data/app/lib/actions/katello/content_view_puppet_environment/clone_content.rb +40 -0
  238. data/app/lib/actions/katello/content_view_puppet_environment/create.rb +49 -0
  239. data/app/lib/actions/katello/content_view_puppet_environment/create_for_version.rb +34 -0
  240. data/app/lib/actions/katello/content_view_puppet_environment/destroy.rb +39 -0
  241. data/app/lib/actions/katello/content_view_puppet_module/destroy.rb +59 -0
  242. data/app/lib/actions/katello/content_view_version/destroy.rb +43 -0
  243. data/app/lib/actions/katello/content_view_version/incremental_update.rb +217 -0
  244. data/app/lib/actions/katello/environment/destroy.rb +58 -0
  245. data/app/lib/actions/katello/environment/library_create.rb +47 -0
  246. data/app/lib/actions/katello/foreman/abstract.rb +20 -0
  247. data/app/lib/actions/katello/foreman/content_update.rb +47 -0
  248. data/app/lib/actions/katello/organization/auto_attach_subscriptions.rb +28 -0
  249. data/app/lib/actions/katello/organization/create.rb +48 -0
  250. data/app/lib/actions/katello/organization/destroy.rb +120 -0
  251. data/app/lib/actions/katello/organization/index_subscriptions.rb +61 -0
  252. data/app/lib/actions/katello/product/content_create.rb +61 -0
  253. data/app/lib/actions/katello/product/content_destroy.rb +34 -0
  254. data/app/lib/actions/katello/product/create.rb +52 -0
  255. data/app/lib/actions/katello/product/destroy.rb +76 -0
  256. data/app/lib/actions/katello/product/repositories_gpg_reset.rb +31 -0
  257. data/app/lib/actions/katello/product/update.rb +34 -0
  258. data/app/lib/actions/katello/provider/destroy.rb +37 -0
  259. data/app/lib/actions/katello/provider/manifest_delete.rb +41 -0
  260. data/app/lib/actions/katello/provider/manifest_import.rb +46 -0
  261. data/app/lib/actions/katello/provider/manifest_refresh.rb +42 -0
  262. data/app/lib/actions/katello/repository/capsule_generate_and_sync.rb +35 -0
  263. data/app/lib/actions/katello/repository/clear.rb +29 -0
  264. data/app/lib/actions/katello/repository/clone_docker_content.rb +32 -0
  265. data/app/lib/actions/katello/repository/clone_to_environment.rb +54 -0
  266. data/app/lib/actions/katello/repository/clone_to_version.rb +39 -0
  267. data/app/lib/actions/katello/repository/clone_yum_content.rb +79 -0
  268. data/app/lib/actions/katello/repository/correct_checksum.rb +36 -0
  269. data/app/lib/actions/katello/repository/create.rb +79 -0
  270. data/app/lib/actions/katello/repository/destroy.rb +59 -0
  271. data/app/lib/actions/katello/repository/discover.rb +62 -0
  272. data/app/lib/actions/katello/repository/errata_mail.rb +38 -0
  273. data/app/lib/actions/katello/repository/finish_upload.rb +31 -0
  274. data/app/lib/actions/katello/repository/import_upload.rb +33 -0
  275. data/app/lib/actions/katello/repository/index_errata.rb +31 -0
  276. data/app/lib/actions/katello/repository/metadata_generate.rb +44 -0
  277. data/app/lib/actions/katello/repository/node_metadata_generate.rb +26 -0
  278. data/app/lib/actions/katello/repository/remove_content.rb +64 -0
  279. data/app/lib/actions/katello/repository/remove_docker_images.rb +35 -0
  280. data/app/lib/actions/katello/repository/sync.rb +84 -0
  281. data/app/lib/actions/katello/repository/update.rb +70 -0
  282. data/app/lib/actions/katello/repository/update_media.rb +28 -0
  283. data/app/lib/actions/katello/repository/upload_files.rb +79 -0
  284. data/app/lib/actions/katello/repository_set/disable_repository.rb +41 -0
  285. data/app/lib/actions/katello/repository_set/enable_repository.rb +43 -0
  286. data/app/lib/actions/katello/repository_set/scan_cdn.rb +85 -0
  287. data/app/lib/actions/katello/sync_plan/add_products.rb +35 -0
  288. data/app/lib/actions/katello/sync_plan/destroy.rb +38 -0
  289. data/app/lib/actions/katello/sync_plan/remove_products.rb +35 -0
  290. data/app/lib/actions/katello/sync_plan/update.rb +32 -0
  291. data/app/lib/actions/katello/system/activation_keys.rb +59 -0
  292. data/app/lib/actions/katello/system/auto_attach_subscriptions.rb +28 -0
  293. data/app/lib/actions/katello/system/create.rb +80 -0
  294. data/app/lib/actions/katello/system/destroy.rb +43 -0
  295. data/app/lib/actions/katello/system/erratum/applicable_errata_install.rb +37 -0
  296. data/app/lib/actions/katello/system/erratum/install.rb +49 -0
  297. data/app/lib/actions/katello/system/generate_applicability.rb +34 -0
  298. data/app/lib/actions/katello/system/host_destroy.rb +40 -0
  299. data/app/lib/actions/katello/system/package/install.rb +45 -0
  300. data/app/lib/actions/katello/system/package/remove.rb +58 -0
  301. data/app/lib/actions/katello/system/package/update.rb +45 -0
  302. data/app/lib/actions/katello/system/package_group/install.rb +45 -0
  303. data/app/lib/actions/katello/system/package_group/remove.rb +44 -0
  304. data/app/lib/actions/katello/system/reassign.rb +35 -0
  305. data/app/lib/actions/katello/system/update.rb +38 -0
  306. data/app/lib/actions/katello/user/create.rb +27 -0
  307. data/app/lib/actions/katello/user/destroy.rb +28 -0
  308. data/app/lib/actions/middleware/keep_locale.rb +40 -0
  309. data/app/lib/actions/middleware/propagate_candlepin_errors.rb +37 -0
  310. data/app/lib/actions/middleware/record_fixtures.rb +46 -0
  311. data/app/lib/actions/middleware/remote_action.rb +64 -0
  312. data/app/lib/actions/pulp/abstract.rb +27 -0
  313. data/app/lib/actions/pulp/abstract_async_task.rb +122 -0
  314. data/app/lib/actions/pulp/consumer.rb +107 -0
  315. data/app/lib/actions/pulp/consumer/abstract_content_action.rb +67 -0
  316. data/app/lib/actions/pulp/consumer/abstract_node_distributor_task.rb +39 -0
  317. data/app/lib/actions/pulp/consumer/abstract_sync_node_task.rb +33 -0
  318. data/app/lib/actions/pulp/consumer/activate_node.rb +31 -0
  319. data/app/lib/actions/pulp/consumer/bind_node_distributor.rb +32 -0
  320. data/app/lib/actions/pulp/consumer/content_install.rb +41 -0
  321. data/app/lib/actions/pulp/consumer/content_uninstall.rb +38 -0
  322. data/app/lib/actions/pulp/consumer/content_update.rb +42 -0
  323. data/app/lib/actions/pulp/consumer/create.rb +31 -0
  324. data/app/lib/actions/pulp/consumer/deactivate_node.rb +31 -0
  325. data/app/lib/actions/pulp/consumer/destroy.rb +27 -0
  326. data/app/lib/actions/pulp/consumer/generate_applicability.rb +27 -0
  327. data/app/lib/actions/pulp/consumer/sync_node.rb +87 -0
  328. data/app/lib/actions/pulp/consumer/unbind_node_distributor.rb +33 -0
  329. data/app/lib/actions/pulp/consumer/update.rb +32 -0
  330. data/app/lib/actions/pulp/expect_one_task.rb +23 -0
  331. data/app/lib/actions/pulp/repos/update.rb +36 -0
  332. data/app/lib/actions/pulp/repository/abstract_copy_content.rb +57 -0
  333. data/app/lib/actions/pulp/repository/abstract_remove_content.rb +44 -0
  334. data/app/lib/actions/pulp/repository/associate_distributor.rb +31 -0
  335. data/app/lib/actions/pulp/repository/copy_distribution.rb +23 -0
  336. data/app/lib/actions/pulp/repository/copy_docker_image.rb +23 -0
  337. data/app/lib/actions/pulp/repository/copy_docker_tag.rb +30 -0
  338. data/app/lib/actions/pulp/repository/copy_errata.rb +23 -0
  339. data/app/lib/actions/pulp/repository/copy_package_group.rb +23 -0
  340. data/app/lib/actions/pulp/repository/copy_puppet_module.rb +27 -0
  341. data/app/lib/actions/pulp/repository/copy_rpm.rb +27 -0
  342. data/app/lib/actions/pulp/repository/copy_yum_metadata_file.rb +23 -0
  343. data/app/lib/actions/pulp/repository/create.rb +128 -0
  344. data/app/lib/actions/pulp/repository/create_in_plan.rb +41 -0
  345. data/app/lib/actions/pulp/repository/create_upload_request.rb +32 -0
  346. data/app/lib/actions/pulp/repository/delete_upload_request.rb +31 -0
  347. data/app/lib/actions/pulp/repository/destroy.rb +27 -0
  348. data/app/lib/actions/pulp/repository/distributor_publish.rb +59 -0
  349. data/app/lib/actions/pulp/repository/import_upload.rb +37 -0
  350. data/app/lib/actions/pulp/repository/presenters/abstract_sync_presenter.rb +62 -0
  351. data/app/lib/actions/pulp/repository/presenters/docker_presenter.rb +115 -0
  352. data/app/lib/actions/pulp/repository/presenters/iso_presenter.rb +54 -0
  353. data/app/lib/actions/pulp/repository/presenters/puppet_presenter.rb +63 -0
  354. data/app/lib/actions/pulp/repository/presenters/yum_presenter.rb +142 -0
  355. data/app/lib/actions/pulp/repository/purge_empty_errata.rb +37 -0
  356. data/app/lib/actions/pulp/repository/purge_empty_package_groups.rb +39 -0
  357. data/app/lib/actions/pulp/repository/refresh.rb +47 -0
  358. data/app/lib/actions/pulp/repository/refresh_distributor.rb +30 -0
  359. data/app/lib/actions/pulp/repository/regenerate_applicability.rb +27 -0
  360. data/app/lib/actions/pulp/repository/remove_distribution.rb +23 -0
  361. data/app/lib/actions/pulp/repository/remove_docker_image.rb +23 -0
  362. data/app/lib/actions/pulp/repository/remove_errata.rb +23 -0
  363. data/app/lib/actions/pulp/repository/remove_package_group.rb +23 -0
  364. data/app/lib/actions/pulp/repository/remove_puppet_module.rb +23 -0
  365. data/app/lib/actions/pulp/repository/remove_rpm.rb +27 -0
  366. data/app/lib/actions/pulp/repository/remove_schedule.rb +27 -0
  367. data/app/lib/actions/pulp/repository/sync.rb +78 -0
  368. data/app/lib/actions/pulp/repository/update_importer.rb +30 -0
  369. data/app/lib/actions/pulp/repository/update_schedule.rb +58 -0
  370. data/app/lib/actions/pulp/repository/upload_file.rb +40 -0
  371. data/app/lib/actions/pulp/superuser/abstract.rb +35 -0
  372. data/app/lib/actions/pulp/superuser/add.rb +23 -0
  373. data/app/lib/actions/pulp/superuser/remove.rb +23 -0
  374. data/app/lib/actions/pulp/user/create.rb +35 -0
  375. data/app/lib/actions/pulp/user/destroy.rb +27 -0
  376. data/app/lib/katello/api/constraints/activation_key_constraint.rb +5 -5
  377. data/app/lib/katello/api/mapper_extensions.rb +0 -5
  378. data/app/lib/katello/api/v2/error_handling.rb +117 -110
  379. data/app/lib/katello/api/v2/rendering.rb +12 -8
  380. data/app/lib/katello/api/version2.rb +5 -5
  381. data/app/lib/katello/bulk_actions.rb +49 -70
  382. data/app/lib/katello/capsule_content.rb +77 -0
  383. data/app/lib/katello/content_search/cell.rb +13 -14
  384. data/app/lib/katello/content_search/column.rb +3 -3
  385. data/app/lib/katello/content_search/container_search.rb +38 -31
  386. data/app/lib/katello/content_search/content_view_comparison.rb +156 -162
  387. data/app/lib/katello/content_search/content_view_search.rb +44 -47
  388. data/app/lib/katello/content_search/element.rb +33 -37
  389. data/app/lib/katello/content_search/metadata_row.rb +17 -17
  390. data/app/lib/katello/content_search/product_row.rb +17 -18
  391. data/app/lib/katello/content_search/product_search.rb +38 -39
  392. data/app/lib/katello/content_search/repo_row.rb +16 -16
  393. data/app/lib/katello/content_search/repo_search.rb +43 -44
  394. data/app/lib/katello/content_search/row.rb +10 -10
  395. data/app/lib/katello/content_search/search.rb +27 -29
  396. data/app/lib/katello/content_search/search_utils.rb +15 -15
  397. data/app/lib/katello/content_search/span.rb +5 -5
  398. data/app/lib/katello/content_search/unit_row.rb +35 -36
  399. data/app/lib/katello/dashboard/content_views_widget.rb +14 -14
  400. data/app/lib/katello/dashboard/errata_widget.rb +14 -14
  401. data/app/lib/katello/dashboard/host_collections_widget.rb +30 -0
  402. data/app/lib/katello/dashboard/layout.rb +46 -49
  403. data/app/lib/katello/dashboard/notices_widget.rb +8 -9
  404. data/app/lib/katello/dashboard/subscriptions_totals_widget.rb +4 -4
  405. data/app/lib/katello/dashboard/subscriptions_widget.rb +10 -10
  406. data/app/lib/katello/dashboard/sync_widget.rb +14 -13
  407. data/app/lib/katello/dashboard/widget.rb +24 -25
  408. data/app/lib/katello/errors.rb +77 -46
  409. data/app/lib/katello/foreman.rb +41 -0
  410. data/app/lib/katello/glue/queue.rb +45 -52
  411. data/app/lib/katello/glue/task.rb +34 -34
  412. data/app/lib/katello/http_resource.rb +171 -174
  413. data/app/lib/katello/lazy_accessor.rb +146 -110
  414. data/app/lib/katello/mapping.rb +20 -23
  415. data/app/lib/katello/notifications.rb +3 -3
  416. data/app/lib/katello/notifications/controller_helper.rb +27 -27
  417. data/app/lib/katello/notifications/notifier.rb +154 -154
  418. data/app/lib/katello/notify.rb +1 -1
  419. data/app/lib/katello/repo_discovery.rb +57 -60
  420. data/app/lib/katello/resources/candlepin.rb +671 -549
  421. data/app/lib/katello/resources/cdn.rb +112 -109
  422. data/app/lib/katello/util/cdn_var_substitutor.rb +121 -97
  423. data/app/lib/katello/util/data.rb +26 -29
  424. data/app/lib/katello/util/errata.rb +36 -37
  425. data/app/lib/katello/util/filter_clause_generator.rb +100 -0
  426. data/app/lib/katello/util/model.rb +49 -25
  427. data/app/lib/katello/util/package.rb +145 -140
  428. data/app/lib/katello/util/package_clause_generator.rb +52 -53
  429. data/app/lib/katello/util/package_filter.rb +66 -67
  430. data/app/lib/katello/util/report_table.rb +66 -67
  431. data/app/lib/katello/util/search.rb +54 -46
  432. data/app/lib/katello/util/support.rb +72 -73
  433. data/app/lib/katello/util/task_status.rb +113 -111
  434. data/app/lib/katello/util/thread_session.rb +39 -25
  435. data/app/lib/katello/util/url_matcher.rb +54 -57
  436. data/app/lib/katello/validators/content_validator.rb +8 -8
  437. data/app/lib/katello/validators/content_view_environment_validator.rb +13 -12
  438. data/app/lib/katello/validators/content_view_erratum_filter_rule_validator.rb +86 -0
  439. data/app/lib/katello/validators/content_view_filter_version_validator.rb +25 -0
  440. data/app/lib/katello/validators/content_view_puppet_module_validator.rb +37 -0
  441. data/app/lib/katello/validators/default_info_validator.rb +18 -19
  442. data/app/lib/katello/validators/gpg_key_content_validator.rb +24 -26
  443. data/app/lib/katello/validators/katello_label_format_validator.rb +16 -16
  444. data/app/lib/katello/validators/katello_name_format_validator.rb +14 -15
  445. data/app/lib/katello/validators/katello_url_format_validator.rb +14 -15
  446. data/app/lib/katello/validators/library_presence_validator.rb +6 -6
  447. data/app/lib/katello/validators/no_trailing_space_validator.rb +10 -10
  448. data/app/lib/katello/validators/non_library_environment_validator.rb +7 -7
  449. data/app/lib/katello/validators/not_in_library_validator.rb +6 -6
  450. data/app/lib/katello/validators/path_descendents_validator.rb +19 -19
  451. data/app/lib/katello/validators/prior_validator.rb +16 -16
  452. data/app/lib/katello/validators/product_unique_attribute_validator.rb +39 -0
  453. data/app/lib/katello/validators/repo_disablement_validator.rb +9 -7
  454. data/app/lib/katello/validators/repository_unique_attribute_validator.rb +25 -0
  455. data/app/lib/katello/validators/self_reference_environment_validator.rb +6 -6
  456. data/app/lib/katello/validators/unique_field_in_org.rb +9 -9
  457. data/app/mailers/katello/errata_mailer.rb +61 -0
  458. data/app/models/katello/activation_key.rb +192 -122
  459. data/app/models/katello/authorization.rb +25 -0
  460. data/app/models/katello/authorization/activation_key.rb +26 -27
  461. data/app/models/katello/authorization/content_view.rb +56 -79
  462. data/app/models/katello/authorization/content_view_environment.rb +21 -0
  463. data/app/models/katello/authorization/content_view_version.rb +7 -22
  464. data/app/models/katello/authorization/distributor.rb +32 -42
  465. data/app/models/katello/authorization/gpg_key.rb +15 -35
  466. data/app/models/katello/authorization/host_collection.rb +58 -0
  467. data/app/models/katello/authorization/lifecycle_environment.rb +66 -0
  468. data/app/models/katello/authorization/organization.rb +20 -134
  469. data/app/models/katello/authorization/product.rb +41 -33
  470. data/app/models/katello/authorization/repository.rb +36 -63
  471. data/app/models/katello/authorization/sync_plan.rb +38 -0
  472. data/app/models/katello/authorization/system.rb +35 -85
  473. data/app/models/katello/candlepin/content.rb +235 -28
  474. data/app/models/katello/candlepin/product_content.rb +24 -129
  475. data/app/models/katello/capsule_lifecycle_environment.rb +23 -0
  476. data/app/models/katello/concerns/container_extensions.rb +37 -0
  477. data/app/models/katello/concerns/docker_container_wizard_state_extensions.rb +27 -0
  478. data/app/models/katello/concerns/environment_extensions.rb +76 -0
  479. data/app/models/katello/concerns/host_managed_extensions.rb +73 -0
  480. data/app/models/katello/concerns/hostgroup_extensions.rb +91 -0
  481. data/app/models/katello/concerns/location_extensions.rb +58 -0
  482. data/app/models/katello/concerns/medium_extensions.rb +81 -0
  483. data/app/models/katello/concerns/organization_extensions.rb +60 -125
  484. data/app/models/katello/concerns/redhat_extensions.rb +127 -0
  485. data/app/models/katello/concerns/smart_proxy_extensions.rb +95 -0
  486. data/app/models/katello/concerns/user_extensions.rb +25 -248
  487. data/app/models/katello/content_view.rb +586 -350
  488. data/app/models/katello/content_view_component.rb +40 -0
  489. data/app/models/katello/content_view_environment.rb +54 -11
  490. data/app/models/katello/content_view_erratum_filter.rb +69 -0
  491. data/app/models/katello/content_view_erratum_filter_rule.rb +34 -0
  492. data/app/models/katello/content_view_filter.rb +164 -0
  493. data/app/models/katello/content_view_history.rb +38 -0
  494. data/app/models/katello/content_view_package_filter.rb +56 -0
  495. data/app/models/katello/content_view_package_filter_rule.rb +28 -0
  496. data/app/models/katello/content_view_package_group_filter.rb +30 -0
  497. data/app/models/katello/content_view_package_group_filter_rule.rb +27 -0
  498. data/app/models/katello/content_view_puppet_environment.rb +96 -0
  499. data/app/models/katello/content_view_puppet_module.rb +70 -0
  500. data/app/models/katello/content_view_repository.rb +54 -0
  501. data/app/models/katello/content_view_version.rb +181 -148
  502. data/app/models/katello/content_view_version_component.rb +37 -0
  503. data/app/models/katello/cp_consumer_user.rb +7 -8
  504. data/app/models/katello/custom_info.rb +36 -63
  505. data/app/models/katello/distribution.rb +19 -4
  506. data/app/models/katello/distributor.rb +83 -88
  507. data/app/models/katello/docker_image.rb +36 -0
  508. data/app/models/katello/docker_tag.rb +72 -0
  509. data/app/models/katello/erratum.rb +134 -0
  510. data/app/models/katello/erratum_bugzilla.rb +20 -0
  511. data/app/models/katello/erratum_cve.rb +20 -0
  512. data/app/models/katello/erratum_package.rb +20 -0
  513. data/app/models/katello/ext/indexed_model.rb +136 -118
  514. data/app/models/katello/ext/label_from_name.rb +21 -11
  515. data/app/models/katello/glue.rb +149 -151
  516. data/app/models/katello/glue/candlepin/activation_key.rb +82 -0
  517. data/app/models/katello/glue/candlepin/consumer.rb +442 -528
  518. data/app/models/katello/glue/candlepin/content.rb +41 -115
  519. data/app/models/katello/glue/candlepin/environment.rb +9 -86
  520. data/app/models/katello/glue/candlepin/owner.rb +49 -122
  521. data/app/models/katello/glue/candlepin/owner_info.rb +30 -32
  522. data/app/models/katello/glue/candlepin/pool.rb +167 -148
  523. data/app/models/katello/glue/candlepin/product.rb +126 -302
  524. data/app/models/katello/glue/elastic_search/activation_key.rb +18 -18
  525. data/app/models/katello/glue/elastic_search/backend_indexed_model.rb +124 -0
  526. data/app/models/katello/glue/elastic_search/content_view.rb +28 -33
  527. data/app/models/katello/glue/elastic_search/content_view_erratum_filter_rule.rb +43 -0
  528. data/app/models/katello/glue/elastic_search/content_view_filter.rb +39 -0
  529. data/app/models/katello/glue/elastic_search/content_view_history.rb +43 -0
  530. data/app/models/katello/glue/elastic_search/content_view_package_filter_rule.rb +44 -0
  531. data/app/models/katello/glue/elastic_search/content_view_package_group_filter_rule.rb +41 -0
  532. data/app/models/katello/glue/elastic_search/content_view_puppet_environment.rb +72 -0
  533. data/app/models/katello/glue/elastic_search/content_view_puppet_module.rb +41 -0
  534. data/app/models/katello/glue/elastic_search/distribution.rb +72 -0
  535. data/app/models/katello/glue/elastic_search/distributor.rb +37 -40
  536. data/app/models/katello/glue/elastic_search/facet_item.rb +21 -0
  537. data/app/models/katello/glue/elastic_search/host_collection.rb +43 -0
  538. data/app/models/katello/glue/elastic_search/items.rb +168 -136
  539. data/app/models/katello/glue/elastic_search/job.rb +16 -16
  540. data/app/models/katello/glue/elastic_search/marketing_product.rb +6 -8
  541. data/app/models/katello/glue/elastic_search/notice.rb +17 -20
  542. data/app/models/katello/glue/elastic_search/package.rb +171 -130
  543. data/app/models/katello/glue/elastic_search/package_group.rb +97 -82
  544. data/app/models/katello/glue/elastic_search/pool.rb +147 -115
  545. data/app/models/katello/glue/elastic_search/product.rb +39 -46
  546. data/app/models/katello/glue/elastic_search/provider.rb +19 -23
  547. data/app/models/katello/glue/elastic_search/puppet_module.rb +190 -120
  548. data/app/models/katello/glue/elastic_search/repository.rb +91 -183
  549. data/app/models/katello/glue/elastic_search/system.rb +135 -121
  550. data/app/models/katello/glue/elastic_search/task_status.rb +40 -42
  551. data/app/models/katello/glue/provider.rb +375 -467
  552. data/app/models/katello/glue/pulp/consumer.rb +167 -234
  553. data/app/models/katello/glue/pulp/consumer_group.rb +89 -91
  554. data/app/models/katello/glue/pulp/distribution.rb +25 -26
  555. data/app/models/katello/glue/pulp/package.rb +49 -44
  556. data/app/models/katello/glue/pulp/package_group.rb +36 -37
  557. data/app/models/katello/glue/pulp/pulp_content_unit.rb +119 -0
  558. data/app/models/katello/glue/pulp/pulp_errors.rb +6 -6
  559. data/app/models/katello/glue/pulp/puppet_module.rb +48 -43
  560. data/app/models/katello/glue/pulp/repo.rb +618 -678
  561. data/app/models/katello/glue/pulp/repos.rb +254 -303
  562. data/app/models/katello/glue/pulp/simple_package.rb +10 -10
  563. data/app/models/katello/glue/pulp/user.rb +29 -65
  564. data/app/models/katello/gpg_key.rb +37 -30
  565. data/app/models/katello/hash_util.rb +21 -21
  566. data/app/models/katello/help_tip.rb +6 -6
  567. data/app/models/katello/host_collection.rb +199 -0
  568. data/app/models/katello/hypervisor.rb +11 -10
  569. data/app/models/katello/job.rb +149 -149
  570. data/app/models/katello/job_task.rb +8 -6
  571. data/app/models/katello/key_host_collection.rb +22 -0
  572. data/app/models/katello/kt_environment.rb +231 -280
  573. data/app/models/katello/marketing_engineering_product.rb +7 -6
  574. data/app/models/katello/marketing_product.rb +7 -7
  575. data/app/models/katello/model.rb +24 -0
  576. data/app/models/katello/notice.rb +46 -45
  577. data/app/models/katello/package.rb +6 -6
  578. data/app/models/katello/package_group.rb +6 -6
  579. data/app/models/katello/ping.rb +28 -49
  580. data/app/models/katello/pool.rb +42 -39
  581. data/app/models/katello/product.rb +182 -183
  582. data/app/models/katello/provider.rb +138 -182
  583. data/app/models/katello/proxy_association_owner.rb +6 -6
  584. data/app/models/katello/pulp_sync_status.rb +134 -133
  585. data/app/models/katello/pulp_task_status.rb +87 -84
  586. data/app/models/katello/puppet_module.rb +22 -22
  587. data/app/models/katello/repository.rb +454 -275
  588. data/app/models/katello/repository_docker_image.rb +22 -0
  589. data/app/models/katello/repository_erratum.rb +22 -0
  590. data/app/models/katello/search_favorite.rb +18 -18
  591. data/app/models/katello/search_history.rb +8 -7
  592. data/app/models/katello/sync_plan.rb +99 -66
  593. data/app/models/katello/system.rb +323 -181
  594. data/app/models/katello/system_activation_key.rb +6 -6
  595. data/app/models/katello/system_erratum.rb +22 -0
  596. data/app/models/katello/system_host_collection.rb +34 -0
  597. data/app/models/katello/system_repository.rb +21 -0
  598. data/app/models/katello/task_status.rb +313 -317
  599. data/app/models/katello/user_notice.rb +10 -19
  600. data/app/models/repository_docker_image.rb +18 -0
  601. data/app/models/setting/katello.rb +21 -0
  602. data/app/overrides/add_about_page.rb +20 -0
  603. data/app/overrides/add_activation_keys_input.rb +19 -0
  604. data/app/overrides/add_organization_attributes.rb +17 -4
  605. data/app/overrides/add_smart_proxy_form.rb +9 -0
  606. data/app/overrides/add_subscription_status.rb +13 -0
  607. data/app/overrides/foreman/about/_installed_packages.html.erb +10 -0
  608. data/app/overrides/foreman/about/_support_documentation.html.erb +7 -0
  609. data/app/overrides/foreman/about/_system_status.html.erb +19 -0
  610. data/app/overrides/foreman/activation_keys/_host_environment_select.html.erb +36 -0
  611. data/app/overrides/foreman/activation_keys/_host_tab.html.erb +3 -0
  612. data/app/overrides/foreman/activation_keys/_host_tab_pane.html.erb +25 -0
  613. data/app/overrides/foreman/hosts/_subscription_link.html.erb +6 -0
  614. data/app/overrides/foreman/hosts/_subscription_status.html.erb +23 -0
  615. data/app/overrides/foreman/organizations/_edit_override.html.erb +18 -0
  616. data/app/overrides/foreman/organizations/_step_1_override.html.erb +5 -0
  617. data/app/overrides/foreman/smart_proxies/_environment_tab.html.erb +5 -0
  618. data/app/overrides/foreman/smart_proxies/_environment_tab_pane.html.erb +9 -0
  619. data/app/overrides/foreman/taxonomies/_action_buttons.html.erb +21 -0
  620. data/app/overrides/override_taxonomy_actions.rb +6 -0
  621. data/app/presenters/katello/content_view_version_compare_presenter.rb +35 -0
  622. data/app/presenters/katello/relation_presenter.rb +21 -0
  623. data/app/presenters/katello/repository_presenter.rb +40 -0
  624. data/app/services/client/cert.rb +52 -0
  625. data/app/services/katello/authentication/client_authentication.rb +55 -0
  626. data/app/services/katello/puppet_class_importer_extensions.rb +48 -0
  627. data/app/views/foreman/unattended/finish-katello.erb +70 -0
  628. data/app/views/foreman/unattended/kickstart-katello.erb +150 -0
  629. data/app/views/foreman/unattended/snippets/_subscription_manager_registration.erb +17 -0
  630. data/app/views/foreman/unattended/userdata-katello.erb +72 -0
  631. data/app/views/foreman_docker/containers/steps/_katello_container.html.erb +38 -0
  632. data/app/views/katello/api/v2/activation_keys/available_host_collections.json.rabl +7 -0
  633. data/app/views/katello/api/v2/activation_keys/available_releases.json.rabl +7 -0
  634. data/app/views/katello/api/v2/{system_groups → activation_keys}/index.json.rabl +0 -0
  635. data/app/views/katello/api/v2/activation_keys/product_content.json.rabl +7 -0
  636. data/app/views/katello/api/v2/activation_keys/show.json.rabl +34 -3
  637. data/app/views/katello/api/v2/activation_keys/subscriptions.json.rabl +7 -0
  638. data/app/views/katello/api/v2/capsule_content/lifecycle_environments.json.rabl +5 -0
  639. data/app/views/katello/api/v2/common/_org_reference.json.rabl +3 -1
  640. data/app/views/katello/api/v2/common/_syncable.json.rabl +6 -0
  641. data/app/views/katello/api/v2/{systems_bulk_actions → common}/bulk_action.json.rabl +0 -0
  642. data/app/views/katello/api/v2/common/bulk_async.json.rabl +7 -0
  643. data/app/views/katello/api/v2/content_view_filter_rules/index.json.rabl +3 -0
  644. data/app/views/katello/api/v2/content_view_filter_rules/show.json.rabl +16 -0
  645. data/app/views/katello/api/v2/content_view_filters/index.json.rabl +3 -0
  646. data/app/views/katello/api/v2/content_view_filters/show.json.rabl +41 -0
  647. data/app/views/katello/api/v2/content_view_histories/index.json.rabl +7 -0
  648. data/app/views/katello/api/v2/content_view_histories/show.json.rabl +25 -0
  649. data/app/views/katello/api/v2/content_view_puppet_modules/index.json.rabl +3 -0
  650. data/app/views/katello/api/v2/content_view_puppet_modules/show.json.rabl +13 -0
  651. data/app/views/katello/api/v2/content_view_versions/base.json.rabl +68 -0
  652. data/app/views/katello/api/v2/content_view_versions/index.json.rabl +4 -0
  653. data/app/views/katello/api/v2/content_view_versions/show.json.rabl +10 -0
  654. data/app/views/katello/api/v2/content_views/_content_view.json.rabl +73 -0
  655. data/app/views/katello/api/v2/content_views/copy.json.rabl +3 -0
  656. data/app/views/katello/api/v2/content_views/index.json.rabl +2 -9
  657. data/app/views/katello/api/v2/content_views/puppet_modules.json.rabl +7 -0
  658. data/app/views/katello/api/v2/content_views/show.json.rabl +3 -18
  659. data/app/views/katello/api/v2/content_views/version.json.rabl +3 -0
  660. data/app/views/katello/api/v2/distributions/index.json.rabl +3 -0
  661. data/app/views/katello/api/v2/distributions/show.json.rabl +1 -1
  662. data/app/views/katello/api/v2/distributors/pools.json.rabl +1 -1
  663. data/app/views/katello/api/v2/docker_images/index.json.rabl +7 -0
  664. data/app/views/katello/api/v2/docker_images/show.json.rabl +9 -0
  665. data/app/views/katello/api/v2/docker_tags/_base.json.rabl +20 -0
  666. data/app/views/katello/api/v2/docker_tags/index.json.rabl +7 -0
  667. data/app/views/katello/api/v2/docker_tags/show.json.rabl +12 -0
  668. data/app/views/katello/api/v2/environments/index.json.rabl +2 -2
  669. data/app/views/katello/api/v2/environments/paths.json.rabl +6 -10
  670. data/app/views/katello/api/v2/environments/releases.json.rabl +1 -1
  671. data/app/views/katello/api/v2/environments/show.json.rabl +39 -2
  672. data/app/views/katello/api/v2/errata/_applicable_errata.json.rabl +3 -0
  673. data/app/views/katello/api/v2/errata/_attributes.json.rabl +3 -1
  674. data/app/views/katello/api/v2/errata/_counts.json.rabl +15 -0
  675. data/app/views/katello/api/v2/errata/compare.json.rabl +10 -0
  676. data/app/views/katello/api/v2/errata/index.json.rabl +6 -2
  677. data/app/views/katello/api/v2/errata/show.json.rabl +15 -5
  678. data/app/views/katello/api/v2/gpg_keys/show.json.rabl +6 -6
  679. data/app/views/katello/api/v2/host_collection_errata/index.json.rabl +3 -0
  680. data/app/views/katello/api/v2/host_collections/_host_collection.json.rabl +16 -0
  681. data/app/views/katello/api/v2/host_collections/copy.json.rabl +3 -0
  682. data/app/views/katello/api/v2/host_collections/create.json.rabl +3 -0
  683. data/app/views/katello/api/v2/host_collections/delta_activation_keys.rabl +4 -0
  684. data/app/views/katello/api/v2/host_collections/history.json.rabl +3 -0
  685. data/app/views/katello/api/v2/{system_groups → host_collections}/history_show.json.rabl +0 -0
  686. data/app/views/katello/api/v2/host_collections/index.json.rabl +3 -0
  687. data/app/views/katello/api/v2/host_collections/show.json.rabl +3 -0
  688. data/app/views/katello/api/v2/host_collections/systems.json.rabl +13 -0
  689. data/app/views/katello/api/v2/host_collections/update.json.rabl +3 -0
  690. data/app/views/katello/api/v2/layouts/index.json.erb +12 -0
  691. data/app/views/katello/api/v2/organization_default_info/create.json.rabl +1 -1
  692. data/app/views/katello/api/v2/organizations/index.json.rabl +1 -1
  693. data/app/views/katello/api/v2/organizations/show.json.rabl +12 -3
  694. data/app/views/katello/api/v2/package_groups/index.json.rabl +7 -0
  695. data/app/views/katello/api/v2/package_groups/show.json.rabl +24 -0
  696. data/app/views/katello/api/v2/packages/index.json.rabl +3 -0
  697. data/app/views/katello/api/v2/packages/show.json.rabl +1 -9
  698. data/app/views/katello/api/v2/ping/show.json.rabl +1 -1
  699. data/app/views/katello/api/v2/ping/version.json.rabl +1 -1
  700. data/app/views/katello/api/v2/products/base.json.rabl +23 -0
  701. data/app/views/katello/api/v2/products/index.json.rabl +5 -1
  702. data/app/views/katello/api/v2/products/show.json.rabl +21 -18
  703. data/app/views/katello/api/v2/providers/_provider.json.rabl +1 -1
  704. data/app/views/katello/api/v2/providers/show.json.rabl +1 -1
  705. data/app/views/katello/api/v2/puppet_modules/index.json.rabl +3 -0
  706. data/app/views/katello/api/v2/puppet_modules/name.json.rabl +4 -0
  707. data/app/views/katello/api/v2/puppet_modules/names.json.rabl +7 -0
  708. data/app/views/katello/api/v2/puppet_modules/show.json.rabl +19 -0
  709. data/app/views/katello/api/v2/repositories/package_groups.json.rabl +1 -1
  710. data/app/views/katello/api/v2/repositories/show.json.rabl +42 -11
  711. data/app/views/katello/api/v2/repository_sets/available_repositories.json.rabl +4 -0
  712. data/app/views/katello/api/v2/repository_sets/index.json.rabl +2 -2
  713. data/app/views/katello/api/v2/repository_sets/show.json.rabl +6 -2
  714. data/app/views/katello/api/v2/root/resource_list.json.rabl +1 -1
  715. data/app/views/katello/api/v2/subscriptions/create.json.rabl +1 -1
  716. data/app/views/katello/api/v2/subscriptions/destroy.json.rabl +1 -1
  717. data/app/views/katello/api/v2/subscriptions/destroy_all.json.rabl +1 -1
  718. data/app/views/katello/api/v2/subscriptions/destroy_by_serial.json.rabl +1 -1
  719. data/app/views/katello/api/v2/subscriptions/index.json.rabl +2 -9
  720. data/app/views/katello/api/v2/subscriptions/manifest_history.json.rabl +2 -0
  721. data/app/views/katello/api/v2/subscriptions/organization_index.json.rabl +1 -1
  722. data/app/views/katello/api/v2/subscriptions/show.json.rabl +69 -23
  723. data/app/views/katello/api/v2/sync/create.json.rabl +1 -1
  724. data/app/views/katello/api/v2/sync/index.json.rabl +1 -3
  725. data/app/views/katello/api/v2/sync_plans/available_products.json.rabl +5 -0
  726. data/app/views/katello/api/v2/sync_plans/index.json.rabl +3 -0
  727. data/app/views/katello/api/v2/sync_plans/show.json.rabl +24 -4
  728. data/app/views/katello/api/v2/systems/_pool.json.rabl +1 -1
  729. data/app/views/katello/api/v2/systems/{add_system_groups.json.rabl → add_host_collections.json.rabl} +0 -0
  730. data/app/views/katello/api/v2/systems/available_host_collections.json.rabl +5 -0
  731. data/app/views/katello/api/v2/systems/base.json.rabl +31 -0
  732. data/app/views/katello/api/v2/systems/enabled_repos.json.rabl +1 -1
  733. data/app/views/katello/api/v2/systems/erratum.json.rabl +3 -8
  734. data/app/views/katello/api/v2/systems/events.json.rabl +3 -0
  735. data/app/views/katello/api/v2/systems/index.json.rabl +5 -1
  736. data/app/views/katello/api/v2/systems/releases.json.rabl +2 -4
  737. data/app/views/katello/api/v2/systems/{remove_system_groups.json.rabl → remove_host_collections.json.rabl} +0 -0
  738. data/app/views/katello/api/v2/systems/show.json.rabl +40 -28
  739. data/app/views/katello/api/v2/systems_bulk_actions/applicable_errata.json.rabl +1 -1
  740. data/app/views/katello/api/v2/systems_bulk_actions/available_incremental_updates.json.rabl +21 -0
  741. data/app/views/katello/api/v2/systems_bulk_actions/erratum.json.rabl +7 -1
  742. data/app/views/katello/api/v2/systems_bulk_actions/job.json.rabl +0 -1
  743. data/app/views/katello/api/v2/tasks/index.json.rabl +3 -0
  744. data/app/views/katello/api/v2/tasks/show.json.rabl +10 -14
  745. data/app/views/katello/api/v2/tasks/task_status_show.json.rabl +16 -0
  746. data/app/views/katello/api/v2/users/show.json.rabl +1 -1
  747. data/app/views/katello/common/403.html.haml +7 -5
  748. data/app/views/katello/common/404.html.haml +1 -1
  749. data/app/views/katello/common/500.html.haml +1 -1
  750. data/app/views/katello/common/_common_products.html.haml +1 -1
  751. data/app/views/katello/common/_config.html.haml +1 -1
  752. data/app/views/katello/common/_footer.haml +2 -4
  753. data/app/views/katello/common/_helptip.html.haml +3 -4
  754. data/app/views/katello/common/_helptip_button.html.haml +2 -3
  755. data/app/views/katello/content_search/_browser_box.html.haml +14 -41
  756. data/app/views/katello/content_search/_container_hover.html.haml +0 -6
  757. data/app/views/katello/content_search/_grid.html.haml +2 -2
  758. data/app/views/katello/content_search/_repo_hover.html.haml +0 -7
  759. data/app/views/katello/content_search/index.html.haml +0 -1
  760. data/app/views/katello/custom_info/_edit.html.haml +0 -3
  761. data/app/views/katello/dashboard/_ajax_entry.html.haml +2 -2
  762. data/app/views/katello/dashboard/_content_views.haml +13 -10
  763. data/app/views/katello/dashboard/_entry.html.haml +2 -2
  764. data/app/views/katello/dashboard/_errata.haml +6 -8
  765. data/app/views/katello/dashboard/_host_collection_item.html.haml +19 -0
  766. data/app/views/katello/dashboard/_host_collections.html.haml +31 -0
  767. data/app/views/katello/dashboard/_notices.html.haml +1 -1
  768. data/app/views/katello/dashboard/_subscriptions.haml +10 -8
  769. data/app/views/katello/dashboard/_subscriptions_totals.haml +3 -3
  770. data/app/views/katello/dashboard/_sync.haml +2 -2
  771. data/app/views/katello/dashboard/index.html.haml +9 -6
  772. data/app/views/katello/distributors/_edit.html.haml +13 -14
  773. data/app/views/katello/distributors/_list_distributor_show.html.haml +4 -5
  774. data/app/views/katello/distributors/_new.html.haml +11 -12
  775. data/app/views/katello/distributors/_subs.html.haml +1 -1
  776. data/app/views/katello/distributors/index.html.haml +0 -1
  777. data/app/views/katello/errata_mailer/_erratum.html.erb +29 -0
  778. data/app/views/katello/errata_mailer/_host_dashboard.html.erb +24 -0
  779. data/app/views/katello/errata_mailer/host_errata.html.erb +83 -0
  780. data/app/views/katello/errata_mailer/host_errata.text.erb +15 -0
  781. data/app/views/katello/errata_mailer/promote_errata.html.erb +87 -0
  782. data/app/views/katello/errata_mailer/promote_errata.text.erb +39 -0
  783. data/app/views/katello/errata_mailer/sync_errata.html.erb +92 -0
  784. data/app/views/katello/errata_mailer/sync_errata.text.erb +33 -0
  785. data/app/views/katello/layouts/katello.haml +9 -4
  786. data/app/views/katello/layouts/tupane_layout.html.haml +9 -3
  787. data/app/views/katello/notices/show.html.haml +2 -2
  788. data/app/views/katello/packages/_details.html.haml +29 -23
  789. data/app/views/katello/providers/redhat/_enable_errors.haml +9 -0
  790. data/app/views/katello/providers/redhat/_errors.html.haml +13 -0
  791. data/app/views/katello/providers/redhat/_repo_sets.haml +8 -21
  792. data/app/views/katello/providers/redhat/_repos.html.haml +13 -6
  793. data/app/views/katello/providers/redhat/show.html.haml +2 -10
  794. data/app/views/katello/puppet_modules/_show.html.haml +1 -1
  795. data/app/views/katello/sync_management/_children.html.haml +1 -1
  796. data/app/views/katello/sync_management/_controls.html.haml +5 -6
  797. data/app/views/katello/sync_management/_product.html.haml +2 -2
  798. data/app/views/katello/sync_management/_products.html.haml +5 -6
  799. data/app/views/katello/sync_management/_repo.html.haml +6 -5
  800. data/ca/redhat-uep.pem +124 -0
  801. data/config/initializers/inflections.rb +4 -4
  802. data/config/initializers/monkeys.rb +3 -0
  803. data/config/initializers/openstruct.rb +0 -2
  804. data/config/katello.yml +33 -0
  805. data/config/katello_defaults.yml +9 -142
  806. data/config/routes.rb +128 -444
  807. data/config/routes/api/rhsm.rb +60 -0
  808. data/config/routes/api/v2.rb +317 -324
  809. data/config/routes/mount_engine.rb +1 -1
  810. data/config/routes/overrides.rb +24 -0
  811. data/db/migrate/20131014135042_katello_tables.rb +2 -115
  812. data/db/migrate/20131014225132_add_users_fields.rb +0 -3
  813. data/db/migrate/20131016124255_add_foreign_keys_engine.rb +99 -0
  814. data/db/migrate/20131120225132_add_organization_fields.rb +1 -3
  815. data/db/migrate/20131216212502_add_quantity_to_katello_key_pools.rb +5 -0
  816. data/db/migrate/20131216212621_add_cp_id_to_katello_activation_keys.rb +8 -0
  817. data/db/migrate/20131218174203_drop_katello_key_pools_table.rb +9 -0
  818. data/db/migrate/20140110000001_update_environments_add_katello_id.rb +10 -0
  819. data/db/migrate/20140117160939_refactor_content_views.rb +125 -0
  820. data/db/migrate/20140206200439_create_content_view_puppet_modules.rb +17 -0
  821. data/db/migrate/20140212131812_create_content_view_package_filter_rules.rb +13 -0
  822. data/db/migrate/20140212143454_create_content_view_package_group_filter_rules.rb +10 -0
  823. data/db/migrate/20140212143642_create_content_view_erratum_filter_rules.rb +13 -0
  824. data/db/migrate/20140217145303_remove_changeset.rb +11 -0
  825. data/db/migrate/20140217160132_create_content_view_history.rb +25 -0
  826. data/db/migrate/20140222022712_remove_provider_discovery.rb +13 -0
  827. data/db/migrate/20140305101813_allow_null_for_repository_content_id.rb +5 -0
  828. data/db/migrate/20140306132108_create_content_view_puppet_environments.rb +18 -0
  829. data/db/migrate/20140310102051_repository_add_checksum_type.rb +9 -0
  830. data/db/migrate/20140318174203_drop_cdn_import_success_column.rb +9 -0
  831. data/db/migrate/20140325185413_create_content_view_foreign_keys.rb +67 -0
  832. data/db/migrate/20140404122011_drop_repositories_enabled_column.rb +9 -0
  833. data/db/migrate/20140411134235_update_content_view_description_type.rb +9 -0
  834. data/db/migrate/20140414214152_allow_null_content_view_to_activation_key.rb +9 -0
  835. data/db/migrate/20140418124032_add_next_version_to_katello_content_views.rb +16 -0
  836. data/db/migrate/20140422000001_update_products_add_organization.rb +22 -0
  837. data/db/migrate/20140423191446_add_anonymous_providers_to_orgs.rb +9 -0
  838. data/db/migrate/20140425155126_add_host_id_to_system.rb +13 -0
  839. data/db/migrate/20140429193743_add_release_version_to_activation_keys.rb +5 -0
  840. data/db/migrate/20140502164009_rename_system_groups_to_host_collections.rb +21 -0
  841. data/db/migrate/20140502174412_update_host_collections_foreign_keys.rb +29 -0
  842. data/db/migrate/20140514165842_create_capsule_lifecycle_environments.rb +13 -0
  843. data/db/migrate/20140531160506_package_filter_add_original_packages.rb +9 -0
  844. data/db/migrate/20140610083129_add_pulp_proxy_to_host.rb +12 -0
  845. data/db/migrate/20140610154745_content_view_puppet_environment_id.rb +44 -0
  846. data/db/migrate/20140610170142_add_uuid_to_content_view_package_group_filter_rule.rb +5 -0
  847. data/db/migrate/20140617100300_add_description_to_content_view_filter_rules.rb +9 -0
  848. data/db/migrate/20140623103442_drop_taxonomies_owner_auto_attach_all_systems_task_id_column.rb +9 -0
  849. data/db/migrate/20140624183938_add_foreign_keys_for_organizations.rb +34 -0
  850. data/db/migrate/20140624184401_remove_label_from_activation_key.rb +9 -0
  851. data/db/migrate/20140626055258_add_missing_foreign_keys.rb +19 -0
  852. data/db/migrate/20140626204657_add_unlimited_to_activation_keys.rb +25 -0
  853. data/db/migrate/20140626204902_add_unlimited_to_host_collection.rb +23 -0
  854. data/db/migrate/20140707203534_location_add_katello_default.rb +9 -0
  855. data/db/migrate/20140709150428_remove_deletion_task_id_from_taxonomies.rb +9 -0
  856. data/db/migrate/20140716211853_repo_rename_feed_to_url.rb +9 -0
  857. data/db/migrate/20140807175457_remove_hidden_column_from_user.rb +9 -0
  858. data/db/migrate/20140811141742_remove_delayed_jobs.rb +23 -0
  859. data/db/migrate/20140821084214_add_sync_plan_enabled_to_sync_plan.rb +9 -0
  860. data/db/migrate/20140928210618_add_description_to_content_view_versions.rb +5 -0
  861. data/db/migrate/20140930170628_add_errata.rb +87 -0
  862. data/db/migrate/20141001170628_add_system_repository.rb +20 -0
  863. data/db/migrate/20141003210742_add_docker_container_registry_url_to_providers.rb +11 -0
  864. data/db/migrate/20141015173220_add_docker_image_fields.rb +35 -0
  865. data/db/migrate/20141031150814_add_tag_repository_id_index.rb +10 -0
  866. data/db/migrate/20141112180709_add_auto_attach_to_activation_keys.rb +5 -0
  867. data/db/migrate/20141124182205_content_view_version_add_minor.rb +11 -0
  868. data/db/migrate/20141203123206_add_timestamps_to_repository_join_tables.rb +11 -0
  869. data/db/migrate/20141204203609_add_default_value_to_auto_attach.rb +9 -0
  870. data/db/migrate/20141209103005_disown_foreman_templates.rb +21 -0
  871. data/db/migrate/20141210173220_create_docker_tables.rb +33 -0
  872. data/db/migrate/20141215213720_track_version_components.rb +17 -0
  873. data/db/migrate/20141222151001_add_host_content_view_environment.rb +28 -0
  874. data/db/migrate/20150109012657_add_capsule_id_to_container.rb +13 -0
  875. data/db/migrate/20150114225023_add_upstream_name_to_repository.rb +17 -0
  876. data/db/migrate/20150119153452_update_promote_errata_email_description.rb +17 -0
  877. data/db/migrate/20150227213850_change_descriptions_to_text_fields.rb +6 -0
  878. data/db/migrate/20150423134004_add_content_host_id_to_smart_proxy.rb +21 -0
  879. data/db/seeds.rb +155 -44
  880. data/engines/bastion_katello/README.md +8 -0
  881. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/activation-key.factory.js +43 -0
  882. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/activation-keys.controller.js +51 -0
  883. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/activation-keys.module.js +136 -0
  884. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/activationKeyConsumed.filter.js +28 -0
  885. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-add-host-collections.controller.js +82 -0
  886. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-add-subscriptions.controller.js +86 -0
  887. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-associations.controller.js +49 -0
  888. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-details-info.controller.js +98 -0
  889. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-details.controller.js +97 -0
  890. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-host-collections.controller.js +82 -0
  891. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-product-details.controller.js +103 -0
  892. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-products.controller.js +59 -0
  893. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-subscriptions.controller.js +72 -0
  894. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-add-subscriptions.html +96 -0
  895. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-associations-content-hosts.html +47 -0
  896. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-details.html +115 -0
  897. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-host-collections-table.html +74 -0
  898. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-host-collections.html +20 -0
  899. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-info.html +128 -0
  900. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-products.html +49 -0
  901. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-subscriptions-list.html +85 -0
  902. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-subscriptions.html +45 -0
  903. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/new/new-activation-key.controller.js +73 -0
  904. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/new/views/activation-key-new.html +98 -0
  905. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/views/activation-keys-table-collapsed.html +19 -0
  906. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/views/activation-keys-table-full.html +24 -0
  907. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/views/activation-keys.html +19 -0
  908. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/bastion-katello-bootstrap.js +31 -0
  909. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/bastion_katello.js +80 -0
  910. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/capsules/capsule.factory.js +30 -0
  911. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/capsules/capsules.module.js +24 -0
  912. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-action-environment.controller.js +77 -0
  913. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-action-errata.controller.js +113 -0
  914. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-action-host-collections.controller.js +92 -0
  915. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-action-packages.controller.js +101 -0
  916. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-action-subscriptions.controller.js +104 -0
  917. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-action.controller.js +89 -0
  918. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/bulk-actions-environment.html +52 -0
  919. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/bulk-actions-errata.html +88 -0
  920. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/bulk-actions-host-collections.html +80 -0
  921. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/bulk-actions-packages.html +82 -0
  922. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/bulk-actions-subscriptions.html +40 -0
  923. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/bulk-actions.html +92 -0
  924. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/errata-content-hosts.html +28 -0
  925. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/errata-details.html +64 -0
  926. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-host-erratum.factory.js +38 -0
  927. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-host-events.controller.js +33 -0
  928. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-host-package.factory.js +35 -0
  929. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-host-register.controller.js +57 -0
  930. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-host-status.controller.js +30 -0
  931. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-host.factory.js +74 -0
  932. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-hosts-helper.service.js +118 -0
  933. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-hosts.controller.js +78 -0
  934. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-hosts.module.js +280 -0
  935. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-errata.controller.js +113 -0
  936. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-packages.controller.js +111 -0
  937. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-errata.html +98 -0
  938. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-packages.html +119 -0
  939. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/errata-details.html +63 -0
  940. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-add-host-collections.controller.js +80 -0
  941. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-add-subscriptions.controller.js +82 -0
  942. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-base-subscriptions.controller.js +65 -0
  943. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details-info.controller.js +222 -0
  944. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details.controller.js +95 -0
  945. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-host-collections.controller.js +80 -0
  946. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-product-details.controller.js +102 -0
  947. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-products.controller.js +59 -0
  948. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-subscriptions.controller.js +103 -0
  949. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-add-subscriptions.html +103 -0
  950. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-details.html +104 -0
  951. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-events.html +24 -0
  952. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-info.html +420 -0
  953. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-products.html +50 -0
  954. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-provisioning-info.html +62 -0
  955. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-subscriptions-list.html +95 -0
  956. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-subscriptions.html +109 -0
  957. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-tasks.html +4 -0
  958. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/host-collections-table.html +88 -0
  959. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/host-collections.html +20 -0
  960. data/engines/{bastion/app/assets/bastion/systems/details/views/partials/system-detail-object.html → bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/partials/content-host-detail-object.html} +0 -0
  961. data/engines/{bastion/app/assets/bastion/systems/details/views/partials/system-detail-value.html → bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/partials/content-host-detail-value.html} +0 -0
  962. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts-table-collapsed.html +25 -0
  963. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts-table-full.html +62 -0
  964. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts.html +25 -0
  965. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/register.html +37 -0
  966. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/content-view.factory.js +60 -0
  967. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/content-views.controller.js +47 -0
  968. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/content-views.module.js +29 -0
  969. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/content-views.routes.js +457 -0
  970. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-deletion.controller.js +64 -0
  971. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-version-deletion-activation-keys.controller.js +81 -0
  972. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-version-deletion-confirm.controller.js +74 -0
  973. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-version-deletion-content-hosts.controller.js +81 -0
  974. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-version-deletion-environments.controller.js +90 -0
  975. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-version-deletion.controller.js +172 -0
  976. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/views/content-view-deletion.html +63 -0
  977. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/views/version-deletion-activation-keys.html +97 -0
  978. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/views/version-deletion-breadcrumb.html +18 -0
  979. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/views/version-deletion-confirm.html +80 -0
  980. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/views/version-deletion-content-hosts.html +89 -0
  981. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/views/version-deletion-environments.html +75 -0
  982. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-available-docker-repositories.controller.js +52 -0
  983. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-available-puppet-modules.controller.js +22 -0
  984. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-available-repositories.controller.js +55 -0
  985. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-composite-available-content-views.controller.js +82 -0
  986. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-composite-content-views-list.controller.js +76 -0
  987. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-details-history.controller.js +55 -0
  988. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-details.controller.js +156 -0
  989. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-docker-repositories-list.controller.js +47 -0
  990. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-promotion.controller.js +97 -0
  991. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-publish.controller.js +55 -0
  992. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-repositories-list.controller.js +49 -0
  993. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-repositories.service.js +105 -0
  994. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-versions.controller.js +136 -0
  995. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/available-errata-filter.controller.js +110 -0
  996. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/available-package-group-filter.controller.js +68 -0
  997. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/date-type-errata-filter.controller.js +70 -0
  998. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/edit-filter.controller.js +48 -0
  999. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/errata-filter-list.controller.js +90 -0
  1000. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/errata-filter.controller.js +90 -0
  1001. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter-content-type.filter.js +34 -0
  1002. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter-details.controller.js +34 -0
  1003. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter-helper.service.js +41 -0
  1004. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter-repositories.controller.js +85 -0
  1005. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter-type.filter.js +34 -0
  1006. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter.factory.js +50 -0
  1007. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filters.controller.js +89 -0
  1008. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/new-filter.controller.js +92 -0
  1009. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/package-filter.controller.js +182 -0
  1010. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/package-group-filter.controller.js +29 -0
  1011. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/package-group-list-filter.controller.js +84 -0
  1012. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/rule.factory.js +34 -0
  1013. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/date-type-errata-filter.html +11 -0
  1014. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/date-type-errata.html +57 -0
  1015. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/edit-filter.html +18 -0
  1016. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/errata-filter-details.html +52 -0
  1017. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/errata-filter.html +53 -0
  1018. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/filter-details.html +48 -0
  1019. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/filter-repositories.html +128 -0
  1020. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/filters.html +80 -0
  1021. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/new-filter.html +64 -0
  1022. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/package-filter-details.html +182 -0
  1023. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/package-filter.html +37 -0
  1024. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/package-group-filter-details.html +45 -0
  1025. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/package-group-filter.html +46 -0
  1026. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/partials/filter-repositories-count.html +2 -0
  1027. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/content-view-puppet-module-names.controller.js +46 -0
  1028. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/content-view-puppet-module-versions.controller.js +78 -0
  1029. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/content-view-puppet-module.factory.js +34 -0
  1030. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/content-view-puppet-modules.controller.js +78 -0
  1031. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/views/content-view-puppet-module-names.html +57 -0
  1032. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/views/content-view-puppet-module-versions.html +65 -0
  1033. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/views/content-view-puppet-modules.html +62 -0
  1034. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-composite-available-content-views.html +83 -0
  1035. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-composite-content-views-list.html +79 -0
  1036. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-composite.html +24 -0
  1037. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-details-history.html +34 -0
  1038. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-details-tasks.html +6 -0
  1039. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-details.html +137 -0
  1040. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-docker-repositories.html +135 -0
  1041. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-info.html +34 -0
  1042. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-promotion.html +39 -0
  1043. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-publish.html +37 -0
  1044. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-repositories.html +139 -0
  1045. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-versions.html +97 -0
  1046. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/new/content-view-new.controller.js +64 -0
  1047. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/new/views/content-view-new.html +84 -0
  1048. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/content-view-version-content.controller.js +109 -0
  1049. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/content-view-version.controller.js +37 -0
  1050. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/content-view-version.factory.js +37 -0
  1051. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/content-view-versions.module.js +31 -0
  1052. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-components.html +25 -0
  1053. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-details.html +13 -0
  1054. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-docker.html +26 -0
  1055. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-errata.html +50 -0
  1056. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-package-groups.html +27 -0
  1057. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-packages.html +31 -0
  1058. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-puppet-modules.html +22 -0
  1059. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-yum.html +22 -0
  1060. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version.html +87 -0
  1061. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/views/content-views-table-collapsed.html +21 -0
  1062. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/views/content-views-table-full.html +52 -0
  1063. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/views/content-views.html +16 -0
  1064. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/custom-info/custom-info.factory.js +34 -0
  1065. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/custom-info/custom-info.module.js +24 -0
  1066. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-images/docker-image.factory.js +36 -0
  1067. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-images/docker-images.module.js +27 -0
  1068. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/docker-tags-details.controller.js +53 -0
  1069. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/views/docker-tags-details.html +71 -0
  1070. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/docker-tags.controller.js +47 -0
  1071. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/docker-tags.factory.js +34 -0
  1072. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/docker-tags.module.js +25 -0
  1073. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/docker-tags.routes.js +52 -0
  1074. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/views/docker-tags-table-collapsed.html +19 -0
  1075. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/views/docker-tags-table-full.html +25 -0
  1076. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/views/docker-tags.html +12 -0
  1077. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/content.service.js +95 -0
  1078. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/environment-content.controller.js +146 -0
  1079. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/environment.controller.js +78 -0
  1080. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-content-views.html +41 -0
  1081. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-details.html +26 -0
  1082. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-docker.html +36 -0
  1083. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-errata.html +61 -0
  1084. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-packages.html +38 -0
  1085. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-puppet-modules.html +35 -0
  1086. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-repositories.html +31 -0
  1087. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment.html +49 -0
  1088. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/environment.factory.js +37 -0
  1089. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/environments.controller.js +50 -0
  1090. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/environments.module.js +32 -0
  1091. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/environments.routes.js +97 -0
  1092. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/new-environment.controller.js +66 -0
  1093. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/views/environments.html +78 -0
  1094. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/views/new-environment.html +67 -0
  1095. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/apply-errata.controller.js +152 -0
  1096. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/errata-content-hosts.controller.js +77 -0
  1097. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/errata-details-repositories.controller.js +70 -0
  1098. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/errata-details.controller.js +36 -0
  1099. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/errata-details-content-hosts.html +88 -0
  1100. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/errata-details-info.html +60 -0
  1101. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/errata-details-repositories.html +90 -0
  1102. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/errata-details.html +50 -0
  1103. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/errata-counts.directive.js +33 -0
  1104. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/errata-severity.filter.js +50 -0
  1105. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/errata-type.filter.js +47 -0
  1106. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/errata.controller.js +121 -0
  1107. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/errata.module.js +25 -0
  1108. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/errata.routes.js +144 -0
  1109. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/erratum.factory.js +39 -0
  1110. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/apply-errata-confirm.html +119 -0
  1111. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/apply-errata-select-content-hosts.html +18 -0
  1112. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/apply-errata.html +32 -0
  1113. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata-counts.html +26 -0
  1114. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata-table-collapsed.html +20 -0
  1115. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata-table-full.html +46 -0
  1116. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata-task-details.html +9 -0
  1117. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata-tasks-list.html +5 -0
  1118. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata-tasks.html +12 -0
  1119. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata.html +47 -0
  1120. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/details/gpg-key-details-info.controller.js +55 -0
  1121. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/details/gpg-key-details.controller.js +62 -0
  1122. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/details/views/gpg-key-details.html +47 -0
  1123. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/details/views/gpg-key-info.html +42 -0
  1124. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/details/views/gpg-key-products.html +32 -0
  1125. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/details/views/gpg-key-repositories.html +37 -0
  1126. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/gpg-key.factory.js +36 -0
  1127. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/gpg-keys.controller.js +64 -0
  1128. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/gpg-keys.module.js +103 -0
  1129. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/new/new-gpg-key.controller.js +52 -0
  1130. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/new/views/gpg-key-new.html +73 -0
  1131. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/views/gpg-keys-table-collapsed.html +17 -0
  1132. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/views/gpg-keys-table-full.html +24 -0
  1133. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/views/gpg-keys.html +20 -0
  1134. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-add-content-hosts.controller.js +85 -0
  1135. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-content-hosts.controller.js +70 -0
  1136. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-details.controller.js +88 -0
  1137. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-actions.html +36 -0
  1138. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-add-content-hosts.html +86 -0
  1139. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-content-hosts-list.html +80 -0
  1140. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-content-hosts.html +23 -0
  1141. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-details.html +97 -0
  1142. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-info.html +63 -0
  1143. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/host-collection.factory.js +36 -0
  1144. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/host-collections.controller.js +55 -0
  1145. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/host-collections.module.js +113 -0
  1146. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/new/host-collection-form.controller.js +52 -0
  1147. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/new/new-host-collection.controller.js +32 -0
  1148. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/new/views/host-collection-new-form.html +45 -0
  1149. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/new/views/host-collection-new.html +22 -0
  1150. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/views/host-collections-table-collapsed.html +19 -0
  1151. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/views/host-collections-table-full.html +28 -0
  1152. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/views/host-collections.html +21 -0
  1153. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/katello-features.run.js +43 -0
  1154. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/organizations/check-current-organization.run.js +54 -0
  1155. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/organizations/organization-selector.controller.js +56 -0
  1156. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/organizations/organization.factory.js +69 -0
  1157. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/organizations/organizations.module.js +24 -0
  1158. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/organizations/organizations.routes.js +42 -0
  1159. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/organizations/views/organization-selector.html +34 -0
  1160. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/package-groups/package-group.factory.js +36 -0
  1161. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/package-groups/package-groups.module.js +27 -0
  1162. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/package.factory.js +40 -0
  1163. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/packages.module.js +23 -0
  1164. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/products-bulk-action-sync-plan.controller.js +62 -0
  1165. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/products-bulk-action-sync.controller.js +39 -0
  1166. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/products-bulk-action.controller.js +74 -0
  1167. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/views/bulk-actions-sync-plan.html +65 -0
  1168. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/views/bulk-actions-sync.html +38 -0
  1169. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/views/bulk-actions.html +67 -0
  1170. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/partials/sync-status.html +23 -0
  1171. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/product-details-info.controller.js +88 -0
  1172. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/product-details.controller.js +66 -0
  1173. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/product-repositories.controller.js +129 -0
  1174. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/views/product-details.html +80 -0
  1175. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/views/product-info.html +105 -0
  1176. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/views/product-repositories.html +160 -0
  1177. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/views/product-tasks.html +4 -0
  1178. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/discovery-form.controller.js +192 -0
  1179. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/discovery.controller.js +104 -0
  1180. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/views/discovery-base.html +16 -0
  1181. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/views/discovery-create.html +152 -0
  1182. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html +84 -0
  1183. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/new/new-product.controller.js +30 -0
  1184. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/new/product-form.controller.js +76 -0
  1185. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/new/views/product-new-form.html +56 -0
  1186. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/new/views/product-new.html +22 -0
  1187. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/product.factory.js +52 -0
  1188. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/products.controller.js +75 -0
  1189. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/products.module.js +254 -0
  1190. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/views/partials/product-table-sync-status.html +26 -0
  1191. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/views/products-table-collapsed.html +20 -0
  1192. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/views/products-table-full.html +34 -0
  1193. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/views/products.html +45 -0
  1194. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/puppet-module.factory.js +37 -0
  1195. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/puppet-modules.module.js +27 -0
  1196. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repositories/details/repository-details-info.controller.js +171 -0
  1197. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repositories/details/repository-details-manage-content.controller.js +104 -0
  1198. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repositories/details/views/repository-info.html +280 -0
  1199. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repositories/details/views/repository-manage-docker-images.html +74 -0
  1200. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repositories/details/views/repository-manage-packages.html +69 -0
  1201. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repositories/details/views/repository-manage-puppet-modules.html +79 -0
  1202. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repositories/new/new-repository.controller.js +80 -0
  1203. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repositories/new/views/repository-new.html +116 -0
  1204. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repositories/repositories.module.js +38 -0
  1205. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repositories/repository.factory.js +63 -0
  1206. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/subscription-associations-activation-keys.controller.js +41 -0
  1207. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/subscription-associations-content-hosts.controller.js +52 -0
  1208. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/subscription-details.controller.js +59 -0
  1209. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/subscription-product-details.controller.js +25 -0
  1210. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/subscription-products.controller.js +41 -0
  1211. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/views/subscription-associations-activation-keys.html +48 -0
  1212. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/views/subscription-associations-content-hosts.html +62 -0
  1213. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/views/subscription-details.html +55 -0
  1214. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/views/subscription-info.html +102 -0
  1215. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/views/subscription-products.html +54 -0
  1216. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/manifest-details.controller.js +47 -0
  1217. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/manifest-history.controller.js +31 -0
  1218. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/manifest-import.controller.js +230 -0
  1219. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/manifest.controller.js +29 -0
  1220. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/views/manifest-details.html +46 -0
  1221. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/views/manifest-import-history.html +17 -0
  1222. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/views/manifest-import.html +93 -0
  1223. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/views/manifest.html +47 -0
  1224. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/subscription-type.directive.js +29 -0
  1225. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/subscriptionAttachAmountFilter.filter.js +29 -0
  1226. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/subscriptionConsumed.filter.js +34 -0
  1227. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/subscriptions-helper.service.js +71 -0
  1228. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/subscriptions.controller.js +84 -0
  1229. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/subscriptions.factory.js +49 -0
  1230. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/subscriptions.module.js +135 -0
  1231. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/views/subscription-type.html +18 -0
  1232. data/engines/{bastion/app/assets/bastion → bastion_katello/app/assets/javascripts/bastion_katello}/subscriptions/views/subscriptions-delete-bulk.html +0 -0
  1233. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/views/subscriptions-table-collapsed.html +25 -0
  1234. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/views/subscriptions-table-full.html +34 -0
  1235. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/views/subscriptions.html +19 -0
  1236. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-add-products.controller.js +79 -0
  1237. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-details-info.controller.js +63 -0
  1238. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-details.controller.js +41 -0
  1239. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-products.controller.js +79 -0
  1240. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/views/sync-plan-details.html +53 -0
  1241. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/views/sync-plan-info.html +67 -0
  1242. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/views/sync-plan-products-table.html +78 -0
  1243. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/views/sync-plan-products.html +21 -0
  1244. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/new/new-sync-plan.controller.js +70 -0
  1245. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/new/views/new-sync-plan-form.html +55 -0
  1246. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/new/views/new-sync-plan.html +18 -0
  1247. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/sync-plan.factory.js +43 -0
  1248. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/sync-plans.controller.js +69 -0
  1249. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/sync-plans.module.js +116 -0
  1250. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/views/sync-plans-table-collapsed.html +21 -0
  1251. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/views/sync-plans-table-full.html +36 -0
  1252. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/views/sync-plans.html +16 -0
  1253. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/aggregate-task.factory.js +133 -0
  1254. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/task-details.controller.js +52 -0
  1255. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/task-input-compile.filter.js +37 -0
  1256. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/task-input-part.directive.js +47 -0
  1257. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/task-input-reduce.filter.js +39 -0
  1258. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/task-input-short.filter.js +31 -0
  1259. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/task.factory.js +264 -0
  1260. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/tasks-nutupane.factory.js +107 -0
  1261. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/tasks-table.directive.js +106 -0
  1262. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/tasks.module.js +61 -0
  1263. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/views/task-details-standalone.html +3 -0
  1264. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/views/task-details.html +70 -0
  1265. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/views/tasks-index.html +1 -0
  1266. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/views/tasks-table.html +34 -0
  1267. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/views/tasks.html +11 -0
  1268. data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/views/user-tasks-table.html +30 -0
  1269. data/engines/bastion_katello/app/assets/stylesheets/bastion_katello/bastion_katello.less +15 -0
  1270. data/engines/bastion_katello/app/assets/stylesheets/bastion_katello/environments.less +21 -0
  1271. data/engines/bastion_katello/app/assets/stylesheets/bastion_katello/errata.less +9 -0
  1272. data/engines/bastion_katello/app/assets/stylesheets/bastion_katello/gpg-keys.less +36 -0
  1273. data/engines/{bastion/app/assets/bastion/stylesheets/less → bastion_katello/app/assets/stylesheets/bastion_katello}/systems.less +0 -0
  1274. data/engines/bastion_katello/app/assets/stylesheets/bastion_katello/tasks.less +16 -0
  1275. data/engines/bastion_katello/bastion_katello.gemspec +20 -0
  1276. data/engines/bastion_katello/lib/bastion_katello.rb +5 -0
  1277. data/engines/bastion_katello/lib/bastion_katello/engine.rb +43 -0
  1278. data/engines/bastion_katello/lib/bastion_katello/version.rb +3 -0
  1279. data/lib/headpin/headpin.rb +0 -2
  1280. data/lib/katello.rb +14 -17
  1281. data/lib/katello/actions/actions.rb +1 -4
  1282. data/lib/katello/apipie/validators.rb +94 -0
  1283. data/lib/katello/app_config.rb +6 -6
  1284. data/lib/katello/configuration.rb +1 -2
  1285. data/lib/katello/configuration/loader.rb +1 -2
  1286. data/lib/katello/configuration/node.rb +1 -2
  1287. data/lib/katello/configuration/validator.rb +11 -12
  1288. data/lib/katello/engine.rb +123 -32
  1289. data/lib/katello/load_configuration.rb +54 -101
  1290. data/lib/katello/logging.rb +8 -8
  1291. data/lib/katello/middleware/log_request_uuid.rb +1 -1
  1292. data/lib/katello/middleware/silenced_logger.rb +35 -0
  1293. data/lib/katello/permissions.rb +3 -0
  1294. data/lib/katello/permissions/activation_key_permissions.rb +25 -0
  1295. data/lib/katello/permissions/capsule_content_permissions.rb +9 -0
  1296. data/lib/katello/permissions/content_host_permissions.rb +39 -0
  1297. data/lib/katello/permissions/content_view_permissions.rb +76 -0
  1298. data/lib/katello/permissions/dashboard_permissions.rb +6 -0
  1299. data/lib/katello/permissions/gpg_key_permissions.rb +25 -0
  1300. data/lib/katello/permissions/host_collections_permissions.rb +26 -0
  1301. data/lib/katello/permissions/lifecycle_environment_permissions.rb +30 -0
  1302. data/lib/katello/permissions/operatingsystems_permissions.rb +5 -0
  1303. data/lib/katello/permissions/organization_permissions.rb +22 -0
  1304. data/lib/katello/permissions/product_permissions.rb +69 -0
  1305. data/lib/katello/permissions/subscription_permissions.rb +34 -0
  1306. data/lib/katello/permissions/sync_plan_permissions.rb +25 -0
  1307. data/lib/katello/permissions/user_permissions.rb +13 -0
  1308. data/lib/katello/plugin.rb +87 -79
  1309. data/lib/katello/tasks/asset_compile.rake +82 -0
  1310. data/lib/katello/tasks/clean_backend_objects.rake +66 -0
  1311. data/lib/katello/tasks/delete_orphaned_content.rake +1 -1
  1312. data/lib/katello/tasks/jenkins.rake +10 -0
  1313. data/lib/katello/tasks/regenerate_repo_metadata.rake +1 -1
  1314. data/lib/katello/tasks/reindex.rake +15 -11
  1315. data/lib/katello/tasks/rubocop.rake +3 -2
  1316. data/lib/katello/tasks/setup.rake +12 -14
  1317. data/lib/katello/tasks/test.rake +36 -54
  1318. data/lib/katello/tasks/upgrades/2.1/import_errata.rake +45 -0
  1319. data/lib/katello/tasks/upgrades/2.2/update_gpg_key_urls.rake +20 -0
  1320. data/lib/katello/tasks/upgrades/2.2/update_metadata_expire.rake +18 -0
  1321. data/lib/katello/url_constrained_cookie_store.rb +1 -1
  1322. data/lib/katello/version.rb +1 -1
  1323. data/lib/monkeys/anemone.rb +33 -0
  1324. data/lib/monkeys/json_munging_patch.rb +25 -0
  1325. data/lib/monkeys/passenger_tee_input.rb +32 -0
  1326. data/lib/monkeys/string_to_bool.rb +2 -2
  1327. data/lib/monkeys/yard_svg_fix.rb +3 -4
  1328. data/lib/util/password.rb +1 -2
  1329. data/locale/README +3 -9
  1330. data/locale/bn/katello.po +5179 -2965
  1331. data/locale/cs/katello.po +3357 -2411
  1332. data/locale/de/katello.po +5257 -3012
  1333. data/locale/en/katello.po +1313 -1592
  1334. data/locale/es/katello.po +5187 -2958
  1335. data/locale/fr/katello.po +5190 -2961
  1336. data/locale/gu/katello.po +5174 -2960
  1337. data/locale/hi/katello.po +5207 -2993
  1338. data/locale/it/katello.po +5189 -2960
  1339. data/locale/ja/katello.po +5302 -3020
  1340. data/locale/katello.pot +1313 -1592
  1341. data/locale/kn/katello.po +5211 -2976
  1342. data/locale/ko/katello.po +5189 -2964
  1343. data/locale/mr/katello.po +5252 -3013
  1344. data/locale/or/katello.po +5260 -3021
  1345. data/locale/pa/katello.po +5201 -2987
  1346. data/locale/pt/katello.po +1738 -1728
  1347. data/locale/pt_BR/katello.po +5336 -3030
  1348. data/locale/ru/katello.po +5294 -3008
  1349. data/locale/ta/katello.po +5173 -2959
  1350. data/locale/te/katello.po +5240 -3001
  1351. data/locale/zanata.xml +3 -2
  1352. data/locale/zh_CN/katello.po +5218 -2993
  1353. data/locale/zh_TW/katello.po +5270 -3020
  1354. data/vendor/assets/javascripts/katello/chosen.jquery.js +1003 -0
  1355. data/vendor/assets/javascripts/katello/jquery.ba-bbq.js +1137 -0
  1356. data/vendor/assets/javascripts/katello/jquery.hoverIntent.js +106 -0
  1357. data/vendor/assets/javascripts/katello/jquery.periodicalupdater.js +175 -0
  1358. data/vendor/assets/javascripts/katello/jquery.tipsy.js +358 -0
  1359. data/vendor/assets/javascripts/katello/jquery.treeTable.js +226 -0
  1360. data/vendor/assets/javascripts/katello/jquery.trunk8.js +203 -0
  1361. data/vendor/assets/stylesheets/katello/jquery-ui-1.8.11.custom.css +1 -1
  1362. metadata +1082 -1297
  1363. data/app/assets/javascripts/katello/activation_keys/activation_key.js +0 -336
  1364. data/app/assets/javascripts/katello/activation_keys/activation_key_edit.js +0 -19
  1365. data/app/assets/javascripts/katello/activation_keys/activation_key_subscriptions.js +0 -18
  1366. data/app/assets/javascripts/katello/activation_keys/index.js +0 -17
  1367. data/app/assets/javascripts/katello/changesets/changeset.js +0 -47
  1368. data/app/assets/javascripts/katello/changesets/changeset_edit.js +0 -79
  1369. data/app/assets/javascripts/katello/changesets/index.js +0 -14
  1370. data/app/assets/javascripts/katello/content_view_definitions/content_view_definition.js +0 -844
  1371. data/app/assets/javascripts/katello/content_view_definitions/env_content_view_selector.js +0 -188
  1372. data/app/assets/javascripts/katello/content_view_definitions/index.js +0 -19
  1373. data/app/assets/javascripts/katello/content_view_definitions/product_repo_selector.js +0 -569
  1374. data/app/assets/javascripts/katello/content_view_definitions/repo_selector.js +0 -47
  1375. data/app/assets/javascripts/katello/distributors/distributor_edit.js +0 -16
  1376. data/app/assets/javascripts/katello/distributors/distributor_subscriptions.js +0 -41
  1377. data/app/assets/javascripts/katello/distributors/distributors.js +0 -332
  1378. data/app/assets/javascripts/katello/distributors/index.js +0 -23
  1379. data/app/assets/javascripts/katello/environments/environment_edit.js +0 -63
  1380. data/app/assets/javascripts/katello/organizations/default_info.js +0 -216
  1381. data/app/assets/javascripts/katello/organizations/index.js +0 -15
  1382. data/app/assets/javascripts/katello/organizations/organization.js +0 -68
  1383. data/app/assets/javascripts/katello/organizations/organization_edit.js +0 -46
  1384. data/app/assets/javascripts/katello/products/product_edit.js +0 -76
  1385. data/app/assets/javascripts/katello/promotions/index.js +0 -16
  1386. data/app/assets/javascripts/katello/promotions/promotion.js +0 -1244
  1387. data/app/assets/javascripts/katello/roles/index.js +0 -17
  1388. data/app/assets/javascripts/katello/roles/role.js +0 -16
  1389. data/app/assets/javascripts/katello/roles/role_edit.js +0 -46
  1390. data/app/assets/javascripts/katello/roles/role_sliding_tree.js +0 -1398
  1391. data/app/assets/javascripts/katello/subscriptions/headpin.sparkline.js +0 -6
  1392. data/app/assets/javascripts/katello/subscriptions/index.js +0 -17
  1393. data/app/assets/javascripts/katello/subscriptions/subscription.js +0 -126
  1394. data/app/assets/javascripts/katello/sync_plans/index.js +0 -15
  1395. data/app/assets/javascripts/katello/sync_plans/sync_plan.js +0 -32
  1396. data/app/assets/javascripts/katello/sync_plans/sync_plan_edit.js +0 -128
  1397. data/app/assets/javascripts/katello/sync_schedules/index.js +0 -15
  1398. data/app/assets/javascripts/katello/sync_schedules/sync_schedule.js +0 -28
  1399. data/app/assets/javascripts/katello/system_events/index.js +0 -15
  1400. data/app/assets/javascripts/katello/system_events/system_events.js +0 -181
  1401. data/app/assets/javascripts/katello/system_groups/index.js +0 -19
  1402. data/app/assets/javascripts/katello/system_groups/package_actions.js +0 -316
  1403. data/app/assets/javascripts/katello/system_groups/system_group_events.js +0 -23
  1404. data/app/assets/javascripts/katello/system_groups/system_groups.js +0 -445
  1405. data/app/assets/javascripts/katello/system_groups/system_groups_pane.js +0 -141
  1406. data/app/assets/javascripts/katello/system_packages/index.js +0 -16
  1407. data/app/assets/javascripts/katello/system_packages/packages_filtertable.js +0 -63
  1408. data/app/assets/javascripts/katello/system_packages/system_packages.js +0 -767
  1409. data/app/assets/javascripts/katello/systems/custom_info.js +0 -134
  1410. data/app/assets/javascripts/katello/systems/index.js +0 -28
  1411. data/app/assets/javascripts/katello/systems/packages.js +0 -34
  1412. data/app/assets/javascripts/katello/systems/system_edit.js +0 -67
  1413. data/app/assets/javascripts/katello/systems/system_errata.js +0 -313
  1414. data/app/assets/javascripts/katello/systems/system_products.js +0 -113
  1415. data/app/assets/javascripts/katello/systems/system_subscriptions.js +0 -71
  1416. data/app/assets/javascripts/katello/systems/systems.js +0 -793
  1417. data/app/assets/javascripts/katello/users/index.js +0 -16
  1418. data/app/assets/javascripts/katello/users/user.js +0 -102
  1419. data/app/assets/javascripts/katello/users/user_methods.js +0 -111
  1420. data/app/assets/javascripts/katello/widgets/filtertable/index.js +0 -15
  1421. data/app/assets/javascripts/katello/widgets/scroll_pane.js +0 -4
  1422. data/app/assets/javascripts/katello/widgets/treetable/index.js +0 -14
  1423. data/app/assets/stylesheets/katello/_grid.scss +0 -11
  1424. data/app/assets/stylesheets/katello/distributors.scss +0 -183
  1425. data/app/assets/stylesheets/katello/header.scss +0 -53
  1426. data/app/assets/stylesheets/katello/katello_experimental.scss +0 -90
  1427. data/app/assets/stylesheets/katello/loginpage.css.scss +0 -47
  1428. data/app/assets/stylesheets/katello/operations.scss +0 -166
  1429. data/app/assets/stylesheets/katello/orgs.scss +0 -60
  1430. data/app/assets/stylesheets/katello/subscriptions.scss +0 -30
  1431. data/app/assets/stylesheets/katello/systems.scss +0 -349
  1432. data/app/assets/stylesheets/katello/widgets/_env_select.scss +0 -123
  1433. data/app/assets/stylesheets/katello/widgets/_multiselect.scss +0 -40
  1434. data/app/assets/stylesheets/katello/widgets/_search.scss +0 -46
  1435. data/app/assets/stylesheets/katello/widgets/_slidingtree.scss +0 -347
  1436. data/app/assets/stylesheets/katello/widgets/path_selector.scss +0 -178
  1437. data/app/controllers/katello/activation_keys_controller.rb +0 -371
  1438. data/app/controllers/katello/api/v1/about_controller.rb +0 -43
  1439. data/app/controllers/katello/api/v1/activation_keys_controller.rb +0 -178
  1440. data/app/controllers/katello/api/v1/api_controller.rb +0 -161
  1441. data/app/controllers/katello/api/v1/candlepin_proxies_controller.rb +0 -43
  1442. data/app/controllers/katello/api/v1/changesets_content_controller.rb +0 -65
  1443. data/app/controllers/katello/api/v1/changesets_controller.rb +0 -118
  1444. data/app/controllers/katello/api/v1/content_uploads_controller.rb +0 -98
  1445. data/app/controllers/katello/api/v1/content_view_definitions_controller.rb +0 -251
  1446. data/app/controllers/katello/api/v1/content_views_controller.rb +0 -119
  1447. data/app/controllers/katello/api/v1/crls_controller.rb +0 -29
  1448. data/app/controllers/katello/api/v1/custom_info_controller.rb +0 -98
  1449. data/app/controllers/katello/api/v1/distributions_controller.rb +0 -54
  1450. data/app/controllers/katello/api/v1/distributors_controller.rb +0 -285
  1451. data/app/controllers/katello/api/v1/environments_controller.rb +0 -246
  1452. data/app/controllers/katello/api/v1/errata_controller.rb +0 -91
  1453. data/app/controllers/katello/api/v1/errors_controller.rb +0 -24
  1454. data/app/controllers/katello/api/v1/filter_rules_controller.rb +0 -94
  1455. data/app/controllers/katello/api/v1/filters_controller.rb +0 -152
  1456. data/app/controllers/katello/api/v1/gpg_keys_controller.rb +0 -107
  1457. data/app/controllers/katello/api/v1/organization_default_info_controller.rb +0 -123
  1458. data/app/controllers/katello/api/v1/organizations_controller.rb +0 -17
  1459. data/app/controllers/katello/api/v1/packages_controller.rb +0 -67
  1460. data/app/controllers/katello/api/v1/permissions_controller.rb +0 -112
  1461. data/app/controllers/katello/api/v1/ping_controller.rb +0 -47
  1462. data/app/controllers/katello/api/v1/products_controller.rb +0 -170
  1463. data/app/controllers/katello/api/v1/providers_controller.rb +0 -237
  1464. data/app/controllers/katello/api/v1/proxies_controller.rb +0 -103
  1465. data/app/controllers/katello/api/v1/puppet_modules_controller.rb +0 -72
  1466. data/app/controllers/katello/api/v1/repositories_controller.rb +0 -214
  1467. data/app/controllers/katello/api/v1/repository_sets_controller.rb +0 -77
  1468. data/app/controllers/katello/api/v1/role_ldap_groups_controller.rb +0 -59
  1469. data/app/controllers/katello/api/v1/roles_controller.rb +0 -112
  1470. data/app/controllers/katello/api/v1/root_controller.rb +0 -57
  1471. data/app/controllers/katello/api/v1/status_controller.rb +0 -32
  1472. data/app/controllers/katello/api/v1/subscriptions_controller.rb +0 -141
  1473. data/app/controllers/katello/api/v1/sync_controller.rb +0 -116
  1474. data/app/controllers/katello/api/v1/sync_plans_controller.rb +0 -120
  1475. data/app/controllers/katello/api/v1/system_group_errata_controller.rb +0 -93
  1476. data/app/controllers/katello/api/v1/system_group_packages_controller.rb +0 -125
  1477. data/app/controllers/katello/api/v1/system_groups_controller.rb +0 -290
  1478. data/app/controllers/katello/api/v1/system_packages_controller.rb +0 -134
  1479. data/app/controllers/katello/api/v1/systems_controller.rb +0 -606
  1480. data/app/controllers/katello/api/v1/tasks_controller.rb +0 -86
  1481. data/app/controllers/katello/api/v1/uebercerts_controller.rb +0 -31
  1482. data/app/controllers/katello/api/v1/users_controller.rb +0 -179
  1483. data/app/controllers/katello/api/v2/about_controller.rb +0 -19
  1484. data/app/controllers/katello/api/v2/changesets_content_controller.rb +0 -59
  1485. data/app/controllers/katello/api/v2/changesets_controller.rb +0 -50
  1486. data/app/controllers/katello/api/v2/content_view_definitions_controller.rb +0 -133
  1487. data/app/controllers/katello/api/v2/custom_info_controller.rb +0 -57
  1488. data/app/controllers/katello/api/v2/distributors_controller.rb +0 -19
  1489. data/app/controllers/katello/api/v2/filter_rules_controller.rb +0 -55
  1490. data/app/controllers/katello/api/v2/filters_controller.rb +0 -99
  1491. data/app/controllers/katello/api/v2/organization_default_info_controller.rb +0 -61
  1492. data/app/controllers/katello/api/v2/permissions_controller.rb +0 -62
  1493. data/app/controllers/katello/api/v2/providers_controller.rb +0 -276
  1494. data/app/controllers/katello/api/v2/role_ldap_groups_controller.rb +0 -32
  1495. data/app/controllers/katello/api/v2/roles_controller.rb +0 -19
  1496. data/app/controllers/katello/api/v2/system_group_errata_controller.rb +0 -19
  1497. data/app/controllers/katello/api/v2/system_group_packages_controller.rb +0 -19
  1498. data/app/controllers/katello/api/v2/system_groups_controller.rb +0 -201
  1499. data/app/controllers/katello/api/v2/tasks_controller.rb +0 -67
  1500. data/app/controllers/katello/application_info_controller.rb +0 -41
  1501. data/app/controllers/katello/auto_complete_search.rb +0 -48
  1502. data/app/controllers/katello/changesets_controller.rb +0 -323
  1503. data/app/controllers/katello/content_view_definitions_controller.rb +0 -318
  1504. data/app/controllers/katello/content_view_versions_controller.rb +0 -47
  1505. data/app/controllers/katello/environments_controller.rb +0 -196
  1506. data/app/controllers/katello/filter_rules_controller.rb +0 -248
  1507. data/app/controllers/katello/filters_controller.rb +0 -141
  1508. data/app/controllers/katello/gpg_keys_controller.rb +0 -41
  1509. data/app/controllers/katello/operations_controller.rb +0 -30
  1510. data/app/controllers/katello/promotions_controller.rb +0 -93
  1511. data/app/controllers/katello/roles_controller.rb +0 -287
  1512. data/app/controllers/katello/subscriptions_controller.rb +0 -327
  1513. data/app/controllers/katello/sync_plans_controller.rb +0 -159
  1514. data/app/controllers/katello/sync_schedules_controller.rb +0 -94
  1515. data/app/controllers/katello/system_errata_controller.rb +0 -109
  1516. data/app/controllers/katello/system_events_controller.rb +0 -110
  1517. data/app/controllers/katello/system_group_errata_controller.rb +0 -106
  1518. data/app/controllers/katello/system_group_events_controller.rb +0 -123
  1519. data/app/controllers/katello/system_group_packages_controller.rb +0 -215
  1520. data/app/controllers/katello/system_groups_controller.rb +0 -293
  1521. data/app/controllers/katello/system_packages_controller.rb +0 -201
  1522. data/app/controllers/katello/systems_controller.rb +0 -846
  1523. data/app/controllers/katello/user_sessions_controller.rb +0 -41
  1524. data/app/controllers/katello/users_controller.rb +0 -360
  1525. data/app/helpers/katello/application_info_helper.rb +0 -37
  1526. data/app/helpers/katello/branding_helper.rb +0 -40
  1527. data/app/helpers/katello/breadcrumb_helper.rb +0 -229
  1528. data/app/helpers/katello/content_view_definitions_helper.rb +0 -136
  1529. data/app/helpers/katello/errata_helper.rb +0 -33
  1530. data/app/helpers/katello/filter_rules_helper.rb +0 -89
  1531. data/app/helpers/katello/filters_helper.rb +0 -124
  1532. data/app/helpers/katello/menu.rb +0 -112
  1533. data/app/helpers/katello/promotions_helper.rb +0 -39
  1534. data/app/helpers/katello/roles_helper.rb +0 -49
  1535. data/app/helpers/katello/sync_schedules_helper.rb +0 -28
  1536. data/app/helpers/katello/system_errata_helper.rb +0 -28
  1537. data/app/helpers/katello/system_group_events_helper.rb +0 -19
  1538. data/app/helpers/katello/systems_helper.rb +0 -174
  1539. data/app/lib/katello/api/v1/error_handling.rb +0 -152
  1540. data/app/lib/katello/api/version1.rb +0 -9
  1541. data/app/lib/katello/authorization_rules.rb +0 -94
  1542. data/app/lib/katello/dashboard/promotions_widget.rb +0 -30
  1543. data/app/lib/katello/dashboard/system_groups_widget.rb +0 -30
  1544. data/app/lib/katello/glue/event.rb +0 -71
  1545. data/app/lib/katello/kt_locale.rb +0 -76
  1546. data/app/lib/katello/ldap.rb +0 -43
  1547. data/app/lib/katello/navigation.rb +0 -21
  1548. data/app/lib/katello/navigation/content_menu.rb +0 -316
  1549. data/app/lib/katello/navigation/organization_menu.rb +0 -72
  1550. data/app/lib/katello/navigation/system_menu.rb +0 -208
  1551. data/app/lib/katello/profiling.rb +0 -61
  1552. data/app/lib/katello/util/filter_rule_clause_generator.rb +0 -100
  1553. data/app/lib/katello/util/puppet_clause_generator.rb +0 -39
  1554. data/app/lib/katello/validators/changeset_distribution_validator.rb +0 -29
  1555. data/app/lib/katello/validators/changeset_erratum_validator.rb +0 -31
  1556. data/app/lib/katello/validators/changeset_package_validator.rb +0 -29
  1557. data/app/lib/katello/validators/erratum_rule_params_validator.rb +0 -65
  1558. data/app/lib/katello/validators/katello_description_format_validator.rb +0 -24
  1559. data/app/lib/katello/validators/ldap_group_validator.rb +0 -25
  1560. data/app/lib/katello/validators/ldap_username_validator.rb +0 -31
  1561. data/app/lib/katello/validators/lock_validator.rb +0 -25
  1562. data/app/lib/katello/validators/own_role_presence_validator.rb +0 -25
  1563. data/app/lib/katello/validators/package_group_rule_params_validator.rb +0 -34
  1564. data/app/lib/katello/validators/permission_validator.rb +0 -43
  1565. data/app/lib/katello/validators/rolename_validator.rb +0 -27
  1566. data/app/lib/katello/validators/rule_params_validator.rb +0 -34
  1567. data/app/lib/katello/validators/rule_version_validator.rb +0 -30
  1568. data/app/lib/katello/validators/serialized_params_validator.rb +0 -27
  1569. data/app/lib/katello/validators/username_validator.rb +0 -23
  1570. data/app/mailers/katello/user_mailer.rb +0 -31
  1571. data/app/models/katello/async_operation.rb +0 -98
  1572. data/app/models/katello/async_orchestration.rb +0 -53
  1573. data/app/models/katello/authorization/content_view_definition.rb +0 -103
  1574. data/app/models/katello/authorization/enforcement.rb +0 -204
  1575. data/app/models/katello/authorization/environment.rb +0 -234
  1576. data/app/models/katello/authorization/provider.rb +0 -101
  1577. data/app/models/katello/authorization/role.rb +0 -63
  1578. data/app/models/katello/authorization/system_group.rb +0 -124
  1579. data/app/models/katello/authorization/user.rb +0 -80
  1580. data/app/models/katello/changeset.rb +0 -228
  1581. data/app/models/katello/changeset_content_view.rb +0 -8
  1582. data/app/models/katello/changeset_user.rb +0 -21
  1583. data/app/models/katello/component_content_view.rb +0 -21
  1584. data/app/models/katello/content_view_definition.rb +0 -328
  1585. data/app/models/katello/content_view_definition_archive.rb +0 -21
  1586. data/app/models/katello/content_view_definition_base.rb +0 -147
  1587. data/app/models/katello/content_view_definition_product.rb +0 -21
  1588. data/app/models/katello/content_view_definition_repository.rb +0 -20
  1589. data/app/models/katello/content_view_version_environment.rb +0 -29
  1590. data/app/models/katello/deletion_changeset.rb +0 -81
  1591. data/app/models/katello/errata.rb +0 -22
  1592. data/app/models/katello/erratum_rule.rb +0 -107
  1593. data/app/models/katello/ext/permission_tag_cleanup.rb +0 -47
  1594. data/app/models/katello/filter.rb +0 -102
  1595. data/app/models/katello/filter_rule.rb +0 -87
  1596. data/app/models/katello/glue/elastic_search/changeset.rb +0 -38
  1597. data/app/models/katello/glue/elastic_search/content_view_definition.rb +0 -33
  1598. data/app/models/katello/glue/elastic_search/environment.rb +0 -35
  1599. data/app/models/katello/glue/elastic_search/errata.rb +0 -219
  1600. data/app/models/katello/glue/elastic_search/gpg_key.rb +0 -34
  1601. data/app/models/katello/glue/elastic_search/organization.rb +0 -35
  1602. data/app/models/katello/glue/elastic_search/permission.rb +0 -28
  1603. data/app/models/katello/glue/elastic_search/role.rb +0 -38
  1604. data/app/models/katello/glue/elastic_search/sync_plan.rb +0 -33
  1605. data/app/models/katello/glue/elastic_search/system_group.rb +0 -44
  1606. data/app/models/katello/glue/elastic_search/user.rb +0 -35
  1607. data/app/models/katello/glue/pulp/errata.rb +0 -156
  1608. data/app/models/katello/key_pool.rb +0 -21
  1609. data/app/models/katello/key_system_group.rb +0 -21
  1610. data/app/models/katello/ldap_group_role.rb +0 -21
  1611. data/app/models/katello/organization_destroyer.rb +0 -63
  1612. data/app/models/katello/package_group_rule.rb +0 -32
  1613. data/app/models/katello/package_rule.rb +0 -53
  1614. data/app/models/katello/permission.rb +0 -178
  1615. data/app/models/katello/permission_tag.rb +0 -23
  1616. data/app/models/katello/promotion_changeset.rb +0 -121
  1617. data/app/models/katello/puppet_module_rule.rb +0 -71
  1618. data/app/models/katello/resource_type.rb +0 -132
  1619. data/app/models/katello/role.rb +0 -187
  1620. data/app/models/katello/roles_permissions/default_system_registration_permission.rb +0 -48
  1621. data/app/models/katello/roles_permissions/user_own_role.rb +0 -45
  1622. data/app/models/katello/roles_user.rb +0 -20
  1623. data/app/models/katello/system_group.rb +0 -197
  1624. data/app/models/katello/system_system_group.rb +0 -33
  1625. data/app/models/katello/tag.rb +0 -42
  1626. data/app/models/katello/user_own_role.rb +0 -30
  1627. data/app/models/katello/verb.rb +0 -51
  1628. data/app/models/katello/virtual_tag.rb +0 -27
  1629. data/app/views/katello/activation_keys/_activation_key.html.haml +0 -16
  1630. data/app/views/katello/activation_keys/_applied_subscriptions.html.haml +0 -38
  1631. data/app/views/katello/activation_keys/_applied_subscriptions_update.js.haml +0 -1
  1632. data/app/views/katello/activation_keys/_available_subscriptions.html.haml +0 -29
  1633. data/app/views/katello/activation_keys/_available_subscriptions_update.js.haml +0 -1
  1634. data/app/views/katello/activation_keys/_edit.html.haml +0 -83
  1635. data/app/views/katello/activation_keys/_list_activation_keys.html.haml +0 -5
  1636. data/app/views/katello/activation_keys/_new.html.haml +0 -38
  1637. data/app/views/katello/activation_keys/_subscriptions.html.haml +0 -52
  1638. data/app/views/katello/activation_keys/_system.html.haml +0 -5
  1639. data/app/views/katello/activation_keys/_system_group_items.html.haml +0 -7
  1640. data/app/views/katello/activation_keys/_system_groups.html.haml +0 -34
  1641. data/app/views/katello/activation_keys/_systems.html.haml +0 -27
  1642. data/app/views/katello/activation_keys/index.html.haml +0 -16
  1643. data/app/views/katello/api/v2/changesets/dependencies.rabl +0 -1
  1644. data/app/views/katello/api/v2/changesets/show.json.rabl +0 -41
  1645. data/app/views/katello/api/v2/changesets_content/add_product.json.rabl +0 -3
  1646. data/app/views/katello/api/v2/changesets_content/add_repo.json.rabl +0 -3
  1647. data/app/views/katello/api/v2/changesets_content/remove_product.json.rabl +0 -3
  1648. data/app/views/katello/api/v2/changesets_content/remove_repo.json.rabl +0 -3
  1649. data/app/views/katello/api/v2/changesets_content/show.json.rabl +0 -3
  1650. data/app/views/katello/api/v2/common/_readonly.json.rabl +0 -3
  1651. data/app/views/katello/api/v2/content_view_definitions/clone.json.rabl +0 -3
  1652. data/app/views/katello/api/v2/content_view_definitions/content_views.json.rabl +0 -3
  1653. data/app/views/katello/api/v2/content_view_definitions/list_all_products.json.rabl +0 -3
  1654. data/app/views/katello/api/v2/content_view_definitions/list_products.json.rabl +0 -3
  1655. data/app/views/katello/api/v2/content_view_definitions/list_repositories.json.rabl +0 -3
  1656. data/app/views/katello/api/v2/content_view_definitions/show.json.rabl +0 -18
  1657. data/app/views/katello/api/v2/content_view_definitions/update_content_views.json.rabl +0 -3
  1658. data/app/views/katello/api/v2/content_view_definitions/update_products.json.rabl +0 -3
  1659. data/app/views/katello/api/v2/content_view_definitions/update_repositories.json.rabl +0 -3
  1660. data/app/views/katello/api/v2/filter_rules/show.json.rabl +0 -10
  1661. data/app/views/katello/api/v2/filters/list_products.json.rabl +0 -3
  1662. data/app/views/katello/api/v2/filters/list_repositories.json.rabl +0 -3
  1663. data/app/views/katello/api/v2/filters/show.json.rabl +0 -24
  1664. data/app/views/katello/api/v2/filters/update_products.json.rabl +0 -3
  1665. data/app/views/katello/api/v2/filters/update_repositories.json.rabl +0 -3
  1666. data/app/views/katello/api/v2/permissions/show.json.rabl +0 -13
  1667. data/app/views/katello/api/v2/role_ldap_groups/show.json.rabl +0 -4
  1668. data/app/views/katello/api/v2/roles/available_verbs.json.rabl +0 -3
  1669. data/app/views/katello/api/v2/roles/show.json.rabl +0 -4
  1670. data/app/views/katello/api/v2/system_group_errata/index.json.rabl +0 -3
  1671. data/app/views/katello/api/v2/system_groups/_system_group.json.rabl +0 -16
  1672. data/app/views/katello/api/v2/system_groups/copy.json.rabl +0 -3
  1673. data/app/views/katello/api/v2/system_groups/create.json.rabl +0 -3
  1674. data/app/views/katello/api/v2/system_groups/delta_systems.rabl +0 -4
  1675. data/app/views/katello/api/v2/system_groups/history.json.rabl +0 -3
  1676. data/app/views/katello/api/v2/system_groups/show.json.rabl +0 -3
  1677. data/app/views/katello/api/v2/system_groups/systems.json.rabl +0 -14
  1678. data/app/views/katello/api/v2/system_groups/update.json.rabl +0 -3
  1679. data/app/views/katello/api/v2/systems/available_system_groups.json.rabl +0 -5
  1680. data/app/views/katello/api/v2/systems/tasks.json.rabl +0 -7
  1681. data/app/views/katello/api/v2/users/list_roles.json.rabl +0 -3
  1682. data/app/views/katello/application_info/about.html.haml +0 -58
  1683. data/app/views/katello/changesets/_content_type.html.haml +0 -13
  1684. data/app/views/katello/changesets/_dependency_list.html.haml +0 -3
  1685. data/app/views/katello/changesets/_edit.html.haml +0 -54
  1686. data/app/views/katello/changesets/_list.html.haml +0 -3
  1687. data/app/views/katello/changesets/_name.html.haml +0 -7
  1688. data/app/views/katello/changesets/_new.html.haml +0 -35
  1689. data/app/views/katello/changesets/_warning.html.haml +0 -23
  1690. data/app/views/katello/changesets/index.html.haml +0 -9
  1691. data/app/views/katello/content_view_definitions/_composite_definition_content.html.haml +0 -23
  1692. data/app/views/katello/content_view_definitions/_edit.html.haml +0 -24
  1693. data/app/views/katello/content_view_definitions/_new.html.haml +0 -37
  1694. data/app/views/katello/content_view_definitions/_publish.html.haml +0 -20
  1695. data/app/views/katello/content_view_definitions/_single_definition_content.html.haml +0 -21
  1696. data/app/views/katello/content_view_definitions/_tupane_header.html.haml +0 -22
  1697. data/app/views/katello/content_view_definitions/_view_definitions.html.haml +0 -31
  1698. data/app/views/katello/content_view_definitions/filters/_edit.html.haml +0 -46
  1699. data/app/views/katello/content_view_definitions/filters/_index.html.haml +0 -38
  1700. data/app/views/katello/content_view_definitions/filters/_list_rules.html.haml +0 -35
  1701. data/app/views/katello/content_view_definitions/filters/_new.html.haml +0 -15
  1702. data/app/views/katello/content_view_definitions/filters/rules/_edit.html.haml +0 -40
  1703. data/app/views/katello/content_view_definitions/filters/rules/_edit_errata.html.haml +0 -27
  1704. data/app/views/katello/content_view_definitions/filters/rules/_edit_errata_parameters.html.haml +0 -24
  1705. data/app/views/katello/content_view_definitions/filters/rules/_errata_item.html.haml +0 -7
  1706. data/app/views/katello/content_view_definitions/filters/rules/_inclusion.html.haml +0 -20
  1707. data/app/views/katello/content_view_definitions/filters/rules/_new.html.haml +0 -26
  1708. data/app/views/katello/content_view_definitions/filters/rules/_package_group_item.html.haml +0 -7
  1709. data/app/views/katello/content_view_definitions/filters/rules/_package_item.html.haml +0 -11
  1710. data/app/views/katello/content_view_definitions/filters/rules/_parameter_list.html.haml +0 -37
  1711. data/app/views/katello/content_view_definitions/filters/rules/_puppet_module_item.html.haml +0 -20
  1712. data/app/views/katello/content_view_definitions/filters/rules/_version_selector.html.haml +0 -32
  1713. data/app/views/katello/content_view_definitions/index.html.haml +0 -12
  1714. data/app/views/katello/content_view_definitions/views/_index.html.haml +0 -28
  1715. data/app/views/katello/content_view_definitions/views/_version.html.haml +0 -21
  1716. data/app/views/katello/content_view_definitions/views/_view.html.haml +0 -19
  1717. data/app/views/katello/content_view_versions/_content.html.haml +0 -39
  1718. data/app/views/katello/content_view_versions/_show.html.haml +0 -27
  1719. data/app/views/katello/dashboard/_promotions.haml +0 -22
  1720. data/app/views/katello/dashboard/_system_group_item.html.haml +0 -18
  1721. data/app/views/katello/dashboard/_system_groups.html.haml +0 -31
  1722. data/app/views/katello/environments/_edit.html.haml +0 -40
  1723. data/app/views/katello/environments/_new.html.haml +0 -26
  1724. data/app/views/katello/environments/_products.html.haml +0 -4
  1725. data/app/views/katello/errata/_packages.html.haml +0 -30
  1726. data/app/views/katello/errata/_show.html.haml +0 -85
  1727. data/app/views/katello/operations/index.html.haml +0 -2
  1728. data/app/views/katello/organizations/_default_info.html.haml +0 -43
  1729. data/app/views/katello/organizations/_download_debug_certificate.html.haml +0 -14
  1730. data/app/views/katello/organizations/_edit.html.haml +0 -87
  1731. data/app/views/katello/organizations/_edit_override.html.erb +0 -20
  1732. data/app/views/katello/organizations/_environments.html.haml +0 -2
  1733. data/app/views/katello/organizations/_events.html.haml +0 -29
  1734. data/app/views/katello/organizations/_footer.html.haml +0 -15
  1735. data/app/views/katello/organizations/_new.html.haml +0 -39
  1736. data/app/views/katello/organizations/_post_delete.js.haml +0 -3
  1737. data/app/views/katello/organizations/_step_1_override.html.erb +0 -6
  1738. data/app/views/katello/organizations/index.html.haml +0 -16
  1739. data/app/views/katello/products/_edit.html.haml +0 -38
  1740. data/app/views/katello/products/_new.html.haml +0 -27
  1741. data/app/views/katello/promotions/_content_views.html.haml +0 -28
  1742. data/app/views/katello/promotions/_detail.html.haml +0 -9
  1743. data/app/views/katello/promotions/show.html.haml +0 -204
  1744. data/app/views/katello/providers/_edit.html.haml +0 -32
  1745. data/app/views/katello/providers/_form.html.haml +0 -8
  1746. data/app/views/katello/providers/_new.html.haml +0 -11
  1747. data/app/views/katello/providers/_new_discovered_repos.html.haml +0 -81
  1748. data/app/views/katello/providers/_products_repos.html.haml +0 -50
  1749. data/app/views/katello/providers/_remove_item.html.haml +0 -16
  1750. data/app/views/katello/providers/_repo_discovery.html.haml +0 -57
  1751. data/app/views/katello/providers/redhat/_children.html.haml +0 -22
  1752. data/app/views/katello/repositories/_edit.html.haml +0 -64
  1753. data/app/views/katello/repositories/_new.html.haml +0 -60
  1754. data/app/views/katello/roles/_closed_permission.html.haml +0 -22
  1755. data/app/views/katello/roles/_edit.html.haml +0 -117
  1756. data/app/views/katello/roles/_list_role.html.haml +0 -6
  1757. data/app/views/katello/roles/_list_roles.html.haml +0 -1
  1758. data/app/views/katello/roles/_new.html.haml +0 -12
  1759. data/app/views/katello/roles/_permission.html.haml +0 -47
  1760. data/app/views/katello/roles/_permissions.html.haml +0 -6
  1761. data/app/views/katello/roles/_self_role_edit.html.haml +0 -37
  1762. data/app/views/katello/roles/index.html.haml +0 -55
  1763. data/app/views/katello/subscriptions/_consumers.html.haml +0 -53
  1764. data/app/views/katello/subscriptions/_edit.html.haml +0 -119
  1765. data/app/views/katello/subscriptions/_edit_manifest.html.haml +0 -59
  1766. data/app/views/katello/subscriptions/_history.html.haml +0 -32
  1767. data/app/views/katello/subscriptions/_history_items.html.haml +0 -33
  1768. data/app/views/katello/subscriptions/_list_subscription.html.haml +0 -3
  1769. data/app/views/katello/subscriptions/_list_subscription_show.html.haml +0 -21
  1770. data/app/views/katello/subscriptions/_list_subscriptions.html.haml +0 -1
  1771. data/app/views/katello/subscriptions/_new.html.haml +0 -134
  1772. data/app/views/katello/subscriptions/_products.html.haml +0 -52
  1773. data/app/views/katello/subscriptions/_subscriptions_tupane_header_nav.html.haml +0 -5
  1774. data/app/views/katello/subscriptions/_subscriptions_tupane_header_new_nav.html.haml +0 -2
  1775. data/app/views/katello/subscriptions/index.html.haml +0 -4
  1776. data/app/views/katello/subscriptions/index_nutupane.html.haml +0 -15
  1777. data/app/views/katello/sync_plans/_edit.html.haml +0 -32
  1778. data/app/views/katello/sync_plans/_form.html.haml +0 -14
  1779. data/app/views/katello/sync_plans/_new.html.haml +0 -9
  1780. data/app/views/katello/sync_plans/index.html.haml +0 -5
  1781. data/app/views/katello/sync_schedules/index.html.haml +0 -15
  1782. data/app/views/katello/system_events/_details.html.haml +0 -34
  1783. data/app/views/katello/system_events/_event_items.html.haml +0 -27
  1784. data/app/views/katello/system_events/_events.html.haml +0 -36
  1785. data/app/views/katello/system_events/_more_events.html.haml +0 -3
  1786. data/app/views/katello/system_groups/_edit.html.haml +0 -52
  1787. data/app/views/katello/system_groups/_edit_systems.html.haml +0 -32
  1788. data/app/views/katello/system_groups/_list_group.html.haml +0 -4
  1789. data/app/views/katello/system_groups/_list_groups.html.haml +0 -1
  1790. data/app/views/katello/system_groups/_new.html.haml +0 -50
  1791. data/app/views/katello/system_groups/_system_item.html.haml +0 -16
  1792. data/app/views/katello/system_groups/_systems.html.haml +0 -67
  1793. data/app/views/katello/system_groups/_tupane_header.html.haml +0 -15
  1794. data/app/views/katello/system_groups/errata/_index.html.haml +0 -72
  1795. data/app/views/katello/system_groups/events/_index.html.haml +0 -33
  1796. data/app/views/katello/system_groups/events/_items.html.haml +0 -29
  1797. data/app/views/katello/system_groups/events/_more_items.html.haml +0 -3
  1798. data/app/views/katello/system_groups/events/_show.html.haml +0 -29
  1799. data/app/views/katello/system_groups/events/_system_items.html.haml +0 -27
  1800. data/app/views/katello/system_groups/events/_systems.html.haml +0 -15
  1801. data/app/views/katello/system_groups/index.html.haml +0 -24
  1802. data/app/views/katello/system_groups/packages/_index.html.haml +0 -70
  1803. data/app/views/katello/system_groups/packages/_items.html.haml +0 -30
  1804. data/app/views/katello/system_groups/packages/_status.html.haml +0 -5
  1805. data/app/views/katello/system_packages/_package_items.html.haml +0 -43
  1806. data/app/views/katello/system_packages/_packages.html.haml +0 -132
  1807. data/app/views/katello/systems/_actions.html.haml +0 -96
  1808. data/app/views/katello/systems/_edit.html.haml +0 -229
  1809. data/app/views/katello/systems/_edit_custom_info.html.haml +0 -10
  1810. data/app/views/katello/systems/_facts.html.haml +0 -33
  1811. data/app/views/katello/systems/_hypervisor.html.haml +0 -7
  1812. data/app/views/katello/systems/_list_system.html.haml +0 -2
  1813. data/app/views/katello/systems/_list_system_show.html.haml +0 -25
  1814. data/app/views/katello/systems/_list_systems.html.haml +0 -1
  1815. data/app/views/katello/systems/_more_products.html.haml +0 -9
  1816. data/app/views/katello/systems/_new.html.haml +0 -20
  1817. data/app/views/katello/systems/_products.html.haml +0 -23
  1818. data/app/views/katello/systems/_subs.html.haml +0 -144
  1819. data/app/views/katello/systems/_subs_update.js.haml +0 -1
  1820. data/app/views/katello/systems/_subscription_details.html.haml +0 -23
  1821. data/app/views/katello/systems/_subscriptions.html.haml +0 -28
  1822. data/app/views/katello/systems/_system_group_items.html.haml +0 -7
  1823. data/app/views/katello/systems/_system_groups.html.haml +0 -26
  1824. data/app/views/katello/systems/_system_tupane_header_nav.html.haml +0 -10
  1825. data/app/views/katello/systems/errata/_index.html.haml +0 -62
  1826. data/app/views/katello/systems/errata/_items.html.haml +0 -21
  1827. data/app/views/katello/systems/index.html.haml +0 -47
  1828. data/app/views/katello/systems/new_nutupane.html.haml +0 -52
  1829. data/app/views/katello/systems/show_nutupane.html.haml +0 -199
  1830. data/app/views/katello/users/_edit.html.haml +0 -14
  1831. data/app/views/katello/users/_edit_environment.html.haml +0 -46
  1832. data/app/views/katello/users/_edit_form.html.haml +0 -70
  1833. data/app/views/katello/users/index.html.haml +0 -8
  1834. data/app/views/katello/users/show.html.haml +0 -3
  1835. data/config/boot.rb +0 -18
  1836. data/config/candlepin-ca.crt +0 -15
  1837. data/config/database.yml +0 -1
  1838. data/config/initializers/apipie.rb +0 -144
  1839. data/config/initializers/backtrace_silencers.rb +0 -7
  1840. data/config/initializers/db_setup_check.rb +0 -4
  1841. data/config/initializers/delayed_job.rb +0 -16
  1842. data/config/initializers/quiet_paths.rb +0 -19
  1843. data/config/initializers/session_store.rb +0 -6
  1844. data/config/initializers/sig_ttin_trap.rb +0 -17
  1845. data/config/initializers/simple_navigation.rb +0 -1
  1846. data/config/navigation.rb +0 -0
  1847. data/config/routes/api/v1.rb +0 -375
  1848. data/db/products.json +0 -118
  1849. data/engines/bastion/Bastion.gemspec +0 -21
  1850. data/engines/bastion/README.md +0 -297
  1851. data/engines/bastion/app/assets/bastion/bastion.js +0 -95
  1852. data/engines/bastion/app/assets/bastion/bastion.module.js +0 -141
  1853. data/engines/bastion/app/assets/bastion/content-views/content-view.factory.js +0 -38
  1854. data/engines/bastion/app/assets/bastion/content-views/content-views.module.js +0 -25
  1855. data/engines/bastion/app/assets/bastion/environments/environment.factory.js +0 -38
  1856. data/engines/bastion/app/assets/bastion/environments/environments.controller.js +0 -58
  1857. data/engines/bastion/app/assets/bastion/environments/environments.module.js +0 -44
  1858. data/engines/bastion/app/assets/bastion/environments/path.controller.js +0 -149
  1859. data/engines/bastion/app/assets/bastion/environments/views/environments.html +0 -165
  1860. data/engines/bastion/app/assets/bastion/errata/errata.module.js +0 -23
  1861. data/engines/bastion/app/assets/bastion/errata/erratum.factory.js +0 -31
  1862. data/engines/bastion/app/assets/bastion/gpg-keys/details/gpg-key-details-info.controller.js +0 -52
  1863. data/engines/bastion/app/assets/bastion/gpg-keys/details/gpg-key-details.controller.js +0 -62
  1864. data/engines/bastion/app/assets/bastion/gpg-keys/details/views/gpg-key-details.html +0 -48
  1865. data/engines/bastion/app/assets/bastion/gpg-keys/details/views/gpg-key-info.html +0 -39
  1866. data/engines/bastion/app/assets/bastion/gpg-keys/details/views/gpg-key-products.html +0 -29
  1867. data/engines/bastion/app/assets/bastion/gpg-keys/details/views/gpg-key-repositories.html +0 -33
  1868. data/engines/bastion/app/assets/bastion/gpg-keys/gpg-key.factory.js +0 -36
  1869. data/engines/bastion/app/assets/bastion/gpg-keys/gpg-keys.controller.js +0 -64
  1870. data/engines/bastion/app/assets/bastion/gpg-keys/gpg-keys.module.js +0 -98
  1871. data/engines/bastion/app/assets/bastion/gpg-keys/new/new-gpg-key.controller.js +0 -51
  1872. data/engines/bastion/app/assets/bastion/gpg-keys/new/views/gpg-key-new.html +0 -72
  1873. data/engines/bastion/app/assets/bastion/gpg-keys/views/gpg-keys-table-collapsed.html +0 -15
  1874. data/engines/bastion/app/assets/bastion/gpg-keys/views/gpg-keys-table-full.html +0 -21
  1875. data/engines/bastion/app/assets/bastion/gpg-keys/views/gpg-keys.html +0 -14
  1876. data/engines/bastion/app/assets/bastion/i18n/i18n.module.js +0 -24
  1877. data/engines/bastion/app/assets/bastion/i18n/katello.pot +0 -968
  1878. data/engines/bastion/app/assets/bastion/i18n/translations.js +0 -3
  1879. data/engines/bastion/app/assets/bastion/images/favicon.png +0 -0
  1880. data/engines/bastion/app/assets/bastion/incubator/alch-alert.directive.js +0 -67
  1881. data/engines/bastion/app/assets/bastion/incubator/alch-container-scroll.directive.js +0 -43
  1882. data/engines/bastion/app/assets/bastion/incubator/alch-dropdown.directive.js +0 -28
  1883. data/engines/bastion/app/assets/bastion/incubator/alch-edit.directive.js +0 -348
  1884. data/engines/bastion/app/assets/bastion/incubator/alch-flyout.directive.js +0 -19
  1885. data/engines/bastion/app/assets/bastion/incubator/alch-form-buttons.directive.js +0 -56
  1886. data/engines/bastion/app/assets/bastion/incubator/alch-form-group.directive.js +0 -82
  1887. data/engines/bastion/app/assets/bastion/incubator/alch-infinite-scroll.directive.js +0 -84
  1888. data/engines/bastion/app/assets/bastion/incubator/alch-menu.directive.js +0 -56
  1889. data/engines/bastion/app/assets/bastion/incubator/alch-modal.directive.js +0 -80
  1890. data/engines/bastion/app/assets/bastion/incubator/alch-save-control.directive.js +0 -42
  1891. data/engines/bastion/app/assets/bastion/incubator/alch-table.directive.js +0 -219
  1892. data/engines/bastion/app/assets/bastion/incubator/format/alch-format.module.js +0 -21
  1893. data/engines/bastion/app/assets/bastion/incubator/format/array-to-string.filter.js +0 -30
  1894. data/engines/bastion/app/assets/bastion/incubator/format/boolean-to-yes-no.filter.js +0 -34
  1895. data/engines/bastion/app/assets/bastion/incubator/format/default-number-string.filter.js +0 -34
  1896. data/engines/bastion/app/assets/bastion/incubator/format/key-value-to-string.filter.js +0 -40
  1897. data/engines/bastion/app/assets/bastion/incubator/format/unlimitedFilter.filter.js +0 -33
  1898. data/engines/bastion/app/assets/bastion/incubator/stylesheets/alch-edit.scss +0 -34
  1899. data/engines/bastion/app/assets/bastion/incubator/stylesheets/header.scss +0 -207
  1900. data/engines/bastion/app/assets/bastion/incubator/views/alch-alert.html +0 -6
  1901. data/engines/bastion/app/assets/bastion/incubator/views/alch-dropdown.html +0 -19
  1902. data/engines/bastion/app/assets/bastion/incubator/views/alch-edit-add-item.html +0 -21
  1903. data/engines/bastion/app/assets/bastion/incubator/views/alch-edit-add-remove-cancel.html +0 -28
  1904. data/engines/bastion/app/assets/bastion/incubator/views/alch-edit-checkbox.html +0 -6
  1905. data/engines/bastion/app/assets/bastion/incubator/views/alch-edit-custom.html +0 -6
  1906. data/engines/bastion/app/assets/bastion/incubator/views/alch-edit-multiselect.html +0 -17
  1907. data/engines/bastion/app/assets/bastion/incubator/views/alch-edit-save-cancel.html +0 -20
  1908. data/engines/bastion/app/assets/bastion/incubator/views/alch-edit-select.html +0 -10
  1909. data/engines/bastion/app/assets/bastion/incubator/views/alch-edit-text.html +0 -6
  1910. data/engines/bastion/app/assets/bastion/incubator/views/alch-edit-textarea.html +0 -6
  1911. data/engines/bastion/app/assets/bastion/incubator/views/alch-edit.html +0 -18
  1912. data/engines/bastion/app/assets/bastion/incubator/views/alch-flyout.html +0 -10
  1913. data/engines/bastion/app/assets/bastion/incubator/views/alch-form-buttons.html +0 -10
  1914. data/engines/bastion/app/assets/bastion/incubator/views/alch-form-group.html +0 -9
  1915. data/engines/bastion/app/assets/bastion/incubator/views/alch-menu.html +0 -18
  1916. data/engines/bastion/app/assets/bastion/incubator/views/alch-modal-remove.html +0 -13
  1917. data/engines/bastion/app/assets/bastion/layouts/details-nutupane.html +0 -57
  1918. data/engines/bastion/app/assets/bastion/layouts/nutupane.html +0 -63
  1919. data/engines/bastion/app/assets/bastion/layouts/select-all-results.html +0 -9
  1920. data/engines/bastion/app/assets/bastion/menu/menu-expander.service.js +0 -51
  1921. data/engines/bastion/app/assets/bastion/menu/menu.module.js +0 -25
  1922. data/engines/bastion/app/assets/bastion/nodes/node.factory.js +0 -31
  1923. data/engines/bastion/app/assets/bastion/nodes/nodes.module.js +0 -23
  1924. data/engines/bastion/app/assets/bastion/organizations/organization.factory.js +0 -37
  1925. data/engines/bastion/app/assets/bastion/organizations/organizations.module.js +0 -23
  1926. data/engines/bastion/app/assets/bastion/products/details/product-details-info.controller.js +0 -71
  1927. data/engines/bastion/app/assets/bastion/products/details/product-details.controller.js +0 -51
  1928. data/engines/bastion/app/assets/bastion/products/details/product-repositories.controller.js +0 -40
  1929. data/engines/bastion/app/assets/bastion/products/details/views/product-details.html +0 -59
  1930. data/engines/bastion/app/assets/bastion/products/details/views/product-info.html +0 -45
  1931. data/engines/bastion/app/assets/bastion/products/details/views/product-repositories.html +0 -65
  1932. data/engines/bastion/app/assets/bastion/products/discovery/discovery-form.controller.js +0 -185
  1933. data/engines/bastion/app/assets/bastion/products/discovery/discovery.controller.js +0 -115
  1934. data/engines/bastion/app/assets/bastion/products/discovery/views/discovery-base.html +0 -16
  1935. data/engines/bastion/app/assets/bastion/products/discovery/views/discovery-create.html +0 -171
  1936. data/engines/bastion/app/assets/bastion/products/discovery/views/discovery.html +0 -90
  1937. data/engines/bastion/app/assets/bastion/products/new/new-product.controller.js +0 -32
  1938. data/engines/bastion/app/assets/bastion/products/new/product-form.controller.js +0 -91
  1939. data/engines/bastion/app/assets/bastion/products/new/views/product-new-form.html +0 -56
  1940. data/engines/bastion/app/assets/bastion/products/new/views/product-new.html +0 -20
  1941. data/engines/bastion/app/assets/bastion/products/product.factory.js +0 -32
  1942. data/engines/bastion/app/assets/bastion/products/products.controller.js +0 -52
  1943. data/engines/bastion/app/assets/bastion/products/products.module.js +0 -153
  1944. data/engines/bastion/app/assets/bastion/products/views/products-table-collapsed.html +0 -18
  1945. data/engines/bastion/app/assets/bastion/products/views/products-table-full.html +0 -24
  1946. data/engines/bastion/app/assets/bastion/products/views/products.html +0 -19
  1947. data/engines/bastion/app/assets/bastion/providers/new/new-provider.controller.js +0 -63
  1948. data/engines/bastion/app/assets/bastion/providers/new/views/provider-new.html +0 -28
  1949. data/engines/bastion/app/assets/bastion/providers/provider.factory.js +0 -38
  1950. data/engines/bastion/app/assets/bastion/providers/providers.module.js +0 -23
  1951. data/engines/bastion/app/assets/bastion/repositories/details/repository-details-info.controller.js +0 -113
  1952. data/engines/bastion/app/assets/bastion/repositories/details/views/repository-info.html +0 -174
  1953. data/engines/bastion/app/assets/bastion/repositories/new/new-repository.controller.js +0 -63
  1954. data/engines/bastion/app/assets/bastion/repositories/new/views/repository-new.html +0 -73
  1955. data/engines/bastion/app/assets/bastion/repositories/repositories.module.js +0 -35
  1956. data/engines/bastion/app/assets/bastion/repositories/repository.factory.js +0 -38
  1957. data/engines/bastion/app/assets/bastion/stylesheets/less/bastion.less +0 -27
  1958. data/engines/bastion/app/assets/bastion/stylesheets/less/forms.less +0 -11
  1959. data/engines/bastion/app/assets/bastion/stylesheets/less/gpg-keys.less +0 -36
  1960. data/engines/bastion/app/assets/bastion/stylesheets/less/helpers.less +0 -6
  1961. data/engines/bastion/app/assets/bastion/stylesheets/less/nutupane.less +0 -307
  1962. data/engines/bastion/app/assets/bastion/stylesheets/less/overrides.less +0 -42
  1963. data/engines/bastion/app/assets/bastion/stylesheets/less/variables.less +0 -2
  1964. data/engines/bastion/app/assets/bastion/stylesheets/scss/bastion.scss +0 -171
  1965. data/engines/bastion/app/assets/bastion/stylesheets/widgets/_org-switcher.scss +0 -114
  1966. data/engines/bastion/app/assets/bastion/subscriptions/details/subscription-details.controller.js +0 -58
  1967. data/engines/bastion/app/assets/bastion/subscriptions/details/subscription-products.controller.js +0 -35
  1968. data/engines/bastion/app/assets/bastion/subscriptions/details/views/subscription-associations.html +0 -41
  1969. data/engines/bastion/app/assets/bastion/subscriptions/details/views/subscription-details.html +0 -41
  1970. data/engines/bastion/app/assets/bastion/subscriptions/details/views/subscription-info.html +0 -92
  1971. data/engines/bastion/app/assets/bastion/subscriptions/details/views/subscription-products.html +0 -35
  1972. data/engines/bastion/app/assets/bastion/subscriptions/manifest/manifest-details.controller.js +0 -46
  1973. data/engines/bastion/app/assets/bastion/subscriptions/manifest/manifest-history.controller.js +0 -31
  1974. data/engines/bastion/app/assets/bastion/subscriptions/manifest/manifest-import.controller.js +0 -147
  1975. data/engines/bastion/app/assets/bastion/subscriptions/manifest/manifest.controller.js +0 -48
  1976. data/engines/bastion/app/assets/bastion/subscriptions/manifest/views/manifest-details.html +0 -46
  1977. data/engines/bastion/app/assets/bastion/subscriptions/manifest/views/manifest-import-history.html +0 -17
  1978. data/engines/bastion/app/assets/bastion/subscriptions/manifest/views/manifest-import.html +0 -80
  1979. data/engines/bastion/app/assets/bastion/subscriptions/manifest/views/manifest.html +0 -47
  1980. data/engines/bastion/app/assets/bastion/subscriptions/subscriptions.controller.js +0 -82
  1981. data/engines/bastion/app/assets/bastion/subscriptions/subscriptions.factory.js +0 -31
  1982. data/engines/bastion/app/assets/bastion/subscriptions/subscriptions.module.js +0 -118
  1983. data/engines/bastion/app/assets/bastion/subscriptions/views/subscriptions-table-collapsed.html +0 -17
  1984. data/engines/bastion/app/assets/bastion/subscriptions/views/subscriptions-table-full.html +0 -31
  1985. data/engines/bastion/app/assets/bastion/subscriptions/views/subscriptions.html +0 -13
  1986. data/engines/bastion/app/assets/bastion/system-groups/details/system-group-add-systems.controller.js +0 -78
  1987. data/engines/bastion/app/assets/bastion/system-groups/details/system-group-details-info.controller.js +0 -40
  1988. data/engines/bastion/app/assets/bastion/system-groups/details/system-group-details.controller.js +0 -82
  1989. data/engines/bastion/app/assets/bastion/system-groups/details/system-group-systems.controller.js +0 -61
  1990. data/engines/bastion/app/assets/bastion/system-groups/details/views/system-group-actions.html +0 -34
  1991. data/engines/bastion/app/assets/bastion/system-groups/details/views/system-group-add-systems.html +0 -83
  1992. data/engines/bastion/app/assets/bastion/system-groups/details/views/system-group-details.html +0 -91
  1993. data/engines/bastion/app/assets/bastion/system-groups/details/views/system-group-info.html +0 -62
  1994. data/engines/bastion/app/assets/bastion/system-groups/details/views/system-group-systems-list.html +0 -77
  1995. data/engines/bastion/app/assets/bastion/system-groups/details/views/system-group-systems.html +0 -21
  1996. data/engines/bastion/app/assets/bastion/system-groups/new/new-system-group.controller.js +0 -32
  1997. data/engines/bastion/app/assets/bastion/system-groups/new/system-group-form.controller.js +0 -75
  1998. data/engines/bastion/app/assets/bastion/system-groups/new/views/system-group-new-form.html +0 -46
  1999. data/engines/bastion/app/assets/bastion/system-groups/new/views/system-group-new.html +0 -20
  2000. data/engines/bastion/app/assets/bastion/system-groups/system-group.factory.js +0 -36
  2001. data/engines/bastion/app/assets/bastion/system-groups/system-groups.controller.js +0 -51
  2002. data/engines/bastion/app/assets/bastion/system-groups/system-groups.module.js +0 -102
  2003. data/engines/bastion/app/assets/bastion/system-groups/views/system-groups-table-collapsed.html +0 -18
  2004. data/engines/bastion/app/assets/bastion/system-groups/views/system-groups-table-full.html +0 -26
  2005. data/engines/bastion/app/assets/bastion/system-groups/views/system-groups.html +0 -14
  2006. data/engines/bastion/app/assets/bastion/systems/bulk/systems-bulk-action-errata.controller.js +0 -113
  2007. data/engines/bastion/app/assets/bastion/systems/bulk/systems-bulk-action-groups.controller.js +0 -92
  2008. data/engines/bastion/app/assets/bastion/systems/bulk/systems-bulk-action-packages.controller.js +0 -101
  2009. data/engines/bastion/app/assets/bastion/systems/bulk/systems-bulk-action-subscriptions.controller.js +0 -98
  2010. data/engines/bastion/app/assets/bastion/systems/bulk/systems-bulk-action.controller.js +0 -84
  2011. data/engines/bastion/app/assets/bastion/systems/bulk/views/alter-content-bulk.html +0 -3
  2012. data/engines/bastion/app/assets/bastion/systems/bulk/views/bulk-actions-errata.html +0 -73
  2013. data/engines/bastion/app/assets/bastion/systems/bulk/views/bulk-actions-groups.html +0 -66
  2014. data/engines/bastion/app/assets/bastion/systems/bulk/views/bulk-actions-packages.html +0 -78
  2015. data/engines/bastion/app/assets/bastion/systems/bulk/views/bulk-actions-subscriptions.html +0 -24
  2016. data/engines/bastion/app/assets/bastion/systems/bulk/views/bulk-actions.html +0 -88
  2017. data/engines/bastion/app/assets/bastion/systems/bulk/views/errata-details.html +0 -64
  2018. data/engines/bastion/app/assets/bastion/systems/bulk/views/errata-systems.html +0 -28
  2019. data/engines/bastion/app/assets/bastion/systems/content/system-errata.controller.js +0 -71
  2020. data/engines/bastion/app/assets/bastion/systems/content/system-packages.controller.js +0 -97
  2021. data/engines/bastion/app/assets/bastion/systems/content/views/errata-details.html +0 -64
  2022. data/engines/bastion/app/assets/bastion/systems/content/views/system-errata.html +0 -57
  2023. data/engines/bastion/app/assets/bastion/systems/content/views/system-packages.html +0 -94
  2024. data/engines/bastion/app/assets/bastion/systems/details/system-add-system-groups.controller.js +0 -82
  2025. data/engines/bastion/app/assets/bastion/systems/details/system-details-info.controller.js +0 -236
  2026. data/engines/bastion/app/assets/bastion/systems/details/system-details.controller.js +0 -94
  2027. data/engines/bastion/app/assets/bastion/systems/details/system-event-details.controller.js +0 -55
  2028. data/engines/bastion/app/assets/bastion/systems/details/system-events.controller.js +0 -48
  2029. data/engines/bastion/app/assets/bastion/systems/details/system-subscriptions.controller.js +0 -136
  2030. data/engines/bastion/app/assets/bastion/systems/details/system-system-groups.controller.js +0 -82
  2031. data/engines/bastion/app/assets/bastion/systems/details/views/system-details.html +0 -74
  2032. data/engines/bastion/app/assets/bastion/systems/details/views/system-event-details.html +0 -47
  2033. data/engines/bastion/app/assets/bastion/systems/details/views/system-events.html +0 -45
  2034. data/engines/bastion/app/assets/bastion/systems/details/views/system-groups-table.html +0 -81
  2035. data/engines/bastion/app/assets/bastion/systems/details/views/system-groups.html +0 -18
  2036. data/engines/bastion/app/assets/bastion/systems/details/views/system-info.html +0 -332
  2037. data/engines/bastion/app/assets/bastion/systems/details/views/system-subscriptions.html +0 -198
  2038. data/engines/bastion/app/assets/bastion/systems/system-erratum.factory.js +0 -32
  2039. data/engines/bastion/app/assets/bastion/systems/system-package.factory.js +0 -35
  2040. data/engines/bastion/app/assets/bastion/systems/system-register.controller.js +0 -38
  2041. data/engines/bastion/app/assets/bastion/systems/system-subscription.factory.js +0 -31
  2042. data/engines/bastion/app/assets/bastion/systems/system-task.factory.js +0 -45
  2043. data/engines/bastion/app/assets/bastion/systems/system.factory.js +0 -70
  2044. data/engines/bastion/app/assets/bastion/systems/systems-helper.service.js +0 -35
  2045. data/engines/bastion/app/assets/bastion/systems/systems.controller.js +0 -72
  2046. data/engines/bastion/app/assets/bastion/systems/systems.module.js +0 -214
  2047. data/engines/bastion/app/assets/bastion/systems/views/register.html +0 -35
  2048. data/engines/bastion/app/assets/bastion/systems/views/systems-delete-bulk.html +0 -4
  2049. data/engines/bastion/app/assets/bastion/systems/views/systems-table-collapsed.html +0 -20
  2050. data/engines/bastion/app/assets/bastion/systems/views/systems-table-full.html +0 -33
  2051. data/engines/bastion/app/assets/bastion/systems/views/systems.html +0 -19
  2052. data/engines/bastion/app/assets/bastion/tasks/task.factory.js +0 -52
  2053. data/engines/bastion/app/assets/bastion/tasks/tasks.module.js +0 -23
  2054. data/engines/bastion/app/assets/bastion/users/user.factory.js +0 -45
  2055. data/engines/bastion/app/assets/bastion/users/users.module.js +0 -21
  2056. data/engines/bastion/app/assets/bastion/utils/form-utils.service.js +0 -54
  2057. data/engines/bastion/app/assets/bastion/utils/routes.factory.js +0 -26
  2058. data/engines/bastion/app/assets/bastion/utils/utils.module.js +0 -21
  2059. data/engines/bastion/app/assets/bastion/widgets/nutupane-table.directive.js +0 -59
  2060. data/engines/bastion/app/assets/bastion/widgets/nutupane.factory.js +0 -304
  2061. data/engines/bastion/app/assets/bastion/widgets/org-switcher.widget.js +0 -104
  2062. data/engines/bastion/app/assets/bastion/widgets/path-selector.directive.js +0 -74
  2063. data/engines/bastion/app/assets/bastion/widgets/views/org-switcher.html +0 -41
  2064. data/engines/bastion/app/assets/bastion/widgets/views/save-control.html +0 -22
  2065. data/engines/bastion/app/assets/bastion/widgets/widgets.module.js +0 -21
  2066. data/engines/bastion/app/assets/images/bastion/favicon.png +0 -0
  2067. data/engines/bastion/app/assets/images/bastion/headpin-logo.png +0 -0
  2068. data/engines/bastion/app/assets/images/bastion/katello-logo.png +0 -0
  2069. data/engines/bastion/app/views/bastion/layouts/application.html.haml +0 -18
  2070. data/engines/bastion/lib/bastion.rb +0 -5
  2071. data/engines/bastion/lib/bastion/engine.rb +0 -37
  2072. data/engines/bastion/lib/bastion/version.rb +0 -3
  2073. data/engines/bastion/vendor/assets/fonts/bastion/font-awesome/FontAwesome.otf +0 -0
  2074. data/engines/bastion/vendor/assets/fonts/bastion/font-awesome/fontawesome-webfont.eot +0 -0
  2075. data/engines/bastion/vendor/assets/fonts/bastion/font-awesome/fontawesome-webfont.svg +0 -399
  2076. data/engines/bastion/vendor/assets/fonts/bastion/font-awesome/fontawesome-webfont.ttf +0 -0
  2077. data/engines/bastion/vendor/assets/fonts/bastion/font-awesome/fontawesome-webfont.woff +0 -0
  2078. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Bold-webfont.eot +0 -0
  2079. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Bold-webfont.svg +0 -146
  2080. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Bold-webfont.ttf +0 -0
  2081. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Bold-webfont.woff +0 -0
  2082. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-BoldItalic-webfont.eot +0 -0
  2083. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-BoldItalic-webfont.svg +0 -146
  2084. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-BoldItalic-webfont.ttf +0 -0
  2085. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-BoldItalic-webfont.woff +0 -0
  2086. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBold-webfont.eot +0 -0
  2087. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBold-webfont.svg +0 -146
  2088. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBold-webfont.ttf +0 -0
  2089. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBold-webfont.woff +0 -0
  2090. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBoldItalic-webfont.eot +0 -0
  2091. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBoldItalic-webfont.svg +0 -146
  2092. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBoldItalic-webfont.ttf +0 -0
  2093. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBoldItalic-webfont.woff +0 -0
  2094. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Italic-webfont.eot +0 -0
  2095. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Italic-webfont.svg +0 -146
  2096. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Italic-webfont.ttf +0 -0
  2097. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Italic-webfont.woff +0 -0
  2098. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Light-webfont.eot +0 -0
  2099. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Light-webfont.svg +0 -146
  2100. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Light-webfont.ttf +0 -0
  2101. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Light-webfont.woff +0 -0
  2102. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-LightItalic-webfont.eot +0 -0
  2103. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-LightItalic-webfont.svg +0 -146
  2104. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-LightItalic-webfont.ttf +0 -0
  2105. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-LightItalic-webfont.woff +0 -0
  2106. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Regular-webfont.eot +0 -0
  2107. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Regular-webfont.svg +0 -146
  2108. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Regular-webfont.ttf +0 -0
  2109. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Regular-webfont.woff +0 -0
  2110. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Semibold-webfont.eot +0 -0
  2111. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Semibold-webfont.svg +0 -146
  2112. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Semibold-webfont.ttf +0 -0
  2113. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-Semibold-webfont.woff +0 -0
  2114. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-SemiboldItalic-webfont.eot +0 -0
  2115. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-SemiboldItalic-webfont.svg +0 -146
  2116. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-SemiboldItalic-webfont.ttf +0 -0
  2117. data/engines/bastion/vendor/assets/fonts/bastion/rcue/OpenSans-SemiboldItalic-webfont.woff +0 -0
  2118. data/engines/bastion/vendor/assets/fonts/bastion/rcue/Overpass-Bold-webfont.eot +0 -0
  2119. data/engines/bastion/vendor/assets/fonts/bastion/rcue/Overpass-Bold-webfont.svg +0 -454
  2120. data/engines/bastion/vendor/assets/fonts/bastion/rcue/Overpass-Bold-webfont.ttf +0 -0
  2121. data/engines/bastion/vendor/assets/fonts/bastion/rcue/Overpass-Bold-webfont.woff +0 -0
  2122. data/engines/bastion/vendor/assets/fonts/bastion/rcue/Overpass-Regular-webfont.eot +0 -0
  2123. data/engines/bastion/vendor/assets/fonts/bastion/rcue/Overpass-Regular-webfont.svg +0 -454
  2124. data/engines/bastion/vendor/assets/fonts/bastion/rcue/Overpass-Regular-webfont.ttf +0 -0
  2125. data/engines/bastion/vendor/assets/fonts/bastion/rcue/Overpass-Regular-webfont.woff +0 -0
  2126. data/engines/bastion/vendor/assets/javascripts/bastion/alchemy/alchemy.js +0 -20
  2127. data/engines/bastion/vendor/assets/javascripts/bastion/angular-blocks/angular-blocks.js +0 -79
  2128. data/engines/bastion/vendor/assets/javascripts/bastion/angular-gettext/angular-gettext.js +0 -200
  2129. data/engines/bastion/vendor/assets/javascripts/bastion/angular-resource/angular-resource.js +0 -578
  2130. data/engines/bastion/vendor/assets/javascripts/bastion/angular-route/angular-route.js +0 -880
  2131. data/engines/bastion/vendor/assets/javascripts/bastion/angular-sanitize/angular-sanitize.js +0 -577
  2132. data/engines/bastion/vendor/assets/javascripts/bastion/angular-ui-bootstrap/alert.js +0 -15
  2133. data/engines/bastion/vendor/assets/javascripts/bastion/angular-ui-bootstrap/bindHtml.js +0 -10
  2134. data/engines/bastion/vendor/assets/javascripts/bastion/angular-ui-bootstrap/modal.js +0 -315
  2135. data/engines/bastion/vendor/assets/javascripts/bastion/angular-ui-bootstrap/position.js +0 -79
  2136. data/engines/bastion/vendor/assets/javascripts/bastion/angular-ui-bootstrap/tabs.js +0 -316
  2137. data/engines/bastion/vendor/assets/javascripts/bastion/angular-ui-bootstrap/tooltip.js +0 -337
  2138. data/engines/bastion/vendor/assets/javascripts/bastion/angular-ui-router/angular-ui-router.js +0 -1478
  2139. data/engines/bastion/vendor/assets/javascripts/bastion/angular/angular.js +0 -20031
  2140. data/engines/bastion/vendor/assets/javascripts/bastion/es5-shim/es5-shim.js +0 -1216
  2141. data/engines/bastion/vendor/assets/javascripts/bastion/jquery/jquery.js +0 -9597
  2142. data/engines/bastion/vendor/assets/javascripts/bastion/json3/json3.js +0 -861
  2143. data/engines/bastion/vendor/assets/javascripts/bastion/ngUpload/ng-upload.js +0 -205
  2144. data/engines/bastion/vendor/assets/javascripts/bastion/underscore/underscore.js +0 -1276
  2145. data/engines/bastion/vendor/assets/stylesheets/bastion/alchemy/_colors.scss +0 -99
  2146. data/engines/bastion/vendor/assets/stylesheets/bastion/alchemy/_media_object.scss +0 -22
  2147. data/engines/bastion/vendor/assets/stylesheets/bastion/alchemy/_mixins.scss +0 -24
  2148. data/engines/bastion/vendor/assets/stylesheets/bastion/alchemy/_normalize.scss +0 -396
  2149. data/engines/bastion/vendor/assets/stylesheets/bastion/alchemy/_vars.scss +0 -31
  2150. data/engines/bastion/vendor/assets/stylesheets/bastion/alchemy/alchemy.scss +0 -8
  2151. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/alerts.less +0 -67
  2152. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/badges.less +0 -51
  2153. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/bootstrap.less +0 -49
  2154. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/breadcrumbs.less +0 -23
  2155. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/button-groups.less +0 -227
  2156. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/buttons.less +0 -155
  2157. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/carousel.less +0 -232
  2158. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/close.less +0 -33
  2159. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/code.less +0 -53
  2160. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/component-animations.less +0 -29
  2161. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/dropdowns.less +0 -187
  2162. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/forms.less +0 -375
  2163. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/glyphicons.less +0 -237
  2164. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/grid.less +0 -79
  2165. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/input-groups.less +0 -136
  2166. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/jumbotron.less +0 -46
  2167. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/labels.less +0 -64
  2168. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/list-group.less +0 -88
  2169. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/media.less +0 -56
  2170. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/mixins.less +0 -845
  2171. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/modals.less +0 -129
  2172. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/navbar.less +0 -612
  2173. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/navs.less +0 -242
  2174. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/normalize.less +0 -406
  2175. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/pager.less +0 -55
  2176. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/pagination.less +0 -85
  2177. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/panels.less +0 -182
  2178. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/popovers.less +0 -133
  2179. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/print.less +0 -105
  2180. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/progress-bars.less +0 -80
  2181. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/responsive-utilities.less +0 -209
  2182. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/scaffolding.less +0 -119
  2183. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/tables.less +0 -231
  2184. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/theme.less +0 -247
  2185. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/thumbnails.less +0 -36
  2186. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/tooltip.less +0 -95
  2187. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/type.less +0 -281
  2188. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/utilities.less +0 -56
  2189. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/variables.less +0 -642
  2190. data/engines/bastion/vendor/assets/stylesheets/bastion/bootstrap/wells.less +0 -29
  2191. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/less/bootstrap.less +0 -84
  2192. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/less/core.less +0 -129
  2193. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/less/extras.less +0 -93
  2194. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/less/font-awesome-ie7.less +0 -1953
  2195. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/less/font-awesome.less +0 -33
  2196. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/less/icons.less +0 -381
  2197. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/less/mixins.less +0 -48
  2198. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/less/path.less +0 -14
  2199. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/less/variables.less +0 -735
  2200. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/scss/_bootstrap.scss +0 -84
  2201. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/scss/_core.scss +0 -129
  2202. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/scss/_extras.scss +0 -93
  2203. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/scss/_icons.scss +0 -381
  2204. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/scss/_mixins.scss +0 -48
  2205. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/scss/_path.scss +0 -14
  2206. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/scss/_variables.scss +0 -734
  2207. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/scss/font-awesome-ie7.scss +0 -1953
  2208. data/engines/bastion/vendor/assets/stylesheets/bastion/font-awesome/scss/font-awesome.scss +0 -33
  2209. data/engines/bastion/vendor/assets/stylesheets/bastion/rcue/buttons.less +0 -44
  2210. data/engines/bastion/vendor/assets/stylesheets/bastion/rcue/fonts.less +0 -52
  2211. data/engines/bastion/vendor/assets/stylesheets/bastion/rcue/forms.less +0 -19
  2212. data/engines/bastion/vendor/assets/stylesheets/bastion/rcue/mixins.less +0 -50
  2213. data/engines/bastion/vendor/assets/stylesheets/bastion/rcue/navbar.less +0 -481
  2214. data/engines/bastion/vendor/assets/stylesheets/bastion/rcue/rcue.less +0 -15
  2215. data/engines/bastion/vendor/assets/stylesheets/bastion/rcue/variables.less +0 -47
  2216. data/engines/fort/app/controllers/api/v1/node_capabilities_controller.rb +0 -84
  2217. data/engines/fort/app/controllers/api/v1/nodes_controller.rb +0 -131
  2218. data/engines/fort/app/controllers/api/v2/node_capabilities_controller.rb +0 -17
  2219. data/engines/fort/app/controllers/api/v2/nodes_controller.rb +0 -41
  2220. data/engines/fort/app/models/authorization/node.rb +0 -26
  2221. data/engines/fort/app/models/content_node_capability.rb +0 -67
  2222. data/engines/fort/app/models/fort/concerns/system.rb +0 -29
  2223. data/engines/fort/app/models/node.rb +0 -61
  2224. data/engines/fort/app/models/node_capability.rb +0 -42
  2225. data/engines/fort/app/views/api/v2/nodes/index.json.rabl +0 -3
  2226. data/engines/fort/app/views/api/v2/nodes/show.json.rabl +0 -15
  2227. data/engines/fort/config/routes.rb +0 -37
  2228. data/engines/fort/db/migrate/20130725180846_node.rb +0 -15
  2229. data/engines/fort/db/migrate/20130725185514_add_node_capability.rb +0 -16
  2230. data/engines/fort/db/migrate/20130726210956_create_node_environments.rb +0 -16
  2231. data/engines/fort/lib/fort.rb +0 -16
  2232. data/engines/fort/lib/fort/actions/changeset_promote.rb +0 -43
  2233. data/engines/fort/lib/fort/actions/content_view_publish.rb +0 -35
  2234. data/engines/fort/lib/fort/actions/content_view_refresh.rb +0 -34
  2235. data/engines/fort/lib/fort/actions/repository_create.rb +0 -41
  2236. data/engines/fort/lib/fort/engine.rb +0 -29
  2237. data/engines/fort/lib/fort/version.rb +0 -3
  2238. data/engines/fort/lib/tasks/fort_tasks.rake +0 -4
  2239. data/lib/headpin/actions/org_create.rb +0 -28
  2240. data/lib/headpin/actions/org_destroy.rb +0 -28
  2241. data/lib/headpin/actions/user_create.rb +0 -33
  2242. data/lib/headpin/actions/user_destroy.rb +0 -28
  2243. data/lib/katello/actions/changeset_promote.rb +0 -24
  2244. data/lib/katello/actions/content_view_create.rb +0 -23
  2245. data/lib/katello/actions/content_view_demote.rb +0 -21
  2246. data/lib/katello/actions/content_view_promote.rb +0 -35
  2247. data/lib/katello/actions/content_view_publish.rb +0 -32
  2248. data/lib/katello/actions/content_view_refresh.rb +0 -32
  2249. data/lib/katello/actions/environment_create.rb +0 -31
  2250. data/lib/katello/actions/environment_destroy.rb +0 -31
  2251. data/lib/katello/actions/repository_create.rb +0 -23
  2252. data/lib/katello/actions/repository_destroy.rb +0 -23
  2253. data/lib/katello/actions/repository_sync.rb +0 -25
  2254. data/lib/katello/tasks/cdn_refresh.rake +0 -12
  2255. data/lib/katello/tasks/headpin_misc.rake +0 -18
  2256. data/lib/util/puppet.rb +0 -55
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright 2013 Red Hat, Inc.
2
+ # Copyright 2014 Red Hat, Inc.
3
3
  #
4
4
  # This software is licensed to you under the GNU General Public
5
5
  # License as published by the Free Software Foundation; either version
@@ -11,9 +11,19 @@
11
11
  # http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.
12
12
 
13
13
  module Katello
14
- class Api::V2::UebercertsController < Api::V1::UebercertsController
14
+ class Api::V2::UebercertsController < Api::V2::ApiController
15
+ before_filter :find_organization, :only => [:show]
15
16
 
16
- include Api::V2::Rendering
17
+ resource_description do
18
+ api_version 'v2'
19
+ api_base_url "/katello/api"
20
+ end
17
21
 
18
- end
22
+ api :GET, "/organizations/:organization_id/uebercert", N_("Show an ueber certificate for an organization")
23
+ param :regenerate, :bool, :desc => N_("When set to 'True' certificate will be re-issued")
24
+ def show
25
+ @organization.generate_debug_cert if (params[:regenerate] || '').downcase == 'true'
26
+ respond :resource => @organization.debug_cert
27
+ end
28
+ end
19
29
  end
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright 2013 Red Hat, Inc.
2
+ # Copyright 2014 Red Hat, Inc.
3
3
  #
4
4
  # This software is licensed to you under the GNU General Public
5
5
  # License as published by the Free Software Foundation; either version
@@ -11,64 +11,6 @@
11
11
  # http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.
12
12
 
13
13
  module Katello
14
- class Api::V2::UsersController < Api::V1::UsersController
15
-
16
- include Api::V2::Rendering
17
-
18
- resource_description do
19
- api_version "v2"
20
- end
21
-
22
- def_param_group :user do
23
- param :user, Hash, :required => true, :action_aware => true do
24
- param :email, String, :required => true, :action_aware => true
25
- param :password, String, :required => true, :action_aware => true
26
- param :default_environment_id, Integer, :action_aware => true
27
- param :disabled, :bool, :action_aware => true
28
- end
29
- end
30
-
31
- def param_rules
32
- { :create => { :user => [:login, :password, :email, :disabled, :default_environment_id, :default_locale] },
33
- :update => { :user => [:password, :email, :disabled, :default_environment_id, :default_locale] }
34
- }
35
- end
36
-
37
- api :POST, "/users", "Create an user"
38
- param_group :user
39
- param :user, Hash, :required => true do
40
- param :login, String, :required => true
41
- end
42
- def create
43
- user_attrs = params[:user]
44
-
45
- @user = User.create!(user_attrs)
46
-
47
- if user_attrs[:default_environment_id]
48
- @user.default_environment = KTEnvironment.find(user_attrs[:default_environment_id])
49
- @user.save!
50
- end
51
-
52
- if !user_attrs[:default_locale].blank?
53
- #TODO: this should be placed in model validations
54
- if Katello.config.available_locales.include? user_attrs[:default_locale]
55
- @user.default_locale = user_attrs[:default_locale]
56
- @user.save!
57
- end
58
- end
59
- respond
60
- end
61
-
62
- api :PUT, "/users/:id", "Update an user"
63
- param_group :user
64
- def update
65
- super
14
+ class Api::V2::UsersController < ::Api::V2::UsersController
66
15
  end
67
-
68
- # rhsm
69
- def list_owners
70
- respond_for_index :collection => @user.allowed_organizations
71
- end
72
-
73
- end
74
16
  end
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright 2013 Red Hat, Inc.
2
+ # Copyright 2014 Red Hat, Inc.
3
3
  #
4
4
  # This software is licensed to you under the GNU General Public
5
5
  # License as published by the Free Software Foundation; either version
@@ -14,723 +14,718 @@ require 'cgi'
14
14
  require 'base64'
15
15
 
16
16
  module Katello
17
- class ApplicationController < ::ApplicationController
18
- include Katello::Menu
19
- include Notifications::ControllerHelper
20
- include Profiling
21
- include KTLocale
22
- include ::HomeHelper
23
-
24
- layout 'katello/layouts/katello'
25
-
26
- clear_helpers
27
-
28
- helper UIAlchemy::TranslationHelper
29
- helper ::ApplicationHelper
30
- helper ::TaxonomyHelper
31
- helper_method :current_organization
32
- before_filter :require_org
33
- #before_filter :check_deleted_org
34
-
35
- protect_from_forgery # See ActionController::RequestForgeryProtection for details
36
-
37
- after_filter :flash_to_headers
38
-
39
- # Skipping Foreman's filter that clears the user
40
- # from the current thread. If this filter is enabled
41
- # Katello's rescue_from don't have access to User.current.
42
- skip_around_filter :clear_thread
43
- after_filter :clear_katello_thread
44
-
45
- #custom 404 (render_404) and 500 (render_error) pages
46
- # this is always in the top
47
- # order of these are important.
48
- rescue_from Exception do |exception|
49
- paranoia = Katello.config.exception_paranoia
50
- hide = Katello.config.hide_exceptions
51
-
52
- to_do = case exception
53
- when StandardError
54
- hide ? :handle : :raise
55
- when ScriptError
56
- paranoia ? :handle : :raise
57
- when SignalException, SystemExit, NoMemoryError
58
- :raise
59
- else
60
- Rails.logger.error 'Unknown child of Exception instead of StandardError detected: ' +
61
- "#{exception.message} (#{exception.class})"
62
- paranoia ? :handle : :raise
63
- end
64
-
65
- case to_do
66
- when :handle
67
- execute_rescue(exception) { |ex| render_error(ex) }
68
- when :raise
69
- fail exception
17
+ class ApplicationController < ::ApplicationController
18
+ include Notifications::ControllerHelper
19
+ include ::HomeHelper
20
+
21
+ layout 'katello/layouts/katello'
22
+
23
+ clear_helpers
24
+
25
+ helper ::ApplicationHelper
26
+ helper ::TaxonomyHelper
27
+ before_filter :set_gettext_locale
28
+ helper_method :current_organization
29
+ before_filter :require_org
30
+ #before_filter :check_deleted_org
31
+
32
+ protect_from_forgery # See ActionController::RequestForgeryProtection for details
33
+
34
+ after_filter :flash_to_headers
35
+
36
+ # Skipping Foreman's filter that clears the user
37
+ # from the current thread. If this filter is enabled
38
+ # Katello's rescue_from don't have access to User.current.
39
+ skip_around_filter :clear_thread
40
+ after_filter :clear_katello_thread
41
+
42
+ #custom 404 (render_404) and 500 (render_error) pages
43
+ # this is always in the top
44
+ # order of these are important.
45
+ rescue_from Exception do |exception|
46
+ paranoia = false
47
+ hide = false
48
+
49
+ to_do = case exception
50
+ when StandardError
51
+ hide ? :handle : :raise
52
+ when ScriptError
53
+ paranoia ? :handle : :raise
54
+ when SignalException, SystemExit, NoMemoryError
55
+ :raise
56
+ else
57
+ Rails.logger.error 'Unknown child of Exception instead of StandardError detected: ' \
58
+ "#{exception.message} (#{exception.class})"
59
+ paranoia ? :handle : :raise
60
+ end
61
+
62
+ case to_do
63
+ when :handle
64
+ execute_rescue(exception) { |ex| render_error(ex) }
65
+ when :raise
66
+ fail exception
67
+ end
70
68
  end
71
- end
72
69
 
73
- rescue_from ActiveRecord::RecordInvalid, ActiveRecord::RecordNotSaved do |e|
74
- notify.exception e
75
- log_exception e, :info
70
+ rescue_from ActiveRecord::RecordInvalid, ActiveRecord::RecordNotSaved do |e|
71
+ notify.exception e
72
+ log_exception e, :info
76
73
 
77
- respond_to do |f|
78
- f.html { render :text => e.to_s, :layout => !request.xhr?, :status => :unprocessable_entity}
79
- f.json { render :json => e.record.errors, :status => :unprocessable_entity}
74
+ respond_to do |f|
75
+ f.html { render :text => e.to_s, :layout => !request.xhr?, :status => :unprocessable_entity }
76
+ f.json { render :json => e.record.errors, :status => :unprocessable_entity }
77
+ end
78
+ execute_after_filters
80
79
  end
81
- execute_after_filters
82
- end
83
-
84
- rescue_from ActiveRecord::RecordNotFound do |e|
85
- notify.error e.message
86
- render :nothing => true, :status => :not_found
87
- execute_after_filters
88
- end
89
80
 
90
- if Katello.config.hide_exceptions
91
- rescue_from ActionController::RoutingError,
92
- ActionController::UnknownController,
93
- AbstractController::ActionNotFound do |exception|
94
- execute_rescue(exception) { |ex| render_404 }
81
+ rescue_from ActiveRecord::RecordNotFound do |e|
82
+ notify.error e.message
83
+ render :nothing => true, :status => :not_found
84
+ execute_after_filters
95
85
  end
96
- end
97
86
 
98
- rescue_from Errors::SecurityViolation do |exception|
99
- execute_rescue(exception) { |ex| render_403 }
100
- end
101
-
102
- rescue_from HttpErrors::UnprocessableEntity do |exception|
103
- execute_rescue(exception) { |ex| render_bad_parameters(ex) }
104
- end
105
-
106
- include AuthorizationRules
107
- include Menu
108
-
109
- before_filter :verify_ldap
110
-
111
- def section_id
112
- 'generic'
113
- end
87
+ rescue_from Errors::SecurityViolation do |exception|
88
+ execute_rescue(exception) { |_ex| render_403 }
89
+ end
114
90
 
115
- # 'default_label' is an action that is used to allow the UI to retrieve
116
- # a label that is generated by the server based upon a name provided. This action
117
- # is used by several controllers, but not all. For those controllers that do
118
- # use it, the controller will determine if access to it is allowed based on the
119
- # permissions required by that controller.
120
- def default_label
121
- if params[:name]
122
- render :text => Util::Model.labelize(params[:name])
123
- else
124
- render :nothing => true
91
+ rescue_from HttpErrors::UnprocessableEntity do |exception|
92
+ execute_rescue(exception) { |ex| render_bad_parameters(ex) }
125
93
  end
126
- end
127
94
 
128
- # this is intentionally dead code, it just mark some strings for gettext
129
- # so generate_label and default_label_assigned can use them
130
- def n_gettext_for_generate_label
131
- # the same string for repository, product, organization, environment (see BZ 886718)
132
- N_("A label was not provided during repository creation; therefore, a label of '%{label}' was " +
133
- "automatically assigned. If you would like a different label, please delete the " +
134
- "repository and recreate it with the desired label.")
135
- N_("A label was not provided during product creation; therefore, a label of '%{label}' was " +
136
- "automatically assigned. If you would like a different label, please delete the " +
137
- "product and recreate it with the desired label.")
138
- N_("A label was not provided during organization creation; therefore, a label of '%{label}' was " +
139
- "automatically assigned. If you would like a different label, please delete the " +
140
- "organization and recreate it with the desired label.")
141
- N_("A label was not provided during environment creation; therefore, a label of '%{label}' was " +
142
- "automatically assigned. If you would like a different label, please delete the " +
143
- "environment and recreate it with the desired label.")
144
- end
95
+ include Menu
145
96
 
146
- # Generate a label using the name provided, returning the label and a string with text that may be
147
- # sent to the user (e.g. via a notice).
148
- def generate_label(object_name, object_type)
149
- # user didn't provide a label, so generate one using the name
150
- label = Util::Model.labelize(object_name)
151
- # if you modify this string you have to modify it in n_gettext_for_generate_label as well
152
- label_assigned_text = "A label was not provided during #{object_type} creation; therefore, a label of '%{label}' was " +
153
- "automatically assigned. If you would like a different label, please delete the " +
154
- "#{object_type} and recreate it with the desired label."
155
- label_assigned_text = _(label_assigned_text) % {:label => label}
156
- return label, label_assigned_text
157
- end
97
+ # Override Foreman authorized method to support permissions on meta controllers that handle multiple routes
98
+ def authorized
99
+ if self.respond_to? :permission_controller
100
+ User.current.allowed_to?(params.slice(:action, :id).merge(:controller => permission_controller))
101
+ else
102
+ super
103
+ end
104
+ end
158
105
 
159
- # Generate a message that may be sent to the user (e.g. via a notice) to inform them that
160
- # a label was automatically assigned to the object.
161
- def default_label_assigned(new_object)
162
- object_type = new_object.class.name.downcase
163
- # if you modify this string you have to modify it in n_gettext_for_generate_label as well
164
- msg = "A label was not provided during #{object_type} creation; therefore, a label of '%{label}' was " +
165
- "automatically assigned. If you would like a different label, please delete the " +
166
- "#{object_type} and recreate it with the desired label."
167
- return _(msg) % {:label => new_object.label}
168
- end
106
+ def section_id
107
+ 'generic'
108
+ end
169
109
 
170
- # Generate a message that may be sent to the user (e.g. via a notice) to inform them that
171
- # the label that they provided has been overriden to ensure uniqueness.
172
- def label_overridden(new_object, requested_label)
173
- object_type = new_object.class.name.downcase
174
- _("The label requested is already used by another %s; therefore, a unique label was " +
175
- "assigned. If you would like a different label, please delete the %s and recreate " +
176
- "it with a unique label. Requested label: %s, Assigned label: %s") %
177
- [object_type, object_type, requested_label, new_object.label]
178
- end
110
+ # 'default_label' is an action that is used to allow the UI to retrieve
111
+ # a label that is generated by the server based upon a name provided. This action
112
+ # is used by several controllers, but not all. For those controllers that do
113
+ # use it, the controller will determine if access to it is allowed based on the
114
+ # permissions required by that controller.
115
+ def default_label
116
+ if params[:name]
117
+ render :text => Util::Model.labelize(params[:name])
118
+ else
119
+ render :nothing => true
120
+ end
121
+ end
179
122
 
180
- def flash_to_headers
181
- return if @_response.nil? || @_response.response_code == 302
182
- return if flash.blank?
183
- [:error, :warning, :success, :message].each do |type|
184
- unless flash[type].nil? || flash[type].blank?
185
- @enc = CGI.escape(flash[type].gsub("\n", "<br \\>"))
186
- response.headers['X-Message'] = @enc.gsub("%2B", "&#43;")
187
- response.headers['X-Message-Type'] = type.to_s
188
- response.headers['X-Message-Request-Type'] = requested_action
189
- flash.delete(type) # clear the flash
190
- return
123
+ # this is intentionally dead code, it just mark some strings for gettext
124
+ # so generate_label and default_label_assigned can use them
125
+ def n_gettext_for_generate_label
126
+ # the same string for repository, product, organization, environment (see BZ 886718)
127
+ N_("A label was not provided during repository creation; therefore, a label of '%{label}' was " \
128
+ "automatically assigned. If you would like a different label, please delete the " \
129
+ "repository and recreate it with the desired label.")
130
+ N_("A label was not provided during product creation; therefore, a label of '%{label}' was " \
131
+ "automatically assigned. If you would like a different label, please delete the " \
132
+ "product and recreate it with the desired label.")
133
+ N_("A label was not provided during organization creation; therefore, a label of '%{label}' was " \
134
+ "automatically assigned. If you would like a different label, please delete the " \
135
+ "organization and recreate it with the desired label.")
136
+ N_("A label was not provided during environment creation; therefore, a label of '%{label}' was " \
137
+ "automatically assigned. If you would like a different label, please delete the " \
138
+ "environment and recreate it with the desired label.")
139
+ end
140
+
141
+ # Generate a label using the name provided, returning the label and a string with text that may be
142
+ # sent to the user (e.g. via a notice).
143
+ def generate_label(object_name, object_type)
144
+ # user didn't provide a label, so generate one using the name
145
+ label = Util::Model.labelize(object_name)
146
+ # if you modify this string you have to modify it in n_gettext_for_generate_label as well
147
+ label_assigned_text = "A label was not provided during #{object_type} creation; therefore, a label of '%{label}' was " \
148
+ "automatically assigned. If you would like a different label, please delete the " \
149
+ "#{object_type} and recreate it with the desired label."
150
+ label_assigned_text = _(label_assigned_text) % {:label => label}
151
+ return label, label_assigned_text
152
+ end
153
+
154
+ # Generate a message that may be sent to the user (e.g. via a notice) to inform them that
155
+ # a label was automatically assigned to the object.
156
+ def default_label_assigned(new_object)
157
+ object_type = new_object.class.name.downcase
158
+ # if you modify this string you have to modify it in n_gettext_for_generate_label as well
159
+ msg = "A label was not provided during #{object_type} creation; therefore, a label of '%{label}' was " \
160
+ "automatically assigned. If you would like a different label, please delete the " \
161
+ "#{object_type} and recreate it with the desired label."
162
+ return _(msg) % {:label => new_object.label}
163
+ end
164
+
165
+ # Generate a message that may be sent to the user (e.g. via a notice) to inform them that
166
+ # the label that they provided has been overriden to ensure uniqueness.
167
+ def label_overridden(new_object, requested_label)
168
+ object_type = new_object.class.name.downcase
169
+ _("The label requested is already used by another %s; therefore, a unique label was " \
170
+ "assigned. If you would like a different label, please delete the %s and recreate " \
171
+ "it with a unique label. Requested label: %s, Assigned label: %s") %
172
+ [object_type, object_type, requested_label, new_object.label]
173
+ end
174
+
175
+ def flash_to_headers
176
+ return if @_response.nil? || @_response.response_code == 302
177
+ return if flash.blank?
178
+ [:error, :warning, :success, :message].each do |type|
179
+ unless flash[type].nil? || flash[type].blank?
180
+ @enc = CGI.escape(flash[type].gsub("\n", "<br \\>"))
181
+ response.headers['X-Message'] = @enc.gsub("%2B", "&#43;")
182
+ response.headers['X-Message-Type'] = type.to_s
183
+ response.headers['X-Message-Request-Type'] = requested_action
184
+ flash.delete(type) # clear the flash
185
+ return
186
+ end
191
187
  end
192
188
  end
193
- end
194
189
 
195
- def current_organization
196
- if !session[:current_organization_id]
197
- @current_org = Organization.current
198
- return @current_org
199
- else
200
- begin
201
- if @current_org.nil? && current_user
202
- o = Organization.find(session[:current_organization_id])
203
- if current_user.allowed_organizations.include?(o)
204
- @current_org = o
205
- else
206
- fail ActiveRecord::RecordNotFound.new _("Permission Denied. User '%{user}' does not have permissions to access organization '%{org}'.") % {:user => User.current.login, :org => o.name}
190
+ def current_organization
191
+ if !session[:current_organization_id]
192
+ @current_org = Organization.current
193
+ return @current_org
194
+ else
195
+ begin
196
+ if @current_org.nil? && current_user
197
+ o = Organization.find(session[:current_organization_id])
198
+ if current_user.allowed_organizations.include?(o)
199
+ @current_org = o
200
+ else
201
+ fail ActiveRecord::RecordNotFound, _("Permission Denied. User '%{user}' does not have permissions to access organization '%{org}'.") % {:user => User.current.login, :org => o.name}
202
+ end
207
203
  end
204
+ return @current_org
205
+ rescue ActiveRecord::RecordNotFound => error
206
+ log_exception error
207
+ session.delete(:current_organization_id)
208
+ org_not_found_error
208
209
  end
209
- return @current_org
210
- rescue ActiveRecord::RecordNotFound => error
211
- log_exception error
212
- session.delete(:current_organization_id)
213
- org_not_found_error
214
210
  end
215
211
  end
216
- end
217
212
 
218
- def current_organization=(org)
219
- session[:current_organization_id] = org.try(:id)
220
- end
213
+ def current_organization=(org)
214
+ session[:current_organization_id] = org.try(:id)
215
+ end
221
216
 
222
- def escape_html(input)
223
- CGI.escapeHTML(input)
224
- end
217
+ def escape_html(input)
218
+ CGI.escapeHTML(input)
219
+ end
225
220
 
226
- helper_method :format_time
227
- #formats the date time if the dat is not nil
228
- def format_time(date, options = {})
229
- return I18n.l(date, options) if date
230
- ""
231
- end
221
+ helper_method :format_time
222
+ #formats the date time if the dat is not nil
223
+ def format_time(date, options = {})
224
+ return I18n.l(date, options) if date
225
+ ""
226
+ end
232
227
 
233
- #convert date, time from UI to object
234
- helper_method :parse_calendar_date
235
- def parse_calendar_date(date_str, time_str = "")
236
- return nil if date_str.blank?
228
+ #convert date, time from UI to object
229
+ helper_method :parse_calendar_date
230
+ def parse_calendar_date(date_str, time_str = "")
231
+ return nil if date_str.blank?
237
232
 
238
- datetime_str = [date_str,
239
- time_str.blank? ? '12:00 am' : time_str,
240
- DateTime.now.zone].join ' '
233
+ datetime_str = [date_str,
234
+ time_str.blank? ? '12:00 am' : time_str,
235
+ DateTime.now.zone].join ' '
241
236
 
242
- DateTime.strptime(datetime_str, '%m/%d/%Y %I:%M %P %:z') rescue false
243
- end
237
+ DateTime.strptime(datetime_str, '%m/%d/%Y %I:%M %P %:z') rescue false
238
+ end
244
239
 
245
- helper_method :no_env_available_msg
246
- def no_env_available_msg
247
- _("No environments are currently available in this organization. Please either add some to the organization or select an organization that has an environment to set user default.")
248
- end
240
+ helper_method :no_env_available_msg
241
+ def no_env_available_msg
242
+ _("No environments are currently available in this organization. Please either add some to the organization or select an organization that has an environment to set user default.")
243
+ end
249
244
 
250
- def retain_search_history
251
- current_user.create_or_update_search_history(URI(@_request.env['HTTP_REFERER']).path, params[:search])
252
- rescue => error
253
- log_exception(error)
254
- end
245
+ def retain_search_history
246
+ current_user.create_or_update_search_history(URI(@_request.env['HTTP_REFERER']).path, params[:search])
247
+ rescue => error
248
+ log_exception(error)
249
+ end
255
250
 
256
- def render_correct_nav
257
- if self.respond_to?(:menu_definition) && self.menu_definition[params[:action]] == :admin_menu
258
- session[:menu_back] = true
259
- #the menu definition exists, return true
260
- render_admin_menu
261
- elsif self.respond_to?(:menu_definition) && self.menu_definition[params[:action]] == :notices_menu
262
- session[:menu_back] = true
263
- session[:notifications] = true
264
- render_notifications_menu
265
- else
266
- #the menu definition does not exist, return false
267
- session[:menu_back] = false
268
- session[:notifications] = false
269
- #render_menu(1)
251
+ def render_correct_nav
252
+ if self.respond_to?(:menu_definition) && self.menu_definition[params[:action]] == :admin_menu
253
+ session[:menu_back] = true
254
+ #the menu definition exists, return true
255
+ render_admin_menu
256
+ elsif self.respond_to?(:menu_definition) && self.menu_definition[params[:action]] == :notices_menu
257
+ session[:menu_back] = true
258
+ session[:notifications] = true
259
+ render_notifications_menu
260
+ else
261
+ #the menu definition does not exist, return false
262
+ session[:menu_back] = false
263
+ session[:notifications] = false
264
+ #render_menu(1)
265
+ end
270
266
  end
271
- end
272
267
 
273
- private # why bother? methods below are not testable/tested
268
+ def permission_denied
269
+ render :template => "katello/common/403"
270
+ end
274
271
 
275
- def verify_ldap
276
- u = current_user
277
- u.verify_ldap_roles if Katello.config.ldap_roles && !u.nil?
278
- end
272
+ private # why bother? methods below are not testable/tested
279
273
 
280
- def require_org
281
- unless session && current_organization
282
- execute_after_filters
283
- fail Errors::SecurityViolation, _("User does not belong to an organization.")
274
+ def require_org
275
+ unless session && current_organization
276
+ execute_after_filters
277
+ fail Errors::SecurityViolation, _("User does not belong to an organization.")
278
+ end
284
279
  end
285
- end
286
280
 
287
- # TODO: this check can be removed once we start deleting sessions during org deletion
288
- def check_deleted_org
289
- if current_organization && current_organization.being_deleted?
290
- fail Errors::SecurityViolation, _("Current organization is being deleted, switch to a different one.")
281
+ # TODO: this check can be removed once we start deleting sessions during org deletion
282
+ def check_deleted_org
283
+ if current_organization && current_organization.being_deleted?
284
+ fail Errors::SecurityViolation, _("Current organization is being deleted, switch to a different one.")
285
+ end
291
286
  end
292
- end
293
-
294
- def matches_no_redirect?(url)
295
- ["logout", "notices/get_new"].any? {|path| url.include? path}
296
- end
297
287
 
298
- def require_user
288
+ def matches_no_redirect?(url)
289
+ ["logout", "notices/get_new"].any? { |path| url.include? path }
290
+ end
299
291
 
300
- if current_user
301
- #don't redirect if the user is trying to set an org
302
- if params[:action] != 'set_org' && params[:controller] != 'user_sessions'
303
- #redirect to originally requested page
304
- if !session[:original_uri].nil? && !matches_no_redirect?(session[:original_uri])
305
- redirect_to session[:original_uri]
306
- session[:original_uri] = nil
292
+ def require_user
293
+ if current_user
294
+ #don't redirect if the user is trying to set an org
295
+ if params[:action] != 'set_org' && params[:controller] != 'user_sessions'
296
+ #redirect to originally requested page
297
+ if !session[:original_uri].nil? && !matches_no_redirect?(session[:original_uri])
298
+ redirect_to session[:original_uri]
299
+ session[:original_uri] = nil
300
+ end
307
301
  end
308
- end
309
302
 
310
- return true
311
- else
312
- #user not logged
313
- notify.warning _("You must be logged in to access that page.")
303
+ return true
304
+ else
305
+ #user not logged
306
+ notify.warning _("You must be logged in to access that page.")
314
307
 
315
- #save original uri and redirect to login page
316
- session[:original_uri] = request.fullpath
317
- execute_after_filters
308
+ #save original uri and redirect to login page
309
+ session[:original_uri] = request.fullpath
310
+ execute_after_filters
311
+ end
318
312
  end
319
- end
320
313
 
321
- def require_no_user
322
- if current_user
323
- notify.success _("Welcome Back") + ", " + current_user.login, :persist => false
324
- execute_after_filters
325
- redirect_to dashboard_index_url
326
- return false
314
+ def require_no_user
315
+ if current_user
316
+ notify.success _("Welcome Back") + ", " + current_user.login, :persist => false
317
+ execute_after_filters
318
+ redirect_to dashboard_index_url
319
+ return false
320
+ end
327
321
  end
328
- end
329
322
 
330
- # render 403 page
331
- def render_403
332
- respond_to do |format|
333
- format.html { render :template => "katello/common/403", :layout => !request.xhr?, :status => 403 }
334
- format.atom { head 403 }
335
- format.xml { head 403 }
336
- format.json { head 403 }
323
+ # render 403 page
324
+ def render_403
325
+ respond_to do |format|
326
+ format.html { render :template => "katello/common/403", :layout => !request.xhr?, :status => 403 }
327
+ format.atom { head 403 }
328
+ format.xml { head 403 }
329
+ format.json { head 403 }
330
+ end
331
+ return false
337
332
  end
338
- return false
339
- end
340
333
 
341
- # render a 404 page
342
- def render_404(exception = nil)
343
- if exception
344
- logger.error _("Rendering 404:") + " #{exception.message}"
345
- end
346
- respond_to do |format|
347
- format.html { render :template => "katello/common/404", :layout => !request.xhr?, :status => 404 }
348
- format.atom { head 404 }
349
- format.xml { head 404 }
350
- format.json { head 404 }
334
+ # render a 404 page
335
+ def render_404(exception = nil)
336
+ if exception
337
+ logger.error _("Rendering 404:") + " #{exception.message}"
338
+ end
339
+ respond_to do |format|
340
+ format.html { render :template => "katello/common/404", :layout => !request.xhr?, :status => 404 }
341
+ format.atom { head 404 }
342
+ format.xml { head 404 }
343
+ format.json { head 404 }
344
+ end
345
+ User.current = nil
351
346
  end
352
- User.current = nil
353
- end
354
347
 
355
- # TODO: break up method
356
- # rubocop:disable MethodLength
357
-
358
- # render bad params to user
359
- # @overload render_bad_parameters()
360
- # render bad_parameters with `default_message` and status `400`
361
- # @overload render_bad_parameters(message)
362
- # render bad_parameters with `message` and status `400`
363
- # @param [String] message
364
- # @overload render_bad_parameters(error)
365
- # render bad_parameters with `error.message` and `error.status_code` if present
366
- # @param [Exception] error
367
- # @overload render_bad_parameters(error, message)
368
- # add `message` to overload `exception.message`
369
- # @param [String] message
370
- # @param [Exception] error
371
- def render_bad_parameters(*args)
372
- default_message = if request.xhr?
373
- _('Invalid parameters sent in the request for this operation. Please contact a system administrator.')
374
- else
375
- _('Invalid parameters sent. You may have mistyped the address. If you continue having trouble with this, please contact an Administrator.')
376
- end
377
-
378
- exception = args.find { |o| o.kind_of? Exception }
379
- message = args.find { |o| o.kind_of? String } || exception.try(:message) || default_message
380
-
381
- status = if exception && exception.respond_to?(:status_code)
382
- exception.status_code
383
- else
384
- 400
385
- end
386
-
387
- if exception
388
- log_exception exception
389
- notify.exception(message, exception)
390
- else
391
- notify.error message
392
- Rails.logger.warn message
393
- end
348
+ # TODO: break up method
349
+ # rubocop:disable MethodLength
350
+
351
+ # render bad params to user
352
+ # @overload render_bad_parameters()
353
+ # render bad_parameters with `default_message` and status `400`
354
+ # @overload render_bad_parameters(message)
355
+ # render bad_parameters with `message` and status `400`
356
+ # @param [String] message
357
+ # @overload render_bad_parameters(error)
358
+ # render bad_parameters with `error.message` and `error.status_code` if present
359
+ # @param [Exception] error
360
+ # @overload render_bad_parameters(error, message)
361
+ # add `message` to overload `exception.message`
362
+ # @param [String] message
363
+ # @param [Exception] error
364
+ def render_bad_parameters(*args)
365
+ default_message = if request.xhr?
366
+ _('Invalid parameters sent in the request for this operation. Please contact a system administrator.')
367
+ else
368
+ _('Invalid parameters sent. You may have mistyped the address. If you continue having trouble with this, please contact an Administrator.')
369
+ end
370
+
371
+ exception = args.find { |o| o.is_a? Exception }
372
+ message = args.find { |o| o.is_a? String } || exception.try(:message) || default_message
373
+
374
+ status = if exception && exception.respond_to?(:status_code)
375
+ exception.status_code
376
+ else
377
+ 400
378
+ end
379
+
380
+ if exception
381
+ log_exception exception
382
+ notify.exception(message, exception)
383
+ else
384
+ notify.error message
385
+ Rails.logger.warn message
386
+ end
394
387
 
395
- respond_to do |format|
396
- format.html do
397
- render :template => 'katello/common/400', :layout => !request.xhr?, :status => status,
398
- :locals => {:message => message}
388
+ respond_to do |format|
389
+ format.html do
390
+ render :template => 'katello/common/400', :layout => !request.xhr?, :status => status,
391
+ :locals => {:message => message}
392
+ end
393
+ format.atom { head exception.status_code }
394
+ format.xml { head exception.status_code }
395
+ format.json { head exception.status_code }
399
396
  end
400
- format.atom { head exception.status_code }
401
- format.xml { head exception.status_code }
402
- format.json { head exception.status_code }
397
+ User.current = nil
403
398
  end
404
- User.current = nil
405
- end
406
399
 
407
- # take care of 500 pages too
408
- def render_error(exception = nil)
409
- if exception
410
- logger.error _("Rendering 500:") + "#{exception.message}"
411
- notify.exception exception
412
- end
413
- respond_to do |format|
414
- format.html do
415
- render :template => "katello/common/500", :layout => "katello", :status => 500,
416
- :locals => {:error => exception}
400
+ # take care of 500 pages too
401
+ def render_error(exception = nil)
402
+ if exception
403
+ logger.error _("Rendering 500:") + "#{exception.message}"
404
+ notify.exception exception
405
+ end
406
+ respond_to do |format|
407
+ format.html do
408
+ render :template => "katello/common/500", :layout => "katello", :status => 500,
409
+ :locals => {:error => exception}
410
+ end
411
+ format.atom { head 500 }
412
+ format.xml { head 500 }
413
+ format.json { head 500 }
417
414
  end
418
- format.atom { head 500 }
419
- format.xml { head 500 }
420
- format.json { head 500 }
415
+ User.current = nil
421
416
  end
422
- User.current = nil
423
- end
424
417
 
425
- def requested_action
426
- unless controller_name.nil? || action_name.nil?
427
- controller_name + '___' + action_name
418
+ def requested_action
419
+ unless controller_name.nil? || action_name.nil?
420
+ controller_name + '___' + action_name
421
+ end
428
422
  end
429
- end
430
423
 
431
- # TODO: break up method
432
- # rubocop:disable MethodLength
433
- def setup_environment_selector(org, accessible)
434
- next_env = KTEnvironment.find(params[:next_env_id]) if params[:next_env_id]
424
+ # TODO: break up method
425
+ # rubocop:disable MethodLength
426
+ def setup_environment_selector(org, accessible)
427
+ next_env = KTEnvironment.find(params[:next_env_id]) if params[:next_env_id]
435
428
 
436
- @paths = []
437
- @paths = org.promotion_paths.collect{|tmp_path| [org.library] + tmp_path}
429
+ @paths = []
430
+ @paths = org.promotion_paths.collect { |tmp_path| [org.library] + tmp_path }
438
431
 
439
- # reject any paths that don't have accessible envs
440
- @paths.reject!{|path| (path & accessible).empty?}
432
+ # reject any paths that don't have accessible envs
433
+ @paths.reject! { |path| (path & accessible).empty? }
441
434
 
442
- @paths = [[org.library]] if @paths.empty?
435
+ @paths = [[org.library]] if @paths.empty?
443
436
 
444
- if @environment && !@environment.library?
445
- @paths.each do |path|
446
- path.each do |env|
447
- if @path = path
448
- return if env.id == @environment.id
437
+ if @environment && !@environment.library?
438
+ @paths.each do |path|
439
+ path.each do |env|
440
+ if @path = path
441
+ return if env.id == @environment.id
442
+ end
449
443
  end
450
444
  end
451
- end
452
- elsif next_env
453
- @paths.each do |path|
454
- path.each do |env|
455
- if @path = path
456
- return if env.id == next_env.id
445
+ elsif next_env
446
+ @paths.each do |path|
447
+ path.each do |env|
448
+ if @path = path
449
+ return if env.id == next_env.id
450
+ end
457
451
  end
458
452
  end
453
+ else
454
+ @path = @paths.first
455
+ @environment = @path.first
459
456
  end
460
- else
461
- @path = @paths.first
462
- @environment = @path.first
463
457
  end
464
- end
465
458
 
466
- def environment_path_element(perms_method = nil)
467
- lambda do |a_path|
468
- {:id => a_path.id,
469
- :name => a_path.name,
470
- :select => perms_method.nil? ? false : a_path.send(perms_method)}
459
+ def environment_path_element(perms_method = nil)
460
+ lambda do |a_path|
461
+ {:id => a_path.id,
462
+ :name => a_path.name,
463
+ :select => perms_method.nil? ? false : a_path.send(perms_method)}
464
+ end
471
465
  end
472
- end
473
466
 
474
- def library_path_element(perms = nil)
475
- environment_path_element(perms).call(current_organization.library)
476
- end
477
-
478
- def environment_paths(library, environment_path_element_generator)
479
- paths = current_organization.promotion_paths
480
- to_ret = []
481
- paths.each do |path|
482
- path = path.collect{ |e| environment_path_element_generator.call(e) }
483
- to_ret << [library] + path
467
+ def library_path_element(perms = nil)
468
+ if current_organization.library.send(perms)
469
+ environment_path_element(perms).call(current_organization.library)
470
+ end
484
471
  end
485
472
 
486
- if paths.empty?
487
- to_ret << [library]
488
- end
473
+ def environment_paths(library, environment_path_element_generator)
474
+ paths = current_organization.promotion_paths
475
+ to_ret = []
476
+ paths.each do |path|
477
+ path = path.select { |env| env.readable? }
478
+ path = path.collect { |env| environment_path_element_generator.call(env) if env.readable? }
489
479
 
490
- to_ret
491
- end
480
+ if library
481
+ to_ret << [library] + path
482
+ else
483
+ to_ret << path
484
+ end
485
+ end
492
486
 
493
- #verify if the specific object with the given id, matches a given search string
494
- def search_validate(obj_class, id, search, default = :name)
495
- if obj_class.respond_to?(:index)
496
- obj_class.index.refresh
497
- search = '*' if search.nil? || search == ''
498
- search = Util::Search.filter_input search
499
- query_options = {}
500
- query_options[:default_field] = default if default
487
+ if paths.empty? && library
488
+ to_ret << [library]
489
+ end
501
490
 
502
- results = obj_class.search do
503
- query { string search, query_options}
504
- filter :terms, :id => [id]
491
+ to_ret
492
+ end
493
+
494
+ #verify if the specific object with the given id, matches a given search string
495
+ def search_validate(obj_class, id, search, default = :name)
496
+ if obj_class.respond_to?(:index)
497
+ obj_class.index.refresh
498
+ search = '*' if search.nil? || search == ''
499
+ search = Util::Search.filter_input search
500
+ query_options = {}
501
+ query_options[:default_field] = default if default
502
+
503
+ results = obj_class.search do
504
+ query { string search, query_options }
505
+ filter :terms, :id => [id]
506
+ end
507
+ results.total > 0
505
508
  end
506
- results.total > 0
507
509
  end
508
- end
509
510
 
510
- # TODO: break up method
511
- # rubocop:disable MethodLength
511
+ # @param [Hash] search_options
512
+ # @option search_options :default_field
513
+ # The field that should be used by the search engine when a user performs
514
+ # a search without specifying field.
515
+ # @option search_options :filter
516
+ # Filter to apply to search. Array of hashes. Each key/value within the hash
517
+ # is OR'd, whereas each HASH itself is AND'd together
518
+ # @option search_options [true, false] :load whether or not to load the active record object (defaults to false)
519
+ def render_panel_direct(obj_class, panel_options, search, start, sort, search_options = {}) # rubocop:disable Metrics/MethodLength
520
+ filters = search_options[:filter] || []
521
+ load = search_options[:load] || false
522
+ all_rows = false
523
+ skip_render = search_options[:skip_render] || false
524
+ page_size = search_options[:page_size] || current_user.page_size
525
+
526
+ start ||= 0
527
+
528
+ if search.nil? || search == ''
529
+ all_rows = true
530
+ elsif search_options[:simple_query] && !Katello.config.simple_search_tokens.any? { |s| search.downcase.match(s) }
531
+ search = search_options[:simple_query]
532
+ end
533
+ #search = Util::Search::filter_input search
512
534
 
513
- # @param [Hash] search_options
514
- # @option search_options :default_field
515
- # The field that should be used by the search engine when a user performs
516
- # a search without specifying field.
517
- # @option search_options :filter
518
- # Filter to apply to search. Array of hashes. Each key/value within the hash
519
- # is OR'd, whereas each HASH itself is AND'd together
520
- # @option search_options [true, false] :load whether or not to load the active record object (defaults to false)
521
- def render_panel_direct(obj_class, panel_options, search, start, sort, search_options = {})
535
+ # set the query default field, if one was provided.
536
+ query_options = {}
537
+ query_options[:default_field] = search_options[:default_field] unless search_options[:default_field].blank?
522
538
 
523
- filters = search_options[:filter] || []
524
- load = search_options[:load] || false
525
- all_rows = false
526
- skip_render = search_options[:skip_render] || false
527
- page_size = search_options[:page_size] || current_user.page_size
539
+ panel_options[:accessor] ||= "id"
540
+ panel_options[:columns] = panel_options[:col]
541
+ panel_options[:initial_action] ||= :edit
528
542
 
529
- start ||= 0
543
+ @items = []
530
544
 
531
- if search.nil? || search == ''
532
- all_rows = true
533
- elsif search_options[:simple_query] && !Katello.config.simple_search_tokens.any?{|s| search.downcase.match(s)}
534
- search = search_options[:simple_query]
535
- end
536
- #search = Util::Search::filter_input search
545
+ begin
546
+ results = obj_class.search(:load => false) do
547
+ query do
548
+ if all_rows
549
+ all
550
+ else
551
+ string search, query_options
552
+ end
553
+ end
537
554
 
538
- # set the query default field, if one was provided.
539
- query_options = {}
540
- query_options[:default_field] = search_options[:default_field] unless search_options[:default_field].blank?
555
+ sort { by sort[0], sort[1].to_s.downcase } if all_rows
541
556
 
542
- panel_options[:accessor] ||= "id"
543
- panel_options[:columns] = panel_options[:col]
544
- panel_options[:initial_action] ||= :edit
557
+ filters = [filters] unless filters.is_a?(Array)
558
+ filters.each { |i| filter :terms, i } unless filters.empty?
545
559
 
546
- @items = []
560
+ size page_size if page_size > 0
561
+ from start
562
+ end
547
563
 
548
- begin
549
- results = obj_class.search(:load => false) do
550
- query do
551
- if all_rows
552
- all
553
- else
554
- string search, query_options
564
+ if load
565
+ @items = obj_class.where(:id => results.collect { |r| r.id })
566
+ #set total since @items will be just an array
567
+ panel_options[:total_count] = results.empty? ? 0 : results.total
568
+ if @items.length != results.length
569
+ Rails.logger.error("Failed to retrieve all #{obj_class} search results " \
570
+ "(#{@items.length}/#{results.length} found.)")
555
571
  end
572
+ else
573
+ @items = results
556
574
  end
557
575
 
558
- sort { by sort[0], sort[1].to_s.downcase } unless !all_rows
576
+ #get total count
577
+ total = obj_class.search do
578
+ query do
579
+ all
580
+ end
581
+ filters.each { |i| filter :terms, i } unless filters.empty?
582
+ size 1
583
+ from 0
584
+ end
585
+ total_count = total.total
559
586
 
560
- filters = [filters] unless filters.is_a?(Array)
561
- filters.each { |i| filter :terms, i } if !filters.empty?
587
+ rescue Tire::Search::SearchRequestFailed => e
588
+ Rails.logger.error(e.class)
562
589
 
563
- size page_size if page_size > 0
564
- from start
590
+ total_count = 0
591
+ panel_options[:total_results] = 0
565
592
  end
593
+ render_panel_results(@items, total_count, panel_options) unless skip_render
594
+ return @items
595
+ end
566
596
 
567
- if load
568
- @items = obj_class.where(:id => results.collect{|r| r.id})
569
- #set total since @items will be just an array
570
- panel_options[:total_count] = results.empty? ? 0 : results.total
571
- if @items.length != results.length
572
- Rails.logger.error("Failed to retrieve all #{obj_class} search results " +
573
- "(#{@items.length}/#{results.length} found.)")
574
- end
575
- else
576
- @items = results
577
- end
597
+ def render_panel_results(results, total, options)
598
+ options[:total_count] ||= results.empty? ? 0 : results.total
599
+ options[:total_results] = total
600
+ options[:collection] = results
601
+ options[:columns] = options[:col]
602
+ @items = results
578
603
 
579
- #get total count
580
- total = obj_class.search do
581
- query do
582
- all
583
- end
584
- filters.each { |i| filter :terms, i } if !filters.empty?
585
- size 1
586
- from 0
604
+ if options[:list_partial]
605
+ rendered_html = render_to_string(:partial => options[:list_partial], :locals => options)
606
+ elsif options[:render_list_proc]
607
+ rendered_html = options[:render_list_proc].call(@items, options)
608
+ else
609
+ rendered_html = render_to_string(:partial => "katello/common/list_items", :locals => options)
587
610
  end
588
- total_count = total.total
589
611
 
590
- rescue Tire::Search::SearchRequestFailed => e
591
- Rails.logger.error(e.class)
612
+ render :json => {:html => rendered_html,
613
+ :results_count => options[:total_count],
614
+ :total_items => options[:total_results],
615
+ :current_items => options[:collection].length}
592
616
 
593
- total_count = 0
594
- panel_options[:total_results] = 0
617
+ retain_search_history unless options[:no_search_history]
595
618
  end
596
- render_panel_results(@items, total_count, panel_options) if !skip_render
597
- return @items
598
- end
599
619
 
600
- def render_panel_results(results, total, options)
601
- options[:total_count] ||= results.empty? ? 0 : results.total
602
- options[:total_results] = total
603
- options[:collection] = results
604
- options[:columns] = options[:col]
605
- @items = results
620
+ # TODO: break up method
621
+ # rubocop:disable MethodLength
622
+ def render_panel_items(items, options, search, start)
623
+ @items = items
606
624
 
607
- if options[:list_partial]
608
- rendered_html = render_to_string(:partial => options[:list_partial], :locals => options)
609
- elsif options[:render_list_proc]
610
- rendered_html = options[:render_list_proc].call(@items, options)
611
- else
612
- rendered_html = render_to_string(:partial => "katello/common/list_items", :locals => options)
613
- end
625
+ options[:accessor] ||= "id"
626
+ options[:columns] = options[:col]
627
+ options[:initial_action] ||= :edit
614
628
 
615
- render :json => {:html => rendered_html,
616
- :results_count => options[:total_count],
617
- :total_items => options[:total_results],
618
- :current_items => options[:collection].length}
629
+ if start == "0"
630
+ options[:total_count] = @items.count
631
+ end
619
632
 
620
- retain_search_history unless options[:no_search_history]
633
+ # the caller may provide items either based on active record or a list within an array... in the case of an
634
+ # array, it is assumed to be based upon results from a pulp/candlepin request, in which case search is
635
+ # not currently supported
636
+ if @items.is_a? ActiveRecord::Relation
637
+ items_searched = @items.search_for(search)
638
+ items_offset = items_searched.limit(current_user.page_size).offset(start)
639
+ else
640
+ items_searched = @items
641
+ items_offset = items_searched[start.to_i...start.to_i + current_user.page_size]
642
+ end
621
643
 
622
- end
644
+ options[:total_results] = items_searched.count
645
+ options[:collection] ||= items_offset
623
646
 
624
- # TODO: break up method
625
- # rubocop:disable MethodLength
626
- def render_panel_items(items, options, search, start)
627
- @items = items
647
+ if options[:list_partial]
648
+ rendered_html = render_to_string(:partial => options[:list_partial], :locals => options)
649
+ else
650
+ rendered_html = render_to_string(:partial => "katello/common/list_items", :locals => options)
651
+ end
628
652
 
629
- options[:accessor] ||= "id"
630
- options[:columns] = options[:col]
631
- options[:initial_action] ||= :edit
653
+ render :json => {:html => rendered_html,
654
+ :results_count => options[:total_count],
655
+ :total_items => options[:total_results],
656
+ :current_items => options[:collection].length}
632
657
 
633
- if start == "0"
634
- options[:total_count] = @items.count
658
+ retain_search_history
635
659
  end
636
660
 
637
- # the caller may provide items either based on active record or a list within an array... in the case of an
638
- # array, it is assumed to be based upon results from a pulp/candlepin request, in which case search is
639
- # not currently supported
640
- if @items.kind_of? ActiveRecord::Relation
641
- items_searched = @items.search_for(search)
642
- items_offset = items_searched.limit(current_user.page_size).offset(start)
643
- else
644
- items_searched = @items
645
- items_offset = items_searched[start.to_i...start.to_i + current_user.page_size]
661
+ def execute_after_filters
662
+ flash_to_headers
646
663
  end
647
664
 
648
- options[:total_results] = items_searched.count
649
- options[:collection] ||= items_offset
650
-
651
- if options[:list_partial]
652
- rendered_html = render_to_string(:partial => options[:list_partial], :locals => options)
653
- else
654
- rendered_html = render_to_string(:partial => "katello/common/list_items", :locals => options)
665
+ def first_env_in_path(accessible_envs, include_library = false, organization = current_organization)
666
+ return organization.library if include_library && accessible_envs.member?(organization.library)
667
+ organization.promotion_paths.each do |path|
668
+ path.each do |env|
669
+ if accessible_envs.member?(env)
670
+ return env
671
+ end
672
+ end
673
+ end
674
+ nil
655
675
  end
656
676
 
657
- render :json => {:html => rendered_html,
658
- :results_count => options[:total_count],
659
- :total_items => options[:total_results],
660
- :current_items => options[:collection].length}
661
-
662
- retain_search_history
663
- end
664
-
665
- def execute_after_filters
666
- flash_to_headers
667
- end
668
-
669
- def first_env_in_path(accessible_envs, include_library = false, organization = current_organization)
670
- return organization.library if include_library && accessible_envs.member?(organization.library)
671
- organization.promotion_paths.each do |path|
672
- path.each do |env|
673
- if accessible_envs.member?(env)
674
- return env
677
+ def execute_rescue(exception, &renderer)
678
+ log_exception exception
679
+ if session[:user]
680
+ User.current = User.find(session[:user])
681
+ renderer.call(exception)
682
+ User.current = nil
683
+ execute_after_filters
684
+ return false
685
+ else
686
+ notify.warning _("You must be logged in to access that page.")
687
+ execute_after_filters
688
+ if redirect_to main_app.login_users_path
689
+ return false
675
690
  end
676
691
  end
677
692
  end
678
- nil
679
- end
680
693
 
681
- def execute_rescue(exception, &renderer)
682
- log_exception exception
683
- if session[:user]
684
- User.current = User.find(session[:user])
685
- renderer.call(exception)
686
- User.current = nil
694
+ def org_not_found_error
687
695
  execute_after_filters
688
- return false
689
- else
690
- notify.warning _("You must be logged in to access that page.")
691
- execute_after_filters
692
- if redirect_to main_app.login_users_path
696
+ logout
697
+ message = _("Your current organization is no longer valid. It is possible that either the organization has been deleted or your permissions revoked, please log back in to continue.")
698
+ notify.warning message
699
+ if redirect_to new_user_session_url
693
700
  return false
694
701
  end
695
702
  end
696
- end
697
703
 
698
- def org_not_found_error
699
- execute_after_filters
700
- logout
701
- message = _("Your current organization is no longer valid. It is possible that either the organization has been deleted or your permissions revoked, please log back in to continue.")
702
- notify.warning message
703
- if redirect_to new_user_session_url
704
- return false
704
+ def log_exception(exception, level = :error)
705
+ logger.send level, "#{exception} (#{exception.class})\n#{exception.backtrace.join("\n")}" if exception
705
706
  end
706
- end
707
-
708
- def log_exception(exception, level = :error)
709
- logger.send level, "#{exception} (#{exception.class})\n#{exception.backtrace.join("\n")}" if exception
710
- end
711
707
 
712
- # Parse the input provided and return the value of displayMessage. If displayMessage is not available, return "".
713
- # (Note: this can be used to pull the displayMessage from a Candlepin exception.)
714
- # This assumes that the input follows a syntax similar to:
715
- # "{\"displayMessage\":\"Import is older than existing data\"}"
716
- def self.parse_display_message(input)
717
- unless input.nil?
718
- if input.include? 'displayMessage'
719
- return JSON.parse(input)['displayMessage']
708
+ # Parse the input provided and return the value of displayMessage. If displayMessage is not available, return "".
709
+ # (Note: this can be used to pull the displayMessage from a Candlepin exception.)
710
+ # This assumes that the input follows a syntax similar to:
711
+ # "{\"displayMessage\":\"Import is older than existing data\"}"
712
+ def self.parse_display_message(input)
713
+ unless input.nil?
714
+ if input.include? 'displayMessage'
715
+ return JSON.parse(input)['displayMessage']
716
+ end
720
717
  end
718
+ input
721
719
  end
722
- input
723
- end
724
720
 
725
- def default_notify_options
726
- {:organization => current_organization}
727
- end
721
+ def default_notify_options
722
+ {:organization => current_organization}
723
+ end
728
724
 
729
- def clear_katello_thread
730
- [:user, :organization, :location].each do |key|
731
- Thread.current[key] = nil
725
+ def clear_katello_thread
726
+ [:user, :organization, :location].each do |key|
727
+ Thread.current[key] = nil
728
+ end
732
729
  end
733
730
  end
734
-
735
- end
736
731
  end