/** * 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(); }
/** * 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(); }