drupal-ukraine / advanced_forum

Advanced Forum
GNU General Public License v2.0
7 stars 4 forks source link

Build Status Drupal Vagrant Dev box for CIbox-v support for porting advanced_forum

Installation

Usage

  1. Clone this repository and go to this directory.
  2. Install new vagrant box with:
    vagrant up && vagrant ssh

Drupal 7 reinstallation from scratch

Unix users

cd /var/www/d7
sh reinstall.sh

Windows users

sh reinstall.sh --windows

By default your site will be accessible by using this url.

http://drupal7.192.168.56.132.xip.io/

Drupal 8 reinstallation from scratch

Open http://drupal8.192.168.56.132.xip.io and go through installation process.

If xip.io not working - create row with

192.168.56.132 drupal7.192.168.56.132.xip.io drupal8.192.168.56.132.xip.io

in /etc/hosts or just use another ServerName in apache.yml

If you have Vagrant HostUpdater plugin, your hosts file will be automatically updated.

VirtualBox additions

For automatic update additions within guest, please install proper plugin

vagrant plugin install vagrant-vbguest

Tools

Adminer

Adminer for mysql administration (credentials drupal:drupal and root:root)

http://192.168.56.132.xip.io/adminer.php

PHP Profiler XHProf

It is installed by default, but to use it as Devel module integration use:

drush en devel -y
drush vset devel_xhprof_enabled 1
drush vset devel_xhprof_directory '/usr/share/php' && drush vset devel_xhprof_url '/xhprof_html/index.php'
ln -s /usr/share/php/xhprof_html xhprof_html

After vset devel_xhprof_enabled it could return an error about "Class 'XHProfRuns_Default' not found" - ignore it.

Linux Containers

When your system enpowered with linux containers(lxc), you can speedup a lot of things by using them and getting rid of virtualization. For approaching lxc, please install vagrant plugin

vagrant plugin install vagrant-lxc
apt-get install redir lxc cgroup-bin

also you may need to apply this patch https://github.com/fgrehm/vagrant-lxc/pull/354

When your system is enpowered by apparmor, you should enable nfs mounts for your host machine Do that by editing /etc/apparmor.d/lxc/lxc-default file with one line

profile lxc-container-default flags=(attach_disconnected,mediate_deleted) {
  ...
    mount options=(rw, bind, ro),
  ...

and reload apparmor service

sudo /etc/init.d/apparmor reload

and run the box by command

VAGRANT_CI=yes vagrant up

Do use

VAGRANT_CI=yes

environment variable, if you got issues with all vagrant commands.

Windows Containers

Install Cygwin according to provided steps.

Run Cygwin as Administrator user.

Use default flow to up Vagrant but run sh reinstall.yml --windows

Windows troubleshooting

If you will see error like ...[error 26] file is busy... during sh reinstall.sh modify that line:

before

name: Stage File Proxy settings
sudo: yes
lineinfile: dest='sites/default/settings.php' line='$conf[\"stage_file_proxy_origin\"] = \"{{ stage_file_proxy_url }}";'

after:

name: Copy settings.php
sudo: yes
shell: cp sites/default/settings.php /tmp/reinstall_settings.php

name: Stage File Proxy settings
sudo: yes
lineinfile: dest='sites/default/settings.php' line='$conf[\"stage_file_proxy_origin\"] = \"{{ stage_file_proxy_url }}\";'

name: Restore settings.php
sudo: yes
shell: cp /tmp/reinstall_settings.php sites/default/settings.php