X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Froles%2Fmanifests%2Fstatic_source.pp;h=960366cf9602f0eb085adcfa59e84909fc9ec7ac;hb=f7adabc11f4b86313d541b2007570cf3e475320b;hp=3ff15e89f6027e11cc55ce5b086a4ee19df8b285;hpb=712cd877cbd2f5edfd6448384253d2c7c591220a;p=mirror%2Fdsa-puppet.git diff --git a/modules/roles/manifests/static_source.pp b/modules/roles/manifests/static_source.pp index 3ff15e89f..960366cf9 100644 --- a/modules/roles/manifests/static_source.pp +++ b/modules/roles/manifests/static_source.pp @@ -4,9 +4,16 @@ class roles::static_source { include roles::static::base - # sources talk only to masters - class { 'roles::static::ssh': - add_tag => 'staticsync-master', - collect_tag => 'staticsync-source', + if ! defined(Class["roles::static_master"]) { + # sources talk only to masters, but only set this up if we are not + # *also* a static master since we cannot have two meaningful roles::static:ssh + # instances in the current setup. + # + # this adds the limitation that the master of any component whose source is also a + # master node needs to have that same host as its master and not some other one. + class { 'roles::static::ssh': + add_tag => 'staticsync-master', + collect_tag => 'staticsync-source', + } } }