Add following settings to circle.yml
. While well-known existing approaches use apt-get update
, this configuration directly fetches and installs deb packages.
CircleCIでMySQL5.6を使うには(高速版)
以下のような設定をするとよいと思います。ググって引っかかる方法でもちゃんと動くんですが、apt-get update
が必要になってしまい、それなりに時間がかかるのでキャッシュしてdpkg
でインストールという設定を書きました。ご査収のほど、お願いいたします。
dpkgを二回唱えているのはとても大事だから、ではなくなぜだかわからないんですがそうしないと失敗してしまいます。
なお、もうちょっときれいに書けるだろうとは思っているのですが、もちろんpatches welcomeです。
dependencies:
cache_directories:
- "~/deb"
pre:
- mkdir -p /home/ubuntu/deb
- (cd /home/ubuntu/deb; if [ _8cb5bb1bb2fc1e661c60d67be67330b5 != _`md5sum mysql-server-core-5.6_5.6.14+dfsg-1+debphp.org~precise+1_amd64.deb |cut -f1 -d " "` ]; then curl -O http://ppa.launchpad.net/ondrej/mysql-experimental/ubuntu/pool/main/m/mysql-5.6/mysql-server-core-5.6_5.6.14+dfsg-1+debphp.org~precise+1_amd64.deb; fi)
- (cd /home/ubuntu/deb; if [ _c2df384f3715ad0e2463b693003ad5f3 != _`md5sum mysql-server-5.6_5.6.14+dfsg-1+debphp.org~precise+1_amd64.deb |cut -f1 -d " "` ]; then curl -O http://ppa.launchpad.net/ondrej/mysql-experimental/ubuntu/pool/main/m/mysql-5.6/mysql-server-5.6_5.6.14+dfsg-1+debphp.org~precise+1_amd64.deb; fi)
- (cd /home/ubuntu/deb; if [ _317a22c2d55c6cf0c8e79b3dd1b2353b != _`md5sum mysql-client-5.6_5.6.14+dfsg-1+debphp.org~precise+1_amd64.deb |cut -f1 -d " "` ]; then curl -O http://ppa.launchpad.net/ondrej/mysql-experimental/ubuntu/pool/main/m/mysql-5.6/mysql-client-5.6_5.6.14+dfsg-1+debphp.org~precise+1_amd64.deb; fi)
- (cd /home/ubuntu/deb; if [ _ea268ff1fa0dd1000cfe3b8c50d44ce9 != _`md5sum mysql-common_5.6.14+dfsg-1+debphp.org~precise+1_all.deb |cut -f1 -d " "` ]; then curl -O http://ppa.launchpad.net/ondrej/mysql-experimental/ubuntu/pool/main/m/mysql-5.6/mysql-common_5.6.14+dfsg-1+debphp.org~precise+1_all.deb; fi)
- sudo dpkg -r mysql-server-5.5 mysql-server mysql-client-5.5 mysql-client-core-5.5 mysql-server-core-5.5
- (cd /home/ubuntu/deb; sudo DEBIAN_FRONTEND=noninteractive dpkg -i mysql-server-core-5.6_5.6.14+dfsg-1+debphp.org~precise+1_amd64.deb mysql-server-5.6_5.6.14+dfsg-1+debphp.org~precise+1_amd64.deb mysql-common_5.6.14+dfsg-1+debphp.org~precise+1_all.deb mysql-client-5.6_5.6.14+dfsg-1+debphp.org~precise+1_amd64.deb || sudo DEBIAN_FRONTEND=noninteractive dpkg -i mysql-server-core-5.6_5.6.14+dfsg-1+debphp.org~precise+1_amd64.deb mysql-server-5.6_5.6.14+dfsg-1+debphp.org~precise+1_amd64.deb mysql-common_5.6.14+dfsg-1+debphp.org~precise+1_all.deb mysql-client-5.6_5.6.14+dfsg-1+debphp.org~precise+1_amd64.deb)
- sudo service mysql restart