katello 3.5.2 → 3.6.0.rc1
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.
- checksums.yaml +4 -4
- data/app/assets/javascripts/katello/sync_management/sync_management.js +5 -2
- data/app/controllers/katello/api/rhsm/candlepin_dynflow_proxy_controller.rb +2 -0
- data/app/controllers/katello/api/rhsm/candlepin_proxies_controller.rb +35 -16
- data/app/controllers/katello/api/v2/activation_keys_controller.rb +2 -2
- data/app/controllers/katello/api/v2/content_uploads_controller.rb +2 -2
- data/app/controllers/katello/api/v2/content_view_components_controller.rb +1 -0
- data/app/controllers/katello/api/v2/content_view_filters_controller.rb +1 -1
- data/app/controllers/katello/api/v2/content_view_histories_controller.rb +1 -1
- data/app/controllers/katello/api/v2/content_view_puppet_modules_controller.rb +1 -1
- data/app/controllers/katello/api/v2/content_view_versions_controller.rb +1 -1
- data/app/controllers/katello/api/v2/content_views_controller.rb +3 -3
- data/app/controllers/katello/api/v2/debs_controller.rb +19 -0
- data/app/controllers/katello/api/v2/docker_manifest_lists_controller.rb +20 -0
- data/app/controllers/katello/api/v2/environments_controller.rb +1 -1
- data/app/controllers/katello/api/v2/errata_controller.rb +24 -0
- data/app/controllers/katello/api/v2/file_units_controller.rb +4 -1
- data/app/controllers/katello/api/v2/gpg_keys_controller.rb +10 -4
- data/app/controllers/katello/api/v2/host_autocomplete_controller.rb +0 -1
- data/app/controllers/katello/api/v2/host_collections_controller.rb +1 -1
- data/app/controllers/katello/api/v2/host_subscriptions_controller.rb +1 -1
- data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +13 -5
- data/app/controllers/katello/api/v2/organizations_controller.rb +2 -1
- data/app/controllers/katello/api/v2/package_groups_controller.rb +3 -2
- data/app/controllers/katello/api/v2/products_bulk_actions_controller.rb +1 -1
- data/app/controllers/katello/api/v2/products_controller.rb +3 -3
- data/app/controllers/katello/api/v2/repositories_controller.rb +28 -12
- data/app/controllers/katello/api/v2/repository_sets_controller.rb +21 -13
- data/app/controllers/katello/api/v2/root_controller.rb +0 -1
- data/app/controllers/katello/api/v2/subscriptions_controller.rb +1 -19
- data/app/controllers/katello/api/v2/sync_plans_controller.rb +1 -1
- data/app/controllers/katello/application_controller.rb +0 -18
- data/app/controllers/katello/concerns/api/v2/hosts_controller_extensions.rb +12 -13
- data/app/controllers/katello/concerns/api/v2/repository_content_controller.rb +17 -13
- data/app/controllers/katello/concerns/containers/steps_controller_extensions.rb +39 -37
- data/app/controllers/katello/concerns/hosts_controller_extensions.rb +14 -14
- data/app/controllers/katello/concerns/organizations_controller_extensions.rb +34 -33
- data/app/controllers/katello/concerns/smart_proxies_controller_extensions.rb +18 -17
- data/app/controllers/katello/products_controller.rb +1 -1
- data/app/controllers/katello/providers_controller.rb +11 -0
- data/app/controllers/katello/react_controller.rb +9 -0
- data/app/controllers/katello/sync_management_controller.rb +1 -1
- data/app/helpers/katello/concerns/hosts_and_hostgroups_helper_extensions.rb +10 -9
- data/app/helpers/katello/concerns/settings_helper_extensions.rb +42 -33
- data/app/helpers/katello/concerns/smart_proxy_helper_extensions.rb +1 -1
- data/app/helpers/katello/hosts_and_hostgroups_helper.rb +1 -3
- data/app/helpers/katello/providers_helper.rb +2 -5
- data/app/lib/actions/candlepin/listen_on_candlepin_events.rb +5 -15
- data/app/lib/actions/katello/capsule_content/sync.rb +8 -0
- data/app/lib/actions/katello/content_view/incremental_updates.rb +1 -1
- data/app/lib/actions/katello/content_view_puppet_environment/clone.rb +2 -2
- data/app/lib/actions/katello/content_view_version/republish_repositories.rb +2 -5
- data/app/lib/actions/katello/event_queue/monitor.rb +10 -11
- data/app/lib/actions/katello/event_queue/suspended_action.rb +1 -1
- data/app/lib/actions/katello/host/register.rb +1 -1
- data/app/lib/actions/katello/host/update.rb +1 -3
- data/app/lib/actions/katello/organization/manifest_refresh.rb +1 -5
- data/app/lib/actions/katello/product/content_create.rb +11 -1
- data/app/lib/actions/katello/product/content_destroy.rb +8 -0
- data/app/lib/actions/katello/product/destroy.rb +2 -2
- data/app/lib/actions/katello/product/update.rb +0 -3
- data/app/lib/actions/katello/repository/bulk_metadata_generate.rb +15 -0
- data/app/lib/actions/katello/repository/check_matching_content.rb +10 -3
- data/app/lib/actions/katello/repository/clear.rb +4 -1
- data/app/lib/actions/katello/repository/clone_deb_content.rb +70 -0
- data/app/lib/actions/katello/repository/clone_to_environment.rb +4 -1
- data/app/lib/actions/katello/repository/clone_to_version.rb +19 -10
- data/app/lib/actions/katello/repository/clone_yum_content.rb +2 -0
- data/app/lib/actions/katello/repository/clone_yum_metadata.rb +1 -2
- data/app/lib/actions/katello/repository/create.rb +6 -2
- data/app/lib/actions/katello/repository/destroy.rb +1 -1
- data/app/lib/actions/katello/repository/export.rb +15 -0
- data/app/lib/actions/katello/repository/fetch_pxe_files.rb +49 -0
- data/app/lib/actions/katello/repository/filtered_index_content.rb +2 -0
- data/app/lib/actions/katello/repository/metadata_generate.rb +5 -1
- data/app/lib/actions/katello/repository/remove_content.rb +2 -0
- data/app/lib/actions/katello/repository/sync.rb +5 -6
- data/app/lib/actions/katello/repository/update.rb +14 -4
- data/app/lib/actions/katello/repository/upload_package_group.rb +0 -1
- data/app/lib/actions/katello/repository_set/disable_repository.rb +7 -7
- data/app/lib/actions/katello/repository_set/enable_repository.rb +17 -7
- data/app/lib/actions/katello/repository_set/scan_cdn.rb +8 -10
- data/app/lib/actions/pulp/consumer/abstract_content_action.rb +1 -1
- data/app/lib/actions/pulp/repository/copy_deb.rb +15 -0
- data/app/lib/actions/pulp/repository/copy_deb_component.rb +11 -0
- data/app/lib/actions/pulp/repository/copy_deb_release.rb +11 -0
- data/app/lib/actions/pulp/repository/copy_srpm.rb +16 -0
- data/app/lib/actions/pulp/repository/create.rb +38 -3
- data/app/lib/actions/pulp/repository/presenters/deb_presenter.rb +101 -0
- data/app/lib/actions/pulp/repository/remove_deb.rb +15 -0
- data/app/lib/actions/pulp/repository/remove_docker_blob.rb +11 -0
- data/app/lib/actions/pulp/repository/remove_docker_manifest_list.rb +11 -0
- data/app/lib/actions/pulp/repository/remove_docker_tag.rb +11 -0
- data/app/lib/actions/pulp/repository/sync.rb +2 -0
- data/app/lib/katello/api/v2/error_handling.rb +1 -1
- data/app/lib/katello/capsule_content.rb +1 -1
- data/app/lib/katello/concerns/renderer_extensions.rb +12 -10
- data/app/lib/katello/errors.rb +0 -4
- data/app/lib/katello/resources/candlepin.rb +2 -3
- data/app/lib/katello/util/cdn_var_substitutor.rb +2 -2
- data/app/lib/katello/util/docker_manifest_clause_generator.rb +1 -1
- data/app/lib/katello/util/package_clause_generator.rb +1 -1
- data/app/lib/katello/util/support.rb +1 -1
- data/app/models/katello/activation_key.rb +1 -1
- data/app/models/katello/authorization/content_view_history.rb +1 -0
- data/app/models/katello/authorization/content_view_version.rb +1 -1
- data/app/models/katello/authorization/pool.rb +2 -0
- data/app/models/katello/authorization/repository.rb +2 -0
- data/app/models/katello/candlepin/docker_repository_mapper.rb +77 -0
- data/app/models/katello/candlepin/repository_mapper.rb +143 -0
- data/app/models/katello/concerns/container_extensions.rb +14 -12
- data/app/models/katello/concerns/content_facet_host_extensions.rb +2 -2
- data/app/models/katello/concerns/docker_container_wizard_state_extensions.rb +6 -4
- data/app/models/katello/concerns/docker_container_wizard_state_image_extensions.rb +8 -6
- data/app/models/katello/concerns/host_managed_extensions.rb +2 -13
- data/app/models/katello/concerns/location_extensions.rb +5 -1
- data/app/models/katello/concerns/organization_extensions.rb +22 -1
- data/app/models/katello/concerns/pulp_database_unit.rb +26 -5
- data/app/models/katello/concerns/redhat_extensions.rb +22 -21
- data/app/models/katello/concerns/smart_proxy_extensions.rb +11 -9
- data/app/models/katello/concerns/subscription_facet_host_extensions.rb +8 -7
- data/app/models/katello/content.rb +26 -0
- data/app/models/katello/content_view.rb +18 -5
- data/app/models/katello/content_view_component.rb +1 -1
- data/app/models/katello/content_view_docker_filter.rb +15 -6
- data/app/models/katello/content_view_filter.rb +8 -2
- data/app/models/katello/content_view_puppet_environment.rb +12 -0
- data/app/models/katello/content_view_repository.rb +2 -1
- data/app/models/katello/content_view_version.rb +57 -15
- data/app/models/katello/deb.rb +50 -0
- data/app/models/katello/docker_manifest.rb +14 -8
- data/app/models/katello/docker_manifest_list.rb +39 -0
- data/app/models/katello/docker_manifest_list_manifest.rb +6 -0
- data/app/models/katello/docker_meta_tag.rb +3 -3
- data/app/models/katello/docker_tag.rb +30 -10
- data/app/models/katello/errata_status.rb +1 -1
- data/app/models/katello/erratum.rb +3 -4
- data/app/models/katello/file_unit.rb +2 -2
- data/app/models/katello/glue/candlepin/activation_key.rb +1 -1
- data/app/models/katello/glue/candlepin/content.rb +9 -34
- data/app/models/katello/glue/candlepin/owner.rb +0 -32
- data/app/models/katello/glue/candlepin/pool.rb +2 -3
- data/app/models/katello/glue/candlepin/product.rb +34 -52
- data/app/models/katello/glue/candlepin/repository.rb +31 -0
- data/app/models/katello/glue/provider.rb +16 -19
- data/app/models/katello/glue/pulp/repo.rb +89 -16
- data/app/models/katello/host/content_facet.rb +6 -6
- data/app/models/katello/host/info_provider.rb +2 -2
- data/app/models/katello/host/subscription_facet.rb +4 -4
- data/app/models/katello/kt_environment.rb +6 -2
- data/app/models/katello/package_group.rb +1 -1
- data/app/models/katello/pool.rb +13 -12
- data/app/models/katello/product.rb +12 -6
- data/app/models/katello/product_content.rb +36 -0
- data/app/models/katello/provider.rb +1 -1
- data/app/models/katello/puppet_module.rb +5 -5
- data/app/models/katello/repository.rb +103 -11
- data/app/models/katello/repository_deb.rb +7 -0
- data/app/models/katello/repository_docker_manifest_list.rb +7 -0
- data/app/models/katello/repository_srpm.rb +7 -0
- data/app/models/katello/rhsm_fact_importer.rb +2 -2
- data/app/models/katello/rhsm_fact_parser.rb +1 -1
- data/app/models/katello/rpm.rb +5 -5
- data/app/models/katello/srpm.rb +40 -0
- data/app/models/katello/subscription.rb +3 -2
- data/app/models/katello/sync_plan.rb +8 -5
- data/app/models/setting/content.rb +5 -3
- data/app/services/katello/product_content_finder.rb +1 -1
- data/app/services/katello/pulp/deb.rb +46 -0
- data/app/services/katello/pulp/docker_manifest_list.rb +7 -0
- data/app/services/katello/pulp/server.rb +4 -12
- data/app/services/katello/pulp/srpm.rb +17 -0
- data/app/views/foreman/unattended/finish-katello.erb +4 -4
- data/app/views/foreman/unattended/kickstart-katello-atomic.erb +3 -3
- data/app/views/foreman/unattended/kickstart-katello.erb +5 -9
- data/app/views/foreman/unattended/snippets/_subscription_manager_registration.erb +3 -3
- data/app/views/foreman/unattended/userdata-katello.erb +8 -8
- data/app/views/katello/api/v2/activation_keys/product_content.json.rabl +1 -2
- data/app/views/katello/api/v2/content_facet/base.json.rabl +6 -1
- data/app/views/katello/api/v2/content_view_versions/base.json.rabl +3 -0
- data/app/views/katello/api/v2/content_views/show.json.rabl +12 -0
- data/app/views/katello/api/v2/debs/base.json.rabl +10 -0
- data/app/views/katello/api/v2/debs/index.json.rabl +7 -0
- data/app/views/katello/api/v2/debs/show.json.rabl +3 -0
- data/app/views/katello/api/v2/docker_manifest_lists/index.json.rabl +7 -0
- data/app/views/katello/api/v2/docker_manifest_lists/show.json.rabl +12 -0
- data/app/views/katello/api/v2/docker_manifests/compare.json.rabl +10 -0
- data/app/views/katello/api/v2/docker_manifests/show.json.rabl +5 -1
- data/app/views/katello/api/v2/docker_tags/_base.json.rabl +4 -4
- data/app/views/katello/api/v2/docker_tags/compare.json.rabl +10 -0
- data/app/views/katello/api/v2/docker_tags/show.json.rabl +1 -1
- data/app/views/katello/api/v2/errata/_counts.json.rabl +1 -0
- data/app/views/katello/api/v2/errata/available_errata.rabl +7 -0
- data/app/views/katello/api/v2/file_units/compare.json.rabl +10 -0
- data/app/views/katello/api/v2/host_subscriptions/product_content.json.rabl +1 -2
- data/app/views/katello/api/v2/hostgroups_extensions/show.json.rabl +2 -1
- data/app/views/katello/api/v2/hosts_bulk_actions/applicable_errata.json.rabl +7 -0
- data/app/views/katello/api/v2/layouts/resource.json.erb +1 -1
- data/app/views/katello/api/v2/ostree_branches/compare.json.rabl +10 -0
- data/app/views/katello/api/v2/package_groups/compare.json.rabl +10 -0
- data/app/views/katello/api/v2/packages/compare.json.rabl +10 -0
- data/app/views/katello/api/v2/products/_product_content.json.rabl +9 -0
- data/app/views/katello/api/v2/products/base.json.rabl +3 -1
- data/app/views/katello/api/v2/products/show.json.rabl +6 -2
- data/app/views/katello/api/v2/puppet_modules/compare.json.rabl +10 -0
- data/app/views/katello/api/v2/repositories/base.json.rabl +5 -1
- data/app/views/katello/api/v2/repositories/show.json.rabl +2 -0
- data/app/views/katello/api/v2/repository_sets/show.json.rabl +15 -3
- data/app/views/katello/layouts/react.html.erb +15 -0
- data/app/views/katello/providers/redhat/_repo_sets.html.erb +5 -5
- data/app/views/katello/sync_management/index.html.erb +4 -0
- data/app/views/smart_proxies/pulp_status.html.erb +6 -6
- data/config/katello.yaml.example +0 -4
- data/config/routes.rb +3 -0
- data/config/routes/api/v2.rb +30 -3
- data/config/routes/overrides.rb +1 -0
- data/db/migrate/20131014135042_katello_tables.rb +1 -1
- data/db/migrate/20131014225132_add_users_fields.rb +1 -1
- data/db/migrate/20131016124255_add_foreign_keys_engine.rb +1 -1
- data/db/migrate/20131120225132_add_organization_fields.rb +1 -1
- data/db/migrate/20131216212502_add_quantity_to_katello_key_pools.rb +1 -1
- data/db/migrate/20131216212621_add_cp_id_to_katello_activation_keys.rb +1 -1
- data/db/migrate/20131218174203_drop_katello_key_pools_table.rb +1 -1
- data/db/migrate/20140110000001_update_environments_add_katello_id.rb +1 -1
- data/db/migrate/20140117160939_refactor_content_views.rb +1 -1
- data/db/migrate/20140206200439_create_content_view_puppet_modules.rb +1 -1
- data/db/migrate/20140212131812_create_content_view_package_filter_rules.rb +1 -1
- data/db/migrate/20140212143454_create_content_view_package_group_filter_rules.rb +1 -1
- data/db/migrate/20140212143642_create_content_view_erratum_filter_rules.rb +1 -1
- data/db/migrate/20140217145303_remove_changeset.rb +1 -1
- data/db/migrate/20140217160132_create_content_view_history.rb +1 -1
- data/db/migrate/20140222022712_remove_provider_discovery.rb +1 -1
- data/db/migrate/20140305101813_allow_null_for_repository_content_id.rb +1 -1
- data/db/migrate/20140306132108_create_content_view_puppet_environments.rb +1 -1
- data/db/migrate/20140310102051_repository_add_checksum_type.rb +1 -1
- data/db/migrate/20140318174203_drop_cdn_import_success_column.rb +1 -1
- data/db/migrate/20140325185413_create_content_view_foreign_keys.rb +1 -1
- data/db/migrate/20140404122011_drop_repositories_enabled_column.rb +1 -1
- data/db/migrate/20140411134235_update_content_view_description_type.rb +1 -1
- data/db/migrate/20140414214152_allow_null_content_view_to_activation_key.rb +1 -1
- data/db/migrate/20140418124032_add_next_version_to_katello_content_views.rb +1 -1
- data/db/migrate/20140422000001_update_products_add_organization.rb +1 -1
- data/db/migrate/20140423191446_add_anonymous_providers_to_orgs.rb +1 -1
- data/db/migrate/20140425155126_add_host_id_to_system.rb +1 -1
- data/db/migrate/20140429193743_add_release_version_to_activation_keys.rb +1 -1
- data/db/migrate/20140502164009_rename_system_groups_to_host_collections.rb +1 -1
- data/db/migrate/20140502174412_update_host_collections_foreign_keys.rb +1 -1
- data/db/migrate/20140514165842_create_capsule_lifecycle_environments.rb +1 -1
- data/db/migrate/20140531160506_package_filter_add_original_packages.rb +1 -1
- data/db/migrate/20140610083129_add_pulp_proxy_to_host.rb +1 -1
- data/db/migrate/20140610154745_content_view_puppet_environment_id.rb +1 -1
- data/db/migrate/20140610170142_add_uuid_to_content_view_package_group_filter_rule.rb +1 -1
- data/db/migrate/20140617100300_add_description_to_content_view_filter_rules.rb +1 -1
- data/db/migrate/20140623103442_drop_taxonomies_owner_auto_attach_all_systems_task_id_column.rb +1 -1
- data/db/migrate/20140624183938_add_foreign_keys_for_organizations.rb +1 -1
- data/db/migrate/20140624184401_remove_label_from_activation_key.rb +1 -1
- data/db/migrate/20140626055258_add_missing_foreign_keys.rb +1 -1
- data/db/migrate/20140626204657_add_unlimited_to_activation_keys.rb +1 -1
- data/db/migrate/20140626204902_add_unlimited_to_host_collection.rb +1 -1
- data/db/migrate/20140707203534_location_add_katello_default.rb +1 -1
- data/db/migrate/20140709150428_remove_deletion_task_id_from_taxonomies.rb +1 -1
- data/db/migrate/20140716211853_repo_rename_feed_to_url.rb +1 -1
- data/db/migrate/20140807175457_remove_hidden_column_from_user.rb +1 -1
- data/db/migrate/20140811141742_remove_delayed_jobs.rb +1 -1
- data/db/migrate/20140821084214_add_sync_plan_enabled_to_sync_plan.rb +1 -1
- data/db/migrate/20140928210618_add_description_to_content_view_versions.rb +1 -1
- data/db/migrate/20140930170628_add_errata.rb +1 -1
- data/db/migrate/20141001170628_add_system_repository.rb +1 -1
- data/db/migrate/20141003210742_add_docker_container_registry_url_to_providers.rb +1 -1
- data/db/migrate/20141015173220_add_docker_image_fields.rb +1 -1
- data/db/migrate/20141031150814_add_tag_repository_id_index.rb +1 -1
- data/db/migrate/20141112180709_add_auto_attach_to_activation_keys.rb +1 -1
- data/db/migrate/20141124182205_content_view_version_add_minor.rb +1 -1
- data/db/migrate/20141203123206_add_timestamps_to_repository_join_tables.rb +1 -1
- data/db/migrate/20141204203609_add_default_value_to_auto_attach.rb +1 -1
- data/db/migrate/20141209103005_disown_foreman_templates.rb +1 -1
- data/db/migrate/20141210173220_create_docker_tables.rb +1 -1
- data/db/migrate/20141215213720_track_version_components.rb +1 -1
- data/db/migrate/20141222151001_add_host_content_view_environment.rb +1 -1
- data/db/migrate/20150109012657_add_capsule_id_to_container.rb +1 -1
- data/db/migrate/20150114225023_add_upstream_name_to_repository.rb +1 -1
- data/db/migrate/20150119153452_update_promote_errata_email_description.rb +1 -1
- data/db/migrate/20150224083608_remove_docker_registry_url.rb +1 -1
- data/db/migrate/20150227213850_change_descriptions_to_text_fields.rb +1 -1
- data/db/migrate/20150423134004_add_content_host_id_to_smart_proxy.rb +1 -1
- data/db/migrate/20150505180030_change_errata_timestamps_to_dates.rb +1 -1
- data/db/migrate/20150507131145_update_composite_default_for_content_view.rb +1 -1
- data/db/migrate/20150513034751_add_ostree_branches.rb +1 -1
- data/db/migrate/20150602153753_remove_help_tips.rb +1 -1
- data/db/migrate/20150602153754_remove_search_histories.rb +1 -1
- data/db/migrate/20150602153755_remove_search_favorites.rb +1 -1
- data/db/migrate/20150602153756_remove_user_notices.rb +1 -1
- data/db/migrate/20150602153757_remove_notices.rb +1 -1
- data/db/migrate/20150603045418_remove_user_fields.rb +1 -1
- data/db/migrate/20150606021722_create_puppet_modules.rb +1 -1
- data/db/migrate/20150611140455_remove_default_and_custom_info.rb +1 -1
- data/db/migrate/20150613134559_add_rpm.rb +1 -1
- data/db/migrate/20150623135424_create_package_groups.rb +1 -1
- data/db/migrate/20150715142649_assign_content_host_to_smart_proxies.rb +1 -1
- data/db/migrate/20150717142559_add_distributions_to_repository.rb +1 -1
- data/db/migrate/20150813185339_create_subscriptions.rb +1 -1
- data/db/migrate/20150826165942_add_subscription_facet.rb +1 -1
- data/db/migrate/20150826170004_add_content_facet.rb +1 -1
- data/db/migrate/20150901213759_remove_distributors.rb +1 -1
- data/db/migrate/20150902164543_remove_apply_info_task_id_from_taxonomies.rb +1 -1
- data/db/migrate/20150908222711_drop_marketing_engineering_products.rb +1 -1
- data/db/migrate/20150928221648_update_location_katello_default.rb +1 -1
- data/db/migrate/20150930183738_migrate_content_hosts.rb +1 -1
- data/db/migrate/20151014144004_host_collection_to_hosts.rb +1 -1
- data/db/migrate/20151015152947_add_virt_only_to_katello_pools.rb +1 -1
- data/db/migrate/20151203230940_add_date_type_to_content_view_erratum_filter_rules.rb +1 -1
- data/db/migrate/20151219152536_rename_index_repository_errata.rb +1 -1
- data/db/migrate/20151219203225_rename_index_repository_puppet_module.rb +1 -1
- data/db/migrate/20160114200145_add_mirror_on_sync_to_repositories.rb +1 -1
- data/db/migrate/20160129192548_add_docker_v2_schema.rb +1 -1
- data/db/migrate/20160131182301_add_download_policy_to_katello_repositories.rb +1 -1
- data/db/migrate/20160203195736_remove_docker_image_schema.rb +1 -1
- data/db/migrate/20160211134035_remove_system_errata.rb +1 -1
- data/db/migrate/20160222143432_move_system_description_to_host.rb +1 -1
- data/db/migrate/20160224155909_add_registered_at_to_subscription_facet.rb +1 -1
- data/db/migrate/20160301070319_add_version_ostree_branches.rb +1 -1
- data/db/migrate/20160317171813_change_activation_key_column_names.rb +1 -1
- data/db/migrate/20160323065901_increase_cdn_length.rb +1 -1
- data/db/migrate/20160404132250_remove_katello_from_notification_name.rb +1 -1
- data/db/migrate/20160413230128_add_kickstart_repository_to_hosts_and_hostgroups.rb +1 -1
- data/db/migrate/20160426145517_move_host_description_to_host_comment.rb +1 -1
- data/db/migrate/20160505181337_rename_katello_settings.rb +1 -1
- data/db/migrate/20160520175340_add_host_applicable_package.rb +1 -1
- data/db/migrate/20160530184400_add_repo_id_indexes.rb +1 -1
- data/db/migrate/20160605160933_remove_jobs.rb +1 -1
- data/db/migrate/20160605162929_remove_system_smart_proxy.rb +1 -1
- data/db/migrate/20160613150922_add_event_queue.rb +1 -1
- data/db/migrate/20160617124149_remove_duplicate_view_filters.rb +1 -1
- data/db/migrate/20160619223332_fix_viewer_role.rb +1 -1
- data/db/migrate/20160627125310_delete_system.rb +1 -1
- data/db/migrate/20160701180402_add_sortable_version_to_puppet_modules.rb +1 -1
- data/db/migrate/20160722193256_add_verify_ssl_on_sync_to_repository.rb +1 -1
- data/db/migrate/20160727144242_add_registered_through_to_katello_subscription_facets.rb +1 -1
- data/db/migrate/20160728005028_add_latest_version_to_content_view_component.rb +1 -1
- data/db/migrate/20160808002834_add_files.rb +1 -1
- data/db/migrate/20160906181923_add_puppet_path_to_smart_proxy.rb +1 -1
- data/db/migrate/20160907231049_add_username_password_to_repository.rb +1 -1
- data/db/migrate/20160908234510_add_rpm_nvra.rb +1 -1
- data/db/migrate/20160923143611_add_action_to_content_view_histories.rb +1 -1
- data/db/migrate/20160924213020_change_katello_widget_names.rb +1 -1
- data/db/migrate/20160930121245_content_view_force_puppet_env.rb +1 -1
- data/db/migrate/20160930150810_add_smart_proxy_download_policy.rb +1 -1
- data/db/migrate/20161003130853_add_architecture_to_katello_content_view_package_filter_rule.rb +1 -1
- data/db/migrate/20161003204325_add_user_to_katello_subscription_facets.rb +1 -1
- data/db/migrate/20161014133811_move_content_view_version_description_to_histories.rb +2 -4
- data/db/migrate/20161021072346_fix_subscription_permissions.rb +1 -1
- data/db/migrate/20161026191118_fix_invalid_interfaces.rb +1 -1
- data/db/migrate/20161028153131_sub_facet_user_index_not_uniq.rb +1 -1
- data/db/migrate/20161031204903_add_tracer_support.rb +1 -1
- data/db/migrate/20161102194100_create_content_view_docker_filter_rules.rb +1 -1
- data/db/migrate/20161209162947_add_virt_who_to_katello_pools.rb +1 -1
- data/db/migrate/20161214151548_move_content_source_id_to_content_facets.rb +1 -1
- data/db/migrate/20170114051758_add_depth_to_repositories.rb +1 -1
- data/db/migrate/20170122204325_add_hypervisor_to_subscription_facets.rb +1 -1
- data/db/migrate/20170125152421_move_default_location_to_settings.rb +1 -1
- data/db/migrate/20170208215148_add_docker_repo_name.rb +1 -1
- data/db/migrate/20170220679403_remove_system_permissions.rb +1 -1
- data/db/migrate/20170222131211_change_pool_columns_to_dates.rb +1 -1
- data/db/migrate/20170321012632_fill_in_content_view_components.rb +1 -1
- data/db/migrate/20170523182831_create_docker_meta_tag.rb +1 -1
- data/db/migrate/20170714144125_add_deb.rb +34 -0
- data/db/migrate/20170718142148_create_katello_subscription_facet_pools.rb +1 -1
- data/db/migrate/20170720142145_add_deb_release_parameters_to_repositories.rb +7 -0
- data/db/migrate/20170821170915_add_index_to_installed_packages.rb +1 -1
- data/db/migrate/20170821170916_add_nvra_index_to_installed_packages.rb +1 -1
- data/db/migrate/20170822104447_add_katello_content_to_image.rb +1 -1
- data/db/migrate/20170913183848_add_errata_counts.rb +1 -1
- data/db/migrate/20171010170443_add_index_to_katello_content_facet_errata.rb +1 -1
- data/db/migrate/20171010172724_add_docker_manifest_list.rb +67 -0
- data/db/migrate/20171011175510_add_srpm.rb +38 -0
- data/db/migrate/20171014051810_remove_docker_manifest_name.rb +9 -0
- data/db/migrate/20171025163149_remove_use_pulp_oauth_setting.rb +5 -0
- data/db/migrate/20171112174357_create_katello_content.rb +13 -0
- data/db/migrate/20171112174358_create_katello_product_content.rb +16 -0
- data/db/migrate/20171114150937_cleanup_installed_packages.rb +1 -1
- data/db/migrate/20171114183353_add_hypervisor_id_to_katello_pools.rb +1 -1
- data/db/migrate/20171120144843_add_repository_ignore_proxy.rb +5 -0
- data/db/migrate/20171211124439_add_uuid_index_to_katello_subscription_facets.rb +1 -1
- data/db/migrate/20180103230812_set_errata_updated_date.rb +7 -0
- data/db/seeds.d/101-locations.rb +6 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-add-subscriptions.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/bastion-katello-bootstrap.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/bastion_katello.js +6 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-packages-modal.controller.js +1 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-packages-modal.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-errata.controller.js +0 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-errata.html +8 -10
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details.controller.js +5 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-details.html +13 -5
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-info.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/content-views.routes.js +44 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-available-deb-repositories.controller.js +48 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-deb-repositories-list.controller.js +46 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-details.controller.js +11 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-publish.controller.js +3 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/date-type-errata-filter.controller.js +4 -14
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter-repositories.controller.js +4 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-deb-repositories.html +87 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-details.html +7 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-docker-repositories.html +6 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-publish.html +12 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-repositories.html +5 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-versions.html +10 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/content-view-version-content.controller.js +13 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/content-view-versions.module.js +3 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-apt.html +25 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-deb.html +19 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-errata.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-yum.html +3 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version.html +16 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/deb.factory.js +28 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/debs.controller.js +34 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/debs.module.js +20 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/debs.routes.js +71 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/details/deb-content-views.controller.js +44 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/details/deb-repositories.controller.js +36 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/details/deb.controller.js +34 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/details/views/deb-content-views.html +41 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/details/views/deb-info.html +21 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/details/views/deb-repositories.html +52 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/details/views/deb.html +37 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/views/debs.html +43 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-manifest-lists/docker-manifest-list.factory.js +26 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-manifest-lists/docker-manifest-lists.module.js +19 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/docker-tag-details.controller.js +17 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/docker-tag-environments.controller.js +2 -11
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/views/docker-tag-details.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/views/docker-tag-info.html +7 -8
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/docker-tags.routes.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/views/docker-tags.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-errata.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/erratum-content-hosts.controller.js +11 -25
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/erratum-content-hosts.html +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/errata.routes.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/incremental-update.service.js +2 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/apply-errata-confirm.html +6 -17
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/file.factory.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/files.controller.js +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/organizations/organization-selector.controller.js +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/ostree-branches.routes.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/packages.routes.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-manage-content.controller.js +17 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html +69 -8
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-debs.html +68 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-docker-manifest-lists.html +44 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-docker-manifests.html +13 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-packages.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-puppet-modules.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html +42 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/repositories.module.js +3 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/repositories.routes.js +18 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/views/product-repositories.html +21 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/discovery.controller.js +2 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/products.controller.js +8 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/views/products.html +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/subscription-details.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/views/manifest-import.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/new/new-sync-plan.controller.js +1 -0
- data/engines/bastion_katello/app/assets/stylesheets/bastion_katello/bastion_katello.scss +1 -0
- data/engines/bastion_katello/app/assets/stylesheets/bastion_katello/docker.scss +16 -0
- data/engines/bastion_katello/lib/bastion_katello/engine.rb +1 -0
- data/lib/katello/engine.rb +4 -6
- data/lib/katello/permission_creator.rb +14 -12
- data/lib/katello/permissions/host_permissions.rb +1 -0
- data/lib/katello/plugin.rb +83 -54
- data/lib/katello/prevent_json_parsing.rb +15 -0
- data/lib/katello/repository_types/deb.rb +1 -0
- data/lib/katello/tasks/clean_old_file_repos.rake +33 -0
- data/lib/katello/tasks/clean_published_repo_directories.rake +4 -4
- data/lib/katello/tasks/reimport.rake +8 -1
- data/lib/katello/tasks/repository.rake +3 -3
- data/lib/katello/tasks/rubocop.rake +1 -1
- data/lib/katello/tasks/test.rake +1 -0
- data/lib/katello/tasks/upgrades/3.6/import_product_content.rake +12 -0
- data/lib/katello/tasks/upgrades/3.6/republish_file_repos.rake +16 -0
- data/lib/katello/tasks/virt_who_report.rake +2 -2
- data/lib/katello/version.rb +1 -1
- data/locale/README +1 -0
- metadata +121 -30
- data/app/lib/actions/candlepin/owner/upstream_regenerate_certificates.rb +0 -17
- data/app/lib/actions/candlepin/product/update.rb +0 -32
- data/app/lib/actions/katello/event_queue/run_once_coordinator_lock.rb +0 -12
- data/app/models/katello/candlepin/content.rb +0 -252
- data/app/models/katello/candlepin/product_content.rb +0 -48
- data/lib/katello/params_parser_wrapper.rb +0 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 74b47b654bb5cd12ff6447d5a2eb86be22e2eb86
|
4
|
+
data.tar.gz: 3df18ad11e749d434a78930eee529b2d7501b943
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 80e6a16b4daf6415bc9fbb4b659009c93b80bb2e6fbbe0b47d5ac540bf0f1ff4added97ee831bb47f8a54e3905ef275ee3a9de4568de8be4f08de460e816ac6a
|
7
|
+
data.tar.gz: 391a19603ff401a18a95fa781989f76e9bf1302192114b8a0d49f82341a990655701e7497ea8ea6973ac89b168ca4d69c489471bcd78dcc4aaa5224a75b4f333
|
@@ -62,6 +62,9 @@ $(document).ready(function() {
|
|
62
62
|
KT.content_actions = (function(){
|
63
63
|
var syncing = [],
|
64
64
|
updater,
|
65
|
+
getOrg = function() {
|
66
|
+
return $('#organization_id').val();
|
67
|
+
},
|
65
68
|
addSyncing = function(repo_ids){
|
66
69
|
if (repo_ids.length === 0){
|
67
70
|
return;
|
@@ -95,7 +98,7 @@ KT.content_actions = (function(){
|
|
95
98
|
|
96
99
|
$.ajax({
|
97
100
|
type: 'DELETE',
|
98
|
-
url: foreman_url('/katello/sync_management/' + repo_id),
|
101
|
+
url: foreman_url('/katello/sync_management/' + repo_id + '?organization_id=' + getOrg()),
|
99
102
|
dataType: 'json',
|
100
103
|
success: function(data) {
|
101
104
|
},
|
@@ -111,7 +114,7 @@ KT.content_actions = (function(){
|
|
111
114
|
}
|
112
115
|
var url = foreman_url('/katello/sync_management/sync_status');
|
113
116
|
updater = $.PeriodicalUpdater(url, {
|
114
|
-
data: function(){return {repoids:getSyncing()}},
|
117
|
+
data: function(){return {repoids:getSyncing(), organization_id:getOrg()}},
|
115
118
|
method: 'get',
|
116
119
|
type: 'json',
|
117
120
|
global: false
|
@@ -8,6 +8,8 @@ module Katello
|
|
8
8
|
before_action :find_host, :only => [:upload_package_profile]
|
9
9
|
before_action :authorize_client_or_user, :only => [:upload_package_profile]
|
10
10
|
|
11
|
+
skip_before_action :check_content_type
|
12
|
+
|
11
13
|
#api :PUT, "/consumers/:id/packages", N_("Update installed packages")
|
12
14
|
#api :PUT, "/consumers/:id/profile", N_("Update installed packages")
|
13
15
|
#param :id, String, :desc => N_("UUID of the consumer"), :required => true
|
@@ -25,6 +25,9 @@ module Katello
|
|
25
25
|
|
26
26
|
before_action :check_content_type, :except => :async_hypervisors_update
|
27
27
|
|
28
|
+
prepend_before_action :convert_owner_to_organization_id, :except => [:hypervisors_update, :async_hypervisors_update], :if => lambda { params.key?(:owner) }
|
29
|
+
prepend_before_action :convert_organization_label_to_id, :only => [:rhsm_index, :consumer_activate, :consumer_create], :if => lambda { params.key?(:organization_id) }
|
30
|
+
|
28
31
|
def repackage_message
|
29
32
|
yield
|
30
33
|
ensure
|
@@ -48,7 +51,7 @@ module Katello
|
|
48
51
|
if request_from_katello_cli?
|
49
52
|
render :json => { :errors => [e.http_body] }, :status => e.http_code
|
50
53
|
else
|
51
|
-
render :
|
54
|
+
render :plain => e.http_body, :status => e.http_code
|
52
55
|
end
|
53
56
|
end
|
54
57
|
|
@@ -97,8 +100,7 @@ module Katello
|
|
97
100
|
|
98
101
|
#api :GET, "/owners/:organization_id/environments", N_("List environments for RHSM")
|
99
102
|
def rhsm_index
|
100
|
-
|
101
|
-
@all_environments = get_content_view_environments(params[:name], organization).collect do |env|
|
103
|
+
@all_environments = get_content_view_environments(params[:name], Organization.current).collect do |env|
|
102
104
|
{
|
103
105
|
:id => env.cp_id,
|
104
106
|
:name => env.label,
|
@@ -127,7 +129,7 @@ module Katello
|
|
127
129
|
task = User.as(login) do
|
128
130
|
params['owner'] = @organization.label #override owner label if
|
129
131
|
params['env'] = nil #hypervisors don't need an environment
|
130
|
-
sync_task(::Actions::Katello::Host::Hypervisors, params.except(:controller, :action, :format))
|
132
|
+
sync_task(::Actions::Katello::Host::Hypervisors, params.except(:controller, :action, :format).to_h)
|
131
133
|
end
|
132
134
|
render :json => task.output[:results]
|
133
135
|
end
|
@@ -223,7 +225,7 @@ module Katello
|
|
223
225
|
sync_task(::Actions::Katello::Host::Unregister, @host)
|
224
226
|
end
|
225
227
|
end
|
226
|
-
render :
|
228
|
+
render :plain => _("Deleted consumer '%s'") % params[:id], :status => 204
|
227
229
|
end
|
228
230
|
|
229
231
|
# used for registering with activation keys
|
@@ -233,6 +235,7 @@ module Katello
|
|
233
235
|
# Activation keys are userless by definition so use the internal generic user
|
234
236
|
# Set it before calling find_activation_keys to allow communication with candlepin
|
235
237
|
User.current = User.anonymous_admin
|
238
|
+
additional_set_taxonomy
|
236
239
|
activation_keys = find_activation_keys
|
237
240
|
host = Katello::Host::SubscriptionFacet.find_or_create_host(activation_keys.first.organization, rhsm_params)
|
238
241
|
|
@@ -268,7 +271,7 @@ module Katello
|
|
268
271
|
end
|
269
272
|
|
270
273
|
def serials
|
271
|
-
@host.subscription_facet.last_checkin =
|
274
|
+
@host.subscription_facet.last_checkin = Time.now
|
272
275
|
@host.subscription_facet.save!
|
273
276
|
render :json => Katello::Resources::Candlepin::Consumer.serials(@host.subscription_facet.uuid)
|
274
277
|
end
|
@@ -281,6 +284,15 @@ module Katello
|
|
281
284
|
|
282
285
|
private
|
283
286
|
|
287
|
+
# in case set taxonomy from core was skipped since the User.current was nil at that moment (typically AK was used instead of username/password)
|
288
|
+
# we need to set proper context, unfortunately params[:organization_id] is already overridden again by set_organization_id so we need to
|
289
|
+
# set correct parameter value and then reset it back
|
290
|
+
def additional_set_taxonomy
|
291
|
+
params[:organization_id], original = find_organization(:owner).id, params[:organization_id] if params[:owner].present?
|
292
|
+
set_taxonomy
|
293
|
+
params[:organization_id] = original if params[:owner].present?
|
294
|
+
end
|
295
|
+
|
284
296
|
def disable_strong_params
|
285
297
|
params.permit!
|
286
298
|
end
|
@@ -310,7 +322,7 @@ module Katello
|
|
310
322
|
if params.key?(:environment_id)
|
311
323
|
environment = get_content_view_environment("cp_id", params[:environment_id])
|
312
324
|
elsif params.key?(:organization_id) && !params.key?(:environment_id)
|
313
|
-
organization =
|
325
|
+
organization = Organization.current
|
314
326
|
environment = organization.library.content_view_environment
|
315
327
|
elsif User.current.default_organization.present?
|
316
328
|
environment = User.current.default_organization.library.content_view_environment
|
@@ -331,30 +343,39 @@ module Katello
|
|
331
343
|
deny_access unless @organization
|
332
344
|
end
|
333
345
|
|
334
|
-
def find_organization
|
346
|
+
def find_organization(key = :organization_id)
|
335
347
|
organization = nil
|
336
348
|
|
337
|
-
if params.key?(
|
338
|
-
organization = Organization.find_by(:label => params[
|
349
|
+
if params.key?(key)
|
350
|
+
organization = Organization.find_by(:label => params[key])
|
339
351
|
end
|
340
352
|
|
341
353
|
if organization.nil?
|
342
354
|
message = _("Couldn't find Organization '%s'.")
|
343
|
-
fail HttpErrors::NotFound, message % params[
|
355
|
+
fail HttpErrors::NotFound, message % params[key]
|
344
356
|
end
|
345
357
|
|
346
358
|
if User.current && !User.consumer? && !User.current.allowed_organizations.include?(organization)
|
347
359
|
message = _("User '%{user}' does not belong to Organization '%{organization}'.")
|
348
|
-
fail HttpErrors::NotFound, message % {:user => current_user.login, :organization => params[
|
360
|
+
fail HttpErrors::NotFound, message % {:user => current_user.login, :organization => params[key]}
|
349
361
|
end
|
350
362
|
|
351
363
|
organization
|
352
364
|
end
|
353
365
|
|
366
|
+
def convert_organization_label_to_id
|
367
|
+
params[:organization_id] = find_organization.id
|
368
|
+
end
|
369
|
+
|
370
|
+
def convert_owner_to_organization_id
|
371
|
+
params[:organization_id] = find_organization(:owner).id
|
372
|
+
end
|
373
|
+
|
354
374
|
def find_activation_keys
|
355
|
-
organization =
|
375
|
+
organization = Organization.current
|
356
376
|
|
357
377
|
if (ak_names = params[:activation_keys])
|
378
|
+
fail HttpErrors::NotFound, _("Organization not found") if organization.nil?
|
358
379
|
ak_names = ak_names.split(",")
|
359
380
|
activation_keys = ak_names.map do |ak_name|
|
360
381
|
activation_key = organization.activation_keys.find_by(:name => ak_name)
|
@@ -396,7 +417,7 @@ module Katello
|
|
396
417
|
end
|
397
418
|
|
398
419
|
def rhsm_params
|
399
|
-
params.slice(:name, :type, :facts, :installedProducts, :autoheal, :releaseVer, :serviceLevel, :uuid, :capabilities, :guestIds, :lastCheckin)
|
420
|
+
params.slice(:name, :type, :facts, :installedProducts, :autoheal, :releaseVer, :serviceLevel, :uuid, :capabilities, :guestIds, :lastCheckin).to_h
|
400
421
|
end
|
401
422
|
|
402
423
|
def logger
|
@@ -458,14 +479,12 @@ module Katello
|
|
458
479
|
when "rhsm_proxy_consumer_deletionrecord_delete_path"
|
459
480
|
User.consumer? || Organization.deletable?
|
460
481
|
when "rhsm_proxy_owner_pools_path"
|
461
|
-
find_organization
|
462
482
|
if params[:consumer]
|
463
483
|
User.consumer? && current_user.uuid == params[:consumer]
|
464
484
|
else
|
465
485
|
User.consumer? || ::User.current.can?(:view_organizations, self)
|
466
486
|
end
|
467
487
|
when "rhsm_proxy_owner_servicelevels_path"
|
468
|
-
find_organization
|
469
488
|
(User.consumer? || ::User.current.can?(:view_organizations, self))
|
470
489
|
when "rhsm_proxy_consumer_certificates_path", "rhsm_proxy_consumer_releases_path", "rhsm_proxy_certificate_serials_path",
|
471
490
|
"rhsm_proxy_consumer_entitlements_path", "rhsm_proxy_consumer_entitlements_post_path",
|
@@ -24,7 +24,7 @@ module Katello
|
|
24
24
|
param_group :search, Api::V2::ApiController
|
25
25
|
def index
|
26
26
|
activation_key_includes = [:content_view, :environment, :host_collections, :organization]
|
27
|
-
respond(:collection => scoped_search(index_relation.
|
27
|
+
respond(:collection => scoped_search(index_relation.distinct, :name, :asc, :includes => activation_key_includes))
|
28
28
|
end
|
29
29
|
|
30
30
|
api :POST, "/activation_keys", N_("Create an activation key")
|
@@ -320,7 +320,7 @@ module Katello
|
|
320
320
|
# For deep_munge; Remove for Rails 5
|
321
321
|
:host_collection_ids,
|
322
322
|
:content_overrides => [],
|
323
|
-
:host_collection_ids => [])
|
323
|
+
:host_collection_ids => []).to_h
|
324
324
|
|
325
325
|
key_params[:environment_id] = params[:environment][:id] if params[:environment].try(:[], :id)
|
326
326
|
key_params[:content_view_id] = params[:content_view][:id] if params[:content_view].try(:[], :id)
|
@@ -19,7 +19,7 @@ module Katello
|
|
19
19
|
param :content, File, :required => true, :desc => N_("The actual file contents")
|
20
20
|
def update
|
21
21
|
pulp_content.upload_bits(params[:id], params[:offset], params[:content])
|
22
|
-
|
22
|
+
head :no_content
|
23
23
|
end
|
24
24
|
|
25
25
|
api :DELETE, "/repositories/:repository_id/content_uploads/:id", N_("Delete an upload request")
|
@@ -27,7 +27,7 @@ module Katello
|
|
27
27
|
param :id, :number, :required => true, :desc => N_("Upload request id")
|
28
28
|
def destroy
|
29
29
|
pulp_content.delete_upload_request(params[:id])
|
30
|
-
|
30
|
+
head :no_content
|
31
31
|
end
|
32
32
|
|
33
33
|
private
|
@@ -32,6 +32,7 @@ module Katello
|
|
32
32
|
end
|
33
33
|
def add_components
|
34
34
|
components = params.require(:components).map do |component|
|
35
|
+
component = component.permit([:latest, :content_view_version_id, :content_view_id])
|
35
36
|
options = {}
|
36
37
|
options[:latest] = ::Foreman::Cast.to_bool(component[:latest]) if component.key?(:latest)
|
37
38
|
options.merge(component.slice(:content_view_version_id, :content_view_id))
|
@@ -14,7 +14,7 @@ module Katello
|
|
14
14
|
param :name, String, :desc => N_("filter content view filters by name")
|
15
15
|
param :types, Array, :desc => N_("types of filters")
|
16
16
|
def index
|
17
|
-
respond(:collection => scoped_search(index_relation.
|
17
|
+
respond(:collection => scoped_search(index_relation.distinct, :name, :asc))
|
18
18
|
end
|
19
19
|
|
20
20
|
def index_relation
|
@@ -7,7 +7,7 @@ module Katello
|
|
7
7
|
api :GET, "/content_views/:id/history", N_("Show a content view's history")
|
8
8
|
param :id, :number, :desc => N_("content view numeric identifier"), :required => true
|
9
9
|
def index
|
10
|
-
respond_for_index :collection => scoped_search(index_relation.
|
10
|
+
respond_for_index :collection => scoped_search(index_relation.distinct, :katello_content_view_version_id, :asc, :resource_class => ContentViewHistory)
|
11
11
|
end
|
12
12
|
|
13
13
|
def index_relation
|
@@ -12,7 +12,7 @@ module Katello
|
|
12
12
|
param :uuid, String, :desc => N_("the uuid of the puppet module to associate")
|
13
13
|
param_group :search, ::Katello::Api::V2::ApiController
|
14
14
|
def index
|
15
|
-
respond(:collection => scoped_search(index_relation.
|
15
|
+
respond(:collection => scoped_search(index_relation.distinct, :name, :asc))
|
16
16
|
end
|
17
17
|
|
18
18
|
api :POST, "/content_views/:content_view_id/content_view_puppet_modules",
|
@@ -26,7 +26,7 @@ module Katello
|
|
26
26
|
:includes => [:content_view, :environments, :composite_content_views, :history => :task],
|
27
27
|
:custom_sort => lambda { |query| query.order("#{ContentViewVersion.table_name}.major desc, #{ContentViewVersion.table_name}.minor desc") }
|
28
28
|
}
|
29
|
-
respond(:collection => scoped_search(index_relation.
|
29
|
+
respond(:collection => scoped_search(index_relation.distinct, nil, nil, options))
|
30
30
|
end
|
31
31
|
|
32
32
|
def index_relation
|
@@ -33,7 +33,7 @@ module Katello
|
|
33
33
|
def index
|
34
34
|
content_view_includes = [:activation_keys, :content_view_puppet_modules, :content_view_versions,
|
35
35
|
:environments, :organization, :repositories]
|
36
|
-
respond(:collection => scoped_search(index_relation.
|
36
|
+
respond(:collection => scoped_search(index_relation.distinct, :name, :asc, :includes => content_view_includes))
|
37
37
|
end
|
38
38
|
|
39
39
|
def index_relation
|
@@ -173,7 +173,7 @@ module Katello
|
|
173
173
|
:system_environment_id,
|
174
174
|
:key_content_view_id,
|
175
175
|
:key_environment_id
|
176
|
-
).reject { |_k, v| v.nil? }
|
176
|
+
).reject { |_k, v| v.nil? }.to_unsafe_h
|
177
177
|
options[:content_view_versions] = versions
|
178
178
|
options[:content_view_environments] = cv_envs
|
179
179
|
|
@@ -210,7 +210,7 @@ module Katello
|
|
210
210
|
attrs = [:name, :description, :force_puppet_environment, {:repository_ids => []}, {:component_ids => []}]
|
211
211
|
attrs.push(:label, :composite) if action_name == "create"
|
212
212
|
attrs.push(:component_ids, :repository_ids) # For deep_munge; Remove for Rails 5
|
213
|
-
params.require(:content_view).permit(*attrs)
|
213
|
+
params.require(:content_view).permit(*attrs).to_h
|
214
214
|
end
|
215
215
|
|
216
216
|
def find_environment
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module Katello
|
2
|
+
class Api::V2::DebsController < Api::V2::ApiController
|
3
|
+
resource_description do
|
4
|
+
name 'Deb Packages'
|
5
|
+
end
|
6
|
+
apipie_concern_subst(:a_resource => N_("a deb"), :resource => "debs")
|
7
|
+
include Katello::Concerns::Api::V2::RepositoryContentController
|
8
|
+
|
9
|
+
def default_sort
|
10
|
+
%w(name asc)
|
11
|
+
end
|
12
|
+
|
13
|
+
private
|
14
|
+
|
15
|
+
def repo_association
|
16
|
+
:repository_id
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module Katello
|
2
|
+
class Api::V2::DockerManifestListsController < Api::V2::ApiController
|
3
|
+
apipie_concern_subst(:a_resource => N_("a docker manifest list"), :resource => "docker_manifest_lists")
|
4
|
+
include Katello::Concerns::Api::V2::RepositoryContentController
|
5
|
+
|
6
|
+
private
|
7
|
+
|
8
|
+
def resource_class
|
9
|
+
DockerManifestList
|
10
|
+
end
|
11
|
+
|
12
|
+
def custom_index_relation(collection)
|
13
|
+
collection.includes(:docker_tags)
|
14
|
+
end
|
15
|
+
|
16
|
+
def default_sort
|
17
|
+
lambda { |query| query.default_sort }
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -49,7 +49,7 @@ module Katello
|
|
49
49
|
param :name, String, :desc => N_("filter only environments containing this name")
|
50
50
|
param_group :search, Api::V2::ApiController
|
51
51
|
def index
|
52
|
-
respond(:collection => scoped_search(index_relation.
|
52
|
+
respond(:collection => scoped_search(index_relation.distinct, :name, :asc, :resource_class => KTEnvironment))
|
53
53
|
end
|
54
54
|
|
55
55
|
def index_relation
|
@@ -49,6 +49,30 @@ module Katello
|
|
49
49
|
collection
|
50
50
|
end
|
51
51
|
|
52
|
+
api :GET, "/content_view_versions/:id/available_errata", N_("List errata that can be added to the Content View Version via an Incremental Update")
|
53
|
+
param :id, :number, :desc => N_("Content View Version identifier"), :required => true
|
54
|
+
param :repository_id, :number, :desc => N_("repository identifier")
|
55
|
+
param :cve, String, :desc => N_("CVE identifier")
|
56
|
+
param :errata_restrict_applicable, :bool, :desc => N_("show only errata with one or more applicable hosts")
|
57
|
+
param_group :search, ::Katello::Api::V2::ApiController
|
58
|
+
def available_errata
|
59
|
+
version = ContentViewVersion.find(params[:id])
|
60
|
+
collection = version.available_errata
|
61
|
+
if @repo
|
62
|
+
collection = collection.joins(:repository_errata => :repository).where(:katello_repositories => { :id => @repo })
|
63
|
+
end
|
64
|
+
if params[:cve]
|
65
|
+
collection = collection.joins(:cves).where(:katello_erratum_cves => { :cve_id => params[:cve] })
|
66
|
+
end
|
67
|
+
if ::Foreman::Cast.to_bool(params[:errata_restrict_applicable])
|
68
|
+
hosts = ::Host::Managed.authorized("view_hosts")
|
69
|
+
collection = collection.applicable_to_hosts(hosts)
|
70
|
+
end
|
71
|
+
sort_by, sort_order, options = sort_options
|
72
|
+
collection = scoped_search(collection, sort_by, sort_order, options)
|
73
|
+
respond_for_index(:collection => collection)
|
74
|
+
end
|
75
|
+
|
52
76
|
private
|
53
77
|
|
54
78
|
def filter_by_cve(cve, collection)
|
@@ -1,6 +1,9 @@
|
|
1
1
|
module Katello
|
2
2
|
class Api::V2::FileUnitsController < Api::V2::ApiController
|
3
|
-
|
3
|
+
resource_description do
|
4
|
+
name 'Files'
|
5
|
+
end
|
6
|
+
apipie_concern_subst(:a_resource => N_("a file"), :resource_id => "files")
|
4
7
|
include Katello::Concerns::Api::V2::RepositoryContentController
|
5
8
|
|
6
9
|
def default_sort
|
@@ -3,8 +3,8 @@ module Katello
|
|
3
3
|
include Katello::Concerns::FilteredAutoCompleteSearch
|
4
4
|
before_action :authorize
|
5
5
|
before_action :find_organization, :only => [:create, :index, :auto_complete_search]
|
6
|
-
before_action :find_gpg_key, :only => [:show, :update, :destroy, :content]
|
7
|
-
skip_before_action :check_content_type, :only => [:create, :content]
|
6
|
+
before_action :find_gpg_key, :only => [:show, :update, :destroy, :content, :set_content]
|
7
|
+
skip_before_action :check_content_type, :only => [:create, :content, :set_content]
|
8
8
|
|
9
9
|
def_param_group :gpg_key do
|
10
10
|
param :name, :identifier, :action_aware => true, :required => true, :desc => N_("identifier of the gpg key")
|
@@ -24,7 +24,7 @@ module Katello
|
|
24
24
|
param :name, String, :desc => N_("name of the GPG key"), :required => false
|
25
25
|
param_group :search, Api::V2::ApiController
|
26
26
|
def index
|
27
|
-
respond(:collection => scoped_search(index_relation.
|
27
|
+
respond(:collection => scoped_search(index_relation.distinct, :name, :asc))
|
28
28
|
end
|
29
29
|
|
30
30
|
def index_relation
|
@@ -71,10 +71,16 @@ module Katello
|
|
71
71
|
respond_for_destroy
|
72
72
|
end
|
73
73
|
|
74
|
+
api :GET, "/gpg_keys/:id/content", N_("Return the content of a gpg key, used directly by yum")
|
75
|
+
param :id, :number, :required => true
|
76
|
+
def content
|
77
|
+
render(:plain => @gpg_key.content, :layout => false)
|
78
|
+
end
|
79
|
+
|
74
80
|
api :POST, "/gpg_keys/:id/content", N_("Upload gpg key contents")
|
75
81
|
param :id, :number, :desc => N_("gpg key numeric identifier"), :required => true
|
76
82
|
param :content, File, :desc => N_("file contents"), :required => true
|
77
|
-
def
|
83
|
+
def set_content
|
78
84
|
filepath = params.try(:[], :content).try(:path)
|
79
85
|
|
80
86
|
if filepath
|