2016-04-07 12 views
1

私はLaravel 5.1に基づいてプロジェクトを開始しました。これはGitlabでホストされており、このプロジェクトでGitlab CIを使用したいと考えています(https://gitlab.com/nasirkhan/laravel-5-starter)。私の.gitlab-ci.ymlの設定は以下の通りです。しかし、ビルドがエラーで、それはコマンドphp artisan migrate:refreshを実行するたびに失敗している、Gitlab CI for Laravel 5 *

[PDOException]
SQLSTATE[HY000] [2002] Connection refused

 
image: tetraweb/php:5.6-cli 

services: 
    - mysql 

variables: 
    WITH_XDEBUG: "1" 
    MYSQL_ROOT_PASSWORD: secret 
    MYSQL_DATABASE: homestead 
    MYSQL_USER: homestead 
    MYSQL_PASSWORD: secret 
    COMPOSER_HOME: /cache/composer 

stages: 
    - test 

php-5.6: 
    type: test 
    image: tetraweb/php:5.6-cli 
    script: 
    - docker-php-ext-enable zip 
    - docker-php-ext-enable mbstring 
    - docker-php-ext-enable pdo_mysql 
    - php -v 
    - composer self-update 
    - composer install --no-progress --no-interaction 
    - cp .env.example .env 
    - sed -i.bak 's/DB_HOST=localhost/DB_HOST=mysql/g' .env 
    - php artisan key:generate 
    - php artisan migrate:refresh 
    - php artisan db:seed 
    - php vendor/bin/phpunit --colors --coverage-text 
+2

SQL接続エラーです。スクリプトセクションにデバッグ情報を貼り付けてください。 'ping -c 3 mysql'が気になります。その後、トレイルに従ってください。 –

+0

がコマンドを追加しましたが、エラーログに何も表示されませんでした。 – nasirkhan

+0

https://gitlab.com/nasirkhan/laravel-5-starter/builds/1027449 – nasirkhan

答えて

3

問題が解決されます。 hostnamemysqlである必要があります。以下の設定のために渡しとなります

Gitlab CIビルド、

 
APP_ENV=local 
APP_DEBUG=true 
APP_KEY=SomeRandomString 

DB_CONNECTION=mysql 
DB_HOST=mysql 
DB_DATABASE=homestead 
DB_USERNAME=homestead 
DB_PASSWORD=secret 

CACHE_DRIVER=file 
SESSION_DRIVER=file 
QUEUE_DRIVER=sync 

が、その後.gitlab-ci.ymlは、このようにする必要があり、以下の内容で

最初の作成新しい.env.test

 
image: tetraweb/php:5.6-cli 

services: 
    - mysql:latest 

variables: 
    WITH_XDEBUG: "1" 
    MYSQL_ROOT_PASSWORD: secret 
    MYSQL_DATABASE: homestead 
    MYSQL_USER: homestead 
    MYSQL_PASSWORD: secret 
    COMPOSER_HOME: /cache/composer 

stages: 
    - test 

php-5.6: 
    type: test 
    image: tetraweb/php:5.6-cli 
    script: 
    - docker-php-ext-enable zip 
    - docker-php-ext-enable mbstring 
    - docker-php-ext-enable pdo_mysql 
    - ping -c 3 mysql 
    - php -v 
    - composer self-update 
    - composer install --no-progress --no-interaction 
    - cp .env.test .env 
    - php artisan key:generate 
    - php artisan migrate:refresh 
    - php artisan db:seed 
    - php vendor/bin/phpunit --colors --coverage-text