CircleCi 설정을 구성하려고합니다. 내 자신의 환경에서 테스트를 실행하려고하면 모든 것이 작동하지만 Circle CI에서 실행하려고하면이 오류가 발생합니다.데이터베이스를 호출하기 위해 circle.yml을 어떻게 구성합니까?
PHPUnit 5.6.0 by Sebastian Bergmann 및 기고자.
IIIII.IIIIIIIIIIIIIIIIIIIIIIIIIIIFFFFFFFFFFFFIIII.IIIIIIIIIIII 65/89 (73 %) IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII. 89분의 89 (100 %)
시간 : 1.27 초 메모리 : 56.00MB
(12 개)의 실패가 있었다 :
1) 앱 \ 테스트 \ TestCase에 \ 컨트롤러 \ TagsControllerTest :: testStages 예외 ' PDOException 'with message'SQLSTATE [HY000] [2002] 해당 파일이나 디렉토리가 없습니다. /home/ubuntu/cemcloud2/vendor/cakephp/cakephp/src/Database/Driver/PDODriverTrait.php:48
이것은 오류의 첫 번째 부분.
데이터베이스 구성에 오류가 있습니다. 우리는 스크립트와 함께 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, 배열 $ 설정) { 디버그 ($의 DSN 그래서
이는 DB의 conf입니다); $ connection = new PDO ( $ dsn, $ config [ 'username'], $ config [ 'password'], $ config [ 'flags'] ); $ this-> connection ($ connection); return true; } 이것은 내 디버그를 넣은 곳이며이 코드를 다시 제공합니다. ########## 'mysql : host = localhost; port = 3306; dbname = cemcloud; charset = utf8' –