Laravel duskを用いたブラウザテストをCircleCIに組み込む場合、ブラウザが日本語表示できず少しデバッグがしづらいですよね。
そこで、headlessのChromeを日本語する方法を記しておきます。
やっていることはすごく泥臭くて、フォントを落としてきて、日本語対応フォントに切り替えています。
# PHP CircleCI 2.0 configuration file
#
# Check https://circleci.com/docs/2.0/language-php/ for more details
#
version: 2.1
orbs:
php: circleci/php@1.1.0
browser-tools: circleci/browser-tools@1.2.5
jobs:
build:
docker:
- image: cimg/php:8.1-browsers
- image: cimg/mariadb:10.5
auth:
username: $DOCKERHUB_USER # can specify string literal values
password: $DOCKERHUB_PASSWORD # or project environment variable reference
working_directory: ~/repo
steps:
- checkout
- browser-tools/install-browser-tools
- run: |
php --version
node --version
java --version
google-chrome --version
- run: |
# language-pack-ja単体だと何故か失敗するので、全てのlanugage-packをインストールする
sudo apt -qqy --no-install-recommends install -y locales-all &&
sudo locale-gen ja_JP.UTF-8 &&
sudo update-locale LANG=ja_JP.UTF-8 &&
sudo update-locale LANGUAGE="ja_JP:ja"
- run: |
# 日本語フォントをインストール
sudo apt -qqy --no-install-recommends install -y fonts-takao-gothic fonts-takao-mincho &&
sudo dpkg-reconfigure --frontend noninteractive locales &&
sudo fc-cache -fv