NetCommons3 プロジェクトでTravisCIのビルドがこけまくってたんで、なんとか動くようにしたいなぁと思って色々調査した結果のメモです。
基本的には、ベースがUbuntu Trustyから Xenialにかわったことの影響が大半でした。(最後のcomposerの問題だけ別)
MySQLが起動してない
mysqlコマンドを実行しようとすると
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
となります。
実際のログ → https://travis-ci.org/NetCommons3/Rooms/jobs/562888110#L252
The Xenial Build Environment - Travis CI をみるとサービスがデフォルト停止のようなのでMySQL使うならservicesを.travis.ymlに書いて起動させれば解決。
.travis.ymlに下記を追加
travis.yml
services:
- mysql
MySQL 5.7になってSQL_MODE設定が必要に
NetCommons3ではTravisCI用の設定ファイルがあったので、そちらで対応
SQL_MODE='' · NetCommons3/NetCommons3@07d8d89
PHP5.4がダメぽ
Trustyをつかえばいけるっぽい
The Trusty Build Environment - Travis CI
Xenial(ubuntu16)だと PHP5.4, PHP5.5がダメぽなようです。
travis.yml
dist: trusty
composer.jsonでrepository指定がダメぽ
travis-ci repositoriesのgit clone失敗 · Issue #1517 · NetCommons3/NetCommons3