PUPPET UTF-8 中的无效字节序列

PUPPET Invalid byte Sequence in UTF-8

我的人偶基础设施有一个大问题。 我有一个文件要复制到另一个节点。 此文件以 us-ascii 编码。 重要提示:我不能更改此文件的某些内容。

有人有同样的问题或解决方案吗?

我的傀儡class:

    class addfile::copy{
      file {'/tmp/FILE.def':
        ensure => file,
        owner  => 'root',
        group  => 'root',
        mode   => '0755',
        source => 'puppet:///modules/addfile/FILE.def',
      }
      notify {'File COPY':}
    }

我的 FILE.def 包含所有字符和所有特殊字符。

我的错误信息:

 Error: invalid byte sequence in UTF-8
 Error: /Stage[main]/Addfile::Copy/File[/tmp/FILE.def]/content: change from {md5}XXIDXXX to {md5}XXIDXXX failed: invalid byte sequence in UTF-8

这是 Puppet 的一个已知问题。显然,这与 show_diff 选项打开时木偶应用期间显示差异的方式有关。

https://tickets.puppetlabs.com/browse/PUP-1441

票据暗示问题已在最新版本中修复。

作为解决方法,请尝试使用 运行 puppet agent with --no-show_diff:

 puppet agent -t --no-show_diff