katello 4.8.4 → 4.9.0.rc1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of katello might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/app/assets/javascripts/katello/hosts/host_and_hostgroup_edit.js +40 -4
- data/app/assets/javascripts/katello/locale/bn/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/cs/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/de/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/en/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/es/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/fr/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/gu/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/hi/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/it/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/ja/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/ka/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/kn/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/ko/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/locale/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/mr/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/or/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/pa/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/pt/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/pt_BR/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/ru/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/ta/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/te/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/zh_CN/katello.js +1 -0
- data/app/assets/javascripts/katello/locale/zh_TW/katello.js +1 -0
- data/app/controllers/katello/api/rhsm/candlepin_proxies_controller.rb +10 -0
- data/app/controllers/katello/api/v2/activation_keys_controller.rb +1 -0
- data/app/controllers/katello/api/v2/content_view_versions_controller.rb +2 -0
- data/app/controllers/katello/api/v2/content_views_controller.rb +22 -12
- data/app/controllers/katello/api/v2/environments_controller.rb +5 -1
- data/app/controllers/katello/api/v2/host_subscriptions_controller.rb +1 -1
- data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +1 -2
- data/app/controllers/katello/api/v2/organizations_controller.rb +11 -0
- data/app/controllers/katello/api/v2/repositories_controller.rb +4 -3
- data/app/controllers/katello/api/v2/repository_sets_controller.rb +13 -4
- data/app/controllers/katello/api/v2/simple_content_access_controller.rb +1 -3
- data/app/controllers/katello/concerns/api/api_controller.rb +2 -2
- data/app/controllers/katello/concerns/content_facet_hosts_controller_extensions.rb +1 -1
- data/app/helpers/katello/hosts_and_hostgroups_helper.rb +6 -4
- data/app/lib/actions/candlepin/product/content_add.rb +13 -1
- data/app/lib/actions/candlepin/product/content_update.rb +2 -1
- data/app/lib/actions/katello/agent_action.rb +3 -4
- data/app/lib/actions/katello/bulk_agent_action.rb +1 -4
- data/app/lib/actions/katello/content_view/publish.rb +1 -0
- data/app/lib/actions/katello/content_view_version/incremental_update.rb +1 -0
- data/app/lib/actions/katello/host/update_content_view.rb +2 -4
- data/app/lib/actions/katello/organization/simple_content_access/enable.rb +0 -10
- data/app/lib/actions/katello/organization/simple_content_access/toggle.rb +2 -12
- data/app/lib/actions/katello/product/content_create.rb +2 -2
- data/app/lib/actions/katello/repository/destroy.rb +15 -7
- data/app/lib/actions/katello/repository/update.rb +23 -1
- data/app/lib/actions/pulp3/abstract_async_task.rb +2 -0
- data/app/lib/actions/pulp3/orchestration/repository/generate_metadata.rb +5 -12
- data/app/lib/katello/concerns/base_template_scope_extensions.rb +34 -2
- data/app/lib/katello/event_daemon/runner.rb +8 -4
- data/app/lib/katello/repo_discovery.rb +3 -1
- data/app/lib/katello/resources/cdn/katello_cdn.rb +4 -8
- data/app/lib/katello/util/default_enablement_migrator.rb +183 -0
- data/app/models/katello/activation_key.rb +4 -0
- data/app/models/katello/alternate_content_source.rb +13 -8
- data/app/models/katello/candlepin/repository_mapper.rb +0 -1
- data/app/models/katello/concerns/content_view_filter_rule_common.rb +42 -0
- data/app/models/katello/concerns/host_managed_extensions.rb +9 -40
- data/app/models/katello/concerns/smart_proxy_extensions.rb +24 -23
- data/app/models/katello/content.rb +9 -0
- data/app/models/katello/content_view.rb +99 -4
- data/app/models/katello/content_view_environment_content_facet.rb +12 -0
- data/app/models/katello/content_view_filter.rb +5 -1
- data/app/models/katello/content_view_package_filter_rule.rb +0 -1
- data/app/models/katello/content_view_repository.rb +0 -1
- data/app/models/katello/content_view_version.rb +26 -0
- data/app/models/katello/docker_meta_tag.rb +4 -0
- data/app/models/katello/host/content_facet.rb +2 -0
- data/app/models/katello/kt_environment.rb +13 -3
- data/app/models/katello/ping.rb +1 -1
- data/app/models/katello/product.rb +1 -1
- data/app/models/katello/product_content.rb +13 -15
- data/app/models/katello/root_repository.rb +21 -2
- data/app/models/katello/sync_plan.rb +2 -6
- data/app/presenters/katello/host_package_presenter.rb +5 -3
- data/app/services/katello/product_content_finder.rb +6 -1
- data/app/services/katello/pulp3/alternate_content_source.rb +5 -0
- data/app/services/katello/pulp3/module_stream.rb +2 -12
- data/app/services/katello/pulp3/repository/yum.rb +3 -0
- data/app/views/foreman/job_templates/install_errata.erb +4 -4
- data/app/views/foreman/job_templates/install_errata_-_katello_ansible_default.erb +4 -7
- data/app/views/foreman/job_templates/install_errata_by_search_query.erb +5 -6
- data/app/views/katello/api/v2/activation_keys/base.json.rabl +6 -0
- data/app/views/katello/api/v2/common/destroy.json.rabl +2 -1
- data/app/views/katello/api/v2/content_credentials/show.json.rabl +1 -1
- data/app/views/katello/api/v2/content_facet/base.json.rabl +10 -9
- data/app/views/katello/api/v2/content_view_repositories/show_all.json.rabl +6 -0
- data/app/views/katello/api/v2/content_view_versions/base.json.rabl +11 -1
- data/app/views/katello/api/v2/content_views/base.json.rabl +3 -0
- data/app/views/katello/api/v2/docker_tags/_base.json.rabl +4 -0
- data/app/views/katello/api/v2/environments/show.json.rabl +10 -0
- data/app/views/katello/api/v2/host_subscriptions/show.json.rabl +1 -0
- data/app/views/katello/api/v2/repositories/index.json.rabl +6 -0
- data/app/views/katello/api/v2/repositories/show.json.rabl +1 -0
- data/app/views/katello/api/v2/repository_sets/show.json.rabl +8 -2
- data/app/views/overrides/activation_keys/_host_environment_select.html.erb +22 -15
- data/app/views/smart_proxies/_disk_usage.html.erb +2 -0
- data/ca/redhat-uep.pem +53 -53
- data/db/migrate/20220228173251_remove_drpm_from_ignorable_content.rb +0 -1
- data/db/migrate/20230328180352_add_applied_filters_to_katello_content_view_versions.rb +5 -0
- data/db/migrate/20230503190626_add_metadata_expire_to_root.rb +5 -0
- data/db/seeds.d/111-upgrade_tasks.rb +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-associations.controller.js +4 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/activation-key-repository-sets.controller.js +16 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-associations-content-hosts.html +4 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/details/views/activation-key-repository-sets.html +15 -1
- 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/common/views/katello-agent-notice.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-credentials/views/content-credentials.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-errata-modal.controller.js +4 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-host-bulk-module-streams-modal.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-environment-modal.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-errata-modal.html +10 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-host-collections-modal.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-repository-sets-modal.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-subscriptions-modal.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-traces-modal.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-errata.html +2 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-packages-actions.html +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-packages-applicable.html +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-packages-installed.html +2 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-hosts.controller.js +2 -4
- 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/views/content-host-details.html +0 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts.html +0 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/details/deb.controller.js +4 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/details/views/deb-info.html +12 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/docker-tag-repositories.controller.js +43 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/views/docker-tag-details.html +7 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/views/docker-tag-environments.html +0 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/views/docker-tag-info.html +0 -7
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/details/views/docker-tag-repositories.html +60 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/docker-tags.controller.js +0 -8
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/docker-tags.routes.js +10 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/views/docker-tags.html +0 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/apply-errata.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/erratum-content-hosts.controller.js +4 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/erratum-content-hosts.html +5 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/erratum-info.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/details/views/erratum-packages.html +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/apply-errata-confirm.html +7 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/views/errata.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-add-hosts.controller.js +4 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/host-collection-hosts.controller.js +4 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-add-hosts.html +4 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/details/views/host-collection-hosts-list.html +4 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/bastion_katello.pot +590 -175
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/bn.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/bn_IN.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ca.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/cs_CZ.po +5204 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/de_AT.po +5153 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/de_DE.po +5159 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/el.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/en_GB.po +5158 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/en_US.po +5153 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/et_EE.po +5153 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/gl.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/gu.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/he_IL.po +5191 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/hi.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/id.po +5136 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/it.po +5303 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ka.po +34 -14
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/kn.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ml_IN.po +5153 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/mr.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/nl_NL.po +5161 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/or.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pa.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pl.po +5192 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pl_PL.po +5187 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/pt.po +5174 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ro.po +5170 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ro_RO.po +5170 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ru.po +5279 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/sl.po +5191 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/sv_SE.po +5158 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ta.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/ta_IN.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/te.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/tr.po +5157 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/vi.po +5136 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/vi_VN.po +5136 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/locale/zh.po +5136 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/i18n/translations.js +38 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/organizations/views/organization-selector.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/details/package.controller.js +8 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/details/views/package-info.html +12 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/views/products-bulk-advanced-sync-modal.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/views/products-bulk-http-proxy-modal.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/bulk/views/products-bulk-sync-plan-modal.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-info.controller.js +13 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details-manage-content.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details.controller.js +12 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-details-reclaim-space-modal.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-details.html +6 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html +17 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-manage-docker-manifest-lists.html +1 -1
- 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-docker-tags.html +0 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/new-repository.controller.js +6 -4
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html +20 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/repository.factory.js +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/views/product-repositories-reclaim-space-modal.html +1 -1
- data/engines/bastion_katello/app/assets/stylesheets/bastion_katello/activation_keys.scss +13 -0
- data/engines/bastion_katello/app/assets/stylesheets/bastion_katello/bastion_katello.scss +1 -0
- data/lib/katello/engine.rb +0 -7
- data/lib/katello/plugin.rb +18 -15
- data/lib/katello/tasks/upgrades/4.9/update_custom_products_enablement.rake +11 -0
- data/lib/katello/version.rb +1 -1
- data/locale/action_names.rb +1 -2
- data/locale/bn/LC_MESSAGES/katello.mo +0 -0
- data/locale/bn/katello.po +215 -183
- data/locale/bn_IN/LC_MESSAGES/katello.mo +0 -0
- data/locale/bn_IN/katello.po +8901 -0
- data/locale/ca/LC_MESSAGES/katello.mo +0 -0
- data/locale/ca/katello.po +8900 -0
- data/locale/cs/LC_MESSAGES/katello.mo +0 -0
- data/locale/cs/katello.po +216 -185
- data/locale/cs_CZ/LC_MESSAGES/katello.mo +0 -0
- data/locale/cs_CZ/katello.po +8906 -0
- data/locale/de/LC_MESSAGES/katello.mo +0 -0
- data/locale/de/katello.po +223 -191
- data/locale/de_AT/LC_MESSAGES/katello.mo +0 -0
- data/locale/de_AT/katello.po +8897 -0
- data/locale/de_DE/LC_MESSAGES/katello.mo +0 -0
- data/locale/de_DE/katello.po +8906 -0
- data/locale/el/LC_MESSAGES/katello.mo +0 -0
- data/locale/el/katello.po +8900 -0
- data/locale/en/LC_MESSAGES/katello.mo +0 -0
- data/locale/en/katello.po +215 -183
- data/locale/en_GB/LC_MESSAGES/katello.mo +0 -0
- data/locale/en_GB/katello.po +8902 -0
- data/locale/en_US/LC_MESSAGES/katello.mo +0 -0
- data/locale/en_US/katello.po +8897 -0
- data/locale/es/LC_MESSAGES/katello.mo +0 -0
- data/locale/es/katello.po +218 -187
- data/locale/et_EE/LC_MESSAGES/katello.mo +0 -0
- data/locale/et_EE/katello.po +8897 -0
- data/locale/fr/LC_MESSAGES/katello.mo +0 -0
- data/locale/fr/katello.po +233 -204
- data/locale/gl/LC_MESSAGES/katello.mo +0 -0
- data/locale/gl/katello.po +8900 -0
- data/locale/gu/LC_MESSAGES/katello.mo +0 -0
- data/locale/gu/katello.po +215 -183
- data/locale/he_IL/LC_MESSAGES/katello.mo +0 -0
- data/locale/he_IL/katello.po +8902 -0
- data/locale/hi/LC_MESSAGES/katello.mo +0 -0
- data/locale/hi/katello.po +215 -183
- data/locale/id/LC_MESSAGES/katello.mo +0 -0
- data/locale/id/katello.po +8896 -0
- data/locale/it/LC_MESSAGES/katello.mo +0 -0
- data/locale/it/katello.po +216 -185
- data/locale/ja/LC_MESSAGES/katello.mo +0 -0
- data/locale/ja/katello.po +233 -202
- data/locale/ka/LC_MESSAGES/katello.mo +0 -0
- data/locale/ka/katello.po +223 -191
- data/locale/katello.pot +1844 -1796
- data/locale/kn/LC_MESSAGES/katello.mo +0 -0
- data/locale/kn/katello.po +215 -183
- data/locale/ko/LC_MESSAGES/katello.mo +0 -0
- data/locale/ko/katello.po +216 -183
- data/locale/ml_IN/LC_MESSAGES/katello.mo +0 -0
- data/locale/ml_IN/katello.po +8897 -0
- data/locale/mr/LC_MESSAGES/katello.mo +0 -0
- data/locale/mr/katello.po +215 -183
- data/locale/nl_NL/LC_MESSAGES/katello.mo +0 -0
- data/locale/nl_NL/katello.po +8907 -0
- data/locale/or/LC_MESSAGES/katello.mo +0 -0
- data/locale/or/katello.po +215 -183
- data/locale/pa/LC_MESSAGES/katello.mo +0 -0
- data/locale/pa/katello.po +215 -183
- data/locale/pl/LC_MESSAGES/katello.mo +0 -0
- data/locale/pl/katello.po +8903 -0
- data/locale/pl_PL/LC_MESSAGES/katello.mo +0 -0
- data/locale/pl_PL/katello.po +8899 -0
- data/locale/pt/LC_MESSAGES/katello.mo +0 -0
- data/locale/pt/katello.po +215 -183
- data/locale/pt_BR/LC_MESSAGES/katello.mo +0 -0
- data/locale/pt_BR/katello.po +218 -187
- data/locale/ro/LC_MESSAGES/katello.mo +0 -0
- data/locale/ro/katello.po +8897 -0
- data/locale/ro_RO/LC_MESSAGES/katello.mo +0 -0
- data/locale/ro_RO/katello.po +8898 -0
- data/locale/ru/LC_MESSAGES/katello.mo +0 -0
- data/locale/ru/katello.po +216 -184
- data/locale/sl/LC_MESSAGES/katello.mo +0 -0
- data/locale/sl/katello.po +8901 -0
- data/locale/sv_SE/LC_MESSAGES/katello.mo +0 -0
- data/locale/sv_SE/katello.po +8903 -0
- data/locale/ta/LC_MESSAGES/katello.mo +0 -0
- data/locale/ta/katello.po +215 -183
- data/locale/ta_IN/LC_MESSAGES/katello.mo +0 -0
- data/locale/ta_IN/katello.po +8901 -0
- data/locale/te/LC_MESSAGES/katello.mo +0 -0
- data/locale/te/katello.po +215 -183
- data/locale/tr/LC_MESSAGES/katello.mo +0 -0
- data/locale/tr/katello.po +8900 -0
- data/locale/vi/LC_MESSAGES/katello.mo +0 -0
- data/locale/vi/katello.po +8896 -0
- data/locale/vi_VN/LC_MESSAGES/katello.mo +0 -0
- data/locale/vi_VN/katello.po +8897 -0
- data/locale/zh/LC_MESSAGES/katello.mo +0 -0
- data/locale/zh/katello.po +8896 -0
- data/locale/zh_CN/LC_MESSAGES/katello.mo +0 -0
- data/locale/zh_CN/katello.po +233 -202
- data/locale/zh_TW/LC_MESSAGES/katello.mo +0 -0
- data/locale/zh_TW/katello.po +216 -183
- data/package.json +1 -0
- data/webpack/__mocks__/foremanReact/Root/Context/ForemanContext.js +1 -0
- data/webpack/components/Bookmark/AddBookmarkModal.js +8 -2
- data/webpack/components/Content/ContentTable.js +1 -0
- data/webpack/components/Content/Details/ContentDetailInfo.js +1 -1
- data/webpack/components/Content/Details/ContentDetails.js +3 -3
- data/webpack/components/Content/Details/__tests__/__snapshots__/ContentDetailInfo.test.js.snap +1 -0
- data/webpack/components/Content/Details/__tests__/__snapshots__/ContentDetails.test.js.snap +4 -0
- data/webpack/components/Content/__tests__/__snapshots__/ContentTable.test.js.snap +1 -0
- data/webpack/components/RoutedTabs/index.js +1 -1
- data/webpack/components/SelectOrg/SetOrganization.js +7 -1
- data/webpack/components/Table/EmptyStateMessage.js +8 -3
- data/webpack/components/Table/MainTable.js +8 -2
- data/webpack/components/TooltipButton/TooltipButton.js +2 -2
- data/webpack/components/TooltipButton/__snapshots__/TooltipButton.test.js.snap +3 -0
- data/webpack/components/extensions/HostDetails/ActionsBar/index.js +2 -0
- data/webpack/components/extensions/HostDetails/Cards/ContentViewDetailsCard/ChangeHostCVModal.js +81 -24
- data/webpack/components/extensions/HostDetails/Cards/ContentViewDetailsCard/ChangeHostCVModal.scss +3 -0
- data/webpack/components/extensions/HostDetails/Cards/ContentViewDetailsCard/ContentViewDetailsCard.js +10 -3
- data/webpack/components/extensions/HostDetails/Cards/ContentViewDetailsCard/HostContentViewActions.js +8 -0
- data/webpack/components/extensions/HostDetails/Cards/SystemPurposeCard/SystemPurposeCard.js +3 -2
- data/webpack/components/extensions/HostDetails/DetailsTabCards/HwPropertiesCard.js +3 -1
- data/webpack/components/extensions/HostDetails/Tabs/ContentTab/SecondaryTabsRoutes.js +1 -1
- data/webpack/components/extensions/HostDetails/Tabs/ErrataTab/ErrataTab.js +0 -4
- data/webpack/components/extensions/HostDetails/Tabs/ErrataTab/ErratumExpansionDetail.js +2 -2
- data/webpack/components/extensions/HostDetails/Tabs/PackagesTab/PackagesTab.js +1 -5
- data/webpack/components/extensions/HostDetails/Tabs/RemoteExecutionActions.js +20 -0
- data/webpack/components/extensions/HostDetails/Tabs/RemoteExecutionConstants.js +1 -0
- data/webpack/components/extensions/HostDetails/Tabs/RepositorySetsTab/RepositorySetsConstants.js +16 -0
- data/webpack/components/extensions/HostDetails/Tabs/RepositorySetsTab/RepositorySetsTab.js +54 -8
- data/webpack/components/extensions/HostDetails/Tabs/TracesTab/TracesEnabler.js +1 -0
- data/webpack/components/extensions/RegistrationCommands/__tests__/__snapshots__/ActivationKeys.test.js.snap +8 -1
- data/webpack/components/extensions/RegistrationCommands/__tests__/__snapshots__/Force.test.js.snap +1 -0
- data/webpack/components/extensions/RegistrationCommands/__tests__/__snapshots__/IgnoreSubmanErrors.test.js.snap +1 -0
- data/webpack/components/extensions/RegistrationCommands/__tests__/__snapshots__/LifeCycleEnvironment.test.js.snap +1 -0
- data/webpack/components/extensions/RegistrationCommands/fields/ActivationKeys.js +2 -1
- data/webpack/components/extensions/RegistrationCommands/fields/Force.js +1 -0
- data/webpack/components/extensions/RegistrationCommands/fields/IgnoreSubmanErrors.js +1 -0
- data/webpack/components/extensions/RegistrationCommands/fields/LifecycleEnvironment.js +1 -0
- data/webpack/components/extensions/about/index.js +2 -2
- data/webpack/components/pf3Table/components/Table.js +1 -0
- data/webpack/scenes/AlternateContentSources/ACSIndexPage.js +6 -1
- data/webpack/scenes/AlternateContentSources/Create/Steps/ACSCredentials.js +15 -2
- data/webpack/scenes/AlternateContentSources/Create/Steps/SelectSource.js +6 -1
- data/webpack/scenes/AlternateContentSources/Details/ACSExpandableDetails.js +4 -1
- data/webpack/scenes/AlternateContentSources/Details/EditModals/ACSEditCredentials.js +9 -0
- data/webpack/scenes/AlternateContentSources/Details/EditModals/ACSEditURLPaths.js +1 -0
- data/webpack/scenes/Content/Details/ContentDetails.js +4 -2
- data/webpack/scenes/Content/Details/ContentRepositories.js +1 -1
- data/webpack/scenes/Content/GenericContentPage.js +1 -1
- data/webpack/scenes/Content/Table/ContentTable.js +2 -2
- data/webpack/scenes/ContentViews/ContentViewsConstants.js +4 -0
- data/webpack/scenes/ContentViews/Delete/Steps/CVDeletionReassignActivationKeysForm.js +26 -13
- data/webpack/scenes/ContentViews/Delete/Steps/CVDeletionReassignHostsForm.js +27 -13
- data/webpack/scenes/ContentViews/Delete/__tests__/cvVersionsData.fixtures.json +8 -4
- data/webpack/scenes/ContentViews/Details/ComponentContentViews/ComponentContentViewAddModal.js +3 -2
- data/webpack/scenes/ContentViews/Details/ComponentContentViews/ComponentEnvironments.js +1 -1
- data/webpack/scenes/ContentViews/Details/ComponentContentViews/ContentViewComponents.js +25 -24
- data/webpack/scenes/ContentViews/Details/ComponentContentViews/__tests__/contentViewComponents.test.js +1 -1
- data/webpack/scenes/ContentViews/Details/ContentViewDetailActions.js +19 -3
- data/webpack/scenes/ContentViews/Details/ContentViewDetailReducer.js +6 -0
- data/webpack/scenes/ContentViews/Details/ContentViewDetailSelectors.js +2 -0
- data/webpack/scenes/ContentViews/Details/Filters/Add/CVFilterAddModal.js +2 -2
- data/webpack/scenes/ContentViews/Details/Filters/AffectedRepositories/AffectedRepositoryTable.js +15 -2
- data/webpack/scenes/ContentViews/Details/Filters/ArtifactsWithNoErrata.js +5 -1
- data/webpack/scenes/ContentViews/Details/Filters/CVContainerImageFilterContent.js +13 -9
- data/webpack/scenes/ContentViews/Details/Filters/CVDebFilterContent.js +19 -6
- data/webpack/scenes/ContentViews/Details/Filters/CVErrataDateFilterContent.js +5 -1
- data/webpack/scenes/ContentViews/Details/Filters/CVErrataIDFilterContent.js +50 -51
- data/webpack/scenes/ContentViews/Details/Filters/CVModuleStreamFilterContent.js +45 -44
- data/webpack/scenes/ContentViews/Details/Filters/CVPackageGroupFilterContent.js +45 -44
- data/webpack/scenes/ContentViews/Details/Filters/CVRpmFilterContent.js +13 -8
- data/webpack/scenes/ContentViews/Details/Filters/ContentViewFilterDetailsHeader.js +4 -3
- data/webpack/scenes/ContentViews/Details/Filters/ContentViewFilters.js +5 -2
- data/webpack/scenes/ContentViews/Details/Filters/FilterRuleConstants.js +6 -0
- data/webpack/scenes/ContentViews/Details/Filters/MatchContentModal/CVDebMatchContentModal.js +3 -2
- data/webpack/scenes/ContentViews/Details/Filters/Rules/ContainerTag/AddEditContainerTagRuleModal.js +10 -2
- data/webpack/scenes/ContentViews/Details/Filters/Rules/DebPackage/AddEditDebPackageRuleModal.js +5 -1
- data/webpack/scenes/ContentViews/Details/Filters/Rules/Package/AddEditPackageRuleModal.js +7 -0
- data/webpack/scenes/ContentViews/Details/Filters/__tests__/cvErrataIDFilter.test.js +37 -24
- data/webpack/scenes/ContentViews/Details/Histories/ContentViewHistories.js +3 -3
- data/webpack/scenes/ContentViews/Details/Histories/__tests__/contentViewHistory.test.js +1 -1
- data/webpack/scenes/ContentViews/Details/Repositories/ContentViewRepositories.js +78 -8
- data/webpack/scenes/ContentViews/Details/Repositories/__tests__/contentViewAddRemove.test.js +27 -8
- data/webpack/scenes/ContentViews/Details/Repositories/__tests__/contentViewDetailNoReposAdded.fixtures.json +13 -0
- data/webpack/scenes/ContentViews/Details/Versions/BulkDelete/ActionSummary.js +1 -1
- data/webpack/scenes/ContentViews/Details/Versions/BulkDelete/Steps/ReassignActivationKeys.js +16 -16
- data/webpack/scenes/ContentViews/Details/Versions/BulkDelete/Steps/ReassignHosts.js +16 -16
- data/webpack/scenes/ContentViews/Details/Versions/BulkDelete/__tests__/BulkDeleteVersions.fixtures.json +6 -3
- data/webpack/scenes/ContentViews/Details/Versions/BulkDelete/__tests__/contentViewVersion.fixtures.json +10 -5
- data/webpack/scenes/ContentViews/Details/Versions/Compare/CVVersionCompareConfig.js +9 -2
- data/webpack/scenes/ContentViews/Details/Versions/Compare/CVVersionCompareTable.js +1 -0
- data/webpack/scenes/ContentViews/Details/Versions/Compare/__tests__/contentViewVersionOneDetials.fixtures.json +2 -1
- data/webpack/scenes/ContentViews/Details/Versions/Compare/__tests__/contentViewVersionThreeDetails.fixtures.json +2 -1
- data/webpack/scenes/ContentViews/Details/Versions/Compare/__tests__/contentViewVersionTwoDetails.fixtures.json +2 -1
- data/webpack/scenes/ContentViews/Details/Versions/Compare/__tests__/contentViewVersions.fixtures.json +12 -6
- data/webpack/scenes/ContentViews/Details/Versions/Compare/__tests__/emptyStateCVVersionOneDetails.fixtures.json +2 -1
- data/webpack/scenes/ContentViews/Details/Versions/Compare/__tests__/emptyStateCVVersionTwoDetails.fixtures.json +2 -1
- data/webpack/scenes/ContentViews/Details/Versions/ContentViewVersions.js +25 -4
- data/webpack/scenes/ContentViews/Details/Versions/Delete/RemoveSteps/CVEnvironmentSelectionForm.js +4 -2
- data/webpack/scenes/ContentViews/Details/Versions/Delete/RemoveSteps/CVReassignActivationKeysForm.js +26 -13
- data/webpack/scenes/ContentViews/Details/Versions/Delete/RemoveSteps/CVReassignHostsForm.js +30 -17
- data/webpack/scenes/ContentViews/Details/Versions/Delete/RemoveSteps/CVVersionRemoveReview.js +1 -0
- data/webpack/scenes/ContentViews/Details/Versions/Delete/__tests__/versionsResponseData.fixtures.json +6 -3
- data/webpack/scenes/ContentViews/Details/Versions/Delete/affectedActivationKeys.js +1 -1
- data/webpack/scenes/ContentViews/Details/Versions/Delete/affectedHosts.js +2 -2
- data/webpack/scenes/ContentViews/Details/Versions/VersionDetails/ContentViewVersionDetailConfig.js +8 -1
- data/webpack/scenes/ContentViews/Details/Versions/VersionDetails/ContentViewVersionDetails.js +1 -1
- data/webpack/scenes/ContentViews/Details/Versions/VersionDetails/ContentViewVersionDetailsHeader.js +55 -6
- data/webpack/scenes/ContentViews/Details/Versions/VersionDetails/__tests__/ContentViewVersionComponent.fixtures.json +6 -3
- data/webpack/scenes/ContentViews/Details/Versions/VersionDetails/__tests__/ContentViewVersionDetails.fixtures.json +2 -1
- data/webpack/scenes/ContentViews/Details/Versions/__tests__/contentViewVersions.fixtures.json +8 -4
- data/webpack/scenes/ContentViews/Details/Versions/__tests__/contentViewVersions.test.js +1 -1
- data/webpack/scenes/ContentViews/Details/Versions/__tests__/contentViewVersionsWithTask.fixtures.json +4 -2
- data/webpack/scenes/ContentViews/Details/__tests__/contentViewDetails.fixtures.json +1 -0
- data/webpack/scenes/ContentViews/Publish/CVPublishFinish.js +4 -2
- data/webpack/scenes/ContentViews/Publish/CVPublishForm.js +30 -3
- data/webpack/scenes/ContentViews/Publish/CVPublishReview.js +24 -2
- data/webpack/scenes/ContentViews/Publish/cvPublishForm.scss +4 -0
- data/webpack/scenes/ContentViews/Table/ContentViewsTable.js +2 -2
- data/webpack/scenes/ContentViews/__tests__/contentViewPage.test.js +1 -3
- data/webpack/scenes/ContentViews/__tests__/mockDetails.fixtures.json +2 -1
- data/webpack/scenes/ContentViews/components/ContentViewSelect/ContentViewSelect.js +2 -1
- data/webpack/scenes/ContentViews/components/ContentViewSelect/ContentViewSelectOption.js +3 -2
- data/webpack/scenes/ContentViews/components/ContentViewSelect/helpers.js +32 -0
- data/webpack/scenes/ContentViews/components/ContentViewsCounter.js +52 -42
- data/webpack/scenes/ContentViews/components/EnvironmentPaths/EnvironmentPaths.js +1 -0
- data/webpack/scenes/ContentViews/components/FiltersAppliedIcon.js +17 -0
- data/webpack/scenes/ContentViews/components/NeedsPublishIcon.js +45 -0
- data/webpack/scenes/ContentViews/components/NeedsPublishIcon.scss +9 -0
- data/webpack/scenes/ContentViews/expansions/RelatedContentViewComponentsModal.js +1 -1
- data/webpack/scenes/Hosts/ChangeContentSource/components/ContentSourceForm.js +49 -22
- data/webpack/scenes/Hosts/ChangeContentSource/components/ContentSourceTemplate.js +7 -1
- data/webpack/scenes/Hosts/ChangeContentSource/components/FormField.js +1 -0
- data/webpack/scenes/Hosts/ChangeContentSource/components/HostsModal.js +2 -0
- data/webpack/scenes/Hosts/ChangeContentSource/index.js +2 -0
- data/webpack/scenes/ModuleStreams/Details/__tests__/__snapshots__/ModuleStreamDetailInfo.test.js.snap +1 -0
- data/webpack/scenes/ModuleStreams/__tests__/__snapshots__/ModuleStreamsTable.test.js.snap +1 -0
- data/webpack/scenes/RedHatRepositories/RedHatRepositoriesPage.js +2 -0
- data/webpack/scenes/RedHatRepositories/__tests__/__snapshots__/RedHatRepositoriesPage.test.js.snap +2 -0
- data/webpack/scenes/RedHatRepositories/components/RecommendedRepositorySetsToggler.js +6 -1
- data/webpack/scenes/RedHatRepositories/components/RepositorySetRepositories.js +1 -1
- data/webpack/scenes/RedHatRepositories/components/__tests__/__snapshots__/RecommendedRepositorySetsToggler.test.js.snap +1 -0
- data/webpack/scenes/RedHatRepositories/components/__tests__/__snapshots__/RepositorySetRepositories.test.js.snap +1 -0
- data/webpack/scenes/RedHatRepositories/helpers.js +2 -0
- data/webpack/scenes/Subscriptions/Details/SubscriptionDetailAssociations.js +1 -1
- data/webpack/scenes/Subscriptions/Details/SubscriptionDetailInfo.js +2 -2
- data/webpack/scenes/Subscriptions/Details/SubscriptionDetails.js +4 -4
- data/webpack/scenes/Subscriptions/Details/__tests__/__snapshots__/SubscriptionDetailAssociations.test.js.snap +1 -0
- data/webpack/scenes/Subscriptions/Details/__tests__/__snapshots__/SubscriptionDetailInfo.test.js.snap +2 -0
- data/webpack/scenes/Subscriptions/Details/__tests__/__snapshots__/SubscriptionDetails.test.js.snap +4 -0
- data/webpack/scenes/Subscriptions/Manifest/CdnConfigurationTab/NetworkSyncForm.js +2 -1
- data/webpack/scenes/Subscriptions/Manifest/ManageManifestModal.js +5 -4
- data/webpack/scenes/Subscriptions/Manifest/SimpleContentAccess.js +1 -0
- data/webpack/scenes/Subscriptions/SubscriptionsPage.js +1 -1
- data/webpack/scenes/Subscriptions/UpstreamSubscriptions/UpstreamSubscriptionsPage.js +3 -1
- data/webpack/scenes/Subscriptions/UpstreamSubscriptions/__tests__/__snapshots__/UpstreamSubscriptionsPage.test.js.snap +3 -0
- data/webpack/scenes/Subscriptions/__tests__/__snapshots__/SubscriptionsPage.test.js.snap +1 -0
- data/webpack/scenes/Subscriptions/components/SubscriptionsTable/SubscriptionsTable.js +1 -1
- data/webpack/scenes/Subscriptions/components/SubscriptionsToolbar/SubscriptionsToolbar.js +5 -6
- data/webpack/scenes/Subscriptions/components/SubscriptionsToolbar/__snapshots__/SubscriptionsToolbar.test.js.snap +60 -5
- data/webpack/utils/useKatelloDocUrl.js +18 -0
- metadata +163 -22
- data/app/lib/actions/katello/organization/simple_content_access/prepare_content_overrides.rb +0 -36
- data/app/lib/katello/util/content_overrides_migrator.rb +0 -98
- data/webpack/components/extensions/HostDetails/common/KatelloAgentDeprecationAlert.js +0 -23
@@ -15,6 +15,7 @@ import { selectCVFilterDetails } from '../ContentViewDetailSelectors';
|
|
15
15
|
import AffectedRepositoryTable from './AffectedRepositories/AffectedRepositoryTable';
|
16
16
|
import { editCVFilterRule } from '../ContentViewDetailActions';
|
17
17
|
import { hasPermission } from '../../helpers';
|
18
|
+
import { CONTENT_VIEW_NEEDS_PUBLISH } from '../../ContentViewsConstants';
|
18
19
|
|
19
20
|
export const dateFormat = date => `${(date.getMonth() + 1).toString().padStart(2, '0')}/${date.getDate().toString().padStart(2, '0')}/${date.getFullYear()}`;
|
20
21
|
|
@@ -68,7 +69,10 @@ const CVErrataDateFilterContent = ({
|
|
68
69
|
types: selectedTypes,
|
69
70
|
date_type: dateType,
|
70
71
|
},
|
71
|
-
() =>
|
72
|
+
() => {
|
73
|
+
dispatch({ type: CONTENT_VIEW_NEEDS_PUBLISH });
|
74
|
+
push('/filters');
|
75
|
+
},
|
72
76
|
));
|
73
77
|
};
|
74
78
|
|
@@ -55,7 +55,6 @@ const CVErrataIDFilterContent = ({
|
|
55
55
|
const filterLoaded = filterLoad === 'RESOLVED';
|
56
56
|
const loading = status === STATUS.PENDING;
|
57
57
|
const [bulkActionOpen, setBulkActionOpen] = useState(false);
|
58
|
-
const deselectAll = () => setRows(rows.map(row => ({ ...row, selected: false })));
|
59
58
|
const toggleBulkAction = () => setBulkActionOpen(prevState => !prevState);
|
60
59
|
const hasAddedSelected = rows.some(({ selected, added }) => selected && added);
|
61
60
|
const hasNotAddedSelected = rows.some(({ selected, added }) => selected && !added);
|
@@ -137,7 +136,6 @@ const CVErrataIDFilterContent = ({
|
|
137
136
|
selected && !added).map(({ erratumId }) => ({ errata_ids: [erratumId] })); // eslint-disable-line max-len
|
138
137
|
dispatch(addContentViewFilterRules(filterId, addData, () =>
|
139
138
|
dispatch(getContentViewDetails(cvId))));
|
140
|
-
deselectAll();
|
141
139
|
};
|
142
140
|
|
143
141
|
const bulkRemove = () => {
|
@@ -147,7 +145,6 @@ const CVErrataIDFilterContent = ({
|
|
147
145
|
selected && added).map(({ erratumRuleId }) => erratumRuleId);
|
148
146
|
dispatch(deleteContentViewFilterRules(filterId, erratumRuleIds, () =>
|
149
147
|
dispatch(getContentViewDetails(cvId))));
|
150
|
-
deselectAll();
|
151
148
|
};
|
152
149
|
|
153
150
|
useEffect(() => {
|
@@ -204,6 +201,7 @@ const CVErrataIDFilterContent = ({
|
|
204
201
|
if (selectedTypes.length === 1) return;
|
205
202
|
setSelectedTypes(selectedTypes.filter(e => e !== selection));
|
206
203
|
} else setSelectedTypes([...selectedTypes, selection]);
|
204
|
+
setTypeSelectOpen(false);
|
207
205
|
};
|
208
206
|
|
209
207
|
const setValidStartDate = (e, value) => {
|
@@ -239,8 +237,8 @@ const CVErrataIDFilterContent = ({
|
|
239
237
|
dateType === 'issued' &&
|
240
238
|
statusSelected === ALL_STATUSES;
|
241
239
|
|
242
|
-
const emptyContentTitle = __('No errata
|
243
|
-
const emptyContentBody = __('No errata
|
240
|
+
const emptyContentTitle = __('No errata filter rules yet');
|
241
|
+
const emptyContentBody = __('No errata to add yet');
|
244
242
|
const emptySearchTitle = __('No matching filter rules found.');
|
245
243
|
const emptySearchBody = __('Try changing your search settings.');
|
246
244
|
|
@@ -283,56 +281,57 @@ const CVErrataIDFilterContent = ({
|
|
283
281
|
dateType, apiStartDate, apiEndDate]}
|
284
282
|
fetchItems={useCallback(params =>
|
285
283
|
getCVFilterErrataWithOptions(params), [getCVFilterErrataWithOptions])}
|
286
|
-
actionButtons={
|
287
|
-
|
288
|
-
<
|
289
|
-
<
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
<
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
<
|
313
|
-
{
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
<
|
318
|
-
{
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
<
|
323
|
-
{
|
324
|
-
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
284
|
+
actionButtons={hasPermission(permissions, 'edit_content_views') &&
|
285
|
+
status === STATUS.RESOLVED && rows.length !== 0 &&
|
286
|
+
<Split hasGutter>
|
287
|
+
<SplitItem data-testid="allAddedNotAdded">
|
288
|
+
<SelectableDropdown
|
289
|
+
items={[ALL_STATUSES, ADDED, NOT_ADDED]}
|
290
|
+
title=""
|
291
|
+
selected={statusSelected}
|
292
|
+
setSelected={setStatusSelected}
|
293
|
+
placeholderText={__('Status')}
|
294
|
+
aria-label="status_selector"
|
295
|
+
ouiaId="status-selector"
|
296
|
+
/>
|
297
|
+
</SplitItem>
|
298
|
+
<SplitItem>
|
299
|
+
<Select
|
300
|
+
aria-label="errata_type_selector"
|
301
|
+
ouiaId="errata_type_selector"
|
302
|
+
variant={SelectVariant.checkbox}
|
303
|
+
onToggle={setTypeSelectOpen}
|
304
|
+
onSelect={(_event, selection) => onTypeSelect(selection)}
|
305
|
+
selections={selectedTypes}
|
306
|
+
isOpen={typeSelectOpen}
|
307
|
+
placeholderText={__('Errata type')}
|
308
|
+
isCheckboxSelectionBadgeHidden
|
309
|
+
>
|
310
|
+
<SelectOption aria-label="security_selection" isDisabled={singleSelection('security')} key="security" value="security">
|
311
|
+
<p style={{ marginTop: '4px' }}>
|
312
|
+
{__('Security')}
|
313
|
+
</p>
|
314
|
+
</SelectOption>
|
315
|
+
<SelectOption isDisabled={singleSelection('enhancement')} key="enhancement" value="enhancement">
|
316
|
+
<p style={{ marginTop: '4px' }}>
|
317
|
+
{__('Enhancement')}
|
318
|
+
</p>
|
319
|
+
</SelectOption>
|
320
|
+
<SelectOption isDisabled={singleSelection('bugfix')} key="bugfix" value="bugfix">
|
321
|
+
<p style={{ marginTop: '4px' }}>
|
322
|
+
{__('Bugfix')}
|
323
|
+
</p>
|
324
|
+
</SelectOption>
|
325
|
+
</Select>
|
326
|
+
</SplitItem>
|
327
|
+
{hasPermission(permissions, 'edit_content_views') &&
|
329
328
|
<SplitItem>
|
330
329
|
<Button ouiaId="add-errata-id-button" isDisabled={!hasNotAddedSelected} onClick={bulkAdd} variant="primary" aria-label="add_filter_rule">
|
331
330
|
{__('Add errata')}
|
332
331
|
</Button>
|
333
332
|
</SplitItem>
|
334
333
|
}
|
335
|
-
|
334
|
+
{hasPermission(permissions, 'edit_content_views') &&
|
336
335
|
<SplitItem>
|
337
336
|
<Dropdown
|
338
337
|
toggle={<KebabToggle aria-label="bulk_actions" onToggle={toggleBulkAction} />}
|
@@ -347,9 +346,9 @@ const CVErrataIDFilterContent = ({
|
|
347
346
|
/>
|
348
347
|
</SplitItem>
|
349
348
|
}
|
350
|
-
|
349
|
+
</Split>
|
351
350
|
}
|
352
|
-
nodesBelowSearch={
|
351
|
+
nodesBelowSearch={status === STATUS.RESOLVED && rows.length !== 0 &&
|
353
352
|
<>
|
354
353
|
<Flex>
|
355
354
|
<FlexItem span={2} spacer={{ default: 'spacerNone' }}>
|
@@ -194,8 +194,8 @@ const CVModuleStreamFilterContent = ({
|
|
194
194
|
},
|
195
195
|
];
|
196
196
|
|
197
|
-
const emptyContentTitle = __('No
|
198
|
-
const emptyContentBody = __(
|
197
|
+
const emptyContentTitle = __('No module stream filter rules yet');
|
198
|
+
const emptyContentBody = __('No module streams to add yet.');
|
199
199
|
const emptySearchTitle = __('No matching filter rules found.');
|
200
200
|
const emptySearchBody = __('Try changing your search settings.');
|
201
201
|
|
@@ -236,49 +236,50 @@ const CVModuleStreamFilterContent = ({
|
|
236
236
|
actionResolver={hasPermission(permissions, 'edit_content_views') ? actionResolver : null}
|
237
237
|
onSelect={hasPermission(permissions, 'edit_content_views') ? onSelect(rows, setRows) : null}
|
238
238
|
actionButtons={hasPermission(permissions, 'edit_content_views') &&
|
239
|
-
|
240
|
-
<
|
241
|
-
<
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
<
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
<
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
{
|
277
|
-
|
239
|
+
status === STATUS.RESOLVED && rows.length !== 0 &&
|
240
|
+
<Split hasGutter>
|
241
|
+
<SplitItem data-testid="allAddedNotAdded">
|
242
|
+
<Select
|
243
|
+
variant={SelectVariant.single}
|
244
|
+
onToggle={setSelectOpen}
|
245
|
+
ouiaId="added-notAdded-selector"
|
246
|
+
onSelect={(_event, selection) => {
|
247
|
+
setSelectedIndex(allAddedNotAdded.indexOf(selection));
|
248
|
+
setSelectOpen(false);
|
249
|
+
}}
|
250
|
+
selections={selectedAdded}
|
251
|
+
isOpen={selectOpen}
|
252
|
+
isCheckboxSelectionBadgeHidden
|
253
|
+
>
|
254
|
+
{allAddedNotAdded.map(item =>
|
255
|
+
<SelectOption aria-label={item} key={item} value={item} />)}
|
256
|
+
</Select>
|
257
|
+
</SplitItem>
|
258
|
+
<SplitItem>
|
259
|
+
<Button
|
260
|
+
ouiaId="add-module-stream-rule-button"
|
261
|
+
isDisabled={!hasNotAddedSelected}
|
262
|
+
onClick={bulkAdd}
|
263
|
+
variant="primary"
|
264
|
+
aria-label="add_filter_rule"
|
265
|
+
>
|
266
|
+
{__('Add filter rule')}
|
267
|
+
</Button>
|
268
|
+
</SplitItem>
|
269
|
+
<SplitItem>
|
270
|
+
<Dropdown
|
271
|
+
toggle={<KebabToggle aria-label="bulk_actions" onToggle={toggleBulkAction} />}
|
272
|
+
isOpen={bulkActionOpen}
|
273
|
+
ouiaId="bulk-actions-dropdown"
|
274
|
+
isPlain
|
275
|
+
dropdownItems={[
|
276
|
+
<DropdownItem ouiaId="bulk-remove" aria-label="bulk_remove" key="bulk_remove" isDisabled={!hasAddedSelected} component="button" onClick={bulkRemove}>
|
277
|
+
{__('Remove')}
|
278
|
+
</DropdownItem>]
|
278
279
|
}
|
279
|
-
|
280
|
-
|
281
|
-
|
280
|
+
/>
|
281
|
+
</SplitItem>
|
282
|
+
</Split>
|
282
283
|
}
|
283
284
|
/>
|
284
285
|
</div>
|
@@ -184,8 +184,8 @@ const CVPackageGroupFilterContent = ({
|
|
184
184
|
},
|
185
185
|
];
|
186
186
|
|
187
|
-
const emptyContentTitle = __('No
|
188
|
-
const emptyContentBody = __(
|
187
|
+
const emptyContentTitle = __('No package groups yet');
|
188
|
+
const emptyContentBody = __('Add repositories with package groups to content view to select them here.');
|
189
189
|
const emptySearchTitle = __('No matching filter rules found.');
|
190
190
|
const emptySearchBody = __('Try changing your search settings.');
|
191
191
|
const resetFilters = () => setSelectedIndex(0);
|
@@ -226,49 +226,50 @@ const CVPackageGroupFilterContent = ({
|
|
226
226
|
actionResolver={hasPermission(permissions, 'edit_content_views') ? actionResolver : null}
|
227
227
|
onSelect={hasPermission(permissions, 'edit_content_views') ? onSelect(rows, setRows) : null}
|
228
228
|
actionButtons={hasPermission(permissions, 'edit_content_views') &&
|
229
|
-
|
230
|
-
<
|
231
|
-
<
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
<
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
<
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
{
|
267
|
-
|
229
|
+
status === STATUS.RESOLVED && rows.length !== 0 &&
|
230
|
+
<Split hasGutter>
|
231
|
+
<SplitItem data-testid="allAddedNotAdded">
|
232
|
+
<Select
|
233
|
+
variant={SelectVariant.single}
|
234
|
+
onToggle={setSelectOpen}
|
235
|
+
ouiaId="allAddedNotAdded"
|
236
|
+
onSelect={(_event, selection) => {
|
237
|
+
setSelectedIndex(allAddedNotAdded.indexOf(selection));
|
238
|
+
setSelectOpen(false);
|
239
|
+
}}
|
240
|
+
selections={allAddedNotAdded[selectedIndex]}
|
241
|
+
isOpen={selectOpen}
|
242
|
+
isCheckboxSelectionBadgeHidden
|
243
|
+
>
|
244
|
+
{allAddedNotAdded.map(item =>
|
245
|
+
<SelectOption aria-label={item} key={item} value={item} />)}
|
246
|
+
</Select>
|
247
|
+
</SplitItem>
|
248
|
+
<SplitItem>
|
249
|
+
<Button
|
250
|
+
ouiaId="add-package-group-filter-rule-button"
|
251
|
+
isDisabled={!hasNotAddedSelected}
|
252
|
+
onClick={bulkAdd}
|
253
|
+
variant="primary"
|
254
|
+
aria-label="add_filter_rule"
|
255
|
+
>
|
256
|
+
{__('Add filter rule')}
|
257
|
+
</Button>
|
258
|
+
</SplitItem>
|
259
|
+
<SplitItem>
|
260
|
+
<Dropdown
|
261
|
+
toggle={<KebabToggle aria-label="bulk_actions" onToggle={toggleBulkAction} />}
|
262
|
+
isOpen={bulkActionOpen}
|
263
|
+
ouiaId="cv-package-group-filter-bulk-actions-dropdown"
|
264
|
+
isPlain
|
265
|
+
dropdownItems={[
|
266
|
+
<DropdownItem ouiaId="bulk_remove" aria-label="bulk_remove" key="bulk_remove" isDisabled={!hasAddedSelected} component="button" onClick={bulkRemove}>
|
267
|
+
{__('Remove')}
|
268
|
+
</DropdownItem>]
|
268
269
|
}
|
269
|
-
|
270
|
-
|
271
|
-
|
270
|
+
/>
|
271
|
+
</SplitItem>
|
272
|
+
</Split>
|
272
273
|
}
|
273
274
|
/>
|
274
275
|
</div>
|
@@ -18,6 +18,11 @@ import CVRpmMatchContentModal from './MatchContentModal/CVRpmMatchContentModal';
|
|
18
18
|
import AddEditPackageRuleModal from './Rules/Package/AddEditPackageRuleModal';
|
19
19
|
import AffectedRepositoryTable from './AffectedRepositories/AffectedRepositoryTable';
|
20
20
|
import { hasPermission } from '../../helpers';
|
21
|
+
import { emptyContentTitle,
|
22
|
+
emptyContentBody,
|
23
|
+
emptySearchTitle,
|
24
|
+
emptySearchBody } from './FilterRuleConstants';
|
25
|
+
import { CONTENT_VIEW_NEEDS_PUBLISH } from '../../ContentViewsConstants';
|
21
26
|
|
22
27
|
const CVRpmFilterContent = ({
|
23
28
|
cvId, filterId, inclusion, showAffectedRepos, setShowAffectedRepos, details,
|
@@ -104,10 +109,6 @@ const CVRpmFilterContent = ({
|
|
104
109
|
}
|
105
110
|
}, [showAffectedRepos, repositories.length]);
|
106
111
|
|
107
|
-
const emptyContentTitle = __('No rules have been added to this filter.');
|
108
|
-
const emptyContentBody = __('Items will appear here when a filter rule is added.');
|
109
|
-
const emptySearchTitle = __('No matching rules found.');
|
110
|
-
const emptySearchBody = __('Try changing your search settings.');
|
111
112
|
const tabTitle = (inclusion ? __('Included') : __('Excluded')) + __(' RPMs');
|
112
113
|
|
113
114
|
|
@@ -115,8 +116,10 @@ const CVRpmFilterContent = ({
|
|
115
116
|
{
|
116
117
|
title: __('Remove'),
|
117
118
|
onClick: (_event, _rowId, { id }) => {
|
118
|
-
dispatch(removeCVFilterRule(filterId, id, () =>
|
119
|
-
dispatch(getCVFilterRules(filterId))
|
119
|
+
dispatch(removeCVFilterRule(filterId, id, () => {
|
120
|
+
dispatch(getCVFilterRules(filterId));
|
121
|
+
dispatch({ type: CONTENT_VIEW_NEEDS_PUBLISH });
|
122
|
+
}));
|
120
123
|
},
|
121
124
|
},
|
122
125
|
{
|
@@ -139,8 +142,10 @@ const CVRpmFilterContent = ({
|
|
139
142
|
setBulkActionOpen(false);
|
140
143
|
const rpmFilterIds =
|
141
144
|
rows.filter(row => row.selected).map(selected => selected.id);
|
142
|
-
dispatch(deleteContentViewFilterRules(filterId, rpmFilterIds, () =>
|
143
|
-
dispatch(getCVFilterRules(filterId))
|
145
|
+
dispatch(deleteContentViewFilterRules(filterId, rpmFilterIds, () => {
|
146
|
+
dispatch(getCVFilterRules(filterId));
|
147
|
+
dispatch({ type: CONTENT_VIEW_NEEDS_PUBLISH });
|
148
|
+
}));
|
144
149
|
deselectAll();
|
145
150
|
};
|
146
151
|
|
@@ -20,8 +20,7 @@ import {
|
|
20
20
|
} from '@patternfly/react-core';
|
21
21
|
import { translate as __ } from 'foremanReact/common/I18n';
|
22
22
|
import { useDispatch } from 'react-redux';
|
23
|
-
import {
|
24
|
-
getCVFilterDetails,
|
23
|
+
import getContentViewDetails, {
|
25
24
|
editCVFilter,
|
26
25
|
deleteContentViewFilter,
|
27
26
|
} from '../ContentViewDetailActions';
|
@@ -32,6 +31,7 @@ import { hasPermission } from '../../helpers';
|
|
32
31
|
import { typeName } from './ContentType';
|
33
32
|
import ActionableDetail from '../../../../components/ActionableDetail';
|
34
33
|
import { ArtifactsWithNoErrataRenderer } from './ArtifactsWithNoErrata';
|
34
|
+
import { CONTENT_VIEW_NEEDS_PUBLISH } from '../../ContentViewsConstants';
|
35
35
|
|
36
36
|
const ContentViewFilterDetailsHeader = ({
|
37
37
|
cvId, filterId, filterDetails, setShowAffectedRepos, details,
|
@@ -58,7 +58,7 @@ const ContentViewFilterDetailsHeader = ({
|
|
58
58
|
{ [attribute]: val },
|
59
59
|
() => {
|
60
60
|
setLoading(false);
|
61
|
-
dispatch(
|
61
|
+
dispatch(getContentViewDetails(cvId));
|
62
62
|
},
|
63
63
|
() => setLoading(false),
|
64
64
|
));
|
@@ -70,6 +70,7 @@ const ContentViewFilterDetailsHeader = ({
|
|
70
70
|
ouiaId="cv-filter-delete"
|
71
71
|
onClick={() => {
|
72
72
|
dispatch(deleteContentViewFilter(filterId, () => {
|
73
|
+
dispatch({ type: CONTENT_VIEW_NEEDS_PUBLISH });
|
73
74
|
push(`/content_views/${cvId}#/filters/`);
|
74
75
|
}));
|
75
76
|
}}
|
@@ -22,6 +22,7 @@ import ContentType from './ContentType';
|
|
22
22
|
import CVFilterAddModal from './Add/CVFilterAddModal';
|
23
23
|
import { hasPermission } from '../../helpers';
|
24
24
|
import InactiveText from '../../components/InactiveText';
|
25
|
+
import { CONTENT_VIEW_NEEDS_PUBLISH } from '../../ContentViewsConstants';
|
25
26
|
|
26
27
|
const ContentViewFilters = ({ cvId, details }) => {
|
27
28
|
const dispatch = useDispatch();
|
@@ -83,6 +84,7 @@ const ContentViewFilters = ({ cvId, details }) => {
|
|
83
84
|
const filterIds = rows.filter(({ selected }) => selected).map(({ id }) => id);
|
84
85
|
dispatch(deleteContentViewFilters(cvId, filterIds, () =>
|
85
86
|
dispatch(getContentViewFilters(cvId, {}))));
|
87
|
+
dispatch({ type: CONTENT_VIEW_NEEDS_PUBLISH });
|
86
88
|
};
|
87
89
|
|
88
90
|
useEffect(() => {
|
@@ -103,12 +105,13 @@ const ContentViewFilters = ({ cvId, details }) => {
|
|
103
105
|
onClick: (_event, _rowId, { id }) => {
|
104
106
|
dispatch(deleteContentViewFilter(id, () =>
|
105
107
|
dispatch(getContentViewFilters(cvId, {}))));
|
108
|
+
dispatch({ type: CONTENT_VIEW_NEEDS_PUBLISH });
|
106
109
|
},
|
107
110
|
},
|
108
111
|
];
|
109
112
|
|
110
|
-
const emptyContentTitle = __(
|
111
|
-
const emptyContentBody = __('
|
113
|
+
const emptyContentTitle = __('No filters yet');
|
114
|
+
const emptyContentBody = __('To include or exclude specific content from the content view, create a filter. Without filters, the content view includes everything from the added repositories.');
|
112
115
|
const emptySearchTitle = __('No matching filters found');
|
113
116
|
const emptySearchBody = __('Try changing your search settings.');
|
114
117
|
const showPrimaryAction = true;
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { translate as __ } from 'foremanReact/common/I18n';
|
2
|
+
|
3
|
+
export const emptyContentTitle = __('No rules yet');
|
4
|
+
export const emptyContentBody = __('To get started, add a filter rule to this filter');
|
5
|
+
export const emptySearchTitle = __('No matching filter rules found.');
|
6
|
+
export const emptySearchBody = __('Try changing your search settings.');
|
data/webpack/scenes/ContentViews/Details/Filters/MatchContentModal/CVDebMatchContentModal.js
CHANGED
@@ -35,6 +35,7 @@ const CVDebMatchContentModal = ({ filterId, onClose, filterRuleId }) => {
|
|
35
35
|
|
36
36
|
return (
|
37
37
|
<Modal
|
38
|
+
ouiaId="cv-deb-match-content-modal"
|
38
39
|
title={__('Matching content')}
|
39
40
|
variant={ModalVariant.medium}
|
40
41
|
isOpen
|
@@ -58,7 +59,7 @@ const CVDebMatchContentModal = ({ filterId, onClose, filterRuleId }) => {
|
|
58
59
|
variant={TableVariant.compact}
|
59
60
|
>
|
60
61
|
<Thead>
|
61
|
-
<Tr>
|
62
|
+
<Tr ouiaId="content-view-deb-match-content-tr">
|
62
63
|
{columnHeaders.map(col =>
|
63
64
|
<Th key={col}>{col}</Th>)}
|
64
65
|
</Tr>
|
@@ -69,7 +70,7 @@ const CVDebMatchContentModal = ({ filterId, onClose, filterRuleId }) => {
|
|
69
70
|
nva, description = '-', id,
|
70
71
|
} = result;
|
71
72
|
return (
|
72
|
-
<Tr key={`${nva}_${description}_${id}`}>
|
73
|
+
<Tr key={`${nva}_${description}_${id}`} ouiaId={`${nva}-${id}-tr`}>
|
73
74
|
<Td>
|
74
75
|
<a rel="noreferrer" target="_blank" href={urlBuilder(`debs/${id}`, '')}>{nva}</a>
|
75
76
|
</Td>
|
data/webpack/scenes/ContentViews/Details/Filters/Rules/ContainerTag/AddEditContainerTagRuleModal.js
CHANGED
@@ -6,6 +6,7 @@ import { Modal, ModalVariant, Form, FormGroup, ActionGroup, Button } from '@patt
|
|
6
6
|
import { addCVFilterRule, editCVFilterRule, getCVFilterRules } from '../../../ContentViewDetailActions';
|
7
7
|
import { orgId } from '../../../../../../services/api';
|
8
8
|
import SearchText from '../../../../../../components/Search/SearchText';
|
9
|
+
import { CONTENT_VIEW_NEEDS_PUBLISH } from '../../../../ContentViewsConstants';
|
9
10
|
|
10
11
|
const AddEditContainerTagRuleModal = ({
|
11
12
|
onClose, filterId, selectedFilterRuleData, repositoryIds,
|
@@ -24,13 +25,19 @@ const AddEditContainerTagRuleModal = ({
|
|
24
25
|
dispatch(editCVFilterRule(
|
25
26
|
filterId,
|
26
27
|
{ id, name: tagName },
|
27
|
-
() =>
|
28
|
+
() => {
|
29
|
+
dispatch(getCVFilterRules(filterId));
|
30
|
+
dispatch({ type: CONTENT_VIEW_NEEDS_PUBLISH });
|
31
|
+
},
|
28
32
|
));
|
29
33
|
} else {
|
30
34
|
dispatch(addCVFilterRule(
|
31
35
|
filterId,
|
32
36
|
{ name: tagName },
|
33
|
-
() =>
|
37
|
+
() => {
|
38
|
+
dispatch(getCVFilterRules(filterId));
|
39
|
+
dispatch({ type: CONTENT_VIEW_NEEDS_PUBLISH });
|
40
|
+
},
|
34
41
|
));
|
35
42
|
}
|
36
43
|
onClose();
|
@@ -44,6 +51,7 @@ const AddEditContainerTagRuleModal = ({
|
|
44
51
|
|
45
52
|
return (
|
46
53
|
<Modal
|
54
|
+
ouiaId="add-edit-container-tag-rule-modal"
|
47
55
|
title={isEditing ? __('Edit filter rule') : __('Add filter rule')}
|
48
56
|
variant={ModalVariant.small}
|
49
57
|
isOpen
|
data/webpack/scenes/ContentViews/Details/Filters/Rules/DebPackage/AddEditDebPackageRuleModal.js
CHANGED
@@ -60,6 +60,7 @@ const AddEditDebPackageRuleModal = ({ filterId, onClose, selectedFilterRuleData
|
|
60
60
|
|
61
61
|
return (
|
62
62
|
<Modal
|
63
|
+
ouiaId="add-edit-deb-filter-rule-modal"
|
63
64
|
title={selectedFilterRuleData ? __('Edit package filter rule') : __('Create package filter rule')}
|
64
65
|
variant={ModalVariant.small}
|
65
66
|
isOpen
|
@@ -73,6 +74,7 @@ const AddEditDebPackageRuleModal = ({ filterId, onClose, selectedFilterRuleData
|
|
73
74
|
>
|
74
75
|
<FormGroup label={__('DEB name')} isRequired fieldId="name">
|
75
76
|
<TextInput
|
77
|
+
ouiaId="input-name"
|
76
78
|
isRequired
|
77
79
|
type="text"
|
78
80
|
id="name"
|
@@ -84,6 +86,7 @@ const AddEditDebPackageRuleModal = ({ filterId, onClose, selectedFilterRuleData
|
|
84
86
|
</FormGroup>
|
85
87
|
<FormGroup label={__('Architecture')} fieldId="architecture">
|
86
88
|
<TextInput
|
89
|
+
ouiaId="input-architecture"
|
87
90
|
type="text"
|
88
91
|
id="architecture"
|
89
92
|
aria-label="input_architecture"
|
@@ -94,6 +97,7 @@ const AddEditDebPackageRuleModal = ({ filterId, onClose, selectedFilterRuleData
|
|
94
97
|
</FormGroup>
|
95
98
|
<ActionGroup>
|
96
99
|
<Button
|
100
|
+
ouiaId="create-deb-package-filter-rule"
|
97
101
|
aria-label="create_deb_package_filter_rule"
|
98
102
|
variant="primary"
|
99
103
|
isDisabled={saving || submitDisabled}
|
@@ -101,7 +105,7 @@ const AddEditDebPackageRuleModal = ({ filterId, onClose, selectedFilterRuleData
|
|
101
105
|
>
|
102
106
|
{selectedFilterRuleData ? __('Edit rule') : __('Create rule')}
|
103
107
|
</Button>
|
104
|
-
<Button variant="link" onClick={onClose}>
|
108
|
+
<Button ouiaId="cancel-button" variant="link" onClick={onClose}>
|
105
109
|
{__('Cancel')}
|
106
110
|
</Button>
|
107
111
|
</ActionGroup>
|