katello 3.15.3.1 → 3.16.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 +5 -5
- data/app/assets/javascripts/katello/common/vendor.js +6 -5
- data/app/controllers/katello/api/registry/registry_proxies_controller.rb +2 -3
- data/app/controllers/katello/api/rhsm/candlepin_dynflow_proxy_controller.rb +1 -1
- data/app/controllers/katello/api/rhsm/candlepin_proxies_controller.rb +13 -9
- data/app/controllers/katello/api/v2/activation_keys_controller.rb +5 -8
- data/app/controllers/katello/api/v2/api_controller.rb +14 -0
- data/app/controllers/katello/api/v2/capsule_content_controller.rb +2 -2
- data/app/controllers/katello/api/v2/content_credentials_controller.rb +1 -1
- data/app/controllers/katello/api/v2/content_view_components_controller.rb +2 -2
- data/app/controllers/katello/api/v2/content_view_filter_rules_controller.rb +1 -1
- data/app/controllers/katello/api/v2/content_view_filters_controller.rb +1 -1
- data/app/controllers/katello/api/v2/content_view_puppet_modules_controller.rb +1 -1
- data/app/controllers/katello/api/v2/content_view_versions_controller.rb +3 -9
- data/app/controllers/katello/api/v2/content_views_controller.rb +3 -3
- data/app/controllers/katello/api/v2/environments_controller.rb +3 -3
- data/app/controllers/katello/api/v2/gpg_keys_controller.rb +1 -1
- data/app/controllers/katello/api/v2/host_collections_controller.rb +3 -4
- data/app/controllers/katello/api/v2/host_subscriptions_controller.rb +5 -22
- data/app/controllers/katello/api/v2/host_tracer_controller.rb +39 -2
- data/app/controllers/katello/api/v2/hosts_bulk_actions_controller.rb +7 -2
- data/app/controllers/katello/api/v2/organizations_controller.rb +7 -14
- data/app/controllers/katello/api/v2/packages_controller.rb +13 -13
- data/app/controllers/katello/api/v2/products_controller.rb +2 -1
- data/app/controllers/katello/api/v2/repositories_controller.rb +7 -11
- data/app/controllers/katello/api/v2/repository_sets_controller.rb +1 -1
- data/app/controllers/katello/api/v2/subscriptions_controller.rb +5 -31
- data/app/controllers/katello/application_controller.rb +1 -1
- data/app/controllers/katello/concerns/api/api_controller.rb +2 -1
- data/app/controllers/katello/concerns/api/v2/hostgroups_controller_extensions.rb +1 -1
- data/app/controllers/katello/concerns/api/v2/repository_content_controller.rb +6 -1
- data/app/controllers/katello/concerns/api/v2/smart_proxies_controller_extensions.rb +1 -1
- data/app/controllers/katello/remote_execution_controller.rb +9 -1
- data/app/controllers/katello/sync_management_controller.rb +1 -1
- data/app/helpers/katello/hosts_and_hostgroups_helper.rb +1 -1
- data/app/helpers/katello/katello_urls_helper.rb +1 -1
- data/app/helpers/katello/layout_helper.rb +1 -3
- data/app/helpers/katello/subscription_mailer_helper.rb +23 -0
- data/app/jobs/create_expired_manifest_notifications.rb +11 -0
- data/app/lib/actions/candlepin/consumer/remove_subscription.rb +1 -1
- data/app/lib/actions/katello/activation_key/update.rb +1 -1
- data/app/lib/actions/katello/applicability/host/generate.rb +28 -0
- data/app/lib/actions/katello/applicability/hosts/generate.rb +23 -0
- data/app/lib/actions/katello/applicability/repository/regenerate.rb +26 -0
- data/app/lib/actions/katello/capsule_content/sync.rb +0 -1
- data/app/lib/actions/katello/capsule_content/sync_capsule.rb +0 -2
- data/app/lib/actions/katello/content_view/destroy.rb +3 -1
- data/app/lib/actions/katello/content_view/promote_to_environment.rb +1 -1
- data/app/lib/actions/katello/content_view/publish.rb +2 -2
- data/app/lib/actions/katello/content_view/remove.rb +1 -1
- data/app/lib/actions/katello/content_view/update.rb +1 -1
- data/app/lib/actions/katello/content_view_version/incremental_update.rb +6 -0
- data/app/lib/actions/katello/gpg_key/update.rb +1 -1
- data/app/lib/actions/katello/host/erratum/applicable_errata_install.rb +12 -2
- data/app/lib/actions/katello/host/generate_applicability.rb +16 -10
- data/app/lib/actions/katello/host/hypervisors_update.rb +1 -1
- data/app/lib/actions/katello/host/recalculate_errata_status.rb +4 -6
- data/app/lib/actions/katello/host/upload_profiles.rb +5 -45
- data/app/lib/actions/katello/organization/manifest_delete.rb +2 -1
- data/app/lib/actions/katello/organization/manifest_import.rb +3 -1
- data/app/lib/actions/katello/organization/manifest_refresh.rb +3 -1
- data/app/lib/actions/katello/orphan_cleanup/remove_orphans.rb +0 -13
- data/app/lib/actions/katello/product/content_create.rb +3 -3
- data/app/lib/actions/katello/product/create.rb +1 -1
- data/app/lib/actions/katello/product/destroy.rb +1 -1
- data/app/lib/actions/katello/product/update.rb +1 -1
- data/app/lib/actions/katello/provider/update.rb +1 -1
- data/app/lib/actions/katello/repository/clone_contents.rb +1 -1
- data/app/lib/actions/katello/repository/clone_to_environment.rb +1 -1
- data/app/lib/actions/katello/repository/create.rb +2 -2
- data/app/lib/actions/katello/repository/filtered_index_content.rb +12 -3
- data/app/lib/actions/katello/repository/finish_upload.rb +5 -3
- data/app/lib/actions/katello/repository/import_upload.rb +2 -2
- data/app/lib/actions/katello/repository/sync.rb +27 -14
- data/app/lib/actions/katello/repository/update.rb +5 -5
- data/app/lib/actions/katello/repository/update_redhat_repository.rb +2 -2
- data/app/lib/actions/katello/repository/upload_files.rb +8 -5
- data/app/lib/actions/katello/subscription/update.rb +1 -1
- data/app/lib/actions/pulp/abstract_async_task.rb +3 -5
- data/app/lib/actions/pulp/consumer.rb +1 -3
- data/app/lib/actions/pulp/consumer/content_install.rb +1 -1
- data/app/lib/actions/pulp/orchestration/repository/smart_proxy_sync.rb +0 -1
- data/app/lib/actions/pulp/orchestration/repository/upload_content.rb +2 -0
- data/app/lib/actions/pulp/repository/presenters/deb_presenter.rb +5 -11
- data/app/lib/actions/pulp/repository/presenters/docker_presenter.rb +1 -1
- data/app/lib/actions/pulp3/abstract_async_task.rb +3 -5
- 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/import_upload.rb +22 -13
- data/app/lib/actions/pulp3/orchestration/repository/upload_content.rb +8 -6
- data/app/lib/actions/pulp3/orphan_cleanup/delete_orphaned_migrated_repositories.rb +15 -0
- data/app/lib/actions/pulp3/repository/commit_upload.rb +18 -0
- data/app/lib/actions/pulp3/repository/import_upload.rb +5 -2
- data/app/lib/actions/pulp3/repository/save_publication.rb +1 -1
- data/app/lib/actions/pulp3/repository/save_version.rb +1 -1
- data/app/lib/katello/concerns/base_template_scope_extensions.rb +2 -2
- data/app/lib/katello/concerns/filter_sensitive_data.rb +18 -0
- data/app/lib/katello/foreman.rb +2 -1
- data/app/lib/katello/http_resource.rb +3 -5
- data/app/lib/katello/lazy_accessor.rb +4 -2
- data/app/lib/katello/messaging/connection.rb +15 -0
- data/app/lib/katello/messaging/received_message.rb +12 -0
- data/app/lib/katello/messaging/stomp_connection.rb +73 -0
- data/app/lib/katello/resources/candlepin/activation_key.rb +0 -1
- data/app/lib/katello/resources/candlepin/admin.rb +1 -1
- data/app/lib/katello/resources/candlepin/consumer.rb +6 -0
- data/app/lib/katello/resources/candlepin/content.rb +7 -1
- data/app/lib/katello/resources/candlepin/owner.rb +0 -9
- data/app/lib/katello/resources/cdn.rb +6 -1
- data/app/lib/katello/resources/registry.rb +1 -1
- data/app/lib/katello/util/cdn_var_substitutor.rb +1 -3
- data/app/mailers/katello/subscription_mailer.rb +35 -0
- data/app/models/katello/activation_key.rb +1 -0
- data/app/models/katello/ansible_collection.rb +1 -1
- data/app/models/katello/authorization/host_tracer.rb +14 -0
- data/app/models/katello/authorization/pool.rb +5 -1
- data/app/models/katello/authorization/subscription.rb +1 -3
- data/app/models/katello/concerns/host_managed_extensions.rb +31 -4
- data/app/models/katello/concerns/http_proxy_extensions.rb +7 -30
- data/app/models/katello/concerns/organization_extensions.rb +9 -0
- data/app/models/katello/concerns/pulp_database_unit.rb +61 -34
- data/app/models/katello/concerns/redhat_extensions.rb +2 -1
- data/app/models/katello/concerns/smart_proxy_extensions.rb +2 -1
- data/app/models/katello/concerns/subscription_facet_host_extensions.rb +1 -1
- data/app/models/katello/content.rb +2 -2
- data/app/models/katello/content_view.rb +3 -2
- data/app/models/katello/content_view_version.rb +1 -0
- data/app/models/katello/erratum.rb +6 -1
- data/app/models/katello/erratum_cve.rb +4 -0
- data/app/models/katello/events/generate_host_applicability.rb +27 -0
- data/app/models/katello/glue/candlepin/activation_key.rb +1 -1
- data/app/models/katello/glue/candlepin/pool.rb +5 -7
- data/app/models/katello/glue/candlepin/product.rb +1 -1
- data/app/models/katello/glue/candlepin/subscription.rb +1 -1
- data/app/models/katello/glue/provider.rb +5 -3
- data/app/models/katello/glue/pulp/repo.rb +1 -1
- data/app/models/katello/host/content_facet.rb +26 -4
- data/app/models/katello/host/subscription_facet.rb +1 -1
- data/app/models/katello/host_tracer.rb +8 -0
- data/app/models/katello/kt_environment.rb +1 -1
- data/app/models/katello/module_stream.rb +2 -0
- data/app/models/katello/module_stream_rpm.rb +6 -0
- data/app/models/katello/pool.rb +19 -3
- data/app/models/katello/product.rb +1 -1
- data/app/models/katello/provider.rb +2 -3
- data/app/models/katello/puppet_module.rb +1 -1
- data/app/models/katello/repository.rb +16 -11
- data/app/models/katello/root_repository.rb +9 -1
- data/app/models/katello/rpm.rb +2 -1
- data/app/models/katello/subscription.rb +2 -4
- data/app/models/katello/sync_plan.rb +2 -2
- data/app/models/katello/task_status.rb +1 -1
- data/app/models/katello/trace_status.rb +3 -3
- data/app/models/setting/content.rb +6 -2
- data/app/services/katello/applicability/applicable_content_helper.rb +121 -0
- data/app/services/katello/candlepin/consumer.rb +1 -1
- data/app/services/katello/candlepin/message_handler.rb +2 -3
- data/app/services/katello/candlepin_event_listener.rb +39 -53
- data/app/services/katello/event_daemon.rb +18 -18
- data/app/services/katello/event_monitor/poller_thread.rb +15 -17
- data/app/services/katello/product_content_importer.rb +2 -2
- data/app/services/katello/pulp/consumer.rb +6 -10
- data/app/services/katello/pulp/docker_manifest.rb +1 -1
- data/app/services/katello/pulp/docker_manifest_list.rb +1 -1
- data/app/services/katello/pulp/erratum.rb +1 -1
- data/app/services/katello/pulp/file_unit.rb +1 -1
- data/app/services/katello/pulp/module_stream.rb +1 -1
- data/app/services/katello/pulp/ostree_branch.rb +1 -1
- data/app/services/katello/pulp/package_group.rb +1 -1
- data/app/services/katello/pulp/pulp_content_unit.rb +4 -0
- data/app/services/katello/pulp/puppet_module.rb +1 -1
- data/app/services/katello/pulp/repository/yum.rb +3 -3
- data/app/services/katello/pulp/yum_metadata_file.rb +1 -1
- data/app/services/katello/pulp3/ansible_collection.rb +1 -1
- data/app/services/katello/pulp3/api/ansible_collection.rb +4 -1
- data/app/services/katello/pulp3/api/core.rb +20 -12
- data/app/services/katello/pulp3/api/docker.rb +4 -1
- data/app/services/katello/pulp3/api/file.rb +4 -1
- data/app/services/katello/pulp3/api/yum.rb +4 -1
- data/app/services/katello/pulp3/content.rb +2 -2
- data/app/services/katello/pulp3/docker_manifest.rb +1 -1
- data/app/services/katello/pulp3/docker_manifest_list.rb +1 -1
- data/app/services/katello/pulp3/docker_tag.rb +1 -1
- data/app/services/katello/pulp3/erratum.rb +5 -1
- data/app/services/katello/pulp3/file_unit.rb +1 -1
- data/app/services/katello/pulp3/migration.rb +2 -1
- data/app/services/katello/pulp3/module_stream.rb +13 -3
- data/app/services/katello/pulp3/package_group.rb +1 -1
- data/app/services/katello/pulp3/pulp_content_unit.rb +10 -0
- data/app/services/katello/pulp3/repository.rb +16 -11
- data/app/services/katello/pulp3/repository/docker.rb +1 -1
- data/app/services/katello/pulp3/repository/yum.rb +16 -2
- data/app/services/katello/pulp3/repository_mirror.rb +4 -2
- data/app/services/katello/pulp3/rpm.rb +23 -25
- data/app/services/katello/pulp3/smart_proxy_mirror_repository.rb +1 -1
- data/app/services/katello/pulp3/smart_proxy_repository.rb +23 -3
- data/app/services/katello/pulp3/srpm.rb +3 -1
- data/app/services/katello/ui_notifications/subscriptions/expire_soon.rb +1 -1
- data/app/services/katello/ui_notifications/subscriptions/manifest_expired_warning.rb +63 -0
- data/app/views/katello/api/v2/activation_keys/product_content.json.rabl +1 -1
- data/app/views/katello/api/v2/content_facet/erratum.json.rabl +1 -1
- data/app/views/katello/api/v2/content_facet/show.json.rabl +4 -0
- data/app/views/katello/api/v2/content_view_histories/show.json.rabl +2 -6
- data/app/views/katello/api/v2/host_subscriptions/product_content.json.rabl +2 -1
- data/app/views/katello/api/v2/host_tracer/base.json.rabl +6 -4
- data/app/views/katello/api/v2/organizations/owner_details.rabl +5 -0
- data/app/views/katello/api/v2/organizations/show.json.rabl +6 -1
- data/app/views/katello/api/v2/organizations/upstream_consumer.rabl +1 -0
- data/app/views/katello/subscription_mailer/subscription_expiry.html.erb +47 -0
- data/app/views/katello/subscription_mailer/subscription_expiry.text.erb +19 -0
- data/app/views/users/_subscriptions_expiring_soon_query_builder.html.erb +16 -0
- data/config/initializers/monkeys.rb +2 -2
- data/config/katello.yaml.example +4 -0
- data/config/routes.rb +2 -2
- data/config/routes/api/rhsm.rb +1 -0
- data/config/routes/api/v2.rb +6 -1
- data/config/routes/overrides.rb +1 -1
- data/db/functions/empty_v01.sql +7 -0
- data/db/functions/evr_trigger_v01.sql +9 -0
- data/db/functions/isalpha_v01.sql +11 -0
- data/db/functions/isalphanum_v01.sql +12 -0
- data/db/functions/isdigit_v01.sql +10 -0
- data/db/functions/rpmver_array_v01.sql +60 -0
- data/db/migrate/20131016124255_add_foreign_keys_engine.rb +1 -1
- data/db/migrate/20140117160939_refactor_content_views.rb +1 -1
- data/db/migrate/20140626204657_add_unlimited_to_activation_keys.rb +3 -3
- data/db/migrate/20140626204902_add_unlimited_to_host_collection.rb +3 -3
- data/db/migrate/20140930170628_add_errata.rb +1 -1
- data/db/migrate/20150119153452_update_promote_errata_email_description.rb +2 -6
- data/db/migrate/20150606021722_create_puppet_modules.rb +1 -1
- data/db/migrate/20150813185339_create_subscriptions.rb +1 -1
- data/db/migrate/20150826170004_add_content_facet.rb +1 -1
- data/db/migrate/20150930183738_migrate_content_hosts.rb +6 -8
- data/db/migrate/20160908234510_add_rpm_nvra.rb +1 -1
- data/db/migrate/20160930150810_add_smart_proxy_download_policy.rb +1 -1
- data/db/migrate/20161014133811_move_content_view_version_description_to_histories.rb +1 -1
- data/db/migrate/20161026191118_fix_invalid_interfaces.rb +1 -1
- data/db/migrate/20180103230812_set_errata_updated_date.rb +1 -1
- data/db/migrate/20180410140909_add_organization_id_to_pool.rb +1 -1
- data/db/migrate/20180920214134_create_repository_root.rb +2 -3
- data/db/migrate/20190730183518_add_docker_tag_join_table.rb +1 -1
- data/db/migrate/20190730203334_add_docker_meta_tag_join_table.rb +1 -1
- data/db/migrate/20200204034123_add_pulp3_href_to_repository_erratum.rb +6 -0
- data/db/migrate/20200213184848_create_evr_type.rb +49 -0
- data/db/migrate/20200304201026_create_katello_module_stream_rpms.rb +15 -0
- data/db/migrate/20200506163345_add_applicability_indicesto_katello_host_available_module_streams.rb +12 -0
- data/db/seeds.d/106-mail_notifications.rb +8 -0
- data/db/seeds.d/107-enable_dynflow.rb +1 -1
- data/db/seeds.d/109-katello-notification-blueprints.rb +6 -0
- data/db/seeds.d/111-upgrade_tasks.rb +1 -2
- data/db/seeds.d/75-job_templates.rb +2 -2
- data/db/triggers/evr_insert_trigger_katello_installed_packages_v01.sql +5 -0
- data/db/triggers/evr_insert_trigger_katello_rpms_v01.sql +5 -0
- data/db/triggers/evr_update_trigger_katello_installed_packages_v01.sql +10 -0
- data/db/triggers/evr_update_trigger_katello_rpms_v01.sql +10 -0
- data/engines/bastion/app/assets/javascripts/bastion/bastion.module.js +1 -1
- data/engines/bastion/app/assets/javascripts/bastion/routing.module.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-animate/angular-animate.js +465 -340
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_af-na.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_af-za.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_af.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_agq-cm.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ak-gh.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ak.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_am-et.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_am.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-001.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-ae.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-bh.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-dj.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-eg.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-er.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-il.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-iq.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-jo.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-km.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-kw.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-lb.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-ly.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-ma.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-mr.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-om.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-ps.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-qa.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-sa.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-sd.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-so.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-ss.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-sy.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-td.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-tn.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-xb.js +125 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar-ye.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ar.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_as-in.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_as.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_asa-tz.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_asa.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ast-es.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ast.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_az-cyrl-az.js +41 -41
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_az-cyrl.js +41 -41
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_az-latn-az.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_az-latn.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_az.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bas-cm.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_be-by.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_be.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bez-tz.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bez.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bg-bg.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bg.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bm-ml.js +31 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bn-bd.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bn-in.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bn.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bo-cn.js +24 -24
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bo-in.js +25 -25
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bo.js +24 -24
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_br-fr.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_br.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_brx-in.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_brx.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bs-latn-ba.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bs-latn.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_bs.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ca-ad.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ca-es.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ca-fr.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ca-it.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ca.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ce-ru.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ce.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_cgg-ug.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_cgg.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_chr-us.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_chr.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ckb-arab-iq.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ckb-arab-ir.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ckb-arab.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ckb-iq.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ckb-ir.js +9 -9
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ckb-latn-iq.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ckb-latn.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ckb.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_cs-cz.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_cs.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_cu-ru.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_cu.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_cy-gb.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_cy.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_da-dk.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_da-gl.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_da.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_dav-ke.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_dav.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_de-at.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_de-ch.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_de-it.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_de-li.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_dje-ne.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_dua-cm.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_dyo-sn.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ebu-ke.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ebu.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ee-tg.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-001.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-150.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-ai.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-at.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-au.js +22 -22
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-be.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-bi.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-bw.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-cc.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-ch.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-ck.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-cm.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-cx.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-cy.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-de.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-dg.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-dk.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-fi.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-fk.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-gb.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-gg.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-gi.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-gy.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-ie.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-il.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-im.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-io.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-je.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-jm.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-ke.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-mg.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-ms.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-mt.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-mu.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-nf.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-nl.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-nr.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-nu.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-pk.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-pn.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-rw.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-sc.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-se.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-sh.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-si.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-sl.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-sx.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-tk.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-tv.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-tz.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-ug.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-us-posix.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-vu.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-xa.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-za.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_en-zw.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-419.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-ar.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-bo.js +18 -18
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-br.js +125 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-bz.js +125 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-cl.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-co.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-cr.js +18 -18
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-cu.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-do.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-ea.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-ec.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-es.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-gq.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-gt.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-hn.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-ic.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-mx.js +18 -18
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-ni.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-pa.js +13 -13
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-pe.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-ph.js +16 -16
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-pr.js +13 -13
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-py.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-sv.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-us.js +15 -15
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-uy.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es-ve.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_es.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_et-ee.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_et.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_eu-es.js +16 -16
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_eu.js +16 -16
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ewo-cm.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fa-af.js +25 -25
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fa-ir.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fa.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ff-cm.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ff-gn.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ff-mr.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ff-sn.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fi-fi.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fi.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fo-dk.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fo-fo.js +32 -32
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fo.js +32 -32
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-be.js +13 -13
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-bf.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-bi.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-bj.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-bl.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-ca.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-cd.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-cf.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-cg.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-ch.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-ci.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-cm.js +16 -16
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-dj.js +18 -18
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-dz.js +16 -16
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-fr.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-ga.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-gf.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-gn.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-gp.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-gq.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-ht.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-km.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-lu.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-ma.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-mc.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-mf.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-mg.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-ml.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-mq.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-mr.js +18 -18
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-mu.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-nc.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-ne.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-pf.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-pm.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-re.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-rw.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-sc.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-sn.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-sy.js +18 -18
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-td.js +18 -18
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-tg.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-tn.js +18 -18
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-vu.js +18 -18
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-wf.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr-yt.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fr.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fy-nl.js +36 -36
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_fy.js +36 -36
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_gl-es.js +27 -27
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_gl.js +27 -27
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_gsw-ch.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_gsw-fr.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_gsw-li.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_gsw.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_gu-in.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_gu.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_guz-ke.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_guz.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_gv-im.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_gv.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ha-gh.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ha-ne.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ha-ng.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ha.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_he-il.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_he.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_hr-ba.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_hr-hr.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_hr.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_hy-am.js +22 -22
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_hy.js +20 -20
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_id-id.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_id.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ig-ng.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ig.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ii-cn.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ii.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_in.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_is-is.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_it-ch.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_it-it.js +16 -16
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_it-sm.js +16 -16
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_it-va.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_it.js +16 -16
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_iw.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ja-jp.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_jgo-cm.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_jgo.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_jmc-tz.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_jmc.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ka-ge.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ka.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kab-dz.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kab.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kam-ke.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kam.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kde-tz.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kde.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_khq-ml.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ki-ke.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ki.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kk-kz.js +125 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kk.js +28 -28
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kkj-cm.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kl-gl.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kl.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kln-ke.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kln.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_km-kh.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_km.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kn-in.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kn.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ko-kp.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ko-kr.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ko.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kok-in.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kok.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ks-in.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ksb-tz.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ksb.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ksf-cm.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ksh-de.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ksh.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kw-gb.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_kw.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ky-kg.js +125 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ky.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_lag-tz.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_lag.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_lg-ug.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_lg.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_lkt-us.js +9 -9
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_lkt.js +9 -9
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ln-cf.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ln-cg.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_lo-la.js +9 -9
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_lo.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_lrc-iq.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_lrc-ir.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_lrc.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_luo-ke.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_luo.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_luy-ke.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_luy.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_lv-lv.js +25 -25
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_lv.js +25 -25
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mas-ke.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mas-tz.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mas.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mer-ke.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mer.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mfe-mu.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mg-mg.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mg.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mgh-mz.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mgh.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mgo-cm.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mk-mk.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mk.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ml-in.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ml.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mn-mn.js +125 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mn.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mo.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ms-bn.js +39 -13
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ms-my.js +35 -9
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ms-sg.js +125 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mua-cm.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_my-mm.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_my.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mzn-ir.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_mzn.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nb-no.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nb-sj.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nb.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nd-zw.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nd.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nds-de.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nds-nl.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nds.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ne-in.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ne-np.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ne.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nl-aw.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nl-be.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nl-bq.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nl-cw.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nl-nl.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nl-sr.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nl-sx.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nl.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nmg-cm.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nnh-cm.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nnh.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_no-no.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_no.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nus-ss.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nus.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nyn-ug.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_nyn.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_om-et.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_om-ke.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_om.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_os-ge.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_os-ru.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_os.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pa-arab-pk.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pa-arab.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pa-guru-in.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pa-guru.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pa.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pl-pl.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pl.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_prg-001.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_prg.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ps-af.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ps.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pt-ao.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pt-br.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pt-ch.js +125 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pt-cv.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pt-gq.js +125 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pt-gw.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pt-lu.js +125 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pt-mo.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pt-mz.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pt-pt.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pt-st.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pt-tl.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_pt.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_qu-bo.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_qu-ec.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_qu-pe.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_qu.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_rm-ch.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_rm.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_rn-bi.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ro-md.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ro-ro.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ro.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_rof-tz.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_rof.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ru-by.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ru-kg.js +9 -9
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ru-kz.js +9 -9
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ru-md.js +9 -9
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ru-ru.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ru-ua.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ru.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_rw-rw.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_rw.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_rwk-tz.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_rwk.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sah-ru.js +40 -40
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sah.js +40 -40
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_saq-ke.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_saq.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sbp-tz.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sbp.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_se-fi.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_seh-mz.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_seh.js +1 -1
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ses-ml.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sg-cf.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sh.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_shi-latn-ma.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_shi-latn.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_shi-tfng-ma.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_shi-tfng.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_shi.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_si-lk.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_si.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sk-sk.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sk.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sl-si.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sl.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_smn-fi.js +51 -51
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_smn.js +51 -51
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sn-zw.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sn.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_so-dj.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_so-et.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_so-ke.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_so-so.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_so.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sq-al.js +24 -24
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sq-mk.js +18 -18
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sq-xk.js +18 -18
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sq.js +22 -22
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sr-cyrl-ba.js +21 -21
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sr-cyrl-me.js +25 -25
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sr-cyrl-rs.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sr-cyrl-xk.js +22 -22
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sr-cyrl.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sr-latn-ba.js +21 -21
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sr-latn-me.js +25 -25
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sr-latn-rs.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sr-latn-xk.js +22 -22
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sr-latn.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sr.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sv-ax.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sv-fi.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sv-se.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sv.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sw-cd.js +45 -45
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sw-ke.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sw-tz.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sw-ug.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_sw.js +8 -8
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ta-in.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ta-lk.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ta-my.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ta-sg.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ta.js +14 -14
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_te-in.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_te.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_teo-ke.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_teo-ug.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_teo.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ti-er.js +22 -22
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ti-et.js +45 -45
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ti.js +45 -45
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_tk-tm.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_tk.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_to-to.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_to.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_tr-cy.js +9 -9
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_tr-tr.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_tr.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_twq-ne.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_tzm-ma.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_tzm.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ug-cn.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ug.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_uk-ua.js +22 -22
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_uk.js +22 -22
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ur-in.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ur-pk.js +9 -9
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_ur.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_uz-arab-af.js +19 -19
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_uz-arab.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_uz-cyrl-uz.js +49 -49
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_uz-cyrl.js +47 -47
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_uz-latn-uz.js +41 -41
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_uz-latn.js +39 -39
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_uz.js +39 -39
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_vi-vn.js +12 -12
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_vi.js +10 -10
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_vo-001.js +22 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_vo.js +22 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_vun-tz.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_vun.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_xog-ug.js +6 -6
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_xog.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_yav-cm.js +2 -2
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_yi-001.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_yi.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_yo-bj.js +7 -7
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_yo-ng.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_yo.js +5 -5
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_yue-hk.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_yue.js +143 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_zgh-ma.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_zgh.js +3 -3
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_zh-cn.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_zh-hans-cn.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_zh-hans.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_zh-hant-hk.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_zh-hant-mo.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_zh-hk.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_zh.js +4 -4
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_zu-za.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/angular-locale_zu.js +17 -17
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/ar-xb.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/ce-ru.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/ce.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/cu-ru.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/cu.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/de-it.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/en-at.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/en-bi.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/en-ch.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/en-cy.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/en-de.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/en-dk.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/en-fi.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/en-il.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/en-nl.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/en-se.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/en-si.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/en-us-posix.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/en-xa.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/es-br.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/es-bz.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/fo-dk.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/ha-gh.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/ha-ne.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/ha-ng.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/it-va.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/kk-kz.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/ks-in.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/ky-kg.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/lrc-iq.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/lrc-ir.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/lrc.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/mn-mn.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/mo.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/ms-sg.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/mzn-ir.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/mzn.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/nds-de.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/nds-nl.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/nds.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/nus-ss.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/prg-001.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/prg.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/pt-ch.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/pt-gq.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/pt-lu.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/sh.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/tk-tm.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/tk.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/tzm-ma.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/ug-cn.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/yue-hk.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-i18n/yue.js +2 -0
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-resource/angular-resource.js +407 -264
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-route/angular-route.js +397 -156
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-sanitize/angular-sanitize.js +516 -320
- data/engines/bastion/vendor/assets/javascripts/bastion/angular-ui-router/angular-ui-router.js +10551 -4465
- data/engines/bastion/vendor/assets/javascripts/bastion/angular/angular.js +10455 -4892
- data/engines/bastion/vendor/assets/javascripts/bastion/ngUpload/ng-upload.js +2 -2
- data/engines/bastion_katello/README.md +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/activation-key.factory.js +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/activation-keys/activation-keys.routes.js +0 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/ansible-collections/ansible-collections.factory.js +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/common/api-error-handler.service.js +2 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-credentials/content-credentials.routes.js +0 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-credentials/details/views/content-credential-info.html +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-credentials/views/content-credentials.html +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/content-hosts-bulk-traces-modal.controller.js +65 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/bulk/views/content-hosts-bulk-traces-modal.html +79 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-host-modal-helper.service.js +11 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-hosts-helper.service.js +6 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content-hosts.controller.js +5 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-packages-actions.controller.js +8 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/content-host-traces.controller.js +10 -9
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-errata.html +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/content/views/content-host-traces.html +14 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/content-host-details.controller.js +23 -10
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/details/views/content-host-info.html +20 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/content-hosts.html +4 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-hosts/views/register-client.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/content-views/details/content-view-promotion.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/debs/deb.factory.js +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-manifest-lists/docker-manifest-list.factory.js +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-manifests/docker-manifest.factory.js +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/docker-tags.factory.js +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/docker-tags/docker-tags.routes.js +0 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/environments.routes.js +0 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/environments/views/environments.html +1 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/errata.controller.js +15 -6
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/errata.routes.js +3 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/errata/erratum.factory.js +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/files/file.factory.js +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/host-collection.factory.js +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/host-collections/host-collections.routes.js +0 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-bulk-action.factory.js +2 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/hosts/host-traces-resolve.factory.js +18 -0
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/module-streams/module-stream.factory.js +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/package-groups/package-group.factory.js +3 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/packages/package.factory.js +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/repository-details.controller.js +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-advanced-sync-options.html +5 -5
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/details/views/repository-info.html +1 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/details/repositories/new/views/new-repository.html +1 -3
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/product.factory.js +2 -2
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/products/products.routes.js +0 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/sync-plans/sync-plans.routes.js +0 -1
- data/engines/bastion_katello/app/assets/javascripts/bastion_katello/tasks/task-details.controller.js +3 -2
- data/lib/katello.rb +4 -1
- data/lib/katello/engine.rb +25 -3
- data/lib/katello/permissions/host_permissions.rb +3 -0
- data/lib/katello/permissions/organization_permissions.rb +1 -2
- data/lib/katello/plugin.rb +12 -3
- data/lib/katello/prevent_json_parsing.rb +1 -1
- data/lib/katello/scheduled_jobs.rb +1 -1
- data/lib/katello/tasks/clean_backend_objects.rake +1 -1
- data/lib/katello/tasks/import_applicability.rake +4 -6
- data/lib/katello/tasks/jenkins.rake +1 -1
- data/lib/katello/tasks/pulp3_content_switchover.rake +6 -8
- data/lib/katello/tasks/pulp3_post_migration_check.rake +4 -0
- data/lib/katello/tasks/receptor/extract_orgs.rake +27 -0
- data/lib/katello/tasks/reimport.rake +15 -19
- data/lib/katello/tasks/repository.rake +5 -7
- data/lib/katello/tasks/reset.rake +12 -13
- data/lib/katello/tasks/update_content_default_http_proxy.rake +1 -1
- data/lib/katello/tasks/update_subscription_facet_backend_data.rake +14 -16
- data/lib/katello/tasks/upgrades/3.10/clear_invalid_repo_credentials.rake +1 -1
- data/lib/katello/tasks/upgrades/3.10/update_gpg_key_urls.rake +1 -1
- data/lib/katello/tasks/upgrades/3.11/update_puppet_repos.rake +9 -11
- data/lib/katello/tasks/upgrades/3.15/set_sub_facet_dmi_uuid.rake +1 -1
- data/lib/katello/tasks/upgrades/3.8/clear_checksum_type.rake +18 -22
- data/lib/katello/version.rb +1 -1
- data/lib/monkeys/ar_postgres_evr_t.rb +24 -0
- data/lib/monkeys/fx_sqlite_skip.rb +13 -0
- data/package.json +13 -39
- data/webpack/__mocks__/foremanReact/components/{BreadcrumbBar.js → BreadcrumbBar/index.js} +0 -1
- data/webpack/__mocks__/react-intl/index.js +3 -0
- data/webpack/__mocks__/react-intl/locale-data/en.js +1 -0
- data/webpack/components/Content/ContentTable.js +0 -2
- data/webpack/components/Content/Details/ContentDetails.js +0 -3
- data/webpack/containers/Application/config.js +5 -0
- data/webpack/containers/Application/overrides.scss +8 -0
- data/webpack/mockRequest.js +1 -0
- data/webpack/move_to_foreman/common/helpers.js +2 -1
- data/webpack/move_to_foreman/components/common/table/components/__snapshots__/Table.test.js.snap +1 -0
- data/webpack/scenes/AnsibleCollections/Details/AnsibleCollectionDetails.js +0 -3
- data/webpack/scenes/AnsibleCollections/Details/AnsibleCollectionDetailsActions.js +2 -2
- data/webpack/scenes/AnsibleCollections/Details/__tests__/__snapshots__/AnsibleCollectionDetailsActions.test.js.snap +4 -0
- data/webpack/scenes/ContentViews/ContentViewSelectors.js +13 -0
- data/webpack/scenes/ContentViews/ContentViewsActions.js +18 -0
- data/webpack/scenes/ContentViews/ContentViewsConstants.js +3 -0
- data/webpack/scenes/ContentViews/ContentViewsPage.js +30 -0
- data/webpack/scenes/ContentViews/Table/ContentViewsTable.js +104 -0
- data/webpack/scenes/ContentViews/Table/TableWrapper.js +55 -0
- data/webpack/scenes/ContentViews/Table/actionResolver.js +28 -0
- data/webpack/scenes/ContentViews/Table/index.js +3 -0
- data/webpack/scenes/ContentViews/Table/tableDataGenerator.js +133 -0
- data/webpack/scenes/ContentViews/__tests__/contentViewList.fixtures.json +228 -0
- data/webpack/scenes/ContentViews/__tests__/contentViewPage.test.js +99 -0
- data/webpack/scenes/ContentViews/components/ContentViewName.js +33 -0
- data/webpack/scenes/ContentViews/components/EmptyStateMessage.js +43 -0
- data/webpack/scenes/ContentViews/components/IconWithCount.js +18 -0
- data/webpack/scenes/ContentViews/components/IconWithCount.scss +3 -0
- data/webpack/scenes/ContentViews/components/Loading.js +31 -0
- data/webpack/scenes/ContentViews/components/contentViewName.scss +9 -0
- data/webpack/scenes/ContentViews/details/ContentViewDetailActions.js +12 -0
- data/webpack/scenes/ContentViews/details/ContentViewDetailSelectors.js +15 -0
- data/webpack/scenes/ContentViews/details/DetailsContainer.js +35 -0
- data/webpack/scenes/ContentViews/expansions/DetailsExpansion.js +11 -0
- data/webpack/scenes/ContentViews/expansions/EnvironmentsExpansion.js +19 -0
- data/webpack/scenes/ContentViews/expansions/RepositoriesExpansion.js +12 -0
- data/webpack/scenes/ContentViews/expansions/VersionsExpansion.js +11 -0
- data/webpack/scenes/ContentViews/index.js +4 -0
- data/webpack/scenes/ModuleStreams/Details/ModuleStreamDetails.js +0 -3
- data/webpack/scenes/ModuleStreams/Details/ModuleStreamDetailsActions.js +2 -2
- data/webpack/scenes/ModuleStreams/Details/__tests__/__snapshots__/ModuleStreamDetailsActions.test.js.snap +4 -0
- data/webpack/scenes/RedHatRepositories/RedHatRepositoriesPage.js +0 -2
- data/webpack/scenes/RedHatRepositories/__tests__/__snapshots__/RedHatRepositoriesPage.test.js.snap +8 -0
- data/webpack/scenes/RedHatRepositories/components/EnabledRepository/EnabledRepository.js +0 -2
- data/webpack/scenes/RedHatRepositories/components/RepositorySetRepository/RepositorySetRepository.js +0 -2
- data/webpack/scenes/Subscriptions/Details/SubscriptionDetailAssociations.js +0 -2
- data/webpack/scenes/Subscriptions/Details/SubscriptionDetailProductContent.js +0 -2
- data/webpack/scenes/Subscriptions/Details/SubscriptionDetailProducts.js +0 -2
- data/webpack/scenes/Subscriptions/Manifest/ManageManifestModal.js +0 -2
- data/webpack/scenes/Subscriptions/Manifest/__tests__/__snapshots__/ManageManifestModal.test.js.snap +3 -2
- data/webpack/scenes/Subscriptions/SubscriptionsPage.js +0 -3
- data/webpack/scenes/Subscriptions/UpstreamSubscriptions/UpstreamSubscriptionsPage.js +0 -2
- data/webpack/scenes/Subscriptions/__tests__/SubscriptionsActions.test.js +1 -1
- data/webpack/scenes/Subscriptions/__tests__/__snapshots__/SubscriptionsActions.test.js.snap +19 -13
- data/webpack/scenes/Subscriptions/__tests__/__snapshots__/SubscriptionsPage.test.js.snap +8 -0
- data/webpack/scenes/Subscriptions/components/SubscriptionsTable/SubscriptionsTable.js +0 -2
- data/webpack/scenes/Subscriptions/components/SubscriptionsTable/__tests__/SubscriptionsTable.test.js +0 -1
- data/webpack/scenes/Subscriptions/components/SubscriptionsTable/components/Dialogs/UpdateDialog.js +1 -1
- data/webpack/scenes/Subscriptions/components/SubscriptionsTable/components/Dialogs/index.js +4 -4
- data/webpack/scenes/Subscriptions/components/SubscriptionsTable/components/Table.js +0 -2
- data/webpack/scenes/Subscriptions/components/SubscriptionsToolbar/__snapshots__/SubscriptionsToolbar.test.js.snap +10 -0
- data/webpack/scenes/Tasks/__tests__/__snapshots__/TaskActions.test.js.snap +12 -8
- data/webpack/test-utils/nockWrapper.js +17 -0
- data/webpack/test-utils/react-testing-lib-wrapper.js +42 -0
- data/webpack/test_setup.js +10 -0
- metadata +246 -67
- data/app/lib/actions/candlepin/owner/auto_attach.rb +0 -15
- data/app/lib/actions/katello/organization/auto_attach_subscriptions.rb +0 -16
- data/app/services/katello/candlepin_listening_service.rb +0 -94
- data/config/initializers/multipart_json_fix.rb +0 -15
- data/config/initializers/runcible.rb +0 -5
- data/lib/katello/tasks/upgrades/3.16/update_applicable_el8_hosts.rake +0 -29
- data/lib/monkeys/json_munging_patch.rb +0 -25
- data/lib/monkeys/multi_json_empty_fix.rb +0 -14
- data/webpack/__mocks__/foremanReact/common/I18n.js +0 -5
- data/webpack/__mocks__/foremanReact/common/helpers.js +0 -21
- data/webpack/__mocks__/foremanReact/common/keyCodes.js +0 -8
- data/webpack/__mocks__/foremanReact/components/PermissionDenied/index.js +0 -2
- data/webpack/__mocks__/foremanReact/components/common/ModalProgressBar.js +0 -8
- data/webpack/__mocks__/foremanReact/components/common/table.js +0 -6
- data/webpack/__mocks__/foremanReact/redux/API.js +0 -6
- data/webpack/__mocks__/foremanReact/redux/middlewares/IntervalMiddleware/IntervalSelectors.js +0 -6
- data/webpack/__mocks__/foremanReact/redux/middlewares/IntervalMiddleware/index.js +0 -11
@@ -20,7 +20,13 @@ module Katello
|
|
20
20
|
|
21
21
|
def destroy(owner_label, id)
|
22
22
|
fail ArgumentError, "content id has to be specified" unless id
|
23
|
-
|
23
|
+
|
24
|
+
begin
|
25
|
+
self.delete(path(owner_label, id), self.default_headers).code.to_i
|
26
|
+
rescue RestClient::NotFound
|
27
|
+
# this is OK
|
28
|
+
:content_gone
|
29
|
+
end
|
24
30
|
end
|
25
31
|
|
26
32
|
def update(owner_label, attrs)
|
@@ -118,15 +118,6 @@ module Katello
|
|
118
118
|
JSON.parse(response)['systemPurposeAttributes']
|
119
119
|
end
|
120
120
|
end
|
121
|
-
|
122
|
-
def auto_attach(key)
|
123
|
-
response = self.post(join_path(path(key), 'entitlements'), "", self.default_headers).body
|
124
|
-
if response.empty?
|
125
|
-
return nil
|
126
|
-
else
|
127
|
-
JSON.parse(response)
|
128
|
-
end
|
129
|
-
end
|
130
121
|
end
|
131
122
|
end
|
132
123
|
end
|
@@ -1,6 +1,7 @@
|
|
1
1
|
module Katello
|
2
2
|
module Resources
|
3
3
|
module CDN
|
4
|
+
SUPPORTED_SSL_VERSIONS = ['SSLv23', 'TLSv1'].freeze
|
4
5
|
class Utils
|
5
6
|
# takes releasever from contentUrl (e.g. 6Server, 6.0, 6.1)
|
6
7
|
# returns hash e.g. {:major => 6, :minor => "6.1"}
|
@@ -25,6 +26,10 @@ module Katello
|
|
25
26
|
end
|
26
27
|
|
27
28
|
def initialize(url, options = {})
|
29
|
+
@ssl_version = Setting[:cdn_ssl_version]
|
30
|
+
if @ssl_version && !SUPPORTED_SSL_VERSIONS.include?(@ssl_version)
|
31
|
+
fail("Invalid SSL version specified. Check the 'CDN SSL Version' setting")
|
32
|
+
end
|
28
33
|
options.reverse_merge!(:verify_ssl => 9)
|
29
34
|
options.assert_valid_keys(:ssl_client_key, :ssl_client_cert, :ssl_ca_file, :verify_ssl,
|
30
35
|
:product)
|
@@ -66,7 +71,7 @@ module Katello
|
|
66
71
|
# Run the following command in rails console to figure out other
|
67
72
|
# valid constants in other ruby versions
|
68
73
|
# "OpenSSL::SSL::SSLContext::METHODS"
|
69
|
-
net.ssl_version =
|
74
|
+
net.ssl_version = @ssl_version
|
70
75
|
|
71
76
|
if (@options[:verify_ssl] == false) || (@options[:verify_ssl] == OpenSSL::SSL::VERIFY_NONE)
|
72
77
|
net.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
@@ -27,7 +27,7 @@ module Katello
|
|
27
27
|
pulp_master = ::SmartProxy.pulp_master
|
28
28
|
|
29
29
|
# Pulp 3 has its own registry
|
30
|
-
if pulp_master
|
30
|
+
if pulp_master&.pulp3_repository_type_support?(::Katello::Repository::DOCKER_TYPE)
|
31
31
|
uri = URI(pulp_master.setting(SmartProxy::PULP3_FEATURE, 'content_app_url'))
|
32
32
|
uri.path = "/pulpcore_registry/"
|
33
33
|
registry_url = uri.to_s
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module Katello
|
2
|
+
class SubscriptionMailer < ApplicationMailer
|
3
|
+
helper :'katello/subscription_mailer'
|
4
|
+
after_action :prevent_sending_blank_report
|
5
|
+
include SubscriptionMailerHelper
|
6
|
+
|
7
|
+
def subscription_expiry(options)
|
8
|
+
user = ::User.find(options[:user])
|
9
|
+
days_from_now = options[:query]
|
10
|
+
|
11
|
+
::User.as(user.login) do
|
12
|
+
@pools = Katello::Pool.readable.expiring_in_days(days_from_now)
|
13
|
+
@affected_hosts = ::Host::Managed.with_pools_expiring_in_days(days_from_now)
|
14
|
+
end
|
15
|
+
|
16
|
+
if @affected_hosts.any?
|
17
|
+
start_report_task(days_from_now)
|
18
|
+
@report_url = report_url
|
19
|
+
@report_link = report_link
|
20
|
+
end
|
21
|
+
|
22
|
+
set_locale_for(user) do
|
23
|
+
mail(:to => user.mail, :subject => _("You have subscriptions expiring within %s days") % days_from_now)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
private
|
28
|
+
|
29
|
+
def prevent_sending_blank_report
|
30
|
+
if @pools.blank?
|
31
|
+
mail.perform_deliveries = false
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -34,6 +34,7 @@ module Katello
|
|
34
34
|
validates_lengths_from_database
|
35
35
|
validates_with Validators::KatelloNameFormatValidator, :attributes => :name
|
36
36
|
validates :name, :presence => true
|
37
|
+
validates :name, :format => { without: /,/, message: _('cannot contain commas') }
|
37
38
|
validates :name, :uniqueness => {:scope => :organization_id}
|
38
39
|
validate :environment_exists
|
39
40
|
validates :max_hosts, :numericality => {:less_than => 2**31, :allow_nil => true}
|
@@ -2,13 +2,17 @@ module Katello
|
|
2
2
|
module Authorization::Pool
|
3
3
|
extend ActiveSupport::Concern
|
4
4
|
|
5
|
+
include Authorizable
|
6
|
+
|
5
7
|
def readable?
|
6
8
|
self.class.readable.where(id: self.id).any?
|
7
9
|
end
|
8
10
|
|
9
11
|
module ClassMethods
|
10
12
|
def readable
|
11
|
-
|
13
|
+
relation = joins_authorized(Katello::Subscription, :view_subscriptions)
|
14
|
+
relation = relation.where(organization_id: User.current.organization_ids) unless User.current.admin?
|
15
|
+
relation
|
12
16
|
end
|
13
17
|
end
|
14
18
|
end
|
@@ -51,6 +51,8 @@ module Katello
|
|
51
51
|
before_save :correct_puppet_environment
|
52
52
|
before_validation :correct_kickstart_repository
|
53
53
|
|
54
|
+
scope :with_pools_expiring_in_days, ->(days) { joins(:pools).merge(Katello::Pool.expiring_in_days(days)).distinct }
|
55
|
+
|
54
56
|
scoped_search :relation => :host_collections, :on => :id, :complete_value => false, :rename => :host_collection_id, :only_explicit => true, :validator => ScopedSearch::Validators::INTEGER
|
55
57
|
scoped_search :relation => :host_collections, :on => :name, :complete_value => true, :rename => :host_collection
|
56
58
|
scoped_search :relation => :installed_packages, :on => :nvra, :complete_value => true, :rename => :installed_package, :only_explicit => true
|
@@ -61,6 +63,17 @@ module Katello
|
|
61
63
|
scoped_search :relation => :host_traces, :on => :application, :complete_value => true, :rename => :trace_app, :only_explicit => true
|
62
64
|
scoped_search :relation => :host_traces, :on => :app_type, :complete_value => true, :rename => :trace_app_type, :only_explicit => true
|
63
65
|
scoped_search :relation => :host_traces, :on => :helper, :complete_value => true, :rename => :trace_helper, :only_explicit => true
|
66
|
+
|
67
|
+
scoped_search relation: :pools, on: :pools_expiring_in_days, ext_method: :find_with_expiring_pools, only_explicit: true
|
68
|
+
|
69
|
+
def self.find_with_expiring_pools(_key, _operator, days_from_now)
|
70
|
+
host_ids = with_pools_expiring_in_days(days_from_now).ids
|
71
|
+
if host_ids.any?
|
72
|
+
{ :conditions => "hosts.id IN (#{host_ids.join(', ')})" }
|
73
|
+
else
|
74
|
+
{ :conditions => "1=0" }
|
75
|
+
end
|
76
|
+
end
|
64
77
|
end
|
65
78
|
|
66
79
|
def correct_kickstart_repository
|
@@ -182,7 +195,7 @@ module Katello
|
|
182
195
|
shared_keys = hams.attributes.keys & module_stream.keys
|
183
196
|
module_stream_data = module_stream.slice(*shared_keys)
|
184
197
|
if hams.attributes.slice(*shared_keys) != module_stream_data
|
185
|
-
hams.
|
198
|
+
hams.update!(module_stream_data)
|
186
199
|
end
|
187
200
|
end
|
188
201
|
end
|
@@ -213,11 +226,13 @@ module Katello
|
|
213
226
|
end
|
214
227
|
|
215
228
|
def import_tracer_profile(tracer_profile)
|
216
|
-
|
229
|
+
host_traces.delete_all
|
230
|
+
traces = []
|
217
231
|
tracer_profile.each do |trace, attributes|
|
218
|
-
self.
|
232
|
+
traces << { host_id: self.id, application: trace, helper: attributes[:helper], app_type: attributes[:type] }
|
219
233
|
end
|
220
|
-
|
234
|
+
Katello::HostTracer.import(traces, validate: false)
|
235
|
+
update_trace_status
|
221
236
|
end
|
222
237
|
|
223
238
|
def subscription_status
|
@@ -280,6 +295,14 @@ module Katello
|
|
280
295
|
@purpose_addons_status_label ||= get_status(::Katello::PurposeAddonsStatus).to_label(options)
|
281
296
|
end
|
282
297
|
|
298
|
+
def traces_status
|
299
|
+
@traces_status ||= get_status(::Katello::TraceStatus).status
|
300
|
+
end
|
301
|
+
|
302
|
+
def traces_status_label(options = {})
|
303
|
+
@traces_status_label ||= get_status(::Katello::TraceStatus).to_label(options)
|
304
|
+
end
|
305
|
+
|
283
306
|
def valid_content_override_label?(content_label)
|
284
307
|
available_content = subscription_facet.candlepin_consumer.available_product_content
|
285
308
|
available_content.map(&:content).any? { |content| content.label == content_label }
|
@@ -300,3 +323,7 @@ class ::Host::Managed::Jail < Safemode::Jail
|
|
300
323
|
:host_collections, :comment, :pools, :hypervisor_host, :lifecycle_environment, :content_view,
|
301
324
|
:installed_packages
|
302
325
|
end
|
326
|
+
|
327
|
+
class ActiveRecord::Associations::CollectionProxy::Jail < Safemode::Jail
|
328
|
+
allow :expiring_in_days
|
329
|
+
end
|
@@ -8,7 +8,6 @@ module Katello
|
|
8
8
|
:inverse_of => :http_proxy, :dependent => :nullify
|
9
9
|
after_update :update_default_proxy_setting
|
10
10
|
after_commit :update_repository_proxy_details
|
11
|
-
before_destroy :remove_references_to_proxy
|
12
11
|
|
13
12
|
def self.default_global_content_proxy
|
14
13
|
if Setting[:content_default_http_proxy]
|
@@ -17,34 +16,6 @@ module Katello
|
|
17
16
|
end
|
18
17
|
end
|
19
18
|
|
20
|
-
def repositories_with_proxy(proxy_id)
|
21
|
-
root_repos = RootRepository.with_selected_proxy(proxy_id)
|
22
|
-
|
23
|
-
if self == HttpProxy.default_global_content_proxy
|
24
|
-
root_repos += RootRepository.with_global_proxy
|
25
|
-
end
|
26
|
-
|
27
|
-
root_repos
|
28
|
-
end
|
29
|
-
|
30
|
-
def remove_references_to_proxy
|
31
|
-
root_repos = repositories_with_proxy(nil).uniq.sort
|
32
|
-
|
33
|
-
setting = Setting.find_by(name: 'content_default_http_proxy')
|
34
|
-
if setting&.value && setting.value == self.name
|
35
|
-
setting.update_attribute(:value, '')
|
36
|
-
end
|
37
|
-
|
38
|
-
unless root_repos.empty?
|
39
|
-
ForemanTasks.async_task(
|
40
|
-
::Actions::BulkAction,
|
41
|
-
::Actions::Katello::Repository::Update,
|
42
|
-
root_repos,
|
43
|
-
http_proxy_policy: Katello::RootRepository::GLOBAL_DEFAULT_HTTP_PROXY,
|
44
|
-
http_proxy_id: nil)
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
19
|
def update_default_proxy_setting
|
49
20
|
changes = self.previous_changes
|
50
21
|
if changes.key?(:name)
|
@@ -61,7 +32,13 @@ module Katello
|
|
61
32
|
changes = self.previous_changes
|
62
33
|
if changes.key?(:url) || changes.key?(:username) || changes.key?(:password)
|
63
34
|
|
64
|
-
|
35
|
+
root_repos = RootRepository.with_selected_proxy(id)
|
36
|
+
|
37
|
+
if self == HttpProxy.default_global_content_proxy
|
38
|
+
root_repos += RootRepository.with_global_proxy
|
39
|
+
end
|
40
|
+
|
41
|
+
repos = root_repos.uniq.collect(&:library_instance)
|
65
42
|
|
66
43
|
unless repos.empty?
|
67
44
|
ForemanTasks.async_task(
|
@@ -37,6 +37,7 @@ module Katello
|
|
37
37
|
|
38
38
|
attr_accessor :statistics
|
39
39
|
|
40
|
+
scope :with_upstream_pools, -> { joins(:pools).merge(Katello::Pool.upstream).distinct }
|
40
41
|
scope :having_name_or_label, ->(name_or_label) { where("name = :id or label = :id", :id => name_or_label) }
|
41
42
|
scoped_search :on => :label, :complete_value => :true
|
42
43
|
|
@@ -69,6 +70,10 @@ module Katello
|
|
69
70
|
self.providers.redhat.first
|
70
71
|
end
|
71
72
|
|
73
|
+
def redhat_account_number
|
74
|
+
pools.upstream.pluck(:account_number).first
|
75
|
+
end
|
76
|
+
|
72
77
|
def active_pools_count
|
73
78
|
self.pools.where.not(:unmapped_guest => true).count
|
74
79
|
end
|
@@ -118,6 +123,10 @@ module Katello
|
|
118
123
|
end
|
119
124
|
end
|
120
125
|
|
126
|
+
def clear_manifest_expired_notifications
|
127
|
+
NotificationBlueprint.find_by(name: 'manifest_expired_warning').notifications.where(:subject => self).destroy_all
|
128
|
+
end
|
129
|
+
|
121
130
|
def redhat_repository_url
|
122
131
|
redhat_provider.repository_url
|
123
132
|
end
|
@@ -43,6 +43,10 @@ module Katello
|
|
43
43
|
self::CONTENT_TYPE
|
44
44
|
end
|
45
45
|
|
46
|
+
def backend_identifier_field
|
47
|
+
nil
|
48
|
+
end
|
49
|
+
|
46
50
|
def content_unit_class
|
47
51
|
"::Katello::Pulp::#{self.name.demodulize}".constantize
|
48
52
|
end
|
@@ -101,7 +105,7 @@ module Katello
|
|
101
105
|
end
|
102
106
|
|
103
107
|
def import_for_repository(repository)
|
104
|
-
|
108
|
+
pulp_id_href_map = {}
|
105
109
|
service_class = SmartProxy.pulp_master!.content_service(content_type)
|
106
110
|
fetch_only_ids = !repository.content_view.default? &&
|
107
111
|
!repository.repository_type.unique_content_per_repo
|
@@ -110,6 +114,7 @@ module Katello
|
|
110
114
|
units.each do |unit|
|
111
115
|
unit = unit.with_indifferent_access
|
112
116
|
pulp_id = unit[service_class.unit_identifier]
|
117
|
+
backend_identifier = unit.dig(service_class.backend_unit_identifier)
|
113
118
|
unless fetch_only_ids
|
114
119
|
model = Katello::Util::Support.active_record_retry do
|
115
120
|
self.where(:pulp_id => pulp_id).first_or_create
|
@@ -119,41 +124,34 @@ module Katello
|
|
119
124
|
model.repository_id = repository.id unless many_repository_associations
|
120
125
|
service.update_model(model)
|
121
126
|
end
|
122
|
-
|
127
|
+
pulp_id_href_map[pulp_id] = backend_identifier
|
123
128
|
end
|
124
129
|
end
|
125
|
-
sync_repository_associations(repository, :
|
130
|
+
sync_repository_associations(repository, :pulp_id_href_map => pulp_id_href_map) if self.many_repository_associations
|
126
131
|
end
|
127
132
|
|
128
133
|
def sync_repository_associations(repository, options = {})
|
129
134
|
additive = options.fetch(:additive, false)
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
+
pulp_id_href_map = options.dig(:pulp_id_href_map) || {}
|
136
|
+
pulp_ids = options.dig(:pulp_ids) || pulp_id_href_map.try(:keys)
|
137
|
+
ids_for_repository = with_pulp_id(pulp_ids).pluck(:id, :pulp_id)
|
138
|
+
associated_ids = ids_for_repository.map(&:first)
|
139
|
+
id_href_map_for_repository = {}
|
140
|
+
ids_for_repository.each { |id_href| id_href_map_for_repository[id_href[0]] = id_href[1] }
|
141
|
+
id_href_map_for_repository.each_pair { |k, v| id_href_map_for_repository[k] = pulp_id_href_map[v] }
|
135
142
|
|
136
143
|
existing_ids = self.repository_association_class.uncached do
|
137
|
-
self.repository_association_class.where(:repository_id => repository).pluck(
|
138
|
-
end
|
139
|
-
new_ids = associated_ids - existing_ids
|
140
|
-
delete_ids = existing_ids - associated_ids
|
141
|
-
|
142
|
-
queries = []
|
143
|
-
|
144
|
-
if delete_ids.any? && !additive
|
145
|
-
queries << "DELETE FROM #{table_name} WHERE repository_id=#{repository.id} AND #{attribute_name} IN (#{delete_ids.join(', ')})"
|
146
|
-
end
|
147
|
-
|
148
|
-
unless new_ids.empty?
|
149
|
-
inserts = new_ids.map { |unit_id| "(#{unit_id.to_i}, #{repository.id.to_i}, '#{Time.now.utc.to_s(:db)}', '#{Time.now.utc.to_s(:db)}')" }
|
150
|
-
queries << "INSERT INTO #{table_name} (#{attribute_name}, repository_id, created_at, updated_at) VALUES #{inserts.join(', ')}"
|
144
|
+
self.repository_association_class.where(:repository_id => repository).pluck(unit_id_field)
|
151
145
|
end
|
152
146
|
|
153
147
|
ActiveRecord::Base.transaction do
|
154
|
-
|
148
|
+
if !additive && (delete_ids = existing_ids - associated_ids).any?
|
149
|
+
query = "DELETE FROM #{self.repository_association_class.table_name} WHERE repository_id=#{repository.id} AND #{unit_id_field} IN (#{delete_ids.join(', ')})"
|
155
150
|
ActiveRecord::Base.connection.execute(query)
|
156
151
|
end
|
152
|
+
unless (new_ids = associated_ids - existing_ids).empty?
|
153
|
+
self.repository_association_class.import(db_columns_sync, db_values(new_ids, id_href_map_for_repository, repository), validate: false)
|
154
|
+
end
|
157
155
|
end
|
158
156
|
end
|
159
157
|
|
@@ -161,29 +159,58 @@ module Katello
|
|
161
159
|
if many_repository_associations
|
162
160
|
delete_query = "delete from #{repository_association_class.table_name} where repository_id = #{dest_repo.id} and
|
163
161
|
#{unit_id_field} not in (select #{unit_id_field} from #{repository_association_class.table_name} where repository_id = #{source_repo.id})"
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
from #{repository_association_class.table_name} where repository_id = #{dest_repo.id})"
|
162
|
+
ActiveRecord::Base.transaction do
|
163
|
+
ActiveRecord::Base.connection.execute(delete_query)
|
164
|
+
self.repository_association_class.import(db_columns_copy, db_values_copy(source_repo, dest_repo), validate: false)
|
165
|
+
end
|
169
166
|
else
|
170
167
|
columns = column_names - ["id", "pulp_id", "created_at", "updated_at", "repository_id"]
|
171
|
-
|
172
|
-
|
168
|
+
queries = []
|
169
|
+
queries << "delete from #{self.table_name} where repository_id = #{dest_repo.id} and
|
173
170
|
pulp_id not in (select pulp_id from #{self.table_name} where repository_id = #{source_repo.id})"
|
174
|
-
|
171
|
+
queries << "insert into #{self.table_name} (repository_id, pulp_id, #{columns.join(',')})
|
175
172
|
select #{dest_repo.id} as repository_id, pulp_id, #{columns.join(',')} from #{self.table_name}
|
176
173
|
where repository_id = #{source_repo.id} and pulp_id not in (select pulp_id
|
177
174
|
from #{self.table_name} where repository_id = #{dest_repo.id})"
|
178
|
-
|
175
|
+
ActiveRecord::Base.transaction do
|
176
|
+
queries.each do |query|
|
177
|
+
ActiveRecord::Base.connection.execute(query)
|
178
|
+
end
|
179
|
+
end
|
179
180
|
end
|
180
|
-
ActiveRecord::Base.connection.execute(delete_query)
|
181
|
-
ActiveRecord::Base.connection.execute(insert_query)
|
182
181
|
end
|
183
182
|
|
184
183
|
def with_pulp_id(unit_pulp_ids)
|
185
184
|
where('pulp_id in (?)', unit_pulp_ids)
|
186
185
|
end
|
186
|
+
|
187
|
+
def db_columns_sync
|
188
|
+
[unit_id_field, backend_identifier_field, :repository_id, :created_at, :updated_at].compact
|
189
|
+
end
|
190
|
+
|
191
|
+
def db_columns_copy
|
192
|
+
[unit_id_field, backend_identifier_field, :repository_id].compact
|
193
|
+
end
|
194
|
+
|
195
|
+
def db_values_copy(source_repo, dest_repo)
|
196
|
+
db_values = []
|
197
|
+
existing_unit_ids = self.repository_association_class.where(repository: dest_repo).pluck(unit_id_field)
|
198
|
+
if existing_unit_ids.empty?
|
199
|
+
new_units = self.repository_association_class.where(repository: source_repo)
|
200
|
+
else
|
201
|
+
new_units = self.repository_association_class.where(repository: source_repo).where.not("#{unit_id_field} in (?) ", existing_unit_ids)
|
202
|
+
end
|
203
|
+
unit_backend_identifier_field = backend_identifier_field
|
204
|
+
unit_identifier_filed = unit_id_field
|
205
|
+
new_units.each do |unit|
|
206
|
+
db_values << [unit[unit_identifier_filed], unit[unit_backend_identifier_field], dest_repo.id].compact
|
207
|
+
end
|
208
|
+
db_values
|
209
|
+
end
|
210
|
+
|
211
|
+
def db_values(new_ids, pulp_id_href_map, repository)
|
212
|
+
new_ids.map { |unit_id| [unit_id.to_i, pulp_id_href_map.dig(unit_id), repository.id.to_i, Time.now.utc.to_s(:db), Time.now.utc.to_s(:db)].compact }
|
213
|
+
end
|
187
214
|
end
|
188
215
|
end
|
189
216
|
end
|