katello 4.18.1 → 4.19.0.rc2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of katello might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/app/assets/javascripts/katello/locale/bn/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/bn_IN/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/ca/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/cs/katello.js +380 -110
- data/app/assets/javascripts/katello/locale/cs_CZ/katello.js +382 -112
- data/app/assets/javascripts/katello/locale/de/katello.js +385 -115
- data/app/assets/javascripts/katello/locale/de_AT/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/de_DE/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/el/katello.js +380 -110
- data/app/assets/javascripts/katello/locale/en/katello.js +380 -110
- data/app/assets/javascripts/katello/locale/en_GB/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/en_US/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/es/katello.js +383 -113
- data/app/assets/javascripts/katello/locale/et_EE/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/fr/katello.js +388 -118
- data/app/assets/javascripts/katello/locale/gl/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/gu/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/he_IL/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/hi/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/id/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/it/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/ja/katello.js +388 -118
- data/app/assets/javascripts/katello/locale/ka/katello.js +385 -115
- data/app/assets/javascripts/katello/locale/kn/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/ko/katello.js +388 -118
- data/app/assets/javascripts/katello/locale/ml_IN/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/mr/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/nl_NL/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/or/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/pa/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/pl/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/pl_PL/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/pt/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/pt_BR/katello.js +383 -113
- data/app/assets/javascripts/katello/locale/ro/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/ro_RO/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/ru/katello.js +381 -111
- data/app/assets/javascripts/katello/locale/sl/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/sv_SE/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/ta/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/ta_IN/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/te/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/tr/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/vi/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/vi_VN/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/zh/katello.js +379 -109
- data/app/assets/javascripts/katello/locale/zh_CN/katello.js +388 -118
- data/app/assets/javascripts/katello/locale/zh_TW/katello.js +381 -111
- data/app/controllers/katello/api/registry/registry_proxies_controller.rb +41 -12
- data/app/controllers/katello/api/rhsm/candlepin_proxies_controller.rb +1 -1
- data/app/controllers/katello/api/v2/activation_keys_controller.rb +3 -65
- data/app/controllers/katello/api/v2/content_view_filter_rules_controller.rb +1 -1
- data/app/controllers/katello/api/v2/content_views_controller.rb +18 -3
- data/app/controllers/katello/api/v2/debs_controller.rb +21 -11
- data/app/controllers/katello/api/v2/docker_tags_controller.rb +7 -0
- data/app/controllers/katello/api/v2/flatpak_remote_repositories_controller.rb +21 -19
- data/app/controllers/katello/api/v2/host_debs_controller.rb +16 -1
- data/app/controllers/katello/api/v2/host_subscriptions_controller.rb +3 -60
- data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +10 -53
- data/app/controllers/katello/api/v2/repositories_controller.rb +0 -1
- data/app/controllers/katello/concerns/api/v2/hosts_controller_extensions.rb +10 -0
- data/app/controllers/katello/concerns/organizations_controller_extensions.rb +3 -0
- data/app/lib/actions/candlepin/activation_key/create.rb +0 -2
- data/app/lib/actions/candlepin/activation_key/update.rb +0 -2
- data/app/lib/actions/candlepin/product/content_create.rb +3 -5
- data/app/lib/actions/candlepin/product/content_update.rb +2 -3
- data/app/lib/actions/helpers/rolling_cv_repos.rb +1 -1
- data/app/lib/actions/katello/activation_key/create.rb +0 -1
- data/app/lib/actions/katello/activation_key/update.rb +0 -2
- data/app/lib/actions/katello/capsule_content/sync_capsule.rb +1 -6
- data/app/lib/actions/katello/content_credential/update.rb +1 -1
- data/app/lib/actions/katello/content_view/add_rolling_repo_clone.rb +18 -24
- data/app/lib/actions/katello/content_view/create.rb +9 -4
- data/app/lib/actions/katello/content_view/refresh_rolling_repo.rb +6 -1
- data/app/lib/actions/katello/content_view/remove_rolling_repo_clone.rb +16 -11
- data/app/lib/actions/katello/content_view/update.rb +34 -7
- data/app/lib/actions/katello/product/content_create.rb +2 -2
- data/app/lib/actions/katello/product/content_destroy.rb +1 -1
- data/app/lib/actions/katello/repository/check_matching_content.rb +1 -1
- data/app/lib/actions/katello/repository/clone_contents.rb +1 -1
- data/app/lib/actions/katello/repository/create.rb +1 -1
- data/app/lib/actions/katello/repository/destroy.rb +4 -4
- data/app/lib/actions/katello/repository/finish_upload.rb +1 -1
- data/app/lib/actions/katello/repository/sync.rb +1 -1
- data/app/lib/actions/pulp3/orchestration/repository/copy_all_units.rb +2 -2
- data/app/lib/actions/pulp3/orchestration/repository/generate_metadata.rb +1 -1
- data/app/lib/actions/pulp3/orchestration/repository/multi_copy_all_units.rb +1 -1
- data/app/lib/actions/pulp3/repository/save_publication.rb +3 -1
- data/app/lib/actions/pulp3/repository/save_version.rb +45 -24
- data/app/lib/actions/pulp3/repository/save_versions.rb +2 -1
- data/app/lib/katello/resources/candlepin/activation_key.rb +3 -4
- data/app/lib/katello/resources/candlepin/upstream_job.rb +9 -1
- data/app/lib/katello/resources/candlepin.rb +4 -0
- data/app/models/katello/authorization/repository.rb +17 -4
- data/app/models/katello/concerns/subscription_facet_host_extensions.rb +0 -7
- data/app/models/katello/content_view_deb_filter.rb +10 -0
- data/app/models/katello/content_view_deb_filter_rule.rb +7 -0
- data/app/models/katello/deb.rb +10 -10
- data/app/models/katello/erratum.rb +1 -1
- data/app/models/katello/glue/provider.rb +14 -3
- data/app/models/katello/host/content_facet.rb +1 -1
- data/app/models/katello/host/subscription_facet.rb +1 -7
- data/app/models/katello/product_content.rb +2 -2
- data/app/models/katello/repository.rb +4 -23
- data/app/models/katello/root_repository.rb +2 -5
- data/app/services/katello/candlepin/event_handler.rb +0 -33
- data/app/services/katello/candlepin/message_handler.rb +0 -41
- data/app/services/katello/content_unit_indexer.rb +59 -13
- data/app/services/katello/product_content_finder.rb +5 -4
- data/app/services/katello/pulp3/alternate_content_source.rb +2 -2
- data/app/services/katello/pulp3/ansible_collection.rb +1 -0
- data/app/services/katello/pulp3/api/content_guard.rb +5 -5
- data/app/services/katello/pulp3/api/core.rb +10 -0
- data/app/services/katello/pulp3/deb.rb +1 -0
- data/app/services/katello/pulp3/docker_manifest.rb +1 -0
- data/app/services/katello/pulp3/docker_manifest_list.rb +1 -0
- data/app/services/katello/pulp3/docker_tag.rb +1 -0
- data/app/services/katello/pulp3/file_unit.rb +1 -0
- data/app/services/katello/pulp3/generic_content_unit.rb +1 -0
- data/app/services/katello/pulp3/module_stream.rb +1 -0
- data/app/services/katello/pulp3/package_group.rb +1 -0
- data/app/services/katello/pulp3/repository/apt.rb +41 -16
- data/app/services/katello/pulp3/repository.rb +59 -10
- data/app/services/katello/pulp3/rpm.rb +3 -2
- data/app/services/katello/pulp3/srpm.rb +3 -2
- data/app/services/katello/pulp3/task_group.rb +1 -1
- data/app/services/katello/registration_manager.rb +19 -17
- data/app/services/katello/repository_type_manager.rb +7 -5
- data/app/services/katello/smart_proxy_helper.rb +1 -6
- data/app/views/foreman/job_templates/upload_profile.erb +5 -0
- data/app/views/katello/api/v2/activation_keys/base.json.rabl +1 -1
- data/app/views/katello/api/v2/content_views/base.json.rabl +1 -0
- data/app/views/katello/api/v2/debs/thindex.json.rabl +6 -0
- data/app/views/katello/api/v2/docker_tags/_base.json.rabl +32 -0
- data/app/views/katello/api/v2/docker_tags/show.json.rabl +0 -5
- data/app/views/katello/api/v2/flatpak_remotes/index.json.rabl +6 -0
- data/app/views/katello/api/v2/host_debs/installed_debs.json.rabl +6 -0
- data/app/views/katello/api/v2/hosts_bulk_actions/applicable_errata.json.rabl +1 -1
- data/app/views/katello/api/v2/hosts_bulk_actions/applicable_erratum.json.rabl +9 -0
- data/app/views/katello/api/v2/hosts_bulk_actions/installable_errata.json.rabl +1 -1
- data/app/views/katello/api/v2/hosts_bulk_actions/{erratum.json.rabl → installable_erratum.json.rabl} +3 -3
- data/app/views/katello/api/v2/subscription_facet/base.json.rabl +1 -1
- data/config/initializers/monkeys.rb +1 -0
- data/config/routes/api/v2.rb +2 -2
- data/config/routes/overrides.rb +2 -7
- data/config/routes.rb +2 -0
- data/db/migrate/20211019192121_create_cdn_configuration.katello.rb +1 -1
- data/db/migrate/20250912000000_add_pulp_prn_fields.rb +73 -0
- data/db/migrate/20250912000001_populate_pulp_prn_fields.rb +403 -0
- data/db/migrate/20251009142516_remove_auto_attach_from_activation_keys.rb +5 -0
- data/db/migrate/20251009142517_remove_autoheal_from_subscription_facets.rb +5 -0
- data/db/seeds.d/111-upgrade_tasks.rb +2 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/bn.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/bn_IN.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ca.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/cs_CZ.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/de.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/de_AT.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/de_DE.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/el.po +12 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/en_GB.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/en_US.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/es.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/et_EE.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/fr.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/gl.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/gu.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/he_IL.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/hi.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/id.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/it.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ja.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ka.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/kn.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ko.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ml_IN.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/mr.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/nl_NL.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/or.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pa.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pl.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pl_PL.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pt.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pt_BR.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ro.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ro_RO.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ru.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/sl.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/sv_SE.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ta.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ta_IN.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/te.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/tr.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/vi.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/vi_VN.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/zh.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/zh_CN.po +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/zh_TW.po +10 -0
- data/lib/katello/permission_creator.rb +2 -2
- data/lib/katello/permissions/host_permissions.rb +0 -6
- data/lib/katello/plugin.rb +17 -8
- data/lib/katello/tasks/jenkins.rake +1 -1
- data/lib/katello/tasks/upgrades/4.19/enable_structured_apt_for_deb.rake +87 -0
- data/lib/katello/tasks/upgrades/4.19/populate_repository_version_prns.rake +32 -0
- data/lib/katello/version.rb +1 -1
- data/lib/monkeys/fix_rpm_repository_gpgcheck.rb +38 -0
- data/locale/action_names.rb +0 -6
- data/locale/bn/LC_MESSAGES/katello.mo +0 -0
- data/locale/bn/katello.po +379 -109
- data/locale/bn_IN/LC_MESSAGES/katello.mo +0 -0
- data/locale/bn_IN/katello.po +379 -109
- data/locale/ca/LC_MESSAGES/katello.mo +0 -0
- data/locale/ca/katello.po +379 -109
- data/locale/cs/LC_MESSAGES/katello.mo +0 -0
- data/locale/cs/katello.po +380 -111
- data/locale/cs_CZ/LC_MESSAGES/katello.mo +0 -0
- data/locale/cs_CZ/katello.po +382 -112
- data/locale/de/LC_MESSAGES/katello.mo +0 -0
- data/locale/de/katello.po +386 -116
- data/locale/de_AT/LC_MESSAGES/katello.mo +0 -0
- data/locale/de_AT/katello.po +379 -109
- data/locale/de_DE/LC_MESSAGES/katello.mo +0 -0
- data/locale/de_DE/katello.po +379 -109
- data/locale/el/LC_MESSAGES/katello.mo +0 -0
- data/locale/el/katello.po +381 -111
- data/locale/en/LC_MESSAGES/katello.mo +0 -0
- data/locale/en/katello.po +380 -111
- data/locale/en_GB/LC_MESSAGES/katello.mo +0 -0
- data/locale/en_GB/katello.po +379 -109
- data/locale/en_US/LC_MESSAGES/katello.mo +0 -0
- data/locale/en_US/katello.po +379 -109
- data/locale/es/LC_MESSAGES/katello.mo +0 -0
- data/locale/es/katello.po +383 -113
- data/locale/et_EE/LC_MESSAGES/katello.mo +0 -0
- data/locale/et_EE/katello.po +379 -109
- data/locale/fr/LC_MESSAGES/katello.mo +0 -0
- data/locale/fr/katello.po +389 -119
- data/locale/gl/LC_MESSAGES/katello.mo +0 -0
- data/locale/gl/katello.po +379 -109
- data/locale/gu/LC_MESSAGES/katello.mo +0 -0
- data/locale/gu/katello.po +379 -109
- data/locale/he_IL/LC_MESSAGES/katello.mo +0 -0
- data/locale/he_IL/katello.po +379 -109
- data/locale/hi/LC_MESSAGES/katello.mo +0 -0
- data/locale/hi/katello.po +379 -109
- data/locale/id/LC_MESSAGES/katello.mo +0 -0
- data/locale/id/katello.po +379 -109
- data/locale/it/LC_MESSAGES/katello.mo +0 -0
- data/locale/it/katello.po +379 -109
- data/locale/ja/LC_MESSAGES/katello.mo +0 -0
- data/locale/ja/katello.po +390 -119
- data/locale/ka/LC_MESSAGES/katello.mo +0 -0
- data/locale/ka/katello.po +385 -115
- data/locale/katello.pot +1273 -831
- data/locale/kn/LC_MESSAGES/katello.mo +0 -0
- data/locale/kn/katello.po +379 -109
- data/locale/ko/LC_MESSAGES/katello.mo +0 -0
- data/locale/ko/katello.po +389 -119
- data/locale/ml_IN/LC_MESSAGES/katello.mo +0 -0
- data/locale/ml_IN/katello.po +379 -109
- data/locale/mr/LC_MESSAGES/katello.mo +0 -0
- data/locale/mr/katello.po +379 -109
- data/locale/nl_NL/LC_MESSAGES/katello.mo +0 -0
- data/locale/nl_NL/katello.po +379 -109
- data/locale/or/LC_MESSAGES/katello.mo +0 -0
- data/locale/or/katello.po +379 -109
- data/locale/pa/LC_MESSAGES/katello.mo +0 -0
- data/locale/pa/katello.po +379 -109
- data/locale/pl/LC_MESSAGES/katello.mo +0 -0
- data/locale/pl/katello.po +379 -109
- data/locale/pl_PL/LC_MESSAGES/katello.mo +0 -0
- data/locale/pl_PL/katello.po +379 -109
- data/locale/pt/LC_MESSAGES/katello.mo +0 -0
- data/locale/pt/katello.po +379 -109
- data/locale/pt_BR/LC_MESSAGES/katello.mo +0 -0
- data/locale/pt_BR/katello.po +383 -113
- data/locale/ro/LC_MESSAGES/katello.mo +0 -0
- data/locale/ro/katello.po +379 -109
- data/locale/ro_RO/LC_MESSAGES/katello.mo +0 -0
- data/locale/ro_RO/katello.po +379 -109
- data/locale/ru/LC_MESSAGES/katello.mo +0 -0
- data/locale/ru/katello.po +381 -111
- data/locale/sl/LC_MESSAGES/katello.mo +0 -0
- data/locale/sl/katello.po +379 -109
- data/locale/sv_SE/LC_MESSAGES/katello.mo +0 -0
- data/locale/sv_SE/katello.po +379 -109
- data/locale/ta/LC_MESSAGES/katello.mo +0 -0
- data/locale/ta/katello.po +379 -109
- data/locale/ta_IN/LC_MESSAGES/katello.mo +0 -0
- data/locale/ta_IN/katello.po +379 -109
- data/locale/te/LC_MESSAGES/katello.mo +0 -0
- data/locale/te/katello.po +379 -109
- data/locale/tr/LC_MESSAGES/katello.mo +0 -0
- data/locale/tr/katello.po +379 -109
- data/locale/vi/LC_MESSAGES/katello.mo +0 -0
- data/locale/vi/katello.po +379 -109
- data/locale/vi_VN/LC_MESSAGES/katello.mo +0 -0
- data/locale/vi_VN/katello.po +379 -109
- data/locale/zh/LC_MESSAGES/katello.mo +0 -0
- data/locale/zh/katello.po +379 -109
- data/locale/zh_CN/LC_MESSAGES/katello.mo +0 -0
- data/locale/zh_CN/katello.po +389 -119
- data/locale/zh_TW/LC_MESSAGES/katello.mo +0 -0
- data/locale/zh_TW/katello.po +381 -111
- data/webpack/ForemanColumnExtensions/index.js +46 -2
- data/webpack/components/Content/Details/__tests__/__snapshots__/ContentDetails.test.js.snap +2 -2
- data/webpack/components/extensions/HostDetails/Cards/SystemPurposeCard/SystemPurposeEditModal.js +0 -2
- data/webpack/components/extensions/HostDetails/Cards/SystemPurposeCard/__tests__/SystemPurposeEditModal.test.js +0 -2
- data/webpack/components/extensions/Hosts/ActionsBar/index.js +1 -0
- data/webpack/components/extensions/Hosts/BulkActions/BulkActionsConstants.js +7 -0
- data/webpack/components/extensions/Hosts/BulkActions/BulkChangeHostCollectionsModal/BulkChangeHostCollectionsModal.js +388 -0
- data/webpack/components/extensions/Hosts/BulkActions/BulkChangeHostCollectionsModal/__tests__/BulkChangeHostCollectionsModal.test.js +640 -0
- data/webpack/components/extensions/Hosts/BulkActions/BulkChangeHostCollectionsModal/actions.js +28 -0
- data/webpack/components/extensions/Hosts/BulkActions/BulkChangeHostCollectionsModal/index.js +71 -0
- data/webpack/components/extensions/Hosts/BulkActions/BulkErrataWizard/02_BulkErrataTable.js +1 -1
- data/webpack/components/extensions/Hosts/BulkActions/BulkErrataWizard/BulkErrataWizard.js +1 -1
- data/webpack/components/extensions/Hosts/BulkActions/BulkPackagesWizard/02_BulkPackagesTable.js +11 -4
- data/webpack/components/extensions/Hosts/BulkActions/BulkPackagesWizard/BulkPackagesWizard.js +51 -24
- data/webpack/components/extensions/Hosts/BulkActions/BulkRepositorySetsWizard/01_BulkRepositorySetsTable.js +1 -1
- data/webpack/components/extensions/Hosts/BulkActions/HostReview.js +8 -1
- data/webpack/containers/Application/config.js +11 -1
- data/webpack/global_index.js +3 -0
- data/webpack/scenes/{BootedContainerImages → ContainerImages/Booted}/BootedContainerImagesConstants.js +1 -1
- data/webpack/scenes/{BootedContainerImages → ContainerImages/Booted}/BootedContainerImagesPage.js +7 -43
- data/webpack/scenes/{BootedContainerImages → ContainerImages/Booted}/__tests__/bootedContainerImagesPage.test.js +1 -1
- data/webpack/scenes/ContainerImages/ContainerImagesPage.js +86 -0
- data/webpack/scenes/ContainerImages/LabelsAnnotationsModal.js +105 -0
- data/webpack/scenes/ContainerImages/Synced/Details/ManifestDetails.js +218 -0
- data/webpack/scenes/ContainerImages/Synced/Details/ManifestDetailsActions.js +15 -0
- data/webpack/scenes/ContainerImages/Synced/Details/ManifestDetailsSelectors.js +16 -0
- data/webpack/scenes/ContainerImages/Synced/Details/__tests__/ManifestDetails.test.js +395 -0
- data/webpack/scenes/ContainerImages/Synced/Details/__tests__/manifestDetails.fixtures.json +43 -0
- data/webpack/scenes/ContainerImages/Synced/Details/__tests__/manifestList.fixtures.json +58 -0
- data/webpack/scenes/ContainerImages/Synced/Details/index.js +4 -0
- data/webpack/scenes/ContainerImages/Synced/SyncedContainerImagesPage.js +359 -0
- data/webpack/scenes/ContainerImages/Synced/SyncedContainerImagesPage.scss +21 -0
- data/webpack/scenes/ContainerImages/Synced/__tests__/LabelsAnnotationsModal.test.js +69 -0
- data/webpack/scenes/ContainerImages/Synced/__tests__/SyncedContainerImagesPage.test.js +335 -0
- data/webpack/scenes/ContainerImages/Synced/__tests__/syncedContainerImages.fixtures.json +105 -0
- data/webpack/scenes/ContainerImages/TableEmptyState.js +67 -0
- data/webpack/scenes/ContainerImages/containerImagesHelpers.js +48 -0
- data/webpack/scenes/ContainerImages/index.js +4 -0
- data/webpack/scenes/ContentViews/Create/CreateContentViewForm.js +29 -3
- data/webpack/scenes/ContentViews/Create/__tests__/contentViewCreateResult.fixtures.json +1 -0
- data/webpack/scenes/ContentViews/Create/__tests__/createContentView.test.js +45 -1
- data/webpack/scenes/ContentViews/Delete/__tests__/affectedHosts.fixtures.json +0 -1
- data/webpack/scenes/ContentViews/Details/ContentViewInfo.js +59 -1
- data/webpack/scenes/ContentViews/Details/Filters/CVDebFilterContent.js +1 -0
- data/webpack/scenes/ContentViews/Details/Filters/Rules/DebPackage/AddEditDebPackageRuleModal.js +164 -24
- data/webpack/scenes/ContentViews/Details/Filters/__tests__/CVDebFilterContent.test.js +268 -0
- data/webpack/scenes/ContentViews/Details/Filters/__tests__/cvDebFilterDetail.fixtures.json +95 -0
- data/webpack/scenes/ContentViews/Details/Filters/__tests__/cvDebFilterRules.fixtures.json +31 -0
- data/webpack/scenes/ContentViews/Details/Filters/__tests__/emptyCVDebFilterRules.fixtures.json +10 -0
- data/webpack/scenes/ContentViews/Details/Versions/BulkDelete/__tests__/hosts.fixtures.json +0 -1
- data/webpack/scenes/ContentViews/Details/Versions/Delete/__tests__/cvAffectedHosts.fixture.json +0 -1
- data/webpack/scenes/ContentViews/Details/__tests__/contentViewRollingDetail.test.js +15 -0
- data/webpack/scenes/ContentViews/Details/__tests__/contentViewRollingDetails.fixtures.json +1 -0
- data/webpack/scenes/ContentViews/__tests__/contentViewPage.test.js +9 -0
- data/webpack/scenes/FlatpakRemotes/CreateEdit/CreateFlatpakRemoteModal.js +5 -3
- data/webpack/scenes/FlatpakRemotes/CreateEdit/EditFlatpakRemotesModal.js +1 -1
- data/webpack/scenes/FlatpakRemotes/CreateEdit/FlatpakRemoteform.js +35 -3
- data/webpack/scenes/FlatpakRemotes/Details/FlatpakRemoteDetails.js +1 -1
- data/webpack/scenes/FlatpakRemotes/Details/RemoteRepositories/RemoteRepositoriesTable.css +3 -0
- data/webpack/scenes/FlatpakRemotes/Details/RemoteRepositories/RemoteRepositoriesTable.js +63 -132
- data/webpack/scenes/FlatpakRemotes/FlatpakRemotesPage.js +67 -143
- data/webpack/scenes/SmartProxy/ExpandableCvDetails.js +10 -2
- data/webpack/scenes/SmartProxy/SmartProxyContentActions.js +13 -2
- data/webpack/scenes/SmartProxy/SmartProxyContentConstants.js +1 -0
- data/webpack/scenes/SmartProxy/SmartProxyExpandableTable.js +8 -2
- data/webpack/scenes/SmartProxy/__tests__/SmartProxyContentTest.js +67 -1
- data/webpack/scenes/Subscriptions/Details/__tests__/__snapshots__/SubscriptionDetails.test.js.snap +2 -2
- data/webpack/scenes/Subscriptions/SubscriptionConstants.js +0 -2
- data/webpack/scenes/Subscriptions/SubscriptionReducer.js +15 -5
- data/webpack/scenes/Subscriptions/SubscriptionsPage.js +22 -5
- data/webpack/scenes/Subscriptions/__tests__/SubscriptionsPage.test.js +141 -0
- data/webpack/scenes/Subscriptions/__tests__/__snapshots__/SubscriptionsActions.test.js.snap +2 -2
- metadata +82 -56
- data/app/lib/actions/katello/host/attach_subscriptions.rb +0 -59
- data/app/lib/actions/katello/host/auto_attach_subscriptions.rb +0 -22
- data/app/lib/actions/katello/host/remove_subscriptions.rb +0 -50
- data/app/lib/actions/katello/organization/simple_content_access/disable.rb +0 -25
- data/app/lib/actions/katello/organization/simple_content_access/enable.rb +0 -25
- data/app/lib/actions/katello/organization/simple_content_access/toggle.rb +0 -42
- data/lib/katello/tasks/migrate_structure_content_for_deb.rake +0 -105
- data/lib/katello/tasks/upgrades/4.2/remove_checksum_values.rake +0 -17
- /data/webpack/scenes/{BootedContainerImages → ContainerImages/Booted}/__tests__/bootedContainerImages.fixtures.js +0 -0
- /data/webpack/scenes/{BootedContainerImages → ContainerImages/Booted}/index.js +0 -0
|
@@ -3146,6 +3146,10 @@ msgid ""
|
|
|
3146
3146
|
"OSTree Repositories <div>{{ library.counts.ostree_repositories || 0 }}</div>"
|
|
3147
3147
|
msgstr ""
|
|
3148
3148
|
|
|
3149
|
+
#: app/assets/javascripts/bastion_katello/errata/errata-type.filter.js
|
|
3150
|
+
msgid "Other Advisory"
|
|
3151
|
+
msgstr ""
|
|
3152
|
+
|
|
3149
3153
|
#: app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js
|
|
3150
3154
|
msgid "Overridden"
|
|
3151
3155
|
msgstr ""
|
|
@@ -5022,6 +5026,12 @@ msgid ""
|
|
|
5022
5026
|
"repository does not require authentication."
|
|
5023
5027
|
msgstr ""
|
|
5024
5028
|
|
|
5029
|
+
#: app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html
|
|
5030
|
+
msgid ""
|
|
5031
|
+
"Using a search parameter will improve repository discovery. A blank search "
|
|
5032
|
+
"might return an incomplete list due to registry's API limits."
|
|
5033
|
+
msgstr ""
|
|
5034
|
+
|
|
5025
5035
|
#: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
|
|
5026
5036
|
msgid "Variant"
|
|
5027
5037
|
msgstr ""
|
|
@@ -3125,6 +3125,10 @@ msgid ""
|
|
|
3125
3125
|
"OSTree Repositories <div>{{ library.counts.ostree_repositories || 0 }}</div>"
|
|
3126
3126
|
msgstr ""
|
|
3127
3127
|
|
|
3128
|
+
#: app/assets/javascripts/bastion_katello/errata/errata-type.filter.js
|
|
3129
|
+
msgid "Other Advisory"
|
|
3130
|
+
msgstr ""
|
|
3131
|
+
|
|
3128
3132
|
#: app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js
|
|
3129
3133
|
msgid "Overridden"
|
|
3130
3134
|
msgstr ""
|
|
@@ -4989,6 +4993,12 @@ msgid ""
|
|
|
4989
4993
|
"repository does not require authentication."
|
|
4990
4994
|
msgstr ""
|
|
4991
4995
|
|
|
4996
|
+
#: app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html
|
|
4997
|
+
msgid ""
|
|
4998
|
+
"Using a search parameter will improve repository discovery. A blank search "
|
|
4999
|
+
"might return an incomplete list due to registry's API limits."
|
|
5000
|
+
msgstr ""
|
|
5001
|
+
|
|
4992
5002
|
#: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
|
|
4993
5003
|
msgid "Variant"
|
|
4994
5004
|
msgstr ""
|
|
@@ -3124,6 +3124,10 @@ msgid ""
|
|
|
3124
3124
|
"OSTree Repositories <div>{{ library.counts.ostree_repositories || 0 }}</div>"
|
|
3125
3125
|
msgstr ""
|
|
3126
3126
|
|
|
3127
|
+
#: app/assets/javascripts/bastion_katello/errata/errata-type.filter.js
|
|
3128
|
+
msgid "Other Advisory"
|
|
3129
|
+
msgstr ""
|
|
3130
|
+
|
|
3127
3131
|
#: app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js
|
|
3128
3132
|
msgid "Overridden"
|
|
3129
3133
|
msgstr ""
|
|
@@ -4988,6 +4992,12 @@ msgid ""
|
|
|
4988
4992
|
"repository does not require authentication."
|
|
4989
4993
|
msgstr ""
|
|
4990
4994
|
|
|
4995
|
+
#: app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html
|
|
4996
|
+
msgid ""
|
|
4997
|
+
"Using a search parameter will improve repository discovery. A blank search "
|
|
4998
|
+
"might return an incomplete list due to registry's API limits."
|
|
4999
|
+
msgstr ""
|
|
5000
|
+
|
|
4991
5001
|
#: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
|
|
4992
5002
|
msgid "Variant"
|
|
4993
5003
|
msgstr ""
|
|
@@ -3124,6 +3124,10 @@ msgid ""
|
|
|
3124
3124
|
"OSTree Repositories <div>{{ library.counts.ostree_repositories || 0 }}</div>"
|
|
3125
3125
|
msgstr ""
|
|
3126
3126
|
|
|
3127
|
+
#: app/assets/javascripts/bastion_katello/errata/errata-type.filter.js
|
|
3128
|
+
msgid "Other Advisory"
|
|
3129
|
+
msgstr ""
|
|
3130
|
+
|
|
3127
3131
|
#: app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js
|
|
3128
3132
|
msgid "Overridden"
|
|
3129
3133
|
msgstr ""
|
|
@@ -4988,6 +4992,12 @@ msgid ""
|
|
|
4988
4992
|
"repository does not require authentication."
|
|
4989
4993
|
msgstr ""
|
|
4990
4994
|
|
|
4995
|
+
#: app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html
|
|
4996
|
+
msgid ""
|
|
4997
|
+
"Using a search parameter will improve repository discovery. A blank search "
|
|
4998
|
+
"might return an incomplete list due to registry's API limits."
|
|
4999
|
+
msgstr ""
|
|
5000
|
+
|
|
4991
5001
|
#: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
|
|
4992
5002
|
msgid "Variant"
|
|
4993
5003
|
msgstr ""
|
|
@@ -3124,6 +3124,10 @@ msgid ""
|
|
|
3124
3124
|
"OSTree Repositories <div>{{ library.counts.ostree_repositories || 0 }}</div>"
|
|
3125
3125
|
msgstr ""
|
|
3126
3126
|
|
|
3127
|
+
#: app/assets/javascripts/bastion_katello/errata/errata-type.filter.js
|
|
3128
|
+
msgid "Other Advisory"
|
|
3129
|
+
msgstr ""
|
|
3130
|
+
|
|
3127
3131
|
#: app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js
|
|
3128
3132
|
msgid "Overridden"
|
|
3129
3133
|
msgstr ""
|
|
@@ -4988,6 +4992,12 @@ msgid ""
|
|
|
4988
4992
|
"repository does not require authentication."
|
|
4989
4993
|
msgstr ""
|
|
4990
4994
|
|
|
4995
|
+
#: app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html
|
|
4996
|
+
msgid ""
|
|
4997
|
+
"Using a search parameter will improve repository discovery. A blank search "
|
|
4998
|
+
"might return an incomplete list due to registry's API limits."
|
|
4999
|
+
msgstr ""
|
|
5000
|
+
|
|
4991
5001
|
#: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
|
|
4992
5002
|
msgid "Variant"
|
|
4993
5003
|
msgstr ""
|
|
@@ -3124,6 +3124,10 @@ msgid ""
|
|
|
3124
3124
|
"OSTree Repositories <div>{{ library.counts.ostree_repositories || 0 }}</div>"
|
|
3125
3125
|
msgstr ""
|
|
3126
3126
|
|
|
3127
|
+
#: app/assets/javascripts/bastion_katello/errata/errata-type.filter.js
|
|
3128
|
+
msgid "Other Advisory"
|
|
3129
|
+
msgstr ""
|
|
3130
|
+
|
|
3127
3131
|
#: app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js
|
|
3128
3132
|
msgid "Overridden"
|
|
3129
3133
|
msgstr ""
|
|
@@ -4988,6 +4992,12 @@ msgid ""
|
|
|
4988
4992
|
"repository does not require authentication."
|
|
4989
4993
|
msgstr ""
|
|
4990
4994
|
|
|
4995
|
+
#: app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html
|
|
4996
|
+
msgid ""
|
|
4997
|
+
"Using a search parameter will improve repository discovery. A blank search "
|
|
4998
|
+
"might return an incomplete list due to registry's API limits."
|
|
4999
|
+
msgstr ""
|
|
5000
|
+
|
|
4991
5001
|
#: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
|
|
4992
5002
|
msgid "Variant"
|
|
4993
5003
|
msgstr ""
|
|
@@ -3109,6 +3109,10 @@ msgid ""
|
|
|
3109
3109
|
"OSTree Repositories <div>{{ library.counts.ostree_repositories || 0 }}</div>"
|
|
3110
3110
|
msgstr ""
|
|
3111
3111
|
|
|
3112
|
+
#: app/assets/javascripts/bastion_katello/errata/errata-type.filter.js
|
|
3113
|
+
msgid "Other Advisory"
|
|
3114
|
+
msgstr ""
|
|
3115
|
+
|
|
3112
3116
|
#: app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js
|
|
3113
3117
|
msgid "Overridden"
|
|
3114
3118
|
msgstr ""
|
|
@@ -4967,6 +4971,12 @@ msgid ""
|
|
|
4967
4971
|
"repository does not require authentication."
|
|
4968
4972
|
msgstr ""
|
|
4969
4973
|
|
|
4974
|
+
#: app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html
|
|
4975
|
+
msgid ""
|
|
4976
|
+
"Using a search parameter will improve repository discovery. A blank search "
|
|
4977
|
+
"might return an incomplete list due to registry's API limits."
|
|
4978
|
+
msgstr ""
|
|
4979
|
+
|
|
4970
4980
|
#: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
|
|
4971
4981
|
msgid "Variant"
|
|
4972
4982
|
msgstr ""
|
|
@@ -3109,6 +3109,10 @@ msgid ""
|
|
|
3109
3109
|
"OSTree Repositories <div>{{ library.counts.ostree_repositories || 0 }}</div>"
|
|
3110
3110
|
msgstr ""
|
|
3111
3111
|
|
|
3112
|
+
#: app/assets/javascripts/bastion_katello/errata/errata-type.filter.js
|
|
3113
|
+
msgid "Other Advisory"
|
|
3114
|
+
msgstr ""
|
|
3115
|
+
|
|
3112
3116
|
#: app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js
|
|
3113
3117
|
msgid "Overridden"
|
|
3114
3118
|
msgstr ""
|
|
@@ -4967,6 +4971,12 @@ msgid ""
|
|
|
4967
4971
|
"repository does not require authentication."
|
|
4968
4972
|
msgstr ""
|
|
4969
4973
|
|
|
4974
|
+
#: app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html
|
|
4975
|
+
msgid ""
|
|
4976
|
+
"Using a search parameter will improve repository discovery. A blank search "
|
|
4977
|
+
"might return an incomplete list due to registry's API limits."
|
|
4978
|
+
msgstr ""
|
|
4979
|
+
|
|
4970
4980
|
#: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
|
|
4971
4981
|
msgid "Variant"
|
|
4972
4982
|
msgstr ""
|
|
@@ -3109,6 +3109,10 @@ msgid ""
|
|
|
3109
3109
|
"OSTree Repositories <div>{{ library.counts.ostree_repositories || 0 }}</div>"
|
|
3110
3110
|
msgstr ""
|
|
3111
3111
|
|
|
3112
|
+
#: app/assets/javascripts/bastion_katello/errata/errata-type.filter.js
|
|
3113
|
+
msgid "Other Advisory"
|
|
3114
|
+
msgstr ""
|
|
3115
|
+
|
|
3112
3116
|
#: app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js
|
|
3113
3117
|
msgid "Overridden"
|
|
3114
3118
|
msgstr ""
|
|
@@ -4967,6 +4971,12 @@ msgid ""
|
|
|
4967
4971
|
"repository does not require authentication."
|
|
4968
4972
|
msgstr ""
|
|
4969
4973
|
|
|
4974
|
+
#: app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html
|
|
4975
|
+
msgid ""
|
|
4976
|
+
"Using a search parameter will improve repository discovery. A blank search "
|
|
4977
|
+
"might return an incomplete list due to registry's API limits."
|
|
4978
|
+
msgstr ""
|
|
4979
|
+
|
|
4970
4980
|
#: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
|
|
4971
4981
|
msgid "Variant"
|
|
4972
4982
|
msgstr ""
|
|
@@ -3148,6 +3148,10 @@ msgid ""
|
|
|
3148
3148
|
"OSTree Repositories <div>{{ library.counts.ostree_repositories || 0 }}</div>"
|
|
3149
3149
|
msgstr "OSTree 仓库 <div>{{ library.counts.ostree_repositories || 0 }}</div>"
|
|
3150
3150
|
|
|
3151
|
+
#: app/assets/javascripts/bastion_katello/errata/errata-type.filter.js
|
|
3152
|
+
msgid "Other Advisory"
|
|
3153
|
+
msgstr ""
|
|
3154
|
+
|
|
3151
3155
|
#: app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js
|
|
3152
3156
|
msgid "Overridden"
|
|
3153
3157
|
msgstr "覆盖"
|
|
@@ -5044,6 +5048,12 @@ msgid ""
|
|
|
5044
5048
|
"repository does not require authentication."
|
|
5045
5049
|
msgstr "用于认证的上游仓库用户的用户名。如果仓库不需要身份验证,则保留为空。"
|
|
5046
5050
|
|
|
5051
|
+
#: app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html
|
|
5052
|
+
msgid ""
|
|
5053
|
+
"Using a search parameter will improve repository discovery. A blank search "
|
|
5054
|
+
"might return an incomplete list due to registry's API limits."
|
|
5055
|
+
msgstr ""
|
|
5056
|
+
|
|
5047
5057
|
#: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
|
|
5048
5058
|
msgid "Variant"
|
|
5049
5059
|
msgstr "变体"
|
|
@@ -3126,6 +3126,10 @@ msgid ""
|
|
|
3126
3126
|
"OSTree Repositories <div>{{ library.counts.ostree_repositories || 0 }}</div>"
|
|
3127
3127
|
msgstr "OSTree 軟體庫 <div>{{ library.counts.ostree_repositories || 0 }}</div>"
|
|
3128
3128
|
|
|
3129
|
+
#: app/assets/javascripts/bastion_katello/errata/errata-type.filter.js
|
|
3130
|
+
msgid "Other Advisory"
|
|
3131
|
+
msgstr ""
|
|
3132
|
+
|
|
3129
3133
|
#: app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js
|
|
3130
3134
|
msgid "Overridden"
|
|
3131
3135
|
msgstr ""
|
|
@@ -4984,6 +4988,12 @@ msgid ""
|
|
|
4984
4988
|
"repository does not require authentication."
|
|
4985
4989
|
msgstr ""
|
|
4986
4990
|
|
|
4991
|
+
#: app/assets/javascripts/bastion_katello/products/discovery/views/discovery.html
|
|
4992
|
+
msgid ""
|
|
4993
|
+
"Using a search parameter will improve repository discovery. A blank search "
|
|
4994
|
+
"might return an incomplete list due to registry's API limits."
|
|
4995
|
+
msgstr ""
|
|
4996
|
+
|
|
4987
4997
|
#: app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html
|
|
4988
4998
|
msgid "Variant"
|
|
4989
4999
|
msgstr "變體"
|
|
@@ -38,7 +38,6 @@ module Katello
|
|
|
38
38
|
@plugin.permission :edit_activation_keys,
|
|
39
39
|
{
|
|
40
40
|
'katello/api/v2/activation_keys' => [:update, :content_override,
|
|
41
|
-
:add_subscriptions, :remove_subscriptions,
|
|
42
41
|
:add_host_collections, :remove_host_collections],
|
|
43
42
|
},
|
|
44
43
|
:resource_type => 'Katello::ActivationKey',
|
|
@@ -254,7 +253,7 @@ module Katello
|
|
|
254
253
|
'katello/api/v2/repositories' => [:index, :show, :repository_types, :content_types, :auto_complete_search, :cancel],
|
|
255
254
|
'katello/api/v2/packages' => [:index, :thindex, :show, :auto_complete_search, :auto_complete_name, :auto_complete_arch, :compare],
|
|
256
255
|
'katello/api/v2/srpms' => [:index, :show, :auto_complete_search, :compare],
|
|
257
|
-
'katello/api/v2/debs' => [:index, :show, :auto_complete_search, :auto_complete_name, :auto_complete_arch, :compare],
|
|
256
|
+
'katello/api/v2/debs' => [:index, :thindex, :show, :auto_complete_search, :auto_complete_name, :auto_complete_arch, :compare],
|
|
258
257
|
'katello/api/v2/package_groups' => [:index, :show, :auto_complete_search, :compare],
|
|
259
258
|
'katello/api/v2/docker_manifests' => [:index, :show, :auto_complete_search, :compare],
|
|
260
259
|
'katello/api/v2/docker_manifest_lists' => [:index, :show, :auto_complete_search, :compare],
|
|
@@ -289,6 +288,7 @@ module Katello
|
|
|
289
288
|
:repo_compare_packages],
|
|
290
289
|
'katello/api/v2/repository_sets' => [:index, :show, :available_repositories, :auto_complete_search],
|
|
291
290
|
'katello/api/v2/host_packages' => [:installed_packages],
|
|
291
|
+
'katello/api/v2/host_debs' => [:installed_debs],
|
|
292
292
|
},
|
|
293
293
|
:resource_type => 'Katello::Product',
|
|
294
294
|
:finder_scope => :readable
|
|
@@ -10,9 +10,6 @@ Foreman::AccessControl.permission(:edit_hosts).actions.concat [
|
|
|
10
10
|
'katello/api/v2/host_packages/upgrade_all',
|
|
11
11
|
'katello/api/v2/host_packages/remove',
|
|
12
12
|
'katello/api/v2/host_packages/auto_complete_search',
|
|
13
|
-
'katello/api/v2/host_subscriptions/auto_attach',
|
|
14
|
-
'katello/api/v2/host_subscriptions/add_subscriptions',
|
|
15
|
-
'katello/api/v2/host_subscriptions/remove_subscriptions',
|
|
16
13
|
'katello/api/v2/host_subscriptions/available_release_versions',
|
|
17
14
|
'katello/api/v2/host_subscriptions/content_override',
|
|
18
15
|
'katello/api/v2/hosts_bulk_actions/bulk_add_host_collections',
|
|
@@ -20,9 +17,6 @@ Foreman::AccessControl.permission(:edit_hosts).actions.concat [
|
|
|
20
17
|
'katello/api/v2/hosts_bulk_actions/install_content',
|
|
21
18
|
'katello/api/v2/hosts_bulk_actions/update_content',
|
|
22
19
|
'katello/api/v2/hosts_bulk_actions/remove_content',
|
|
23
|
-
'katello/api/v2/hosts_bulk_actions/add_subscriptions',
|
|
24
|
-
'katello/api/v2/hosts_bulk_actions/remove_subscriptions',
|
|
25
|
-
'katello/api/v2/hosts_bulk_actions/auto_attach',
|
|
26
20
|
'katello/api/v2/hosts_bulk_actions/content_overrides',
|
|
27
21
|
'katello/api/v2/hosts_bulk_actions/environment_content_view',
|
|
28
22
|
'katello/api/v2/hosts_bulk_actions/release_version',
|
data/lib/katello/plugin.rb
CHANGED
|
@@ -221,6 +221,15 @@ Foreman::Plugin.register :katello do
|
|
|
221
221
|
:after => :content_hosts,
|
|
222
222
|
:turbolinks => false
|
|
223
223
|
|
|
224
|
+
menu :labs_menu,
|
|
225
|
+
:container_images,
|
|
226
|
+
:url => '/labs/container_images',
|
|
227
|
+
:url_hash => {:controller => 'katello/api/v2/container_images_controller',
|
|
228
|
+
:action => 'index'},
|
|
229
|
+
:caption => N_('Container Images'),
|
|
230
|
+
:parent => :lab_features_menu,
|
|
231
|
+
:turbolinks => false
|
|
232
|
+
|
|
224
233
|
extend_template_helpers Katello::KatelloUrlsHelper
|
|
225
234
|
extend_template_helpers Katello::Concerns::BaseTemplateScopeExtensions
|
|
226
235
|
|
|
@@ -242,7 +251,7 @@ Foreman::Plugin.register :katello do
|
|
|
242
251
|
parameter_filter ::Host::Managed, :host_collection_ids => [],
|
|
243
252
|
:content_facet_attributes => [:content_view_id, :lifecycle_environment_id, :content_source_id,
|
|
244
253
|
:host, :kickstart_repository_id],
|
|
245
|
-
:subscription_facet_attributes => [:release_version, :
|
|
254
|
+
:subscription_facet_attributes => [:release_version, :purpose_usage, :purpose_role, :service_level, :host,
|
|
246
255
|
{:installed_products => [:product_id, :product_name, :arch, :version]}, :facts, {:hypervisor_guest_uuids => []}]
|
|
247
256
|
parameter_filter ::Hostgroup, :content_view_id, :lifecycle_environment_id, :content_source_id,
|
|
248
257
|
:kickstart_repository_id
|
|
@@ -316,6 +325,7 @@ Foreman::Plugin.register :katello do
|
|
|
316
325
|
extend_rabl_template 'api/v2/hosts/show', 'katello/api/v2/hosts/host_collections'
|
|
317
326
|
extend_rabl_template 'api/v2/hosts/show', 'katello/api/v2/hosts/show'
|
|
318
327
|
extend_rabl_template 'api/v2/hosts/show', 'katello/api/v2/hosts/os_attributes'
|
|
328
|
+
extend_rabl_template 'api/v2/hosts/index', 'katello/api/v2/hosts/host_collections'
|
|
319
329
|
extend_rabl_template 'api/v2/hosts/index', 'katello/api/v2/hosts/os_attributes'
|
|
320
330
|
extend_rabl_template 'api/v2/http_proxies/show', 'katello/api/v2/http_proxies/show'
|
|
321
331
|
|
|
@@ -596,6 +606,12 @@ Foreman::Plugin.register :katello do
|
|
|
596
606
|
full_name: N_('Delete Host upon unregister'),
|
|
597
607
|
description: N_("When unregistering a host via subscription-manager, also delete the host record. Managed resources linked to host such as virtual machines and DNS records may also be deleted.")
|
|
598
608
|
|
|
609
|
+
setting 'retain_build_profile_upon_unregistration',
|
|
610
|
+
type: :boolean,
|
|
611
|
+
default: false,
|
|
612
|
+
full_name: N_('Retain build profile upon unregistration'),
|
|
613
|
+
description: N_("When enabled, provisioning information like content view environments, kickstart repository, and content source will be retained when a host is unregistered. When disabled, this information will be cleared during unregistration.")
|
|
614
|
+
|
|
599
615
|
setting 'register_hostname_fact',
|
|
600
616
|
type: :string,
|
|
601
617
|
default: '',
|
|
@@ -705,13 +721,6 @@ Foreman::Plugin.register :katello do
|
|
|
705
721
|
full_name: N_('Hide Reclaim Space Warning'),
|
|
706
722
|
description: N_('If this is enabled, the Smart Proxy page will suppress the warning message about reclaiming space.')
|
|
707
723
|
|
|
708
|
-
setting 'deb_enable_structured_apt',
|
|
709
|
-
type: :boolean,
|
|
710
|
-
default: false,
|
|
711
|
-
full_name: N_('Enable structured APT for deb content'),
|
|
712
|
-
description: N_("If set, newly created APT repos in Katello will use the same repo structure as the remote repos they are synchronized from. " \
|
|
713
|
-
"You may migrate existing APT repos to match the setting, by running 'foreman-rake katello:migrate_structure_content_for_deb'.")
|
|
714
|
-
|
|
715
724
|
setting 'registry_token_expiration_minutes',
|
|
716
725
|
type: :integer,
|
|
717
726
|
default: 60,
|
|
@@ -17,7 +17,7 @@ begin
|
|
|
17
17
|
Rake::Task['rake:test:katello:test'].invoke
|
|
18
18
|
end
|
|
19
19
|
|
|
20
|
-
desc "Runs
|
|
20
|
+
desc "Runs pulpcore integration tests"
|
|
21
21
|
task 'katello:pulpcore' do
|
|
22
22
|
Rake::Task['jenkins:setup:minitest'].invoke
|
|
23
23
|
Rake::Task['rake:test:katello:test:pulpcore'].invoke
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
namespace :katello do
|
|
2
|
+
namespace :upgrades do
|
|
3
|
+
namespace '4.19' do
|
|
4
|
+
desc "Migrate all APT repo content using simple mode to use structured APT mode."
|
|
5
|
+
task :enable_structured_apt_for_deb => ['environment', 'dynflow:client', "check_ping"] do
|
|
6
|
+
::ForemanTasks.dynflow.config.remote = true
|
|
7
|
+
::ForemanTasks.dynflow.initialize!
|
|
8
|
+
|
|
9
|
+
User.current = User.anonymous_api_admin # Set a user
|
|
10
|
+
|
|
11
|
+
roots = Katello::RootRepository.deb_type
|
|
12
|
+
|
|
13
|
+
if roots.any?
|
|
14
|
+
puts "Enabling structured APT for all deb type repos not already migrated."
|
|
15
|
+
else
|
|
16
|
+
puts "Since there are no deb type repos, enabling structured APT does not require migration. Skipping."
|
|
17
|
+
exit
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
found_repos_to_migrate = false
|
|
21
|
+
roots.includes(:repositories).each do |root|
|
|
22
|
+
next unless root.content_id
|
|
23
|
+
found_repos_to_migrate = true
|
|
24
|
+
puts "Migrating root repo '#{root.name}', id='#{root.id}'."
|
|
25
|
+
|
|
26
|
+
# Ensure ensure_valid_deb_constraints won't prevent us from saving the root repo.
|
|
27
|
+
unless root.ensure_valid_deb_constraints.blank?
|
|
28
|
+
puts "Root repo '#{root.name}' (id='#{root.id}') violates deb constraints, setting url and deb_releases to nil!"
|
|
29
|
+
root.url = nil
|
|
30
|
+
root.deb_releases = nil
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
repos = root.repositories
|
|
34
|
+
library_instance = root.library_instance
|
|
35
|
+
if root.content_id != 'NEEDS_RE_MIGRATION'
|
|
36
|
+
begin
|
|
37
|
+
# Move the content_id from the root to the library instance so that ContentDestroy will destroy it!
|
|
38
|
+
old_content_id = root.content_id
|
|
39
|
+
library_instance.content_id = old_content_id
|
|
40
|
+
library_instance.save!
|
|
41
|
+
root.content_id = nil
|
|
42
|
+
root.save!
|
|
43
|
+
ForemanTasks.sync_task(::Actions::Katello::Product::ContentDestroy, root.library_instance)
|
|
44
|
+
library_instance.content_id = nil
|
|
45
|
+
library_instance.save!
|
|
46
|
+
rescue
|
|
47
|
+
root.content_id = old_content_id
|
|
48
|
+
root.save!
|
|
49
|
+
library_instance.content_id = nil
|
|
50
|
+
library_instance.save!
|
|
51
|
+
raise
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
begin
|
|
55
|
+
root.content_id = nil
|
|
56
|
+
root.save!
|
|
57
|
+
|
|
58
|
+
repos.each do |repo|
|
|
59
|
+
if repo[:content_id].nil?
|
|
60
|
+
content_create = ForemanTasks.sync_task(::Actions::Katello::Product::ContentCreate, repo)
|
|
61
|
+
content_id = content_create.input[:content_id]
|
|
62
|
+
else
|
|
63
|
+
content_id = repo.content_id
|
|
64
|
+
end
|
|
65
|
+
content_view_environment = repo.content_view_environment
|
|
66
|
+
if content_view_environment
|
|
67
|
+
ForemanTasks.sync_task(::Actions::Candlepin::Environment::AddContentToEnvironment, :view_env_cp_id => content_view_environment.cp_id, :content_id => content_id)
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
rescue
|
|
71
|
+
root.content_id = 'NEEDS_RE_MIGRATION'
|
|
72
|
+
root.save!
|
|
73
|
+
raise
|
|
74
|
+
end
|
|
75
|
+
puts "Successfully migrated root repo '#{root.name}', id='#{root.id}'."
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
if found_repos_to_migrate
|
|
79
|
+
puts "Successfully migrated all remaining repositories to use structured APT!"
|
|
80
|
+
puts "IMPORTANT: Any smart proxies serving deb content that was migrated must be re-synced!"
|
|
81
|
+
else
|
|
82
|
+
puts "Found no repositories that needed migrating. All existing deb type repos are already using structured APT!"
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
namespace :katello do
|
|
2
|
+
namespace :upgrades do
|
|
3
|
+
namespace '4.19' do
|
|
4
|
+
desc "Populate repository version PRNs for all repositories"
|
|
5
|
+
task :populate_repository_version_prns => ["dynflow:client", "check_ping"] do
|
|
6
|
+
User.current = User.anonymous_api_admin
|
|
7
|
+
api = ::Katello::Pulp3::Api::Core.new(SmartProxy.pulp_primary)
|
|
8
|
+
updates = []
|
|
9
|
+
api.core_repository_versions_list_all(fields: 'pulp_href,prn').each do |repo_version|
|
|
10
|
+
next if repo_version.prn.blank?
|
|
11
|
+
updates << { version_href: repo_version.pulp_href, prn: repo_version.prn }
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
return if updates.empty?
|
|
15
|
+
|
|
16
|
+
updates.each_slice(10_000) do |batch|
|
|
17
|
+
when_clauses = batch.map do |update|
|
|
18
|
+
version_href = ::Katello::Repository.connection.quote_string(update[:version_href])
|
|
19
|
+
prn = ::Katello::Repository.connection.quote_string(update[:prn])
|
|
20
|
+
"WHEN '#{version_href}' THEN '#{prn}'"
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
version_hrefs = batch.map { |u| u[:version_href] }
|
|
24
|
+
case_statement = "CASE version_href #{when_clauses.join(' ')} END"
|
|
25
|
+
|
|
26
|
+
::Katello::Repository.where(version_href: version_hrefs)
|
|
27
|
+
.update_all("version_prn = #{case_statement}")
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
data/lib/katello/version.rb
CHANGED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
require 'pulp_rpm_client'
|
|
2
|
+
|
|
3
|
+
# Monkey patch to allow nil values for deprecated gpgcheck and repo_gpgcheck fields
|
|
4
|
+
# These fields were removed in pulp_rpm 3.30.0 but older Pulp versions return null
|
|
5
|
+
# The new bindings don't allow nil, causing ArgumentError when deserializing responses
|
|
6
|
+
[PulpRpmClient::RpmRpmRepositoryResponse, PulpRpmClient::RpmRpmPublicationResponse].each do |klass|
|
|
7
|
+
klass.class_eval do
|
|
8
|
+
# Custom attribute writer method with validation
|
|
9
|
+
# @param [Object] gpgcheck Value to be assigned
|
|
10
|
+
def gpgcheck=(gpgcheck)
|
|
11
|
+
# Allow nil for deprecated field - monkey patch here
|
|
12
|
+
if !gpgcheck.nil? && gpgcheck > 1
|
|
13
|
+
fail ArgumentError, 'invalid value for "gpgcheck", must be smaller than or equal to 1.'
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
if !gpgcheck.nil? && gpgcheck < 0
|
|
17
|
+
fail ArgumentError, 'invalid value for "gpgcheck", must be greater than or equal to 0.'
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
@gpgcheck = gpgcheck
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
# Custom attribute writer method with validation
|
|
24
|
+
# @param [Object] repo_gpgcheck Value to be assigned
|
|
25
|
+
def repo_gpgcheck=(repo_gpgcheck)
|
|
26
|
+
# Allow nil for deprecated field - monkey patch here
|
|
27
|
+
if !repo_gpgcheck.nil? && repo_gpgcheck > 1
|
|
28
|
+
fail ArgumentError, 'invalid value for "repo_gpgcheck", must be smaller than or equal to 1.'
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
if !repo_gpgcheck.nil? && repo_gpgcheck < 0
|
|
32
|
+
fail ArgumentError, 'invalid value for "repo_gpgcheck", must be greater than or equal to 0.'
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
@repo_gpgcheck = repo_gpgcheck
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
data/locale/action_names.rb
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
# Autogenerated!
|
|
2
2
|
_("Abstract async task")
|
|
3
3
|
_("Add rolling repo clone")
|
|
4
|
-
_("Attach subscriptions")
|
|
5
|
-
_("Auto attach subscriptions")
|
|
6
4
|
_("Bulk generate applicability for hosts")
|
|
7
5
|
_("Commit upload")
|
|
8
6
|
_("Copy all units")
|
|
@@ -53,10 +51,8 @@ _("Destroy Content Host")
|
|
|
53
51
|
_("Destroy exporter")
|
|
54
52
|
_("Destroy importer")
|
|
55
53
|
_("Destroy")
|
|
56
|
-
_("Disable Simple Content Access")
|
|
57
54
|
_("Disable")
|
|
58
55
|
_("Discover")
|
|
59
|
-
_("Enable Simple Content Access")
|
|
60
56
|
_("Enable")
|
|
61
57
|
_("Environment contents refresh")
|
|
62
58
|
_("Errata mail")
|
|
@@ -125,7 +121,6 @@ _("Remove from Environment")
|
|
|
125
121
|
_("Remove orphans")
|
|
126
122
|
_("Remove orphans")
|
|
127
123
|
_("Remove rolling repo clone")
|
|
128
|
-
_("Remove subscriptions")
|
|
129
124
|
_("Remove units")
|
|
130
125
|
_("Remove units")
|
|
131
126
|
_("Remove unneeded repos")
|
|
@@ -148,7 +143,6 @@ _("Sync")
|
|
|
148
143
|
_("Syncable export")
|
|
149
144
|
_("Synchronize smart proxy")
|
|
150
145
|
_("Synchronize")
|
|
151
|
-
_("Toggle")
|
|
152
146
|
_("Update Alternate Content Source")
|
|
153
147
|
_("Update CDN Configuration")
|
|
154
148
|
_("Update Content Counts")
|
|
Binary file
|