e3530a06c4d84e101e07bbe22075a0e2b3a72086
Commit Graph

309 Commits

Author SHA1 Message Date
Mike Milner
e3530a06c4 Include launch_index when creating instances.
Fixes bug 934534.
The launch_index column in the database is used as the ami-launch-index value
provided by the metadata service.
If launch_index is not specified it defaults to 1. This is incorrect for the
single instance case (should be 0) and doesn't correctly handle multi-instance
starts.
This branch changes the default launch_index to 0 (to handle the single
instance case) and adds the launch_index in the schedulers for multi-instance
starts.
Change-Id: Ifc45abf4cd9f50f732ba4a4b68c0a6242a6c9710
2012年02月23日 21:34:52 -04:00
Jenkins
dd851ff62b Merge "Add attaching state for Volumes" 2012年02月23日 18:32:53 +00:00
Liam Kelleher
d0cc37f809 Add attaching state for Volumes
bug 897726 Add "attaching" status for volumes and clear state on error
This closes a gap where multiple calls of attach for the same volume
can happen before the volume is actually attached.
Change-Id: I59d22ceda83729c1a455af9994c9ffec1912e23b
2012年02月20日 14:21:25 +00:00
Nick Bartos
ea0e925972 Escape apostrophe in utils.xhtml_escape() (lp#872450)
Also remove comment which is no longer relevant.
Change-Id: I33a951d08a34510b2a9dbacb9fb3ebf6bee978b4
2012年02月20日 04:57:44 -08:00
chris fattarsi
94d3d19855 Handle OSError which can be thrown when removing tmpdir. Fixes bug 883326.
Change-Id: Ie1f40fcce6ce6af4ab71961c725dcd626eda8aea
2012年02月19日 18:11:03 -08:00
Jenkins
dc9e5feae4 Merge " remove unused nwfilter methods and tests." 2012年02月18日 00:01:13 +00:00
Evan Callicoat
b61e1ea12c Enables hairpin_mode for virtual bridge ports, allowing NAT reflection
* enables hairpin_mode on virtual bridge ports on instance spawn
* adds conntrack DNAT state criteria to fixed/fixed SNAT exception so reflected traffic SNATs
* updates get_interface ElementTree to work with Python 2.6/2.7
* fixes bug 933640
Change-Id: I63b3e91b41898fcffda8a288be503f9b740b4b4e
2012年02月16日 18:11:19 +00:00
Jenkins
ab548e2e39 Merge "Prevent Duplicate VLAN IDs" 2012年02月15日 17:13:07 +00:00
Jenkins
9f10962470 Merge "Update migration 076 so it supports PostgreSQL." 2012年02月15日 16:52:54 +00:00
Andrew Clay Shafer
e88a2a616b Prevent Duplicate VLAN IDs
Addresses Bug 708278
Add check for duplicates in api.py
Add DuplicateVlan to exception.py
Add test to raise DuplicateVlan in test_db_api.py
Add to Authors
Change-Id: I9d68d7b7c886071e38df3c9d7d53724758bdd84c
2012年02月15日 10:41:07 -05:00
Jenkins
99c2e02b44 Merge "Changing nova-manage error message" 2012年02月15日 09:03:41 +00:00
Yaguang Tang
b4fae4821f remove unused nwfilter methods and tests.
remove unused methods and classes in nova/virt/libvirt/firewall.py
and releative function tests. now,nova use nwfilter offered by
libvirt only for anti ARP and IP spoofing.other security policy use
iptables.
Change-Id: Ib9866802ef64668e2feba09124bdf7c7fee92f92
2012年02月15日 12:17:55 +08:00
Dan Prince
9b132000bf Update migration 076 so it supports PostgreSQL.
Fixes LP Bug #32154.
Change-Id: I9d6ddfedcc39308811ff5264879b45b4847ec4a8
2012年02月14日 16:45:42 -05:00
Derek Higgins
649e32b0dc Changing nova-manage error message
CA filesystem now created by nova-cert
Also changing Author details
Change-Id: I456d985810d6f0312a7ef94b21637f347e933303
2012年02月14日 17:23:41 +00:00
Eoghan Glynn
abe9adf470 Fix WADL/PDF docs referenced in describedby links
These compute API links were broken, previously referring to
Rackspace URLs with s/v1.0/v1.1/
The links now correctly reference long-lived locations on
docs.openstack.org.
Change-Id: I10efca2868a05982a1783688e374060acf1d0a69
2012年02月14日 15:40:34 +00:00
Jenkins
ca51f9822f Merge "Changes for supporting fast cloning on Xenserver. Implements blueprint fast-cloning-for-xenserver 1. use_cow_images flag is reused for xenserver to check if copy on write images should be used. 2. image-id is used to tag an image which has already been streamed from glance. 3. If cow is true, when an instance of an image is created for the first time on a given xenserver, the image is streamed from glance and copy on write disk is created for the instance. 4. For subsequent instance creation requests (of the same image), a copy on write disk is created from the base image that is already present on the host. 5. If cow is false, when an instance of an image is created for the first time on a host, the image is streamed from glance and its copy is made to create a virtual disk for the instance. 6. For subsequent instance creation requests, a copy of disk is made for creating the disk for the instance. 7. Snapshot creation code was updated to handle cow=true. Now there can be upto 3 disks in the chain. The base disk needs to be uploaded too. 8. Also added a cache_images flag. Depending on whether the flag is turned on on not, images will be cached on the host." 2012年02月14日 03:38:14 +00:00
Jenkins
6f2ebe058e Merge "dont show blank endpoint headers" 2012年02月13日 21:22:25 +00:00
Devdeep Singh
6c3bc216c1 Changes for supporting fast cloning on Xenserver.
Implements blueprint fast-cloning-for-xenserver
	1. use_cow_images flag is reused for xenserver to check if copy on write images should be used.
	2. image-id is used to tag an image which has already been streamed from glance.
	3. If cow is true, when an instance of an image is created for the first time on a given xenserver, the image is streamed from glance and copy on write disk is created for the instance.
	4. For subsequent instance creation requests (of the same image), a copy on write disk is created from the base image that is already present on the host.
	5. If cow is false, when an instance of an image is created for the first time on a host, the image is streamed from glance and its copy is made to create a virtual disk for the instance.
	6. For subsequent instance creation requests, a copy of disk is made for creating the disk for the instance.
	7. Snapshot creation code was updated to handle cow=true. Now there can be upto 3 disks in the chain. The base disk needs to be uploaded too.
	8. Also added a cache_images flag. Depending on whether the flag is turned on on not, images will be cached on the host.
Change-Id: I54838a24b061c134877f3479c925c6ee78da14bc
2012年02月13日 09:31:01 +05:30
Mike Pittaro
229221ec97 Fix bug 921814 changes handling of adminPass in API.
Add a new nova configuration flag, boolean, enable_instance_password.
When the flag is True (default), existing behavior is unchanged.
When the flag is False, responses from the create or
rebuild API calls don't include the adminPass attribute.
Change-Id: Icb2bd703770f3a39bb1e458dc31e1489d48da7c1
2012年02月07日 15:52:45 -08:00
Mikyung Kang
fd9c3aff0d Implements blueprint heterogeneous-tilera-architecture-support
Change-Id: Iad8f66af18eb396f4737cd4ea168edcc77481ee6
2012年02月07日 10:41:10 -05:00
Nikhil Komawar
95771cf112 dont show blank endpoint headers
fixes bug: 741972
Change-Id: I4a661a13c5baaa79ee647a6c1cedcef29a2642f6
2012年02月07日 00:13:26 +00:00
Ziad Sawalha
6b532096f6 Use Keystone Extension Syntax for EC2 Creds
- Syntax is OS-KSEC2:ec2Credentials (not ec2Credentials)
- adds to fix for bug 917408
- Syntax also requires a call to /tokens instead of /ec2tokens
- Changes are compatible (old syntax supported)
- Warning will be issued to log if URL syntax is old
Change-Id: I5ff9d1643122de2f383517e60f15852720c54490
2012年02月03日 11:21:27 -08:00
Maru Newby
07d74aa916 Raise ApiError in response to InstanceTypeNotFound
* Updates methods in nova.compute.instance_types to catch
 InstanceTypeNotFound exceptions and re-raise them as ApiError.
 - Previously, the methods in instance_types were raising ApiError in
 response to DBError, but the underlying db calls have since been
 updated to detect empty results and throw more specific exceptions.
 * Updates get_instance_type_by_flavor_id to not try to catch DBError,
 as the underlying db call only ever raises FlavorNotFound.
 get_instance_type_by_flavor_id should not raise ApiError, as callers
 expect the FlavorNotFound exception and know how to handle it.
 * Fixes bug 872618
Change-Id: I8652f04889adb448017afd253ecdcc840fbb660f
2012年02月03日 00:15:12 -08:00
Nirmal Ranganathan
999db21e1a Throw an user error on creating duplicate keypairs
Fixes bug 902162
Change-Id: I1b73943aab338bde90b4d47bc015964e9981af5d
2012年02月02日 15:35:07 -06:00
Jenkins
03a028e621 Merge "Optionally pass a instance uuid to log methods." 2012年02月01日 23:54:36 +00:00
Thorsten Tarrach
553982fb8b fixed bug 920856
Changed the responses to match that of Amazon EC2
Changed test to expect that response
Change-Id: Ia03a0ea663614944067c0a0193058ba91e149ad2
2012年02月01日 16:00:45 +01:00
Michael Still
605c22b180 Optionally pass a instance uuid to log methods.
This change is intended to make log messages including instance
uuids consistent. This eases operational support, as when a
customer asks for the history of there instance it is a simple
grep operation, instead of the current situation. I have included
a sample use, but will work through adding this to relevant log
messages over time.
Change-Id: I1f61c04f32dbb960471950ac7231313d9d9ced12
2012年02月01日 15:43:46 +11:00
john-griffith
c9ac6e1671 Implementation of new Nova Volume driver for SolidFire ISCSI SAN
* Adds new SolidFire driver that subclasses nova.volume.san.SanISCSIDriver
* Adds unit tests for new driver
* Adds new exception subclasses in nova.exception
* Adds John Griffith to Authors
Implements solidfire-san-iscsidriver
Change-Id: I4dc7508ba08f5333cde74d4cfeaae3939c5d2b02
2012年01月30日 11:19:52 -07:00
Jenkins
f4c0fbafc1 Merge "Blueprint xenapi-provider-firewall and Bug #915403." 2012年01月25日 15:56:29 +00:00
Jenkins
30ac47bcbd Merge "blueprint host-aggregates: maintenance operations to host OSAPI exts" 2012年01月25日 15:20:08 +00:00
Deepak Garg
fe1c97ff4c Blueprint xenapi-provider-firewall and Bug #915403 .
1. Provides dom0 IPtables driver to implement the Provider firewall rules.
 2. Existing libvirt code has been refactored to reduce the amount of duplicated code to a minimum
 3. The three provider apis in ec2/admin.py file are now fixed the following way:
 a. remove_external_address_block returned 'OK' on removing blocks which didn't exist. This is now fixed.
 b. block_external_addresses raised exception earlier on duplicate network blocks. Now the exception is logged and failed status message is returned.
 c. all the three provider apis now logs for invalid and improper inputs and return uniform (a dictionary ) and proper status messages for all cases.
 4. appropriate unit tests added to cover the same
Change-Id: I27d83186f850423a6268947aed0c9a349d8f8d65
2012年01月24日 22:31:35 -08:00
Tomoe Sugihara
2594e480b2 Add os-start/os-stop server actions to OSAPI
Implements blueprint start-stop-methods-support-in-os-servers-xapi
Change-Id: I7aa241ffdd2ec3a7c9800411268f4adc47960be8
2012年01月25日 11:10:13 +09:00
Jenkins
5156c0e757 Merge "bug 917397" 2012年01月24日 23:18:16 +00:00
Russell Bryant
be96c43390 Add support for Qpid to nova.rpc.
Implements blueprint apache-qpid-rpc.
This patch adds a new implementation of the nova.rpc API that uses Qpid
as the messaging backend. We first considered trying to add Qpid
support to kombu, but the kombu API did not map very well to Qpid, which
is based on a newer version of AMQP. It was easier to just map the nova
rpc API to Qpid.
For more information about how to use Qpid with Nova, see this wiki
page:
 http://wiki.openstack.org/QpidSupport
The structure of impl_qpid is largely based on impl_kombu, but adapted
to use the Qpid APIs as necessary. This patch also factors out some of
the code shared with impl_kombu into nova.rpc.common to try to cut down
on duplicated code.
The unit tests were written from scratch instead of taking advantage
of the common rpc unit tests. The common unit tests only work if qpidd
is running, but they do pass if enabled. The unit tests for impl_qpid
instead use mox to mock out the Qpid objects and ensure the right
operations happen on them when the rpc API is exercised.
This patch was a joint effort between myself and William Henry, which is
why he was added to the Authors file in this patch.
Change-Id: Ibacaa956e016ef96f014443074e2a4622e31f090
2012年01月24日 16:18:05 -05:00
Cole Robinson
fefb88877c extensions: Allow registering actions for create + delete
This allows an extension to add new actions for create and delete
operations to an existing collection.
Currently when extending an existing collection (API namespace), an
extension can register brand new 'actions', and extend any preexisting API
functionality, but unfortunately create and delete are special cases that
don't fall under the 'actions' classification, meaning the infrastructure
can't handle them unless extending an existing impl.
Stubbing out the create/delete methods in the original resource with
the equiv of a NotImplementedError doesn't work, since 'extend'ing
requires the original implementation to exit correctly.
Whitelist 'create' and 'delete' and handle them appropriately.
v2:
 Add myself to Authors
 Update wsgi.action docs
 Add a test case
v3:
 Actually update Authors
Change-Id: I550ae93c5e200f18644042ac81656bc76dbe8955
2012年01月24日 13:30:23 -05:00
John Garbutt
2cf8b77c69 blueprint host-aggregates: maintenance operations to host OSAPI exts
This commit introduces sub for a host maintenance_mode option into
the osapi. It is required for the host aggregates work.
This is part of a series of commits that have started with change:
https://review.openstack.org/#change,3035
Change-Id: Ib462ef9ad6b641bf1083cc176dfba6645020ccec
2012年01月23日 14:37:47 +00:00
Dave Lapsley
dc0f299337 bug 917397
Add configuration sanity to QuantumManager. Logs error message
if a parameter not used by QuantumManager's create_networks()
method is passed into it.
Change-Id: I1d6daa7f77590a61b542122ada33ed1c188df19f
2012年01月20日 20:47:51 -05:00
Kiall Mac Innes
ccc2471f3e Fixes bug #919390 - Block Migration fails when keystone is un use.
I've Updated the calls to nova.virt.libvirt.utils.fetch_image() to match the rest of the class.
Additionally, nova.virt.images.fetch() currently makes no use of the user/project id supplied.
Change-Id: I2db4b8c1b6542909fcc2b452fc961e22fe2557bf
2012年01月20日 21:11:47 +00:00
Philip Knouff
7afc12b9a2 Fixed the log line
Fixed bug #877417
Change-Id: Iddb9a6d4eb798b0f41f0ef1ab01cb02d16d16dbe
2012年01月16日 17:16:27 -05:00
Zhongyue Luo
1611c23928 greenlet version inconsistency
Fixes Bug #917003
The latest version of greenlet is installed in install_venv.py while
the version required is set to 0.3.1 in pip-requires.
Change-Id: I145deb46a8edc41e87634dc5ca839baf5acd8065
2012年01月16日 01:58:39 -05:00
masumotok
8e57055cec First implementation of bp/live-migration-resource-calc
Fix based on revewer's comment
upgraded the migration version
nova/db/sqlalchemy/migrate_repo/versions/069_block_migration.py
rebase on master
Change-Id: Ia762f8dec761c3d595bc6fcd39f127f6d92306d2
2012年01月13日 15:24:28 +09:00
Daniel P. Berrange
d97b64b6e6 Tell users what is about to be installed via sudo
Rather than just giving users the sudo password prompt immediately,
actually tell them what is about to be installed, so they know
whether it is reasonable to be entering their password.
Change-Id: Ic0c1de812be119384753895531a008075b13494e
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2012年01月05日 16:08:04 +00:00
Hengqing Hu
a8fd6bf24b use name gateway_v6 instead of gateway6
fixes bug #890099
Change-Id: I2b516c4b41d387846f8edb9a7b82f3016f0e0eac
2012年01月03日 11:13:13 +08:00
Jenkins
ea21fe6965 Merge "Adds EC2 ImportKeyPair API support." 2011年12月30日 19:50:52 +00:00
lzyeval
6247c949f5 re-raising exceptions fix
Fixes bug #910008
Change-Id: I7914fe1eaffeb0be5feb414f3ea0ad563a36c21f
2011年12月31日 02:31:06 +09:00
Ivan Kolodyazhny
135fd91916 Bug 751229: Floating address range fixed
Change-Id: I4c7ab8512fe3a00dd555d3a183b2c2348cef9e21
2011年12月29日 09:20:58 +02:00
MotoKen
5bdc35b115 Adds EC2 ImportKeyPair API support.
Implements import_key_pair instead of import_public_key.
Change-Id: I256b76aeb4ff94030a58692bfd12b2d7c53ae461
2011年12月27日 15:01:25 +08:00
Jenkins
36c4616711 Merge "Bug#898257 abstract out disk image access methods" 2011年12月22日 19:23:21 +00:00
Cor Cornelisse
d503d6b107 Use SQLAlchemy to drop foreign key in DB migrate
A foreign key constraint needs to be removed in order to succeed in the
DB migration. An earlier submitted fix for this uses a mysql drop
statement. I think it's cleaner to use sqlalchemy to do this, as it's
done this way in other version migrations as well. Fix for bug 907254.
Update: IBM from 1928 called, they want their 80 CPL limit
back. - on a more serious note, fixed jenkins PEP8 failure
Update2: Replaced tab by a spaces
Update3: Don't do Foreign Key stuff if the engine is sqlite
Update4: Add myself to the Authors file
Update5: With the correct mail address
Change-Id: Ib021e0ddb2c80ee63888435a9e3761c053534160
2011年12月22日 18:35:09 +01:00
Pádraig Brady
5335b4ab0e Bug#898257 abstract out disk image access methods
Rather than providing two mutually exlusive image
access methods (loop and qemu-nbd), try each in turn.
This is to prepare for a follow up patch which will
add libguestfs as a method to try.
* nova/virt/mount.py: A new Mount class to abstract the
devce allocation, partition mapping and file sys mounting,
for each access type.
* nova/virt/disk/loop.py: A specialization of the base Mount class
to provide loop back mounting support.
* nova/virt/disk/nbd.py: A specialization of the base Mount class
to provide qemu-nbd mounting support.
* nova/virt/disk/api.py: A new file containing the nova.virt.disk
module interface.
(img_handlers): A new list of access methods to try,
with the order being honored.
(_DiskImage): An internal helper class that uses the plugin classes
above, to provide the operations available on a disk image file.
When mounting, iterate over each access method until one succeeds.
If a hint is provided about a CoW format image, the list of
methods to try will be reduced accordingly.
Note expected errors are no longer raised as exceptions during mounting.
Instead, on failure to mount an image, errors are collated and raised.
Interveining errors are logged in debug mode for successful mounts.
* nova/virt/libvirt/connection.py: Adjust the function parameter
names to be more general, rather than referencing specific
implementations like 'nbd' and 'tune2fs'.
Simplify the destroy_container() by storing and passing
back a reference to the _DiskImage object, which has the
necessary state to unmount.
* nova/utils.py (trycmd): A helper function to both deal with,
commands that issue ignorable warnings to stderr,
and commands that EXIT_SUCCESS while issuing errors to stderr.
nova/virt/xenapi/vm_utils.py: Adjust for the moved virt.disk package
Change-Id: If3a4b1c8f4e2f2e7300a21071340dcc839cb36d7
2011年12月22日 11:50:52 +00:00