【发布时间】:2017-03-26 22:08:36
【问题描述】:
我正在尝试配置 CircleCi 设置。 当我尝试在自己的环境中运行测试时,一切正常,但是当我尝试在 Circle CI 中运行它时,我遇到了这个错误。
Sebastian Bergmann 及其贡献者的 PHPUnit 5.6.0。
IIIIII.IIIIIIIIIIIIIIIIIIIIIIIIIIIIIFFFFFFFFFFFIIII..IIIIIIIIIIII 65 / 89 ( 73%) IIIIIIIIIIIIIIIIIIIIIIII。 89 / 89 (100%)
时间:1.27 秒,内存:56.00MB
有 12 次失败:
1) App\Test\TestCase\Controller\TagsControllerTest::testStages /home/ubuntu/cemcloud2/vendor/cakephp/cakephp/src/Database/Driver/PDODriverTrait.php:48 中的异常“PDOException”和消息“SQLSTATE [HY000] [2002] 没有这样的文件或目录”
这是错误的第一部分。
我知道我的数据库配置有错误。 我们正在使用带有脚本的 Vagrant(不确定这是否可行)。 此外,我们正在使用 mariaDB 10.1.19,我已经为 PHPUnit 建立了一个测试数据库来运行测试。 我不知道如何使用mariadb和特定数据库的配置添加这个数据库。
我知道我必须添加
database.yml.ci
到我的配置文件,所以我把它添加到那里,它看起来像这样。
test:
adapter: mysql
database: cemcloudTest
username: root
password: ''
我还把 circle.yml 添加到我们的项目根目录中,看起来像这样。
machine:
php:
version: 7.0
mysql:
version: 10.1.19
database:
override:
- cp config/database.yml.ci config/database.yml
- bundle exec rake db:create db:schema:load
有人可以帮我吗?
【问题讨论】:
-
更新:受保护的函数 _connect($dsn, array $config) { debug($dsn); $connection = new PDO($dsn, $config['username'], $config['password'], $config['flags'] ); $this->connection($connection);返回真;这是我进行调试的地方,它给了我这段代码。 ########## 调试 ########## 'mysql:host=localhost;port=3306;dbname=cemcloud;charset=utf8'
标签: mysql continuous-integration continuous-deployment circleci