~ubuntu-branches/ubuntu/raring/nova/raring-proposed

« back to all changes in this revision

Viewing changes to nova/virt/virtapi.py

  • Committer: Package Import Robot
  • Author(s): Chuck Short, Adam Gandelman, Chuck Short
  • Date: 2012-11-23 09:04:58 UTC
  • mfrom: (1.1.66)
  • Revision ID: package-import@ubuntu.com-20121123090458-91565o7aev1i1h71
Tags: 2013.1~g1-0ubuntu1
[ Adam Gandelman ]
* debian/control: Ensure novaclient is upgraded with nova,
  require python-keystoneclient >= 1:2.9.0. (LP: #1073289)
* debian/patches/{ubuntu/*, rbd-security.patch}: Dropped, applied
  upstream.
* debian/control: Add python-testtools to Build-Depends.

[ Chuck Short ]
* New upstream version.
* Refreshed debian/patches/avoid_setuptools_git_dependency.patch.
* debian/rules: FTBFS if missing binaries.
* debian/nova-scheudler.install: Add missing rabbit-queues and
  nova-rpc-zmq-receiver.
* Remove nova-volume since it doesnt exist anymore, transition to cinder-*.
* debian/rules: install apport hook in the right place.
* debian/patches/ubuntu-show-tests.patch: Display test failures.
* debian/control: Add depends on genisoimage
* debian/control: Suggest guestmount.
* debian/control: Suggest websockify. (LP: #1076442)
* debian/nova.conf: Disable nova-volume service.
* debian/control: Depend on xen-system-* rather than the hypervisor.
* debian/control, debian/mans/nova-conductor.8, debian/nova-conductor.init,
  debian/nova-conductor.install, debian/nova-conductor.logrotate
  debian/nova-conductor.manpages, debian/nova-conductor.postrm
  debian/nova-conductor.upstart.in: Add nova-conductor service.
* debian/control: Add python-fixtures as a build deps.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# vim: tabstop=4 shiftwidth=4 softtabstop=4
 
2
 
 
3
#    Copyright 2012 IBM Corp.
 
4
#
 
5
#    Licensed under the Apache License, Version 2.0 (the "License"); you may
 
6
#    not use this file except in compliance with the License. You may obtain
 
7
#    a copy of the License at
 
8
#
 
9
#         http://www.apache.org/licenses/LICENSE-2.0
 
10
#
 
11
#    Unless required by applicable law or agreed to in writing, software
 
12
#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 
13
#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 
14
#    License for the specific language governing permissions and limitations
 
15
#    under the License.
 
16
 
 
17
 
 
18
class VirtAPI(object):
 
19
    def instance_update(self, context, instance_uuid, updates):
 
20
        """Perform an instance update operation on behalf of a virt driver
 
21
        :param context: security context
 
22
        :param instance_uuid: uuid of the instance to be updated
 
23
        :param updates: dict of attribute=value pairs to change
 
24
 
 
25
        Returns: orig_instance, new_instance
 
26
        """
 
27
        raise NotImplementedError()
 
28
 
 
29
    def instance_get_by_uuid(self, context, instance_uuid):
 
30
        """Look up an instance by uuid
 
31
        :param context: security context
 
32
        :param instance_uuid: uuid of the instance to be fetched
 
33
        """
 
34
        raise NotImplementedError()
 
35
 
 
36
    def instance_get_all_by_host(self, context, host):
 
37
        """Find all instances on a given host
 
38
        :param context: security context
 
39
        :param host: host running instances to be returned
 
40
        """
 
41
        raise NotImplementedError()
 
42
 
 
43
    def aggregate_get_by_host(self, context, host, key=None):
 
44
        """Get a list of aggregates to which the specified host belongs
 
45
        :param context: security context
 
46
        :param host: the host for which aggregates should be returned
 
47
        :param key: optionally filter by hosts with the given metadata key
 
48
        """
 
49
        raise NotImplementedError()
 
50
 
 
51
    def aggregate_metadata_get(self, context, aggregate_id):
 
52
        """Get metadata for the specified aggregate
 
53
        :param context: security context
 
54
        :param aggregate_id: id of aggregate for which metadata is to
 
55
                             be returned
 
56
        """
 
57
        raise NotImplementedError()
 
58
 
 
59
    def aggregate_metadata_add(self, context, aggregate_id, metadata,
 
60
                               set_delete=False):
 
61
        """Add/update metadata for specified aggregate
 
62
        :param context: security context
 
63
        :param aggregate_id: id of aggregate on which to update metadata
 
64
        :param metadata: dict of metadata to add/update
 
65
        :param set_delete: if True, only add
 
66
        """
 
67
        raise NotImplementedError()
 
68
 
 
69
    def aggregate_metadata_delete(self, context, aggregate_id, key):
 
70
        """Delete the given metadata key from specified aggregate
 
71
        :param context: security context
 
72
        :param aggregate_id: id of aggregate from which to delete metadata
 
73
        :param key: metadata key to delete
 
74
        """
 
75
        raise NotImplementedError()
 
76
 
 
77
    def security_group_get_by_instance(self, context, instance_uuid):
 
78
        """Get the security group for a specified instance
 
79
        :param context: security context
 
80
        :param instance_uuid: instance defining the security group we want
 
81
        """
 
82
        raise NotImplementedError()
 
83
 
 
84
    def security_group_rule_get_by_security_group(self, context,
 
85
                                                  security_group_id):
 
86
        """Get the rules associated with a specified security group
 
87
        :param context: security context
 
88
        :param security_group_id: the security group for which the rules
 
89
                                  should be returned
 
90
        """
 
91
        raise NotImplementedError()
 
92
 
 
93
    def provider_fw_rule_get_all(self, context):
 
94
        """Get the provider firewall rules
 
95
        :param context: security context
 
96
        """
 
97
        raise NotImplementedError()
 
98
 
 
99
    def agent_build_get_by_triple(self, context, hypervisor, os, architecture):
 
100
        """Get information about the available agent builds for a given
 
101
        hypervisor, os, and architecture
 
102
        :param context: security context
 
103
        :param hypervisor: agent hypervisor type
 
104
        :param os: agent operating system type
 
105
        :param architecture: agent architecture
 
106
        """
 
107
        raise NotImplementedError()