Take a look at the RunScriptCommand class. You need to call the function somehow like this:
StatementBuilder builder = new StatementBuilder(); builder.addStatements( Statements.appendFile("/tmp/my.cfg", lines), exec(getFileContent(scriptPath)) ); controller.runScriptOnNodesMatching( spec, condition, builder) -- Andrei On Wed, Jun 15, 2011 at 8:38 PM, John Conwell <j...@iamjohn.me> wrote: > I looked at computeService.runScriptOnNodesMatching a while ago and couldnt > make much sense on how to use the API correctly (for uploading a script and > running it). Is there a good unit tests that shows how to do this? > > On Tue, Jun 14, 2011 at 2:03 AM, Andrei Savu <savu.and...@gmail.com> wrote: >> >> You could also try to use computeService.runScriptOnNodesMatching and >> upload the file using an AppendFile jclouds statement together with >> the credentials from the cluster spec file. >> >> This approach is similar to what RunScriptCommand is doing. >> >> -- Andrei Savu / andreisavu.ro >> >> On Mon, Jun 13, 2011 at 11:16 PM, John Conwell <j...@iamjohn.me> wrote: >> > the AMI is us-east-1/ami-da0cf8b3 >> > and OS is the default that whirr installs, Ubuntu 10.4 my thinks. >> > >> > On Mon, Jun 13, 2011 at 1:13 PM, Andrei Savu <savu.and...@gmail.com> >> > wrote: >> >> >> >> That should work. What ami, OS are you using? >> >> >> >> On Jun 13, 2011 10:22 PM, "John Conwell" <j...@iamjohn.me> wrote: >> >> > which user. Whirr creates a user called "ubuntu", and it also creates >> >> > a >> >> > user that is specified via whirr.cluster-user. I tried the user that >> >> > is >> >> > specified via whirr.cluster-user and that didnt work >> >> > >> >> > On Mon, Jun 13, 2011 at 12:16 PM, Andrei Savu <savu.and...@gmail.com> >> >> > wrote: >> >> > >> >> >> The user created by Whirr should be able to do sudo without >> >> >> requesting >> >> >> a >> >> >> password. >> >> >> On Jun 13, 2011 8:55 PM, "John Conwell" <j...@iamjohn.me> wrote: >> >> >> > I've got a cluster that gets started by Whirr. After its running, >> >> >> > I >> >> >> > need >> >> >> to >> >> >> > create a config file and copy it up to a specific folder on the >> >> >> > VM. >> >> >> > I'm >> >> >> > using the class.method SshClient.put() to copy the file up to the >> >> >> > /tmp >> >> >> > directory on my VM with no security issues. But then I need to >> >> >> > copy >> >> >> > the >> >> >> > file to a different folder, via SshClient.exec method. But the cp >> >> >> > command >> >> >> > requires sudo because the user whirr created for me doesn't have >> >> >> > privs to >> >> >> > copy to the required folder. Also, I cant specify a password with >> >> >> > the >> >> >> sudo >> >> >> > command because the connection was made using x509 certificates. >> >> >> > >> >> >> > So how can I execute remote ssh commands that require sudo privs? >> >> >> > >> >> >> > -- >> >> >> > >> >> >> > Thanks, >> >> >> > John C >> >> >> >> >> > >> >> > >> >> > >> >> > -- >> >> > >> >> > Thanks, >> >> > John C >> > >> > >> > >> > -- >> > >> > Thanks, >> > John C >> > > > > > -- > > Thanks, > John C >