getNewCommandRunner() public method

public getNewCommandRunner ( ) : CommandRunner
return DataSift\Storyplayer\CommandLib\CommandRunner
Example #1
0
 public function uploadFile($sourceFilename, $destFilename)
 {
     // vet our input
     Contract::RequiresValue($sourceFilename, is_string($sourceFilename));
     Contract::RequiresValue($sourceFilename, !empty($sourceFilename));
     Contract::RequiresValue($sourceFilename, is_file($sourceFilename));
     Contract::RequiresValue($destFilename, is_string($destFilename));
     Contract::RequiresValue($destFilename, !empty($destFilename));
     // make the params printable / executable
     // $printableParams = $this->convertParamsForUse($params);
     // what are we doing?
     $log = usingLog()->startAction("upload file '{$sourceFilename}' to host as '{$destFilename}'");
     // do we actually have everything we need to run the command?
     if (!$this->hasSshUsername()) {
         throw new E4xx_NeedSshUsername();
     }
     if (!$this->hasIpAddress()) {
         throw new E4xx_NeedIpAddress();
     }
     // build the full command
     //
     // the options that we pass (by default) to SCP:
     //
     // -o StrictHostKeyChecking=no
     //    do not verify the SSH host key (avoids an interactive prompt)
     // -i <private_key>
     //    use specified private key to access the remote/guest OS
     // <username>@<hostname>
     //    who we are logging in as (should never be root)
     // <additional SSH options>
     //    any other flags, such as -n to force non-interactive session
     $fullCommand = 'scp ' . ' ' . $this->getSshKeyForUse() . ' ' . $this->getScpOptionsForUse() . ' "' . $sourceFilename . '" ' . ' "' . $this->getSshUsername() . '@' . $this->getIpAddress() . ':' . $destFilename . '"';
     // run the command
     $commandRunner = $this->st->getNewCommandRunner();
     $result = $commandRunner->runSilently($fullCommand);
     // all done
     $log->endAction("return code was '{$result->returnCode}'");
     return $result;
 }
Example #2
0
 public function uploadFile($sourceFilename, $destFilename)
 {
     // vet our input
     Contract::RequiresValue($sourceFilename, is_string($sourceFilename));
     Contract::RequiresValue($sourceFilename, !empty($sourceFilename));
     Contract::RequiresValue($sourceFilename, is_file($sourceFilename));
     Contract::RequiresValue($destFilename, is_string($destFilename));
     Contract::RequiresValue($destFilename, !empty($destFilename));
     // make the params printable / executable
     // $printableParams = $this->convertParamsForUse($params);
     // what are we doing?
     $log = usingLog()->startAction("copy file '{$sourceFilename}' to localhost as '{$destFilename}'");
     // build the full command
     //
     $fullCommand = 'cp ' . "'" . $sourceFilename . "' " . "'" . $destFilename . "'";
     // run the command
     $commandRunner = $this->st->getNewCommandRunner();
     $result = $commandRunner->runSilently($fullCommand);
     // all done
     $log->endAction("return code was '{$result->returnCode}'");
     return $result;
 }