summaryrefslogtreecommitdiff
path: root/openstack_dashboard/management
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Address RemovedInDjango40Warning (2)"Zuul2022-03-031-1/+1
|\
| * Address RemovedInDjango40Warning (2)Akihiro Motoki2022-02-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | django.utils.translation.ugettext(), ugettext_lazy(), ugettext_noop(), ungettext(), and ungettext_lazy() are deprecated in favor of the functions that they’re aliases for: django.utils.translation.gettext(), gettext_lazy(), gettext_noop(), ngettext(), and ngettext_lazy(). https://docs.djangoproject.com/en/4.0/releases/3.0/#id3 Change-Id: I77878f84e9d10cf6a136dada81eabf4e18676250
* | Merge "Replace deprecated imp module"Zuul2022-02-091-10/+3
|\ \ | |/ |/|
| * Replace deprecated imp moduleTakashi Kajinami2022-02-081-10/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The imp module is deprecated since Python 3.4[1] in favor of the new importlib module. This change replaces usage of that deprecated module. [1] https://docs.python.org/3/library/imp.html NOTES: - This change simplifies the logic, assuming the DJANGO_SETTINGS_MODULE environment should be a module name. (The previous implementation eventually raises an exception if the name is not a module name but anything else like a class name.) - The imp.find_module method raises ImportError when the module is not found. This means the previous implementation never returns sys.path[0]. If the module is found the value is replaced and if it is not found then the method doesn't return any value but raises an exception. Change-Id: I798f345e729ae974917872ba1f2e43205a660c45
* | Drop Django based implementation of launch instancemanchandavishal2022-01-241-13/+0
|/ | | | | | | | | | | | | | | | | | | | | horizon already deprecated launch instance Django based implementation in the wallaby cycle [1]. This patch remove code for launch instance Django based implementation as angular based implementation is the default one from long and all features gaps between angular and Django implementation is closed. It also moves SetAdvanced step code to ``resize_instance.py`` as ``workflows/create_instance.py`` file is deleted and remove server_group option from Advanced Options of resizing instance action because "server_group" is not required while resizing an instance as per nova-api reference [2]. Closes-Bug: #1869222 [1] https://review.opendev.org/c/openstack/horizon/+/779125 [2] https://docs.openstack.org/api-ref/compute/?expanded=resize-server-resize-action-detail#resize-server-resize-action Change-Id: I5e01cd81f309491f1a58ea93911030366a86e3c7
* Deprecate Django launch instance formAkihiro Motoki2021-03-091-0/+13
| | | | | | | | | As discussed in the horizon meeting, we think that feature gaps between the two implementations have been closed. Let's mark the Django version as deprecated and gather more attentions from operators. Change-Id: I55379c0897bad46decfabb443afe9439a31a3164
* Merge "Support policy-in-code and deprecated policy"Zuul2021-03-041-0/+82
|\
| * Support policy-in-code and deprecated policyAkihiro Motoki2021-01-271-0/+82
| | | | | | | | | | | | | | | | | | | | | | | | This commit allows horizon to handle deprecated policy rules. The approach is explained in the document updated by this change. oslo.policy requirement is updated. oslo.policy 3.2.0 is chosen just because it is the first release in Victoria cycle. requirements.txt and lower-constraints.txt are updated accordingly including oslo.policy dependencies. Change-Id: If5059d03f6bd7e94796065aa1b51c0c23ac85f5e
* | Merge "Drop translation marker from upgrade-check help"Zuul2021-03-041-1/+1
|\ \
| * | Drop translation marker from upgrade-check helpAkihiro Motoki2021-02-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | When the translation marker _(..) is used in the "help" attribute of a Django management command, --help option fails. It seems translation marker is not evaluated and directly passed to argparse library. We don't translate Django management commands, so we can safely drop it. Change-Id: Iaacb86e5451ee7271de797a0184a6456f5b37eb6
* | | Merge "Update upgrade_check to discover dashboard settings automatically"Zuul2021-03-041-101/+11
|\ \ \
| * | | Update upgrade_check to discover dashboard settings automaticallyAkihiro Motoki2021-02-181-101/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously upgrade_check maintain a hard-coded list for known settings, so we easily miss new horizon settings. Almost all settings are now defined in openstack_dashboard/defaults.py and we can know dashboard settings from here. This commit retrieves the known dashboard settings from openstack_dashboard/defaults.py. After this change, we still need to maintain Django and related Django modules. This commit also adds new settings added in Django and Django compressor recently. Change-Id: I8b8c6f7ef334c24992b39a848833c05738f8926b
* | | | Merge "upgrade_check: Convert KNOWN_SETTINGS into one-per-line style"Zuul2021-03-041-109/+284
|\ \ \ \ | |/ / /
| * | | upgrade_check: Convert KNOWN_SETTINGS into one-per-line styleAkihiro Motoki2021-02-181-109/+284
| |/ / | | | | | | | | | | | | | | | | | | This is a preparation for the next commit which touches KWNON_SETTINGS. One entry per line would improve the readability of the next change a lot. Change-Id: I835a3216f237ca09183206012137f58d2964bbc0
* | | Merge "Rename zh-cn and zh-tw translations to zh-hans and zh-hant"Zuul2021-03-041-0/+16
|\ \ \ | |/ / |/| |
| * | Rename zh-cn and zh-tw translations to zh-hans and zh-hantAkihiro Motoki2021-02-181-0/+16
| |/ | | | | | | | | | | | | | | | | | | See http://lists.openstack.org/pipermail/openstack-discuss/2021-February/020169.html horizon/management/commands/pull_catalog.py is updated accordingly. It turns out it does not work with python3, so it is fixed too. Depends-On: https://review.opendev.org/c/openstack/openstack-zuul-jobs/+/773689 Change-Id: I6575f1f032a06365953dbfe314abfbf9a31817cd
* | Merge "Add openstack_auth to translation-related commands"Zuul2021-02-172-3/+3
|\ \
| * | Add openstack_auth to translation-related commandsAkihiro Motoki2021-02-122-3/+3
| |/ | | | | | | | | | | | | | | | | | | | | openstack_auth was missing in pull_catalog and extract_messages commands in manage.py. It is just because we forgot add it when openstack_auth was merged from django-openstack-auth into horizon. update_catalog did not run with python3 as write_po assumes fileobj is opened as binary mode. We need to open a POT file with binary mode. Change-Id: Ifa1c07c46d1081a299b030e523713e73b41faf19
* | Drop the usage of unicode prefix from unicode stringsYuehuiLei2021-02-122-7/+7
|/ | | | | | | | All strings are considered as unicode strings in python 3, so we no longer need "u" prefix (u'...'). Co-Authored-By: Akihiro Motoki <amotoki@gmail.com> Change-Id: I796d2fcdca066475bbf29d25cbf2aa67b2b2178b
* Use python3-style super()Akihiro Motoki2020-10-151-1/+1
| | | | | | | | | | | | | | | | | In python3, super() does not always require a class and self reference. In other words, super() is enough for most cases. This is much simpler and it is time to switch it to the newer style. pylint provides a check for this. Let's enable 'super-with-arguments' check. NOTE: _prepare_mappings() method of FormRegion in openstack_dashboard/test/integration_tests/regions/forms.py is refactored. super() (without explicit class and self referece) does not work when a subclass method calls a same method in a parent class multiple times. It looks better to prepare a separate method to provide a common logic. Change-Id: Id9512a14be9f20dbd5ebd63d446570c7b7c825ff
* pylint: Address no-else-return warningAkihiro Motoki2020-09-271-5/+2
| | | | | | | This pylint check 'no-else-return' might be debatable. but as far as I checked it works in most cases. Change-Id: Ie8574d4a529454c6e050fa62a7a17ea097d00240
* Merge "Fix django-compress caching issues"Zuul2020-06-251-0/+24
|\
| * Fix django-compress caching issuesIvan Kolodyazhny2020-06-151-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | django-compress doesn't work well with cache. If horizon is deployed in a containarized environment with pre-built static in images, django-compress tries to load old templates from cache. This patch introduces following changes: * update_angular_template_hash uses the correct Django cache backend now * fixed cache cleanup for memcached backend * added clean_angular_template_cache management command to clean cache manually without executing heavy 'compress' command. Closes-Bug: #1874657 Change-Id: If1fd61fa2e4b36e22797b0f54ac067a2a937f369
* | Stop to use the __future__ module.Hervé Beraud2020-06-033-7/+0
|/ | | | | | | | | | | | | | | | | | | | | | | | | | The __future__ module [1] was used in this context to ensure compatibility between python 2 and python 3. We previously dropped the support of python 2.7 [2] and now we only support python 3 so we don't need to continue to use this module and the imports listed below. Imports commonly used and their related PEPs: - `division` is related to PEP 238 [3] - `print_function` is related to PEP 3105 [4] - `unicode_literals` is related to PEP 3112 [5] - `with_statement` is related to PEP 343 [6] - `absolute_import` is related to PEP 328 [7] [1] https://docs.python.org/3/library/__future__.html [2] https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html [3] https://www.python.org/dev/peps/pep-0238 [4] https://www.python.org/dev/peps/pep-3105 [5] https://www.python.org/dev/peps/pep-3112 [6] https://www.python.org/dev/peps/pep-0343 [7] https://www.python.org/dev/peps/pep-0328 Change-Id: Ic03754dcaaa4f1c0018294aa52bb05d956aa5d10
* Remove six usage from openstack_dashboard packageIvan Kolodyazhny2020-01-152-9/+1
| | | | | | | | | | | | | | | We don't support Python 2 anymore so we don't need this compatibility library. six.reraise usages are left as is until it'll be moved to some base lib like oslo.utils to not re-implenent this method in Horizon. This patch also removes Python2-specific base test case methods assertItemsEqual and assertNotRegexpMatches in flavor of new Python 3 analogues. Change-Id: I26a59176be9e9f213128e4945a58b9459334b626
* Use the python real executableYves-Gwenael Bourhis2019-07-172-4/+27
| | | | | | | | Use the real python executable as shebang Use exec instead of execfile if using python 3 Change-Id: I8acea40851c7e9dc248751be967859b2b9430af7 Closes-Bug: #1836580
* Remove deprecated SHOW_KEYSTONE_V2_RC config optionIvan Kolodyazhny2019-05-141-1/+1
| | | | | | | | | SHOW_KEYSTONE_V2_RC is deprecated since Stein release and it's safe to remove it now. Keystone v2 support removal will be implemented in a follow up patch. Change-Id: Ib3098789a3aef47f4f4b84fd56f03376ce2ea96f
* Remove ENABLE_FLAVOR_EDIT config optionIvan Kolodyazhny2019-05-041-1/+1
| | | | | | | ENABLE_FLAVOR_EDIT is deprecated since Pike release and is not used anywhere. Change-Id: I06d5252c8f7bd955025587393f5d8ff00fe01c3b
* Add a upgrade_check management commandRadomir Dopieralski2019-03-011-0/+233
| | | | | | | | | | | | | | This command checks the configuration for invalid and deprecated settings, as described in https://governance.openstack.org/tc/goals/stein/upgrade-checkers.html There is also a script in tools/find_settings.py that scans all python files for the potential new settings, which is supposed to make it easier to update the lists that the checks use. Change-Id: Ie85cf4be3da1ab446c10883a4580e20ea154b67c Story: 2003657 Task: 26132
* pylint: fix import-errorAkihiro Motoki2019-01-161-0/+1
| | | | | | | | It seems pylint cannot handle distutils imports and shows "import-error" error. I believe it sounds reasonable to ignore this case. Change-Id: Ia08b4fbf8c3270aa37cd88967add8258f6b26377
* Bump hacking to 1.1.0Akihiro Motoki2018-11-101-0/+2
| | | | | | | | | | | | | | Fix the following new errors: * E305 expected 2 blank lines after class or function definition, found 1 * E126 continuation line over-indented for hanging indent max_line_length is set to 80 as the default value in pycodestyle is 79 but horizon uses 80 as max_line_length. Ignore W504 and F405 by configurations. Reasons of disabling them are explained as comments in tox.ini. Change-Id: Iee8bcd60c30883fc8c74f08cf20af853cbb5e271
* Create new wsgi.py file and deprecate old fileAdrian Turjak2018-05-151-1/+7
| | | | | | | | | | | | | | | | | | | Django 1.4 stopped creating django.wsgi files and the common practice now for a while has been a wsgi.py since it is actually python code, and should actually be importable. Right now someone has to copy and rename the existing file if they want to use it with a server like gunicorn. This patch adds a new file in location that is importable via python and adds a deprecation log to the old one. This also updates the wsgi generation commands to instead create 'horizon_wsgi.py' and have the apache conf generation also use that or the default wsgi file. Change-Id: I0f8bd16c8973ad23bcd8f73b54584dc69e5aed0c Closes-Bug: #1763204
* Fix python 3 related test failuresAkihiro Motoki2018-03-031-2/+6
| | | | | | | | In Python 3.5 with Django 2.0 env, some tests fail. This commit fixes them. blueprint django2-support Change-Id: Ib5ba46d501956ebc7d4f69f17ee86f44319418d2
* extract_messages, update_catalog: Simplify help messageAkihiro Motoki2017-08-292-11/+25
| | | | | | | | | | | | | | | Previously the help message of update_catalog shows all available languages in the command example. It is difficult to understand what an exact command line is expected. This commit uses metavar to simplify the brief command line and shows available languages in the help text. Similar change is made to 'domain' argument of update_catalog and of extract_messages. Also the default values are added in the help message. Change-Id: I63efea7e368eb1dfaf203ca4c515eb57173b571e
* Merge "Fix pofile for pseudo translations"Jenkins2017-08-211-2/+3
|\
| * Fix pofile for pseudo translationsNick Timkovich2017-08-151-2/+3
| | | | | | | | | | | | | | | | | | | | | | The pofile name in the pseudo translation logic appears to expect the babel.messages object, not the string holding the location of the pofile. Trimmed a string that gettext reacts poorly with when creating pseudo- translations. Change-Id: I811711412d85a989826a946d1d57ed39790e34ed Closes-Bug: 1710003
* | extract_messages: Specify input directoryAkihiro Motoki2017-08-121-2/+3
|/ | | | | | | | | Currently horizon/locale/{django,djangojs}.js contain strings from openstack_dashboard and vice versa. To avoid this, --input-dirs option needs to be passed to python setup.py extract_messages. Change-Id: Iee874616f4c037cc68bc3b0c7d8586d86f7153f4 Closes-Bug: #1710396
* Use WSGIApplicationGroup %{GLOBAL} in mod_wsgi configurationRadomir Dopieralski2017-08-041-1/+1
| | | | | Change-Id: I0633703cef5a225fe8b689017d21aa4f45ecc7cf Closes-bug: #1708655
* Use flake8-import-order pluginAkihiro Motoki2017-07-031-1/+1
| | | | | | | | | | | | In reviews we usually check import grouping but it is boring. By using flake8-import-order plugin, we can avoid this. This flake8 plugin is already used in tempest. It enforces loose checking so it sounds good to use. Note that flake8-import-order version is pinned to avoid unexpected breakage of pep8 job. Change-Id: I8ccd05eb70350a2441cc2a4d1eafc09ee690b83b
* hacking: noqa cleanup in openstack_dashboardAkihiro Motoki2017-03-172-7/+7
| | | | | | | | | | attribute-level imports are not checked by hacking module now. most noqa is used to disable warnings on attribute-level imports. This commit drops noqa for this purpose. After this, there are only 3 noqa under openstack_dashboard/ :) Change-Id: I4a449802f5dbd6e44e4b8b5c378a555d47d9a99f
* Make extract_messages quiet in pep8 testRadomir Dopieralski2017-03-171-3/+5
| | | | | | | | | | | | The additional extract_messages call in the pep8 tox environment generates a lot of meaningless output, that then makes it difficult to spot actual failures and warnings. This patch makes the Django command respect the verbosity setting and call the setup.py command with a quiet flag if low verbosity is requested, considerably decreasing the amount of useless output. It then sets that verbosity to low in the corresponding tox environment. Change-Id: I2976250a23e800fbb582726299670b57199b58a7
* Configuring number of apache processesYves-Gwenael Bourhis2017-01-202-1/+13
| | | | | | | | | By default apache spawns only one process for the wsgi app if not specified. This patch detects the number of CPUS to configure n CPUs +1 processes by default and allows to specify the number of processes explicitly. Change-Id: I684ecd15193cef169d7a86f66a47b7d1d76c1c24 Closes-Bug: #1658048
* Removes unnecessary utf-8 encodingCao Xuan Hoang2016-12-131-1/+0
| | | | | | trivialfix Change-Id: Ia9b35ab6c39cc35c0c3e2b0ebb95930314df43b6
* Refactor tox & update docsRob Cresswell2016-11-302-0/+179
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Updated tox envlist, so just running `tox` from the CLI will now run all voting gate tests - Reduce duplicated definitions and commands - Remove any reliance on run_tests within tox - Removes all doc references to run_tests.sh, and replaces them with their tox equivalent. Where necessary, language around the tox commands has been altered or extended so that it makes sense and is consistent with other parts of the docs. Also adds a new "Test Environment" list to the docs, so that newcomers do not have to piece together CLI commands and their cryptic extensions from tox.ini - Move the inline shell scripting to its own file. Also fixes a bug when passing args, since the logic assumed you were attempting a subset test run (try `tox -e py27 -- --pdb` on master to compare) - Moved translation tooling from run_tests to manage.py, w/ help text and arg restrictions. This is much more flexible so that plugins can use it without having to copy commands, but still defaults to exactly the same parameters/behaviour from run_tests. Docs updated appropriately. - Removed npm/karma strange reliance on either .venv or tox/py27. Now it only uses tox/npm. Change-Id: I883f885bd424955d39ddcfde5ba396a88cfc041e Implements: blueprint enhance-tox Closes-Bug: 1638672
* Use argparse instead of optparseIvan Udovichenko2016-08-092-77/+98
| | | | | | | | | | Use of optparse module is deprecated [1] in Django 1.8 and 1.9 versions and its support has been removed in currently developed version 1.10 [2] [1] https://docs.djangoproject.com/en/1.9/howto/custom-management-commands/#django.core.management.BaseCommand.option_list [2] https://github.com/django/django/commit/6a70cb53971a19f2d9e71d5ee24bfb0e844b4d9d#diff-dfc45ab8548a0777543d12d6e77c9173 Change-Id: I0c7622fce0d5fabce45366d002b5e72e4c170344
* Update WSGI app creation to be compatible with Django 1.7 or greaterYves-Gwenael Bourhis2015-09-211-2/+2
| | | | | | | | | | | | | | This resolves the following error when trying to run Horizon if it has been installed via "django-admin make_web_conf --wgi": AppRegistryNotReady: The translation infrastructure cannot be initialized before the apps registry is ready. Check that you don't make non-lazy gettext calls at import time. and is backwards-compatible with our currently supported versions. Closes-Bug: #1497986 Change-Id: I643058bb82f8e0f11b38ce0dd046773e91e053c3
* Detect apache versionYves-Gwenael Bourhis2015-04-032-2/+49
| | | | | | | | | | | | We try to detect apache's version. Some distributions do not allow launching apache commands (even for detection) if not root, so we gracefully fall back on 2.4 version configuration file We alse add an --apache-version option to force the version in case detection would be wrong. Closes Bug: #1438773 Change-Id: I7d28c319601cf3919068be4ac52dd10f58a82557
* spelling mistakes on display outputs and docsstringsDiego Garcia del Rio2015-02-241-2/+2
| | | | Change-Id: Ic594db332c89e44293f4018e31d3fb47f69e7029
* Added a migrate_settings commandYves-Gwenael Bourhis2015-02-051-0/+229
| | | | | | | | | | This command allows to easily save a diff between local_settings.py and local_settings.py.example to reapply the change when local_settings.py.example changes (per branch switch or updates). implements bp settings-migration-script Change-Id: I2668bbf248434a5d437a5fc46ad07c1a1f29b793
* Fix E128 errors in remaining openstack_dashboard/Akihiro Motoki2014-10-161-2/+2
| | | | | | | E128 continuation line under-indented for visual indent Closes-Bug: #1375929 Change-Id: I2a72313d359bdfe2e2667eba5d3bf9744ec8f60a