farmOS/.tugboat/config.yml

61 lines
2.3 KiB
YAML

services:
php:
image: farmos/farmos:2.x-dev
default: true
depends: mysql
commands:
update: |
set -eux
# Check out a branch using the unique Tugboat ID for this repository, to
# ensure we don't clobber an existing branch.
git checkout -b $TUGBOAT_REPO_ID
# Composer is hungry. You need a Tugboat project with a pretty sizeable
# chunk of memory.
export COMPOSER_MEMORY_LIMIT=-1
cd /opt/drupal
# We configure the Drupal project to use the checkout of the module as a
# Composer package repository.
composer config repositories.farmos vcs $TUGBOAT_ROOT
# Now we can require this module, specifing the branch name we created
# above that uses the $TUGBOAT_REPO_ID environment variable.
composer require farmos/farmos:dev-$TUGBOAT_REPO_ID -vvv
# Install Drupal on the site.
vendor/bin/drush \
--yes \
--db-url=mysql://tugboat:tugboat@mysql:3306/tugboat \
--site-name='This is a live preview' \
--account-pass=admin \
site:install farm \
farm.modules="all"
# Create test users with manager, worker and viewer roles.
vendor/bin/drush user-create manager --password manager && vendor/bin/drush user-add-role farm_manager manager
vendor/bin/drush user-create worker --password worker && vendor/bin/drush user-add-role farm_worker worker
vendor/bin/drush user-create viewer --password viewer && vendor/bin/drush user-add-role farm_viewer viewer
# Set up the files directory permissions.
mkdir -p /opt/drupal/web/sites/default/files
chgrp -R www-data /opt/drupal/web/sites/default/files
chmod 2775 /opt/drupal/web/sites/default/files
chmod -R g+w /opt/drupal/web/sites/default/files
build: |
set -eux
# Delete and re-check out this branch in case this is built from a Base Preview.
git branch -D $TUGBOAT_REPO_ID && git checkout -b $TUGBOAT_REPO_ID || true
# Update this module, including all dependencies.
export COMPOSER_MEMORY_LIMIT=-1
cd /opt/drupal
composer update farmos/farmos --with-all-dependencies
vendor/bin/drush --yes updb
vendor/bin/drush cache:rebuild
mysql:
image: tugboatqa/mariadb