/**
  * Execute the command.
  */
 public function handle()
 {
     $this->server->status = Server::TESTING;
     $this->server->save();
     $key = tempnam(storage_path('app/'), 'sshkey');
     file_put_contents($key, $this->server->project->private_key);
     try {
         $process = new Process('TestServerConnection', ['project_path' => $this->server->clean_path, 'test_file' => time() . '_testing_deployer.txt', 'test_directory' => time() . '_testing_deployer_dir']);
         $process->setServer($this->server, $key)->run();
         if (!$process->isSuccessful()) {
             $this->server->status = Server::FAILED;
         } else {
             $this->server->status = Server::SUCCESSFUL;
         }
     } catch (\Exception $error) {
         $this->server->status = Server::FAILED;
     }
     $this->server->save();
     unlink($key);
 }