Revision 737b0e28 ganeti/hooks.py

b/ganeti/hooks.py
1 1
#!/usr/bin/env python
2 2
#
3
# Copyright (c) 2010 Greek Research and Technology Network
3
# -*- coding: utf-8 -*-
4
#
5
# Copyright 2011 GRNET S.A. All rights reserved.
6
#
7
# Redistribution and use in source and binary forms, with or
8
# without modification, are permitted provided that the following
9
# conditions are met:
10
#
11
#   1. Redistributions of source code must retain the above
12
#      copyright notice, this list of conditions and the following
13
#      disclaimer.
14
#
15
#   2. Redistributions in binary form must reproduce the above
16
#      copyright notice, this list of conditions and the following
17
#      disclaimer in the documentation and/or other materials
18
#      provided with the distribution.
19
#
20
# THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
21
# OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
22
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
24
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
27
# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
28
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
30
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31
# POSSIBILITY OF SUCH DAMAGE.
32
#
33
# The views and conclusions contained in the software and
34
# documentation are those of the authors and should not be
35
# interpreted as representing official policies, either expressed
36
# or implied, of GRNET S.A.
4 37
#
5 38
"""Ganeti hooks for Synnefo
6 39

  
......
23 56

  
24 57
def ganeti_net_status(logger, environ):
25 58
    """Produce notifications of type 'Ganeti-net-status'
26
    
59

  
27 60
    Process all GANETI_INSTANCE_NICx_y environment variables,
28 61
    where x is the NIC index, starting at 0,
29 62
    and y is one of "MAC", "IP", "BRIDGE".
......
177 210
        if self.on_master():
178 211
            notifs = []
179 212
            notifs.append(("net", ganeti_net_status(self.logger, self.environ)))
180
            
213

  
181 214
            self.publish_msgs(notifs)
182 215

  
183 216
        return 0

Also available in: Unified diff