Revision c6ad2f2d

b/snf-cyclades-app/synnefo/logic/management/commands/reconcile-servers.py
113 113
        self._process_args(options)
114 114

  
115 115
        D = reconciliation.get_servers_from_db()
116
        G = reconciliation.get_instances_from_ganeti()
116
        G, GNics = reconciliation.get_instances_from_ganeti()
117 117

  
118 118
        DBNics = reconciliation.get_nics_from_db()
119
        GNics = reconciliation.get_nics_from_ganeti()
119

  
120 120
        #
121 121
        # Detect problems
122 122
        #
b/snf-cyclades-app/synnefo/logic/reconciliation.py
168 168
def get_instances_from_ganeti():
169 169
    ganeti_instances = get_ganeti_instances(bulk=True)
170 170
    snf_instances = {}
171
    snf_nics = {}
171 172

  
172 173
    prefix = settings.BACKEND_PREFIX_ID
173 174
    for i in ganeti_instances:
......
185 186
                continue
186 187

  
187 188
            snf_instances[id] = i['oper_state']
189
            snf_nics[id] = get_nics_from_instance(i)
188 190

  
189
    return snf_instances
191
    return snf_instances, snf_nics
190 192

  
191 193
#
192 194
# Nics
......
212 214
                    i['name'])
213 215
                continue
214 216

  
215
            ips = zip(itertools.repeat('ipv4'), i['nic.ips'])
216
            macs = zip(itertools.repeat('mac'), i['nic.macs'])
217
            networks = zip(itertools.repeat('network'), i['nic.networks'])
218
            # modes = zip(itertools.repeat('mode'), i['nic.modes'])
219
            # links = zip(itertools.repeat('link'), i['nic.links'])
220
            # nics = zip(ips,macs,modes,networks,links)
221
            nics = zip(ips, macs, networks)
222
            nics = map(lambda x:dict(x), nics)
223
            nics = dict(enumerate(nics))
224
            snf_instances_nics[id] = nics
217
            snf_instances_nics[id] = get_nics_from_instance(i)
225 218

  
226 219
    return snf_instances_nics
227 220

  
228 221

  
222
def get_nics_from_instance(i):
223
    ips = zip(itertools.repeat('ipv4'), i['nic.ips'])
224
    macs = zip(itertools.repeat('mac'), i['nic.macs'])
225
    networks = zip(itertools.repeat('network'), i['nic.networks'])
226
    # modes = zip(itertools.repeat('mode'), i['nic.modes'])
227
    # links = zip(itertools.repeat('link'), i['nic.links'])
228
    # nics = zip(ips,macs,modes,networks,links)
229
    nics = zip(ips, macs, networks)
230
    nics = map(lambda x: dict(x), nics)
231
    nics = dict(enumerate(nics))
232
    return nics
233

  
234

  
229 235
def get_nics_from_db():
230 236
    """Get network interfaces for each vm in DB.
231 237

  

Also available in: Unified diff