[Saga-devel] saga SVN commit 3354: /trunk/adaptors/aws/aws_job/
amerzky at cct.lsu.edu
amerzky at cct.lsu.edu
Thu Jan 22 18:47:11 CST 2009
User: amerzky
Date: 2009/01/22 06:47 PM
Modified:
/trunk/adaptors/aws/aws_job/
aws_job_service.cpp
Log:
fix
File Changes:
Directory: /trunk/adaptors/aws/aws_job/
=======================================
File [modified]: aws_job_service.cpp
Delta lines: +42 -41
===================================================================
--- trunk/adaptors/aws/aws_job/aws_job_service.cpp 2009-01-22 20:37:10 UTC (rev 3353)
+++ trunk/adaptors/aws/aws_job/aws_job_service.cpp 2009-01-23 00:47:01 UTC (rev 3354)
@@ -95,7 +95,8 @@
saga::adaptors::utils::process proc (env_);
- // is a VM given which we should contact?
+ // is a VM given which we should contact, or do we need to start a new one?
+ bool instance_started = false;
if ( idata->rm_.get_host () == "" )
{
// no host - create a new VM instance to submit jobs to.
@@ -202,47 +203,8 @@
SAGA_LOG_ALWAYS ("trying ssh ok");
- // instanc e is up, ssh is up - now run an image preparation if needed
- if ( ini_["ec2_image_prep"] == "" )
- {
- SAGA_LOG_ALWAYS ("no image prep needed");
- }
- else
- {
- SAGA_LOG_ALWAYS ("preparing image");
+ instance_started = true;
- // stage the prep script to the VM
- proc.set_cmd ("/usr/bin/scp");
-
- proc.clear_args ();
- proc.add_args ("-o", "StrictHostKeyChecking=no");
- proc.add_args ("-i", ini_["ec2_proxy"]);
- proc.add_arg (ini_["ec2_image_prep"]);
- proc.add_arg (user_ + "@" + vm_ip_ + ":/tmp/saga-ec2-image-prep");
-
- proc.run_sync ();
-
- if ( proc.fail () )
- {
- SAGA_ADAPTOR_THROW ("image prep-staging failed", saga::NoSuccess);
- }
-
- // run the prep script
- proc.set_cmd ("/usr/bin/ssh");
-
- proc.clear_args ();
- proc.add_args ("-o", "StrictHostKeyChecking=no");
- proc.add_args ("-i", ini_["ec2_proxy"]);
- proc.add_arg (user_ + "@" + vm_ip_);
- proc.add_arg ("/tmp/saga-ec2-image-prep");
-
- proc.run_sync ();
-
- if ( proc.fail () )
- {
- SAGA_ADAPTOR_THROW ("image preparation failed", saga::NoSuccess);
- }
- }
}
else
{
@@ -413,6 +375,45 @@
// create ssh job service which from now on handles job submission etc
js_ = TR1::shared_ptr <saga::job::service> (new saga::job::service (ssh_session_, ssh_url_));
+
+ // seems to work, ssh is set up - now prepare the image for job submission,
+ // if needed
+ if ( instance_started && ini_["ec2_image_prep"] != "" )
+ {
+ SAGA_LOG_ALWAYS ("preparing image");
+
+ // stage the prep script to the VM
+ proc.set_cmd ("/usr/bin/scp");
+
+ proc.clear_args ();
+ proc.add_args ("-o", "StrictHostKeyChecking=no");
+ proc.add_args ("-i", ini_["ec2_proxy"]);
+ proc.add_arg (ini_["ec2_image_prep"]);
+ proc.add_arg (user_ + "@" + vm_ip_ + ":/tmp/saga-ec2-image-prep");
+
+ proc.run_sync ();
+
+ if ( proc.fail () )
+ {
+ SAGA_ADAPTOR_THROW ("image prep-staging failed", saga::NoSuccess);
+ }
+
+ // run the prep script
+ proc.set_cmd ("/usr/bin/ssh");
+
+ proc.clear_args ();
+ proc.add_args ("-o", "StrictHostKeyChecking=no");
+ proc.add_args ("-i", ini_["ec2_proxy"]);
+ proc.add_arg (user_ + "@" + vm_ip_);
+ proc.add_arg ("/tmp/saga-ec2-image-prep");
+
+ proc.run_sync ();
+
+ if ( proc.fail () )
+ {
+ SAGA_ADAPTOR_THROW ("image preparation failed", saga::NoSuccess);
+ }
+ }
}
//////////////////////////////////////////////////////////////////////
More information about the saga-devel
mailing list