12424 Commits

Author SHA1 Message Date
Mark McLoughlin
fb113c741a Remove unused authentication CLI options
These were copied from ceilometer where they are used for things like
the glance pollster. Ironic doesn't need these.

Change-Id: I93f2a2f3a5a93e9c1ef53514eece7f7ce8c5bffa
2013-05-27 10:50:53 +01:00
Mark McLoughlin
af1a1cac42 Rename TestCase.flags() to TestCase.config()
The 'flags' thing harks back to when we were using gflags, so rename the
method to config() like most other projects call it. I really should
change this in Nova someday too.

Change-Id: I07bcb6392b47cb78a2b58a5a1d663d544e7a5b63
2013-05-27 07:02:17 +01:00
Mark McLoughlin
22987dbdfb 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-27 06:45:21 +01:00
Mark McLoughlin
a941af613a Sync new database config group from oslo-incubator
Syncs this change:

  4ff33b0 Specify database group instead of DEFAULT

Note: support for legacy configuration is retained.

Change-Id: I42014bb85995b2fd0056ca9b3b55c4fe746168fa
2013-05-27 06:30:42 +01:00
Devananda van der Veen
fa8cc62734 Minor doc change for manager and resorce_manager.
Change-Id: If24fe5bf637493918d9f1faf113f1d356801dc73
2013-05-26 09:11:06 -07:00
Monty Taylor
23f30cb6fe Add support for Sphinx Docs.
Also turn on doc API autoindexing.

This depends on https://review.openstack.org/30520 landing in pbr and a
new point release being cut, as it uncovered a bug.

Change-Id: I8f4ffc4f7c54c7b207d6d52e74ccab020596e602
2013-05-25 08:03:45 +02:00
Devananda van der Veen
378dfac26b Update IPMI driver to work with resource manager.
Update the IPMI driver so that Ironic's resource manager can maintain a
single instance of it, and pass (task, node) to IPMI methods.  This
brings the IPMI class in line with the base ControlDriver class
definition.

Add a missing exception to common/exceptions.py.

IPMI driver methods presently support being called for a single node at
a time.  Support for multiple nodes passed down by the TaskManager is
not part of this patch.

Remove terminal support. To be added back later.

Change-Id: Ibb9fc84f7b46d848b0c1ac761a3be952c99f7509
2013-05-24 13:54:21 -07:00
Devananda van der Veen
438b77e006 Add validate_driver_info to driver classes.
Change-Id: I8ba2f4bd70bd2d7af405868cca2aedb56d3f0640
2013-05-24 13:53:24 -07:00
Devananda van der Veen
b9f39b81b9 Implement Task and Resource managers.
Implement context and lock management around the manipulation of Nodes
via TaskManager and ResourceManager classes. Usage guidelines are added
as docstrings, with a single example in the ManagerService.

Part of bp:ironic-manager

Change-Id: I679ae94ed9ef1c814bc26529cd6360d02292ad40
2013-05-24 10:32:57 -07:00
Devananda van der Veen
6240efadca Update [reserve|release]_nodes to accept a tag.
Update the reserve_nodes and release_nodes DB methods to accept an
arbitrary "tag", instead of accessing the global CONF.host setting.

Add unit tests to validate behaviour of both single- and multiple-node
reservations.

Change-Id: Idf5fce13a6aee3dd9c234bf7f18f17d8811383af
2013-05-24 10:32:56 -07:00
Jenkins
4398abd9d9 Merge "Sync safe changes from oslo-incubator" 2013-05-24 15:03:13 +00:00
Devananda van der Veen
e177c381bd More updates to the README.
- Correct driver type names.
- Add more description about driver loading and implementation.

Change-Id: I145c7a64b9e5def4e103309ee3c9fe45204ae5d6
2013-05-23 09:08:02 -07:00
Jenkins
4c3574bb55 Merge "Stop creating a new db IMPL for every request." 2013-05-23 15:07:11 +00:00
Jenkins
c12e69aec3 Merge "Reimplement reserve_nodes and release_nodes." 2013-05-23 15:01:54 +00:00
Jenkins
13085217cc Merge "Rename the 'ifaces' table to 'ports'." 2013-05-23 14:59:16 +00:00
Jenkins
4bc6ce3952 Merge "Change 'nodes' to use more driver-specific JSON." 2013-05-23 14:58:54 +00:00
Jenkins
a9da036478 Merge "Update driver names and base class." 2013-05-23 14:58:01 +00:00
Jenkins
c2440b472a Merge "Sync oslo-incubator python3 changes" 2013-05-23 03:29:14 +00:00
Jenkins
7b70278ed3 Merge "Sync log changes from oslo-incubator" 2013-05-23 03:25:59 +00:00
Jenkins
6bbf8840c5 Merge "Sync a rootwrap KillFilter fix from oslo-incubator" 2013-05-23 03:23:32 +00:00
Jenkins
49c323f295 Merge "Sync rpc changes from oslo-incubator" 2013-05-23 03:22:37 +00:00
Devananda van der Veen
d649480871 Reimplement reserve_nodes and release_nodes.
Implement these two methods based on a host, rather than based on
an instance_uuid.

Also adds some doc strings to db/api.

Part of bp:ironic-manager

Change-Id: I41ddcec90f4dc2b22712cdb069a3d4626fb7c19d
2013-05-22 19:56:09 -07:00
Devananda van der Veen
c66b90f838 Rename the 'ifaces' table to 'ports'.
Change-Id: I81ffa22954f5ef8977f5fdd0b9bbe8ab1f2083e3
2013-05-22 19:56:09 -07:00
Devananda van der Veen
9e079a6647 Change 'nodes' to use more driver-specific JSON.
Change the 'nodes' table to be more generic, allowing
drivers to be more flexible in the informatin they track.

Also adds a minimalistic 'chassis' table, and a FK pointing
from 'nodes' to 'chassis'.

Part of bp:ironic-manager

Change-Id: I0022841f31fdb3aa40883a0403a8427bd9a09a00
2013-05-22 19:56:09 -07:00
Devananda van der Veen
c835425781 Update driver names and base class.
Also, add (task, node) to the base and fake driver method parameters.
Prepares the way for adding TaskManagers in a following patch.

Change-Id: I846227b2416445a539f9ac51d86b33ea49d4abcb
2013-05-22 19:55:32 -07:00
Devananda van der Veen
ed6227da4b Stop creating a new db IMPL for every request.
IMPL should be created once, at module load, not once for every
get_instance() call.

Change-Id: Ib2c7888cf9fe074891984e67af83526c994d2e2e
2013-05-22 18:00:05 -07:00
Devananda van der Veen
ae832fe8cf Fix double "host" option.
Remove the "host" option from the netconf.py because it's conflicting
with the "host" option specified in the common/service.py.

Change-Id: Id3cb558626c6f4206143648e313586b1ff9de1e9
2013-05-22 08:24:53 -07:00
Mark McLoughlin
63b0a2a0e2 Sync safe changes from oslo-incubator
Sync a bunch of changes from oslo-incubator that are either obviously
safe, add new code that ironic doesn't use or modifies existing code
that ironic doesn't use.

The commits are:

  fe2f108 Enable hacking H702 localization test
  0a14e1d Enable hacking H703: Multiple positional placeholders
  a4a6789 Pass backdoor_port to services being launched
  d5e57e9 Add DynamicLoopCall timers to ThreadGroups
  926b3e9 Fixes import order nits
  a514693 Removes len() on empty sequence evaluation
  ab6b2d4 Line wrapper becomes to long when expanded.
  b873454 Added convenience APIs for lockutils
  562cc68 Stylistic improvements from quantum-rootwrap
  3893ef8 Import trycmd and ssh_execute from nova.

Change-Id: I0a900b35e4bb4ddd56ecc083a30b0b1fba2e8b04
2013-05-22 14:11:21 +01:00
Mark McLoughlin
e73ed0175f Sync rpc changes from oslo-incubator
Syncs:

  93ee6e3 Add generic serialization support
  df7ea83 Allow RPC_API_NAMESPACE on RpcProxy objects
  1d7920a Extract matchmaker_ring to own module
  aa89d8b Support capping message versions in the client.

Change-Id: I80a2671997e8074bef9d1ef230ca3956888265e6
2013-05-22 14:09:11 +01:00
Mark McLoughlin
7acbe8d1a2 Sync log changes from oslo-incubator
This syncs:

  b135234 Remove the notifier and its dependencies from log.py

Change-Id: I20699fada068d52c812809237c3d16b653b56bc2
2013-05-22 14:05:25 +01:00
Mark McLoughlin
ac236c085b Sync a rootwrap KillFilter fix from oslo-incubator
Syncs:

  ea78eec Update KillFilter to stop at '\0' for readlink() function.

Change-Id: Id0fa6408b208639e658da337299b390eba5c70f4
2013-05-22 14:05:13 +01:00
Mark McLoughlin
e13fac41b4 Sync oslo-incubator python3 changes
Syncs these commits:

  0c54b72 python3: use 'as' syntax for exception assignment
  fde1e15 Convert unicode for python3 portability

Note this adds a dependency on the 'six' library.

Change-Id: Ibcffa3ab10f6969f1f088b1f5a890f4aa655e9bf
2013-05-22 13:45:34 +01:00
Chris Krelle
acb05d4018 Add steps to README.rst
Add tox to pip install.
Add step to run testr init

Change-Id: I10fd120d7757bc11695d064d488024e545655448
Authored-by: Chris Krelle <nobodycam@gmail.com>
2013-05-21 10:53:44 -07:00
Devananda van der Veen
08ed127fce Fix fake bmc driver.
The fake BMCDriver implementation accidentally copied, rather than
inherited from, the base class definition.

Change-Id: Ic2552dfdc93ad262c6ce04126f1133cd543bd800
2013-05-20 13:27:59 -07:00
Sean Dague
04c1574bee move ironic docs to top level for ease of discovery
Change-Id: Ief94889dc5c4d65a6d95067b51d73f13fbba640a
2013-05-20 15:14:16 -04:00
Jenkins
25fa44edec Merge "Add some API definitions to the README." 2013-05-20 18:54:11 +00:00
Jenkins
dd17b10a4e Merge "Update the README file development section." 2013-05-20 17:41:22 +00:00
Lucas Alvares Gomes
8a18c7abaf Update the README file development section.
Add more prerequisites to set up a local environment for development on
Ubuntu and the Fedora equivalents.

* libxml2 and libxslt are needed to build lxml.
* mysql libs are needed to build MySQL-python.

Change-Id: I4627b34ba72d677975c8c067e981fca732d78215
2013-05-20 18:33:21 +01:00
Devananda van der Veen
0515326f85 Add some API definitions to the README.
Change-Id: I549de0d298d030308971c2739bf1ff88ef9363e1
2013-05-20 09:35:32 -07:00
Lucas Alvares Gomes
de63417639 Update the distribute dependency version.
MySQL-python requires the version of distribute to be >=0.6.28.

Change-Id: I44f77481208e1c3d6babd3b7d259f4a450a898c8
2013-05-20 17:34:44 +01:00
Devananda van der Veen
5b78a8d484 Add information to the project README.
Change-Id: I7f345369ded37167eb01e46e9aeb4e9d9940596e
2013-05-18 09:13:18 -07:00
Anita Kuno
aa19428b88 Fixes test_update_node by testing updated node.
Fixes a broken test - test_update_node - by testing the updated node.

Fixes bug #1180143

*ironic/tests/db/test_nodes.py

Change-Id: I402851c58c4f61c600f15960a851f41356240dca
2013-05-16 22:02:33 -04:00
Devananda van der Veen
dd4521a3cc Fix pep8 errors and make it pass Jenkins tests.
Fix all existing pep8 errors.
Remove install_venv and friends, which were not needed.
Add a few ignores for nova code that is yet to be cleaned up.
Skip one failing test case, fixed by review 29394.
Import contrib/redhat-eventlet.patch from Nova.

Change-Id: I46b6ccaa272bd058757064672ce9221263ed7087
2013-05-16 18:40:38 -07:00
Devananda van der Veen
e1109c9b99 Update IPMI driver for new base class.
Fix IPMI unit tests, and add missing power states and exceptions.
2013-05-13 00:59:44 -07:00
Devananda van der Veen
70d2f67e3e Add new base and fake driver classes. 2013-05-13 00:59:44 -07:00
Devananda van der Veen
70b20f2d4f Delete old base and fake classes. 2013-05-13 00:59:35 -07:00
Devananda van der Veen
e4927fa904 Add a few fixes for the API. 2013-05-13 00:59:26 -07:00
Devananda van der Veen
06af4def6c Move strong nova depenencies into temporary dir.
Sequester files which have a very strong dependency on the nova codebase
into a separate "nova" dir. These will be ported and/or re-implemented
in Ironic. Move the corresponding unit tests to "tests/nova".

Also, disable the unit tests by removing __init__.py from that dir.
2013-05-13 00:59:25 -07:00
Devananda van der Veen
370f0fca69 Update IPMI for new DB schema. 2013-05-13 00:59:15 -07:00
Devananda van der Veen
463c44e848 Add unit tests for DB API.
Also, fix some issues found along the way.
2013-05-13 00:59:15 -07:00