2016-01-16 25 views
7

Testlerimi Travis CI'de çalıştırtamıyorum çünkü mysql 5.7'yi kapsayıcıda kurmanın bir yolunu bulamıyorum.Mysql 5.7'yi Travis CI ile yapılandırın

Bu özeti travis.yml için bir yapılandırma yöntemini açıklayan https://gist.github.com/BenMorel/d981f25ead0926a0cb6d buldum. hemen sonra

sudo apt-get remove --purge "^mysql.*" 
sudo apt-get autoremove 
sudo apt-get autoclean 
sudo rm -rf /var/lib/mysql 
sudo rm -rf /var/log/mysql 
echo mysql-apt-config mysql-apt-config/enable-repo select mysql-5.7-dmr | sudo debconf-set-selections 
wget http://dev.mysql.com/get/mysql-apt-config_0.2.1-1ubuntu12.04_all.deb 
sudo dpkg --install mysql-apt-config_0.2.1-1ubuntu12.04_all.deb 
sudo apt-get update -q 
sudo apt-get install -q -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" mysql-server 

, benim yaptığım: İşte komutlardır

$ mysql -uroot < tests/ApiBundle/Datas/dump_test.sql 
ERROR 1698 (28000): Access denied for user 'root'@'localhost' 

Neden ?? Çok fazla şey denedim… Ve Google kesinlikle bu konuyla ilgili arkadaşım değil…

+0

Sudo mysql -uroot

+0

evet yaptım… aynı hata! –

+0

'Docker' kullanmayı denediniz mi? Şunu kontrol edin: https://medium.com/@mtparet/install-mysql-server-5-7-on-travis-96f2ebc0f339 – ghashi

cevap

8

Tamam MySQL 5.6'nın Travis CI varsayılan kapsayıcısına nasıl yeniden yükleneceğini öğrendim.

services: 
    - mysql 
sudo: true 
before_script: 
    - bash .travis.install-mysql-5.7.sh 

Ve burada .travis.install-mysql-5.7.sh (cevabı @codyzu için düzenlenmiş sayesinde) 'dir: Burada

.travis.yml ne ihtiyaç vardır I aynı sorunla karşı karşıya herkese yardımcı olacağını umut

echo mysql-apt-config mysql-apt-config/select-server select mysql-5.7 | sudo debconf-set-selections 
wget https://dev.mysql.com/get/mysql-apt-config_0.7.3-1_all.deb 
sudo dpkg --install mysql-apt-config_0.7.3-1_all.deb 
sudo apt-get update -q 
sudo apt-get install -q -y --allow-unauthenticated -o Dpkg::Options::=--force-confnew mysql-server 
sudo mysql_upgrade 

!

+0

Sysem'in MySQL kullanıcılarıyla (veya benzer bir şeyle) çalıştığı durumlarda, '.travis.install-mysql-5.7.sh' son adımı olarak 'sudo mysql_upgrade' çağırmak gerekir. – Ilija

+0

Bu benim için çalışmıyor, bağımlılık sorunları alıyorum: 'mysql-server, mysql-community-server'a (= 5.7.8-rc-1ubuntu12.04) bağlıdır; Ancak: Paket mysql-toplum-sunucu yapılandırılmamış yet.' – Feek

+0

benim için düzgün çalışması için almak için bu eklemek zorunda: sudo mysql_upgrade -u root sudo hizmet MySQL yeniden başlatma –