2017-02-23に投稿

CakePHP3プロジェクトをwerckerで無料CI

werckerにて、CakePHP3プロジェクトの無料CI設定をしたログ。

良いDockerイメージがなくwercker-laravel5を参考に作成したので、
基本的には下記に書いてあることそのままで設定可能。

https://hub.docker.com/r/dala00/wercker-cakephp3/

DBのホスト名とポートが環境変数で渡されるのでapp.phpのDBのtest設定を下記のように変更。

'host' => env('MYSQL_PORT_3306_TCP_ADDR', 'localhost'),
'port' => env('MYSQL_PORT_3306_TCP_PORT', 3306),

そしてwerkcer.yml

box: dala00/wercker-cakephp3
services:
  - id: mysql
    env:
      MYSQL_ROOT_PASSWORD: rootpasswd
      MYSQL_USER: testuser
      MYSQL_PASSWORD: testpasswd
      MYSQL_DATABASE: testdb

build:
  steps:
    - script:
        name: Install dependencies
        code: |
          composer install

    - script:
        name: Run phpunit
        code: |-
          vendor/bin/phpunit

MySQLは設定がデフォルトなので、not nullカラムを無指定で保存しようとするとエラーになる。
ローカルで設定を変えていたりするとそのへんでテストの差異が出るので、
ローカルも設定を合わせたりコンテナを使って開発したりなどの注意が必要。

カバレッジが必要な場合はこちら

werckerでCakePHP3のカバレッジ - アルファブレンド プログラミングチップス

ツイッターでシェア
みんなに共有、忘れないようにメモ

だら@Crieit開発者

Crieitの開発者です。 Webエンジニアです(在宅)。大体10年ちょい。 記事でわかりにくいところがあればDMで質問していただくか、案件発注してください。 業務依頼、同業種の方からのコンタクトなどお気軽にご連絡ください。 業務経験有:PHP, MySQL, Laravel, React, Flutter, Vue.js, Node, RoR 趣味:Elixir, Phoenix, Nuxt, Express, GCP, AWS等色々 PHPフレームワークちいたんの作者

Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。

また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!

有料記事を販売できるようになりました!

こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?

コメント