diff --git a/data/grid5000/sites/bordeaux/environments/lenny-x64-base-2.1.json b/data/grid5000/sites/bordeaux/environments/lenny-x64-base-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..6e296950f4ed185c998979958b73d33c2b9ddd28
--- /dev/null
+++ b/data/grid5000/sites/bordeaux/environments/lenny-x64-base-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/bordeaux/environments/lenny-x64-base-2.2.json b/data/grid5000/sites/bordeaux/environments/lenny-x64-base-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..a84e3013bc15433e665b3403a42cf9bf2747fa7a
--- /dev/null
+++ b/data/grid5000/sites/bordeaux/environments/lenny-x64-base-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/bordeaux/environments/lenny-x64-big-2.1.json b/data/grid5000/sites/bordeaux/environments/lenny-x64-big-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..03cd15ef4251f5b5d2bc70aee6258b1da3aa2501
--- /dev/null
+++ b/data/grid5000/sites/bordeaux/environments/lenny-x64-big-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/bordeaux/environments/lenny-x64-big-2.2.json b/data/grid5000/sites/bordeaux/environments/lenny-x64-big-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..eac7f97aaa8a023e7a0c5b47ec4f22d24b75e8cc
--- /dev/null
+++ b/data/grid5000/sites/bordeaux/environments/lenny-x64-big-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/bordeaux/environments/lenny-x64-nfs-2.1.json b/data/grid5000/sites/bordeaux/environments/lenny-x64-nfs-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..a8706524f2b31e3af4172fc6166edad6373a729e
--- /dev/null
+++ b/data/grid5000/sites/bordeaux/environments/lenny-x64-nfs-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/bordeaux/environments/lenny-x64-nfs-2.2.json b/data/grid5000/sites/bordeaux/environments/lenny-x64-nfs-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..748cdcc13369484aea696acd7de692640c369ae1
--- /dev/null
+++ b/data/grid5000/sites/bordeaux/environments/lenny-x64-nfs-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/grenoble/environments/lenny-x64-base-2.1.json b/data/grid5000/sites/grenoble/environments/lenny-x64-base-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..6e296950f4ed185c998979958b73d33c2b9ddd28
--- /dev/null
+++ b/data/grid5000/sites/grenoble/environments/lenny-x64-base-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/grenoble/environments/lenny-x64-big-2.1.json b/data/grid5000/sites/grenoble/environments/lenny-x64-big-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..03cd15ef4251f5b5d2bc70aee6258b1da3aa2501
--- /dev/null
+++ b/data/grid5000/sites/grenoble/environments/lenny-x64-big-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/grenoble/environments/lenny-x64-big-2.2.json b/data/grid5000/sites/grenoble/environments/lenny-x64-big-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..eac7f97aaa8a023e7a0c5b47ec4f22d24b75e8cc
--- /dev/null
+++ b/data/grid5000/sites/grenoble/environments/lenny-x64-big-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/grenoble/environments/lenny-x64-nfs-2.1.json b/data/grid5000/sites/grenoble/environments/lenny-x64-nfs-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..a8706524f2b31e3af4172fc6166edad6373a729e
--- /dev/null
+++ b/data/grid5000/sites/grenoble/environments/lenny-x64-nfs-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/grenoble/environments/lenny-x64-nfs-2.2.json b/data/grid5000/sites/grenoble/environments/lenny-x64-nfs-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..748cdcc13369484aea696acd7de692640c369ae1
--- /dev/null
+++ b/data/grid5000/sites/grenoble/environments/lenny-x64-nfs-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/grenoble/environments/lenny-x64-xen-1.0.json b/data/grid5000/sites/grenoble/environments/lenny-x64-xen-1.0.json
new file mode 120000
index 0000000000000000000000000000000000000000..45592b9895a16ab7cea92b8b9f21efc66cffca96
--- /dev/null
+++ b/data/grid5000/sites/grenoble/environments/lenny-x64-xen-1.0.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-xen-1.0.json
\ No newline at end of file
diff --git a/data/grid5000/sites/lille/environments/lenny-x64-base-2.1.json b/data/grid5000/sites/lille/environments/lenny-x64-base-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..6e296950f4ed185c998979958b73d33c2b9ddd28
--- /dev/null
+++ b/data/grid5000/sites/lille/environments/lenny-x64-base-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/lille/environments/lenny-x64-base-2.2.json b/data/grid5000/sites/lille/environments/lenny-x64-base-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..a84e3013bc15433e665b3403a42cf9bf2747fa7a
--- /dev/null
+++ b/data/grid5000/sites/lille/environments/lenny-x64-base-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/lille/environments/lenny-x64-big-2.1.json b/data/grid5000/sites/lille/environments/lenny-x64-big-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..03cd15ef4251f5b5d2bc70aee6258b1da3aa2501
--- /dev/null
+++ b/data/grid5000/sites/lille/environments/lenny-x64-big-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/lille/environments/lenny-x64-big-2.2.json b/data/grid5000/sites/lille/environments/lenny-x64-big-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..eac7f97aaa8a023e7a0c5b47ec4f22d24b75e8cc
--- /dev/null
+++ b/data/grid5000/sites/lille/environments/lenny-x64-big-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/lille/environments/lenny-x64-nfs-2.1.json b/data/grid5000/sites/lille/environments/lenny-x64-nfs-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..a8706524f2b31e3af4172fc6166edad6373a729e
--- /dev/null
+++ b/data/grid5000/sites/lille/environments/lenny-x64-nfs-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/lille/environments/lenny-x64-nfs-2.2.json b/data/grid5000/sites/lille/environments/lenny-x64-nfs-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..748cdcc13369484aea696acd7de692640c369ae1
--- /dev/null
+++ b/data/grid5000/sites/lille/environments/lenny-x64-nfs-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/lyon/environments/lenny-x64-base-2.1.json b/data/grid5000/sites/lyon/environments/lenny-x64-base-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..6e296950f4ed185c998979958b73d33c2b9ddd28
--- /dev/null
+++ b/data/grid5000/sites/lyon/environments/lenny-x64-base-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/lyon/environments/lenny-x64-base-2.2.json b/data/grid5000/sites/lyon/environments/lenny-x64-base-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..a84e3013bc15433e665b3403a42cf9bf2747fa7a
--- /dev/null
+++ b/data/grid5000/sites/lyon/environments/lenny-x64-base-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/lyon/environments/lenny-x64-big-2.1.json b/data/grid5000/sites/lyon/environments/lenny-x64-big-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..03cd15ef4251f5b5d2bc70aee6258b1da3aa2501
--- /dev/null
+++ b/data/grid5000/sites/lyon/environments/lenny-x64-big-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/lyon/environments/lenny-x64-big-2.2.json b/data/grid5000/sites/lyon/environments/lenny-x64-big-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..eac7f97aaa8a023e7a0c5b47ec4f22d24b75e8cc
--- /dev/null
+++ b/data/grid5000/sites/lyon/environments/lenny-x64-big-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/lyon/environments/lenny-x64-nfs-2.1.json b/data/grid5000/sites/lyon/environments/lenny-x64-nfs-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..a8706524f2b31e3af4172fc6166edad6373a729e
--- /dev/null
+++ b/data/grid5000/sites/lyon/environments/lenny-x64-nfs-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/lyon/environments/lenny-x64-nfs-2.2.json b/data/grid5000/sites/lyon/environments/lenny-x64-nfs-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..748cdcc13369484aea696acd7de692640c369ae1
--- /dev/null
+++ b/data/grid5000/sites/lyon/environments/lenny-x64-nfs-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/nancy/environments/lenny-x64-base-2.1.json b/data/grid5000/sites/nancy/environments/lenny-x64-base-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..6e296950f4ed185c998979958b73d33c2b9ddd28
--- /dev/null
+++ b/data/grid5000/sites/nancy/environments/lenny-x64-base-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/nancy/environments/lenny-x64-base-2.2.json b/data/grid5000/sites/nancy/environments/lenny-x64-base-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..a84e3013bc15433e665b3403a42cf9bf2747fa7a
--- /dev/null
+++ b/data/grid5000/sites/nancy/environments/lenny-x64-base-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/nancy/environments/lenny-x64-big-2.1.json b/data/grid5000/sites/nancy/environments/lenny-x64-big-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..03cd15ef4251f5b5d2bc70aee6258b1da3aa2501
--- /dev/null
+++ b/data/grid5000/sites/nancy/environments/lenny-x64-big-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/nancy/environments/lenny-x64-big-2.2.json b/data/grid5000/sites/nancy/environments/lenny-x64-big-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..eac7f97aaa8a023e7a0c5b47ec4f22d24b75e8cc
--- /dev/null
+++ b/data/grid5000/sites/nancy/environments/lenny-x64-big-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/nancy/environments/lenny-x64-nfs-2.1.json b/data/grid5000/sites/nancy/environments/lenny-x64-nfs-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..a8706524f2b31e3af4172fc6166edad6373a729e
--- /dev/null
+++ b/data/grid5000/sites/nancy/environments/lenny-x64-nfs-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/nancy/environments/lenny-x64-nfs-2.2.json b/data/grid5000/sites/nancy/environments/lenny-x64-nfs-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..748cdcc13369484aea696acd7de692640c369ae1
--- /dev/null
+++ b/data/grid5000/sites/nancy/environments/lenny-x64-nfs-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-1.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-1.json
index d4c5bdda46f98f57a9ec6a38a0fc3dec80ee8f91..80293eaf264c7d51e3f6b8ea6b58eef29a73878e 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-1.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-1.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-1-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-10.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-10.json
index ca410bf60ffc76f11f07772f5145b006e6498e65..45482579ed4c204405e8825d8a79b097297f6f51 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-10.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-10.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-10-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-11.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-11.json
index ffdef8095d09edfbd425e4f3f2b0c5f5d6572850..46833ca82fbfae621f589c84fba175378514ecef 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-11.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-11.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-11-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-12.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-12.json
index 0e3c2e0a7d2b483d98b57ed4b6dfd67157f4ac80..789aceac0635827a9218ddb8524e81fe08df72c0 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-12.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-12.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-12-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-13.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-13.json
index 2060804d289f9500421935357e3b93a3440df709..7edf0fc02266fedb8784333cb613e89cdd050265 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-13.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-13.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-13-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-14.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-14.json
index c10737a947349d895735660282e5930fb1373eb8..4d672da6aaff1174079866aecf120e43d7110459 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-14.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-14.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-14-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-15.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-15.json
index 3861545a2447ccb5bc8bf6c0ec885ec1cc071b2e..a0e5c6282c8db00fdf0c530c306a56e648a938fd 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-15.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-15.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-15-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-16.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-16.json
index 9c0622a74c01373b7e4c44612494d05be825195a..26a73c8c5d62fa740d3ca3248884348a2d3597cb 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-16.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-16.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-16-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-17.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-17.json
index 84ee4238e7f404577b5eab07bf66240279123d3c..78c627bf93d94b521434fb8cc62a9f5397054775 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-17.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-17.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-17-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-18.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-18.json
index 1253df84604198df4dc4e2dcf052202aceaf524e..6da5d05730a0fdd09b786de4c02a1a8a707e2074 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-18.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-18.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-18-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-19.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-19.json
index f9e93ee2b9ed53bc91dc9a5d6e6dbdd0cd60032e..46d8b07bd2118169d789afeea3e9b19bff5664d0 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-19.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-19.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-19-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-2.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-2.json
index 54dbf9370e4db0112ad522058cc60b0cddb70ff0..e3ec179ffe2f17632eebd78cd0443983333ef166 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-2.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-2.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-2-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-20.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-20.json
index 4646790bc65caa514b355e63f82534e51d7dd42e..0045e2c7b4efb76a60faf1148b62ecbcc9d9a770 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-20.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-20.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-20-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-21.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-21.json
index 3f8ef1b4829762ff44ca47f0040e6b7da1daf880..804f604c70beb5f87dd339bcdb7bfd6a7398417f 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-21.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-21.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-21-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-22.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-22.json
index a766dd24ad229d538f68951dc00c6167efad855f..4b4ddf649afc7876de68f982f3e0b026d87810ae 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-22.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-22.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-22-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-23.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-23.json
index b6c8f87d4f68a90e207ae045a2be8b5168c669b1..c678f1e3657a76caed262433f9af8416ba65608b 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-23.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-23.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-23-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-24.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-24.json
index 139d36a3f26537c1716ff1e7469b696489a19594..41a238fbb8398e525fd029da7ef238ada898cc03 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-24.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-24.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-24-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-25.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-25.json
index 6bcb10edc2f52cbbc9c93aa70c7e62574e5c64b2..34a5bb9fa5185816f410cd2b63e0c81fd3774f47 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-25.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-25.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-25-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-26.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-26.json
index 3a12a199918405bacb07247c811cb3b97af85840..3bf97ecdbf52ce642d2b7066d2c70b09557d8d88 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-26.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-26.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-26-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-27.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-27.json
index 1738781f25a61bffd1982b45aa0e7259b64c28bb..9474d9a37d795f70f07f9063fa7037780b3c5ef1 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-27.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-27.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-27-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-28.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-28.json
index b1e1b1ed9faaf1134756378c6e7e4432ae7477b7..d72062a7d0eeca94d4e61d09e0ca24aba15752d5 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-28.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-28.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-28-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-29.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-29.json
index 4744fdbe93b9223047f485bbfb8387015f9eb3c6..be404a8c522580faaf216eac2dad26613a255bd9 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-29.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-29.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-29-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-3.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-3.json
index 4658e826e843a9a7ad978b9612ca31ff5cd79be1..a2c2e74a000b41950694c300b30c2621af3d6a0c 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-3.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-3.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-3-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-30.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-30.json
index 8b7e4edd2c07ac7a7b32914d4e8f35d4260f69fd..77d7727f3791a56d695ca29e73bd0ab295043efa 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-30.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-30.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-30-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-4.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-4.json
index 0a92ae7317c611b5de5afdc5da5711985c6b0875..7d326cc5b887910822ffa838357683f66af652e4 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-4.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-4.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-4-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-5.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-5.json
index 21e12e1576e04ee00d07ee1eae01a721971a07bc..c5bb3e916deaa81a1d6c8041d70ab133525bf702 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-5.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-5.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-5-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-6.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-6.json
index f7e696970ca57d33e49e4af3087512dc9450af69..c855051241d4476ef5b244a93f334a473fe5e224 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-6.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-6.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-6-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-7.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-7.json
index ad45e5d8caebcecc009f44081ba8ed30edf00e56..88f946951be9c9fdd1b8eeadc0b9ce6859c3362e 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-7.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-7.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-7-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-8.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-8.json
index 7ab7ae68be53aaa05cbef96a5f92cfc4d991adb1..6c85960e134d1f8c1c6e048b6a764e4fa3147cab 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-8.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-8.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-8-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-9.json b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-9.json
index da3af1557a5575388d54acebdbfd7608ba54956f..96b783a7ee5264232ca6ca29e0df44b9a7b17073 100755
--- a/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-9.json
+++ b/data/grid5000/sites/orsay/clusters/netgdx/nodes/netgdx-9.json
@@ -20,12 +20,12 @@
       "mounted": false,
       "network_address": "netgdx-9-bmc.orsay.grid5000.fr",
       "rate": 1000000000,
-      "switch": "netgearxy.orsay.grid5000.fr",
+      "switch": "cisco.orsay.grid5000.fr",
       "switch_console": "mrv00.orsay.grid5000.fr",
       "switch_console_ip": "172.26.120.200",
-      "switch_console_mac": "aa:aa:aa:aa:aa:aa",
-      "switch_ip": "172.26.120.150",
-      "switch_mac": "aa:aa:aa:aa:aa:aa",
+      "switch_console_mac": "nil",
+      "switch_ip": "172.26.120.100",
+      "switch_mac": "00:11:5d:3d:50:00",
       "vendor": "Broadcom",
       "version": "NetXtreme BCM5780"
     },
diff --git a/data/grid5000/sites/orsay/environments/lenny-x64-base-2.1.json b/data/grid5000/sites/orsay/environments/lenny-x64-base-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..6e296950f4ed185c998979958b73d33c2b9ddd28
--- /dev/null
+++ b/data/grid5000/sites/orsay/environments/lenny-x64-base-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/orsay/environments/lenny-x64-base-2.2.json b/data/grid5000/sites/orsay/environments/lenny-x64-base-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..a84e3013bc15433e665b3403a42cf9bf2747fa7a
--- /dev/null
+++ b/data/grid5000/sites/orsay/environments/lenny-x64-base-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/orsay/environments/lenny-x64-big-2.1.json b/data/grid5000/sites/orsay/environments/lenny-x64-big-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..03cd15ef4251f5b5d2bc70aee6258b1da3aa2501
--- /dev/null
+++ b/data/grid5000/sites/orsay/environments/lenny-x64-big-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/orsay/environments/lenny-x64-big-2.2.json b/data/grid5000/sites/orsay/environments/lenny-x64-big-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..eac7f97aaa8a023e7a0c5b47ec4f22d24b75e8cc
--- /dev/null
+++ b/data/grid5000/sites/orsay/environments/lenny-x64-big-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/orsay/environments/lenny-x64-nfs-2.1.json b/data/grid5000/sites/orsay/environments/lenny-x64-nfs-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..a8706524f2b31e3af4172fc6166edad6373a729e
--- /dev/null
+++ b/data/grid5000/sites/orsay/environments/lenny-x64-nfs-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/orsay/environments/lenny-x64-nfs-2.2.json b/data/grid5000/sites/orsay/environments/lenny-x64-nfs-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..748cdcc13369484aea696acd7de692640c369ae1
--- /dev/null
+++ b/data/grid5000/sites/orsay/environments/lenny-x64-nfs-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/orsay/orsay.json b/data/grid5000/sites/orsay/orsay.json
index 8c1413ed6780043602b38972b5c3ff13dbb62591..f46cdb53a67bafcab6bb3088d420a4b20806585d 100755
--- a/data/grid5000/sites/orsay/orsay.json
+++ b/data/grid5000/sites/orsay/orsay.json
@@ -1,14 +1,14 @@
 {
   "description": "",
-  "email_contact": null,
+  "email_contact": "orsay-staff@lists.grid5000.fr",
   "latitude": 48.7,
   "location": "Orsay, France",
   "longitude": 2.2,
   "name": "Orsay",
-  "security_contact": null,
-  "sys_admin_contact": null,
+  "security_contact": "orsay-staff@lists.grid5000.fr",
+  "sys_admin_contact": "orsay-staff@lists.grid5000.fr",
   "type": "site",
   "uid": "orsay",
-  "user_support_contact": null,
-  "web": null
+  "user_support_contact": "orsay-staff@lists.grid5000.fr",
+  "web": "https://www.grid5000.fr/mediawiki/index.php/Orsay:Home"
 }
\ No newline at end of file
diff --git a/data/grid5000/sites/rennes/environments/lenny-x64-base-2.1.json b/data/grid5000/sites/rennes/environments/lenny-x64-base-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..6e296950f4ed185c998979958b73d33c2b9ddd28
--- /dev/null
+++ b/data/grid5000/sites/rennes/environments/lenny-x64-base-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/rennes/environments/lenny-x64-base-2.2.json b/data/grid5000/sites/rennes/environments/lenny-x64-base-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..a84e3013bc15433e665b3403a42cf9bf2747fa7a
--- /dev/null
+++ b/data/grid5000/sites/rennes/environments/lenny-x64-base-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/rennes/environments/lenny-x64-big-2.1.json b/data/grid5000/sites/rennes/environments/lenny-x64-big-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..03cd15ef4251f5b5d2bc70aee6258b1da3aa2501
--- /dev/null
+++ b/data/grid5000/sites/rennes/environments/lenny-x64-big-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/rennes/environments/lenny-x64-big-2.2.json b/data/grid5000/sites/rennes/environments/lenny-x64-big-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..eac7f97aaa8a023e7a0c5b47ec4f22d24b75e8cc
--- /dev/null
+++ b/data/grid5000/sites/rennes/environments/lenny-x64-big-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/rennes/environments/lenny-x64-nfs-2.1.json b/data/grid5000/sites/rennes/environments/lenny-x64-nfs-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..a8706524f2b31e3af4172fc6166edad6373a729e
--- /dev/null
+++ b/data/grid5000/sites/rennes/environments/lenny-x64-nfs-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/rennes/environments/lenny-x64-nfs-2.2.json b/data/grid5000/sites/rennes/environments/lenny-x64-nfs-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..748cdcc13369484aea696acd7de692640c369ae1
--- /dev/null
+++ b/data/grid5000/sites/rennes/environments/lenny-x64-nfs-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/sophia/environments/lenny-x64-base-2.1.json b/data/grid5000/sites/sophia/environments/lenny-x64-base-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..6e296950f4ed185c998979958b73d33c2b9ddd28
--- /dev/null
+++ b/data/grid5000/sites/sophia/environments/lenny-x64-base-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/sophia/environments/lenny-x64-base-2.2.json b/data/grid5000/sites/sophia/environments/lenny-x64-base-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..a84e3013bc15433e665b3403a42cf9bf2747fa7a
--- /dev/null
+++ b/data/grid5000/sites/sophia/environments/lenny-x64-base-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/sophia/environments/lenny-x64-big-2.1.json b/data/grid5000/sites/sophia/environments/lenny-x64-big-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..03cd15ef4251f5b5d2bc70aee6258b1da3aa2501
--- /dev/null
+++ b/data/grid5000/sites/sophia/environments/lenny-x64-big-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/sophia/environments/lenny-x64-big-2.2.json b/data/grid5000/sites/sophia/environments/lenny-x64-big-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..eac7f97aaa8a023e7a0c5b47ec4f22d24b75e8cc
--- /dev/null
+++ b/data/grid5000/sites/sophia/environments/lenny-x64-big-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/sophia/environments/lenny-x64-nfs-2.1.json b/data/grid5000/sites/sophia/environments/lenny-x64-nfs-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..a8706524f2b31e3af4172fc6166edad6373a729e
--- /dev/null
+++ b/data/grid5000/sites/sophia/environments/lenny-x64-nfs-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/sophia/environments/lenny-x64-nfs-2.2.json b/data/grid5000/sites/sophia/environments/lenny-x64-nfs-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..748cdcc13369484aea696acd7de692640c369ae1
--- /dev/null
+++ b/data/grid5000/sites/sophia/environments/lenny-x64-nfs-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/toulouse/environments/etch-x64-base-2.0.json b/data/grid5000/sites/toulouse/environments/etch-x64-base-2.0.json
new file mode 120000
index 0000000000000000000000000000000000000000..bedd43c06b96d16c3b34dbc6b7441f92e1f1fe46
--- /dev/null
+++ b/data/grid5000/sites/toulouse/environments/etch-x64-base-2.0.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/etch-x64-base-2.0.json
\ No newline at end of file
diff --git a/data/grid5000/sites/toulouse/environments/etch-x64-big-2.0.json b/data/grid5000/sites/toulouse/environments/etch-x64-big-2.0.json
new file mode 120000
index 0000000000000000000000000000000000000000..623fc4035d7d6f07041313ab9dbac0eb67521126
--- /dev/null
+++ b/data/grid5000/sites/toulouse/environments/etch-x64-big-2.0.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/etch-x64-big-2.0.json
\ No newline at end of file
diff --git a/data/grid5000/sites/toulouse/environments/etch-x64-nfs-2.0.json b/data/grid5000/sites/toulouse/environments/etch-x64-nfs-2.0.json
new file mode 120000
index 0000000000000000000000000000000000000000..b17ab466281ebd3e7e6d0fd873dbc7fc408df5f0
--- /dev/null
+++ b/data/grid5000/sites/toulouse/environments/etch-x64-nfs-2.0.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/etch-x64-nfs-2.0.json
\ No newline at end of file
diff --git a/data/grid5000/sites/toulouse/environments/lenny-x64-base-2.0.json b/data/grid5000/sites/toulouse/environments/lenny-x64-base-2.0.json
new file mode 120000
index 0000000000000000000000000000000000000000..50b7018bf66a9f70b75b44c5af575568b140f4aa
--- /dev/null
+++ b/data/grid5000/sites/toulouse/environments/lenny-x64-base-2.0.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.0.json
\ No newline at end of file
diff --git a/data/grid5000/sites/toulouse/environments/lenny-x64-base-2.1.json b/data/grid5000/sites/toulouse/environments/lenny-x64-base-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..6e296950f4ed185c998979958b73d33c2b9ddd28
--- /dev/null
+++ b/data/grid5000/sites/toulouse/environments/lenny-x64-base-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/toulouse/environments/lenny-x64-base-2.2.json b/data/grid5000/sites/toulouse/environments/lenny-x64-base-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..a84e3013bc15433e665b3403a42cf9bf2747fa7a
--- /dev/null
+++ b/data/grid5000/sites/toulouse/environments/lenny-x64-base-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-base-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/toulouse/environments/lenny-x64-big-2.0.json b/data/grid5000/sites/toulouse/environments/lenny-x64-big-2.0.json
new file mode 120000
index 0000000000000000000000000000000000000000..640621801bb9e25fc8fe278c37b389dbd6fa3377
--- /dev/null
+++ b/data/grid5000/sites/toulouse/environments/lenny-x64-big-2.0.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.0.json
\ No newline at end of file
diff --git a/data/grid5000/sites/toulouse/environments/lenny-x64-big-2.1.json b/data/grid5000/sites/toulouse/environments/lenny-x64-big-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..03cd15ef4251f5b5d2bc70aee6258b1da3aa2501
--- /dev/null
+++ b/data/grid5000/sites/toulouse/environments/lenny-x64-big-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/toulouse/environments/lenny-x64-big-2.2.json b/data/grid5000/sites/toulouse/environments/lenny-x64-big-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..eac7f97aaa8a023e7a0c5b47ec4f22d24b75e8cc
--- /dev/null
+++ b/data/grid5000/sites/toulouse/environments/lenny-x64-big-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-big-2.2.json
\ No newline at end of file
diff --git a/data/grid5000/sites/toulouse/environments/lenny-x64-nfs-2.0.json b/data/grid5000/sites/toulouse/environments/lenny-x64-nfs-2.0.json
new file mode 120000
index 0000000000000000000000000000000000000000..da9be44bd3218f06293e3820ceb1bf7c69e2043a
--- /dev/null
+++ b/data/grid5000/sites/toulouse/environments/lenny-x64-nfs-2.0.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.0.json
\ No newline at end of file
diff --git a/data/grid5000/sites/toulouse/environments/lenny-x64-nfs-2.1.json b/data/grid5000/sites/toulouse/environments/lenny-x64-nfs-2.1.json
new file mode 120000
index 0000000000000000000000000000000000000000..a8706524f2b31e3af4172fc6166edad6373a729e
--- /dev/null
+++ b/data/grid5000/sites/toulouse/environments/lenny-x64-nfs-2.1.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.1.json
\ No newline at end of file
diff --git a/data/grid5000/sites/toulouse/environments/lenny-x64-nfs-2.2.json b/data/grid5000/sites/toulouse/environments/lenny-x64-nfs-2.2.json
new file mode 120000
index 0000000000000000000000000000000000000000..748cdcc13369484aea696acd7de692640c369ae1
--- /dev/null
+++ b/data/grid5000/sites/toulouse/environments/lenny-x64-nfs-2.2.json
@@ -0,0 +1 @@
+../../../../grid5000/environments/lenny-x64-nfs-2.2.json
\ No newline at end of file
diff --git a/generators/input/bordeaux.rb b/generators/input/bordeaux.rb
index 52be5cdd5fa7df3d3e44b7e513f3e79af696a8f7..57c956745f4182c51a1df6dcd085ef20b47dfe65 100755
--- a/generators/input/bordeaux.rb
+++ b/generators/input/bordeaux.rb
@@ -13,10 +13,6 @@ site :bordeaux do |site_uid|
   sys_admin_contact "bordeaux-staff@lists.grid5000.fr"
   security_contact "bordeaux-staff@lists.grid5000.fr"
   user_support_contact "bordeaux-staff@lists.grid5000.fr"
-  ( %w{etch-x64-base-1.0 etch-x64-base-1.1 etch-x64-nfs-1.0 etch-x64-nfs-1.1 etch-x64-big-1.0 etch-x64-big-1.1 etch-x64-base-2.0 etch-x64-nfs-2.0 etch-x64-big-2.0} +
-    %w{lenny-x64-base-0.9 lenny-x64-nfs-0.9 lenny-x64-big-0.9 lenny-x64-base-1.0 lenny-x64-nfs-1.0 lenny-x64-big-1.0 lenny-x64-base-2.0 lenny-x64-nfs-2.0 lenny-x64-big-2.0} +
-    %w{lenny-x64-base-2.3 lenny-x64-big-2.3 lenny-x64-min-0.8 lenny-x64-nfs-2.3 lenny-x64-xen-2.3} +
-    %w{squeeze-x64-base-0.8 squeeze-x64-big-0.8 squeeze-x64-min-0.8 squeeze-x64-nfs-0.8 squeeze-x64-xen-0.8}  ).each{|env_uid| environment env_uid, :refer_to => "grid5000/environments/#{env_uid}"}
   
   cluster :bordeplage do |cluster_uid|
     model "Dell PowerEdge 1855"
diff --git a/generators/input/environments.rb b/generators/input/environments.rb
index 4073e59ab5729cf7199d7ddb9c669f87e7296186..f85664cb869b6845687d340aba3a1e291fc64600 100755
--- a/generators/input/environments.rb
+++ b/generators/input/environments.rb
@@ -1,6 +1,7 @@
 environment 'sid-x64-base-1.0' do
   state "deprecated"
   file({:path => "/grid5000/images/sid-x64-base-1.0.tgz", :md5 => "e39be32c087f0c9777fd0b0ad7d12050"})
+  available_on %w{}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100"
   kernel "2.6.18-8"
   based_on "Debian version sid for amd64"
@@ -16,6 +17,7 @@ end
 environment 'sid-x64-base-1.1' do
   state "deprecated"
   file({:path => "/grid5000/images/sid-x64-base-1.1.tgz", :md5 => "756ccc2096e9feacde85500d33683dba"})
+  available_on %w{}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, HP DL385G2, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100"
   kernel "2.6.24"
   based_on "Debian version sid for amd64"
@@ -31,6 +33,7 @@ end
 environment 'sid-x64-nfs-1.0' do
   state "deprecated"
   file({:path => "/grid5000/images/sid-x64-nfs-1.0.tgz", :md5 => "6e004d1ac25e86a1dadc09d28f968eb5"})
+  available_on %w{}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100"
   kernel "2.6.18-4"
   based_on "Debian version sid for amd64"
@@ -46,6 +49,7 @@ end
 environment 'sid-x64-nfs-1.1' do
   state "deprecated"
   file({:path => "/grid5000/images/sid-x64-nfs-1.1.tgz", :md5 => "4218f5a9bfea4a759fa684db1ec4d89c"})
+  available_on %w{}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100"
   kernel "2.6.24.3"
   based_on "Debian version sid for amd64"
@@ -61,6 +65,7 @@ end
 environment 'sid-x64-big-1.1' do
   state "deprecated"
   file({:path => "/grid5000/images/sid-x64-big-1.1.tgz", :md5 => "d514bee74404ed5f64ff41b2f60c4f7f"})
+  available_on %w{}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100"
   kernel "2.6.24.3"
   based_on "Debian version sid for amd64"
@@ -76,6 +81,7 @@ end
 environment 'etch-x64-base-1.0' do
   state "stable"
   file({:path => "/grid5000/images/etch-x64-base-1.0.tgz", :md5 => "adcd603db66d9e3da98926174f7d69aa"})
+  available_on %w{bordeaux lille lyon nancy orsay rennes sophia toulouse}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
   kernel "2.6.18-6-amd64"
   based_on "Debian version etch for amd64"
@@ -91,6 +97,7 @@ end
 environment 'etch-x64-base-1.1' do
   state "stable"
   file({:path => "/grid5000/images/etch-x64-base-1.1.tgz", :md5 => "457cc632376c2c4cefd975b36bf65072"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
   kernel "2.6.18-6-amd64"
   based_on "Debian version etch for amd64"
@@ -103,9 +110,26 @@ environment 'etch-x64-base-1.1' do
   tcp_bandwidth 1.G
 end
 
+environment 'etch-x64-base-2.0' do
+  state "stable"
+  file({:path => "/grid5000/images/etch-x64-base-2.0.tgz", :md5 => "97ec1fa027e597ee54d7e38f6cd70472"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
+  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310i, Carri CS-5393B"
+  kernel "2.6.18-6-amd64"
+  based_on "Debian version etch for amd64"
+  consoles [{:port => "ttyS0", :bps => 34800}]
+  services []
+  accounts [{:login => "root", :password => "grid5000"}, {:login => "g5k", :password => "grid5000"}]
+  applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ")
+  x11_forwarding true
+  max_open_files 8192
+  tcp_bandwidth 1.G
+end
+
 environment 'etch-x64-nfs-1.0' do
   state "stable"
   file({:path => "/grid5000/images/etch-x64-nfs-1.0.tgz", :md5 => "c76462698ae0480aaa48c9b707b96da5"})
+  available_on %w{bordeaux lille lyon nancy orsay rennes sophia toulouse}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
   kernel "2.6.18-6-amd64"
   based_on "Debian version etch for amd64"
@@ -121,6 +145,7 @@ end
 environment 'etch-x64-nfs-1.1' do
   state "stable"
   file({:path => "/grid5000/images/etch-x64-nfs-1.1.tgz", :md5 => "303740c75b7a74c94bb5909d3aa8ac4f"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
   kernel "2.6.18-6-amd64"
   based_on "Debian version etch for amd64"
@@ -133,9 +158,26 @@ environment 'etch-x64-nfs-1.1' do
   tcp_bandwidth 1.G
 end
 
+environment 'etch-x64-nfs-2.0' do
+  state "stable"
+  file({:path => "/grid5000/images/etch-x64-nfs-2.0.tgz", :md5 => "e564f3b80ba37eb01d967507a05dd5ca"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
+  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310, Carri CS-5393B"
+  kernel "2.6.18-6-amd64"
+  based_on "Debian version etch for amd64"
+  consoles [{:port => "ttyS0", :bps => 34800}]
+  services ['ldap', 'nfs']
+  accounts [{:login => "root", :password => "grid5000"}]
+  applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ")
+  x11_forwarding true
+  max_open_files 8192
+  tcp_bandwidth 1.G
+end
+
 environment 'etch-x64-big-1.0' do
   state "stable"
   file({:path => "/grid5000/images/etch-x64-big-1.0.tgz", :md5 => "5ddf6e898c11846dfb3eb9b2def2d2de"})
+  available_on %w{bordeaux lille lyon nancy orsay rennes sophia toulouse}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
   kernel "2.6.18-6-amd64"
   based_on "Debian version etch for amd64"
@@ -151,6 +193,7 @@ end
 environment 'etch-x64-big-1.1' do
   state "stable"
   file({:path => "/grid5000/images/etch-x64-big-1.1.tgz", :md5 => "6c971c97eb2f62c056e343cbe9f4a71d"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
   kernel "2.6.18-6-amd64"
   based_on "Debian version etch for amd64"
@@ -163,9 +206,26 @@ environment 'etch-x64-big-1.1' do
   tcp_bandwidth 1.G
 end
 
+environment 'etch-x64-big-2.0' do
+  state "stable"
+  file({:path => "/grid5000/images/etch-x64-big-2.0.tgz", :md5 => "b406634f4d0e0e5859c5ba7936064c2c"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
+  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310, Carri CS-5393B"
+  kernel "2.6.18-6-amd64"
+  based_on "Debian version etch for amd64"
+  consoles [{:port => "ttyS0", :bps => 34800}]
+  services ['ldap', 'nfs']
+  accounts [{:login => "root", :password => "grid5000"}]
+  applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ")
+  x11_forwarding true
+  max_open_files 8192
+  tcp_bandwidth 1.G
+end
+
 environment 'etch-x64-xen-1.0' do
   state "testing"
   file({:path => "/grid5000/images/etch-x64-xen-1.0.tgz", :md5 => "42cd6233ff42d0c343a4a93ed6017d97"})
+  available_on %w{nancy}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
   kernel "2.6.18-6-xen-amd64"
   based_on "Debian version etch for amd64"
@@ -181,6 +241,7 @@ end
 environment 'lenny-x64-base-0.9' do
   state "stable"
   file({:path => "/grid5000/images/lenny-x64-base-0.9.tgz", :md5 => "c1913bf8de22f52ef213151c25208a4a"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
   kernel "2.6.24.3"
   based_on "Debian version lenny for amd64"
@@ -196,6 +257,7 @@ end
 environment 'lenny-x64-base-1.0' do
   state "stable"
   file({:path => "/grid5000/images/lenny-x64-base-1.0.tgz", :md5 => "1b60d38c016b844024bc541efb212573"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
   kernel "2.6.26.2"
   based_on "Debian version lenny for amd64"
@@ -208,39 +270,26 @@ environment 'lenny-x64-base-1.0' do
   tcp_bandwidth 1.G
 end
 
-environment 'lenny-x64-nfs-0.9' do
-  state "stable"
-  file({:path => "/grid5000/images/lenny-x64-nfs-0.9.tgz", :md5 => "7975882dec6bde601346c0152e161638"})
-  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
-  kernel "2.6.24.3"
-  based_on "Debian version lenny for amd64"
-  consoles [{:port => "ttyS0", :bps => 34800}]
-  services ['ldap', 'nfs']
-  accounts [{:login => "root", :password => "grid5000"}]
-  applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ")
-  x11_forwarding true
-  max_open_files 8192
-  tcp_bandwidth 1.G
-end
-
-environment 'lenny-x64-nfs-1.0' do
+environment 'lenny-x64-base-2.0' do
   state "stable"
-  file({:path => "/grid5000/images/lenny-x64-nfs-1.0.tgz", :md5 => "89448d214db5477e3ac6ef39ed0e7f6e"})
-  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
+  file({:path => "/grid5000/images/lenny-x64-base-2.0.tgz", :md5 => "43217a044daf45368231f405f7d63b59"})
   kernel "2.6.26.2"
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
+  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310, Carri CS-5393B"
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
-  services ['ldap', 'nfs']
-  accounts [{:login => "root", :password => "grid5000"}]
+  services []
+  accounts [{:login => "root", :password => "grid5000"}, {:login => "g5k", :password => "grid5000"}]
   applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ")
   x11_forwarding true
   max_open_files 8192
   tcp_bandwidth 1.G
 end
 
-environment 'lenny-x64-big-0.9' do
+environment 'lenny-x64-nfs-0.9' do
   state "stable"
-  file({:path => "/grid5000/images/lenny-x64-big-0.9.tgz", :md5 => "ead20673233d0b9162ba56481d596add"})
+  file({:path => "/grid5000/images/lenny-x64-nfs-0.9.tgz", :md5 => "7975882dec6bde601346c0152e161638"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
   kernel "2.6.24.3"
   based_on "Debian version lenny for amd64"
@@ -253,9 +302,10 @@ environment 'lenny-x64-big-0.9' do
   tcp_bandwidth 1.G
 end
 
-environment 'lenny-x64-big-1.0' do
+environment 'lenny-x64-nfs-1.0' do
   state "stable"
-  file({:path => "/grid5000/images/lenny-x64-big-1.0.tgz", :md5 => "b2e48586472579ac2b908816175e4aa6"})
+  file({:path => "/grid5000/images/lenny-x64-nfs-1.0.tgz", :md5 => "89448d214db5477e3ac6ef39ed0e7f6e"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
   kernel "2.6.26.2"
   based_on "Debian version lenny for amd64"
@@ -268,42 +318,13 @@ environment 'lenny-x64-big-1.0' do
   tcp_bandwidth 1.G
 end
 
-environment 'lenny-x64-xen-1.0' do
-  state "testing"
-  file({:path => "/grid5000/images/lenny-x64-xen-1.0.tgz", :md5 => "3e292c686c3ed0b417e44fdde5ec1771"})
-  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
-  kernel "2.6.26-2-xen-amd64"
-  based_on "Debian version etch for amd64"
-  consoles [{:port => "ttyS0", :bps => 34800}]
-  services []
-  accounts [{:login => "root", :password => "grid5000"}]
-  applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ")
-  x11_forwarding true
-  max_open_files 8192
-  tcp_bandwidth 1.G
-end
-
-environment 'etch-x64-base-2.0' do
-  state "stable"
-  file({:path => "/grid5000/images/etch-x64-base-2.0.tgz", :md5 => "97ec1fa027e597ee54d7e38f6cd70472"})
-  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310i, Carri CS-5393B"
-  kernel "2.6.18-6-amd64"
-  based_on "Debian version etch for amd64"
-  consoles [{:port => "ttyS0", :bps => 34800}]
-  services []
-  accounts [{:login => "root", :password => "grid5000"}, {:login => "g5k", :password => "grid5000"}]
-  applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ")
-  x11_forwarding true
-  max_open_files 8192
-  tcp_bandwidth 1.G
-end
-
-environment 'etch-x64-nfs-2.0' do
+environment 'lenny-x64-nfs-2.0' do
   state "stable"
-  file({:path => "/grid5000/images/etch-x64-nfs-2.0.tgz", :md5 => "e564f3b80ba37eb01d967507a05dd5ca"})
+  file({:path => "/grid5000/images/lenny-x64-nfs-2.0.tgz", :md5 => "995f0dad8a0462b47e4fc22ae4e32369"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310, Carri CS-5393B"
-  kernel "2.6.18-6-amd64"
-  based_on "Debian version etch for amd64"
+  kernel "2.6.26.2"
+  based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
   services ['ldap', 'nfs']
   accounts [{:login => "root", :password => "grid5000"}]
@@ -313,12 +334,13 @@ environment 'etch-x64-nfs-2.0' do
   tcp_bandwidth 1.G
 end
 
-environment 'etch-x64-big-2.0' do
+environment 'lenny-x64-big-0.9' do
   state "stable"
-  file({:path => "/grid5000/images/etch-x64-big-2.0.tgz", :md5 => "b406634f4d0e0e5859c5ba7936064c2c"})
-  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310, Carri CS-5393B"
-  kernel "2.6.18-6-amd64"
-  based_on "Debian version etch for amd64"
+  file({:path => "/grid5000/images/lenny-x64-big-0.9.tgz", :md5 => "ead20673233d0b9162ba56481d596add"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
+  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
+  kernel "2.6.24.3"
+  based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
   services ['ldap', 'nfs']
   accounts [{:login => "root", :password => "grid5000"}]
@@ -328,24 +350,26 @@ environment 'etch-x64-big-2.0' do
   tcp_bandwidth 1.G
 end
 
-environment 'lenny-x64-base-2.0' do
+environment 'lenny-x64-big-1.0' do
   state "stable"
-  file({:path => "/grid5000/images/lenny-x64-base-2.0.tgz", :md5 => "43217a044daf45368231f405f7d63b59"})
+  file({:path => "/grid5000/images/lenny-x64-big-1.0.tgz", :md5 => "b2e48586472579ac2b908816175e4aa6"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
+  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
   kernel "2.6.26.2"
-  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310, Carri CS-5393B"
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
-  services []
-  accounts [{:login => "root", :password => "grid5000"}, {:login => "g5k", :password => "grid5000"}]
+  services ['ldap', 'nfs']
+  accounts [{:login => "root", :password => "grid5000"}]
   applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ")
   x11_forwarding true
   max_open_files 8192
   tcp_bandwidth 1.G
 end
 
-environment 'lenny-x64-nfs-2.0' do
+environment 'lenny-x64-big-2.0' do
   state "stable"
-  file({:path => "/grid5000/images/lenny-x64-nfs-2.0.tgz", :md5 => "995f0dad8a0462b47e4fc22ae4e32369"})
+  file({:path => "/grid5000/images/lenny-x64-big-2.0.tgz", :md5 => "70a31ddd4db68c63b8364393dd379b75"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310, Carri CS-5393B"
   kernel "2.6.26.2"
   based_on "Debian version lenny for amd64"
@@ -358,14 +382,15 @@ environment 'lenny-x64-nfs-2.0' do
   tcp_bandwidth 1.G
 end
 
-environment 'lenny-x64-big-2.0' do
-  state "stable"
-  file({:path => "/grid5000/images/lenny-x64-big-2.0.tgz", :md5 => "70a31ddd4db68c63b8364393dd379b75"})
-  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310, Carri CS-5393B"
-  kernel "2.6.26.2"
-  based_on "Debian version lenny for amd64"
+environment 'lenny-x64-xen-1.0' do
+  state "testing"
+  file({:path => "/grid5000/images/lenny-x64-xen-1.0.tgz", :md5 => "3e292c686c3ed0b417e44fdde5ec1771"})
+  available_on %w{grenoble lille nancy}
+  valid_on "Dell PE1855, Dell PE1950, HP DL140G3, HP DL145G2, IBM x3455, IBM e325, IBM e326, IBM e326m, Sun V20z, Sun X2200 M2, Sun X4100, Altix Xe 310"
+  kernel "2.6.26-2-xen-amd64"
+  based_on "Debian version etch for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
-  services ['ldap', 'nfs']
+  services []
   accounts [{:login => "root", :password => "grid5000"}]
   applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ")
   x11_forwarding true
@@ -377,6 +402,7 @@ environment 'lenny-x64-base-2.1' do
   state "stable"
   file({:path => "/grid5000/images/lenny-x64-base-2.1.tgz", :md5 => "4d63ad5aa069916da98e3c074297db41"})
   kernel "2.6.26.2"
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "griffon , grelon , sagittaire , capricorne , netgdx , gdx , bordeplage , bordereau , parapide , paramount , paraquad , paradent , azur , helios , sol , suno , edel , genepi , adonis , chuque , chinqchint , chicon , chti"
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
@@ -391,6 +417,7 @@ end
 environment 'lenny-x64-nfs-2.1' do
   state "stable"
   file({:path => "/grid5000/images/lenny-x64-nfs-2.1.tgz", :md5 => "b0756d201e0719c40785b746b8d5f395"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "griffon , grelon , sagittaire , capricorne , netgdx , gdx , bordeplage , bordereau , parapide , paramount , paraquad , paradent , azur , helios , sol , suno , edel , genepi , adonis , chuque , chinqchint , chicon , chti"
   kernel "2.6.26.2"
   based_on "Debian version lenny for amd64"
@@ -406,6 +433,7 @@ end
 environment 'lenny-x64-big-2.1' do
   state "stable"
   file({:path => "/grid5000/images/lenny-x64-big-2.1.tgz", :md5 => "b85027090ace01bb5fc34c951ec5d5b4"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "griffon , grelon , sagittaire , capricorne , netgdx , gdx , bordeplage , bordereau , parapide , paramount , paraquad , paradent , azur , helios , sol , suno , edel , genepi , adonis , chuque , chinqchint , chicon , chti"
   kernel "2.6.26.2"
   based_on "Debian version lenny for amd64"
@@ -418,12 +446,11 @@ environment 'lenny-x64-big-2.1' do
   tcp_bandwidth 1.G
 end
 
-
-
 environment 'lenny-x64-base-2.2' do
   state "stable"
   file({:path => "/grid5000/images/lenny-x64-base-2.2.tgz", :md5 => "dedcda842737b61fc47d73b082edc9c4"})
   kernel "2.6.26.2"
+  available_on %w{bordeaux lille lyon nancy orsay rennes sophia toulouse}
   valid_on "griffon , grelon , sagittaire , capricorne , netgdx , gdx , bordeplage , bordereau , parapide , paramount , paraquad , paradent , azur , helios , sol , suno , edel , genepi , adonis , chuque , chinqchint , chicon , chti"
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
@@ -438,6 +465,7 @@ end
 environment 'lenny-x64-nfs-2.2' do
   state "stable"
   file({:path => "/grid5000/images/lenny-x64-nfs-2.2.tgz", :md5 => "bd1ba75d86c226ba7e0e7153d892cc93"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "griffon , grelon , sagittaire , capricorne , netgdx , gdx , bordeplage , bordereau , parapide , paramount , paraquad , paradent , azur , helios , sol , suno , edel , genepi , adonis , chuque , chinqchint , chicon , chti"
   kernel "2.6.26.2"
   based_on "Debian version lenny for amd64"
@@ -453,8 +481,10 @@ end
 environment 'lenny-x64-big-2.2' do
   state "stable"
   file({:path => "/grid5000/images/lenny-x64-big-2.2.tgz", :md5 => "e87433ec446ef855a5f28a6a2fe44aaf"})
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "griffon , grelon , sagittaire , capricorne , netgdx , gdx , bordeplage , bordereau , parapide , paramount , paraquad , paradent , azur , helios , sol , suno , edel , genepi , adonis , chuque , chinqchint , chicon , chti"
   kernel "2.6.26.2"
+  available_on %w{}
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
   services ['ldap', 'nfs']
@@ -469,6 +499,7 @@ environment 'lenny-x64-base-2.3' do
   state "stable"
   file({:path => "/grid5000/images/lenny-x64-base-2.3.tgz", :md5 => "3c255364f601fc19271783269ef541c2"})
   kernel "2.6.26.2"
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "bordeplage , bordereau , borderline ,  adonis , edel , genepi , chicon , chimint , chinqchint , chirloute , capricorne , sagittaire , graphene , griffon , gdx , netgdx , paradent , paramount , parapide , parapluie , helios , sol , suno, pastel , violette"
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
@@ -484,6 +515,7 @@ environment 'lenny-x64-big-2.3' do
   state "stable"
   file({:path => "/grid5000/images/lenny-x64-big-2.3.tgz", :md5 => "e5870c72c1a5386c287935dcf39a8a23"})
   kernel "2.6.26.2"
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "bordeplage , bordereau , borderline ,  adonis , edel , genepi , chicon , chimint , chinqchint , chirloute , capricorne , sagittaire , graphene , griffon , gdx , netgdx , paradent , paramount , parapide , parapluie , helios , sol , suno, pastel , violette"
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
@@ -499,6 +531,7 @@ environment 'lenny-x64-min-0.8' do
   state "stable"
   file({:path => "/grid5000/images/lenny-x64-min-0.8.tgz", :md5 => "a39dcad30821b7404d8eb5ac1388f650"})
   kernel "2.6.26.2"
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "bordeplage , bordereau , borderline ,  adonis , edel , genepi , chicon , chimint , chinqchint , chirloute , capricorne , sagittaire , graphene , griffon , gdx , netgdx , paradent , paramount , parapide , parapluie , helios , sol , suno, pastel , violette"
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
@@ -513,6 +546,7 @@ environment 'lenny-x64-nfs-2.3' do
   state "stable"
   file({:path => "/grid5000/images/lenny-x64-nfs-2.3.tgz", :md5 => "12522a436a2790df866f1ecd63680eff"})
   kernel "2.6.26.2"
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "bordeplage , bordereau , borderline ,  adonis , edel , genepi , chicon , chimint , chinqchint , chirloute , capricorne , sagittaire , graphene , griffon , gdx , netgdx , paradent , paramount , parapide , parapluie , helios , sol , suno, pastel , violette"
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
@@ -528,6 +562,7 @@ environment 'lenny-x64-xen-2.3' do
   state "stable"
   file({:path => "/grid5000/images/lenny-x64-xen-2.3.tgz", :md5 => "7ba173eb6b339fe0110d458d987ef10f"})
   kernel "2.6.26.2"
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "bordeplage , bordereau , borderline ,  adonis , edel , genepi , chicon , chimint , chinqchint , chirloute , capricorne , sagittaire , graphene , griffon , gdx , netgdx , paradent , paramount , parapide , parapluie , helios , sol , suno, pastel , violette"
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
@@ -543,6 +578,7 @@ environment 'squeeze-x64-base-0.8' do
   state "stable"
   file({:path => "/grid5000/images/squeeze-x64-base-0.8.tgz", :md5 => "105bd08ea3f3bf4888d371c9a3241ee5"})
   kernel "2.6.26.2"
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "bordeplage , bordereau , borderline ,  adonis , edel , genepi , chicon , chimint , chinqchint , chirloute , capricorne , sagittaire , graphene , griffon , gdx , netgdx , paradent , paramount , parapide , parapluie , helios , sol , suno, pastel , violette"
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
@@ -558,6 +594,7 @@ environment 'squeeze-x64-big-0.8' do
   state "stable"
   file({:path => "/grid5000/images/squeeze-x64-big-0.8.tgz", :md5 => "bf7dcdf526d4cda8a2d23d116e9b08fc"})
   kernel "2.6.26.2"
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "bordeplage , bordereau , borderline ,  adonis , edel , genepi , chicon , chimint , chinqchint , chirloute , capricorne , sagittaire , graphene , griffon , gdx , netgdx , paradent , paramount , parapide , parapluie , helios , sol , suno, pastel , violette"
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
@@ -573,6 +610,7 @@ environment 'squeeze-x64-min-0.8' do
   state "stable"
   file({:path => "/grid5000/images/squeeze-x64-min-0.8.tgz", :md5 => "8aaaf11cb65279f0d747d2dd300fb3ce"})
   kernel "2.6.26.2"
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "bordeplage , bordereau , borderline ,  adonis , edel , genepi , chicon , chimint , chinqchint , chirloute , capricorne , sagittaire , graphene , griffon , gdx , netgdx , paradent , paramount , parapide , parapluie , helios , sol , suno, pastel , violette"
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
@@ -587,6 +625,7 @@ environment 'squeeze-x64-nfs-0.8' do
   state "stable"
   file({:path => "/grid5000/images/squeeze-x64-nfs-0.8.tgz", :md5 => "49642989fa205b8f8e3366aaa149cf29"})
   kernel "2.6.26.2"
+  available_on %w{bordeaux grenoble lille lyon nancy orsay rennes sophia toulouse}
   valid_on "bordeplage , bordereau , borderline ,  adonis , edel , genepi , chicon , chimint , chinqchint , chirloute , capricorne , sagittaire , graphene , griffon , gdx , netgdx , paradent , paramount , parapide , parapluie , helios , sol , suno, pastel , violette"
   based_on "Debian version lenny for amd64"
   consoles [{:port => "ttyS0", :bps => 34800}]
diff --git a/generators/input/grenoble.rb b/generators/input/grenoble.rb
index efa0e71c39fbbeee14e4ea21926f62420bb11634..a6b2180d61a6940e5f9339de6a95090632abaded 100755
--- a/generators/input/grenoble.rb
+++ b/generators/input/grenoble.rb
@@ -9,10 +9,6 @@ site :grenoble do |site_uid|
   sys_admin_contact
   security_contact
   user_support_contact
-  ( %w{etch-x64-base-1.0 etch-x64-base-1.1 etch-x64-nfs-1.0 etch-x64-nfs-1.1 etch-x64-big-1.0 etch-x64-big-1.1 etch-x64-base-2.0 etch-x64-nfs-2.0 etch-x64-big-2.0} +
-    %w{lenny-x64-base-0.9 lenny-x64-nfs-0.9 lenny-x64-big-0.9 lenny-x64-base-1.0 lenny-x64-nfs-1.0 lenny-x64-big-1.0 lenny-x64-base-2.0 lenny-x64-nfs-2.0 lenny-x64-big-2.0} +
-    %w{lenny-x64-base-2.3 lenny-x64-big-2.3 lenny-x64-min-0.8 lenny-x64-nfs-2.3 lenny-x64-xen-2.3} +
-    %w{squeeze-x64-base-0.8 squeeze-x64-big-0.8 squeeze-x64-min-0.8 squeeze-x64-nfs-0.8 squeeze-x64-xen-0.8} ).each{|env_uid| environment env_uid, :refer_to => "grid5000/environments/#{env_uid}"}
 
   cluster :genepi do |cluster_uid|
     model "Bull R422-E1"
diff --git a/generators/input/lille.rb b/generators/input/lille.rb
index fa245e464313f823352c82d558bd9d2a3cef5f56..13e31f8d8616eee1cdd12f568babfd7df99ee1b3 100755
--- a/generators/input/lille.rb
+++ b/generators/input/lille.rb
@@ -9,10 +9,6 @@ site :lille do |site_uid|
   sys_admin_contact
   security_contact
   user_support_contact
-  ( %w{etch-x64-base-1.0 etch-x64-base-1.1 etch-x64-nfs-1.0 etch-x64-nfs-1.1 etch-x64-big-1.0 etch-x64-big-1.1 etch-x64-xen-1.0 etch-x64-base-2.0 etch-x64-nfs-2.0 etch-x64-big-2.0} +
-    %w{lenny-x64-base-0.9 lenny-x64-nfs-0.9 lenny-x64-big-0.9 lenny-x64-base-1.0 lenny-x64-nfs-1.0 lenny-x64-big-1.0 lenny-x64-xen-1.0 lenny-x64-base-2.0 lenny-x64-nfs-2.0 lenny-x64-big-2.0}  +
-    %w{lenny-x64-base-2.3 lenny-x64-big-2.3 lenny-x64-min-0.8 lenny-x64-nfs-2.3 lenny-x64-xen-2.3} +
-    %w{squeeze-x64-base-0.8 squeeze-x64-big-0.8 squeeze-x64-min-0.8 squeeze-x64-nfs-0.8 squeeze-x64-xen-0.8} ).each{|env_uid| environment env_uid, :refer_to => "grid5000/environments/#{env_uid}"}
 
 cluster :chirloute do |cluster_uid|
     model "Dell PowerEdge C6100"
diff --git a/generators/input/lyon.rb b/generators/input/lyon.rb
index 78553092cb7d864abbd4d4fd78410c46ef352210..7af7bdfb1ee42f0fc7f33ec6169cb4158c408590 100755
--- a/generators/input/lyon.rb
+++ b/generators/input/lyon.rb
@@ -9,10 +9,6 @@ site :lyon do |site_uid|
   sys_admin_contact
   security_contact
   user_support_contact
-  ( %w{etch-x64-base-1.0 etch-x64-base-1.1 etch-x64-nfs-1.0 etch-x64-nfs-1.1 etch-x64-big-1.0 etch-x64-big-1.1 etch-x64-base-2.0 etch-x64-nfs-2.0 etch-x64-big-2.0} +
-    %w{lenny-x64-base-0.9 lenny-x64-nfs-0.9 lenny-x64-big-0.9 lenny-x64-base-1.0 lenny-x64-nfs-1.0 lenny-x64-big-1.0 lenny-x64-base-2.0 lenny-x64-nfs-2.0 lenny-x64-big-2.0} +
-    %w{lenny-x64-base-2.3 lenny-x64-big-2.3 lenny-x64-min-0.8 lenny-x64-nfs-2.3 lenny-x64-xen-2.3} +
-    %w{squeeze-x64-base-0.8 squeeze-x64-big-0.8 squeeze-x64-min-0.8 squeeze-x64-nfs-0.8 squeeze-x64-xen-0.8}  ).each{|env_uid| environment env_uid, :refer_to => "grid5000/environments/#{env_uid}"}
   
   cluster :capricorne do |cluster_uid|
     model "IBM eServer 325"
diff --git a/generators/input/nancy.rb b/generators/input/nancy.rb
index 2c6ee555f15103bd1b857b0ad881ef3b7554965d..cfd601b7471deddb7e44b268572915b55a894eb0 100755
--- a/generators/input/nancy.rb
+++ b/generators/input/nancy.rb
@@ -8,10 +8,6 @@ site :nancy do |site_uid|
   sys_admin_contact "nancy-staff@lists.grid5000.fr"
   security_contact "nancy-staff@lists.grid5000.fr"
   user_support_contact "nancy-staff@lists.grid5000.fr"
-  ( %w{etch-x64-base-1.0 etch-x64-base-1.1 etch-x64-nfs-1.0 etch-x64-nfs-1.1 etch-x64-big-1.0 etch-x64-big-1.1 etch-x64-xen-1.0 etch-x64-base-2.0 etch-x64-nfs-2.0 etch-x64-big-2.0} +
-    %w{lenny-x64-base-0.9 lenny-x64-nfs-0.9 lenny-x64-big-0.9 lenny-x64-base-1.0 lenny-x64-nfs-1.0 lenny-x64-big-1.0 lenny-x64-xen-1.0 lenny-x64-base-2.0 lenny-x64-nfs-2.0 lenny-x64-big-2.0} +
-    %w{lenny-x64-base-2.3 lenny-x64-big-2.3 lenny-x64-min-0.8 lenny-x64-nfs-2.3 lenny-x64-xen-2.3} +
-    %w{squeeze-x64-base-0.8 squeeze-x64-big-0.8 squeeze-x64-min-0.8 squeeze-x64-nfs-0.8 squeeze-x64-xen-0.8} ).each{|env_uid| environment env_uid, :refer_to => "grid5000/environments/#{env_uid}"}
   compilation_server false
 
   cluster :griffon do |cluster_uid|
diff --git a/generators/input/orsay-gdx.rb b/generators/input/orsay-gdx.rb
index a86ec844d54e8e085eb7d24c7fd3a20896d0211e..d2d8bfceb848c393ea33bfb50718639f0abe916a 100644
--- a/generators/input/orsay-gdx.rb
+++ b/generators/input/orsay-gdx.rb
@@ -10,8 +10,9 @@ def get_switch_for_node(switches,id)
   lookup('orsay-network',"switch-nil").merge({:nodes=>[0,0]})
 end
 
-site :orsay, {:discard_content => true} do |site_uid|
+site :orsay do |site_uid|
   ssh = Net::SSH.start("frontend.#{site_uid}.grid5000.fr","g5kadmin")
+  
   cluster :gdx do |cluster_uid|
     model "IBM eServer 326m"
     created_at nil
@@ -19,10 +20,10 @@ site :orsay, {:discard_content => true} do |site_uid|
     
     # WARN: 2 nodes are missing (gdx-311 and gdx-312) and won't appear in the reference
     1.upto(180+132-2) do |i| 
-      switch_eth0 = get_switch_for_node lookup("orsay-links","links-eth0","gdx"), i if not switch_match_node switch_eth0, i
-      switch_bmc = get_switch_for_node lookup("orsay-links","links-bmc","gdx"), i if not switch_match_node switch_bmc, i
-      switch_rsa = get_switch_for_node lookup("orsay-links","links-rsa","gdx"), i if not switch_match_node switch_rsa, i
-      switch_mx = get_switch_for_node lookup("orsay-links","links-mx","gdx"), i if not switch_match_node switch_mx, i
+      switch_eth0 = get_switch_for_node lookup("orsay-links","links-eth0","gdx"), i unless switch_match_node switch_eth0, i
+      switch_bmc = get_switch_for_node lookup("orsay-links","links-bmc","gdx"), i unless switch_match_node switch_bmc, i
+      switch_rsa = get_switch_for_node lookup("orsay-links","links-rsa","gdx"), i unless switch_match_node switch_rsa, i
+      switch_mx = get_switch_for_node lookup("orsay-links","links-mx","gdx"), i unless switch_match_node switch_mx, i
       
       node "#{cluster_uid}-#{i}" do |node_uid|
     
@@ -73,9 +74,6 @@ site :orsay, {:discard_content => true} do |site_uid|
             :switch => (switch_bmc["name"]+".#{site_uid}.grid5000.fr"),
             :switch_ip => switch_bmc["ip"],
             :switch_mac => switch_bmc["mac"],
-#            :switch => (lookup('orsay-network', "switch-bmc-#{rack_uid/2}", 'name')+".#{site_uid}.grid5000.fr"),
-#            :switch_ip => lookup('orsay-network', "switch-bmc-#{rack_uid/2}", 'ip'),
-#            :switch_mac => lookup('orsay-network', "switch-bmc-#{rack_uid/2}", 'mac'),
             :switch_console => (switch_rsa["name"]+".#{site_uid}.grid5000.fr"),
             :switch_console_ip => switch_rsa["ip"],
             :switch_console_mac => switch_rsa["mac"]
diff --git a/generators/input/orsay-links.yaml b/generators/input/orsay-links.yaml
index 2b34b1912f3c2c8407e518390655c396c6098c95..798301956d09d9e86194c5a8e9709ccf9a84c628 100644
--- a/generators/input/orsay-links.yaml
+++ b/generators/input/orsay-links.yaml
@@ -21,6 +21,12 @@ links-eth0:
     switch-eth0-17: "307,310"
   netgdx:
     switch-gw: "1,30"
+links-eth1: 
+  netgdx:
+    switch-gw: "1,30"
+links-eth2: 
+  netgdx:
+    switch-gw: "1,30"
 links-bmc:
   gdx:
     switch-bmc-0: "1,36"
diff --git a/generators/input/orsay-netgdx.rb b/generators/input/orsay-netgdx.rb
index 10a32e7710454ab93626cbe8eac4c1274841fecf..a72b13377a2345bfe86536603cd6dff0723c10e0 100644
--- a/generators/input/orsay-netgdx.rb
+++ b/generators/input/orsay-netgdx.rb
@@ -10,14 +10,21 @@ def get_switch_for_node(switches,id)
   lookup('orsay-network',"switch-nil").merge({:nodes=>[0,0]})
 end
 
-site :orsay, {:discard_content => true} do |site_uid|
+site :orsay do |site_uid|
   ssh = Net::SSH.start("frontend.#{site_uid}.grid5000.fr","g5kadmin")
   
   cluster :netgdx do |cluster_uid|
     model "IBM eServer 326m"
     created_at nil
     misc "bios:1.28/bcm:1.20.17/bmc:1.10/rsaII:1.00"
+    
     1.upto(30) do |i|
+      switch_eth0 = get_switch_for_node lookup("orsay-links","links-eth0","netgdx"), i unless switch_match_node switch_eth0, i
+      switch_eth1 = get_switch_for_node lookup("orsay-links","links-eth1","netgdx"), i unless switch_match_node switch_eth1, i
+      switch_eth2 = get_switch_for_node lookup("orsay-links","links-eth2","netgdx"), i unless switch_match_node switch_eth2, i
+      switch_bmc = get_switch_for_node lookup("orsay-links","links-bmc","netgdx"), i unless switch_match_node switch_bmc, i
+      switch_rsa = get_switch_for_node lookup("orsay-links","links-rsa","netgdx"), i unless switch_match_node switch_rsa, i
+      
       node "#{cluster_uid}-#{i}" do |node_uid|
         supported_job_types({:deploy => true, :besteffort => true, :virtual => false})
         architecture({
@@ -63,12 +70,12 @@ site :orsay, {:discard_content => true} do |site_uid|
             :mounted => false,
             :network_address => "#{node_uid}-bmc.#{site_uid}.grid5000.fr",
             :ip => dns_lookup_through_ssh(ssh,"#{node_uid}-bmc.#{site_uid}.grid5000.fr"),
-            :switch => (lookup('orsay-network', "switch-bmc-netgdx", 'name')+".#{site_uid}.grid5000.fr"),
-            :switch_ip => lookup('orsay-network', "switch-bmc-netgdx", 'ip'),
-            :switch_mac => lookup('orsay-network', "switch-bmc-netgdx", 'mac'),
-            :switch_console => (lookup('orsay-network', "switch-rsa-netgdx", 'name')+".#{site_uid}.grid5000.fr"),
-            :switch_console_ip => lookup('orsay-network', "switch-rsa-netgdx", 'ip'),
-            :switch_console_mac => lookup('orsay-network', "switch-rsa-netgdx", 'mac'),
+            :switch => (switch_bmc["name-admin"]+".#{site_uid}.grid5000.fr"),
+            :switch_ip => switch_bmc["ip-admin"],
+            :switch_mac => switch_bmc["mac-admin"],
+            :switch_console => (switch_rsa["name"]+".#{site_uid}.grid5000.fr"),
+            :switch_console_ip => switch_rsa["ip"],
+            :switch_console_mac => switch_rsa["mac"]
           },{
             :interface => 'Ethernet',
             :device => 'eth0',
@@ -83,9 +90,9 @@ site :orsay, {:discard_content => true} do |site_uid|
             :mounted => true,
             :network_address => "#{node_uid}.#{site_uid}.grid5000.fr",
             :ip => dns_lookup_through_ssh(ssh,"#{node_uid}.#{site_uid}.grid5000.fr"),
-            :switch => (lookup('orsay-network', "switch-gw", 'name-prod')+".#{site_uid}.grid5000.fr"),
-            :switch_ip => lookup('orsay-network', "switch-gw", 'ip-prod'),
-            :switch_mac => lookup('orsay-network', "switch-gw", 'mac-prod'),
+            :switch => (switch_eth0["name-prod"]+".#{site_uid}.grid5000.fr"),
+            :switch_ip => switch_eth0["ip-prod"],
+            :switch_mac => switch_eth0["mac-prod"]
           },{
             :interface => 'Ethernet',
             :device => 'eth1',
@@ -100,9 +107,9 @@ site :orsay, {:discard_content => true} do |site_uid|
             :mounted => true, 
             :network_address => "#{node_uid}-eth1.#{site_uid}.grid5000.fr",
             :ip => dns_lookup_through_ssh(ssh,"#{node_uid}-eth1.#{site_uid}.grid5000.fr"),
-            :switch => (lookup('orsay-network', "switch-gw", 'name-prod')+".#{site_uid}.grid5000.fr"),
-            :switch_ip => lookup('orsay-network', "switch-gw", 'ip-prod'),
-            :switch_mac => lookup('orsay-network', "switch-gw", 'mac-prod'),
+            :switch => (switch_eth1["name-prod"]+".#{site_uid}.grid5000.fr"),
+            :switch_ip => switch_eth1["ip-prod"],
+            :switch_mac => switch_eth1["mac-prod"]
           },{
             :interface => 'Ethernet',
             :device => 'eth2',
@@ -117,9 +124,9 @@ site :orsay, {:discard_content => true} do |site_uid|
             :mounted => true,
             :network_address => "#{node_uid}-eth2.#{site_uid}.grid5000.fr",
             :ip => dns_lookup_through_ssh(ssh,"#{node_uid}-eth2.#{site_uid}.grid5000.fr"),
-            :switch => (lookup('orsay-network', "switch-gw", 'name-prod')+".#{site_uid}.grid5000.fr"),
-            :switch_ip => lookup('orsay-network', "switch-gw", 'ip-prod'),
-            :switch_mac => lookup('orsay-network', "switch-gw", 'mac-prod'),
+            :switch => (switch_eth2["name-prod"]+".#{site_uid}.grid5000.fr"),
+            :switch_ip => switch_eth2["ip-prod"],
+            :switch_mac => switch_eth2["mac-prod"]
           }]  
       end      
     end
diff --git a/generators/input/orsay.rb b/generators/input/orsay.rb
index 634b6383bce4dfdaa04247201efd6991c907af40..55d033d21bbdddf326c36e8e050c06f1fabbcc17 100755
--- a/generators/input/orsay.rb
+++ b/generators/input/orsay.rb
@@ -1,17 +1,13 @@
 site :orsay do |site_uid|
   name "Orsay"
   location "Orsay, France" 
-  web
+  web "https://www.grid5000.fr/mediawiki/index.php/Orsay:Home"
   description ""
   latitude 48.7000
   longitude 2.2000
-  email_contact
-  sys_admin_contact
-  security_contact
-  user_support_contact
-  ( %w{etch-x64-base-1.0 etch-x64-base-1.1 etch-x64-nfs-1.0 etch-x64-nfs-1.1 etch-x64-big-1.0 etch-x64-big-1.1 etch-x64-base-2.0 etch-x64-nfs-2.0 etch-x64-big-2.0} +
-    %w{lenny-x64-base-0.9 lenny-x64-nfs-0.9 lenny-x64-big-0.9 lenny-x64-base-1.0 lenny-x64-nfs-1.0 lenny-x64-big-1.0 lenny-x64-base-2.0 lenny-x64-nfs-2.0 lenny-x64-big-2.0} +
-    %w{lenny-x64-base-2.3 lenny-x64-big-2.3 lenny-x64-min-0.8 lenny-x64-nfs-2.3 lenny-x64-xen-2.3} +
-    %w{squeeze-x64-base-0.8 squeeze-x64-big-0.8 squeeze-x64-min-0.8 squeeze-x64-nfs-0.8 squeeze-x64-xen-0.8}  ).each{|env_uid| environment env_uid, :refer_to => "grid5000/environments/#{env_uid}"}
+  email_contact "orsay-staff@lists.grid5000.fr"
+  sys_admin_contact "orsay-staff@lists.grid5000.fr"
+  security_contact "orsay-staff@lists.grid5000.fr"
+  user_support_contact "orsay-staff@lists.grid5000.fr"
   
 end
diff --git a/generators/input/rennes.rb b/generators/input/rennes.rb
index dec7d933e99e5d0b7b14eed822aa40b3578b52c2..4b285f535a66869e5da2371266e1f8aa29547f5d 100755
--- a/generators/input/rennes.rb
+++ b/generators/input/rennes.rb
@@ -9,10 +9,6 @@ site :rennes do |site_uid|
   sys_admin_contact "rennes-staff@lists.grid5000.fr"
   security_contact "rennes-staff@lists.grid5000.fr"
   user_support_contact "rennes-staff@lists.grid5000.fr"
-  ( %w{etch-x64-base-1.0 etch-x64-base-1.1 etch-x64-nfs-1.0 etch-x64-nfs-1.1 etch-x64-big-1.0 etch-x64-big-1.1 etch-x64-base-2.0 etch-x64-nfs-2.0 etch-x64-big-2.0} +
-    %w{lenny-x64-base-0.9 lenny-x64-nfs-0.9 lenny-x64-big-0.9 lenny-x64-base-1.0 lenny-x64-nfs-1.0 lenny-x64-big-1.0 lenny-x64-base-2.0 lenny-x64-nfs-2.0 lenny-x64-big-2.0} +
-    %w{lenny-x64-base-2.3 lenny-x64-big-2.3 lenny-x64-min-0.8 lenny-x64-nfs-2.3 lenny-x64-xen-2.3} +
-    %w{squeeze-x64-base-0.8 squeeze-x64-big-0.8 squeeze-x64-min-0.8 squeeze-x64-nfs-0.8 squeeze-x64-xen-0.8}  ).each{|env_uid| environment env_uid, :refer_to => "grid5000/environments/#{env_uid}"}
  compilation_server false
   
 end
diff --git a/generators/input/sophia.rb b/generators/input/sophia.rb
index f0308debc2ff2fb12efcb39ccce40afb4ff48d03..ae7e0acb13baf3392b67aa38f83d33045814bb3f 100755
--- a/generators/input/sophia.rb
+++ b/generators/input/sophia.rb
@@ -9,10 +9,6 @@ site :sophia do |site_uid|
   sys_admin_contact "sophia-staff@lists.grid5000.fr"
   security_contact "sophia-staff@lists.grid5000.fr"
   user_support_contact "sophia-staff@lists.grid5000.fr"
-  ( %w{etch-x64-base-1.0 etch-x64-base-1.1 etch-x64-nfs-1.0 etch-x64-nfs-1.1 etch-x64-big-1.0 etch-x64-big-1.1 etch-x64-base-2.0 etch-x64-nfs-2.0 etch-x64-big-2.0} +
-    %w{lenny-x64-base-0.9 lenny-x64-nfs-0.9 lenny-x64-big-0.9 lenny-x64-base-1.0 lenny-x64-nfs-1.0 lenny-x64-big-1.0 lenny-x64-base-2.0 lenny-x64-nfs-2.0 lenny-x64-big-2.0} +
-    %w{lenny-x64-base-2.3 lenny-x64-big-2.3 lenny-x64-min-0.8 lenny-x64-nfs-2.3 lenny-x64-xen-2.3} +
-    %w{squeeze-x64-base-0.8 squeeze-x64-big-0.8 squeeze-x64-min-0.8 squeeze-x64-nfs-0.8 squeeze-x64-xen-0.8}  ).each{|env_uid| environment env_uid, :refer_to => "grid5000/environments/#{env_uid}"}
   compilation_server false
     
   cluster :helios do |cluster_uid|
diff --git a/generators/input/toulouse.rb b/generators/input/toulouse.rb
index 52beec7c1443c65adcd58305feb62e6553bde61b..9a1a05791277ce634d4708018b1fb1be1c5ceffd 100755
--- a/generators/input/toulouse.rb
+++ b/generators/input/toulouse.rb
@@ -9,10 +9,6 @@ site :toulouse do |site_uid|
   sys_admin_contact
   security_contact
   user_support_contact
-  ( %w{etch-x64-base-1.0 etch-x64-base-1.1 etch-x64-nfs-1.0 etch-x64-nfs-1.1 etch-x64-big-1.0 etch-x64-big-1.1} +
-    %w{lenny-x64-base-0.9 lenny-x64-nfs-0.9 lenny-x64-big-0.9 lenny-x64-base-1.0 lenny-x64-nfs-1.0 lenny-x64-big-1.0}  +
-    %w{lenny-x64-base-2.3 lenny-x64-big-2.3 lenny-x64-min-0.8 lenny-x64-nfs-2.3 lenny-x64-xen-2.3} +
-    %w{squeeze-x64-base-0.8 squeeze-x64-big-0.8 squeeze-x64-min-0.8 squeeze-x64-nfs-0.8 squeeze-x64-xen-0.8} ).each{|env_uid| environment env_uid, :refer_to => "grid5000/environments/#{env_uid}"}
 
   cluster :violette do |cluster_uid|
     model "Sun Fire V20z"