11394 Commits

Author SHA1 Message Date
Devananda van der Veen
0a21463459 Remove the old README.
Change-Id: I867960f48c3f3b5a1b868c764af185c048196690
2013-05-29 12:18:48 -07:00
Devananda van der Veen
09271d52e5 More doc updates.
- general updates to index.rst
- add api quick-ref section to index.rst
- consolidate contributing/* to contributing.rst & dev-quickstart.rst
- remove broken :term: links in architecture.rst
- rename v1.rst -> api-spec-v1.rst

Change-Id: Ib02fb3f8c8e3c6450e74b3a6831795699b2ddf67
2013-05-29 11:58:57 -07:00
Jenkins
0f68c80eb5 Merge "Added API v1 Specification" 2013-05-29 18:58:17 +00:00
Jenkins
6343ffc06c Merge "Minor doc change for manager and resorce_manager." 2013-05-29 18:56:32 +00:00
Jenkins
dd15c97dea Merge "Rename TestCase.flags() to TestCase.config()" 2013-05-29 18:56:29 +00:00
Jenkins
076e751ed2 Merge "Initial skeleton for an RPC layer." 2013-05-29 18:55:53 +00:00
Jenkins
2ae81147aa Merge "Minor fixes to sphinx docs." 2013-05-29 18:55:25 +00:00
Jenkins
6bdf87d30a Merge "Log configuration values on API startup" 2013-05-29 18:54:46 +00:00
Jenkins
f774da4e7c Merge "Don't use pecan to configure logging" 2013-05-29 18:54:45 +00:00
Jenkins
0d7864184c Merge "Remove unused authentication CLI options" 2013-05-29 18:54:35 +00:00
Devananda van der Veen
72ba74423e Minor fixes to sphinx docs.
Add pygments.css to match other OpenStack projects.
Fix a few things in conf.py

Change-Id: Ieb62caa7d4540ed642265612eb9a04e5a61a7b99
2013-05-29 11:03:58 -07:00
Martyn Taylor
3fc85ff0e3 Added API v1 Specification
Change-Id: I901b11d8bdf5dcd415c58a2b3eb01c5bc6b51a70
Implements: blueprint api-v1-spec
2013-05-29 14:44:43 +01:00
Jenkins
279a8bc133 Merge "Add initial sphinx docs, based on README." 2013-05-28 18:08:06 +00:00
Jenkins
3d2d21026a Merge "Add support for Sphinx Docs." 2013-05-28 18:03:55 +00:00
Devananda van der Veen
2b5bc76e92 Add initial sphinx docs, based on README.
Initial run of refactoring the README into RST so that Sphinx will build
docs automatically from it.

Change-Id: Ic648a2fa5fadb326b7db1578bcb630f58531ea87
2013-05-28 11:02:59 -07:00
Devananda van der Veen
e64f64cbc6 Initial skeleton for an RPC layer.
This patch implements the a framework for RPC between the API service
and the Manager service. It implements only the 'get_node_power_state'
method, and adds a unit test.

Change-Id: I19e4b761ef212de4c8fd0e600e98368e520a44aa
2013-05-28 10:58:40 -07:00
Mark McLoughlin
97afde0b50 Log configuration values on API startup
It's very helpful for every service to log its configuration values on
startup, so you can e.g. check typos.

Also, change the print statements in the API binary to info logs.

Change-Id: I1b4181ddc7f36149cddb2c24f514d526c403b2e0
2013-05-28 14:16:01 +01:00
Mark McLoughlin
46b9a88ba1 Don't use pecan to configure logging
Fixes bug #1184941

openstack.common.log gives a mechanism to configure logging and, by
default, we will set up a handler on root logger. Using pecan to also
configure a handler on the 'ironic' logger means every log message gets
logged to console twice.

It seems that the pecan logging configuration stuff is redundant with
our existing logging configuration infrastructure.

Change-Id: Iec0630b0e842e3b6a90021bf552d9b857c5a0552
2013-05-28 11:34:43 +01:00
Jenkins
376310c83b Merge "Copy the RHEL6 eventlet workaround from Oslo" 2013-05-27 13:41:19 +00:00
Mark McLoughlin
36c331c857 Move database.backend option import
This opt is only used in db.migration, so move the import from dbsync.

Change-Id: I7ee000f166d78afd08965cf3f035f1274b7de076
2013-05-27 11:41:46 +01:00
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