使用master作为依赖项运行puppet

时间:2015-03-14 08:45:09

标签: testing vagrant puppet

我希望能够在提交源代码控制之前在本地修改模块。 我相信我需要使用puppet apply。 我创建了一个init.pp测试文件,包括我的模块,并添加--modulepath指向我的模块目录。 我的问题是我的所有依赖项存在于puppet master上,我不想下载所有依赖项。我希望主版本上存在该版本。

有办法吗?

1 个答案:

答案 0 :(得分:2)

我会把我的树分成环境:测试和制作,或类似的东西。

在我的情况下,我是一个更“复杂”但更聪明的方法! 我确实有一个git repo,我确实在2个地方拥有它

  
      
  1. 的/ etc /木偶
  2.   
  3. /家庭/为myuser /木偶主
  4.   

这两个地方都是一个环境,

<强> Puppet.conf:

[main]
    logdir = /var/log/puppet
    rundir = /var/run/puppet
    ssldir = $vardir/ssl
    factpath = $vardir/lib/facter
    environmentpath = $confdir/environments
    basemodulepath = /usr/share/puppet/modules
    environment_timeout = 30s

/ etc / puppet目录树:

.
./environments
./environments/example_env
./environments/example_env/modules
./environments/example_env/manifests
./environments/billias
./environments/production
./environments/production/modules
./environments/production/manifests
./environments/production/hieradata
./modules
./manifests

然后我的/etc/puppet/environments/production/environment.conf

environment_timeout = 30s
modulepath = modules/platform:modules/config:modules/main:$basemodulepath

最后但并非最不重要的是我的/ etc / puppet / environments / billias(我的个人环境)对生产的目录/文件有符号链接,但是复制到我个人家庭目录中的符号链接:

lrwxrwxrwx  1 root root   52 Dec 22 19:04 environment.conf -> /etc/puppet/environments/production/environment.conf
lrwxrwxrwx. 1 root root   60 Nov 28 22:31 hieradata -> /home/billias/puppet-main/environments/production/hieradata/
lrwxrwxrwx. 1 root root   60 Nov 28 22:31 manifests -> /home/billias/puppet-main/environments/production/manifests/
lrwxrwxrwx. 1 root root   58 Nov 28 22:31 modules -> /home/billias/puppet-main/environments/production/modules/

最后但并非最不重要的是,这样我可以在我的 / home / billias / puppet-main / environments / production / 上编写代码,并在完成后将其提交给我的git ...

我可以在推送之前测试代码: 傀儡代理-t --environment = billias

如果您有任何疑问,请随时提出。