使用Puppet来部署Apt-Dater

时间:2016-01-15 20:34:46

标签: debian puppet

我使用以下说明为apt-dater-manager配置了puppet:

node 'puppet' {
class { 'apt_dater': role => 'manager', manager_ssh_key => template('site/apt-dater.priv.key'); }
}

然后我添加了一个主机

class { 'apt_dater': customer => 'Test', ssh_key_type => 'ssh-rsa', ssh_key => template('site/apt-dater.pub.key'); }

嗯,已经有效 - apt-dater和apt-dater-host正在安装 - 但是如果我想开始apt-dater我会收到这个错误:

  

加载配置文件/root/.config/apt-dater/hosts.conf

时出错

文件本身存在:

 -rw------- 1 root root 0 Jan 11 22:00 /root/.config/apt-dater/hosts.conf

但文件是空的

如何自动添加配置的主机?

1 个答案:

答案 0 :(得分:0)

所以你想首先从客户那里收集资源。

class apt-dater::client {
  @apt-dater::register{ "$hostname": }
}

# Collect Hostnames:
Apt-dater::Client <<| |>>

这将在apt-dater/manifests/client.pp上,并将其包含在客户端节点上。

然后,您可以使用这些主机名使用concat片段

构建apt-dater/hosts.conf
concat::fragment{
    target  => "/somepath/apt-dater/hosts.conf",
    content => "apt-dater@${hostname};",
}