我有一个简单的环境设置木偶。在主人身上我有
[root@ak-puppetm develop]# pwd
/etc/puppet/environments/develop
[root@ak-puppetm develop]# puppet config print modulepath --section master --environment develop
/etc/puppet/modules:/usr/share/puppet/modules
[root@ak-puppetm develop]# ls -lah
total 28K
drwxr-xr-x 5 akropp akropp 4.0K Jul 16 15:16 .
drwxr-xr-x 4 akropp akropp 4.0K Jul 16 15:16 ..
-rw-r--r-- 1 akropp akropp 6.1K Jul 16 15:16 .DS_Store
drwxr-xr-x 4 akropp akropp 4.0K Jul 16 15:16 files
drwxr-xr-x 2 akropp akropp 4.0K Jul 16 15:16 manifests
drwxr-xr-x 3 akropp akropp 4.0K Jul 16 15:20 modules
[root@ak-puppetm develop]# ls -lah modules/
total 12K
drwxr-xr-x 3 akropp akropp 4.0K Jul 16 15:20 .
drwxr-xr-x 5 akropp akropp 4.0K Jul 16 15:16 ..
drwxr-xr-x 3 akropp akropp 4.0K Jul 16 15:08 domains
[root@ak-puppetm develop]#
然而你可以看到模块路径似乎不包含开发?
如果我将模块代码移动到/etc/puppet/modules
,那么puppet会发现我的课程很好。
我甚至试过把
modulepath=$confdir/environments/$environment/modules:$confdir/modules
进入puppet.conf,但它没有找到它,只是改为弃用警告
我的环境虽然有效,但我有一个清单,它适用于标有develop
环境的节点。似乎无法让模块拿起来
答案 0 :(得分:3)
在/etc/puppet/environments/develop
内,您需要一个文件名environment.conf
。该文件的内容可以类似于:
modulepath = /etc/puppet/environments/develop/modules:$basemodulepath
答案 1 :(得分:3)
切换到环境目录后,全局modulepath
设置无关紧要。所以重要的问题是,
puppet master --configprint environmentpath
收益率/etc/puppet/environments
。
更新:
由于您尚未激活目录环境,因此/etc/puppet/environments/develop
实际上并未产生实际的develop
环境。您需要在puppet.conf
中明确定义此环境,包括其manifest
和modulepath
设置。
puppet.conf
。
[main]
environmentpath=/etc/puppet/environments