Ich versuche, Gitlab-ci mit einem Symfony-Projekt zu konfigurieren, und nachdem ich die Dokumentation und einige Beispiele in externen Blogs gelesen habe, kann ich das Setup nicht abschließen. Das sind meine Dateien:Ich kann Gitlab-ci nicht mit einem symfony-Projekt einrichten
.gitlab-ci.yml:
# Select image from https://hub.docker.com/_/php/
image: php:5.6
# Select what we should cache
cache:
paths:
- vendor/
before_script:
# Install git, the php image doesn't have installed
- apt-get update -yqq
- apt-get install git -yqq
- apt-get install wget -yqq
- apt-get install zip unzip zlib1g-dev -yqq
# Install mysql driver & zip
- docker-php-ext-install pdo_mysql
- docker-php-ext-install zip
- docker-php-ext-install mbstring
# Install composer
- curl -sS https://getcomposer.org/installer | php
# Install all project dependencies
- mv app/config/parameters.gitlab.yml app/config/parameters.yml.dist
- ping -c 3 mysql
- php -v
- php composer.phar clear-cache
- php composer.phar install
- php bin/console doctrine:schema:create
services:
- mysql:latest
variables:
# Configure mysql service (https://hub.docker.com/_/mysql/)
MYSQL_DATABASE: symfony
MYSQL_ROOT_PASSWORD: password
# We test PHP5.6 (the default) with MySQL
test:mysql:
script:
- vendor/bin/phpunit --configuration phpunit.xml --coverage-text
parameters.gitlab.yml
# This file is auto-generated during the composer install
parameters:
database_driver: pdo_mysql
database_host: mysql
database_port: 3306
database_name: symfony
database_user: root
database_password: password
I Benutzer root (die parameters.yml.dist wird) haben versucht, mysql und ein anderer Benutzer, der die Variable 'MYSQL_USER' verwendet. Das Ergebnis ist immer das gleiche:
$ mv app/config/parameters.gitlab.yml app/config/parameters.yml.dist
$ ping -c 3 mysql
PING mysql (172.17.0.2): 56 data bytes
64 bytes from 172.17.0.2: icmp_seq=0 ttl=64 time=0.282 ms
64 bytes from 172.17.0.2: icmp_seq=1 ttl=64 time=0.140 ms
64 bytes from 172.17.0.2: icmp_seq=2 ttl=64 time=0.151 ms
--- mysql ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.140/0.191/0.282/0.065 ms
$ php -v
PHP 5.6.26 (cli) (built: Sep 23 2016 21:22:39)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
$ php composer.phar clear-cache
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Clearing cache (cache-dir): /root/.composer/cache
Clearing cache (cache-files-dir): /root/.composer/cache/files
Clearing cache (cache-repo-dir): /root/.composer/cache/repo
Cache directory does not exist (cache-vcs-dir):
All caches cleared.
$ php composer.phar install
......
> Incenteev\ParameterHandler\ScriptHandler::buildParameters
Updating the "app/config/parameters.yml" file
> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap
> Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache
[Doctrine\DBAL\Exception\ConnectionException]
An exception occured in driver: SQLSTATE[HY000] [2002] Connection refused
[Doctrine\DBAL\Driver\PDOException]
SQLSTATE[HY000] [2002] Connection refused
[PDOException]
SQLSTATE[HY000] [2002] Connection refused
Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache handling the post-install-cmd event terminated with an exception
Was mache ich falsch oder fehlt?
Siehe meine andere [Antwort] (http://stackoverflow.com/questions/39102481/gitlab-ci-symfony-sqlstatehy000-2002-connection-refused/39103642#39103642) beschreibt die Datenbank nicht als einer der initialisiert werden mögliche Probleme, obwohl mit all den Dingen, die laufen (und genug Zeit nehmen), bevor Ihr Job ich bezweifle, dass es Ihr Fall ist. – tmt
@tmTM Ich habe versucht, '60 s' zu schlafen, wie Sie empfehlen, und sogar mit 'Schlaf 120s', aber immer noch das gleiche Versagen. – cmmata
@cmmata Ich stehe genau vor dem gleichen Problem, hast du eine Lösung gefunden? TY – Aximem