setSshKey() public method

public setSshKey ( string $path ) : void
$path string
return void
コード例 #1
0
ファイル: SshClient.php プロジェクト: datasift/storyplayer
 /**
  * get an SSH client to contact this host
  *
  * @param  \DataSift\Storyplayer\PlayerLib\StoryTeller $st
  *         our ubiquitous state object
  * @param  \DataSift\Storyplayer\HostLib\HostDetails $hostDetails
  *         details about the host that you want a client for
  * @return \DataSift\Storyplayer\CommandLib\SshClient
  *         the SSH client for you to use
  */
 public function getClient($st, $hostDetails)
 {
     // shorthand
     $hostId = $hostDetails->hostId;
     // do we already have a client?
     if (isset($this->sshClients[$hostId])) {
         // yes - reuse it
         return $this->sshClients[$hostId];
     }
     // if we get here, we need to make a new client
     $sshClient = new SshClient($st, $hostDetails->sshOptions, $hostDetails->scpOptions);
     $sshClient->setIpAddress($hostDetails->ipAddress);
     $sshClient->setSshUsername($hostDetails->sshUsername);
     if (isset($hostDetails->sshKey)) {
         $sshClient->setSshKey($hostDetails->sshKey);
     }
     // all done
     $this->sshClients[$hostId] = $sshClient;
     return $sshClient;
 }
コード例 #2
0
 /**
  * @covers DataSift\Storyplayer\CommandLib\SshClient::getSshKeyForUse
  */
 public function testCanGetSshKeyForUse()
 {
     // ----------------------------------------------------------------
     // setup your test
     // our $st object
     $i = new Injectables();
     $i->initOutputSupport();
     $i->initDataFormatterSupport();
     $i->initRuntimeConfigSupport($i);
     $st = new StoryTeller($i);
     // our test subject
     $obj = new SshClient($st);
     // what key will we use?
     $expectedKey = 'id_rsa';
     $expectedResult = "-i '" . $expectedKey . "'";
     // make sure that (if there is ever a default ssh key), it isn't
     // the string we're testing with
     $this->assertNotEquals($expectedResult, $obj->getSshKey());
     // ----------------------------------------------------------------
     // perform the change
     $obj->setSshKey($expectedKey);
     $actualResult = $obj->getSshKeyForUse();
     // ----------------------------------------------------------------
     // test the results
     $this->assertTrue(is_string($actualResult));
     $this->assertEquals($expectedResult, $actualResult);
 }