Commit Graph

543 Commits

Author SHA1 Message Date
Zhongyue Luo
ff3b05b865 Updates tools/config/README
The sample command line lacks the arguments required for executing
the script. Added the command line used in check_uptodate.sh

Fixes bug #1204204

Change-Id: I475491872577632c472695a3b1089caaf1f27d7c
2013-08-22 10:15:14 +08:00
Pádraig Brady
9304aabeb8 maint: remove redundant default=None for config options
These 73 instances were inconsistent and redundant.

Change-Id: I298f2406535d0805caebdca4f2729d720dd5222f
2013-08-09 02:05:04 +01:00
Jenkins
7f45bacc53 Merge "xenapi: Fix console rotate script" 2013-07-27 14:57:33 +00:00
Alex Gaynor
cd9d8e45c6 Remove the monkey patching of _ into the builtins
Previous _ was monkey patched into builtins whenever
certain modules were imported. This removes that and
simply imports it when it is needed.

Change-Id: I0af2c6d8a230e94440d655d13cab9107ac20d13c
2013-07-26 07:31:17 -07:00
Mate Lakat
f3af80fea6 xenapi: Fix console rotate script
First time run of the console rotate script failed, due to the fact that
the logs did not exist at that time.

Fixes bug 1204440

Change-Id: I49b5569c1ba3349d911caace42685fa0f19a1f66
2013-07-24 10:43:35 +01:00
Zhongyue Luo
ca08c4447a Sync sample config file generator with Oslo
The sample generator tool in Oslo is located in tools/config therefore
this patch moves the files in tools/conf to tools/config. The reason
Oslo chose 'config' is because the generator.py module is located in
the openstack.common.config package and update.py looks for the
corresponding directory in tools when it syncs the 'config' package.

./update.sh --module config --base nova --dest-dir $NOVA_HOME --nodep

Since every thing moved to tools/config, changes had to happen on
the tox.ini file and check_update.sh

Change-Id: Icbd467888cc7f16fa3694ed2b93548d0285461b5
2013-07-23 13:03:34 +08:00
Julien Danjou
923a7eeaa3 Check that the configuration file sample is up to date
We added this check recently to Ceilometer, and it helps a lot to keep this
file always up to date and not falling behind.

Change-Id: I5ad2c6366032a39c2e55dd11a16b9f1780ab9ed0
2013-07-18 20:22:43 +02:00
Jenkins
aae0cf362a Merge "Sync harmless changes from oslo-incubator" 2013-07-15 21:53:29 +00:00
Jenkins
6aa8a2c1dc Merge "Sync install_venv_common from oslo" 2013-07-10 17:35:28 +00:00
Mark McLoughlin
cf5f098e96 Sync harmless changes from oslo-incubator
Includes these commits:

  3948aee Highlighting the deprecated nature of 'log-format'.
  b21fc56 Fix bad default for show_deleted
  d28fa69 python3: Add python3 compatibility.
  0bf03b7 Add network_utils.urlsplit
  e456727 Remove useless logging in networks_utils
  7119e29 Enable hacking H404 test.
  b41862d Use param keyword for docstrings
  2f01388 Use Python 3.x compatible except construct
  e3545f8 Enable hacking H402 test
  484a1df Enable hacking H403 test
  35660da Enable hacking H401 test
  874249e Add support for requirements.txt.
  b135234 Remove the notifier and its dependencies from log.py
  926b3e9 Fixes import order nits

Changes which may look not look so harmless:

 - the common get_admin_context() method is not used by Nova
 - network_utils.urlsplit() is added but not used yet
 - suppport for requirements.txt is added to patch_tox_venv but
   actually it doesn't use those files

Change-Id: I03e67f4648dcaf57620f11e63cfd8e7dbe3665cb
2013-07-09 08:02:19 +01:00
Monty Taylor
b26b0a0860 Sync install_venv_common from oslo
Change-Id: Ib85067b1eb22638fddb8c70c468bfc458c4524d9
2013-07-05 22:21:44 -04:00
Joe Gordon
cf34ee9431 Standardize use of nova.db
We already mostly use:
from nova import db
instead of:
import nova.db.api

So change remaining few cases to use nova.db instead of nova.db.api.
Help make code more uniform and easy to work with.

Change-Id: I6183352c4bbe77b88a5b277788f588b0b48c6476
2013-07-01 16:17:20 +02:00
John Garbutt
0af9b83a6b xenapi: script to rotate the guest logs
Xen will produce the guest logs in a specified directory.

This scripts configures the above logging as expected
by the xapi plugin nova uses to read the logs.
In addition it ensures that any log that grows bigger
than 1MB will be truncated down to 5KB.

Ensuring the log directory is inside a loop back device
of a restricted size, and running this script every
minute using cron, will stop guests from using up
too much Dom0 disk space, and taking out the hypervisor

Part of blueprint xenapi-server-log
Change-Id: I4caa82f4d0620d924e37e3b605cf62b4d5b73570
2013-06-19 14:41:43 +00:00
Zhongyue Luo
c5a805c8c7 Remove bin lookup in conf sample generator
As of 584b2f, the bin directory has been removed.
No longer need to handle bin/

Change-Id: Ic5013cd27d7e420a6a01d207546f7ac0258d62d1
2013-06-14 08:57:58 +08:00
Zhongyue Luo
8781fccec8 Refactor conf sample generator script
Optimized grep calls to not create a grep process per file.
Defined variables to enhance readability.

Change-Id: Ic873f2c3b600a737ce54444dec973720c8813285
2013-06-14 08:54:53 +08:00
Jenkins
2d017a2288 Merge "Enhance group handling in extract_opts" 2013-06-10 22:30:11 +00:00
Julien Danjou
7bf5c10077 Enhance group handling in extract_opts
When there's 2 options with the same name, the script gets confused and
doesn't know in which group it goes. This fixes it, and fixes also the
template generation which is broken for various reasons:

- gettext.install was missing
- nova-rootwrap when imported calls exit() because it doesn't find a valid
  configuration file, so let's exclude it entirely anyway
- eventlet/greendns needs to be ignored for this

Change-Id: Iaa4e9a806e79032ce1675b46a6b7a7628c3eff89
Signed-off-by: Julien Danjou <julien@danjou.info>
2013-06-10 10:19:00 +02:00
Joe Gordon
cd32d6b000 Update analyze_opts to work with new nova.conf sample format
analyze_opts is a tool to help clean out a nova.conf file by checking
for unused and default values set in your nova.conf

Change-Id: I01fff134f8906bff929c55bea8c152653d3e9760
2013-06-07 12:21:21 -07:00
Dirk Mueller
bf68a9592d Improve Python 3.x compatibility
Mechanical translation of the deprecated
except x,y: construct with except x as y:
The latter works with any Python >= 2.6.
Add Hacking check.

Change-Id: I845829d97d379c1cd9b3a77e7e5786586f263b64
2013-06-01 09:57:31 +02:00
Dan Smith
14b66b4ba6 Make pylint ignore nova/objects/
The dynamic nature of our object model is going to cause lots of
heartache for pylint, especially in the actual definitions. This
just excludes that whole directory from pylint's view, which will
limit the heartache to only everywhere objects are actually used.

Related to blueprint unified-object-model

Change-Id: I7f1a4b10b8a5098aab2ab2e8ea5da15ec43f0e2e
2013-05-30 08:08:28 -07:00
Michael Kerrin
c182319039 Fix colorizier thowing exception when a test fails
This failure in colorizier was hidding the actual error
in the tests. If we ran enough tests it also became difficult
to see which test had actually failed.

Fixes: bug 1183602

Change-Id: I806da8f13040b38258de7f3e0fa7b62700bdcead
2013-05-29 13:53:22 +00:00
Ruby Loo
5740920bb3 Rename requires files to standard names.
Rename tools/pip-requires to requirements.txt and tools/test-requires
to test-requirements.txt. These are standard files, and tools in the
general world are growing intelligence about them.

Change-Id: I68ece8406fb1d4e082a42db8e76e17b1aaa7e775
Fixes: bug #1179008
2013-05-22 20:12:08 +00:00
Jeremy Stanley
c39687edb9 Add requests requirement capped <1.2.1.
Fixes bug 1182271.

* tools/pip-requires: The requests library released 1.2.1 today
which brings in sphinx as a new dependency. One of sphinx's
transitive dependencies is on a newer version of jinja than is
provided in the python-jinja2 package on CentOS 6, and since nova's
unit tests allow site-packages in the venv for libvirt support this
cap is needed so that gate-nova-python26 will continue to work.
Because requests is actually a dependency of python-cinderclient but
is only breaking nova's unit tests, it has to be added and come
before python-cinderclient in the pip-requires list. A separate
change has been proposed to openstack/requirements which will need
to merge first. https://review.openstack.org/29850

Change-Id: Ia198192d6231f71272d3aa4f5942828a45d86ceb
2013-05-21 00:33:35 +00:00
Monty Taylor
a333be8fe4 Switch to flake8+hacking.
Remove a bunch of local custom scripts. Replace with configurable
external tools.
Use local hacking checks for nova specifics.

Change-Id: I75a01375ba0ec36d2ff05abc47abe0a3f225eda5
2013-05-17 12:54:12 -07:00
Jenkins
bbf2f7e697 Merge "Copy the RHEL6 eventlet workaround from Oslo" 2013-05-16 14:42:17 +00:00
Russell Bryant
fac5eb871a Sync rpc from oslo.
Sync some trivial Python 3 compatibility and pep8 improvements from oslo.
I just want to have this in sync so that pulling in a feature I'm working
on comes in without unrelated changes

Change-Id: I13fcb0bd538a153b90acf0b18497e335a64dc9d1
2013-05-15 19:12:04 -04:00
Monty Taylor
cbe862603e Transition from openstack.common.setup to pbr.
Declarative approach to packaging, obviates the need for copying files.
Also, removes the need for setup.py to import files from the nova
module.

./run_tests.sh now ensure's that nova.egg-info/entry_points.txt is up to
date before running tests.

Change-Id: I7b7a18e065a62491ade54fbed5d8400db1d4e6c7
2013-05-07 18:38:53 +10:00
Jenkins
c1857d6f4f Merge "Sync oslo-incubator print statement changes" 2013-05-07 07:09:38 +00:00
Jenkins
6cbb320926 Merge "xenapi: Always set other_config for VDIs" 2013-05-06 16:03:06 +00:00
Matthew Sherborne
b82ee07c5d Sync oslo-incubator print statement changes
Just changes openstack.common to use the new print statements.

This is in preparation for another sync coming shortly for the
scheduler library.

Change-Id: I17a86ef87f3253d6bb756cbd40a3ff5df9be23ff
2013-05-06 10:58:09 +10:00
Michael Still
b4826d85c2 Update oslo-incubator import.
These are all minor changes bringing nova up to commit
90e83530d4dc49d570fa05ea63a93805717dcfa0 in oslo-incubator.

Change-Id: I0291eed31b1e650da211fe2a8b65fad0c35c9053
2013-05-03 06:45:51 +10:00
Rick Harris
f3843dec21 xenapi: Always set other_config for VDIs
The existing code only set `other_config` on a VDI when it was created using
`create_vdi`. This patch updates the code so that `other_config` is also set
when a VDI is created from a dom0 plugin or during a migration.

Also included is a one-time script to set the other_config for existing
VDIs that were affected by this bug.

Fixes bug 1162029

Change-Id: I4fa856754487f77ce9c8e39d45eee7ea5187123e
2013-05-02 15:38:44 +00:00
Mark McLoughlin
d819f869c5 Copy the RHEL6 eventlet workaround from Oslo
Tests in oslo-incubator now need the horrendous hack to workaround an
issue with eventlet on RHEL6. We've moved the patch_tox_venv tool
and redhat-eventlet.patch into oslo-incubator, so add them to
openstack-common.conf.

Change-Id: I1acfec282b64d7582144b155119bedb1741db2f7
2013-05-02 10:23:00 +01:00
Matthew Sherborne
25c9322966 Sync small and safe changes from oslo
Ran the oslo-incubator sync script and brought across only the files
that have small and safe changes.

Change-Id: I41b400c189e52a2e7f642a03ad143d821aaa807c
2013-05-01 22:39:39 +10:00
Andrew Laski
205bda2cb5 import and install gettext in vm_vdi_cleaner.py
importing some nova modules expects _() to be defined, so lets define it
before we start importing them.

Change-Id: I7f951a24c19a53434c090cd2c01eded77c703943
2013-04-30 18:42:03 -04:00
Jenkins
e07986c141 Merge "Fix up regression tester" 2013-04-29 17:27:16 +00:00
Joe Gordon
49c58da95b Fix up regression tester
* Clean up to support pydoc
* Support -h
* Make it actually work
* Improve docstrings
* Add copyright

Change-Id: I977df71e8213e39e9eebf9cc56b2dd7625959870
2013-04-17 15:09:12 -07:00
Stanislaw Pitucha
588b5651dc Remove "undefined name" pyflake errors
A number of places tried to use undefined names. This included one
powervm test which turned out to not check anything at all (used
fake implementation of tested method) and needed to be moved.

Make sure that this class of errors causes run_pep8 failure in the
future.

Change-Id: I82ccb63bbc6f6d2b20ecb7f06b2fc22f8f034a33
2013-04-10 20:16:12 +00:00
Monty Taylor
799a925c1f Move console scripts to entrypoints.
As part of the move of plugins to entrypoints, take advantage of the
entrypoints based console scripts, which will make our command line scripts
available for unittesting.

Part of blueprint entrypoints-plugins

Co-authored-by: Michael Still <mikal@stillhq.com>

Change-Id: I5f17348b7b3cc896c92263dd518abb128757d81f
2013-04-04 13:14:27 +11:00
Jenkins
3b428d8028 Merge "Fix the python version comparison." 2013-04-01 23:33:15 +00:00
Joshua Harlow
9ae5313bea Fix the python version comparison.
The comparison to (2, 6) doesn't seem to be correct.

For example:

>>> import sys
>>> sys.version_info <= (2, 6)
False
>>> sys.version_info[0:2] <= (2, 6)
True
>>> sys.version_info
(2, 6, 6, 'final', 0)

Change-Id: I2076d23e58a8777fe4bab81665b9b570656561e9
2013-04-01 15:44:13 -07:00
Mark McLoughlin
9447e59b70 Remove gettext.install() from nova/__init__.py
The gettext.install() function installs a builtin _() function which
translates a string in the translation domain supplied to the install()
function. If gettext.install() is called multiple times, it's the last
call to the function which wins and the last supplied translation domain
which is used e.g.

 >>> import os
 >>> os.environ['LANG'] = 'ja.UTF-8'
 >>> import gettext
 >>> gettext.install('keystone', unicode=1, localedir='/opt/stack/keystone/keystone/locale')
 >>> print _('Invalid syslog facility')
 無効な syslog ファシリティ
 >>> gettext.install('nova', unicode=1, localedir='/opt/stack/nova/nova/locale')
 >>> print _('Invalid syslog facility')
 Invalid syslog facility

Usually this function is called early on in a toplevel script and we
assume that no other code will call it and override the installed _().
However, in Nova, we have taken a shortcut to avoid having to call it
explicitly from each script and instead call it from nova/__init__.py.

This shortcut would be perfectly fine if we were absolutely sure that
nova modules would never be imported from another program. It's probably
quite incorrect for a program to use nova code (indeed, if we wanted to
support this, Nova code shouldn't use the default _() function) but
nevertheless there are some corner cases where it happens. For example,
the keystoneclient auth_token middleware tries to import cfg from
nova.openstack.common and this in turn causes gettext.install('nova')
in other projects like glance or quantum.

To avoid any doubt here, let's just rip out the shortcut and always
call gettext.install() from the top-level script.

Change-Id: If4125d6bcbde63df95de129ac5c83b4a6d6f130a
2013-04-01 13:44:47 -04:00
Vishvananda Ishaya
89c501ec13 Bring back colorizer again with error results.
This was actually a pretty simple fix. When I switched the base
test result class to testtools I lost the methods that were
printing out the errors at the end. This adds the (colorized!)
methods so errors print successfully.

fixes bug 1159116

Change-Id: Ib09d7e18ddf27015ff735a30137421d865382359
2013-03-26 17:59:08 -07:00
Jenkins
1a5ee2e695 Merge "Sync everything from oslo-incubator." 2013-03-25 08:33:10 +00:00
Dan Prince
7a9ce26aaf py2.6 doesn't support TextTestRunner resultclass
Updates tools/colorizer to account for the fact that Python
2.6 doesn't support resultclass.

This fixes issue in trying to use run_tests.sh on distributions
which use python 2.6.

Fixes LP Bug #1158940

Change-Id: I763cd9c7a4b5ec5baaad3a3d9ee96e6e3cd13b3e
2013-03-22 15:52:50 -04:00
Russell Bryant
f665d79823 Sync everything from oslo-incubator.
Change-Id: If602b424086abb3edbd4703bc0e3befedbf37925
2013-03-22 14:10:07 -04:00
Jenkins
1a5afe569c Merge "Bring back sexy colorized test results." 2013-03-21 12:22:18 +00:00
Vishvananda Ishaya
8cd5f862ac Bring back sexy colorized test results.
Also attempt to keep test results together and print out a nice
display of the ten slowest tests.

Change-Id: Ib54eb6dede8650ebafc3f069ee7b4a8c4c1a523c
2013-03-20 19:23:16 -07:00
Alessio Ababilov
96c874cac5 Require netaddr>=0.7.6 to avoid UnboundLocalError
This issue is discussed at https://github.com/drkjam/netaddr/issues/2.
The bug in netaddr was fixed in release 0.7.6 on 13th Sep 2011.

Change-Id: Iea75a30963a09f9b0dd94138460bf041ab98fc66
Fixes: bug #1157058
2013-03-19 11:25:14 +02:00
Jenkins
aa4198678a Merge "Update to Quantum Client 2.2.0" 2013-03-13 19:56:51 +00:00