|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
# Database creation and priveleges.
|
|
|
|
mysql -u root -e 'create database drupal;'
|
|
|
|
mysql -u root -e "create database fedora;"
|
|
|
|
mysql -u root -e "GRANT ALL PRIVILEGES ON fedora.* To 'fedora'@'localhost' IDENTIFIED BY 'fedora';"
|
|
|
|
mysql -u root -e "GRANT ALL PRIVILEGES ON drupal.* To 'drupal'@'localhost' IDENTIFIED BY 'drupal';"
|
|
|
|
|
|
|
|
# Java 8, if needed.
|
|
|
|
if [ $FEDORA_VERSION = "3.8.1" ]; then
|
|
|
|
sudo add-apt-repository -y ppa:webupd8team/java
|
|
|
|
sudo apt-get update
|
|
|
|
sudo apt-get install -y oracle-java8-installer oracle-java8-set-default
|
|
|
|
sudo update-java-alternatives -s java-8-oracle
|
|
|
|
export JAVA_HOME=/usr/lib/jvm/java-8-oracle
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Islandora Tomcat installation.
|
|
|
|
cd $HOME
|
|
|
|
git clone git://github.com/Islandora/tuque.git
|
|
|
|
wget http://alpha.library.yorku.ca/islandora_tomcat.$FEDORA_VERSION.tar.gz
|
|
|
|
tar xf islandora_tomcat.$FEDORA_VERSION.tar.gz
|
|
|
|
cd islandora_tomcat
|
|
|
|
export CATALINA_HOME='.'
|
|
|
|
export JAVA_OPTS="-Xms1024m -Xmx1024m -XX:MaxPermSize=512m -XX:+CMSClassUnloadingEnabled -Djavax.net.ssl.trustStore=$CATALINA_HOME/fedora/server/truststore -Djavax.net.ssl.trustStorePassword=tomcat"
|
|
|
|
# TODO: roll a Fedora 3.8.1 islandora_tomcat that doesn't require a rebuild.
|
|
|
|
if [ $FEDORA_VERSION = "3.8.1" ]; then
|
|
|
|
export FEDORA_HOME=$HOME/islandora_tomcat/fedora
|
|
|
|
./fedora/server/bin/fedora-rebuild.sh -r org.fcrepo.server.utilities.rebuild.SQLRebuilder
|
|
|
|
fi
|
|
|
|
./bin/startup.sh
|
|
|
|
|
|
|
|
cd $HOME
|
|
|
|
|
|
|
|
# Drush and PHPCS installation.
|
|
|
|
if [ "$(phpenv version-name)" == "5.3.3" ]; then
|
|
|
|
# No mod_openssl in Travis 5.3.3 boxes
|
|
|
|
composer config -g disable-tls true
|
|
|
|
composer config -g secure-http false
|
|
|
|
composer self-update
|
|
|
|
composer global require drush/drush:6.*
|
|
|
|
composer global require drupal/coder:7.*
|
|
|
|
else
|
|
|
|
composer global require drush/drush:7.*
|
|
|
|
composer global require drupal/coder
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Symlink the things
|
|
|
|
if [ -f "$HOME/.config/composer/vendor/bin/drush" ]; then
|
|
|
|
sudo ln -s $HOME/.config/composer/vendor/bin/drush /usr/bin/drush
|
|
|
|
elif [ -f "$HOME/.composer/vendor/bin/drush" ]; then
|
|
|
|
sudo ln -s $HOME/.composer/vendor/bin/drush /usr/bin/drush
|
|
|
|
else
|
|
|
|
echo "Could not find drush"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
/usr/bin/drush version
|
|
|
|
|
|
|
|
if [ -f "$HOME/.config/composer/vendor/bin/phpcs" ]; then
|
|
|
|
sudo ln -s $HOME/.config/composer/vendor/bin/phpcs /usr/bin/phpcs
|
|
|
|
elif [ -f "$HOME/.composer/vendor/bin/phpcs" ]; then
|
|
|
|
sudo ln -s $HOME/.composer/vendor/bin/phpcs /usr/bin/phpcs
|
|
|
|
else
|
|
|
|
echo "Did not find phpcs"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
/usr/bin/phpcs --version
|
|
|
|
|
|
|
|
# PHP Copy-Paste Detection installation.
|
|
|
|
composer global require --dev sebastian/phpcpd
|
|
|
|
if [ -f "$HOME/.config/composer/vendor/bin/phpcpd" ]; then
|
|
|
|
sudo ln -s $HOME/.config/composer/vendor/bin/phpcpd /usr/local/bin/phpcpd
|
|
|
|
elif [ -f "$HOME/.composer/vendor/bin/phpcpd" ]; then
|
|
|
|
sudo ln -s $HOME/.composer/vendor/bin/phpcpd /usr/local/bin/phpcpd
|
|
|
|
else
|
|
|
|
echo "Did not find phpcpd"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
/usr/local/bin/phpcpd --version
|
|
|
|
|
|
|
|
# Drupal installation.
|
|
|
|
phpenv rehash
|
|
|
|
drush dl --yes drupal
|
|
|
|
cd drupal-*
|
|
|
|
drush si minimal --db-url=mysql://drupal:drupal@localhost/drupal --yes
|
|
|
|
if [ "$(phpenv version-name)" == "5.3.3" ]; then
|
|
|
|
drush runserver --php-cgi=$HOME/.phpenv/shims/php-cgi localhost:8081 &>/tmp/drush_webserver.log &
|
|
|
|
else
|
|
|
|
drush runserver localhost:8081 &>/tmp/drush_webserver.log &
|
|
|
|
fi
|
|
|
|
# Add Islandora to the list of symlinked modules.
|
|
|
|
ln -s $ISLANDORA_DIR sites/all/modules/islandora
|
|
|
|
# Use our custom Travis test config for Simpletest.
|
|
|
|
mv sites/all/modules/islandora/tests/travis.test_config.ini sites/all/modules/islandora/tests/test_config.ini
|
|
|
|
# Grab Tuque.
|
|
|
|
mkdir sites/all/libraries
|
|
|
|
ln -s $HOME/tuque sites/all/libraries/tuque
|
|
|
|
# Grab and enable other modules.
|
|
|
|
drush dl --yes coder-7.x-2.4
|
|
|
|
drush dl --yes potx-7.x-1.0
|
|
|
|
drush en --yes coder_review
|
|
|
|
drush en --yes simpletest
|
|
|
|
drush en --yes potx
|
|
|
|
drush en --user=1 --yes islandora
|
|
|
|
drush cc all
|
|
|
|
# The shebang in this file is a bogeyman that is haunting the web test cases.
|
|
|
|
rm /home/travis/.phpenv/rbenv.d/exec/hhvm-switcher.bash
|
|
|
|
sleep 20
|