#, fuzzy msgid "" msgstr "" "Project-Id-Version: horizon\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-09-14 10:49+0000\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../../source/configuration/branding.rst:3 msgid "Branding Horizon" msgstr "" #: ../../source/configuration/branding.rst:5 msgid "" "As of the Liberty release, Horizon has begun to conform more strictly to " "Bootstrap standards in an effort to embrace more responsive web design as " "well as alleviate the future need to re-brand new functionality for every " "release." msgstr "" #: ../../source/configuration/branding.rst:10 msgid "Supported Components" msgstr "" #: ../../source/configuration/branding.rst:11 msgid "" "The following components, organized by release, are the only ones that make " "full use of the Bootstrap theme architecture." msgstr "" #: ../../source/configuration/branding.rst:14 msgid "8.0.0 (Liberty)" msgstr "" #: ../../source/configuration/branding.rst:16 msgid "`Top Navbar`_" msgstr "" #: ../../source/configuration/branding.rst:17 msgid "`Side Nav`_" msgstr "" #: ../../source/configuration/branding.rst:18 msgid "`Pie Charts`_" msgstr "" #: ../../source/configuration/branding.rst:20 msgid "9.0.0 (Mitaka)" msgstr "" #: ../../source/configuration/branding.rst:22 msgid "Tables_" msgstr "" #: ../../source/configuration/branding.rst:23 msgid "`Bar Charts`_" msgstr "" #: ../../source/configuration/branding.rst:24 msgid "Login_" msgstr "" #: ../../source/configuration/branding.rst:25 msgid "Tabs_" msgstr "" #: ../../source/configuration/branding.rst:26 msgid "Alerts_" msgstr "" #: ../../source/configuration/branding.rst:27 msgid "Checkboxes_" msgstr "" #: ../../source/configuration/branding.rst:30 msgid "Step 1" msgstr "" #: ../../source/configuration/branding.rst:32 msgid "" "The first step needed to create a custom branded theme for Horizon is to " "create a custom Bootstrap theme. There are several tools to aid in this. " "Some of the more useful ones include:" msgstr "" #: ../../source/configuration/branding.rst:36 msgid "`Bootswatchr`_" msgstr "" #: ../../source/configuration/branding.rst:37 msgid "`Paintstrap`_" msgstr "" #: ../../source/configuration/branding.rst:38 msgid "`Bootstrap`_" msgstr "" #: ../../source/configuration/branding.rst:42 msgid "" "Bootstrap uses LESS by default, but we use SCSS. All of the above tools " "will provide the ``variables.less`` file, which will need to be converted to " "``_variables.scss``" msgstr "" #: ../../source/configuration/branding.rst:47 msgid "Top Navbar" msgstr "" #: ../../source/configuration/branding.rst:49 msgid "" "The top navbar in Horizon now uses a native Bootstrap ``navbar``. There are " "a number of variables that can be used to customize this element. Please " "see the **Navbar** section of your variables file for specifics on what can " "be set: any variables that use ``navbar-default``." msgstr "" #: ../../source/configuration/branding.rst:54 msgid "" "It is important to also note that the navbar now uses native Bootstrap " "dropdowns, which are customizable with variables. Please see the " "**Dropdowns** section of your variables file." msgstr "" #: ../../source/configuration/branding.rst:58 msgid "" "The top navbar is now responsive on smaller screens. When the window size " "hits your ``$screen-sm`` value, the topbar will compress into a design that " "is better suited for small screens." msgstr "" #: ../../source/configuration/branding.rst:63 msgid "Side Nav" msgstr "" #: ../../source/configuration/branding.rst:65 msgid "" "The side navigation component has been refactored to use the native Stacked " "Pills element from Bootstrap. See **Pills** section of your variables file " "for specific variables to customize." msgstr "" #: ../../source/configuration/branding.rst:70 msgid "Charts" msgstr "" #: ../../source/configuration/branding.rst:73 msgid "Pie Charts" msgstr "" #: ../../source/configuration/branding.rst:75 msgid "" "Pie Charts are SVG elements. SVG elements allow CSS customizations for only " "a basic element's look and feel (i.e. colors, size)." msgstr "" #: ../../source/configuration/branding.rst:78 msgid "" "Since there is no native element in Bootstrap specifically for pie charts, " "the look and feel of the charts are inheriting from other elements of the " "theme. Please see ``_pie_charts.scss`` for specifics." msgstr "" #: ../../source/configuration/branding.rst:85 msgid "Bar Charts" msgstr "" #: ../../source/configuration/branding.rst:87 msgid "" "Bar Charts can be either a Bootstrap Progress Bar or an SVG element. Either " "implementation will use the Bootstrap Progress Bar styles." msgstr "" #: ../../source/configuration/branding.rst:90 msgid "" "The SVG implementation will not make use of the customized Progress Bar " "height though, so it is recommended that Bootstrap Progress Bars are used " "whenever possible." msgstr "" #: ../../source/configuration/branding.rst:94 msgid "" "Please see ``_bar_charts.scss`` for specifics on what can be customized for " "SVGs. See the **Progress bars** section of your variables file for specific " "variables to customize." msgstr "" #: ../../source/configuration/branding.rst:99 msgid "Tables" msgstr "" #: ../../source/configuration/branding.rst:101 msgid "" "The standard Django tables now make use of the native Bootstrap table markup." " See **Tables** section of your variables file for variables to customize." msgstr "" #: ../../source/configuration/branding.rst:104 msgid "" "The standard Bootstrap tables will be borderless by default. If you wish to " "add a border, like the ``default`` theme, see ``openstack_dashboard/themes/" "default/horizon/components/_tables.scss``" msgstr "" #: ../../source/configuration/branding.rst:111 msgid "Login" msgstr "" #: ../../source/configuration/branding.rst:114 msgid "Login Splash Page" msgstr "" #: ../../source/configuration/branding.rst:116 msgid "" "The login splash page now uses a standard Bootstrap panel in its " "implementation. See the **Panels** section in your variables file to " "variables to easily customize." msgstr "" #: ../../source/configuration/branding.rst:121 msgid "Modal Login" msgstr "" #: ../../source/configuration/branding.rst:123 msgid "" "The modal login experience, as used when switching regions, uses a standard " "Bootstrap dialog. See the **Modals** section of your variables file for " "specific variables to customize." msgstr "" #: ../../source/configuration/branding.rst:128 msgid "Tabs" msgstr "" #: ../../source/configuration/branding.rst:130 msgid "The standard tabs make use of the native Bootstrap tab markup." msgstr "" #: ../../source/configuration/branding.rst:132 msgid "" "See **Tabs** section of your variables file for variables to customize." msgstr "" #: ../../source/configuration/branding.rst:135 msgid "Alerts" msgstr "" #: ../../source/configuration/branding.rst:137 msgid "" "Alerts use the basic Bootstrap brand colors. See **Colors** section of your " "variables file for specifics." msgstr "" #: ../../source/configuration/branding.rst:141 msgid "Checkboxes" msgstr "" #: ../../source/configuration/branding.rst:143 msgid "" "Horizon uses icon fonts to represent checkboxes. In order to customize " "this, you simply need to override the standard scss. For an example of " "this, see themes/material/static/horizon/components/_checkboxes.scss" msgstr "" #: ../../source/configuration/branding.rst:148 msgid "Bootswatch and Material Design" msgstr "" #: ../../source/configuration/branding.rst:150 msgid "" "`Bootswatch`_ is a collection of free themes for Bootstrap and is now " "available for use in Horizon." msgstr "" #: ../../source/configuration/branding.rst:153 msgid "" "In order to showcase what can be done to enhance an existing Bootstrap " "theme, Horizon now includes a secondary theme, roughly based on `Google's " "Material Design`_ called ``material``. Bootswatch's **Paper** is a simple " "Bootstrap implementation of Material Design and is used by ``material``." msgstr "" #: ../../source/configuration/branding.rst:158 msgid "" "Bootswatch provides a number of other themes, that once Horizon is fully " "theme compliant, will allow easy toggling and customizations for darker or " "accessibility driven experiences." msgstr "" #: ../../source/configuration/branding.rst:163 msgid "Development Tips" msgstr "" #: ../../source/configuration/branding.rst:165 msgid "" "When developing a new theme for Horizon, it is required that the dynamically " "generated `static` directory be cleared after each change and the server " "restarted. This is not always ideal. If you wish to develop and not have " "to restart the server each time, it is recommended that you configure your " "development environment to not run in OFFLINE mode. Simply verify the " "following settings in your local_settings.py::" msgstr "" #: ../../source/configuration/customizing.rst:5 msgid "Customizing Horizon" msgstr "" #: ../../source/configuration/customizing.rst:9 msgid "You may also be interested in :doc:`themes` and :doc:`branding`." msgstr "" #: ../../source/configuration/customizing.rst:12 msgid "Changing the Site Title" msgstr "" #: ../../source/configuration/customizing.rst:14 msgid "" "The OpenStack Dashboard Site Title branding (i.e. \"**OpenStack** " "Dashboard\") can be overwritten by adding the attribute ``SITE_BRANDING`` to " "``local_settings.py`` with the value being the desired name." msgstr "" #: ../../source/configuration/customizing.rst:18 msgid "" "The file ``local_settings.py`` can be found at the Horizon directory path of " "``openstack_dashboard/local/local_settings.py``." msgstr "" #: ../../source/configuration/customizing.rst:22 msgid "Changing the Brand Link" msgstr "" #: ../../source/configuration/customizing.rst:24 msgid "" "The logo also acts as a hyperlink. The default behavior is to redirect to " "``horizon:user_home``. By adding the attribute ``SITE_BRANDING_LINK`` with " "the desired url target e.g., ``http://sample-company.com`` in " "``local_settings.py``, the target of the hyperlink can be changed." msgstr "" #: ../../source/configuration/customizing.rst:30 msgid "Customizing the Footer" msgstr "" #: ../../source/configuration/customizing.rst:32 msgid "" "It is possible to customize the global and login footers by using Django's " "recursive inheritance to extend the ``base.html``, ``auth/login.html``, and " "``auth/_login_form.html`` templates. You do this by naming your template the " "same name as the template you wish to extend and only overriding the blocks " "you wish to change." msgstr "" #: ../../source/configuration/customizing.rst:38 #: ../../source/configuration/customizing.rst:425 #: ../../source/configuration/customizing.rst:454 #: ../../source/configuration/customizing.rst:473 msgid "Your theme's ``base.html``::" msgstr "" #: ../../source/configuration/customizing.rst:46 msgid "Your theme's ``auth/login.html``::" msgstr "" #: ../../source/configuration/customizing.rst:54 msgid "Your theme's ``auth/_login_form.html``::" msgstr "" #: ../../source/configuration/customizing.rst:66 #: ../../source/configuration/customizing.rst:433 #: ../../source/configuration/customizing.rst:462 #: ../../source/configuration/customizing.rst:481 msgid "See the ``example`` theme for a working theme that uses these blocks." msgstr "" #: ../../source/configuration/customizing.rst:70 msgid "Modifying Existing Dashboards and Panels" msgstr "" #: ../../source/configuration/customizing.rst:72 msgid "" "If you wish to alter dashboards or panels which are not part of your " "codebase, you can specify a custom python module which will be loaded after " "the entire Horizon site has been initialized, but prior to the URLconf " "construction. This allows for common site-customization requirements such as:" "" msgstr "" #: ../../source/configuration/customizing.rst:77 msgid "Registering or unregistering panels from an existing dashboard." msgstr "" #: ../../source/configuration/customizing.rst:78 msgid "Changing the names of dashboards and panels." msgstr "" #: ../../source/configuration/customizing.rst:79 msgid "Re-ordering panels within a dashboard or panel group." msgstr "" #: ../../source/configuration/customizing.rst:81 msgid "" "Default Horizon panels are loaded based upon files within the " "openstack_dashboard/enabled/ folder. These files are loaded based upon the " "filename order, with space left for more files to be added. There are some " "example files available within this folder, with the .example suffix added. " "Developers and deployers should strive to use this method of customization " "as much as possible, and support for this is given preference over more " "exotic methods such as monkey patching and overrides files." msgstr "" #: ../../source/configuration/customizing.rst:92 msgid "Horizon customization module (overrides)" msgstr "" #: ../../source/configuration/customizing.rst:94 msgid "" "Horizon has a global overrides mechanism available to perform customizations " "that are not yet customizable via configuration settings. This file can " "perform monkey patching and other forms of customization which are not " "possible via the enabled folder's customization method." msgstr "" #: ../../source/configuration/customizing.rst:99 msgid "" "This method of customization is meant to be available for deployers of " "Horizon, and use of this should be avoided by Horizon plugins at all cost. " "Plugins needing this level of monkey patching and flexibility should instead " "look for changing their __init__.py file and performing customizations " "through other means." msgstr "" #: ../../source/configuration/customizing.rst:105 msgid "" "To specify the python module containing your modifications, add the key " "``customization_module`` to your ``HORIZON_CONFIG`` dictionary in " "``local_settings.py``. The value should be a string containing the path to " "your module in dotted python path notation. Example::" msgstr "" #: ../../source/configuration/customizing.rst:112 msgid "" "You can do essentially anything you like in the customization module. For " "example, you could change the name of a panel::" msgstr "" #: ../../source/configuration/customizing.rst:124 msgid "Or get the instances panel::" msgstr "" #: ../../source/configuration/customizing.rst:129 msgid "Or just remove it entirely::" msgstr "" #: ../../source/configuration/customizing.rst:133 msgid "" "You cannot unregister a ``default_panel``. If you wish to remove a " "``default_panel``, you need to make a different panel in the dashboard as a " "``default_panel`` and then unregister the former. For example, if you wished " "to remove the ``overview_panel`` from the ``Project`` dashboard, you could " "do the following::" msgstr "" #: ../../source/configuration/customizing.rst:144 msgid "You can also override existing methods with your own versions::" msgstr "" #: ../../source/configuration/customizing.rst:155 msgid "" "You could also customize what columns are displayed in an existing table, by " "redefining the ``columns`` attribute of its ``Meta`` class. This can be " "achieved in 3 steps:" msgstr "" #: ../../source/configuration/customizing.rst:159 msgid "Extend the table that you wish to modify" msgstr "" #: ../../source/configuration/customizing.rst:160 msgid "" "Redefine the ``columns`` attribute under the ``Meta`` class for this new " "table" msgstr "" #: ../../source/configuration/customizing.rst:162 msgid "" "Modify the ``table_class`` attribute for the related view so that it points " "to the new table" msgstr "" #: ../../source/configuration/customizing.rst:166 msgid "" "For example, if you wished to remove the Admin State column from the :class:" "`~openstack_dashboard.dashboards.admin.networks.tables.NetworksTable`, you " "could do the following::" msgstr "" #: ../../source/configuration/customizing.rst:180 msgid "" "If you want to add a column you can override the parent table in a similar " "way, add the new column definition and then use the ``Meta`` ``columns`` " "attribute to control the column order as needed." msgstr "" #: ../../source/configuration/customizing.rst:186 msgid "" "``my_project.overrides`` needs to be importable by the python process " "running Horizon. If your module is not installed as a system-wide python " "package, you can either make it installable (e.g., with a setup.py) or you " "can adjust the python path used by your WSGI server to include its location." msgstr "" #: ../../source/configuration/customizing.rst:192 msgid "" "Probably the easiest way is to add a ``python-path`` argument to the " "``WSGIDaemonProcess`` line in Apache's Horizon config." msgstr "" #: ../../source/configuration/customizing.rst:195 msgid "" "Assuming your ``my_project`` module lives in ``/opt/python/my_project``, " "you'd make it look like the following::" msgstr "" #: ../../source/configuration/customizing.rst:202 msgid "Customize the project and user table columns" msgstr "" #: ../../source/configuration/customizing.rst:205 msgid "" "Keystone V3 has a place to store extra information regarding project and " "user. Using the override mechanism described in :ref:`horizon-customization-" "module`, Horizon is able to show these extra information as a custom column. " "For example, if a user in Keystone has an attribute ``phone_num``, you could " "define new column::" msgstr "" #: ../../source/configuration/customizing.rst:231 msgid "Customize Angular dashboards" msgstr "" #: ../../source/configuration/customizing.rst:233 msgid "" "In Angular, you may write a plugin to extend certain features. Two " "components in the Horizon framework that make this possible are the " "extensibility service and the resource type registry service. The " "``extensibleService`` allows certain Horizon elements to be extended " "dynamically, including add, remove, and replace. The " "``resourceTypeRegistry`` service provides methods to set and get information " "pertaining to a resource type object. We use Heat type names like ``OS::" "Glance::Image`` as our reference name." msgstr "" #: ../../source/configuration/customizing.rst:241 msgid "Some information you may place in the registry include:" msgstr "" #: ../../source/configuration/customizing.rst:243 msgid "API to fetch data from" msgstr "" #: ../../source/configuration/customizing.rst:244 msgid "Property names" msgstr "" #: ../../source/configuration/customizing.rst:245 msgid "Actions (e.g. \"Create Volume\")" msgstr "" #: ../../source/configuration/customizing.rst:246 msgid "URL paths to detail view or detail drawer" msgstr "" #: ../../source/configuration/customizing.rst:247 msgid "Property information like labels or formatting for property values" msgstr "" #: ../../source/configuration/customizing.rst:249 msgid "" "These properties in the registry use the extensibility service (as of Newton " "release):" msgstr "" #: ../../source/configuration/customizing.rst:252 msgid "globalActions" msgstr "" #: ../../source/configuration/customizing.rst:253 msgid "batchActions" msgstr "" #: ../../source/configuration/customizing.rst:254 msgid "itemActions" msgstr "" #: ../../source/configuration/customizing.rst:255 msgid "detailViews" msgstr "" #: ../../source/configuration/customizing.rst:256 msgid "tableColumns" msgstr "" #: ../../source/configuration/customizing.rst:257 msgid "filterFacets" msgstr "" #: ../../source/configuration/customizing.rst:259 msgid "" "Using the information from the registry, we can build out our dashboard " "panels. Panels use the high-level directive ``hzResourceTable`` that " "replaces common templates so we do not need to write boilerplate HTML and " "controller code. It gives developers a quick way to build a new table or " "change an existing table." msgstr "" #: ../../source/configuration/customizing.rst:266 msgid "" "You may still choose to use the HTML template for complete control of form " "and functionality. For example, you may want to create a custom footer. You " "may also use the ``hzDynamicTable`` directive (what ``hzResourceTable`` uses " "under the hood) directly. However, neither of these is extensible. You would " "need to override the panel completely." msgstr "" #: ../../source/configuration/customizing.rst:272 msgid "" "This is a sample module file to demonstrate how to make some customizations " "to the Images Panel.::" msgstr "" #: ../../source/configuration/customizing.rst:324 msgid "" "Additionally, you should have content defined in ``detail.html`` and " "``drawer.html``, as well as define the ``surpriseService`` which is based " "off the ``actions`` directive and needs allowed and perform methods defined." msgstr "" #: ../../source/configuration/customizing.rst:330 msgid "Icons" msgstr "" #: ../../source/configuration/customizing.rst:332 msgid "" "Horizon uses font icons from Font Awesome. Please see `Font Awesome`_ for " "instructions on how to use icons in the code." msgstr "" #: ../../source/configuration/customizing.rst:335 msgid "To add icon to Table Action, use icon property. Example:" msgstr "" #: ../../source/configuration/customizing.rst:344 msgid "" "Additionally, the site-wide default button classes can be configured by " "setting ``ACTION_CSS_CLASSES`` to a tuple of the classes you wish to appear " "on all action buttons in your ``local_settings.py`` file." msgstr "" #: ../../source/configuration/customizing.rst:350 msgid "Custom Stylesheets" msgstr "" #: ../../source/configuration/customizing.rst:352 msgid "" "It is possible to define custom stylesheets for your dashboards. Horizon's " "base template ``openstack_dashboard/templates/base.html`` defines multiple " "blocks that can be overridden." msgstr "" #: ../../source/configuration/customizing.rst:356 msgid "" "To define custom css files that apply only to a specific dashboard, create a " "base template in your dashboard's templates folder, which extends Horizon's " "base template e.g. ``openstack_dashboard/dashboards/my_custom_dashboard/ " "templates/my_custom_dashboard/base.html``." msgstr "" #: ../../source/configuration/customizing.rst:361 msgid "" "In this template, redefine ``block css``. (Don't forget to include " "``_stylesheets.html`` which includes all Horizon's default stylesheets.)::" msgstr "" #: ../../source/configuration/customizing.rst:375 msgid "" "The custom stylesheets then reside in the dashboard's own ``static`` folder " "``openstack_dashboard/dashboards/my_custom_dashboard/static/" "my_custom_dashboard/scss/my_custom_dashboard.scss``." msgstr "" #: ../../source/configuration/customizing.rst:378 msgid "All dashboard's templates have to inherit from dashboard's base.html::" msgstr "" #: ../../source/configuration/customizing.rst:385 msgid "Custom Javascript" msgstr "" #: ../../source/configuration/customizing.rst:387 msgid "" "Similarly to adding custom styling (see above), it is possible to include " "custom javascript files." msgstr "" #: ../../source/configuration/customizing.rst:390 msgid "" "All Horizon's javascript files are listed in the ``openstack_dashboard/" "templates/horizon/_scripts.html`` partial template, which is included in " "Horizon's base template in ``block js``." msgstr "" #: ../../source/configuration/customizing.rst:394 msgid "" "To add custom javascript files, create an ``_scripts.html`` partial template " "in your dashboard ``openstack_dashboard/dashboards/my_custom_dashboard/" "templates/my_custom_dashboard/_scripts.html`` which extends ``horizon/" "_scripts.html``. In this template override the ``block custom_js_files`` " "including your custom javascript files::" msgstr "" #: ../../source/configuration/customizing.rst:407 msgid "" "In your dashboard's own base template ``openstack_dashboard/dashboards/ " "my_custom_dashboard/templates/my_custom_dashboard/base.html`` override " "``block js`` with inclusion of dashboard's own ``_scripts.html``::" msgstr "" #: ../../source/configuration/customizing.rst:415 msgid "" "The result is a single compressed js file consisting both Horizon and " "dashboard's custom scripts." msgstr "" #: ../../source/configuration/customizing.rst:419 msgid "Custom Head js" msgstr "" #: ../../source/configuration/customizing.rst:421 msgid "" "Additionally, some scripts require you to place them within the page's " " tag. To do this, recursively extend the ``base.html`` template in " "your theme to override the ``custom_head_js`` block." msgstr "" #: ../../source/configuration/customizing.rst:437 msgid "" "Don't use the ``custom_head_js`` block for analytics tracking. See below." msgstr "" #: ../../source/configuration/customizing.rst:440 msgid "Custom Analytics" msgstr "" #: ../../source/configuration/customizing.rst:442 msgid "" "For analytics or tracking scripts you should avoid the ``custom_head_js`` " "block. We have a specific block instead called ``custom_analytics``. Much " "like the ``custom_head_js`` block this inserts additional content into the " "head of the ``base.html`` template and it will be on all pages." msgstr "" #: ../../source/configuration/customizing.rst:447 msgid "" "The reason for an analytics specific block is that for security purposes we " "want to be able to turn off tracking on certain pages that we deem sensitive." " This is done for the safety of the users and the cloud admins. By using " "this block instead, pages using ``base.html`` can override it themselves " "when they want to avoid tracking. They can't simply override the custom js " "because it may be non-tracking code." msgstr "" #: ../../source/configuration/customizing.rst:465 msgid "Customizing Meta Attributes" msgstr "" #: ../../source/configuration/customizing.rst:467 msgid "" "To add custom metadata attributes to your project's base template use the " "``custom_metadata`` block. To do this, recursively extend the ``base.html`` " "template in your theme to override the ``custom_metadata`` block. The " "contents of this block will be inserted into the page's just after " "the default Horizon meta tags." msgstr "" #: ../../source/configuration/index.rst:3 msgid "Configuration Guide" msgstr "" #: ../../source/configuration/pluggable_panels.rst:5 msgid "Pluggable Panels and Groups" msgstr "" #: ../../source/configuration/pluggable_panels.rst:8 #: ../../source/configuration/settings.rst:8 msgid "Introduction" msgstr "" #: ../../source/configuration/pluggable_panels.rst:10 msgid "" "Horizon allows dashboards, panels and panel groups to be added without " "modifying the default settings. Pluggable settings are a mechanism to allow " "settings to be stored in separate files. Those files are read at startup " "and used to modify the default settings." msgstr "" #: ../../source/configuration/pluggable_panels.rst:15 msgid "" "The default location for the dashboard configuration files is " "``openstack_dashboard/enabled``, with another directory, " "``openstack_dashboard/local/enabled`` for local overrides. Both sets of " "files will be loaded, but the settings in ``openstack_dashboard/local/" "enabled`` will overwrite the default ones. The settings are applied in " "alphabetical order of the filenames. If the same dashboard has configuration " "files in ``enabled`` and ``local/enabled``, the local name will be used. " "Note, that since names of python modules can't start with a digit, the files " "are usually named with a leading underscore and a number, so that you can " "control their order easily." msgstr "" #: ../../source/configuration/pluggable_panels.rst:26 msgid "General Pluggbale Settings" msgstr "" #: ../../source/configuration/pluggable_panels.rst:28 msgid "" "Before we describe the specific use cases, the following keys can be used in " "any pluggable settings file:" msgstr "" #: ../../source/configuration/pluggable_panels.rst:32 msgid "``ADD_EXCEPTIONS``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:36 msgid "" "A dictionary of exception classes to be added to ``HORIZON['exceptions']``." msgstr "" #: ../../source/configuration/pluggable_panels.rst:39 msgid "``ADD_INSTALLED_APPS``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:43 msgid "" "A list of applications to be prepended to ``INSTALLED_APPS``. This is needed " "to expose static files from a plugin." msgstr "" #: ../../source/configuration/pluggable_panels.rst:47 msgid "``ADD_ANGULAR_MODULES``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:51 #: ../../source/configuration/settings.rst:291 msgid "" "A list of AngularJS modules to be loaded when Angular bootstraps. These " "modules are added as dependencies on the root Horizon application " "``horizon``." msgstr "" #: ../../source/configuration/pluggable_panels.rst:55 msgid "``ADD_JS_FILES``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:59 msgid "" "A list of javascript source files to be included in the compressed set of " "files that are loaded on every page. This is needed for AngularJS modules " "that are referenced in ``ADD_ANGULAR_MODULES`` and therefore need to be " "included in every page." msgstr "" #: ../../source/configuration/pluggable_panels.rst:65 msgid "``ADD_JS_SPEC_FILES``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:69 #: ../../source/configuration/settings.rst:383 msgid "" "A list of javascript spec files to include for integration with the Jasmine " "spec runner. Jasmine is a behavior-driven development framework for testing " "JavaScript code." msgstr "" #: ../../source/configuration/pluggable_panels.rst:74 msgid "``ADD_SCSS_FILES``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:78 msgid "" "A list of scss files to be included in the compressed set of files that are " "loaded on every page. We recommend one scss file per dashboard, use @import " "if you need to include additional scss files for panels." msgstr "" #: ../../source/configuration/pluggable_panels.rst:84 msgid "``ADD_XSTATIC_MODULES``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:88 msgid "" "A list of xstatic modules containing javascript and scss files to be " "included in the compressed set of files that are loaded on every page. " "Related files specified in ``ADD_XSTATIC_MODULES`` do not need to be " "included in ``ADD_JS_FILES``. This option expects a list of tuples, each " "consists of a xstatic module and a list of javascript files to be loaded if " "any. For more details, please check the comment of ``BASE_XSTATIC_MODULES`` " "in openstack_dashboard/utils/settings.py." msgstr "" #: ../../source/configuration/pluggable_panels.rst:96 #: ../../source/configuration/pluggable_panels.rst:149 #: ../../source/configuration/pluggable_panels.rst:186 #: ../../source/configuration/settings.rst:1147 #: ../../source/configuration/settings.rst:1260 #: ../../source/configuration/settings.rst:1271 #: ../../source/configuration/settings.rst:1596 #: ../../source/configuration/settings.rst:1706 #: ../../source/configuration/settings.rst:1892 #: ../../source/configuration/settings.rst:1934 msgid "Example:" msgstr "" #: ../../source/configuration/pluggable_panels.rst:108 msgid "``AUTO_DISCOVER_STATIC_FILES``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:112 msgid "" "If set to ``True``, JavaScript files and static angular html template files " "will be automatically discovered from the `static` folder in each apps " "listed in ADD_INSTALLED_APPS." msgstr "" #: ../../source/configuration/pluggable_panels.rst:116 msgid "" "JavaScript source files will be ordered based on naming convention: files " "with extension `.module.js` listed first, followed by other JavaScript " "source files." msgstr "" #: ../../source/configuration/pluggable_panels.rst:119 msgid "" "JavaScript files for testing will also be ordered based on naming convention:" " files with extension `.mock.js` listed first, followed by files with " "extension `.spec.js`." msgstr "" #: ../../source/configuration/pluggable_panels.rst:123 msgid "" "If ADD_JS_FILES and/or ADD_JS_SPEC_FILES are also specified, files manually " "listed there will be appended to the auto-discovered files." msgstr "" #: ../../source/configuration/pluggable_panels.rst:127 msgid "``DISABLED``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:131 msgid "" "If set to ``True``, this settings file will not be added to the settings." msgstr "" #: ../../source/configuration/pluggable_panels.rst:134 msgid "``EXTRA_STEPS``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:138 msgid "" "Extra workflow steps can be added to a workflow in horizon or other horizon " "plugins by using this setting. Extra steps will be shown after default steps " "defined in a corresponding workflow." msgstr "" #: ../../source/configuration/pluggable_panels.rst:142 msgid "" "This is a dict setting. A key of the dict specifies a workflow which extra " "step(s) are added. The key must match a full class name of the target " "workflow." msgstr "" #: ../../source/configuration/pluggable_panels.rst:145 msgid "" "A value of the dict is a list of full name of an extra step classes (where a " "module name and a class name must be delimiteed by a period). Steps " "specified via ``EXTRA_STEPS`` will be displayed in the order of being " "registered." msgstr "" #: ../../source/configuration/pluggable_panels.rst:164 msgid "``EXTRA_TABS``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:168 msgid "" "Extra tabs can be added to a tab group implemented in horizon or other " "horizon plugins by using this setting. Extra tabs will be shown after " "default tabs defined in a corresponding tab group." msgstr "" #: ../../source/configuration/pluggable_panels.rst:172 msgid "" "This is a dict setting. A key of the dict specifies a tab group which extra " "tab(s) are added. The key must match a full class name of the target tab " "group." msgstr "" #: ../../source/configuration/pluggable_panels.rst:175 msgid "" "A value of the dict is a list of full name of an extra tab classes (where a " "module name and a class name must be delimiteed by a period). Tabs specified " "via ``EXTRA_TABS`` will be displayed in the order of being registered." msgstr "" #: ../../source/configuration/pluggable_panels.rst:179 msgid "" "There might be cases where you would like to specify the order of the extra " "tabs as multiple horizon plugins can register extra tabs. You can specify a " "priority of each tab in ``EXTRA_TABS`` by using a tuple of priority and a " "tab class as an element of a dict value instead of a full name of an extra " "tab. Priority is an integer of a tab and a tab with a lower value will be " "displayed first. If a priority of an extra tab is omitted, ``0`` is assumed " "as a priority." msgstr "" #: ../../source/configuration/pluggable_panels.rst:197 msgid "Example (with priority):" msgstr "" #: ../../source/configuration/pluggable_panels.rst:209 msgid "``UPDATE_HORIZON_CONFIG``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:213 msgid "" "A dictionary of values that will replace the values in ``HORIZON_CONFIG``." msgstr "" #: ../../source/configuration/pluggable_panels.rst:217 msgid "Pluggable Settings for Dashboards" msgstr "" #: ../../source/configuration/pluggable_panels.rst:221 msgid "The following keys are specific to registering a dashboard:" msgstr "" #: ../../source/configuration/pluggable_panels.rst:225 msgid "``DASHBOARD``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:229 msgid "" "The slug of the dashboard to be added to ``HORIZON['dashboards']``. Required." "" msgstr "" #: ../../source/configuration/pluggable_panels.rst:232 msgid "``DEFAULT``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:236 msgid "" "If set to ``True``, this dashboard will be set as the default dashboard." msgstr "" #: ../../source/configuration/pluggable_panels.rst:240 #: ../../source/configuration/pluggable_panels.rst:318 #: ../../source/configuration/pluggable_panels.rst:379 msgid "Examples" msgstr "" #: ../../source/configuration/pluggable_panels.rst:242 msgid "" "To disable a dashboard locally, create a file ``openstack_dashboard/local/" "enabled/_40_dashboard-name.py`` with the following content::" msgstr "" #: ../../source/configuration/pluggable_panels.rst:249 msgid "" "To add a Tuskar-UI (Infrastructure) dashboard, you have to install it, and " "then create a file ``openstack_dashboard/local/enabled/_50_tuskar.py`` with::" "" msgstr "" #: ../../source/configuration/pluggable_panels.rst:266 msgid "Pluggable Settings for Panels" msgstr "" #: ../../source/configuration/pluggable_panels.rst:270 msgid "The following keys are specific to registering or removing a panel:" msgstr "" #: ../../source/configuration/pluggable_panels.rst:273 msgid "``PANEL``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:277 msgid "The slug of the panel to be added to ``HORIZON_CONFIG``. Required." msgstr "" #: ../../source/configuration/pluggable_panels.rst:280 msgid "``PANEL_DASHBOARD``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:284 msgid "The slug of the dashboard the ``PANEL`` associated with. Required." msgstr "" #: ../../source/configuration/pluggable_panels.rst:288 #: ../../source/configuration/pluggable_panels.rst:356 msgid "``PANEL_GROUP``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:292 msgid "" "The slug of the panel group the ``PANEL`` is associated with. If you want " "the panel to show up without a panel group, use the panel group \"default\"." msgstr "" #: ../../source/configuration/pluggable_panels.rst:296 msgid "``DEFAULT_PANEL``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:300 msgid "If set, it will update the default panel of the ``PANEL_DASHBOARD``." msgstr "" #: ../../source/configuration/pluggable_panels.rst:303 msgid "``ADD_PANEL``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:307 msgid "Python panel class of the ``PANEL`` to be added." msgstr "" #: ../../source/configuration/pluggable_panels.rst:310 msgid "``REMOVE_PANEL``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:314 msgid "" "If set to ``True``, the PANEL will be removed from PANEL_DASHBOARD/" "PANEL_GROUP." msgstr "" #: ../../source/configuration/pluggable_panels.rst:320 msgid "" "To add a new panel to the Admin panel group in Admin dashboard, create a " "file ``openstack_dashboard/local/enabled/_60_admin_add_panel.py`` with the " "following content::" msgstr "" #: ../../source/configuration/pluggable_panels.rst:329 msgid "" "To remove Info panel from Admin panel group in Admin dashboard locally, " "create a file ``openstack_dashboard/local/enabled/_70_admin_remove_panel." "py`` with the following content::" msgstr "" #: ../../source/configuration/pluggable_panels.rst:338 msgid "" "To change the default panel of Admin dashboard to Instances panel, create a " "file ``openstack_dashboard/local/enabled/_80_admin_default_panel.py`` with " "the following content::" msgstr "" #: ../../source/configuration/pluggable_panels.rst:348 msgid "Pluggable Settings for Panel Groups" msgstr "" #: ../../source/configuration/pluggable_panels.rst:353 msgid "The following keys are specific to registering a panel group:" msgstr "" #: ../../source/configuration/pluggable_panels.rst:360 msgid "" "The slug of the panel group to be added to ``HORIZON_CONFIG``. Required." msgstr "" #: ../../source/configuration/pluggable_panels.rst:363 msgid "``PANEL_GROUP_NAME``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:367 msgid "The display name of the PANEL_GROUP. Required." msgstr "" #: ../../source/configuration/pluggable_panels.rst:370 msgid "``PANEL_GROUP_DASHBOARD``" msgstr "" #: ../../source/configuration/pluggable_panels.rst:374 msgid "" "The slug of the dashboard the ``PANEL_GROUP`` associated with. Required." msgstr "" #: ../../source/configuration/pluggable_panels.rst:381 msgid "" "To add a new panel group to the Admin dashboard, create a file " "``openstack_dashboard/local/enabled/_90_admin_add_panel_group.py`` with the " "following content::" msgstr "" #: ../../source/configuration/settings.rst:5 msgid "Settings Reference" msgstr "" #: ../../source/configuration/settings.rst:10 msgid "Horizon's settings broadly fall into four categories:" msgstr "" #: ../../source/configuration/settings.rst:12 msgid "" "`General Settings`_: this includes visual settings like the modal backdrop " "style, bug url and theme configuration, as well as settings that affect " "every service, such as page sizes on API requests." msgstr "" #: ../../source/configuration/settings.rst:15 msgid "" "`Service-specific Settings`_: Many services that Horizon consumes, such as " "Nova and Neutron, don't advertise their capabilities via APIs, so Horizon " "carries configuration for operators to enable or disable many items. This " "section covers all settings that are specific to a single service." msgstr "" #: ../../source/configuration/settings.rst:19 msgid "" "`Django Settings`_, which are common to all Django applications. The only " "ones documented here are those that Horizon alters by default; however, you " "should read the `Django settings documentation `_ to see the other options available to you." msgstr "" #: ../../source/configuration/settings.rst:24 msgid "" "`Other Settings`_: settings which do not fall into any of the above " "categories." msgstr "" #: ../../source/configuration/settings.rst:27 msgid "To modify your settings, you have two options:" msgstr "" #: ../../source/configuration/settings.rst:29 msgid "" "**Preferred:** Add ``.py`` settings snippets to the ``openstack_dashboard/" "local/local_settings.d/`` directory. Several example files (appended with ``." "example``) can be found there. These must start with an underscore, and are " "evaluated alphabetically, after ``local_settings.py``." msgstr "" #: ../../source/configuration/settings.rst:34 msgid "" "Modify your ``openstack_dashboard/local/local_settings.py``. There is an " "file found at ``openstack_dashboard/local/local_settings.py.example``." msgstr "" #: ../../source/configuration/settings.rst:38 msgid "General Settings" msgstr "" #: ../../source/configuration/settings.rst:43 msgid "ANGULAR_FEATURES" msgstr "" #: ../../source/configuration/settings.rst:47 #: ../../source/configuration/settings.rst:98 #: ../../source/configuration/settings.rst:192 #: ../../source/configuration/settings.rst:234 #: ../../source/configuration/settings.rst:299 #: ../../source/configuration/settings.rst:340 #: ../../source/configuration/settings.rst:416 #: ../../source/configuration/settings.rst:480 #: ../../source/configuration/settings.rst:699 #: ../../source/configuration/settings.rst:770 #: ../../source/configuration/settings.rst:795 #: ../../source/configuration/settings.rst:826 #: ../../source/configuration/settings.rst:953 #: ../../source/configuration/settings.rst:1042 #: ../../source/configuration/settings.rst:1087 #: ../../source/configuration/settings.rst:1160 #: ../../source/configuration/settings.rst:1204 #: ../../source/configuration/settings.rst:1344 #: ../../source/configuration/settings.rst:1389 #: ../../source/configuration/settings.rst:1553 #: ../../source/configuration/settings.rst:1692 #: ../../source/configuration/settings.rst:1726 #: ../../source/configuration/settings.rst:2000 #: ../../source/configuration/settings.rst:2076 #: ../../source/configuration/settings.rst:2230 msgid "Default:" msgstr "" #: ../../source/configuration/settings.rst:61 msgid "" "A dictionary of currently available AngularJS features. This allows simple " "toggling of legacy or rewritten features, such as new panels, workflows etc." msgstr "" #: ../../source/configuration/settings.rst:66 msgid "" "If you toggle ``domains_panel`` to ``True``, you also need to enable the " "setting of `OPENSTACK_KEYSTONE_DEFAULT_DOMAIN`_ and add " "`OPENSTACK_KEYSTONE_DEFAULT_DOMAIN`_ to `REST_API_REQUIRED_SETTINGS`_." msgstr "" #: ../../source/configuration/settings.rst:71 msgid "API_RESULT_LIMIT" msgstr "" #: ../../source/configuration/settings.rst:75 msgid "Default: ``1000``" msgstr "" #: ../../source/configuration/settings.rst:77 msgid "" "The maximum number of objects (e.g. Swift objects or Glance images) to " "display on a single page before providing a paging element (a \"more\" link) " "to paginate results." msgstr "" #: ../../source/configuration/settings.rst:82 msgid "API_RESULT_PAGE_SIZE" msgstr "" #: ../../source/configuration/settings.rst:86 msgid "Default: ``20``" msgstr "" #: ../../source/configuration/settings.rst:88 msgid "" "Similar to ``API_RESULT_LIMIT``. This setting controls the number of items " "to be shown per page if API pagination support for this exists." msgstr "" #: ../../source/configuration/settings.rst:94 msgid "AVAILABLE_THEMES" msgstr "" #: ../../source/configuration/settings.rst:107 msgid "This setting tells Horizon which themes to use." msgstr "" #: ../../source/configuration/settings.rst:109 msgid "" "A list of tuples which define multiple themes. The tuple format is ``('{{ " "theme_name }}', '{{ theme_label }}', '{{ theme_path }}')``." msgstr "" #: ../../source/configuration/settings.rst:112 msgid "" "The ``theme_name`` is the name used to define the directory which the theme " "is collected into, under ``/{{ THEME_COLLECTION_DIR }}``. It also specifies " "the key by which the selected theme is stored in the browser's cookie." msgstr "" #: ../../source/configuration/settings.rst:117 msgid "" "The ``theme_label`` is the user-facing label that is shown in the theme " "picker. The theme picker is only visible if more than one theme is " "configured, and shows under the topnav's user menu." msgstr "" #: ../../source/configuration/settings.rst:121 msgid "" "By default, the ``theme path`` is the directory that will serve as the " "static root of the theme and the entire contents of the directory is served " "up at ``/{{ THEME_COLLECTION_DIR }}/{{ theme_name }}``. If you wish to " "include content other than static files in a theme directory, but do not " "wish that content to be served up, then you can create a sub directory named " "``static``. If the theme folder contains a sub-directory with the name " "``static``, then ``static/custom/static`` will be used as the root for the " "content served at ``/static/custom``." msgstr "" #: ../../source/configuration/settings.rst:131 msgid "" "The static root of the theme folder must always contain a _variables.scss " "file and a _styles.scss file. These must contain or import all the " "bootstrap and horizon specific variables and styles which are used to style " "the GUI. For example themes, see: /horizon/openstack_dashboard/themes/" msgstr "" #: ../../source/configuration/settings.rst:136 msgid "" "Horizon ships with two themes configured. 'default' is the default theme, " "and 'material' is based on Google's Material Design." msgstr "" #: ../../source/configuration/settings.rst:140 msgid "DEFAULT_THEME" msgstr "" #: ../../source/configuration/settings.rst:144 msgid "Default: ``\"default\"``" msgstr "" #: ../../source/configuration/settings.rst:146 msgid "" "This setting tells Horizon which theme to use if the user has not yet " "selected a theme through the theme picker and therefore set the cookie value." " This value represents the ``theme_name`` key that is used from " "`AVAILABLE_THEMES`_. To use this setting, the theme must also be configured " "inside of ``AVAILABLE_THEMES``. Your default theme must be configured as " "part of `SELECTABLE_THEMES`_. If it is not, then your ``DEFAULT_THEME`` " "will default to the first theme in ``SELECTABLE_THEMES``." msgstr "" #: ../../source/configuration/settings.rst:156 msgid "DISALLOW_IFRAME_EMBED" msgstr "" #: ../../source/configuration/settings.rst:160 #: ../../source/configuration/settings.rst:865 #: ../../source/configuration/settings.rst:1191 #: ../../source/configuration/settings.rst:1285 #: ../../source/configuration/settings.rst:1798 #: ../../source/configuration/settings.rst:1848 #: ../../source/configuration/settings.rst:1858 #: ../../source/configuration/settings.rst:2109 #: ../../source/configuration/settings.rst:2170 #: ../../source/configuration/settings.rst:2202 #: ../../source/configuration/settings.rst:2264 #: ../../source/configuration/settings.rst:2378 msgid "Default: ``True``" msgstr "" #: ../../source/configuration/settings.rst:162 msgid "" "This setting can be used to defend against Clickjacking and prevent Horizon " "from being embedded within an iframe. Legacy browsers are still vulnerable " "to a Cross-Frame Scripting (XFS) vulnerability, so this option allows extra " "security hardening where iframes are not used in deployment. When set to " "true, a ``\"frame-buster\"`` script is inserted into the template header " "that prevents the web page from being framed and therefore defends against " "clickjacking." msgstr "" #: ../../source/configuration/settings.rst:169 msgid "For more information see: http://tinyurl.com/anticlickjack" msgstr "" #: ../../source/configuration/settings.rst:173 msgid "" "If your deployment requires the use of iframes, you can set this setting to " "``False`` to exclude the frame-busting code and allow iframe embedding." msgstr "" #: ../../source/configuration/settings.rst:177 msgid "DROPDOWN_MAX_ITEMS" msgstr "" #: ../../source/configuration/settings.rst:181 msgid "Default: ``30``" msgstr "" #: ../../source/configuration/settings.rst:183 msgid "" "This setting sets the maximum number of items displayed in a dropdown. " "Dropdowns that limit based on this value need to support a way to observe " "the entire list." msgstr "" #: ../../source/configuration/settings.rst:188 msgid "FILTER_DATA_FIRST" msgstr "" #: ../../source/configuration/settings.rst:204 msgid "" "If the dict key-value is True, when the view loads, an empty table will be " "rendered and the user will be asked to provide a search criteria first (in " "case no search criteria was provided) before loading any data." msgstr "" #: ../../source/configuration/settings.rst:208 msgid "Examples:" msgstr "" #: ../../source/configuration/settings.rst:210 msgid "Override the dict:" msgstr "" #: ../../source/configuration/settings.rst:222 msgid "Or, if you want to turn this on for an specific panel/view do:" msgstr "" #: ../../source/configuration/settings.rst:229 msgid "HORIZON_CONFIG" msgstr "" #: ../../source/configuration/settings.rst:231 msgid "" "A dictionary of some Horizon configuration values. These are primarily " "separated for historic design reasons." msgstr "" #: ../../source/configuration/settings.rst:264 msgid "ajax_poll_interval" msgstr "" #: ../../source/configuration/settings.rst:268 msgid "Default: ``2500``" msgstr "" #: ../../source/configuration/settings.rst:270 msgid "" "How frequently resources in transition states should be polled for updates, " "expressed in milliseconds." msgstr "" #: ../../source/configuration/settings.rst:274 msgid "ajax_queue_limit" msgstr "" #: ../../source/configuration/settings.rst:278 msgid "Default: ``10``" msgstr "" #: ../../source/configuration/settings.rst:280 msgid "" "The maximum number of simultaneous AJAX connections the dashboard may try to " "make. This is particularly relevant when monitoring a large number of " "instances, volumes, etc. which are all actively trying to update/change " "state." msgstr "" #: ../../source/configuration/settings.rst:285 msgid "angular_modules" msgstr "" #: ../../source/configuration/settings.rst:289 #: ../../source/configuration/settings.rst:369 #: ../../source/configuration/settings.rst:381 #: ../../source/configuration/settings.rst:1108 #: ../../source/configuration/settings.rst:1909 #: ../../source/configuration/settings.rst:2297 msgid "Default: ``[]``" msgstr "" #: ../../source/configuration/settings.rst:295 msgid "auto_fade_alerts" msgstr "" #: ../../source/configuration/settings.rst:309 msgid "" "If provided, will auto-fade the alert types specified. Valid alert types " "include: ['alert-default', 'alert-success', 'alert-info', 'alert-warning', " "'alert-danger'] Can also define the delay before the alert fades and the " "fade out duration." msgstr "" #: ../../source/configuration/settings.rst:315 msgid "bug_url" msgstr "" #: ../../source/configuration/settings.rst:319 #: ../../source/configuration/settings.rst:359 #: ../../source/configuration/settings.rst:449 #: ../../source/configuration/settings.rst:513 #: ../../source/configuration/settings.rst:550 #: ../../source/configuration/settings.rst:588 #: ../../source/configuration/settings.rst:655 #: ../../source/configuration/settings.rst:1137 #: ../../source/configuration/settings.rst:1232 #: ../../source/configuration/settings.rst:1645 #: ../../source/configuration/settings.rst:1665 msgid "Default: ``None``" msgstr "" #: ../../source/configuration/settings.rst:321 msgid "" "If provided, a \"Report Bug\" link will be displayed in the site header " "which links to the value of this setting (ideally a URL containing " "information on how to report issues)." msgstr "" #: ../../source/configuration/settings.rst:326 msgid "disable_password_reveal" msgstr "" #: ../../source/configuration/settings.rst:330 #: ../../source/configuration/settings.rst:669 #: ../../source/configuration/settings.rst:679 #: ../../source/configuration/settings.rst:1122 #: ../../source/configuration/settings.rst:1295 #: ../../source/configuration/settings.rst:1406 #: ../../source/configuration/settings.rst:1419 #: ../../source/configuration/settings.rst:1431 #: ../../source/configuration/settings.rst:1491 #: ../../source/configuration/settings.rst:1508 #: ../../source/configuration/settings.rst:1576 #: ../../source/configuration/settings.rst:1632 #: ../../source/configuration/settings.rst:1768 #: ../../source/configuration/settings.rst:1784 #: ../../source/configuration/settings.rst:1815 #: ../../source/configuration/settings.rst:1829 #: ../../source/configuration/settings.rst:1837 #: ../../source/configuration/settings.rst:2100 #: ../../source/configuration/settings.rst:2119 #: ../../source/configuration/settings.rst:2130 #: ../../source/configuration/settings.rst:2140 #: ../../source/configuration/settings.rst:2150 #: ../../source/configuration/settings.rst:2160 #: ../../source/configuration/settings.rst:2184 #: ../../source/configuration/settings.rst:2548 msgid "Default: ``False``" msgstr "" #: ../../source/configuration/settings.rst:332 msgid "" "Setting this to True will disable the reveal button for password fields, " "including on the login form." msgstr "" #: ../../source/configuration/settings.rst:336 msgid "exceptions" msgstr "" #: ../../source/configuration/settings.rst:350 msgid "" "A dictionary containing classes of exceptions which Horizon's centralized " "exception handling should be aware of. Based on these exception categories, " "Horizon will handle the exception and display a message to the user." msgstr "" #: ../../source/configuration/settings.rst:355 msgid "help_url" msgstr "" #: ../../source/configuration/settings.rst:361 msgid "" "If provided, a \"Help\" link will be displayed in the site header which " "links to the value of this setting (ideally a URL containing help " "information)." msgstr "" #: ../../source/configuration/settings.rst:365 msgid "js_files" msgstr "" #: ../../source/configuration/settings.rst:371 msgid "" "A list of javascript source files to be included in the compressed set of " "files that are loaded on every page. This is needed for AngularJS modules " "that are referenced in ``angular_modules`` and therefore need to be include " "in every page." msgstr "" #: ../../source/configuration/settings.rst:377 msgid "js_spec_files" msgstr "" #: ../../source/configuration/settings.rst:388 msgid "modal_backdrop" msgstr "" #: ../../source/configuration/settings.rst:392 msgid "Default: ``\"static\"``" msgstr "" #: ../../source/configuration/settings.rst:394 msgid "" "Controls how bootstrap backdrop element outside of modals looks and feels. " "Valid values are ``\"true\"`` (show backdrop element outside the modal, " "close the modal after clicking on backdrop), ``\"false\"`` (do not show " "backdrop element, do not close the modal after clicking outside of it) and " "``\"static\"`` (show backdrop element outside the modal, do not close the " "modal after clicking on backdrop)." msgstr "" #: ../../source/configuration/settings.rst:402 msgid "password_autocomplete" msgstr "" #: ../../source/configuration/settings.rst:406 msgid "Default: ``\"off\"``" msgstr "" #: ../../source/configuration/settings.rst:408 msgid "" "Controls whether browser autocompletion should be enabled on the login form. " "Valid values are ``\"on\"`` and ``\"off\"``." msgstr "" #: ../../source/configuration/settings.rst:412 msgid "password_validator" msgstr "" #: ../../source/configuration/settings.rst:425 msgid "" "A dictionary containing a regular expression which will be used for password " "validation and help text which will be displayed if the password does not " "pass validation. The help text should describe the password requirements if " "there are any." msgstr "" #: ../../source/configuration/settings.rst:430 msgid "" "This setting allows you to set rules for passwords if your organization " "requires them." msgstr "" #: ../../source/configuration/settings.rst:434 msgid "user_home" msgstr "" #: ../../source/configuration/settings.rst:438 msgid "Default: ``settings.LOGIN_REDIRECT_URL``" msgstr "" #: ../../source/configuration/settings.rst:440 msgid "" "This can be either a literal URL path (such as the default), or Python's " "dotted string notation representing a function which will evaluate what URL " "a user should be redirected to based on the attributes of that user." msgstr "" #: ../../source/configuration/settings.rst:445 msgid "MESSAGES_PATH" msgstr "" #: ../../source/configuration/settings.rst:451 msgid "The absolute path to the directory where message files are collected." msgstr "" #: ../../source/configuration/settings.rst:453 msgid "" "When the user logins to horizon, the message files collected are processed " "and displayed to the user. Each message file should contain a JSON formatted " "data and must have a .json file extension. For example:" msgstr "" #: ../../source/configuration/settings.rst:464 msgid "" "Possible values for level are: ``success``, ``info``, ``warning`` and " "``error``." msgstr "" #: ../../source/configuration/settings.rst:468 msgid "NG_TEMPLATE_CACHE_AGE" msgstr "" #: ../../source/configuration/settings.rst:472 msgid "" "Angular Templates are cached using this duration (in seconds) if `DEBUG`_ is " "set to ``False``. Default value is ``2592000`` (or 30 days)." msgstr "" #: ../../source/configuration/settings.rst:476 msgid "OPENSTACK_API_VERSIONS" msgstr "" #: ../../source/configuration/settings.rst:490 msgid "" "Overrides for OpenStack API versions. Use this setting to force the " "OpenStack dashboard to use a specific API version for a given service API." msgstr "" #: ../../source/configuration/settings.rst:495 msgid "" "The version should be formatted as it appears in the URL for the service API." " For example, the identity service APIs have inconsistent use of the decimal " "point, so valid options would be \"3\". For example:" msgstr "" #: ../../source/configuration/settings.rst:509 msgid "OPENSTACK_CLOUDS_YAML_CUSTOM_TEMPLATE" msgstr "" #: ../../source/configuration/settings.rst:515 msgid "Example:: ``my-clouds.yaml.template``" msgstr "" #: ../../source/configuration/settings.rst:517 msgid "" "A template name for a custom user's ``clouds.yaml`` file. ``None`` means the " "default template for ``clouds.yaml`` is used." msgstr "" #: ../../source/configuration/settings.rst:520 msgid "" "If the default template is not suitable for your deployment, you can provide " "your own clouds.yaml by specifying this setting." msgstr "" #: ../../source/configuration/settings.rst:523 msgid "" "The default template is defined as `clouds.yaml.template `__ and " "available context parameters are found in ``_get_openrc_credentials()`` and " "``download_clouds_yaml_file()`` functions in `openstack_dashboard/dashboards/" "project/api_access/views.py `__." "" msgstr "" #: ../../source/configuration/settings.rst:532 msgid "" "Your template needs to be placed in the search paths of Django templates. " "You may need to configure `ADD_TEMPLATE_DIRS`_ setting to contain a path " "where your template exists." msgstr "" #: ../../source/configuration/settings.rst:537 msgid "OPENSTACK_CLOUDS_YAML_NAME" msgstr "" #: ../../source/configuration/settings.rst:541 msgid "Default: ``\"openstack\"``" msgstr "" #: ../../source/configuration/settings.rst:543 msgid "The name of the entry to put into the user's clouds.yaml file." msgstr "" #: ../../source/configuration/settings.rst:546 msgid "OPENSTACK_CLOUDS_YAML_PROFILE" msgstr "" #: ../../source/configuration/settings.rst:552 msgid "If set, the name of the `vendor profile`_ from `os-client-config`_." msgstr "" #: ../../source/configuration/settings.rst:558 msgid "OPENSTACK_ENDPOINT_TYPE" msgstr "" #: ../../source/configuration/settings.rst:562 msgid "Default: ``\"publicURL\"``" msgstr "" #: ../../source/configuration/settings.rst:564 msgid "" "A string which specifies the endpoint type to use for the endpoints in the " "Keystone service catalog. The default value for all services except for " "identity is ``\"publicURL\"`` . The default value for the identity service " "is ``\"internalURL\"``." msgstr "" #: ../../source/configuration/settings.rst:570 msgid "OPENSTACK_HOST" msgstr "" #: ../../source/configuration/settings.rst:574 msgid "Default: ``\"127.0.0.1\"``" msgstr "" #: ../../source/configuration/settings.rst:576 msgid "" "The hostname of the Keystone server used for authentication if you only have " "one region. This is often the **only** setting that needs to be set for a " "basic deployment." msgstr "" #: ../../source/configuration/settings.rst:580 msgid "" "If you have multiple regions you should use the `AVAILABLE_REGIONS`_ setting " "instead." msgstr "" #: ../../source/configuration/settings.rst:584 msgid "OPENRC_CUSTOM_TEMPLATE" msgstr "" #: ../../source/configuration/settings.rst:590 msgid "Example:: ``my-openrc.sh.template``" msgstr "" #: ../../source/configuration/settings.rst:592 msgid "" "A template name for a custom user's ``openrc`` file. ``None`` means the " "default template for ``openrc`` is used." msgstr "" #: ../../source/configuration/settings.rst:595 msgid "" "If the default template is not suitable for your deployment, for example, if " "your deployment uses saml2, openid and so on for authentication, the default " "``openrc`` would not be sufficient. You can provide your own clouds.yaml by " "specifying this setting." msgstr "" #: ../../source/configuration/settings.rst:600 msgid "" "The default template is defined as `openrc.sh.template `__ and available context " "parameters are found in ``_get_openrc_credentials()`` and " "``download_rc_file()`` functions in `openstack_dashboard/dashboards/project/" "api_access/views.py `__." msgstr "" #: ../../source/configuration/settings.rst:609 msgid "" "Your template needs to be placed in the search paths of Django templates. " "Check ``TEMPLATES[0]['DIRS']``. You may need to specify somewhere your " "template exist to ``DIRS`` in ``TEMPLATES`` setting." msgstr "" #: ../../source/configuration/settings.rst:615 msgid "OPENSTACK_PROFILER" msgstr "" #: ../../source/configuration/settings.rst:619 msgid "Default: ``{\"enabled\": False}``" msgstr "" #: ../../source/configuration/settings.rst:621 msgid "" "Various settings related to integration with osprofiler library. Since it is " "a developer feature, it starts as disabled. To enable it, more than a single " "``\"enabled\"`` key should be specified. Additional keys that should be " "specified in that dictionary are:" msgstr "" #: ../../source/configuration/settings.rst:626 msgid "" "``\"keys\"`` is a list of strings, which are secret keys used to encode/" "decode the profiler data contained in request headers. Encryption is used " "for security purposes, other OpenStack components that are expected to " "profile themselves with osprofiler using the data from the request that " "Horizon initiated must share a common set of keys with the ones in Horizon " "config. List of keys is used so that security keys could be changed in non-" "obtrusive manner for every component in the cloud. Example: ``\"keys\": " "[\"SECRET_KEY\", \"MORE_SECRET_KEY\"]``. For more details see `osprofiler " "documentation`_." msgstr "" #: ../../source/configuration/settings.rst:635 msgid "" "``\"notifier_connection_string\"`` is a url to which trace messages are sent " "by Horizon. For other components it is usually the only URL specified in " "config, because other components act mostly as traces producers. Example: " "``\"notifier_connection_string\": \"mongodb://%s\" % OPENSTACK_HOST``." msgstr "" #: ../../source/configuration/settings.rst:639 msgid "" "``\"receiver_connection_string\"`` is a url from which traces are retrieved " "by Horizon, needed because Horizon is not only the traces producer, but also " "a consumer. Having 2 settings which usually contain the same value is legacy " "feature from older versions of osprofiler when OpenStack components could " "use oslo.messaging for notifications and the trace client used ceilometer as " "a receiver backend. By default Horizon uses the same URL pointing to a " "MongoDB cluster for both purposes, since ceilometer was too slow for using " "with UI. Example: ``\"receiver_connection_string\": \"mongodb://%s\" % " "OPENSTACK_HOST``." msgstr "" #: ../../source/configuration/settings.rst:651 msgid "OPENSTACK_SSL_CACERT" msgstr "" #: ../../source/configuration/settings.rst:657 msgid "" "When unset or set to ``None`` the default CA certificate on the system is " "used for SSL verification." msgstr "" #: ../../source/configuration/settings.rst:660 msgid "" "When set with the path to a custom CA certificate file, this overrides use " "of the default system CA certificate. This custom certificate is used to " "verify all connections to openstack services when making API calls." msgstr "" #: ../../source/configuration/settings.rst:665 msgid "OPENSTACK_SSL_NO_VERIFY" msgstr "" #: ../../source/configuration/settings.rst:671 msgid "" "Disable SSL certificate checks in the OpenStack clients (useful for self-" "signed certificates)." msgstr "" #: ../../source/configuration/settings.rst:675 msgid "OPERATION_LOG_ENABLED" msgstr "" #: ../../source/configuration/settings.rst:681 msgid "" "This setting can be used to enable logging of all operations carried out by " "users of Horizon. The format of the logs is configured via " "`OPERATION_LOG_OPTIONS`_" msgstr "" #: ../../source/configuration/settings.rst:687 msgid "" "If you use this feature, you need to configure the logger setting like an " "outputting path for operation log in ``local_settings.py``." msgstr "" #: ../../source/configuration/settings.rst:691 msgid "OPERATION_LOG_OPTIONS" msgstr "" #: ../../source/configuration/settings.rst:697 msgid "" "Added ``ignored_urls`` parameter and added ``%(client_ip)s`` to ``format``" msgstr "" #: ../../source/configuration/settings.rst:713 msgid "This setting controls the behavior of the operation log." msgstr "" #: ../../source/configuration/settings.rst:715 msgid "" "``mask_fields`` is a list of keys of post data which should be masked from " "the point of view of security. Fields like ``password`` should be included. " "The fields specified in ``mask_fields`` are logged as ``********``." msgstr "" #: ../../source/configuration/settings.rst:718 msgid "" "``target_methods`` is a request method which is logged to an operation log. " "The valid methods are ``POST``, ``GET``, ``PUT``, ``DELETE``." msgstr "" #: ../../source/configuration/settings.rst:720 msgid "``ignored_urls`` is a list of request URLs to be hidden from a log." msgstr "" #: ../../source/configuration/settings.rst:721 msgid "" "``format`` defines the operation log format. Currently you can use the " "following keywords. The default value contains all keywords." msgstr "" #: ../../source/configuration/settings.rst:725 msgid "``%(client_ip)s``" msgstr "" #: ../../source/configuration/settings.rst:726 msgid "``%(domain_name)s``" msgstr "" #: ../../source/configuration/settings.rst:727 msgid "``%(domain_id)s``" msgstr "" #: ../../source/configuration/settings.rst:728 msgid "``%(project_name)s``" msgstr "" #: ../../source/configuration/settings.rst:729 msgid "``%(project_id)s``" msgstr "" #: ../../source/configuration/settings.rst:730 msgid "``%(user_name)s``" msgstr "" #: ../../source/configuration/settings.rst:731 msgid "``%(user_id)s``" msgstr "" #: ../../source/configuration/settings.rst:732 msgid "``%(request_scheme)s``" msgstr "" #: ../../source/configuration/settings.rst:733 msgid "``%(referer_url)s``" msgstr "" #: ../../source/configuration/settings.rst:734 msgid "``%(request_url)s``" msgstr "" #: ../../source/configuration/settings.rst:735 msgid "``%(message)s``" msgstr "" #: ../../source/configuration/settings.rst:736 msgid "``%(method)s``" msgstr "" #: ../../source/configuration/settings.rst:737 msgid "``%(http_status)s``" msgstr "" #: ../../source/configuration/settings.rst:738 msgid "``%(param)s``" msgstr "" #: ../../source/configuration/settings.rst:741 msgid "OVERVIEW_DAYS_RANGE" msgstr "" #: ../../source/configuration/settings.rst:745 msgid "Default:: ``1``" msgstr "" #: ../../source/configuration/settings.rst:747 msgid "" "When set to an integer N (as by default), the start date in the Overview " "panel meters will be today minus N days. This setting is used to limit the " "amount of data fetched by default when rendering the Overview panel. If set " "to ``None`` (which corresponds to the behavior in past Horizon versions), " "the start date will be from the beginning of the current month until the " "current date. The legacy behaviour is not recommended for large deployments " "as Horizon suffers significant lag in this case." msgstr "" #: ../../source/configuration/settings.rst:756 msgid "POLICY_CHECK_FUNCTION" msgstr "" #: ../../source/configuration/settings.rst:760 msgid "Default:: ``openstack_auth.policy.check``" msgstr "" #: ../../source/configuration/settings.rst:762 msgid "" "This value should not be changed, although removing it or setting it to " "``None`` would be a means to bypass all policy checks." msgstr "" #: ../../source/configuration/settings.rst:766 msgid "POLICY_DIRS" msgstr "" #: ../../source/configuration/settings.rst:779 msgid "" "Specifies a list of policy directories per service types. The directories " "are relative to `POLICY_FILES_PATH`_. Services whose additional policies are " "defined here must be defined in `POLICY_FILES`_ too. Otherwise, additional " "policies specified in ``POLICY_DIRS`` are not loaded." msgstr "" #: ../../source/configuration/settings.rst:786 msgid "" "``cinder_policy.d`` and ``nova_policy.d`` are registered by default to " "maintain policies which have ben dropped from nova and cinder but horizon " "still uses. We recommend not to drop them." msgstr "" #: ../../source/configuration/settings.rst:791 msgid "POLICY_FILES" msgstr "" #: ../../source/configuration/settings.rst:807 msgid "" "This should essentially be the mapping of the contents of " "`POLICY_FILES_PATH`_ to service types. When policy.json files are added to " "`POLICY_FILES_PATH`_, they should be included here too." msgstr "" #: ../../source/configuration/settings.rst:812 msgid "POLICY_FILES_PATH" msgstr "" #: ../../source/configuration/settings.rst:816 msgid "Default: ``os.path.join(ROOT_PATH, \"conf\")``" msgstr "" #: ../../source/configuration/settings.rst:818 msgid "" "Specifies where service based policy files are located. These are used to " "define the policy rules actions are verified against." msgstr "" #: ../../source/configuration/settings.rst:822 msgid "REST_API_REQUIRED_SETTINGS" msgstr "" #: ../../source/configuration/settings.rst:840 msgid "" "This setting allows you to expose configuration values over Horizons " "internal REST API, so that the AngularJS panels can access them. Please be " "cautious about which values are listed here (and thus exposed on the " "frontend). For security purpose, this exposure of settings should be " "recognized explicitly by operator. So ``REST_API_REQUIRED_SETTINGS`` is not " "set by default. Please refer ``local_settings.py.example`` and confirm your " "``local_settings.py``." msgstr "" #: ../../source/configuration/settings.rst:848 msgid "SELECTABLE_THEMES" msgstr "" #: ../../source/configuration/settings.rst:852 msgid "Default: ``AVAILABLE_THEMES``" msgstr "" #: ../../source/configuration/settings.rst:854 msgid "" "This setting tells Horizon which themes to expose to the user as selectable " "in the theme picker widget. This value defaults to all themes configured in " "`AVAILABLE_THEMES`_, but a brander may wish to simply inherit from an " "existing theme and not allow that parent theme to be selected by the user. " "``SELECTABLE_THEMES`` takes the exact same format as ``AVAILABLE_THEMES``." msgstr "" #: ../../source/configuration/settings.rst:861 msgid "SESSION_REFRESH" msgstr "" #: ../../source/configuration/settings.rst:867 msgid "" "Control whether the SESSION_TIMEOUT period is refreshed due to activity. If " "False, SESSION_TIMEOUT acts as a hard limit." msgstr "" #: ../../source/configuration/settings.rst:871 msgid "SESSION_TIMEOUT" msgstr "" #: ../../source/configuration/settings.rst:875 msgid "Default: ``\"3600\"``" msgstr "" #: ../../source/configuration/settings.rst:877 msgid "" "This SESSION_TIMEOUT is a method to supercede the token timeout with a " "shorter horizon session timeout (in seconds). If SESSION_REFRESH is True " "(the default) SESSION_TIMEOUT acts like an idle timeout rather than being a " "hard limit, but will never exceed the token expiry. If your token expires in " "60 minutes, a value of 1800 will log users out after 30 minutes of " "inactivity, or 60 minutes with activity. Setting SESSION_REFRESH to False " "will make SESSION_TIMEOUT act like a hard limit on session times." msgstr "" #: ../../source/configuration/settings.rst:887 msgid "MEMOIZED_MAX_SIZE_DEFAULT" msgstr "" #: ../../source/configuration/settings.rst:891 msgid "Default: ``\"25\"``" msgstr "" #: ../../source/configuration/settings.rst:893 msgid "" "MEMOIZED_MAX_SIZE_DEFAULT allows setting a global default to help control " "memory usage when caching. It should at least be 2 x the number of threads " "with a little bit of extra buffer." msgstr "" #: ../../source/configuration/settings.rst:898 msgid "SHOW_OPENRC_FILE" msgstr "" #: ../../source/configuration/settings.rst:902 #: ../../source/configuration/settings.rst:916 msgid "Default:: ``True``" msgstr "" #: ../../source/configuration/settings.rst:904 msgid "" "Controls whether the keystone openrc file is accesible from the user menu " "and the api access panel." msgstr "" #: ../../source/configuration/settings.rst:909 msgid "`OPENRC_CUSTOM_TEMPLATE`_ to provide a custom ``openrc``." msgstr "" #: ../../source/configuration/settings.rst:912 msgid "SHOW_OPENSTACK_CLOUDS_YAML" msgstr "" #: ../../source/configuration/settings.rst:918 msgid "" "Controls whether clouds.yaml is accesible from the user menu and the api " "access panel." msgstr "" #: ../../source/configuration/settings.rst:923 msgid "" "`OPENSTACK_CLOUDS_YAML_CUSTOM_TEMPLATE`_ to provide a custom ``clouds.yaml``." "" msgstr "" #: ../../source/configuration/settings.rst:927 msgid "THEME_COLLECTION_DIR" msgstr "" #: ../../source/configuration/settings.rst:931 msgid "Default: ``\"themes\"``" msgstr "" #: ../../source/configuration/settings.rst:933 msgid "" "This setting tells Horizon which static directory to collect the available " "themes into, and therefore which URL points to the theme collection root. " "For example, the default theme would be accessible via ``/{{ STATIC_URL }}/" "themes/default``." msgstr "" #: ../../source/configuration/settings.rst:939 msgid "THEME_COOKIE_NAME" msgstr "" #: ../../source/configuration/settings.rst:943 msgid "Default: ``\"theme\"``" msgstr "" #: ../../source/configuration/settings.rst:945 msgid "" "This setting tells Horizon in which cookie key to store the currently set " "theme. The cookie expiration is currently set to a year." msgstr "" #: ../../source/configuration/settings.rst:949 msgid "USER_MENU_LINKS" msgstr "" #: ../../source/configuration/settings.rst:965 msgid "" "This setting controls the additional links on the user drop down menu. A " "list of dictionaries defining all of the links should be provided. This " "defaults to the standard OpenStack RC files." msgstr "" #: ../../source/configuration/settings.rst:969 msgid "Each dictionary should contain these values:" msgstr "" #: ../../source/configuration/settings.rst:972 msgid "The name of the link" msgstr "" #: ../../source/configuration/settings.rst:972 msgid "name" msgstr "" #: ../../source/configuration/settings.rst:975 msgid "Either the reversible Django url name or an absolute url" msgstr "" #: ../../source/configuration/settings.rst:975 msgid "url" msgstr "" #: ../../source/configuration/settings.rst:978 msgid "True for absolute URLs, False for django urls." msgstr "" #: ../../source/configuration/settings.rst:978 msgid "external" msgstr "" #: ../../source/configuration/settings.rst:981 msgid "" "A list of classes for the icon next to the link. If 'None' or an empty list " "is provided a download icon will show" msgstr "" #: ../../source/configuration/settings.rst:982 msgid "icon_classes" msgstr "" #: ../../source/configuration/settings.rst:985 msgid "WEBROOT" msgstr "" #: ../../source/configuration/settings.rst:989 msgid "Default: ``\"/\"``" msgstr "" #: ../../source/configuration/settings.rst:991 msgid "" "Specifies the location where the access to the dashboard is configured in " "the web server." msgstr "" #: ../../source/configuration/settings.rst:994 msgid "" "For example, if you're accessing the Dashboard via ``https:///" "dashboard``, you would set this to ``\"/dashboard/\"``." msgstr "" #: ../../source/configuration/settings.rst:999 msgid "" "Additional settings may be required in the config files of your webserver of " "choice. For example to make ``\"/dashboard/\"`` the web root in Apache, the " "``\"sites-available/horizon.conf\"`` requires a couple of additional aliases " "set::" msgstr "" #: ../../source/configuration/settings.rst:1008 msgid "" "Apache also requires changing your WSGIScriptAlias to reflect the desired " "path. For example, you'd replace ``/`` with ``/dashboard`` for the alias." msgstr "" #: ../../source/configuration/settings.rst:1015 msgid "Service-specific Settings" msgstr "" #: ../../source/configuration/settings.rst:1017 msgid "" "The following settings inform the OpenStack Dashboard of information about " "the other OpenStack projects which are part of this cloud and control the " "behavior of specific dashboards, panels, API calls, etc." msgstr "" #: ../../source/configuration/settings.rst:1022 msgid "Cinder" msgstr "" #: ../../source/configuration/settings.rst:1025 msgid "OPENSTACK_CINDER_FEATURES" msgstr "" #: ../../source/configuration/settings.rst:1029 msgid "Default: ``{'enable_backup': False}``" msgstr "" #: ../../source/configuration/settings.rst:1031 msgid "" "A dictionary of settings which can be used to enable optional services " "provided by cinder. Currently only the backup service is available." msgstr "" #: ../../source/configuration/settings.rst:1035 msgid "Glance" msgstr "" #: ../../source/configuration/settings.rst:1038 msgid "CREATE_IMAGE_DEFAULTS" msgstr "" #: ../../source/configuration/settings.rst:1050 msgid "A dictionary of default settings for create image modal." msgstr "" #: ../../source/configuration/settings.rst:1052 msgid "" "The ``image_visibility`` setting specifies the default visibility option. " "Valid values are ``\"public\"`` and ``\"private\"``. By default, the " "visibility option is public on create image modal. If it's set to " "``\"private\"``, the default visibility option is private." msgstr "" #: ../../source/configuration/settings.rst:1058 msgid "HORIZON_IMAGES_UPLOAD_MODE" msgstr "" #: ../../source/configuration/settings.rst:1062 msgid "Default: ``\"legacy\"``" msgstr "" #: ../../source/configuration/settings.rst:1064 msgid "" "Valid values are ``\"direct\"``, ``\"legacy\"`` (default) and ``\"off\"``. " "``\"off\"`` disables the ability to upload images via Horizon. ``legacy`` " "enables local file upload by piping the image file through the Horizon's web-" "server. ``direct`` sends the image file directly from the web browser to " "Glance. This bypasses Horizon web-server which both reduces network hops and " "prevents filling up Horizon web-server's filesystem. ``direct`` is the " "preferred mode, but due to the following requirements it is not the default. " "The ``direct`` setting requires a modern web browser, network access from " "the browser to the public Glance endpoint, and CORS support to be enabled on " "the Glance API service. Without CORS support, the browser will forbid the " "PUT request to a location different than the Horizon server. To enable CORS " "support for Glance API service, you will need to edit [cors] section of " "glance-api.conf file (see `here`_ how to do it). Set `allowed_origin` to the " "full hostname of Horizon web-server (e.g. http:///dashboard) and " "restart glance-api process." msgstr "" #: ../../source/configuration/settings.rst:1083 msgid "IMAGE_CUSTOM_PROPERTY_TITLES" msgstr "" #: ../../source/configuration/settings.rst:1100 msgid "" "Used to customize the titles for image custom property attributes that " "appear on image detail pages." msgstr "" #: ../../source/configuration/settings.rst:1104 msgid "IMAGE_RESERVED_CUSTOM_PROPERTIES" msgstr "" #: ../../source/configuration/settings.rst:1110 msgid "" "A list of image custom property keys that should not be displayed in the " "Update Metadata tree." msgstr "" #: ../../source/configuration/settings.rst:1113 msgid "" "This setting can be used in the case where a separate panel is used for " "managing a custom property or if a certain custom property should never be " "edited." msgstr "" #: ../../source/configuration/settings.rst:1118 msgid "IMAGES_ALLOW_LOCATION" msgstr "" #: ../../source/configuration/settings.rst:1124 msgid "" "If set to ``True``, this setting allows users to specify an image location " "(URL) as the image source when creating or updating images. Depending on the " "Glance version, the ability to set an image location is controlled by " "policies and/or the Glance configuration. Therefore IMAGES_ALLOW_LOCATION " "should only be set to ``True`` if Glance is configured to allow specifying a " "location. This setting has no effect when the Keystone catalog doesn't " "contain a Glance v2 endpoint." msgstr "" #: ../../source/configuration/settings.rst:1133 msgid "IMAGES_LIST_FILTER_TENANTS" msgstr "" #: ../../source/configuration/settings.rst:1139 msgid "" "A list of dictionaries to add optional categories to the image fixed filters " "in the Images panel, based on project ownership." msgstr "" #: ../../source/configuration/settings.rst:1142 msgid "" "Each dictionary should contain a `tenant` attribute with the project id, and " "optionally a `text` attribute specifying the category name, and an `icon` " "attribute that displays an icon in the filter button. The icon names are " "based on the default icon theme provided by Bootstrap." msgstr "" #: ../../source/configuration/settings.rst:1156 msgid "OPENSTACK_IMAGE_BACKEND" msgstr "" #: ../../source/configuration/settings.rst:1180 msgid "" "Used to customize features related to the image service, such as the list of " "supported image formats." msgstr "" #: ../../source/configuration/settings.rst:1184 msgid "Keystone" msgstr "" #: ../../source/configuration/settings.rst:1187 msgid "ALLOW_USERS_CHANGE_EXPIRED_PASSWORD" msgstr "" #: ../../source/configuration/settings.rst:1193 msgid "" "When enabled, this setting lets users change their password after it has " "expired or when it is required to be changed on first use. Disabling it will " "force such users to either use the command line interface to change their " "password, or contact the system administrator." msgstr "" #: ../../source/configuration/settings.rst:1200 msgid "AUTHENTICATION_PLUGINS" msgstr "" #: ../../source/configuration/settings.rst:1213 msgid "" "A list of authentication plugins to be used. In most cases, there is no need " "to configure this." msgstr "" #: ../../source/configuration/settings.rst:1217 msgid "AUTHENTICATION_URLS" msgstr "" #: ../../source/configuration/settings.rst:1221 msgid "Default: ``['openstack_auth.urls']``" msgstr "" #: ../../source/configuration/settings.rst:1223 msgid "" "A list of modules from which to collate authentication URLs from. The " "default option adds URLs from the django-openstack-auth module however " "others will be required for additional authentication mechanisms." msgstr "" #: ../../source/configuration/settings.rst:1228 msgid "AVAILABLE_REGIONS" msgstr "" #: ../../source/configuration/settings.rst:1234 msgid "" "A list of tuples which define multiple regions. The tuple format is ``('http:" "//{{ keystone_host }}:5000/v3', '{{ region_name }}')``. If any regions are " "specified the login form will have a dropdown selector for authenticating to " "the appropriate region, and there will be a region switcher dropdown in the " "site header when logged in." msgstr "" #: ../../source/configuration/settings.rst:1240 msgid "" "You should also define `OPENSTACK_KEYSTONE_URL`_ to indicate which of the " "regions is the default one." msgstr "" #: ../../source/configuration/settings.rst:1245 msgid "DEFAULT_SERVICE_REGIONS" msgstr "" #: ../../source/configuration/settings.rst:1249 #: ../../source/configuration/settings.rst:1474 #: ../../source/configuration/settings.rst:1534 #: ../../source/configuration/settings.rst:1587 #: ../../source/configuration/settings.rst:1871 #: ../../source/configuration/settings.rst:1925 msgid "Default: ``{}``" msgstr "" #: ../../source/configuration/settings.rst:1251 msgid "" "The default service region is set on a per-endpoint basis, meaning that once " "the user logs into some Keystone endpoint, if a default service region is " "defined for it in this setting and exists within Keystone catalog, it will " "be set as the initial service region in this endpoint. By default it is an " "empty dictionary because upstream can neither predict service region names " "in a specific deployment, nor tell whether this behavior is desired. The key " "of the dictionary is a full url of a Keystone endpoint with version suffix, " "the value is a region name." msgstr "" #: ../../source/configuration/settings.rst:1268 msgid "" "As of Rocky you can optionally you can set ``'*'`` as the key, and if no " "matching endpoint is found this will be treated as a global default." msgstr "" #: ../../source/configuration/settings.rst:1281 msgid "ENABLE_CLIENT_TOKEN" msgstr "" #: ../../source/configuration/settings.rst:1287 msgid "" "This setting will Enable/Disable access to the Keystone Token to the browser." "" msgstr "" #: ../../source/configuration/settings.rst:1291 msgid "ENFORCE_PASSWORD_CHECK" msgstr "" #: ../../source/configuration/settings.rst:1297 msgid "" "This setting will display an 'Admin Password' field on the Change Password " "form to verify that it is indeed the admin logged-in who wants to change the " "password." msgstr "" #: ../../source/configuration/settings.rst:1302 msgid "KEYSTONE_PROVIDER_IDP_ID" msgstr "" #: ../../source/configuration/settings.rst:1306 msgid "Default: ``\"localkeystone\"``" msgstr "" #: ../../source/configuration/settings.rst:1308 msgid "" "This ID is only used for comparison with the service provider IDs. This ID " "should not match any service provider IDs." msgstr "" #: ../../source/configuration/settings.rst:1312 msgid "KEYSTONE_PROVIDER_IDP_NAME" msgstr "" #: ../../source/configuration/settings.rst:1316 msgid "Default: ``\"Local Keystone\"``" msgstr "" #: ../../source/configuration/settings.rst:1318 msgid "" "The Keystone Provider drop down uses Keystone to Keystone federation to " "switch between Keystone service providers. This sets the display name for " "the Identity Provider (dropdown display name)." msgstr "" #: ../../source/configuration/settings.rst:1323 msgid "OPENSTACK_KEYSTONE_ADMIN_ROLES" msgstr "" #: ../../source/configuration/settings.rst:1327 msgid "Default: ``[\"admin\"]``" msgstr "" #: ../../source/configuration/settings.rst:1329 msgid "" "The list of roles that have administrator privileges in this OpenStack " "installation. This check is very basic and essentially only works with " "keystone v3 with the default policy file. The setting assumes there is a " "common ``admin`` like role(s) across services. Example uses of this setting " "are:" msgstr "" #: ../../source/configuration/settings.rst:1335 msgid "to rename the ``admin`` role to ``cloud-admin``" msgstr "" #: ../../source/configuration/settings.rst:1336 msgid "" "allowing multiple roles to have administrative privileges, like " "``[\"admin\", \"cloud-admin\", \"net-op\"]``" msgstr "" #: ../../source/configuration/settings.rst:1340 msgid "OPENSTACK_KEYSTONE_BACKEND" msgstr "" #: ../../source/configuration/settings.rst:1357 msgid "" "A dictionary containing settings which can be used to identify the " "capabilities of the auth backend for Keystone." msgstr "" #: ../../source/configuration/settings.rst:1360 msgid "" "If Keystone has been configured to use LDAP as the auth backend then set " "``can_edit_user`` and ``can_edit_project`` to ``False`` and name to " "``\"ldap\"``." msgstr "" #: ../../source/configuration/settings.rst:1364 msgid "OPENSTACK_KEYSTONE_DEFAULT_DOMAIN" msgstr "" #: ../../source/configuration/settings.rst:1368 msgid "Default: ``\"Default\"``" msgstr "" #: ../../source/configuration/settings.rst:1370 msgid "" "Overrides the default domain used when running on single-domain model with " "Keystone V3. All entities will be created in the default domain." msgstr "" #: ../../source/configuration/settings.rst:1374 msgid "OPENSTACK_KEYSTONE_DEFAULT_ROLE" msgstr "" #: ../../source/configuration/settings.rst:1378 msgid "Default: ``\"_member_\"``" msgstr "" #: ../../source/configuration/settings.rst:1380 msgid "" "The name of the role which will be assigned to a user when added to a " "project. This value must correspond to an existing role name in Keystone. In " "general, the value should match the ``member_role_name`` defined in " "``keystone.conf``." msgstr "" #: ../../source/configuration/settings.rst:1385 msgid "OPENSTACK_KEYSTONE_DOMAIN_CHOICES" msgstr "" #: ../../source/configuration/settings.rst:1397 msgid "" "If `OPENSTACK_KEYSTONE_DOMAIN_DROPDOWN`_ is enabled, this option can be used " "to set the available domains to choose from. This is a list of pairs whose " "first value is the domain name and the second is the display name." msgstr "" #: ../../source/configuration/settings.rst:1402 msgid "OPENSTACK_KEYSTONE_DOMAIN_DROPDOWN" msgstr "" #: ../../source/configuration/settings.rst:1408 msgid "" "Set this to True if you want available domains displayed as a dropdown menu " "on the login screen. It is strongly advised NOT to enable this for public " "clouds, as advertising enabled domains to unauthenticated customers " "irresponsibly exposes private information. This should only be used for " "private clouds where the dashboard sits behind a corporate firewall." msgstr "" #: ../../source/configuration/settings.rst:1415 msgid "OPENSTACK_KEYSTONE_FEDERATION_MANAGEMENT" msgstr "" #: ../../source/configuration/settings.rst:1421 msgid "" "Set this to True to enable panels that provide the ability for users to " "manage Identity Providers (IdPs) and establish a set of rules to map " "federation protocol attributes to Identity API attributes. This extension " "requires v3.0+ of the Identity API." msgstr "" #: ../../source/configuration/settings.rst:1427 msgid "OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT" msgstr "" #: ../../source/configuration/settings.rst:1433 msgid "" "Set this to True if running on multi-domain model. When this is enabled, it " "will require user to enter the Domain name in addition to username for login." "" msgstr "" #: ../../source/configuration/settings.rst:1437 msgid "OPENSTACK_KEYSTONE_URL" msgstr "" #: ../../source/configuration/settings.rst:1443 msgid "Horizon's `OPENSTACK_HOST`_ documentation" msgstr "" #: ../../source/configuration/settings.rst:1445 msgid "Default: ``\"http://%s:5000/v3\" % OPENSTACK_HOST``" msgstr "" #: ../../source/configuration/settings.rst:1447 msgid "" "The full URL for the Keystone endpoint used for authentication. Unless you " "are using HTTPS, running your Keystone server on a nonstandard port, or " "using a nonstandard URL scheme you shouldn't need to touch this setting." msgstr "" #: ../../source/configuration/settings.rst:1452 msgid "PASSWORD_EXPIRES_WARNING_THRESHOLD_DAYS" msgstr "" #: ../../source/configuration/settings.rst:1456 msgid "Default: ``-1``" msgstr "" #: ../../source/configuration/settings.rst:1458 msgid "" "Password will have an expiration date when using keystone v3 and enabling " "the feature. This setting allows you to set the number of days that the user " "will be alerted prior to the password expiration. Once the password expires " "keystone will deny the access and users must contact an admin to change " "their password. Setting this value to ``N`` days means the user will be " "alerted when the password expires in less than ``N+1`` days. ``-1`` disables " "the feature." msgstr "" #: ../../source/configuration/settings.rst:1466 msgid "PROJECT_TABLE_EXTRA_INFO" msgstr "" #: ../../source/configuration/settings.rst:1472 msgid "`USER_TABLE_EXTRA_INFO`_ for the equivalent setting on the Users table" msgstr "" #: ../../source/configuration/settings.rst:1476 msgid "" "Adds additional information for projects as extra attributes. Projects can " "have extra attributes as defined by Keystone v3. This setting allows those " "attributes to be shown in Horizon." msgstr "" #: ../../source/configuration/settings.rst:1480 #: ../../source/configuration/settings.rst:1540 msgid "For example:" msgstr "" #: ../../source/configuration/settings.rst:1489 msgid "SECURE_PROXY_ADDR_HEADER" msgstr "" #: ../../source/configuration/settings.rst:1493 msgid "" "If horizon is behind a proxy server and the proxy is configured, the IP " "address from request is passed using header variables inside the request. " "The header name depends on a proxy or a load-balancer. This setting " "specifies the name of the header with remote IP address. The main use is for " "authentication log (success or fail) displaing the IP address of the user. " "The commom value for this setting is ``HTTP_X_REAL_IP`` or " "``HTTP_X_FORWARDED_FOR``. If not present, then ``REMOTE_ADDR`` header is " "used. (``REMOTE_ADDR`` is the field of Django HttpRequest object which " "contains IP address of the client.)" msgstr "" #: ../../source/configuration/settings.rst:1504 msgid "TOKEN_DELETION_DISABLED" msgstr "" #: ../../source/configuration/settings.rst:1510 msgid "" "This setting allows deployers to control whether a token is deleted on log " "out. This can be helpful when there are often long running processes being " "run in the Horizon environment." msgstr "" #: ../../source/configuration/settings.rst:1515 msgid "TOKEN_TIMEOUT_MARGIN" msgstr "" #: ../../source/configuration/settings.rst:1517 msgid "Default: ``0``" msgstr "" #: ../../source/configuration/settings.rst:1519 msgid "" "A time margin in seconds to subtract from the real token's validity. An " "example use case is that the token can be valid once the middleware passed, " "and invalid (timed-out) during a view rendering and this generates " "authorization errors during the view rendering. By setting this value to a " "few seconds, you can avoid token expiration during a view rendering." msgstr "" #: ../../source/configuration/settings.rst:1526 msgid "USER_TABLE_EXTRA_INFO" msgstr "" #: ../../source/configuration/settings.rst:1532 msgid "" "`PROJECT_TABLE_EXTRA_INFO`_ for the equivalent setting on the Projects table" msgstr "" #: ../../source/configuration/settings.rst:1536 msgid "" "Adds additional information for users as extra attributes. Users can have " "extra attributes as defined by Keystone v3. This setting allows those " "attributes to be shown in Horizon." msgstr "" #: ../../source/configuration/settings.rst:1549 msgid "WEBSSO_CHOICES" msgstr "" #: ../../source/configuration/settings.rst:1563 msgid "" "This is the list of authentication mechanisms available to the user. It " "includes Keystone federation protocols such as OpenID Connect and SAML, and " "also keys that map to specific identity provider and federation protocol " "combinations (as defined in `WEBSSO_IDP_MAPPING`_). The list of choices is " "completely configurable, so as long as the id remains intact. Do not remove " "the credentials mechanism unless you are sure. Once removed, even admins " "will have no way to log into the system via the dashboard." msgstr "" #: ../../source/configuration/settings.rst:1572 msgid "WEBSSO_ENABLED" msgstr "" #: ../../source/configuration/settings.rst:1578 msgid "" "Enables keystone web single-sign-on if set to True. For this feature to " "work, make sure that you are using Keystone V3 and Django OpenStack Auth V1." "2.0 or later." msgstr "" #: ../../source/configuration/settings.rst:1583 msgid "WEBSSO_IDP_MAPPING" msgstr "" #: ../../source/configuration/settings.rst:1589 msgid "" "A dictionary of specific identity provider and federation protocol " "combinations. From the selected authentication mechanism, the value will be " "looked up as keys in the dictionary. If a match is found, it will redirect " "the user to a identity provider and federation protocol specific WebSSO " "endpoint in keystone, otherwise it will use the value as the protocol_id " "when redirecting to the WebSSO by protocol endpoint." msgstr "" #: ../../source/configuration/settings.rst:1615 msgid "" "The value is expected to be a tuple formatted as: (, )" msgstr "" #: ../../source/configuration/settings.rst:1618 msgid "WEBSSO_INITIAL_CHOICE" msgstr "" #: ../../source/configuration/settings.rst:1622 msgid "Default: ``\"credentials\"``" msgstr "" #: ../../source/configuration/settings.rst:1624 msgid "" "Specifies the default authentication mechanism. When user lands on the login " "page, this is the first choice they will see." msgstr "" #: ../../source/configuration/settings.rst:1628 msgid "WEBSSO_DEFAULT_REDIRECT" msgstr "" #: ../../source/configuration/settings.rst:1634 msgid "" "Allows to redirect on login to the IdP provider defined on PROTOCOL and " "REGION In cases you have a single IdP providing websso, in order to improve " "user experience, you can redirect on the login page to the IdP directly by " "specifying WEBSSO_DEFAULT_REDIRECT_PROTOCOL and " "WEBSSO_DEFAULT_REDIRECT_REGION variables." msgstr "" #: ../../source/configuration/settings.rst:1641 msgid "WEBSSO_DEFAULT_REDIRECT_PROTOCOL" msgstr "" #: ../../source/configuration/settings.rst:1647 msgid "" "Allows to specify the protocol for the IdP to contact if the " "WEBSSO_DEFAULT_REDIRECT is set to True" msgstr "" #: ../../source/configuration/settings.rst:1651 msgid "WEBSSO_DEFAULT_REDIRECT_REGION" msgstr "" #: ../../source/configuration/settings.rst:1655 msgid "Default: ``OPENSTACK_KEYSTONE_URL``" msgstr "" #: ../../source/configuration/settings.rst:1657 msgid "" "Allows to specify thee region of the IdP to contact if the " "WEBSSO_DEFAULT_REDIRECT is set to True" msgstr "" #: ../../source/configuration/settings.rst:1661 msgid "WEBSSO_DEFAULT_REDIRECT_LOGOUT" msgstr "" #: ../../source/configuration/settings.rst:1667 msgid "" "Allows to specify a callback to the IdP to cleanup the SSO resources. Once " "the user logs out it will redirect to the IdP log out method." msgstr "" #: ../../source/configuration/settings.rst:1671 msgid "WEBSSO_KEYSTONE_URL" msgstr "" #: ../../source/configuration/settings.rst:1675 msgid "Default: None" msgstr "" #: ../../source/configuration/settings.rst:1677 msgid "" "The full auth URL for the Keystone endpoint used for web single-sign-on " "authentication. Use this when ``OPENSTACK_KEYSTONE_URL`` is set to an " "internal Keystone endpoint and is not reachable from the external network " "where the identity provider lives. This URL will take precedence over " "``OPENSTACK_KEYSTONE_URL`` if the login choice is an external identity " "provider (IdP)." msgstr "" #: ../../source/configuration/settings.rst:1685 msgid "Neutron" msgstr "" #: ../../source/configuration/settings.rst:1688 msgid "ALLOWED_PRIVATE_SUBNET_CIDR" msgstr "" #: ../../source/configuration/settings.rst:1701 msgid "" "A dictionary used to restrict user private subnet CIDR range. An empty list " "means that user input will not be restricted for a corresponding IP version. " "By default, there is no restriction for both IPv4 and IPv6." msgstr "" #: ../../source/configuration/settings.rst:1722 msgid "OPENSTACK_NEUTRON_NETWORK" msgstr "" #: ../../source/configuration/settings.rst:1747 msgid "" "A dictionary of settings which can be used to enable optional services " "provided by Neutron and configure Neutron specific features. The following " "options are available." msgstr "" #: ../../source/configuration/settings.rst:1752 msgid "default_dns_nameservers" msgstr "" #: ../../source/configuration/settings.rst:1756 msgid "Default: ``None`` (Empty)" msgstr "" #: ../../source/configuration/settings.rst:1758 msgid "" "Default DNS servers you would like to use when a subnet is created. This is " "only a default. Users can still choose a different list of dns servers." msgstr "" #: ../../source/configuration/settings.rst:1761 msgid "Example: ``[\"8.8.8.8\", \"8.8.4.4\", \"208.67.222.222\"]``" msgstr "" #: ../../source/configuration/settings.rst:1764 msgid "enable_auto_allocated_network" msgstr "" #: ../../source/configuration/settings.rst:1770 msgid "" "Enable or disable Nova and Neutron 'get-me-a-network' feature. This sets up " "a neutron network topology for a project if there is no network in the " "project. It simplifies the workflow when launching a server. Horizon checks " "if both nova and neutron support the feature and enable it only when " "supported. However, whether the feature works properly depends on " "deployments, so this setting is disabled by default. (The detail on the " "required preparation is described in `the Networking Guide `__.)" msgstr "" #: ../../source/configuration/settings.rst:1780 msgid "enable_distributed_router" msgstr "" #: ../../source/configuration/settings.rst:1786 msgid "" "Enable or disable Neutron distributed virtual router (DVR) feature in the " "Router panel. For the DVR feature to be enabled, this option needs to be set " "to True and your Neutron deployment must support DVR. Even when your Neutron " "plugin (like ML2 plugin) supports DVR feature, DVR feature depends on l3-" "agent configuration, so deployers should set this option appropriately " "depending on your deployment." msgstr "" #: ../../source/configuration/settings.rst:1794 msgid "enable_fip_topology_check" msgstr "" #: ../../source/configuration/settings.rst:1800 msgid "" "The Default Neutron implementation needs a router with a gateway to " "associate a FIP. So by default a topology check will be performed by horizon " "to list only VM ports attached to a network which is itself attached to a " "router with an external gateway. This is to prevent from setting a FIP to a " "port which will fail with an error. Some Neutron vendors do not require it. " "Some can even attach a FIP to any port (e.g.: OpenContrail) owned by a " "tenant. Set to False if you want to be able to associate a FIP to an " "instance on a subnet with no router if your Neutron backend allows it." msgstr "" #: ../../source/configuration/settings.rst:1811 msgid "enable_ha_router" msgstr "" #: ../../source/configuration/settings.rst:1817 msgid "" "Enable or disable HA (High Availability) mode in Neutron virtual router in " "the Router panel. For the HA router mode to be enabled, this option needs to " "be set to True and your Neutron deployment must support HA router mode. Even " "when your Neutron plugin (like ML2 plugin) supports HA router mode, the " "feature depends on l3-agent configuration, so deployers should set this " "option appropriately depending on your deployment." msgstr "" #: ../../source/configuration/settings.rst:1825 msgid "enable_ipv6" msgstr "" #: ../../source/configuration/settings.rst:1831 msgid "" "Enable or disable IPv6 support in the Network panels. When disabled, Horizon " "will only expose IPv4 configuration for networks." msgstr "" #: ../../source/configuration/settings.rst:1835 msgid "enable_quotas" msgstr "" #: ../../source/configuration/settings.rst:1839 msgid "" "Enable support for Neutron quotas feature. To make this feature work " "appropriately, you need to use Neutron plugins with quotas extension support " "and quota_driver should be DbQuotaDriver (default config)." msgstr "" #: ../../source/configuration/settings.rst:1844 msgid "enable_rbac_policy" msgstr "" #: ../../source/configuration/settings.rst:1850 msgid "" "Set this to True to enable RBAC Policies panel that provide the ability for " "users to use RBAC function. This option only affects when Neutron is enabled." "" msgstr "" #: ../../source/configuration/settings.rst:1854 msgid "enable_router" msgstr "" #: ../../source/configuration/settings.rst:1860 msgid "" "Enable (``True``) or disable (``False``) the panels and menus related to " "router and Floating IP features. This option only affects when Neutron is " "enabled. If your Neutron deployment has no support for Layer-3 features, or " "you do not wish to provide the Layer-3 features through the Dashboard, this " "should be set to ``False``." msgstr "" #: ../../source/configuration/settings.rst:1867 msgid "extra_provider_types" msgstr "" #: ../../source/configuration/settings.rst:1873 msgid "" "For use with the provider network extension. This is a dictionary to define " "extra provider network definitions. Network types supported by Neutron " "depend on the configured plugin. Horizon has predefined provider network " "types but horizon cannot cover all of them. If you are using a provider " "network type not defined in advance, you can add a definition through this " "setting." msgstr "" #: ../../source/configuration/settings.rst:1880 msgid "" "The **key** name of each item in this must be a network type used in the " "Neutron API. **value** should be a dictionary which contains the following " "items:" msgstr "" #: ../../source/configuration/settings.rst:1884 msgid "``display_name``: string displayed in the network creation form." msgstr "" #: ../../source/configuration/settings.rst:1885 msgid "" "``require_physical_network``: a boolean parameter which indicates this " "network type requires a physical network." msgstr "" #: ../../source/configuration/settings.rst:1887 msgid "" "``require_segmentation_id``: a boolean parameter which indicates this " "network type requires a segmentation ID. If True, a valid segmentation ID " "range must be configured in ``segmentation_id_range`` settings above." msgstr "" #: ../../source/configuration/settings.rst:1905 msgid "physical_networks" msgstr "" #: ../../source/configuration/settings.rst:1911 msgid "" "Default to an empty list and the physical network field on the admin create " "network modal will be a regular input field where users can type in the name " "of the physical network to be used. If it is set to a list of available " "physical networks, the physical network field will be shown as a dropdown " "menu where users can select a physical network to be used." msgstr "" #: ../../source/configuration/settings.rst:1918 msgid "Example: ``['default', 'test']``" msgstr "" #: ../../source/configuration/settings.rst:1921 msgid "segmentation_id_range" msgstr "" #: ../../source/configuration/settings.rst:1927 msgid "" "For use with the provider network extension. This is a dictionary where each " "key is a provider network type and each value is a list containing two " "numbers. The first number is the minimum segmentation ID that is valid. The " "second number is the maximum segmentation ID. Pertains only to the vlan, " "gre, and vxlan network types. By default this option is not provided and " "each minimum and maximum value will be the default for the provider network " "type." msgstr "" #: ../../source/configuration/settings.rst:1944 msgid "supported_provider_types" msgstr "" #: ../../source/configuration/settings.rst:1948 msgid "Default: ``[\"*\"]``" msgstr "" #: ../../source/configuration/settings.rst:1950 msgid "" "For use with the provider network extension. Use this to explicitly set " "which provider network types are supported. Only the network types in this " "list will be available to choose from when creating a network. Network types " "defined in Horizon or defined in `extra_provider_types`_ settings can be " "specified in this list. As of the Newton release, the network types defined " "in Horizon include network types supported by Neutron ML2 plugin with Open " "vSwitch driver (``local``, ``flat``, ``vlan``, ``gre``, ``vxlan`` and " "``geneve``) and supported by Midonet plugin (``midonet`` and ``uplink``). " "``[\"*\"]`` means that all provider network types supported by Neutron ML2 " "plugin will be available to choose from." msgstr "" #: ../../source/configuration/settings.rst:1962 msgid "Example: ``['local', 'flat', 'gre']``" msgstr "" #: ../../source/configuration/settings.rst:1965 msgid "supported_vnic_types" msgstr "" #: ../../source/configuration/settings.rst:1971 msgid "" "Added ``virtio-forwarder`` VNIC type Clarified VNIC type availability for " "users and operators" msgstr "" #: ../../source/configuration/settings.rst:1975 msgid "Default ``['*']``" msgstr "" #: ../../source/configuration/settings.rst:1977 msgid "" "For use with the port binding extension. Use this to explicitly set which " "VNIC types are available for users to choose from, when creating or editing " "a port. The VNIC types actually supported are determined by resource " "availability and Neutron ML2 plugin support. Currently, error reporting for " "users selecting an incompatible or unavailable VNIC type is restricted to " "receiving a message from the scheduler that the instance cannot spawn " "because of insufficient resources. VNIC types include ``normal``, " "``direct``, ``direct-physical``, ``macvtap``, ``baremetal`` and ``virtio-" "forwarder``. By default all VNIC types will be available to choose from." msgstr "" #: ../../source/configuration/settings.rst:1988 msgid "Example: ``['normal', 'direct']``" msgstr "" #: ../../source/configuration/settings.rst:1990 msgid "" "To disable VNIC type selection, set an empty list (``[]``) or ``None``." msgstr "" #: ../../source/configuration/settings.rst:1993 msgid "Nova" msgstr "" #: ../../source/configuration/settings.rst:1996 msgid "CREATE_INSTANCE_FLAVOR_SORT" msgstr "" #: ../../source/configuration/settings.rst:2008 msgid "" "When launching a new instance the default flavor is sorted by RAM usage in " "ascending order. You can customize the sort order by: id, name, ram, disk " "and vcpus. Additionally, you can insert any custom callback function. You " "can also provide a flag for reverse sort. See the description in " "local_settings.py.example for more information." msgstr "" #: ../../source/configuration/settings.rst:2015 msgid "This example sorts flavors by vcpus in descending order:" msgstr "" #: ../../source/configuration/settings.rst:2025 msgid "CONSOLE_TYPE" msgstr "" #: ../../source/configuration/settings.rst:2031 msgid "Added the ``None`` option, which deactivates the in-browser console" msgstr "" #: ../../source/configuration/settings.rst:2035 msgid "Added the ``SERIAL`` option" msgstr "" #: ../../source/configuration/settings.rst:2039 msgid "Added the ``MKS`` option" msgstr "" #: ../../source/configuration/settings.rst:2041 msgid "Default: ``\"AUTO\"``" msgstr "" #: ../../source/configuration/settings.rst:2043 msgid "" "This setting specifies the type of in-browser console used to access the VMs." " Valid values are ``\"AUTO\"``, ``\"VNC\"``, ``\"SPICE\"``, ``\"RDP\"``, " "``\"SERIAL\"``, ``\"MKS\"``, and ``None``." msgstr "" #: ../../source/configuration/settings.rst:2048 msgid "INSTANCE_LOG_LENGTH" msgstr "" #: ../../source/configuration/settings.rst:2052 msgid "Default: ``35``" msgstr "" #: ../../source/configuration/settings.rst:2054 msgid "" "This setting enables you to change the default number of lines displayed for " "the log of an instance. Valid value must be a positive integer." msgstr "" #: ../../source/configuration/settings.rst:2059 msgid "LAUNCH_INSTANCE_DEFAULTS" msgstr "" #: ../../source/configuration/settings.rst:2065 msgid "" "Added the ``disable_image``, ``disable_instance_snapshot``, " "``disable_volume`` and ``disable_volume_snapshot`` options." msgstr "" #: ../../source/configuration/settings.rst:2070 msgid "Added the ``create_volume`` option." msgstr "" #: ../../source/configuration/settings.rst:2074 msgid "Added the ``hide_create_volume`` option." msgstr "" #: ../../source/configuration/settings.rst:2091 msgid "" "A dictionary of settings which can be used to provide the default values for " "properties found in the Launch Instance modal. An explanation of each " "setting is provided below." msgstr "" #: ../../source/configuration/settings.rst:2096 msgid "config_drive" msgstr "" #: ../../source/configuration/settings.rst:2102 msgid "" "This setting specifies the default value for the Configuration Drive " "property." msgstr "" #: ../../source/configuration/settings.rst:2105 msgid "create_volume" msgstr "" #: ../../source/configuration/settings.rst:2111 msgid "" "This setting allows you to specify the default value for the option of " "creating a new volume in the workflow for image and instance snapshot " "sources." msgstr "" #: ../../source/configuration/settings.rst:2115 msgid "hide_create_volume" msgstr "" #: ../../source/configuration/settings.rst:2121 msgid "" "This setting allow your to hide the \"Create New Volume\" option and rely on " "the default value you select with ``create_volume`` to be the most suitable " "for your users." msgstr "" #: ../../source/configuration/settings.rst:2126 msgid "disable_image" msgstr "" #: ../../source/configuration/settings.rst:2132 msgid "" "This setting disables Images as a valid boot source for launching instances. " "Image sources won't show up in the Launch Instance modal." msgstr "" #: ../../source/configuration/settings.rst:2136 msgid "disable_instance_snapshot" msgstr "" #: ../../source/configuration/settings.rst:2142 msgid "" "This setting disables Snapshots as a valid boot source for launching " "instances. Snapshots sources won't show up in the Launch Instance modal." msgstr "" #: ../../source/configuration/settings.rst:2146 msgid "disable_volume" msgstr "" #: ../../source/configuration/settings.rst:2152 msgid "" "This setting disables Volumes as a valid boot source for launching instances." " Volumes sources won't show up in the Launch Instance modal." msgstr "" #: ../../source/configuration/settings.rst:2156 msgid "disable_volume_snapshot" msgstr "" #: ../../source/configuration/settings.rst:2162 msgid "" "This setting disables Volume Snapshots as a valid boot source for launching " "instances. Volume Snapshots sources won't show up in the Launch Instance " "modal." msgstr "" #: ../../source/configuration/settings.rst:2166 msgid "enable_scheduler_hints" msgstr "" #: ../../source/configuration/settings.rst:2172 msgid "" "This setting specifies whether or not Scheduler Hints can be provided when " "launching an instance." msgstr "" #: ../../source/configuration/settings.rst:2176 msgid "LAUNCH_INSTANCE_LEGACY_ENABLED" msgstr "" #: ../../source/configuration/settings.rst:2182 msgid "The default value for this setting has been changed to ``False``" msgstr "" #: ../../source/configuration/settings.rst:2186 msgid "This setting enables the Python Launch Instance workflow." msgstr "" #: ../../source/configuration/settings.rst:2190 msgid "" "It is possible to run both the AngularJS and Python workflows " "simultaneously, so the other may be need to be toggled with " "`LAUNCH_INSTANCE_NG_ENABLED`_" msgstr "" #: ../../source/configuration/settings.rst:2194 msgid "LAUNCH_INSTANCE_NG_ENABLED" msgstr "" #: ../../source/configuration/settings.rst:2200 msgid "The default value for this setting has been changed to ``True``" msgstr "" #: ../../source/configuration/settings.rst:2204 msgid "This setting enables the AngularJS Launch Instance workflow." msgstr "" #: ../../source/configuration/settings.rst:2208 msgid "" "It is possible to run both the AngularJS and Python workflows " "simultaneously, so the other may be need to be toggled with " "`LAUNCH_INSTANCE_LEGACY_ENABLED`_" msgstr "" #: ../../source/configuration/settings.rst:2212 msgid "OPENSTACK_ENABLE_PASSWORD_RETRIEVE" msgstr "" #: ../../source/configuration/settings.rst:2216 msgid "Default: ``\"False\"``" msgstr "" #: ../../source/configuration/settings.rst:2218 msgid "" "When set, enables the instance action \"Retrieve password\" allowing " "password retrieval from metadata service." msgstr "" #: ../../source/configuration/settings.rst:2222 msgid "OPENSTACK_HYPERVISOR_FEATURES" msgstr "" #: ../../source/configuration/settings.rst:2228 msgid "" "``can_set_mount_point`` and ``can_set_password`` now default to ``False``" msgstr "" #: ../../source/configuration/settings.rst:2241 msgid "" "A dictionary containing settings which can be used to identify the " "capabilities of the hypervisor for Nova." msgstr "" #: ../../source/configuration/settings.rst:2244 msgid "" "The Xen Hypervisor has the ability to set the mount point for volumes " "attached to instances (other Hypervisors currently do not). Setting " "``can_set_mount_point`` to ``True`` will add the option to set the mount " "point from the UI." msgstr "" #: ../../source/configuration/settings.rst:2249 msgid "" "Setting ``can_set_password`` to ``True`` will enable the option to set an " "administrator password when launching or rebuilding an instance." msgstr "" #: ../../source/configuration/settings.rst:2252 msgid "" "Setting ``requires_keypair`` to ``True`` will require users to select a key " "pair when launching an instance." msgstr "" #: ../../source/configuration/settings.rst:2255 msgid "" "Setting ``enable_quotas`` to ``False`` will make Horizon treat all Nova " "quotas as disabled, thus it won't try to modify them. By default, quotas are " "enabled." msgstr "" #: ../../source/configuration/settings.rst:2260 msgid "OPENSTACK_INSTANCE_RETRIEVE_IP_ADDRESSES" msgstr "" #: ../../source/configuration/settings.rst:2266 msgid "" "This settings controls whether IP addresses of servers are retrieved from " "neutron in the project instance table. Setting this to ``False`` may " "mitigate a performance issue in the project instance table in large " "deployments." msgstr "" #: ../../source/configuration/settings.rst:2270 msgid "" "If your deployment has no support of floating IP like provider network " "scenario, you can set this to ``False`` in most cases. If your deployment " "supports floating IP, read the detail below and understand the under-the-" "hood before setting this to ``False``." msgstr "" #: ../../source/configuration/settings.rst:2275 msgid "" "Nova has a mechanism to cache network info but it is not fast enough in some " "cases. For example, when a user associates a floating IP or updates an IP " "address of an server port, it is not reflected to the nova network info " "cache immediately. This means an action which a user makes from the horizon " "instance table is not reflected into the table content just after the action." " To avoid this, horizon retrieves IP address info from neutron when " "retrieving a list of servers from nova." msgstr "" #: ../../source/configuration/settings.rst:2283 msgid "" "On the other hand, this operation requires a full list of neutron ports and " "can potentially lead to a performance issue in large deployments (`bug " "1722417 `__). This issue " "can be avoided by skipping querying IP addresses to neutron and setting this " "to ``False`` achieves this. Note that when disabling the query to neutron it " "takes some time until associated floating IPs are visible in the project " "instance table and users may reload the table to check them." msgstr "" #: ../../source/configuration/settings.rst:2293 msgid "OPENSTACK_NOVA_EXTENSIONS_BLACKLIST" msgstr "" #: ../../source/configuration/settings.rst:2299 msgid "" "Ignore all listed Nova extensions, and behave as if they were unsupported. " "Can be used to selectively disable certain costly extensions for performance " "reasons." msgstr "" #: ../../source/configuration/settings.rst:2304 msgid "Swift" msgstr "" #: ../../source/configuration/settings.rst:2307 msgid "SWIFT_FILE_TRANSFER_CHUNK_SIZE" msgstr "" #: ../../source/configuration/settings.rst:2311 msgid "Default: ``512 * 1024``" msgstr "" #: ../../source/configuration/settings.rst:2313 msgid "" "This setting specifies the size of the chunk (in bytes) for downloading " "objects from Swift. Do not make it very large (higher than several dozens of " "Megabytes, exact number depends on your connection speed), otherwise you may " "encounter socket timeout. The default value is 524288 bytes (or 512 " "Kilobytes)." msgstr "" #: ../../source/configuration/settings.rst:2319 msgid "Django Settings" msgstr "" #: ../../source/configuration/settings.rst:2323 msgid "" "This is not meant to be anywhere near a complete list of settings for Django." " You should always consult the `upstream documentation `_, especially with regards to " "deployment considerations and security best-practices." msgstr "" #: ../../source/configuration/settings.rst:2329 msgid "ADD_INSTALLED_APPS" msgstr "" #: ../../source/configuration/settings.rst:2335 msgid "" "`Django's INSTALLED_APPS documentation `_" msgstr "" #: ../../source/configuration/settings.rst:2338 msgid "" "A list of Django applications to be prepended to the ``INSTALLED_APPS`` " "setting. Allows extending the list of installed applications without having " "to override it completely." msgstr "" #: ../../source/configuration/settings.rst:2343 msgid "ALLOWED_HOSTS" msgstr "" #: ../../source/configuration/settings.rst:2349 msgid "" "`Django's ALLOWED_HOSTS documentation `_" msgstr "" #: ../../source/configuration/settings.rst:2352 msgid "Default: ``['localhost']``" msgstr "" #: ../../source/configuration/settings.rst:2354 msgid "" "This list should contain names (or IP addresses) of the host running the " "dashboard; if it's being accessed via name, the DNS name (and probably short-" "name) should be added, if it's accessed via IP address, that should be added." " The setting may contain more than one entry." msgstr "" #: ../../source/configuration/settings.rst:2361 msgid "" "ALLOWED_HOSTS is required. If Horizon is running in production (DEBUG is " "False), set this with the list of host/domain names that the application can " "serve. For more information see `Django's Allowed Hosts documentation `_" msgstr "" #: ../../source/configuration/settings.rst:2369 msgid "DEBUG" msgstr "" #: ../../source/configuration/settings.rst:2375 msgid "" "`Django's DEBUG documentation `_" msgstr "" #: ../../source/configuration/settings.rst:2380 msgid "" "Controls whether unhandled exceptions should generate a generic 500 response " "or present the user with a pretty-formatted debug information page." msgstr "" #: ../../source/configuration/settings.rst:2383 msgid "When set, `CACHED_TEMPLATE_LOADERS`_ will not be cached." msgstr "" #: ../../source/configuration/settings.rst:2385 msgid "" "This setting should **always** be set to ``False`` for production " "deployments as the debug page can display sensitive information to users and " "attackers alike." msgstr "" #: ../../source/configuration/settings.rst:2390 msgid "SECRET_KEY" msgstr "" #: ../../source/configuration/settings.rst:2396 msgid "" "`Django's SECRET_KEY documentation `_" msgstr "" #: ../../source/configuration/settings.rst:2399 msgid "" "This should absolutely be set to a unique (and secret) value for your " "deployment. Unless you are running a load-balancer with multiple Horizon " "installations behind it, each Horizon instance should have a unique secret " "key." msgstr "" #: ../../source/configuration/settings.rst:2405 msgid "Setting a custom secret key:" msgstr "" #: ../../source/configuration/settings.rst:2407 msgid "" "You can either set it to a specific value or you can let Horizon generate a " "default secret key that is unique on this machine, regardless of the amount " "of Python WSGI workers (if used behind Apache+mod_wsgi). However, there may " "be situations where you would want to set this explicitly, e.g. when " "multiple dashboard instances are distributed on different machines (usually " "behind a load-balancer). Either you have to make sure that a session gets " "all requests routed to the same dashboard instance or you set the same " "SECRET_KEY for all of them." msgstr "" #: ../../source/configuration/settings.rst:2423 msgid "" "The ``local_settings.py.example`` file includes a quick-and-easy way to " "generate a secret key for a single installation." msgstr "" #: ../../source/configuration/settings.rst:2427 msgid "STATIC_ROOT" msgstr "" #: ../../source/configuration/settings.rst:2433 msgid "" "`Django's STATIC_ROOT documentation `_" msgstr "" #: ../../source/configuration/settings.rst:2436 msgid "Default: ``/static``" msgstr "" #: ../../source/configuration/settings.rst:2438 msgid "" "The absolute path to the directory where static files are collected when " "collectstatic is run." msgstr "" #: ../../source/configuration/settings.rst:2442 msgid "STATIC_URL" msgstr "" #: ../../source/configuration/settings.rst:2448 msgid "" "`Django's STATIC_URL documentation `_" msgstr "" #: ../../source/configuration/settings.rst:2451 msgid "Default: ``/static/``" msgstr "" #: ../../source/configuration/settings.rst:2453 msgid "URL that refers to files in `STATIC_ROOT`_." msgstr "" #: ../../source/configuration/settings.rst:2455 msgid "By default this value is ``WEBROOT/static/``." msgstr "" #: ../../source/configuration/settings.rst:2457 msgid "" "This value can be changed from the default. When changed, the alias in your " "webserver configuration should be updated to match." msgstr "" #: ../../source/configuration/settings.rst:2462 msgid "The value for STATIC_URL must end in '/'." msgstr "" #: ../../source/configuration/settings.rst:2464 msgid "" "This value is also available in the scss namespace with the variable name " "$static_url. Make sure you run ``python manage.py collectstatic`` and " "``python manage.py compress`` after any changes to this value in settings.py." "" msgstr "" #: ../../source/configuration/settings.rst:2469 msgid "TEMPLATES" msgstr "" #: ../../source/configuration/settings.rst:2475 msgid "" "`Django's TEMPLATES documentation `_" msgstr "" #: ../../source/configuration/settings.rst:2478 msgid "" "Horizon's usage of the ``TEMPLATES`` involves 3 further settings below; it " "is generally advised to use those before attempting to alter the " "``TEMPLATES`` setting itself." msgstr "" #: ../../source/configuration/settings.rst:2483 msgid "ADD_TEMPLATE_DIRS" msgstr "" #: ../../source/configuration/settings.rst:2487 msgid "" "Template directories defined here will be added to ``DIRS`` option of Django " "``TEMPLATES`` setting. It is useful when you would like to load deployment-" "specific templates." msgstr "" #: ../../source/configuration/settings.rst:2492 msgid "ADD_TEMPLATE_LOADERS" msgstr "" #: ../../source/configuration/settings.rst:2496 msgid "" "Template loaders defined here will be loaded at the end of " "`TEMPLATE_LOADERS`_, after the `CACHED_TEMPLATE_LOADERS`_ and will never " "have a cached output." msgstr "" #: ../../source/configuration/settings.rst:2500 msgid "CACHED_TEMPLATE_LOADERS" msgstr "" #: ../../source/configuration/settings.rst:2504 msgid "" "Template loaders defined here will have their output cached if `DEBUG`_ is " "set to ``False``." msgstr "" #: ../../source/configuration/settings.rst:2508 msgid "TEMPLATE_LOADERS" msgstr "" #: ../../source/configuration/settings.rst:2512 msgid "" "These template loaders will be the first loaders and get loaded before the " "CACHED_TEMPLATE_LOADERS. Use ADD_TEMPLATE_LOADERS if you want to add loaders " "at the end and not cache loaded templates. After the whole settings process " "has gone through, TEMPLATE_LOADERS will be:" msgstr "" #: ../../source/configuration/settings.rst:2524 msgid "LOCALE_PATHS" msgstr "" #: ../../source/configuration/settings.rst:2530 msgid "" "`Django's LOCALE_PATHS documentation `_" msgstr "" #: ../../source/configuration/settings.rst:2533 msgid "" "Default: Absolute paths for `horizon/locale`, `openstack_auth/locale` and " "`openstack_dashboard/locale` directories." msgstr "" #: ../../source/configuration/settings.rst:2536 msgid "" "Django uses relative paths by default so it causes localization issues " "depending on your runtime settings. To avoid this we recommend to use " "absolute paths for directories with locales." msgstr "" #: ../../source/configuration/settings.rst:2541 msgid "Other Settings" msgstr "" #: ../../source/configuration/settings.rst:2544 msgid "KUBECONFIG_ENABLED" msgstr "" #: ../../source/configuration/settings.rst:2550 msgid "" "Kubernetes clusters can use Keystone as an external identity provider. " "Horizon can generate a ``kubeconfig`` file from the application credentials " "control panel which can be used for authenticating with a Kubernetes cluster." " This setting enables this behavior." msgstr "" #: ../../source/configuration/settings.rst:2557 msgid "" "`KUBECONFIG_KUBERNETES_URL`_ and `KUBECONFIG_CERTIFICATE_AUTHORITY_DATA`_ to " "provide parameters for the ``kubeconfig`` file." msgstr "" #: ../../source/configuration/settings.rst:2561 msgid "KUBECONFIG_KUBERNETES_URL" msgstr "" #: ../../source/configuration/settings.rst:2565 #: ../../source/configuration/settings.rst:2579 msgid "Default: ``\"\"``" msgstr "" #: ../../source/configuration/settings.rst:2567 msgid "" "A Kubernetes API endpoint URL to be included in the generated ``kubeconfig`` " "file." msgstr "" #: ../../source/configuration/settings.rst:2572 #: ../../source/configuration/settings.rst:2586 msgid "`KUBECONFIG_ENABLED`_ to enable the ``kubeconfig`` file generation." msgstr "" #: ../../source/configuration/settings.rst:2575 msgid "KUBECONFIG_CERTIFICATE_AUTHORITY_DATA" msgstr "" #: ../../source/configuration/settings.rst:2581 msgid "" "Kubernetes API endpoint certificate authority data to be included in the " "generated ``kubeconfig`` file." msgstr "" #: ../../source/configuration/themes.rst:3 msgid "Themes" msgstr "" #: ../../source/configuration/themes.rst:5 msgid "" "As of the Kilo release, styling for the OpenStack Dashboard can be altered " "through the use of a theme. A theme is a directory containing a ``_variables." "scss`` file to override the color codes used throughout the SCSS and a " "``_styles.scss`` file with additional styles to load after dashboard styles " "have loaded." msgstr "" #: ../../source/configuration/themes.rst:11 msgid "" "As of the Mitaka release, Horizon can be configured to run with multiple " "themes available at run time. It uses a browser cookie to allow users to " "toggle between the configured themes. By default, Horizon is configured " "with the two standard themes available: 'default' and 'material'." msgstr "" #: ../../source/configuration/themes.rst:16 msgid "" "To configure or alter the available themes, set ``AVAILABLE_THEMES`` in " "``local_settings.py`` to a list of tuples, such that ``('name', 'label', " "'path')``" msgstr "" #: ../../source/configuration/themes.rst:21 msgid "The key by which the theme value is stored within the cookie" msgstr "" #: ../../source/configuration/themes.rst:21 msgid "``name``" msgstr "" #: ../../source/configuration/themes.rst:24 msgid "The label shown in the theme toggle under the User Menu" msgstr "" #: ../../source/configuration/themes.rst:24 msgid "``label``" msgstr "" #: ../../source/configuration/themes.rst:27 msgid "" "The directory location for the theme. The path must be relative to the " "``openstack_dashboard`` directory or an absolute path to an accessible " "location on the file system" msgstr "" #: ../../source/configuration/themes.rst:29 msgid "``path``" msgstr "" #: ../../source/configuration/themes.rst:31 msgid "" "To use a custom theme, set ``AVAILABLE_THEMES`` in ``local_settings.py`` to " "a list of themes. If you wish to run in a mode similar to legacy Horizon, " "set ``AVAILABLE_THEMES`` with a single tuple, and the theme toggle will not " "be available at all through the application to allow user configuration " "themes." msgstr "" #: ../../source/configuration/themes.rst:36 msgid "For example, a configuration with multiple themes::" msgstr "" #: ../../source/configuration/themes.rst:43 msgid "A configuration with a single theme::" msgstr "" #: ../../source/configuration/themes.rst:49 msgid "" "Both the Dashboard custom variables and Bootstrap variables can be " "overridden. For a full list of the Dashboard SCSS variables that can be " "changed, see the variables file at ``openstack_dashboard/static/dashboard/" "scss/_variables.scss``." msgstr "" #: ../../source/configuration/themes.rst:54 msgid "" "In order to build a custom theme, both ``_variables.scss`` and ``_styles." "scss`` are required and ``_variables.scss`` must provide all the default " "Bootstrap variables." msgstr "" #: ../../source/configuration/themes.rst:59 msgid "Inherit from an Existing Theme" msgstr "" #: ../../source/configuration/themes.rst:61 msgid "" "Custom themes must implement all of the Bootstrap variables required by " "Horizon in ``_variables.scss`` and ``_styles.scss``. To make this easier, " "you can inherit the variables needed in the default theme and only override " "those that you need to customize. To inherit from the default theme, put " "this in your theme's ``_variables.scss``::" msgstr "" #: ../../source/configuration/themes.rst:69 msgid "" "Once you have made your changes you must re-generate the static files with:" msgstr "" #: ../../source/configuration/themes.rst:75 msgid "" "By default, all of the themes configured by ``AVAILABLE_THEMES`` setting are " "collected by horizon during the `collectstatic` process. By default, the " "themes are collected into the dynamic `static/themes` directory, but this " "location can be customized via the ``local_settings.py`` variable: " "``THEME_COLLECTION_DIR``" msgstr "" #: ../../source/configuration/themes.rst:80 msgid "" "Once collected, any theme configured via ``AVAILABLE_THEMES`` is available " "to inherit from by importing its variables and styles from its collection " "directory. The following is an example of inheriting from the material " "theme::" msgstr "" #: ../../source/configuration/themes.rst:87 msgid "" "All themes will need to be configured in ``AVAILABLE_THEMES`` to allow " "inheritance. If you wish to inherit from a theme, but not show that theme " "as a selectable option in the theme picker widget, then simply configure the " "``SELECTABLE_THEMES`` to exclude the parent theme. ``SELECTABLE_THEMES`` " "must be of the same format as ``AVAILABLE_THEMES``. It defaults to " "``AVAILABLE_THEMES`` if it is not set explicitly." msgstr "" #: ../../source/configuration/themes.rst:95 msgid "Bootswatch" msgstr "" #: ../../source/configuration/themes.rst:97 msgid "" "Horizon packages the Bootswatch SCSS files for use with its ``material`` " "theme. Because of this, it is simple to use an existing Bootswatch theme as " "a base. This is due to the fact that Bootswatch is loaded as a 3rd party " "static asset, and therefore is automatically collected into the `static` " "directory in `/horizon/lib/`. The following is an example of how to inherit " "from Bootswatch's ``darkly`` theme::" msgstr "" #: ../../source/configuration/themes.rst:109 msgid "Organizing Your Theme Directory" msgstr "" #: ../../source/configuration/themes.rst:111 msgid "" "A custom theme directory can be organized differently, depending on the " "level of customization that is desired, as it can include static files as " "well as Django templates. It can include special subdirectories that will " "be used differently: ``static``, ``templates`` and ``img``." msgstr "" #: ../../source/configuration/themes.rst:117 msgid "The ``static`` Folder" msgstr "" #: ../../source/configuration/themes.rst:119 msgid "" "If the theme folder contains a sub-folder called ``static``, then that sub " "folder will be used as the **static root of the theme**. I.e., Horizon will " "look in that sub-folder for the _variables.scss and _styles.scss files. The " "contents of this folder will also be served up at ``/static/custom``." msgstr "" #: ../../source/configuration/themes.rst:125 msgid "The ``templates`` Folder" msgstr "" #: ../../source/configuration/themes.rst:127 msgid "" "If the theme folder contains a sub-folder ``templates``, then the path to " "that sub-folder will be prepended to the ``TEMPLATE_DIRS`` tuple to allow " "for theme specific template customizations." msgstr "" #: ../../source/configuration/themes.rst:132 msgid "Using the ``templates`` Folder" msgstr "" #: ../../source/configuration/themes.rst:134 msgid "" "Any Django template that is used in Horizon can be overridden through a " "theme. This allows highly customized user experiences to exist within the " "scope of different themes. Any template that is overridden must adhere to " "the same directory structure that the extending template expects." msgstr "" #: ../../source/configuration/themes.rst:139 msgid "" "For example, if you wish to customize the sidebar, Horizon expects the " "template to live at ``horizon/_sidebar.html``. You would need to duplicate " "that directory structure under your templates directory, such that your " "override would live at ``{ theme_path }/templates/horizon/_sidebar.html``." msgstr "" #: ../../source/configuration/themes.rst:145 msgid "The ``img`` Folder" msgstr "" #: ../../source/configuration/themes.rst:147 msgid "" "If the static root of the theme folder contains an ``img`` directory, then " "all images that make use of the {% themable_asset %} templatetag can be " "overridden." msgstr "" #: ../../source/configuration/themes.rst:151 msgid "" "These assets include logo.svg, splash-logo.svg and favicon.ico, however " "overriding the SVG/GIF assets used by Heat within the `dashboard/img` folder " "is not currently supported." msgstr "" #: ../../source/configuration/themes.rst:156 msgid "Customizing the Logo" msgstr "" #: ../../source/configuration/themes.rst:159 msgid "Simple" msgstr "" #: ../../source/configuration/themes.rst:161 msgid "" "If you wish to customize the logo that is used on the splash screen or in " "the top navigation bar, then you need to create an ``img`` directory under " "your theme's static root directory and place your custom ``logo.svg`` or " "``logo-splash.svg`` within it." msgstr "" #: ../../source/configuration/themes.rst:166 msgid "" "If you wish to override the ``logo.svg`` using the previous method, and if " "the image used is larger than the height of the top navigation, then the " "image will be constrained to fit within the height of nav. You can " "customize the height of the top navigation bar by customizing the SCSS " "variable: ``$navbar-height``. If the image's height is smaller than the " "navbar height, then the image will retain its original resolution and size, " "and simply be centered vertically in the available space." msgstr "" #: ../../source/configuration/themes.rst:174 msgid "" "Prior to the Kilo release the images files inside of Horizon needed to be " "replaced by your images files or the Horizon stylesheets needed to be " "altered to point to the location of your image." msgstr "" #: ../../source/configuration/themes.rst:179 msgid "Advanced" msgstr "" #: ../../source/configuration/themes.rst:181 msgid "" "If you need to do more to customize the logo than simply replacing the " "existing PNG, then you can also override the _brand.html through a custom " "theme. To use this technique, simply add a ``templates/header/_brand.html`` " "to the root of your custom theme, and add markup directly to the file. For " "an example of how to do this, see ``openstack_dashboard/themes/material/" "templates/header/_brand.html``." msgstr "" #: ../../source/configuration/themes.rst:188 msgid "" "The splash / login panel can also be customized by adding ``templates/auth/" "_splash.html``. See ``openstack_dashboard/themes/material/templates/auth/" "_splash.html`` for an example." msgstr ""