Details
-
Bug
-
Status: Closed
-
Normal
-
Resolution: Fixed
-
None
-
None
-
None
-
Platform Core
-
Platform Core KANBAN
-
Automated Test
-
Bug Fix
-
Puppet will no longer have difficulty parsing module translation files in non-UTF-8 environments.
-
Automate
Description
If you load the eputnam-i18ndemo module which has a fact that causes and error that has a Japanese translation, when its run on OSX the error is replaced by "invalid byte sequence in US-ASCII"
xh734nh8owpuouo:~ root# puppet module install eputnam-i18ndemo
|
Notice: Preparing to install into /etc/puppetlabs/code/environments/production/modules ...
|
Notice: Downloading from https://forgeapi.puppet.com ...
|
Notice: Installing -- do not interrupt ...
|
/etc/puppetlabs/code/environments/production/modules
|
└─┬ eputnam-i18ndemo (v0.2.0)
|
├── puppetlabs-stdlib (v4.21.0)
|
└── puppetlabs-translate (v1.1.0)
|
xh734nh8owpuouo:~ root# LANGUAGE=ja_JP puppet facts
|
Error: Facter: error while resolving custom fact "i18ndemo_fact": invalid byte sequence in US-ASCII
|
Instead of the expected Japanese string (which should look like this pattern)
assert_match(/Error:.*eputnam-i18ndemo fact: これはeputnam-i18ndemoからのカスタムファクトからのレイズです/, result.stderr, 'missing translation for raise from ruby fact')
|
This also appears, for example, on the Japanese Windows pooler image. If you install the module, then attempt to uninstall it, the uninstall will fail with a similar error, and a trace like the one in the comments.