Exemple #1
0
 function testDestinationIsValid()
 {
     $testdir = sys_get_temp_dir() . "/testdirtocreate";
     $destination = \Terminus\Utils\destination_is_valid($testdir);
     $this->assertFileExists($testdir);
     $this->assertEquals($testdir, $destination);
 }
Exemple #2
0
 /**
  * Mount a site with sshfs
  *
  * ## OPTIONS
  *
  * [--site=<site>]
  * : Site to deploy from
  *
  * --destination=<path>
  * : local directory to mount
  *
  * [--env=<env>]
  * : Environment (dev,test)
  *
  **/
 public function mount($args, $assoc_args)
 {
     exec("which sshfs", $stdout, $exit);
     if ($exit !== 0) {
         Terminus::error("Must install sshfs first");
     }
     $destination = \Terminus\Utils\destination_is_valid($assoc_args['destination']);
     $site = SiteFactory::instance(Input::site($assoc_args));
     $env = Input::env($assoc_args, 'env');
     // Darwin check ... not sure what this is really ... borrowed from terminus 1
     $darwin = false;
     exec('uname', $output, $ret);
     if (is_array($output) && isset($output[0]) && strpos($output[0], 'Darwin') !== False) {
         $darwin = True;
     }
     // @todo I'd prefer this was done with sprintf for a little validation
     $user = $env . '.' . $site->getId();
     $host = 'appserver.' . $env . '.' . $site->getId() . '.drush.in';
     $darwin_args = $darwin ? '-o defer_permissions ' : '';
     $cmd = "sshfs " . $darwin_args . "-p 2222 {$user}@{$host}:./ {$destination}";
     exec($cmd, $stdout, $exit);
     if ($exit !== 0) {
         print_r($stdout);
         Terminus::error("Couldn't mount {$destination}");
     }
     Terminus::success("Site mounted to %s. To unmount, run: umount %s ( or fusermount -u %s ).", array($destination, $destination, $destination));
 }
Exemple #3
0
 /**
  * Mount a site with sshfs
  *
  * ## OPTIONS
  *
  * [--site=<site>]
  * : Site to deploy from
  *
  * --destination=<path>
  * : local directory to mount
  *
  * [--env=<env>]
  * : Environment (dev,test)
  *
  **/
 public function mount($args, $assoc_args)
 {
     exec('which sshfs', $stdout, $exit);
     if ($exit !== 0) {
         Terminus::error('Must install sshfs first');
     }
     $destination = \Terminus\Utils\destination_is_valid($assoc_args['destination']);
     $site = $this->sites->get(Input::sitename($assoc_args));
     $env = Input::env($assoc_args, 'env');
     exec('uname', $output, $ret);
     $darwin = '';
     if (is_array($output) && isset($output[0]) && strpos($output[0], 'Darwin') !== false) {
         $darwin = '-o defer_permissions ';
     }
     $user = $env . '.' . $site->get('id');
     $host = sprintf('appserver.%s.%s.drush.in', $env, $site->get('id'));
     $cmd = sprintf('sshfs %s -p 2222 %s@%s:./ %s', $darwin, $user, $host, $destination);
     exec($cmd, $stdout, $exit);
     if ($exit != 0) {
         print_r($stdout);
         Terminus::error("Couldn't mount {$destination}");
     }
     Terminus::success('Site mounted to %s. To unmount, run: umount %s (or fusermount -u %s).', array($destination, $destination, $destination));
 }