結論
以下を実行前に
- run: sudo apt-get install -y imagemagick libmagickwand-dev
- run: sudo pecl install -f imagick
背景
ImageMagicを使ったテストがCI上で通らない問題がありました。
その時のエラーがこちらです。
ImageMagick module not available with this PHP installation.
その時の config.yml
は以下でした。
- run: sudo apt-get install -y imagemagick
- run: sudo apt-get install -y php-imagick
なぜ動かなかったのか
1. libmagickwand-dev
をインストールしていない。
libmagickwand-dev
は、ImageMagickを他のプログラム(今回だとPHP)から利用するための開発用ライブラリ。これがないとImageMagicがPHPで使えない。
2. imagick
モジュールが有効になっていない
imagickモジュールをインストールするだけではダメで、起動時に読み込むようにphp.ini
を修正しないといけません。
php-imagick
は手動でその設定をしないといけません。
- run: echo "extension=imagick.so" | sudo tee -a /etc/php/7.4/cli/php.ini
しかし、 sudo pecl install -f imagick
をすれば、その読み込みの設定もよしなに書いてくれます。