From: Thierry Parmentelat <thierry.parmentelat@inria.fr>
Date: Tue, 8 Mar 2016 17:15:10 +0000 (+0100)
Subject: register_resource(autoDeploy=True)
X-Git-Tag: nepi-6.0.8-pypi~1
X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=ef3b957e965468e23f96696b9e2e6856ce933b07;p=nepi.git

register_resource(autoDeploy=True)
as a shothand instead of
register_resource() + deploy()
---

diff --git a/nepi/execution/ec.py b/nepi/execution/ec.py
index 5f34f826..e91836d7 100644
--- a/nepi/execution/ec.py
+++ b/nepi/execution/ec.py
@@ -617,14 +617,24 @@ class ExperimentController(object):
         ### so we can do something like
         # node = ec.register_resource("linux::Node",
         #                             username = user,
-        #                             hostname = host)
+        #                             hostname = host,
+        #                             autoDeploy = True)
         ### instead of
         # node = ec.register_resource("linux::Node")
         # ec.set(node, "username", user)
         # ec.set(node, "hostname", host)
+        # ec.deploy(node)
 
+        auto_deploy = 'autoDeploy' in keywords and keywords['autoDeploy']
+
+        # now we can do all the calls to 'set'
         for name, value in keywords.items():
-            self.set(guid, name, value)
+            # autoDeploy is handled locally and not propagated to 'set'
+            if name != 'autoDeploy':
+                self.set(guid, name, value)
+
+        if auto_deploy:
+            self.deploy(guid)
 
         return guid