【Node】デプロイ中にマルチバイトエラーでずっこけた話

ローカルからAWSへのデプロイ中に以下のエラーが出てしばらく悩んだのでメモ

'cp932' codec can't decode byte 0x90 in position 9428: illegal multibyte sequence

 

通常ならutf-8に上手く変換できないコーディング箇所を疑うのだけど、それらしい箇所もなくなんでだ?と一つずつ修正したファイルを通していったところ以下のファイルに行き着く

 

CloudFormation.yaml

 

まず初歩的なミスとしてコメント行に2バイト文字で記述してしまった

yamlファイルはコメント行でも1バイト文字で記述しないとマルチバイトエラーが出る。

 

もう一つはAWS Cognito関連の属性を作成する箇所に新たに属性を書いてしまった事。

これがわりと不明であるけどどうやらAWS Cognito上に既に属性を作成してしまった場合、同属性を記述するとマルチバイトエラーが発生するようだ。

ただし、他の属性についても記述してもエラーが発生していなかったりするので、挙動の詳しい仕様は不明。

(このあたりをStackOverFlowで探しても全く情報なし)

 

Cognito関連は秘密が一杯すぎる🤔