Last active
August 12, 2023 08:06
-
-
Save gilbitron/5cac0ac5fa07e9b354ac to your computer and use it in GitHub Desktop.
Laravel 5 Travis CI config
This file contains 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
APP_ENV=testing | |
APP_KEY=SomeRandomString | |
DB_CONNECTION=testing | |
DB_TEST_USERNAME=root | |
DB_TEST_PASSWORD= | |
CACHE_DRIVER=array | |
SESSION_DRIVER=array | |
QUEUE_DRIVER=sync |
This file contains 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
language: php | |
php: | |
- 5.6 | |
before_script: | |
- cp .env.travis .env | |
- mysql -e 'create database homestead_test;' | |
- composer self-update | |
- composer install --no-interaction | |
script: | |
- vendor/bin/phpunit |
This file contains 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
<?php | |
return [ | |
//... | |
'default' => env('DB_CONNECTION', 'mysql'), | |
//... | |
'connections' => [ | |
'mysql' => [ | |
'driver' => 'mysql', | |
'host' => env('DB_HOST', 'localhost'), | |
'database' => env('DB_DATABASE', 'homestead'), | |
'username' => env('DB_USERNAME', 'homestead'), | |
'password' => env('DB_PASSWORD', 'secret'), | |
'charset' => 'utf8', | |
'collation' => 'utf8_unicode_ci', | |
'prefix' => '', | |
'strict' => false, | |
], | |
'testing' => [ | |
'driver' => 'mysql', | |
'host' => env('DB_TEST_HOST', 'localhost'), | |
'database' => env('DB_TEST_DATABASE', 'homestead_test'), | |
'username' => env('DB_TEST_USERNAME', 'homestead'), | |
'password' => env('DB_TEST_PASSWORD', 'secret'), | |
'charset' => 'utf8', | |
'collation' => 'utf8_unicode_ci', | |
'prefix' => '', | |
'strict' => false, | |
], | |
], | |
//... | |
]; |
This file contains 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
<?xml version="1.0" encoding="UTF-8"?> | |
<phpunit backupGlobals="false" | |
backupStaticAttributes="false" | |
bootstrap="bootstrap/autoload.php" | |
colors="true" | |
convertErrorsToExceptions="true" | |
convertNoticesToExceptions="true" | |
convertWarningsToExceptions="true" | |
processIsolation="false" | |
stopOnFailure="false" | |
syntaxCheck="false"> | |
<testsuites> | |
<testsuite name="Application Test Suite"> | |
<directory>./tests/</directory> | |
</testsuite> | |
</testsuites> | |
<filter> | |
<whitelist> | |
<directory suffix=".php">app/</directory> | |
</whitelist> | |
</filter> | |
<php> | |
<env name="APP_ENV" value="testing"/> | |
<env name="DB_CONNECTION" value="testing"/> | |
<env name="CACHE_DRIVER" value="array"/> | |
<env name="SESSION_DRIVER" value="array"/> | |
<env name="QUEUE_DRIVER" value="sync"/> | |
</php> | |
</phpunit> |
Worked like a charm with a little modification, thanks!
.travis.yml
language: php
php:
- 7.0
before_script:
- cp .env.travis .env
- composer self-update
- composer install --no-interaction
script:
- php artisan key:generate
- vendor/bin/phpunit
.env.travis
APP_ENV=testing
APP_KEY=SomeRandomString
DB_CONNECTION=testing
DB_TEST_USERNAME=root
DB_TEST_PASSWORD=
CACHE_DRIVER=array
SESSION_DRIVER=array
QUEUE_DRIVER=sync
phpunit.xml
<?xml version="1.0" encoding="UTF-8"?>
<phpunit backupGlobals="false"
backupStaticAttributes="false"
bootstrap="bootstrap/autoload.php"
colors="true"
convertErrorsToExceptions="true"
convertNoticesToExceptions="true"
convertWarningsToExceptions="true"
processIsolation="false"
stopOnFailure="false"
beStrictAboutCoversAnnotation="true">
<testsuites>
<testsuite name="Feature">
<directory suffix="Test.php">./tests/Feature</directory>
</testsuite>
<testsuite name="Unit">
<directory suffix="Test.php">./tests/Unit</directory>
</testsuite>
</testsuites>
<filter>
<whitelist processUncoveredFilesFromWhitelist="true">
<directory suffix=".php">./app</directory>
</whitelist>
</filter>
<php>
<env name="APP_ENV" value="testing"/>
<env name="CACHE_DRIVER" value="array"/>
<env name="SESSION_DRIVER" value="array"/>
<env name="QUEUE_DRIVER" value="sync"/>
<env name="DB_CONNECTION" value="sqlite"/>
<env name="DB_DATABASE" value=":memory:"/>
</php>
</phpunit>
Laravel 5.5
Error:
Cannot open file "{project_name}/bootstrap/autoload.php".
Why?
In Laravel 5.5 autoload remove. Now vendor/autoload.php
@gilbitron update gist. U can check my gist
@isneezy Why do you have db stuff in env you are using in memory db theres no need?
Thank you very much!
I had to make some changes to make it work:
language: php
php:
- 7.2.1
addons:
mariadb: '10.1'
before_script:
- cp .env.travis .env
- mysql -e 'create database homestead_test;'
- composer self-update
- composer install --no-interaction
- rm vendor/nzesalem/lastus/src/migrations/2017_10_18_124315_add_status_field_to_users_table.php
- php artisan key:generate
- php artisan migrate --step
script:
- vendor/bin/phpunit
Has anyone been able to get this to work with Laravel 5.8?
I keep getting this error:
$ mysql -e 'create database homestead_test;'
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
The command "mysql -e 'create database homestead_test;'" failed and exited with 1 during .
@DubStepMad I add
services:
- mysql
This is my complete script:
language: php
dist: bionic
php:
- 7.3
services:
- mysql
before_script:
- cp .env.travis .env
- mysql -e 'create database homestead_test;'
- composer self-update
- composer install --no-interaction
- php artisan key:generate
- php artisan migrate
script:
- vendor/bin/phpunit
I'm using SQLite as service may you show me how my .travis.yml should look like ?
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
@menasheh normally yes, as @bkuhl says it seems it has been dropped for 5.4, but only using 5.2 and 5.3 currently myself.