katello 3.3.2 → 3.4.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/stylesheets/katello/containers/container.scss +1 -2
- data/app/controllers/katello/api/rhsm/candlepin_proxies_controller.rb +2 -1
- data/app/controllers/katello/api/v2/activation_keys_controller.rb +28 -23
- data/app/controllers/katello/api/v2/api_controller.rb +2 -1
- data/app/controllers/katello/api/v2/capsule_content_controller.rb +1 -1
- data/app/controllers/katello/api/v2/content_view_filter_rules_controller.rb +2 -0
- data/app/controllers/katello/api/v2/content_view_filters_controller.rb +1 -1
- data/app/controllers/katello/api/v2/content_view_versions_controller.rb +12 -2
- data/app/controllers/katello/api/v2/content_views_controller.rb +4 -1
- data/app/controllers/katello/api/v2/docker_tags_controller.rb +14 -0
- data/app/controllers/katello/api/v2/environments_controller.rb +2 -1
- data/app/controllers/katello/api/v2/host_collections_controller.rb +2 -1
- data/app/controllers/katello/api/v2/host_packages_controller.rb +1 -0
- data/app/controllers/katello/api/v2/host_subscriptions_controller.rb +27 -23
- data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +19 -0
- data/app/controllers/katello/api/v2/organizations_controller.rb +8 -4
- data/app/controllers/katello/api/v2/package_groups_controller.rb +51 -0
- data/app/controllers/katello/api/v2/products_bulk_actions_controller.rb +15 -1
- data/app/controllers/katello/api/v2/repositories_controller.rb +57 -32
- data/app/controllers/katello/api/v2/repository_sets_controller.rb +1 -0
- data/app/controllers/katello/api/v2/subscriptions_controller.rb +1 -1
- data/app/controllers/katello/api/v2/sync_plans_controller.rb +1 -0
- data/app/controllers/katello/concerns/api/v2/content_overrides_controller.rb +39 -0
- data/app/controllers/katello/concerns/organizations_controller_extensions.rb +1 -0
- data/app/controllers/katello/providers_controller.rb +3 -1
- data/app/controllers/katello/sync_management_controller.rb +2 -0
- data/app/helpers/katello/errata_mailer_helper.rb +1 -1
- data/app/helpers/katello/hosts_and_hostgroups_helper.rb +2 -7
- data/app/lib/actions/candlepin/candlepin_listening_service.rb +2 -1
- data/app/lib/actions/candlepin/environment/set_content.rb +1 -1
- data/app/lib/actions/candlepin/owner/upstream_regenerate_certificates.rb +17 -0
- data/app/lib/actions/candlepin/product/content_add.rb +2 -1
- data/app/lib/actions/candlepin/product/content_create.rb +3 -1
- data/app/lib/actions/candlepin/product/content_destroy.rb +2 -1
- data/app/lib/actions/candlepin/product/content_remove.rb +2 -1
- data/app/lib/actions/candlepin/product/content_update.rb +3 -1
- data/app/lib/actions/candlepin/product/create.rb +12 -1
- data/app/lib/actions/candlepin/product/destroy.rb +2 -1
- data/app/lib/actions/candlepin/product/update.rb +4 -0
- data/app/lib/actions/katello/capsule_content/create_repos.rb +1 -1
- data/app/lib/actions/katello/content_view/promote.rb +3 -2
- data/app/lib/actions/katello/content_view/promote_to_environment.rb +3 -2
- data/app/lib/actions/katello/content_view/publish.rb +3 -2
- data/app/lib/actions/katello/content_view_version/destroy.rb +7 -1
- data/app/lib/actions/katello/content_view_version/incremental_update.rb +1 -1
- data/app/lib/actions/katello/content_view_version/republish_repositories.rb +40 -0
- data/app/lib/actions/katello/host/destroy.rb +1 -0
- data/app/lib/actions/katello/host/erratum/install.rb +13 -4
- data/app/lib/actions/katello/host/hypervisors_update.rb +3 -2
- data/app/lib/actions/katello/host/register.rb +10 -4
- data/app/lib/actions/katello/host/remove_subscriptions.rb +14 -12
- data/app/lib/actions/katello/host/update.rb +9 -7
- data/app/lib/actions/katello/host/update_content_overrides.rb +43 -0
- data/app/lib/actions/katello/organization/destroy.rb +1 -1
- data/app/lib/actions/katello/organization/manifest_refresh.rb +3 -0
- data/app/lib/actions/katello/product/content_create.rb +3 -0
- data/app/lib/actions/katello/product/content_destroy.rb +2 -0
- data/app/lib/actions/katello/product/create.rb +1 -2
- data/app/lib/actions/katello/product/destroy.rb +3 -2
- data/app/lib/actions/katello/repository/check_matching_content.rb +49 -0
- data/app/lib/actions/katello/repository/clone_to_environment.rb +3 -2
- data/app/lib/actions/katello/repository/clone_yum_content.rb +17 -1
- data/app/lib/actions/katello/repository/create.rb +4 -1
- data/app/lib/actions/katello/repository/destroy_package_group.rb +26 -0
- data/app/lib/actions/katello/repository/discover.rb +8 -3
- data/app/lib/actions/katello/repository/errata_mail.rb +1 -1
- data/app/lib/actions/katello/repository/finish_upload.rb +6 -2
- data/app/lib/actions/katello/repository/import_upload.rb +30 -7
- data/app/lib/actions/katello/repository/index_content.rb +2 -1
- data/app/lib/actions/katello/repository/metadata_generate.rb +19 -5
- data/app/lib/actions/katello/repository/remove_content.rb +7 -4
- data/app/lib/actions/katello/repository/sync.rb +28 -14
- data/app/lib/actions/katello/repository/update.rb +1 -0
- data/app/lib/actions/katello/repository/upload_package_group.rb +34 -0
- data/app/lib/actions/katello/repository_set/scan_cdn.rb +2 -4
- data/app/lib/actions/middleware/skip_if_matching_content.rb +24 -0
- data/app/lib/actions/pulp/abstract.rb +2 -2
- data/app/lib/actions/pulp/consumer/generate_applicability.rb +5 -1
- data/app/lib/actions/pulp/consumer/sync_capsule.rb +10 -0
- data/app/lib/actions/pulp/content_view_puppet_environment/index_content.rb +5 -3
- data/app/lib/actions/pulp/repository/copy_errata.rb +4 -0
- data/app/lib/actions/pulp/repository/create.rb +6 -1
- data/app/lib/actions/pulp/repository/distributor_publish.rb +3 -0
- data/app/lib/actions/pulp/repository/download.rb +16 -0
- data/app/lib/actions/pulp/repository/import_upload.rb +2 -1
- data/app/lib/actions/pulp/repository/presenters/{file_presenter.rb → file_unit_presenter.rb} +0 -0
- data/app/lib/actions/pulp/repository/presenters/ostree_presenter.rb +16 -3
- data/app/lib/actions/pulp/repository/remove_errata.rb +4 -0
- data/app/lib/actions/pulp/repository/sync.rb +3 -3
- data/app/lib/katello/errors.rb +2 -0
- data/app/lib/katello/repo_discovery.rb +33 -8
- data/app/lib/katello/resources/candlepin.rb +87 -68
- data/app/lib/katello/resources/cdn.rb +26 -13
- data/app/lib/katello/util/cdn_var_substitutor.rb +39 -124
- data/app/lib/katello/util/path_with_substitutions.rb +58 -0
- data/app/models/katello/activation_key.rb +11 -15
- data/app/models/katello/candlepin/content.rb +6 -14
- data/app/models/katello/candlepin/product_content.rb +11 -3
- data/app/models/katello/concerns/content_facet_host_extensions.rb +19 -10
- data/app/models/katello/concerns/environment_extensions.rb +6 -3
- data/app/models/katello/concerns/host_managed_extensions.rb +21 -7
- data/app/models/katello/concerns/hostgroup_extensions.rb +3 -3
- data/app/models/katello/concerns/location_extensions.rb +32 -24
- data/app/models/katello/concerns/pulp_database_unit.rb +10 -2
- data/app/models/katello/concerns/smart_proxy_extensions.rb +8 -6
- data/app/models/katello/concerns/subscription_facet_host_extensions.rb +27 -10
- data/app/models/katello/content_override.rb +63 -0
- data/app/models/katello/content_view.rb +3 -8
- data/app/models/katello/content_view_history.rb +1 -1
- data/app/models/katello/content_view_puppet_environment.rb +10 -2
- data/app/models/katello/content_view_puppet_module.rb +1 -1
- data/app/models/katello/content_view_version.rb +2 -2
- data/app/models/katello/docker_manifest.rb +1 -1
- data/app/models/katello/docker_tag.rb +3 -3
- data/app/models/katello/erratum.rb +4 -4
- data/app/models/katello/file_unit.rb +1 -1
- data/app/models/katello/glue/candlepin/activation_key.rb +10 -8
- data/app/models/katello/glue/candlepin/content.rb +1 -21
- data/app/models/katello/glue/candlepin/owner.rb +3 -1
- data/app/models/katello/glue/candlepin/pool.rb +3 -1
- data/app/models/katello/glue/candlepin/product.rb +2 -7
- data/app/models/katello/glue/provider.rb +19 -1
- data/app/models/katello/glue/pulp/repo.rb +33 -19
- data/app/models/katello/glue/pulp/repos.rb +0 -8
- data/app/models/katello/gpg_key.rb +1 -1
- data/app/models/katello/host/subscription_facet.rb +47 -4
- data/app/models/katello/host_collection.rb +2 -2
- data/app/models/katello/kt_environment.rb +1 -1
- data/app/models/katello/ostree_branch.rb +1 -1
- data/app/models/katello/package_group.rb +1 -1
- data/app/models/katello/pool.rb +14 -15
- data/app/models/katello/product.rb +2 -2
- data/app/models/katello/provider.rb +0 -28
- data/app/models/katello/repository.rb +91 -29
- data/app/models/katello/subscription.rb +12 -0
- data/app/models/katello/subscription_status.rb +1 -1
- data/app/models/katello/sync_plan.rb +9 -2
- data/app/models/katello/trace_status.rb +53 -0
- data/app/models/setting/content.rb +55 -25
- data/app/overrides/add_activation_keys_input.rb +0 -5
- data/app/presenters/katello/product_content_presenter.rb +11 -3
- data/app/services/katello/candlepin/consumer.rb +24 -16
- data/app/services/katello/pulp/erratum.rb +1 -0
- data/app/services/katello/pulp/file_unit.rb +1 -1
- data/app/views/dashboard/_errata_widget.html.erb +2 -2
- data/app/views/foreman/unattended/kickstart-katello.erb +1 -1
- data/app/views/katello/api/v2/activation_keys/product_content.json.rabl +14 -1
- data/app/views/katello/api/v2/host_subscriptions/product_content.json.rabl +15 -1
- data/app/views/katello/api/v2/repositories/base.json.rabl +1 -0
- data/app/views/katello/api/v2/repositories/show.json.rabl +5 -0
- data/app/views/katello/api/v2/subscription_facet/show.json.rabl +1 -1
- data/app/views/katello/api/v2/subscriptions/base.json.rabl +1 -0
- data/app/views/katello/providers/redhat/_repo_sets.html.erb +1 -1
- data/app/views/katello/providers/redhat/_repos.html.erb +1 -1
- data/app/views/katello/providers/redhat/show.html.erb +1 -1
- data/app/views/overrides/activation_keys/_host_environment_select.html.erb +2 -1
- data/app/views/overrides/hosts/_subscription_link.html.erb +1 -1
- data/config/initializers/pagelets.rb +6 -0
- data/config/routes/api/v2.rb +8 -0
- data/config/routes/overrides.rb +1 -0
- data/db/migrate/20161209162947_add_virt_who_to_katello_pools.rb +9 -0
- data/db/migrate/20170114051758_add_depth_to_repositories.rb +6 -0
- data/db/migrate/20170122204325_add_hypervisor_to_subscription_facets.rb +6 -0
- data/db/migrate/20170125152421_move_default_location_to_settings.rb +25 -0
- data/db/migrate/20170208215148_add_docker_repo_name.rb +14 -0
- data/db/migrate/20170222131211_change_pool_columns_to_dates.rb +19 -0
- data/db/seeds.d/101-locations.rb +9 -3
- data/db/seeds.d/103-provisioning_templates.rb +2 -2
- data/db/seeds.d/106-mail_notifications.rb +6 -0
- data/db/seeds.d/108-subcription-bookmarks.rb +19 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/activation-key.factory.js +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/activation-keys.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/activation-keys.module.js +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/activation-keys.routes.js +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-add-host-collections.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-add-subscriptions.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-associations.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-host-collections.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js +64 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-subscriptions.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-add-subscriptions.html +2 -52
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-associations-content-hosts.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-details.html +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-host-collections-table.html +2 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-host-collections.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-repository-sets.html +85 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-subscriptions-list.html +3 -39
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-subscriptions.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/new/views/activation-key-new.html +15 -15
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/views/activation-keys.html +3 -3
- 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/common/views/subscription-add-or-remove.html +50 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/{content-hosts-bulk-action-environment.controller.js → content-hosts-bulk-environment-modal.controller.js} +24 -13
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-errata-modal.controller.js +124 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-host-collections-modal.controller.js +86 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/{content-hosts-bulk-action-packages.controller.js → content-hosts-bulk-packages-modal.controller.js} +24 -17
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/{content-hosts-bulk-action-subscriptions.controller.js → content-hosts-bulk-subscriptions-modal.controller.js} +31 -12
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-destroy-modal.html +4 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/{bulk-actions-environment.html → content-hosts-bulk-environment-modal.html} +27 -13
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-errata-modal.html +107 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-host-collections-modal.html +91 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-packages-modal.html +162 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-subscriptions-modal.html +121 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/errata-details.html +0 -5
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-hosts.controller.js +108 -16
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-hosts.module.js +2 -279
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-hosts.routes.js +251 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-errata.controller.js +19 -19
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-packages-applicable.controller.js +5 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-packages-installed.controller.js +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-packages.controller.js +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-traces.controller.js +5 -5
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-errata.html +35 -34
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-packages-actions.html +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-packages-applicable.html +8 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-packages-installed.html +12 -13
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-traces.html +28 -20
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/errata-details.html +42 -62
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-add-host-collections.controller.js +17 -12
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-add-subscriptions.controller.js +22 -10
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details-info.controller.js +4 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details.controller.js +2 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-host-collections.controller.js +17 -12
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-repository-sets.controller.js +64 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-subscriptions.controller.js +12 -12
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-add-subscriptions.html +21 -49
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-details.html +136 -148
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-events.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-host-collections-table.html +59 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-host-collections.html +20 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-info.html +198 -256
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-provisioning-info.html +38 -54
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-repository-sets.html +93 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-subscriptions-list.html +6 -54
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-subscriptions.html +47 -82
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-tasks.html +3 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts.html +107 -13
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/register.html +26 -31
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/content-views.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/content-views.routes.js +115 -33
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-version-deletion-activation-keys.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/content-view-version-deletion-content-hosts.controller.js +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/views/content-view-deletion.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/views/version-deletion-activation-keys.html +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/views/version-deletion-confirm.html +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/views/version-deletion-content-hosts.html +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/deletion/views/version-deletion-environments.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/components/content-view-composite-available-content-views.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/components/content-view-composite-content-views-list.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/components/views/content-view-composite-available-content-views.html +4 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/components/views/content-view-composite-content-views-list.html +4 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/components/views/content-view-composite.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-available-docker-repositories.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-available-file-repositories.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-available-ostree-repositories.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-available-repositories.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-docker-repositories-list.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-file-repositories-list.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-ostree-repositories-list.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-promotion.controller.js +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-publish.controller.js +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-repositories-list.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-versions.controller.js +7 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/available-errata-filter.controller.js +10 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/available-package-group-filter.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/date-type-errata-filter.controller.js +9 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/docker-tag-filter.controller.js +137 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/errata-filter-list.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter-helper.service.js +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter-repositories.controller.js +9 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filter.factory.js +28 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/filters.controller.js +11 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/new-filter.controller.js +22 -5
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/package-filter.controller.js +66 -80
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/package-group-list-filter.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/date-type-errata-filter.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/docker-filter.html +28 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/docker-tag-filter-details.html +65 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/errata-filter-details.html +10 -8
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/errata-filter.html +48 -51
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/filter-repositories.html +5 -5
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/filters.html +17 -8
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/new-filter.html +49 -42
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/package-filter-details.html +144 -171
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/package-filter.html +7 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/package-group-filter-details.html +4 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/package-group-filter.html +9 -9
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/filters/views/partials/filter-repositories-count.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/histories/content-view-history.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/histories/views/content-view-history.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/content-view-puppet-module-names.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/content-view-puppet-module-versions.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/views/content-view-puppet-module-names.html +17 -19
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/views/content-view-puppet-module-versions.html +17 -21
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/puppet-modules/views/content-view-puppet-modules.html +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-details.html +20 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-docker-repositories.html +6 -8
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-file-repositories.html +5 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-info.html +2 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-ostree-repositories.html +5 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-promotion.html +21 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-publish.html +29 -11
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-repositories.html +8 -10
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/views/content-view-versions.html +34 -16
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/new/views/content-view-new.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/content-view-version.factory.js +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-errata.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-ostree-branches.html +2 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-package-groups.html +2 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-packages.html +2 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-puppet-modules.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version-yum.html +13 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/versions/views/content-view-version.html +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/views/content-views.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/docker-tag-details.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/views/docker-tag-environments.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/docker-tags.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/docker-tags.factory.js +7 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/environment-content.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/environment.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-content-views.html +2 -8
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-details.html +15 -19
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-docker.html +5 -12
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-errata.html +7 -14
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-ostree.html +5 -12
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-packages.html +5 -12
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-puppet-modules.html +4 -11
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment-repositories.html +4 -9
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/details/views/environment.html +32 -51
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/environments.routes.js +73 -29
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/new-environment.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/views/environments.html +8 -12
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/views/new-environment.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/apply-errata.controller.js +17 -21
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/{errata-content-hosts.controller.js → erratum-content-hosts.controller.js} +13 -12
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/{errata-details-repositories.controller.js → erratum-repositories.controller.js} +7 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/{errata-details.controller.js → erratum.controller.js} +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/erratum-content-hosts.html +78 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/erratum-info.html +58 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/{errata-details-repositories.html → erratum-repositories.html} +22 -35
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/erratum.html +37 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/errata.controller.js +8 -30
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/errata.module.js +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/errata.routes.js +90 -83
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/incremental-update.service.js +149 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/apply-errata-confirm.html +7 -17
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/apply-errata-select-content-hosts.html +4 -14
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/apply-errata.html +9 -26
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata-task-details.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata-tasks-list.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata-tasks.html +6 -9
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata.html +77 -34
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/details/file-content-views.controller.js +44 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/details/file-repositories.controller.js +36 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/details/file.controller.js +37 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/details/views/file-content-views.html +43 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/details/views/file-info.html +15 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/details/views/file-repositories.html +54 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/details/views/file.html +37 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/file.factory.js +28 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/files.controller.js +35 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/files.module.js +20 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/files.routes.js +71 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/views/files.html +39 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/details/gpg-key-products.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/details/gpg-key-repositories.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/details/views/gpg-key-info.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/gpg-keys.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/new/views/new-gpg-key.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/gpg-keys/views/gpg-keys.html +3 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-add-hosts.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-hosts.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-add-hosts.html +3 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-copy.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-details.html +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-hosts-list.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-hosts.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/host-collection.factory.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/host-collections.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/new/views/new-host-collection.html +24 -23
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/views/host-collections.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-bulk-action.factory.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-subscription.factory.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/bastion_katello.pot +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/de.po +6 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/es.po +6 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/fr.po +6 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/it.po +6 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ja.po +6 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ko.po +6 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pt_BR.po +6 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ru.po +6 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/zh_CN.po +6 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/translations.js +10 -10
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/katello-features.run.js +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/organizations/fenced-pages.service.js +24 -14
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/organizations/views/organization-selector.html +3 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/details/{ostree-branches-details-repositories.controller.js → ostree-branch-repositories.controller.js} +7 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/details/{ostree-branches-details.controller.js → ostree-branch.controller.js} +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/details/views/ostree-branch-info.html +18 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/details/views/{ostree-branches-details-repositories.html → ostree-branch-repositories.html} +25 -34
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/details/views/ostree-branch.html +30 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/ostree-branches.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/ostree-branches.routes.js +24 -27
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/views/ostree-branches.html +28 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/details/package-repositories.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/details/views/package-files.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/details/views/package-repositories.html +17 -27
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/packages.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/views/packages.html +12 -14
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/{product-bulk-action.factory.js → bulk/product-bulk-action.factory.js} +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/products-bulk-advanced-sync-modal.controller.js +54 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/products-bulk-sync-plan-modal.controller.js +80 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/views/products-bulk-advanced-sync-modal.html +26 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/views/products-bulk-sync-plan-modal.html +87 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/product-repositories.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-advanced-sync.controller.js +33 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-info.controller.js +17 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-info.filter.js +29 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-manage-content.controller.js +5 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details.controller.js +18 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-advanced-sync-options.html +54 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-advanced-sync.html +29 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-details.html +26 -9
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html +46 -11
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-docker-manifests.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-files.html +64 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-packages.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-puppet-modules.html +5 -5
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/new-repository.controller.js +6 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html +52 -31
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/ostree-upstream-sync-policy.service.js +26 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/repositories.module.js +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/repositories.routes.js +19 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/repository.factory.js +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/views/product-repositories.html +12 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/views/product-details.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/{discovery-form.controller.js → discovery-create.controller.js} +109 -35
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/discovery-repositories.service.js +94 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/discovery.controller.js +84 -30
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/views/discovery-base.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/views/discovery-create-status.html +3 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/views/discovery-create.html +154 -123
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html +94 -67
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/new/views/product-new-form.html +4 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/new/views/product-new.html +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/products.controller.js +93 -11
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/products.routes.js +3 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/views/products.html +43 -44
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/details/{puppet-modules-details-content-views.controller.js → puppet-module-content-views.controller.js} +6 -5
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/details/{puppet-modules-details-repositories.controller.js → puppet-module-repositories.controller.js} +6 -5
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/details/{puppet-modules-details.controller.js → puppet-module.controller.js} +4 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/details/views/{puppet-modules-details-content-views.html → puppet-module-content-views.html} +12 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/details/views/puppet-module-info.html +32 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/details/views/{puppet-modules-details-repositories.html → puppet-module-repositories.html} +11 -9
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/details/views/puppet-module.html +37 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/puppet-modules.controller.js +3 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/puppet-modules.routes.js +31 -29
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/views/puppet-modules.html +34 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repository-sets/content-override-helper.service.js +47 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repository-sets/repository-sets-enabled.filter.js +34 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/repository-sets/repository-sets.module.js +8 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/subscription-details.controller.js +2 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/views/subscription-content-hosts.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/views/subscription-info.html +13 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/details/views/subscription-products.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/manifest-import.controller.js +8 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/views/manifest-delete-modal.html +19 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/manifest/views/manifest-import.html +11 -5
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/subscription-start-date.directive.js +21 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/subscriptions.controller.js +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/views/subscription-start-date.html +2 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/subscriptions/views/subscriptions.html +8 -9
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-add-products.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/sync-plan-products.controller.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/views/sync-plan-details.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/details/views/sync-plan-products.html +4 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/new/views/new-sync-plan.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/sync-plans.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/views/sync-plans.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/tasks-nutupane.factory.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/views/task-details.html +53 -66
- data/engines/bastion_katello/app/assets/stylesheets/bastion_katello/bastion_katello.scss +5 -0
- data/engines/bastion_katello/app/assets/stylesheets/bastion_katello/host_subscriptions.scss +14 -0
- data/engines/bastion_katello/app/assets/stylesheets/bastion_katello/tasks.scss +4 -0
- data/engines/bastion_katello/lib/bastion_katello/engine.rb +1 -0
- data/lib/katello/engine.rb +3 -22
- data/lib/katello/permissions/content_view_permissions.rb +2 -2
- data/lib/katello/permissions/host_permissions.rb +1 -0
- data/lib/katello/permissions/product_permissions.rb +7 -4
- data/lib/katello/plugin.rb +18 -2
- data/lib/katello/tasks/regenerate_ueber_certs.rake +15 -0
- data/lib/katello/tasks/rubocop.rake +3 -2
- data/lib/katello/tasks/test.rake +17 -5
- data/lib/katello/tasks/unify_hosts.rake +1 -1
- data/lib/katello/tasks/update_subscription_facet_backend_data.rake +61 -0
- data/lib/katello/tasks/upgrades/3.3/hypervisors.rake +7 -0
- data/lib/katello/tasks/upgrades/3.3/import_subscriptions.rake +12 -0
- data/lib/katello/tasks/virt_who_report.rake +150 -0
- data/lib/katello/version.rb +1 -1
- metadata +116 -115
- data/app/lib/actions/candlepin/owner/refresh_subscriptions.rb +0 -15
- data/app/lib/actions/candlepin/product/delete_unused.rb +0 -13
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-product-details.controller.js +0 -88
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-products.controller.js +0 -46
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-products.html +0 -49
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-action-errata.controller.js +0 -127
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-action-host-collections.controller.js +0 -79
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-action.controller.js +0 -81
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/bulk-actions-errata.html +0 -113
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/bulk-actions-host-collections.html +0 -82
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/bulk-actions-packages.html +0 -153
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/bulk-actions-subscriptions.html +0 -86
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/bulk-actions.html +0 -92
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-products.controller.js +0 -99
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-products.html +0 -56
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/host-collections-table.html +0 -90
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/host-collections.html +0 -20
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts-table-collapsed.html +0 -25
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts-table-full.html +0 -61
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/errata-details-content-hosts.html +0 -91
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/errata-details-info.html +0 -62
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/errata-details.html +0 -52
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata-table-collapsed.html +0 -20
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata-table-full.html +0 -46
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/details/views/ostree-branches-details-info.html +0 -23
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/details/views/ostree-branches-details.html +0 -43
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/views/ostree-branches-table-collapsed.html +0 -19
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ostree-branches/views/ostree-branches-table-full.html +0 -21
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/products-bulk-action.controller.js +0 -93
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/details/views/puppet-modules-details-info.html +0 -31
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/details/views/puppet-modules-details.html +0 -52
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/views/puppet-modules-table-collapsed.html +0 -20
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/puppet-modules/views/puppet-modules-table-full.html +0 -29
- data/lib/katello/tasks/gettext.rake +0 -5
- data/lib/katello/tasks/jshint.rake +0 -50
- data/lib/katello/tasks/jsroutes.rake +0 -5
- data/lib/katello/tasks/pretty_routes.rake +0 -30
- data/lib/katello/tasks/simplecov.rake +0 -7
- data/vendor/assets/javascripts/katello/jquery-1.7.2.js +0 -9404
@@ -1,5 +1,7 @@
|
|
1
1
|
<span page-title ng-model="repository">{{ 'Manage Puppet Modules for Repository:' | translate }} {{ repository.name }}</span>
|
2
2
|
|
3
|
+
<h3 translate>Manage Puppet Modules for {{ repository.name }}</h3>
|
4
|
+
|
3
5
|
<div data-block="messages">
|
4
6
|
<div bst-alerts success-messages="successMessages" error-messages="errorMessages"></div>
|
5
7
|
|
@@ -29,18 +31,16 @@
|
|
29
31
|
</div>
|
30
32
|
</div>
|
31
33
|
|
32
|
-
<button class="btn btn-default"
|
34
|
+
<button type="button" class="btn btn-default"
|
33
35
|
ng-hide="denied('edit_products')"
|
34
36
|
ng-click="openModal()"
|
35
|
-
ng-disabled="table.
|
36
|
-
<i class="fa fa-trash-o" ng-hide="table.working"></i>
|
37
|
-
<i class="fa fa-spinner fa-spin" ng-show="table.working"></i>
|
37
|
+
ng-disabled="table.numSelected === 0">
|
38
38
|
<span translate>Remove Puppet Modules</span>
|
39
39
|
</button>
|
40
40
|
</div>
|
41
41
|
|
42
42
|
<div data-block="table">
|
43
|
-
<table class="table table-striped table-bordered"
|
43
|
+
<table class="table table-striped table-bordered">
|
44
44
|
|
45
45
|
<thead>
|
46
46
|
<tr bst-table-head row-select>
|
@@ -12,13 +12,14 @@
|
|
12
12
|
* @requires ApiErrorHandler
|
13
13
|
* @requires BastionConfig
|
14
14
|
* @requires DownloadPolicy
|
15
|
+
* @requires OstreeUpstreamSyncPolicy
|
15
16
|
*
|
16
17
|
* @description
|
17
18
|
* Controls the creation of an empty Repository object for use by sub-controllers.
|
18
19
|
*/
|
19
20
|
angular.module('Bastion.repositories').controller('NewRepositoryController',
|
20
|
-
['$scope', 'Repository', 'Product', 'GPGKey', 'FormUtils', 'translate', 'GlobalNotification', 'ApiErrorHandler', 'BastionConfig', 'DownloadPolicy',
|
21
|
-
function ($scope, Repository, Product, GPGKey, FormUtils, translate, GlobalNotification, ApiErrorHandler, BastionConfig, DownloadPolicy) {
|
21
|
+
['$scope', 'Repository', 'Product', 'GPGKey', 'FormUtils', 'translate', 'GlobalNotification', 'ApiErrorHandler', 'BastionConfig', 'DownloadPolicy', 'OstreeUpstreamSyncPolicy',
|
22
|
+
function ($scope, Repository, Product, GPGKey, FormUtils, translate, GlobalNotification, ApiErrorHandler, BastionConfig, DownloadPolicy, OstreeUpstreamSyncPolicy) {
|
22
23
|
|
23
24
|
function success() {
|
24
25
|
GlobalNotification.setSuccessMessage(translate('Repository %s successfully created.').replace('%s', $scope.repository.name));
|
@@ -59,7 +60,8 @@ angular.module('Bastion.repositories').controller('NewRepositoryController',
|
|
59
60
|
|
60
61
|
$scope.repository = new Repository({'product_id': $scope.$stateParams.productId, unprotected: true,
|
61
62
|
'checksum_type': null, 'mirror_on_sync': true, 'verify_ssl_on_sync': true,
|
62
|
-
'download_policy': BastionConfig.defaultDownloadPolicy
|
63
|
+
'download_policy': BastionConfig.defaultDownloadPolicy,
|
64
|
+
'ostree_upstream_sync_policy': 'latest'});
|
63
65
|
|
64
66
|
$scope.product = Product.get({id: $scope.$stateParams.productId}, function () {
|
65
67
|
$scope.page.loading = false;
|
@@ -73,6 +75,7 @@ angular.module('Bastion.repositories').controller('NewRepositoryController',
|
|
73
75
|
});
|
74
76
|
|
75
77
|
$scope.downloadPolicies = DownloadPolicy.downloadPolicies;
|
78
|
+
$scope.ostreeUpstreamSyncPolicies = OstreeUpstreamSyncPolicy.syncPolicies;
|
76
79
|
|
77
80
|
$scope.$watch('repository.name', function () {
|
78
81
|
if ($scope.repositoryForm && $scope.repositoryForm.name) {
|
@@ -1,8 +1,6 @@
|
|
1
1
|
<span page-title>{{ 'New Repository' | translate }}</span>
|
2
2
|
|
3
|
-
<
|
4
|
-
<h2 translate>New Repository</h2>
|
5
|
-
</header>
|
3
|
+
<h3 translate>New Repository</h3>
|
6
4
|
|
7
5
|
<div bst-alerts error-messages="errorMessages" success-messages="successMessages"></div>
|
8
6
|
|
@@ -43,42 +41,64 @@
|
|
43
41
|
ng-model="repository.url"
|
44
42
|
type="text"
|
45
43
|
ng-required="repository.content_type === 'docker'"/>
|
46
|
-
<
|
44
|
+
<p class="help-block" ng-show="repository.content_type === 'docker'" translate>
|
47
45
|
URL of the registry you want to sync. Example: https://registry-1.docker.io/
|
46
|
+
</p>
|
47
|
+
|
48
|
+
</div>
|
49
|
+
|
50
|
+
<div bst-form-group label="{{ 'Upstream Sync Policy' | translate }}" ng-show="repository.content_type === 'ostree'">
|
51
|
+
<select required
|
52
|
+
id="ostree_upstream_sync_policy"
|
53
|
+
name="ostree_upstream_sync_policy"
|
54
|
+
ng-model="repository.ostree_upstream_sync_policy"
|
55
|
+
ng-options="id as name for (id, name) in ostreeUpstreamSyncPolicies">
|
56
|
+
</select>
|
57
|
+
|
58
|
+
<input id="ostree_upstream_sync_depth"
|
59
|
+
name="ostree_upstream_sync_depth"
|
60
|
+
ng-model="repository.ostree_upstream_sync_depth"
|
61
|
+
type="number"
|
62
|
+
ng-disabled="repository.ostree_upstream_sync_policy !== 'custom'"/>
|
63
|
+
<h6 translate>
|
64
|
+
Choose one of the policy selections for downloading ostree content from upstream url during synchronization. Choose "Latest" for downloading the latest version of the upstream branch. Choose "All History" to download all available versions of the upstream repository (this may take a large amount of space). Choose "Custom Depth" and provide an number to indicate the number of prior versions of the upstream branch to download.
|
48
65
|
</h6>
|
49
66
|
|
50
67
|
</div>
|
51
68
|
|
69
|
+
|
52
70
|
<div bst-form-group label="{{ 'Upstream Repository Name' | translate }}" ng-show="repository.content_type === 'docker'">
|
53
71
|
<input id="docker_upstream_name"
|
54
72
|
name="docker_upstream_name"
|
55
73
|
ng-model="repository.docker_upstream_name"
|
56
74
|
type="text"
|
57
75
|
ng-required="repository.content_type === 'docker'"/>
|
58
|
-
<
|
76
|
+
<p class="help-block" translate>
|
59
77
|
Name of the upstream repository you want to sync. Example: 'busybox' or 'fedora/ssh'.
|
60
|
-
</
|
78
|
+
</p>
|
61
79
|
|
62
80
|
</div>
|
63
81
|
|
64
|
-
<div
|
65
|
-
<
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
82
|
+
<div class="checkbox">
|
83
|
+
<label>
|
84
|
+
<input id="verify_ssl_on_sync" name="verify_ssl_on_sync" ng-model="repository.verify_ssl_on_sync" type="checkbox"/>
|
85
|
+
<span translate>Verify SSL</span>
|
86
|
+
</label>
|
87
|
+
|
88
|
+
<p class="help-block" translate>
|
70
89
|
Selecting this option will result in Katello verifying that the upstream url's SSL certificates are signed by a trusted CA. Unselect if you do not want this verification.
|
71
|
-
</
|
90
|
+
</p>
|
72
91
|
</div>
|
73
92
|
|
93
|
+
|
74
94
|
<div bst-form-group label="{{ 'Upstream Username' | translate }}" >
|
75
95
|
<input id="upstream_username"
|
76
96
|
name="upstream_username"
|
77
97
|
ng-model="repository.upstream_username"
|
78
98
|
type="text"/>
|
79
|
-
<
|
99
|
+
<p class="help-block" translate>
|
80
100
|
Username of the upstream repository user for authentication. Leave empty if repository does not require authentication.
|
81
|
-
</
|
101
|
+
</p>
|
82
102
|
</div>
|
83
103
|
|
84
104
|
<div bst-form-group label="{{ 'Upstream Password' | translate }}" >
|
@@ -86,9 +106,9 @@
|
|
86
106
|
name="upstream_password"
|
87
107
|
ng-model="repository.upstream_password"
|
88
108
|
type="password"/>
|
89
|
-
<
|
109
|
+
<p class="help-block" translate>
|
90
110
|
Password of the upstream repository user for authentication. Leave empty if repository does not require authentication.
|
91
|
-
</
|
111
|
+
</p>
|
92
112
|
</div>
|
93
113
|
|
94
114
|
|
@@ -100,14 +120,15 @@
|
|
100
120
|
</select>
|
101
121
|
</div>
|
102
122
|
|
103
|
-
<div
|
104
|
-
<
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
123
|
+
<div class="checkbox" ng-show="repository.content_type === 'yum'">
|
124
|
+
<label>
|
125
|
+
<input id="mirror_on_sync" name="mirror_on_sync" ng-model="repository.mirror_on_sync" type="checkbox"/>
|
126
|
+
<span translate>Mirror on Sync</span>
|
127
|
+
</label>
|
128
|
+
|
129
|
+
<p class="help-block" translate>
|
109
130
|
Selecting this option will result in contents that are no longer part of the upstream repository being removed during synchronization.
|
110
|
-
</
|
131
|
+
</p>
|
111
132
|
</div>
|
112
133
|
</div>
|
113
134
|
|
@@ -120,16 +141,16 @@
|
|
120
141
|
ng-model="repository.checksum_type"
|
121
142
|
ng-options="type.id as type.name for type in checksums">
|
122
143
|
</select>
|
123
|
-
<
|
144
|
+
<p class="help-block" translate>
|
124
145
|
For older operating systems such as Red Hat Enterprise Linux 5 or CentOS 5 it is recommended to use sha1.
|
125
|
-
</
|
146
|
+
</p>
|
126
147
|
</div>
|
127
148
|
|
128
|
-
<div
|
129
|
-
<
|
130
|
-
|
131
|
-
|
132
|
-
|
149
|
+
<div class="checkbox">
|
150
|
+
<label>
|
151
|
+
<input id="unprotected" name="unprotected" ng-model="repository.unprotected" type="checkbox"/>
|
152
|
+
<span translate>Publish via HTTP</span>
|
153
|
+
</label>
|
133
154
|
</div>
|
134
155
|
|
135
156
|
<div bst-form-group label="{{ 'GPG Key' | translate }}" ng-show="repository.content_type === 'yum'">
|
@@ -0,0 +1,26 @@
|
|
1
|
+
/**
|
2
|
+
* @ngdoc service
|
3
|
+
* @name Bastion.repository.service:ostreeUpstreamSyncPolicy
|
4
|
+
*
|
5
|
+
* @requires translate
|
6
|
+
*
|
7
|
+
* @description
|
8
|
+
* Provides a ostree upstream syncPolicies for repositories
|
9
|
+
*/
|
10
|
+
angular.module('Bastion.repositories').service('OstreeUpstreamSyncPolicy',
|
11
|
+
['translate', function (translate) {
|
12
|
+
|
13
|
+
this.syncPolicies = {
|
14
|
+
'latest': translate('Latest Only'),
|
15
|
+
'all': translate('All History'),
|
16
|
+
'custom': translate('Custom Depth')
|
17
|
+
};
|
18
|
+
|
19
|
+
this.syncPolicyName = function (policy, depth) {
|
20
|
+
if (policy === "custom") {
|
21
|
+
return translate('Custom Depth (Currently %s)').replace('%s', depth.toString());
|
22
|
+
}
|
23
|
+
return this.syncPolicies[policy];
|
24
|
+
};
|
25
|
+
}]
|
26
|
+
);
|
@@ -17,7 +17,8 @@ angular.module('Bastion.repositories', [
|
|
17
17
|
'Bastion.components.formatters',
|
18
18
|
'Bastion.packages',
|
19
19
|
'Bastion.products',
|
20
|
-
'Bastion.docker-manifests'
|
20
|
+
'Bastion.docker-manifests',
|
21
|
+
'Bastion.files'
|
21
22
|
]);
|
22
23
|
|
23
24
|
angular.module('Bastion.repositories').run(['$rootScope', '$state', '$stateParams',
|
@@ -56,6 +56,16 @@
|
|
56
56
|
parent: 'product.repositories'
|
57
57
|
}
|
58
58
|
})
|
59
|
+
.state('product.repository.advanced_sync', {
|
60
|
+
url: '/advanced_sync',
|
61
|
+
permission: 'view_products',
|
62
|
+
controller: 'RepositoryAdvancedSyncController',
|
63
|
+
templateUrl: 'products/details/repositories/details/views/repository-advanced-sync.html',
|
64
|
+
ncyBreadcrumb: {
|
65
|
+
label: "{{ 'Advanced Sync' | translate }}",
|
66
|
+
parent: 'product.repository.info'
|
67
|
+
}
|
68
|
+
})
|
59
69
|
.state('product.repository.manage-content', {
|
60
70
|
abstract: true,
|
61
71
|
url: '/content',
|
@@ -98,6 +108,15 @@
|
|
98
108
|
parent: 'product.repository.info'
|
99
109
|
}
|
100
110
|
})
|
111
|
+
.state('product.repository.manage-content.files', {
|
112
|
+
url: '/content/files',
|
113
|
+
permission: 'view_products',
|
114
|
+
templateUrl: 'products/details/repositories/details/views/repository-manage-files.html',
|
115
|
+
ncyBreadcrumb: {
|
116
|
+
label: "{{'Files' | translate }}",
|
117
|
+
parent: 'product.repository.info'
|
118
|
+
}
|
119
|
+
})
|
101
120
|
.state('product.repository.manage-content.ostree-branches', {
|
102
121
|
url: '/content/ostree_branches',
|
103
122
|
permission: 'view_products',
|
@@ -20,7 +20,8 @@ angular.module('Bastion.repositories').factory('Repository',
|
|
20
20
|
removePackages: { method: 'PUT', params: { action: 'remove_packages'}},
|
21
21
|
removeContent: { method: 'PUT', params: { action: 'remove_content'}},
|
22
22
|
autocomplete: {method: 'GET', isArray: true, params: {id: 'auto_complete_search'}},
|
23
|
-
repositoryTypes: {method: 'GET', isArray: true, params: {id: 'repository_types'}}
|
23
|
+
repositoryTypes: {method: 'GET', isArray: true, params: {id: 'repository_types'}},
|
24
|
+
republish: {method: 'PUT', params: { action: 'republish' }}
|
24
25
|
}
|
25
26
|
);
|
26
27
|
|
@@ -22,20 +22,20 @@
|
|
22
22
|
|
23
23
|
<div data-extend-template="layouts/partials/table.html">
|
24
24
|
<div data-block="list-actions">
|
25
|
-
<button class="btn btn-default"
|
25
|
+
<button type="button" class="btn btn-default"
|
26
26
|
ui-sref="product.repositories.new({productId: product.id})"
|
27
27
|
ng-hide="denied('edit_products', product) || product.redhat">
|
28
28
|
<span translate>New Repository</span>
|
29
29
|
</button>
|
30
30
|
|
31
|
-
<button class="btn btn-default"
|
31
|
+
<button type="button" class="btn btn-default"
|
32
32
|
ng-click="syncSelectedRepositories()"
|
33
33
|
ng-hide="denied('sync_products', product)"
|
34
34
|
ng-disabled="syncInProgress || table.numSelected == 0">
|
35
35
|
<span translate>Sync Now</span>
|
36
36
|
</button>
|
37
37
|
|
38
|
-
<button class="btn btn-default"
|
38
|
+
<button type="button" class="btn btn-default"
|
39
39
|
ng-click="openModal()"
|
40
40
|
ng-show="canRemoveRepositories(product)"
|
41
41
|
ng-disabled="removingRepositories || table.numSelected == 0">
|
@@ -88,9 +88,8 @@
|
|
88
88
|
</span>
|
89
89
|
|
90
90
|
<div data-block="table">
|
91
|
-
<table
|
92
|
-
|
93
|
-
ng-show="table.rows.length > 0 && !table.working">
|
91
|
+
<table class="table table-striped table-bordered"
|
92
|
+
ng-show="table.rows.length > 0">
|
94
93
|
<thead>
|
95
94
|
<tr bst-table-head row-select>
|
96
95
|
<th bst-table-column="name" translate>Name</th>
|
@@ -138,10 +137,16 @@
|
|
138
137
|
</div>
|
139
138
|
|
140
139
|
<div>
|
141
|
-
<a ui-sref="errata
|
140
|
+
<a ui-sref="errata({repositoryId: repository.id})" translate>
|
142
141
|
{{ repository.content_counts.erratum || 0 }} Errata
|
143
142
|
</a>
|
144
143
|
</div>
|
144
|
+
|
145
|
+
<div>
|
146
|
+
<a ui-sref="product.repository.manage-content.package-groups({productId: product.id, repositoryId: repository.id})">
|
147
|
+
{{ repository.content_counts.package_group || 0 }} Package Groups
|
148
|
+
</a>
|
149
|
+
</div>
|
145
150
|
</span>
|
146
151
|
|
147
152
|
<span ng-show="repository.content_type == 'docker'">
|
@@ -7,8 +7,8 @@
|
|
7
7
|
|
8
8
|
<nav data-block="item-actions">
|
9
9
|
<div class="btn-group" uib-dropdown keyboard-nav bst-feature-flag="custom_products">
|
10
|
-
<button type="button" class="btn btn-default"
|
11
|
-
<span translate>
|
10
|
+
<button type="button" class="btn btn-default" uib-dropdown-toggle>
|
11
|
+
<span translate>Select Action</span>
|
12
12
|
</button>
|
13
13
|
<button type="button" class="btn btn-default" uib-dropdown-toggle>
|
14
14
|
<span class="caret"></span>
|
@@ -1,80 +1,112 @@
|
|
1
1
|
/**
|
2
2
|
* @ngdoc object
|
3
|
-
* @name Bastion.products.controller:
|
3
|
+
* @name Bastion.products.controller:DiscoveryCreateController
|
4
4
|
*
|
5
5
|
* @requires $scope
|
6
6
|
* @requires $q
|
7
7
|
* @requires CurrentOrganization
|
8
8
|
* @requires Product
|
9
9
|
* @requires Repository
|
10
|
+
* @requires GPGKey
|
10
11
|
* @requires FormUtils
|
12
|
+
* @requires DiscoveryRepositories
|
13
|
+
* @requires translate
|
11
14
|
*
|
12
15
|
* @description
|
13
16
|
* Provides the functionality for the repo creation as part of
|
14
17
|
* repository discovery.
|
15
18
|
*/
|
16
|
-
angular.module('Bastion.products').controller('
|
17
|
-
['$scope', '$q', 'CurrentOrganization', 'Product', 'Repository', 'GPGKey', 'FormUtils',
|
18
|
-
function ($scope, $q, CurrentOrganization, Product, Repository, GPGKey, FormUtils) {
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
var currentlyCreating = $scope.currentlyCreating;
|
31
|
-
$scope.currentlyCreating = undefined;
|
32
|
-
$scope.createRepoChoices.creating = false;
|
33
|
-
currentlyCreating.form.$invalid = true;
|
34
|
-
currentlyCreating.form.messages = response.data.errors;
|
35
|
-
}
|
19
|
+
angular.module('Bastion.products').controller('DiscoveryCreateController',
|
20
|
+
['$scope', '$q', 'CurrentOrganization', 'Product', 'Repository', 'GPGKey', 'FormUtils', 'DiscoveryRepositories', 'translate',
|
21
|
+
function ($scope, $q, CurrentOrganization, Product, Repository, GPGKey, FormUtils, DiscoveryRepositories, translate) {
|
22
|
+
|
23
|
+
$scope.errorMessages = [];
|
24
|
+
$scope.successMessages = [];
|
25
|
+
|
26
|
+
$scope.table = {
|
27
|
+
rows: DiscoveryRepositories.getRows(),
|
28
|
+
resource: {
|
29
|
+
total: DiscoveryRepositories.getRows().length,
|
30
|
+
subtotal: DiscoveryRepositories.getRows().length
|
31
|
+
}
|
32
|
+
};
|
36
33
|
|
37
34
|
function convertToResource(repo) {
|
38
|
-
|
35
|
+
var repoParams = {
|
36
|
+
'docker_upstream_name': repo.dockerUpstreamName,
|
39
37
|
name: repo.name,
|
40
38
|
label: repo.label,
|
41
|
-
'content_type':
|
39
|
+
'content_type': repo.contentType,
|
42
40
|
url: repo.url,
|
43
41
|
'product_id': $scope.createRepoChoices.existingProductId,
|
44
|
-
unprotected: $scope.createRepoChoices.unprotected
|
45
|
-
|
42
|
+
unprotected: $scope.createRepoChoices.unprotected,
|
43
|
+
'verify_ssl': $scope.createRepoChoices.verifySsl,
|
44
|
+
'upstream_username': $scope.createRepoChoices.upstreamUsername,
|
45
|
+
'upstream_password': $scope.createRepoChoices.upstreamPassword
|
46
|
+
};
|
47
|
+
|
48
|
+
if (repo.contentType === 'docker') {
|
49
|
+
repoParams.url = $scope.createRepoChoices.repositoryUrl;
|
50
|
+
}
|
51
|
+
|
52
|
+
return new Repository(repoParams);
|
46
53
|
}
|
47
54
|
|
48
55
|
function getNextRepoToCreate() {
|
49
56
|
var found;
|
50
|
-
angular.forEach($scope.
|
51
|
-
if (repo.created !== true &&
|
57
|
+
angular.forEach($scope.table.rows, function (repo) {
|
58
|
+
if (angular.isUndefined(found) && repo.created !== true && repo.form.$invalid !== true) {
|
52
59
|
found = repo;
|
53
60
|
}
|
54
61
|
});
|
55
62
|
return found;
|
56
63
|
}
|
57
64
|
|
65
|
+
function repoCreateError(response) {
|
66
|
+
var currentlyCreating = $scope.currentlyCreating;
|
67
|
+
$scope.currentlyCreating = undefined;
|
68
|
+
currentlyCreating.messages = response.data.displayMessage;
|
69
|
+
currentlyCreating.creating = false;
|
70
|
+
currentlyCreating.form.$invalid = true;
|
71
|
+
}
|
72
|
+
|
58
73
|
function createNextRepo() {
|
59
74
|
var toCreate, repoObject;
|
60
75
|
toCreate = getNextRepoToCreate();
|
61
76
|
|
62
77
|
if (toCreate) {
|
78
|
+
toCreate.messages = translate("Creating repository...");
|
63
79
|
$scope.currentlyCreating = toCreate;
|
64
80
|
repoObject = convertToResource(toCreate);
|
65
81
|
toCreate.creating = true;
|
66
82
|
toCreate.form.$invalid = false;
|
67
83
|
|
68
|
-
repoObject.$save(function () {
|
84
|
+
repoObject.$save(function (task) {
|
69
85
|
toCreate.creating = false;
|
70
86
|
toCreate.created = true;
|
87
|
+
toCreate.messages = translate("Success!");
|
88
|
+
toCreate.repositoryId = task.id;
|
89
|
+
toCreate.productId = task.product.id;
|
71
90
|
createNextRepo();
|
72
|
-
},
|
91
|
+
}, function(response) {
|
92
|
+
repoCreateError(response);
|
93
|
+
createNextRepo();
|
94
|
+
});
|
73
95
|
} else {
|
74
|
-
$scope.
|
96
|
+
$scope.createRepoChoices.creating = false;
|
75
97
|
}
|
76
98
|
}
|
77
99
|
|
100
|
+
function productCreateError(response) {
|
101
|
+
$scope.createRepoChoices.creating = false;
|
102
|
+
angular.forEach(response.data.errors, function (errors, field) {
|
103
|
+
$scope.errorMessages.push(translate('An error occurred while creating the Product: %s').replace('%s', field + ' ' + errors));
|
104
|
+
if (!angular.isUndefined($scope.productForm[field])) {
|
105
|
+
$scope.productForm[field].$error.messages = errors;
|
106
|
+
}
|
107
|
+
});
|
108
|
+
}
|
109
|
+
|
78
110
|
function productCreateSuccess(response) {
|
79
111
|
$scope.createRepoChoices.existingProductId = response.id;
|
80
112
|
$scope.createRepoChoices.newProduct = 'false';
|
@@ -82,7 +114,6 @@ angular.module('Bastion.products').controller('DiscoveryFormController',
|
|
82
114
|
createNextRepo();
|
83
115
|
}
|
84
116
|
|
85
|
-
$scope.discovery = $scope.discovery || {selected: []};
|
86
117
|
$scope.page = {loading: true};
|
87
118
|
$scope.$watch('createRepoChoices.product.name', function () {
|
88
119
|
FormUtils.labelize($scope.createRepoChoices.product);
|
@@ -93,12 +124,16 @@ angular.module('Bastion.products').controller('DiscoveryFormController',
|
|
93
124
|
newProduct: 'false',
|
94
125
|
product: new Product(),
|
95
126
|
unprotected: true,
|
96
|
-
creating: false
|
127
|
+
creating: false,
|
128
|
+
verifySsl: true,
|
129
|
+
repositoryUrl: DiscoveryRepositories.getRepositoryUrl(),
|
130
|
+
upstreamUsername: DiscoveryRepositories.getUpstreamUsername(),
|
131
|
+
upstreamPassword: DiscoveryRepositories.getUpstreamPassword()
|
97
132
|
};
|
98
133
|
|
99
134
|
$scope.createRepoChoices.product['organization_id'] = CurrentOrganization;
|
100
135
|
|
101
|
-
angular.forEach($scope.
|
136
|
+
angular.forEach($scope.table.rows, function (repo) {
|
102
137
|
//Add a fake form to keep track of validations
|
103
138
|
repo.form = {
|
104
139
|
messages: '',
|
@@ -137,9 +172,17 @@ angular.module('Bastion.products').controller('DiscoveryFormController',
|
|
137
172
|
return fieldsEnabled;
|
138
173
|
};
|
139
174
|
|
140
|
-
$scope.gpgKeys =
|
175
|
+
$scope.gpgKeys = function () {
|
176
|
+
var deferred = $q.defer();
|
177
|
+
|
178
|
+
GPGKey.queryUnpaged(function (response) {
|
179
|
+
deferred.resolve(response.results);
|
180
|
+
});
|
181
|
+
|
182
|
+
return deferred.promise;
|
183
|
+
};
|
141
184
|
|
142
|
-
$scope.$watch('
|
185
|
+
$scope.$watch('table.rows', function (newList, oldList) {
|
143
186
|
if (newList) {
|
144
187
|
angular.forEach(newList, function (newItem, position) {
|
145
188
|
if (angular.isUndefined(oldList) || newItem.name !== oldList[position].name) {
|
@@ -157,8 +200,15 @@ angular.module('Bastion.products').controller('DiscoveryFormController',
|
|
157
200
|
return isEqual;
|
158
201
|
});
|
159
202
|
|
203
|
+
$scope.clearInvalidRepos = function () {
|
204
|
+
angular.forEach($scope.table.rows, function (repo) {
|
205
|
+
repo.form.$invalid = false;
|
206
|
+
});
|
207
|
+
};
|
208
|
+
|
160
209
|
$scope.createRepos = function () {
|
161
210
|
$scope.createRepoChoices.creating = true;
|
211
|
+
$scope.clearInvalidRepos();
|
162
212
|
|
163
213
|
if ($scope.createRepoChoices.newProduct === "true") {
|
164
214
|
Product.save($scope.createRepoChoices.product, productCreateSuccess, productCreateError);
|
@@ -167,5 +217,29 @@ angular.module('Bastion.products').controller('DiscoveryFormController',
|
|
167
217
|
}
|
168
218
|
};
|
169
219
|
|
220
|
+
$scope.createStatusIcon = function (repo) {
|
221
|
+
var icon;
|
222
|
+
if (repo.created === true) {
|
223
|
+
icon = 'pficon pficon-ok';
|
224
|
+
} else if (repo.creating === true) {
|
225
|
+
icon = 'fa fa-spinner fa-spin';
|
226
|
+
} else if (angular.isUndefined(repo.messages)) {
|
227
|
+
icon = '';
|
228
|
+
} else {
|
229
|
+
icon = 'pficon pficon-error-circle-o';
|
230
|
+
}
|
231
|
+
|
232
|
+
return icon;
|
233
|
+
};
|
234
|
+
|
235
|
+
$scope.createStatusMessages = function (repo) {
|
236
|
+
var message;
|
237
|
+
if (angular.isUndefined(repo.messages)) {
|
238
|
+
message = translate("Not started");
|
239
|
+
} else {
|
240
|
+
message = repo.messages;
|
241
|
+
}
|
242
|
+
return message;
|
243
|
+
};
|
170
244
|
}]
|
171
245
|
);
|