1

我正在使用 Jfryman puppet nginx 模块,我正在尝试使用可用的虚拟主机启用状态位置,所以我的 hiera 是这样的:

---
nginx::nginx_vhosts:
  'default':
    www_root: '/www/default'
    listen_port: 8081

  'default2':
    www_root: '/www/default2'
    listen_port: 8082

  'default3':
    www_root: '/www/default3'
    listen_port: 8083

nginx::nginx_locations:
  'status':
    location: '/status'
    vhost: 'default'...."here wanna include more than one vhost"
    stub_status: true

无论如何要说这些虚拟主机中包含的这个位置而不复制hiera条目?

4

1 回答 1

1

不,位置类型只需要一个vhost参数并使用它来确定目标文件

为了保持 DRY,您必须避免使用类的nginx_locations参数nginx,并自己声明nginx::resource::location实例。

define status_location_for_vhost() {
    nginx::resource::location { "status-for-$name":
        location => '/status',
        vhost    => $name,
        stub_status => true
    }
}

为每个虚拟主机声明这些。

于 2015-08-03T08:43:57.410 回答