diff --git a/manifests/site.pp b/manifests/site.pp index 9e12497de8..1377b66fb5 100644 --- a/manifests/site.pp +++ b/manifests/site.pp @@ -171,6 +171,7 @@ node 'groups-dev.openstack.org' { site_admin_password => hiera('groups_dev_site_admin_password', 'XXX'), site_mysql_host => hiera('groups_dev_site_mysql_host', 'localhost'), site_mysql_password => hiera('groups_dev_site_mysql_password', 'XXX'), + conf_cron_key => hiera('groups_dev_conf_cron_key', 'XXX'), } } diff --git a/modules/drupal/files/drupal_site_deploy.sh b/modules/drupal/files/drupal_site_deploy.sh deleted file mode 100644 index aeb0f53cf4..0000000000 --- a/modules/drupal/files/drupal_site_deploy.sh +++ /dev/null @@ -1,223 +0,0 @@ -#!/bin/bash -# -# Copyright 2013 OpenStack Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. -# -# Drupal site deploy tool. Install and setup Drupal from a distribution file. -# -# See drupal_site_deploy.sh --help for further parameters and examples. -# -# Basic deployment flow: -# 1. clean-up destination directory (optional) -# 2. extract dist tarball to destination with proper permissions, -# create settings.php and files directory under sites/default -# 3. install drupal with drush si command, setup admin password and -# proper filename, and repair sites/default/files ownership -# 4. create flag-file that marks successfull installation (optional) - -site_admin_user=admin -profile_name=standard -file_group=www-data -file_owner=ubuntu - -_print_help() { - echo "$(basename "$0") -- Deploy and configure a Drupal site from distribution file - -## Global options ## - - -st, --site-tarball source tarball file used for deployment - -db, --db-url database url: mysql://user:pass@hostname[:port]/dbname - -sn, --site-name name of the website - -su, --site-admin-user username of admin account - -sp, --site-admin-password password of admin account - -pn, --profile-name profile used to install (defaults to standard) - -p, --prepare prepare for deployment, but skip the install phase - -c, --clean clean target directory - -dst, --dest-dir target directory - -ff, --flag-file create a flagfile after successfull run - -bu, --base-url base_url parameter of settings.php - -in, --config read parameters from configuration file - -fo, --file-owner file owner - -fg, --file-group group owner - -h, --help display this help - - -## Examples ## - -install using cli parameters: - - drupal_site_deploy.sh -st drupal-7.23.tar.gz -pn standard \\ - --db-url mysql://root:pass@localhost:port/dbname \\ - --site-name drupal-dev.local \\ - --site-admin-user admin \\ - --site-admin-password Wr5pUF@f8*Wr - -install using config file params: - - drupal_site_deploy.sh -in l10n-dev.config -" -} - -_set_args() { - while [ "$1" != "" ]; do - case $1 in - "-st" | "--site-tarball") - shift - site_tarball=$1 - ;; - "-db" | "--db-url") - shift - db_url=$1 - ;; - "-sn" | "--site-name") - shift - site_name=$1 - ;; - "-su" | "--site-admin-user") - shift - site_admin_user=$1 - ;; - "-sp" | "--site-admin-password") - shift - site_admin_password=$1 - ;; - "-pn" | "--profile-name") - shift - profile_name=$1 - ;; - "-p" | "--prepare") - is_prepare=true - ;; - "-c" | "--clean") - is_clean=true - ;; - "-dst" | "--dest-dir") - shift - dest_dir=$1 - ;; - "-ff" | "--flag-file") - shift - flag_file=$1 - ;; - "-bu" | "--base-url") - shift - base_url=$1 - ;; - "-in" | "--config-file") - shift - config_rc=$1 - ;; - "-fo" | "--file-owner") - shift - file_owner=$1 - ;; - "-fg" | "--file-group") - shift - file_group=$1 - ;; - "-h" | "--help") - _print_help - exit 1 - ;; - esac - shift - done -} - -_validate_args() { - if [ ! $dest_dir ]; then - echo "Error: Mandatory parameter destination directory is missing." - exit 1 - fi - if [ ! -d $dest_dir ]; then - echo "Error: Invalid destination directory: $dest_dir" - exit 1 - fi - if [ ! $site_tarball ]; then - echo "Error: Mandatory parameter site tarball is missing." - exit 1 - fi - if [ ! -f $site_tarball ]; then - echo "Error: Invalid site tarball file: $site_tarball" - exit 1 - fi - if [ ! $db_url ]; then - echo "Error: Mandatory parameter db url is missing." - exit 1 - fi -} - -_stage_cleanup() { - echo "cleanup site directory" - rm -rf $dest_dir/* -} - -_stage_prepare() { - echo "prepare installation" - umask 0027 - tar xfz $site_tarball --strip-components=1 --no-same-permissions -C $dest_dir - cp $dest_dir/sites/default/default.settings.php $dest_dir/sites/default/settings.php - if [ $base_url ]; then - echo "\$base_url='$base_url';" >> $dest_dir/sites/default/settings.php - fi - mkdir -p $dest_dir/sites/default/files - chmod g+rwxs $dest_dir/sites/default/files - chown -R $file_owner:$file_group $dest_dir - chmod 0664 $dest_dir/sites/default/settings.php - umask 0022 -} - -_stage_install() { - echo "install distribution file" - save_dir=`pwd` - cd $dest_dir - drush si -y $profile_name --db-url=$db_url - chmod 0440 $dest_dir/sites/default/settings.php - chgrp -R www-data $dest_dir/sites/default/files - if [ $site_name ]; then - drush vset site_name $site_name - fi - if [ $site_admin_password ]; then - drush upwd $site_admin_user --password="$site_admin_password" - fi - drush features-revert-all -y - cd $save_dir -} - -set -e - -_set_args $* - -if [ -f $config_rc ]; then - source $config_rc -fi - -_validate_args - -if [ $is_clean ]; then - _stage_cleanup -fi - -_stage_prepare - -if [ ! $is_prepare ]; then - _stage_install -fi - -if [ $flag_file ]; then - touch $flag_file - chown root:root $flag_file -fi - -echo "sitedeploy completed in $SECONDS seconds." diff --git a/modules/drupal/manifests/distbuild.pp b/modules/drupal/manifests/distbuild.pp deleted file mode 100644 index 66ee441a2b..0000000000 --- a/modules/drupal/manifests/distbuild.pp +++ /dev/null @@ -1,68 +0,0 @@ -# Copyright 2013 OpenStack Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. -# -# == Define: distbuild -# -# define to build distribution from git makefile -# -define drupal::distbuild ( - $site_sandbox_root = undef, - $site_staging_root = undef, - $site_repo_url = undef, - $site_repo_branch = 'master', - $site_build_repo_name = undef, - $site_staging_tarball = undef, - $site_build_flagfile = undef, - $site_deploy_flagfile = undef, - $site_makefile = undef, -) { - file { $site_sandbox_root: - ensure => directory, - owner => 'root', - group => 'root', - mode => '0755', - } - - file { $site_staging_root: - ensure => directory, - owner => 'root', - group => 'root', - mode => '0755', - } - - vcsrepo { "${site_sandbox_root}/${site_build_repo_name}": - ensure => latest, - provider => git, - revision => $site_repo_branch, - source => $site_repo_url, - } - - exec { 'drupal-build-dist': - path => '/usr/bin:/bin', - timeout => 900, - cwd => "${site_sandbox_root}/${$site_build_repo_name}", - command => "rm -rf ${site_staging_root}/${site_staging_tarball} && drush make --tar ${site_makefile} ${site_staging_root}/${site_staging_tarball}", - unless => "diff ${site_sandbox_root}/${$site_build_repo_name}/.git/refs/heads/master ${site_build_flagfile}", - require => File[$site_staging_root], - subscribe => Vcsrepo["${site_sandbox_root}/${$site_build_repo_name}"], - } - - exec { 'drupal-build-dist-post': - path => '/usr/bin:/bin', - command => "cp ${site_sandbox_root}/${$site_build_repo_name}/.git/refs/heads/master ${site_build_flagfile} && rm -rf ${site_deploy_flagfile}", - unless => "diff ${site_sandbox_root}/${$site_build_repo_name}/.git/refs/heads/master ${site_build_flagfile}", - subscribe => Vcsrepo["${site_sandbox_root}/${$site_build_repo_name}"], - require => Exec['drupal-build-dist'], - } -} diff --git a/modules/drupal/manifests/drush.pp b/modules/drupal/manifests/drush.pp new file mode 100644 index 0000000000..31e208fe74 --- /dev/null +++ b/modules/drupal/manifests/drush.pp @@ -0,0 +1,75 @@ +# Copyright 2013 OpenStack Foundation +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +# == Define: drush +# +# define to add drush and custom dsd extension +# +# Drush parameters: +# - drushdsdtar: drush dsd release tarball +# - basedrushdsdtar: drush dsd tar local filename +# - download_dir: download directory, local copy of release tarball lives here + +define drupal::drush ( + $drushdsdtar = 'https://github.com/mkissam/drush-dsd/archive/v0.7.tar.gz', + $basedrushdsdtar = 'drush-dsd-0.7.tar.gz', + $download_dir = '/srv/downloads', +) { + + # pear / drush cli tool + pear::package { 'PEAR': } + pear::package { 'Console_Table': } + pear::package { 'drush': + version => '6.0.0', + repository => 'pear.drush.org', + require => [ Pear::Package['PEAR'], Pear::Package['Console_Table'] ], + } + + file { '/usr/share/php/drush/commands/dsd': + ensure => directory, + owner => 'root', + group => 'root', + mode => '0755', + require => [ Pear::Package['drush'] ] + } + + # If we don't already have the specified dsd tar, download it. + exec { "download:${drushdsdtar}": + command => "/usr/bin/wget ${drushdsdtar} -O ${download_dir}/${basedrushdsdtar}", + creates => "${download_dir}/${basedrushdsdtar}", + require => File[$download_dir], + } + + # If drush-dsd.tar.gz isn't the same as $basedrushdsdtar, install it. + file { "${download_dir}/drush-dsd.tar.gz": + ensure => present, + source => "file://${download_dir}/${basedrushdsdtar}", + require => Exec["download:${drushdsdtar}"], + replace => true, + owner => 'root', + group => 'root', + mode => '0644', + } + + # If drush-dsd just created extract to /etc/drush + exec { 'drush-dsd-initial-init': + user => 'root', + command => "/bin/tar -C /usr/share/php/drush/commands/dsd --strip 1 -xzvf ${download_dir}/drush-dsd.tar.gz;/usr/bin/drush cc all", + subscribe => File["${download_dir}/drush-dsd.tar.gz"], + refreshonly => true, + logoutput => true, + require => File['/usr/share/php/drush/commands/dsd'], + } + +} \ No newline at end of file diff --git a/modules/drupal/manifests/init.pp b/modules/drupal/manifests/init.pp index 0d4123d8a9..36db1a0759 100644 --- a/modules/drupal/manifests/init.pp +++ b/modules/drupal/manifests/init.pp @@ -19,8 +19,10 @@ # # Actions: # - Prepare apache vhost and create mysql database (optional) -# - Build distribution tarball from git repo as a soruce -# - Deploy dist tarball and setup Drupal from scratch +# - Install Drush tool with Drush-dsd extension +# - Fetch distribution tarball from remote repository +# - Deploy dist tarball and setup Drupal from scratch or +# upgrade an existing site. # # Site parameters: # - site_name: name of the site (FQDN for example) @@ -28,6 +30,8 @@ # - site_docroot: root directory of drupal site # - site_vhost_root: root directory of virtual hosts # - site_create_database: if true, create a new database (default: false) +# - site_alias: drush site alias name +# - site_profile: installation profile to deploy # # Mysql connection: # - mysql_user: mysql user of drupal site @@ -35,39 +39,37 @@ # - mysql_database: site database name # - mysql_host: host of mysql server (default: localhost) # -# Distribution build process: -# - site_sandbox_root: root directory of sandbox where build happens -# - site_staging_root: root directory of target tarballs -# - site_staging_tarball: target tarball of build process -# - site_makefile: installation profile drush makefile -# - site_build_reponame: local repository name under sandbox root -# - site_repo_url: git repo url of installation profile source -# - site_build_flagfile: triggers a rebuild when missing or git head differs +# Drupal configuration variables: +# - conf_cron_key: cron_key setting used for cron access +# +# Remarks: +# - the site lives in /srv/vhosts/{hostname}/slot0 or slot1 directory +# - the /srv/vhosts/{hostname}/w symlinks to slot0 or slot1 and +# points to actual site root. The upgrade process will begin in +# inactive slot so we can avoid typical WSOD issues with Drupal. +# - for temporary package/tarball download it is using the +# /srv/downloads directory. # -# Deploy process: -# - site_profile: installation profile to deploy -# - site_deploy_flagfile: triggers a redeploy when this flagfile is missing class drupal ( $site_name = undef, - $site_docroot = undef, + $site_root = undef, + $site_docroot = "${site_root}/w", $site_mysql_host = 'localhost', $site_mysql_user = undef, $site_mysql_password = undef, $site_mysql_database = undef, $site_vhost_root = '/srv/vhosts', - $site_sandbox_root = '/srv/sandbox', - $site_staging_root = '/srv/sandbox/release', - $site_staging_tarball = '', $site_profile = 'standard', $site_admin_password = undef, - $site_build_reponame = undef, - $site_makefile = undef, - $site_repo_url = undef, - $site_build_flagfile = '/tmp/drupal-site-build', - $site_deploy_flagfile = '/tmp/drupal-site-deploy', + $site_alias = undef, $site_create_database = false, $site_base_url = false, + $site_file_owner = 'root', + $package_repository = undef, + $package_branch = undef, + $conf_cron_key = undef, + $conf_markdown_directory = undef, ) { include apache include pear @@ -84,11 +86,11 @@ class drupal ( port => 80, priority => '50', docroot => $site_docroot, - require => File[$site_docroot], + require => Exec['init-slot-dirs'], template => 'drupal/drupal.vhost.erb', } - file { $site_docroot: + file { $site_root: ensure => directory, owner => 'root', group => 'www-data', @@ -96,6 +98,16 @@ class drupal ( require => Package['httpd'], } + # Create initial symlink here to allow apache vhost creation + # so drush dsd can flip this symlink between slot0/slot1 + # (won't be recreated until the symlink exists) + exec { 'init-slot-dirs': + command => "/bin/ln -s ${site_root}/slot1 ${site_docroot}", + unless => "/usr/bin/test -L ${site_docroot}", + logoutput => 'on_failure', + require => File[$site_root], + } + a2mod { 'rewrite': ensure => present, } @@ -110,13 +122,18 @@ class drupal ( notify => Service['httpd'], } - # pear / drush cli tool - pear::package { 'PEAR': } - pear::package { 'Console_Table': } - pear::package { 'drush': - version => '6.0.0', - repository => 'pear.drush.org', - require => [ Pear::Package['PEAR'], Pear::Package['Console_Table'] ], + # This directory is used to download and cache tarball releases + # without proper upstream packages + file { '/srv/downloads': + ensure => directory, + owner => 'root', + group => 'root', + mode => '0755', + } + + # setup drush and drush-dsd extension + drush { 'drush': + require => File['/srv/downloads'], } # site mysql database @@ -130,34 +147,95 @@ class drupal ( } } - # drupal dist-build - distbuild { "distbuild-${site_name}": - site_sandbox_root => $site_sandbox_root, - site_staging_root => $site_staging_root, - site_repo_url => $site_repo_url, - site_build_repo_name => $site_build_reponame, - site_staging_tarball => $site_staging_tarball, - site_build_flagfile => $site_build_flagfile, - site_deploy_flagfile => $site_deploy_flagfile, - site_makefile => $site_makefile, - require => [ Package['httpd'], Pear::Package['drush'] ], + # drush site-alias definition + + file { '/etc/drush': + ensure => directory, + owner => 'root', + group => 'root', + mode => '0755', } - # drupal site deploy - sitedeploy { "sitedeploy-${site_name}": - site_docroot => $site_docroot, - site_staging_root => $site_staging_root, - site_staging_tarball => $site_staging_tarball, - site_deploy_flagfile => $site_deploy_flagfile, - site_name => $site_name, - site_profile => $site_profile, - site_mysql_user => $site_mysql_user, - site_mysql_password => $site_mysql_password, - site_mysql_host => $site_mysql_host, - site_mysql_database => $site_mysql_database, - site_admin_password => $site_admin_password, - site_base_url => $site_base_url, - require => Distbuild["distbuild-${site_name}"], + file { '/etc/drush/aliases.drushrc.php': + ensure => present, + owner => 'root', + group => 'root', + mode => '0400', + content => template('drupal/aliases.drushrc.php.erb'), + replace => true, + require => [ File['/etc/drush'], Drush['drush'] ], } -} + # site custom configuration + + file { "${site_root}/etc": + ensure => directory, + owner => 'root', + group => 'root', + mode => '0755', + require => File[$site_root], + } + + file { "${site_root}/etc/settings.php": + ensure => file, + owner => 'root', + group => 'root', + mode => '0400', + content => template('drupal/settings.php.erb'), + replace => true, + require => File["${site_root}/etc"], + } + + # add site distro tarball from http repository including + # md5 hash file + exec { "download:${package_branch}.tar.gz": + command => "/usr/bin/wget ${package_repository}/${package_branch}.tar.gz -O /srv/downloads/${package_branch}.tar.gz", + creates => "/srv/downloads/${package_branch}.tar.gz", + logoutput => 'on_failure', + require => File['/srv/downloads'], + } + + exec { "download:${package_branch}.md5": + command => "/usr/bin/wget ${package_repository}/${package_branch}.md5 -O /srv/downloads/${package_branch}.md5", + creates => "/srv/downloads/${package_branch}.md5", + logoutput => 'on_failure', + require => [ Exec["download:${package_branch}.tar.gz"] ], + } + + # deploy a site from scratch when site status is 'NOT INSTALLED' + exec { "sitedeploy-${site_name}": + command => "/usr/bin/drush dsd-init @${site_alias} /srv/downloads/${package_branch}.tar.gz", + logoutput => true, + timeout => 600, + onlyif => "/usr/bin/drush dsd-status @${site_alias} | /bin/grep -c 'NOT INSTALLED'", + require => [ + Exec["download:${package_branch}.md5"], + File['/etc/drush/aliases.drushrc.php'], + ] + } + + # update the site into a new slot when a remote update available + exec { "siteupdate-${site_name}": + command => "/usr/bin/drush dsd-update @${site_alias} /srv/downloads/${package_branch}.tar.gz", + logoutput => true, + timeout => 600, + onlyif => "/usr/bin/drush dsd-status @${site_alias} | /bin/grep -c 'UPDATE'", + require => [ + Exec["download:${package_branch}.md5"], + File['/etc/drush/aliases.drushrc.php'], + ] + } + + # setup cron job + + cron { $site_name: + name => "${site_name}.cron", + command => "wget -O - -q -t 1 ${$site_base_url}/cron.php?cron_key=${$conf_cron_key}", + user => root, + minute => '*/5', + require => [ + Exec["sitedeploy-${site_name}"], + ] + } + +} \ No newline at end of file diff --git a/modules/drupal/manifests/sitedeploy.pp b/modules/drupal/manifests/sitedeploy.pp deleted file mode 100644 index a42b713585..0000000000 --- a/modules/drupal/manifests/sitedeploy.pp +++ /dev/null @@ -1,66 +0,0 @@ -# Copyright 2013 OpenStack Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. -# -# == Define: sitedeploy -# -# define to deploy drupal site from distribution tarball -# -define drupal::sitedeploy ( - $site_docroot = undef, - $site_staging_root = undef, - $site_staging_tarball = undef, - $site_deploy_flagfile = undef, - $site_name = undef, - $site_profile = undef, - $site_mysql_user = undef, - $site_mysql_password = undef, - $site_mysql_host = undef, - $site_mysql_database = undef, - $site_admin_password = '', - $site_deploy_timeout = 600, - $site_base_url = undef, - $site_file_owner = 'root', -) { - file { '/usr/local/sbin/drupal-site-deploy.sh': - ensure => present, - owner => 'root', - group => 'root', - mode => '0744', - source => 'puppet:///modules/drupal/drupal_site_deploy.sh', - } - - file { '/etc/drupal_site': - ensure => directory, - } - - file { "/etc/drupal_site/${site_name}.config": - ensure => present, - owner => 'root', - group => 'root', - mode => '0400', - content => template('drupal/site.config.erb'), - replace => true, - require => File['/etc/drupal_site'], - } - - exec { "drupal-deploy-${site_name}": - path => '/usr/bin:/bin:/usr/local/sbin', - command => "drupal-site-deploy.sh -in /etc/drupal_site/${site_name}.config", - creates => $site_deploy_flagfile, - timeout => $site_deploy_timeout, - require => [ File["/etc/drupal_site/${site_name}.config"], - File['/usr/local/sbin/drupal-site-deploy.sh'] ], - } - -} diff --git a/modules/drupal/templates/aliases.drushrc.php.erb b/modules/drupal/templates/aliases.drushrc.php.erb new file mode 100644 index 0000000000..c9cac6a4f1 --- /dev/null +++ b/modules/drupal/templates/aliases.drushrc.php.erb @@ -0,0 +1,29 @@ +'] = array( + 'root' => '<%= @site_docroot %>', + 'dsd-root' => '<%= @site_root %>', + 'uri' => '<%= @site_base_url %>', + 'db-url' => 'mysql://<%= @site_mysql_user %>:<%= @site_mysql_password %>@<%= @site_mysql_host %>/<%= @site_mysql_database %>', + 'databases' => array( + 'default' => array( + 'driver' => 'mysql', + 'username' => '<%= @site_mysql_user %>', + 'password' => '<%= @site_mysql_password %>', + 'port' => '', + 'host' => '<%= @site_mysql_host %>', + 'database' => '<%= @site_mysql_database %>', + ), + ), + 'file-owner' => '<%= @site_file_owner %>', + 'file-group' => 'www-data', + 'variables' => array( + 'site_name' => '<%= @site_name %>', + ), + 'profile' => '<%= @site_profile %>', + 'default-admin-password' => '<%= @site_admin_password %>', + 'disable-features-revert' => FALSE, + 'package-provider' => 'static-tarball', + 'package-repository' => '<%= @package_repository %>', + 'package-branch' => '<%= @package_branch %>', +); \ No newline at end of file diff --git a/modules/drupal/templates/settings.php.erb b/modules/drupal/templates/settings.php.erb new file mode 100644 index 0000000000..d144b32b4b --- /dev/null +++ b/modules/drupal/templates/settings.php.erb @@ -0,0 +1,14 @@ + +$conf['cron_key'] = '<%= @conf_cron_key %>'; +<% end %> +<% if @conf_markdown_directory %> +$conf['groups_feeds_markdown_directory'] = '<%= @conf_markdown_directory %>'; +<% end %> \ No newline at end of file diff --git a/modules/drupal/templates/site.config.erb b/modules/drupal/templates/site.config.erb deleted file mode 100644 index a67d4cd935..0000000000 --- a/modules/drupal/templates/site.config.erb +++ /dev/null @@ -1,13 +0,0 @@ -# Site deployment config file: <%= @site_name %> -# - -site_tarball=<%= @site_staging_root %>/<%= @site_staging_tarball %> -db_url=mysql://<%= @site_mysql_user %>:<%= @site_mysql_password %>@<%= @site_mysql_host %>/<%= @site_mysql_database %> -site_admin_password=<%= @site_admin_password %> -site_name=<%= @site_name %> -profile_name=<%= @site_profile %> -dest_dir=<%= @site_docroot %> -flag_file=<%= @site_deploy_flagfile %> -is_clean=true -base_url=<%= @site_base_url %> -file_owner=<%= @site_file_owner %> diff --git a/modules/openstack_project/manifests/groups_dev.pp b/modules/openstack_project/manifests/groups_dev.pp index cd764fcf2c..6d7e47eec2 100644 --- a/modules/openstack_project/manifests/groups_dev.pp +++ b/modules/openstack_project/manifests/groups_dev.pp @@ -18,6 +18,7 @@ class openstack_project::groups_dev ( $site_admin_password = '', $site_mysql_host = '', $site_mysql_password = '', + $conf_cron_key = '', $sysadmins = [], ) { @@ -40,21 +41,22 @@ class openstack_project::groups_dev ( } class { 'drupal': - site_name => 'groups-dev.openstack.org', - site_docroot => '/srv/vhosts/groups-dev.openstack.org', - site_mysql_host => $site_mysql_host, - site_mysql_user => 'groups', - site_mysql_password => $site_mysql_password, - site_mysql_database => 'groups_dev', - site_vhost_root => '/srv/vhosts', - site_staging_tarball => 'groups-dev.tar.gz', - site_admin_password => $site_admin_password, - site_build_reponame => 'groups-master', - site_makefile => 'build-groups.make', - site_repo_url => 'https://git.openstack.org/openstack-infra/groups', - site_profile => 'groups', - site_base_url => 'http://groups-dev.openstack.org', - require => [ Class['openstack_project::server'], + site_name => 'groups-dev.openstack.org', + site_root => '/srv/vhosts/groups-dev.openstack.org', + site_mysql_host => $site_mysql_host, + site_mysql_user => 'groups', + site_mysql_password => $site_mysql_password, + site_mysql_database => 'groups_dev', + site_vhost_root => '/srv/vhosts', + site_admin_password => $site_admin_password, + site_alias => 'groupsdev', + site_profile => 'groups', + site_base_url => 'http://groups-dev.openstack.org', + package_repository => 'http://tarballs.openstack.org/groups', + package_branch => 'groups-latest', + conf_cron_key => $conf_cron_key, + conf_markdown_directory => '/srv/groups-static-pages', + require => [ Class['openstack_project::server'], Vcsrepo['/srv/groups-static-pages'] ] }