~nova-coresec/nova/bexar-translations

« back to all changes in this revision

Viewing changes to nova/volume/manager.py

  • Committer: Todd Willey
  • Date: 2011-01-04 05:23:35 UTC
  • mto: (515.6.1 newlog2)
  • mto: This revision was merged to the branch mainline in revision 528.
  • Revision ID: todd@ansolabs.com-20110104052335-rfq4igtasqjv3ux5
Apply logging changes as a giant patch to work around the cloudpipe delete + add issue in the original patch.

Show diffs side-by-side

added added

removed removed

Lines of Context:
42
42
 
43
43
"""
44
44
 
45
 
import logging
46
45
import datetime
47
46
 
48
47
 
49
48
from nova import context
50
49
from nova import exception
51
50
from nova import flags
 
51
from nova import log as logging
52
52
from nova import manager
53
53
from nova import utils
54
54
 
55
55
 
 
56
LOG = logging.getLogger('nova.volume.manager')
56
57
FLAGS = flags.FLAGS
57
58
flags.DEFINE_string('storage_availability_zone',
58
59
                    'nova',
81
82
        self.driver.check_for_setup_error()
82
83
        ctxt = context.get_admin_context()
83
84
        volumes = self.db.volume_get_all_by_host(ctxt, self.host)
84
 
        logging.debug(_("Re-exporting %s volumes"), len(volumes))
 
85
        LOG.debug(_("Re-exporting %s volumes"), len(volumes))
85
86
        for volume in volumes:
86
87
            self.driver.ensure_export(ctxt, volume)
87
88
 
89
90
        """Creates and exports the volume."""
90
91
        context = context.elevated()
91
92
        volume_ref = self.db.volume_get(context, volume_id)
92
 
        logging.info(_("volume %s: creating"), volume_ref['name'])
 
93
        LOG.info(_("volume %s: creating"), volume_ref['name'])
93
94
 
94
95
        self.db.volume_update(context,
95
96
                              volume_id,
98
99
        #             before passing it to the driver.
99
100
        volume_ref['host'] = self.host
100
101
 
101
 
        logging.debug(_("volume %s: creating lv of size %sG"),
102
 
                      volume_ref['name'], volume_ref['size'])
 
102
        LOG.debug(_("volume %s: creating lv of size %sG"), volume_ref['name'],
 
103
                  volume_ref['size'])
103
104
        self.driver.create_volume(volume_ref)
104
105
 
105
 
        logging.debug(_("volume %s: creating export"), volume_ref['name'])
 
106
        LOG.debug(_("volume %s: creating export"), volume_ref['name'])
106
107
        self.driver.create_export(context, volume_ref)
107
108
 
108
109
        now = datetime.datetime.utcnow()
109
110
        self.db.volume_update(context,
110
111
                              volume_ref['id'], {'status': 'available',
111
112
                                                 'launched_at': now})
112
 
        logging.debug(_("volume %s: created successfully"), volume_ref['name'])
 
113
        LOG.debug(_("volume %s: created successfully"), volume_ref['name'])
113
114
        return volume_id
114
115
 
115
116
    def delete_volume(self, context, volume_id):
120
121
            raise exception.Error(_("Volume is still attached"))
121
122
        if volume_ref['host'] != self.host:
122
123
            raise exception.Error(_("Volume is not local to this node"))
123
 
        logging.debug(_("volume %s: removing export"), volume_ref['name'])
 
124
        LOG.debug(_("volume %s: removing export"), volume_ref['name'])
124
125
        self.driver.remove_export(context, volume_ref)
125
 
        logging.debug(_("volume %s: deleting"), volume_ref['name'])
 
126
        LOG.debug(_("volume %s: deleting"), volume_ref['name'])
126
127
        self.driver.delete_volume(volume_ref)
127
128
        self.db.volume_destroy(context, volume_id)
128
 
        logging.debug(_("volume %s: deleted successfully"), volume_ref['name'])
 
129
        LOG.debug(_("volume %s: deleted successfully"), volume_ref['name'])
129
130
        return True
130
131
 
131
132
    def setup_compute_volume(self, context, volume_id):