CodeBuildのビルドログの日本語化
CodeBuildのログがこんな感じで日本語化されないことに悩んでいた。
xxxx.common.exception.ExceptionConfigResolverTest > ConfigMap????????:resolve????????????????????????? PASSED
xxxx.common.exception.ExceptionConfigResolverTest > ???null??????:exception?null???????????????????? PASSED
xxxx.common.exception.ExceptionConfigResolverTest > ???????????????:??????????????? PASSED
xxxx.common.exception.ExceptionConfigResolverTest > ???????????????(??????????????):??????????????? PASSED
xxxx.common.exception.ExceptionConfigResolverTest > ????????????????:????????????????? PASSED
xxxx.common.exception.ExceptionConfigResolverTest > ConfigMap????????:resolve????????????????????????? PASSED
xxxx.common.exception.ExceptionConfigResolverTest > ???null??????:exception?null???????????????????? PASSED
xxxx.common.exception.ExceptionConfigResolverTest > ???????????????:??????????????? PASSED
xxxx.common.exception.ExceptionConfigResolverTest > ???????????????(??????????????):??????????????? PASSED
xxxx.common.exception.ExceptionConfigResolverTest > ????????????????:????????????????? PASSED
UnitTestのAssertは流石に日本語で書いてあるのも多く文字化け解消したいんだけど…。
結論
こんな感じにすればよい。(AWS CLIは今回関係ない)
buildspec.yml
phases:
install:
runtime-versions:
java: corretto11
commands:
- yum update -y
- chmod +x ./gradlew
- touch gradle.properties
- |
cat <<EOL > gradle.properties
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m
EOL
- pip install --upgrade pip
- pip install --upgrade awscli
- yum -y install ibus-kkc vlgothic-* glibc-locale-source glibc-langpack-en
pre_build:
commands:
- localedef -f UTF-8 -i ja_JP ja_JP.UTF-8
- export LANG="ja_JP.UTF-8"
- export LANGUAGE="ja_JP:ja"
- export LC_ALL="ja_JP.UTF-8"
途中色々
当初このままローカライズしようと思ったら、AmazonLinux利用していたのでそのままでは使えない。
どっちかというとCentOS経由なので↓を参考にする。
ここに書いてあるように、 ibus-kkc
とvlgothic-*
のFont周りのみをインストールすることとし、localdefを利用すると、
[Container] 2020/07/29 10:12:06 Entering phase PRE_BUILD
[Container] 2020/07/29 10:12:06 Running command localedef -f UTF-8 -i ja_JP ja_JP.UTF-8
character map file `UTF-8' not found: No such file or directory
default character map file `ANSI_X3.4-1968' not found: No such file or directory
[Container] 2020/07/29 10:12:06 Command did not exit successfully localedef -f UTF-8 -i ja_JP ja_JP.UTF-8 exit status 4
こんな感じのエラーが出る。
これを対処するにはglibc-locale-source
とglibc-langpack-en
のインストールも必要なようだった。(少なくともruntimeがCorreto11を利用している場合は。)
やったね!
xxxx.common.exception.ExceptionConfigResolverTest > ConfigMapがない場合の挙動:resolve時にマップがないログを出力しデフォルト値を返却する PASSED
xxxx.common.exception.ExceptionConfigResolverTest > 引数がnullの場合の挙動:exceptionがnullであるログを出力しデフォルト値を返却する PASSED
xxxx.common.exception.ExceptionConfigResolverTest > マップ定義がありヒットする場合:対応したログレベルが返却される PASSED
xxxx.common.exception.ExceptionConfigResolverTest > マップ定義がありヒットする場合(継承関係の順番を間違えたとき):対応したログレベルが返却される PASSED
xxxx.common.exception.ExceptionConfigResolverTest > マップ定義がありヒットしない場合:デフォルトのログレベルが返却される PASSED
xxxx.common.exception.ExceptionConfigResolverTest > ConfigMapがない場合の挙動:resolve時にマップがないログを出力しデフォルト値を返却する PASSED
xxxx.common.exception.ExceptionConfigResolverTest > 引数がnullの場合の挙動:exceptionがnullであるログを出力しデフォルト値を返却する PASSED
xxxx.common.exception.ExceptionConfigResolverTest > マップ定義がありヒットする場合:対応したログレベルが返却される PASSED
xxxx.common.exception.ExceptionConfigResolverTest > マップ定義がありヒットする場合(継承関係の順番を間違えたとき):対応したログレベルが返却される PASSED
xxxx.common.exception.ExceptionConfigResolverTest > マップ定義がありヒットしない場合:デフォルトのログレベルが返却される PASSED
Author And Source
この問題について(CodeBuildのビルドログの日本語化), 我々は、より多くの情報をここで見つけました https://qiita.com/fake-deli-ca/items/54c6047f817382129ac6著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .