From 7812760d5a64ed5d91f4275ee14db22b7b8febea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Sobieszcza=C5=84ski?= Date: Thu, 21 Sep 2017 19:04:26 +0200 Subject: [PATCH 01/10] Updating php docker image version --- circle.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/circle.yml b/circle.yml index ce24741..1e07cfa 100644 --- a/circle.yml +++ b/circle.yml @@ -1,6 +1,6 @@ machine: php: - version: 5.5.21 + version: 5.6 dependencies: pre: From 61477b89c906156c18fad5ed9a65cc118ec87825 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Sobieszcza=C5=84ski?= Date: Thu, 21 Sep 2017 19:08:43 +0200 Subject: [PATCH 02/10] Updating php docker image version --- circle.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/circle.yml b/circle.yml index 1e07cfa..3f3a590 100644 --- a/circle.yml +++ b/circle.yml @@ -1,6 +1,6 @@ machine: php: - version: 5.6 + version: 5 dependencies: pre: From 32928058a576db9c7711729e618a35236ecf11b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Sobieszcza=C5=84ski?= Date: Thu, 21 Sep 2017 19:14:16 +0200 Subject: [PATCH 03/10] Updating php docker image version --- circle.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/circle.yml b/circle.yml index 3f3a590..bbfef75 100644 --- a/circle.yml +++ b/circle.yml @@ -1,6 +1,6 @@ machine: php: - version: 5 + version: 5.6.22 dependencies: pre: From cdb55621803cfb15a9030ca2e1871881cc490f67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Sobieszcza=C5=84ski?= Date: Thu, 21 Sep 2017 19:31:47 +0200 Subject: [PATCH 04/10] Updating php docker image version --- circle.yml | 74 +++++++++++++++++++++++++++--------------------------- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/circle.yml b/circle.yml index bbfef75..3fcb3df 100644 --- a/circle.yml +++ b/circle.yml @@ -2,40 +2,40 @@ machine: php: version: 5.6.22 -dependencies: - pre: - # Set up a virtual host for the site. - - echo "sendmail_path=/bin/true" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini - - echo "memory_limit=256M" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini - - sudo cp circle/circle.conf /etc/apache2/sites-available/default - - sudo sed -e "s?%PROJECT_DIR%?$(pwd)/www?g" --in-place /etc/apache2/sites-available/default - - sudo a2enmod rewrite - - sudo service apache2 restart - override: - # Get packages with Composer. - - sudo composer self-update - - composer install --prefer-dist - post: - # Create tmp and private directories. - - mkdir -p /tmp/sandbox7 - - mkdir -p /tmp/sandbox7-private - # Download and install the latest version of Drupal 7. - - bin/drush dl drupal-7 --drupal-project-rename=www - - mkdir www/sites/default/files - - chmod -R +rw www/sites/default/files - - cp circle/settings.php www/sites/default/settings.php - - sudo chown -R $(whoami):www-data www - - bin/drush -y -r www si standard --site-name=sandbox7 --account-name=admin --account-pass=admin - # Set tmp and private file system paths. - - bin/drush -r www vset --exact file_temporary_path "/tmp/sandbox7" - - bin/drush -r www vset --exact file_private_path "/tmp/sandbox7-private" - cache_directories: - - vendor - - bin - -test: - override: - # Run Behat with BEHAT_PARAMS. - - bin/behat: - environment: - BEHAT_PARAMS: $(> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini +# - echo "memory_limit=256M" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini +# - sudo cp circle/circle.conf /etc/apache2/sites-available/default +# - sudo sed -e "s?%PROJECT_DIR%?$(pwd)/www?g" --in-place /etc/apache2/sites-available/default +# - sudo a2enmod rewrite +# - sudo service apache2 restart +# override: +# # Get packages with Composer. +# - sudo composer self-update +# - composer install --prefer-dist +# post: +# # Create tmp and private directories. +# - mkdir -p /tmp/sandbox7 +# - mkdir -p /tmp/sandbox7-private +# # Download and install the latest version of Drupal 7. +# - bin/drush dl drupal-7 --drupal-project-rename=www +# - mkdir www/sites/default/files +# - chmod -R +rw www/sites/default/files +# - cp circle/settings.php www/sites/default/settings.php +# - sudo chown -R $(whoami):www-data www +# - bin/drush -y -r www si standard --site-name=sandbox7 --account-name=admin --account-pass=admin +# # Set tmp and private file system paths. +# - bin/drush -r www vset --exact file_temporary_path "/tmp/sandbox7" +# - bin/drush -r www vset --exact file_private_path "/tmp/sandbox7-private" +# cache_directories: +# - vendor +# - bin +# +# test: +# override: +# # Run Behat with BEHAT_PARAMS. +# - bin/behat: +# environment: +# BEHAT_PARAMS: $( Date: Thu, 21 Sep 2017 19:43:47 +0200 Subject: [PATCH 05/10] Updating more stuff --- circle.yml | 74 +++++++++++++++++++++++++++--------------------------- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/circle.yml b/circle.yml index 3fcb3df..4838ca0 100644 --- a/circle.yml +++ b/circle.yml @@ -2,40 +2,40 @@ machine: php: version: 5.6.22 -# dependencies: -# pre: -# # Set up a virtual host for the site. -# - echo "sendmail_path=/bin/true" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini -# - echo "memory_limit=256M" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini -# - sudo cp circle/circle.conf /etc/apache2/sites-available/default -# - sudo sed -e "s?%PROJECT_DIR%?$(pwd)/www?g" --in-place /etc/apache2/sites-available/default -# - sudo a2enmod rewrite -# - sudo service apache2 restart -# override: -# # Get packages with Composer. -# - sudo composer self-update -# - composer install --prefer-dist -# post: -# # Create tmp and private directories. -# - mkdir -p /tmp/sandbox7 -# - mkdir -p /tmp/sandbox7-private -# # Download and install the latest version of Drupal 7. -# - bin/drush dl drupal-7 --drupal-project-rename=www -# - mkdir www/sites/default/files -# - chmod -R +rw www/sites/default/files -# - cp circle/settings.php www/sites/default/settings.php -# - sudo chown -R $(whoami):www-data www -# - bin/drush -y -r www si standard --site-name=sandbox7 --account-name=admin --account-pass=admin -# # Set tmp and private file system paths. -# - bin/drush -r www vset --exact file_temporary_path "/tmp/sandbox7" -# - bin/drush -r www vset --exact file_private_path "/tmp/sandbox7-private" -# cache_directories: -# - vendor -# - bin -# -# test: -# override: -# # Run Behat with BEHAT_PARAMS. -# - bin/behat: -# environment: -# BEHAT_PARAMS: $(> /opt/circleci/php/$(phpenv version-name)/etc/php.ini + - echo "memory_limit=256M" >> /opt/circleci/php/$(phpenv version-name)/etc/php.ini + - sudo cp circle/circle.conf /etc/apache2/sites-available/default + - sudo sed -e "s?%PROJECT_DIR%?$(pwd)/www?g" --in-place /etc/apache2/sites-available/default + - sudo a2enmod rewrite + - sudo service apache2 restart + override: + # Get packages with Composer. + - sudo composer self-update + - composer install --prefer-dist + post: + # Create tmp and private directories. + - mkdir -p /tmp/sandbox7 + - mkdir -p /tmp/sandbox7-private + # Download and install the latest version of Drupal 7. + - bin/drush dl drupal-7 --drupal-project-rename=www + - mkdir www/sites/default/files + - chmod -R +rw www/sites/default/files + - cp circle/settings.php www/sites/default/settings.php + - sudo chown -R $(whoami):www-data www + - bin/drush -y -r www si standard --site-name=sandbox7 --account-name=admin --account-pass=admin + # Set tmp and private file system paths. + - bin/drush -r www vset --exact file_temporary_path "/tmp/sandbox7" + - bin/drush -r www vset --exact file_private_path "/tmp/sandbox7-private" + cache_directories: + - vendor + - bin + +test: + override: + # Run Behat with BEHAT_PARAMS. + - bin/behat: + environment: + BEHAT_PARAMS: $( Date: Fri, 22 Sep 2017 09:34:31 +0200 Subject: [PATCH 06/10] Fixing problem with missing libphp5.so libirary --- circle.yml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/circle.yml b/circle.yml index 4838ca0..a66b97b 100644 --- a/circle.yml +++ b/circle.yml @@ -5,8 +5,15 @@ machine: dependencies: pre: # Set up a virtual host for the site. - - echo "sendmail_path=/bin/true" >> /opt/circleci/php/$(phpenv version-name)/etc/php.ini - - echo "memory_limit=256M" >> /opt/circleci/php/$(phpenv version-name)/etc/php.ini + + # Set php.ini parameters + - echo "sendmail_path=/bin/true" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini + - echo "memory_limit=256M" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini + + # Fixing faild build from https://discuss.circleci.com/t/apache2-and-php-missing-libphp5-so/3300/6 + - sudo unlink /usr/lib/apache2/modules/libphp5.so + - sudo ln -s $PHPENV_ROOT/versions/$(phpenv global)/usr/lib/apache2/modules/libphp5.so /usr/lib/apache2/modules/libphp5.so + - sudo cp circle/circle.conf /etc/apache2/sites-available/default - sudo sed -e "s?%PROJECT_DIR%?$(pwd)/www?g" --in-place /etc/apache2/sites-available/default - sudo a2enmod rewrite From 2d626bc6526194ff5767df339f3acdf0472092ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Sobieszcza=C5=84ski?= Date: Fri, 22 Sep 2017 09:40:26 +0200 Subject: [PATCH 07/10] Again fixing sandmail and memory_limit in php.ini --- circle.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/circle.yml b/circle.yml index a66b97b..d2d7e19 100644 --- a/circle.yml +++ b/circle.yml @@ -7,8 +7,8 @@ dependencies: # Set up a virtual host for the site. # Set php.ini parameters - - echo "sendmail_path=/bin/true" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini - - echo "memory_limit=256M" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini + - echo "sendmail_path=/bin/true" >> /opt/circleci/php/$(phpenv version-name)/etc/php.ini + - echo "memory_limit=256M" >> /opt/circleci/php/$(phpenv version-name)/etc/php.ini # Fixing faild build from https://discuss.circleci.com/t/apache2-and-php-missing-libphp5-so/3300/6 - sudo unlink /usr/lib/apache2/modules/libphp5.so From e51638a5cc5a595d4151521e90df7775a889f639 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Sobieszcza=C5=84ski?= Date: Fri, 22 Sep 2017 13:22:27 +0200 Subject: [PATCH 08/10] Adding aliases and more clear drush parameters --- circle.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/circle.yml b/circle.yml index d2d7e19..640c378 100644 --- a/circle.yml +++ b/circle.yml @@ -5,6 +5,8 @@ machine: dependencies: pre: # Set up a virtual host for the site. + - echo "alias ls='ls --color'" >> ~/.bashrc + - echo "alias ll='ls -l'" >> ~/.bashrc # Set php.ini parameters - echo "sendmail_path=/bin/true" >> /opt/circleci/php/$(phpenv version-name)/etc/php.ini @@ -32,10 +34,10 @@ dependencies: - chmod -R +rw www/sites/default/files - cp circle/settings.php www/sites/default/settings.php - sudo chown -R $(whoami):www-data www - - bin/drush -y -r www si standard --site-name=sandbox7 --account-name=admin --account-pass=admin + - bin/drush --yes --root=www site-install standard --site-name=sandbox7 --account-name=admin --account-pass=admin # Set tmp and private file system paths. - - bin/drush -r www vset --exact file_temporary_path "/tmp/sandbox7" - - bin/drush -r www vset --exact file_private_path "/tmp/sandbox7-private" + - bin/drush --yes --root=www vset --exact file_temporary_path "/tmp/sandbox7" + - bin/drush --yes --root=www vset --exact file_private_path "/tmp/sandbox7-private" cache_directories: - vendor - bin From b33c6ac2f9ac739286b4fe2222e68c47cf0092c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Sobieszcza=C5=84ski?= Date: Fri, 22 Sep 2017 13:50:45 +0200 Subject: [PATCH 09/10] Last apache2 conf stuff; Drupal accessible in browser --- circle.yml | 6 ++++-- circle/circle.conf | 3 +-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/circle.yml b/circle.yml index 640c378..79defce 100644 --- a/circle.yml +++ b/circle.yml @@ -16,8 +16,10 @@ dependencies: - sudo unlink /usr/lib/apache2/modules/libphp5.so - sudo ln -s $PHPENV_ROOT/versions/$(phpenv global)/usr/lib/apache2/modules/libphp5.so /usr/lib/apache2/modules/libphp5.so - - sudo cp circle/circle.conf /etc/apache2/sites-available/default - - sudo sed -e "s?%PROJECT_DIR%?$(pwd)/www?g" --in-place /etc/apache2/sites-available/default + - sudo cp circle/circle.conf /etc/apache2/sites-available/default.conf + - sudo sed -e "s?%PROJECT_DIR%?$(pwd)/www?g" --in-place /etc/apache2/sites-available/default.conf + - sudo a2dissite 000-default.conf + - sudo a2ensite default.conf - sudo a2enmod rewrite - sudo service apache2 restart override: diff --git a/circle/circle.conf b/circle/circle.conf index d0ca5b5..875a1ec 100644 --- a/circle/circle.conf +++ b/circle/circle.conf @@ -11,8 +11,7 @@ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule %PROJECT_DIR%/(.*)$ index.php/?q=$1 [L,QSA] - Order allow,deny - Allow from all + Require all granted From 683b7a6e29f1a6f0c8e597a79ae91b78084b9b7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Sobieszcza=C5=84ski?= Date: Fri, 22 Sep 2017 15:58:16 +0200 Subject: [PATCH 10/10] Adding usage section --- README.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 9682db0..99bae7c 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,10 @@ -# drupal-circleci +# Drupal for CircleCI An example how to run Behat tests in a Drupal 7 project with CircleCI. + +## Usage +1. Fork repo +1. Install CircleCI from marketpalce https://github.com/marketplace/circleci +1. From CircleCi add forked project https://circleci.com/add-projects/gh/[YOUR-USER-NAME] +1. Clone your forked repo & cd to it +1. Change something in READme.txt & commit & push it +1. Watch progresss on https://circleci.com/gh/[YOUR-USER-NAME]