【发布时间】:2014-04-21 16:25:34
【问题描述】:
我有一个 Vagrant 盒子(Ubuntu 14.04 beta),它使用 Puppet 配置器进行自我配置。在“vagrant up”之后,shell 配置器运行,安装更新(包括language-pack-en),并将语言环境设置为en_US.UTF-8,例如:
export DEBIAN_FRONTEND=noninteractive
echo "LC_ALL=en_US.UTF-8" >> /etc/environment
apt-get update
apt-get -y install language-pack-en
export LC_ALL=en_US.UTF-8
wget https://apt.puppetlabs.com/puppetlabs-release-trusty.deb 2>&1
dpkg -i puppetlabs-release-trusty.deb
apt-get update
apt-get -y upgrade
apt-get -y -f remove puppet hiera ruby-hiera ruby-safe-yaml
apt-get -y autoremove
apt-get -y install puppet=3.4.3-1
shell 配置程序完成没有问题,但是 puppet 配置程序失败了:
Error: Could not parse for environment production: invalid byte sequence in US-ASCII at /tmp/vagrant-puppet-1/manifests/site.pp:1
如果我立即运行 vagrant provision,则 Puppet 配置程序运行时不会出现问题,这让我怀疑它不尊重我在 /etc/environment 中设置的语言环境,并导出为环境变量以进行良好测量(可能没有必要,这是一个故障排除步骤)。
我首先在 Ubuntu 13.10 中遇到了这个问题,但设置环境变量解决了这个问题 - 14.04 不是这样。
以前有人遇到过这种情况吗?
感谢您的建议。
【问题讨论】:
标签: vagrant puppet ubuntu-14.04