Commit a25f4896 authored by drumm's avatar drumm Committed by Neil Drumm

Merge branch 'dev-services' into dev-envobject

parents 0bac579e 5b70c69e
......@@ -267,7 +267,7 @@ class provisionService_db extends provisionService {
* Write out server's drushrc alias file.
*/
function write_alias() {
return array(drush_get_option('provision-service-db') => array('provision-service-db', 'master_db'));
return array('provision-service-db', 'master_db');
}
}
......
<?php
class provisionService_http_cluster extends provisionService_http {
function write_alias() {
return array('provision-http-cluster-web-servers');
}
}
......@@ -75,10 +75,6 @@ class provisionService_http extends provisionService {
* Write out server's drushrc alias file.
*/
function write_alias() {
drush_set_option('path-aliases', array(
'%drush-script' => drush_get_option('drush_path'),
));
drush_set_option('remote-host', drush_get_option('web_host'));
return array(drush_get_option('provision-service-http') => array('provision-service-http', 'remote-host', 'remote-user', 'path-aliases', 'web_host', 'web_ip', 'web_ports', 'web_group', 'restart_cmd'));
return array('provision-service-http', 'web_ports', 'web_group', 'restart_cmd');
}
}
......@@ -151,18 +151,15 @@ class provisionConfig_drushrc_alias extends provisionConfig_drushrc {
* @code '\@name' => array('option1', 'option2'), @endcode
* will save the current values of option1 and option2 to @name.
*/
function __construct($contexts) {
$contexts_expanded = array();
foreach ($contexts as $name => $options) {
$contexts_expanded[$name] = array();
foreach ($options as $key) {
$contexts_expanded[$name][$key] = drush_get_option($key);
}
function __construct($name, $options = array()) {
$options_expanded = array();
foreach ($options as $key) {
$options_expanded[$key] = drush_get_option($key);
}
$this->data = array(
'aliasname' => reset(array_keys($contexts)),
'contexts' => $contexts_expanded,
'aliasname' => $name,
'options' => $options_expanded,
);
}
......
......@@ -79,6 +79,11 @@ function provision_drush_command() {
'description' => dt('Save Drush aliases'),
'bootstrap' => DRUSH_BOOTSTRAP_DRUSH,
);
$items['provision-named-context-delete'] = array(
'arguments' => array(),
'description' => dt('Delete Drush aliases'),
'bootstrap' => DRUSH_BOOTSTRAP_DRUSH,
);
$items['provision-install'] = array(
'arguments' => array('domain.com' => dt('The domain of the site to install.')),
'description' => dt('Provision a new site using the provided data.'),
......@@ -213,31 +218,29 @@ function drush_provision_hostmaster_make($platform) {
function drush_http_provision_named_context_save() {
if (PROVISION_CONTEXT_SERVER) {
$parents = array();
$options = array('provision-host', 'provision-user', 'config_path', 'backup_path');
foreach (provision_service('all') as $service) {
foreach ($service->write_alias() as $key => $value) {
$parents[] = drush_get_option('hosting_name') . '-' . $key;
$config = new provisionConfig_drushrc_alias(array(drush_get_option('hosting_name') . '-' . $key => $value));
$config->write();
}
$options = array_merge($options, $service->write_alias());
}
drush_set_option('parent', '@' . implode(',@', $parents));
$config = new provisionConfig_drushrc_alias(array(drush_get_option('hosting_name') => array('parent', 'provision-context', 'config_path', 'backup_path')));
$config = new provisionConfig_drushrc_alias(drush_get_option('hosting_name'), $options);
$config->write();
}
elseif (PROVISION_CONTEXT_PLATFORM) {
drush_set_option('platform-name', preg_replace('/^platform_/', '', drush_get_option('hosting_name')));
$config = new provisionConfig_drushrc_alias(array(drush_get_option('hosting_name') => array('parent', 'provision-context', 'root', 'platform-name')));
$config = new provisionConfig_drushrc_alias(drush_get_option('hosting_name'), array('provision-http-server', 'root', 'platform-name'));
$config->write();
}
elseif (PROVISION_CONTEXT_SITE) {
$config = new provisionConfig_drushrc_alias(array(drush_get_option('hosting_name') => array('parent', 'provision-context', 'uri', 'site_port', 'site_id', 'language', 'client_email')));
$config = new provisionConfig_drushrc_alias(drush_get_option('hosting_name'), array('provision-db-server', 'provision-platform', 'uri', 'site_port', 'site_id', 'language', 'client_email'));
$config->write();
}
}
function drush_http_provision_named_context_delete() {
$config = new provisionConfig_drushrc_alias(drush_get_option('hosting_name'));
$config->unlink();
}
function _provision_default_restart_cmd() {
$command = '/usr/sbin/apachectl'; // A proper default for most of the world
foreach (explode(':', $_SERVER['PATH']) as $path) {
......
<?php print "<?php \n"; ?>
<?php foreach ($contexts as $name => $data) { ?>
$aliases['<?php print $name; ?>'] = <?php print var_export($data, TRUE); ?>;
<?php } ?>
$aliases['<?php print $aliasname; ?>'] = <?php print var_export($options, TRUE); ?>;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment