There's two trs
[invirt/packages/invirt-web.git] / code / xen-ips
index 0af6956..b0b8fed 100755 (executable)
@@ -1,6 +1,7 @@
 #!/usr/bin/python
 import random
 from invirt import database
+import sqlalchemy.exceptions
 import sys
 
 # stolen directly from xend/server/netif.py
@@ -37,9 +38,12 @@ def usage():
     print >> sys.stderr, "USAGE: " + sys.argv[0] + " <ip>"
 
 def addip(ip):
-    n = database.NIC(machine_id=None, mac_addr=randomMAC(), ip=ip, hostname=None)
-    database.ctx.current.save(n)
-    database.ctx.current.flush()
+    try:
+        n = database.NIC(machine=None, mac_addr=randomMAC(), ip=ip, hostname=None)
+        database.session.save(n)
+        database.session.flush()
+    except sqlalchemy.exceptions.IntegrityError:
+        pass
 
 
 if __name__ == '__main__':