Last active
February 26, 2021 01:10
-
-
Save juampynr/af322857c73ba6d1ae1f70614d622724 to your computer and use it in GitHub Desktop.
Sample .tugboat/config.yml for a Drupal 8 contrib project (webform). Inspired by https://github.com/q0rban/tugboat-drupal
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
services: | |
php: | |
image: q0rban/tugboat-drupal:8.8 | |
default: true | |
http: false | |
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 | |
# This is an environment variable we added in the Dockerfile that | |
# provides the path to Drupal composer root (not the web root). | |
cd $DRUPAL_COMPOSER_ROOT | |
# We configure the Drupal project to use the checkout of the module as a | |
# Composer package repository. | |
composer config repositories.tugboat 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 drupal/webform: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 standard | |
# Set up the files directory permissions. | |
mkdir -p $DRUPAL_DOCROOT/sites/default/files | |
chgrp -R www-data $DRUPAL_DOCROOT/sites/default/files | |
chmod 2775 $DRUPAL_DOCROOT/sites/default/files | |
chmod -R g+w $DRUPAL_DOCROOT/sites/default/files | |
# Enable the module. | |
vendor/bin/drush --yes pm:enable webform | |
echo 'hi again!' | |
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 | |
export COMPOSER_MEMORY_LIMIT=-1 | |
cd $DRUPAL_COMPOSER_ROOT | |
composer install --optimize-autoloader | |
# Update this module, including all dependencies. | |
composer update drupal/webform --with-all-dependencies | |
vendor/bin/drush --yes updb | |
vendor/bin/drush cache:rebuild | |
echo 'oh hi!' | |
mysql: | |
image: tugboatqa/mariadb | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment