/**
  * Populate available Site Environments from a Provider.
  *
  * @param string $site_name
  *   The machine name of the site in question.
  */
 public function apiGetSiteEnvironments($site_name)
 {
     $site = SiteQuery::create()->filterByProvider($this->name)->filterByName($site_name)->findOne();
     $result = switchboard_request($this, array('method' => 'GET', 'realm' => 'environments', 'resource' => 'site', 'uuid' => $site->getUuid()));
     $environment_data = json_decode($result->body);
     if (!is_scalar($environment_data)) {
         foreach ($environment_data as $environment_name => $environment) {
             $new_environment = new Environment();
             $new_environment->setName($environment_name);
             $new_environment->setBranch('master');
             $new_environment->setHost("appserver.{$environment_name}.{$site->getUuid()}.drush.in");
             $new_environment->setUsername("{$environment_name}.{$site_name}");
             $site->addEnvironment($new_environment);
         }
     }
     $site->save();
 }
示例#2
0
 /**
  * Populate available Site Environments from a Provider.
  *
  * @param string $site_name
  *   The machine name of the site in question.
  */
 public function apiGetSiteEnvironments($site_name)
 {
     $site = SiteQuery::create()->filterByProvider($this->name)->filterByName($site_name)->findOne();
     $result = switchboard_request($this, array('method' => 'GET', 'resource' => '/sites/' . $site->getRealm() . ':' . $site_name . '/envs'));
     $environment_data = json_decode($result->body);
     foreach ($environment_data as $environment) {
         $new_environment = new Environment();
         $new_environment->setName($environment->name);
         $new_environment->setBranch($environment->vcs_path);
         $new_environment->setHost($environment->ssh_host);
         $new_environment->setUsername("{$site_name}.{$environment->name}");
         $site->addEnvironment($new_environment);
     }
     $site->save();
 }