Przeczytałem dokumentację dotyczącą zakresu, ale nadal mam problemy z jej rozwiązaniem. Mam dwa środowiska, które są bardzo podobne - więc mam:
moduły / django-env / manifests / init.pp
class django-env {
package { "python26":
ensure => installed
}
# etc ...
}
import "er.pp"
moduły / django-env / manifests / er.pp
$venvname = "er"
$venvpath = "/home/django/virtualenvs"
class er {
file { "$venvpath/$venvname" :
ensure => directory
}
# etc ...
}
class er-dev {
include er
}
class er-bce-dev {
$venvname = "er-bce"
include er
}
manifests / modules.pp
import "django-env"
manifests / nodes.pp
node default {
# etc ...
}
node 'centos-dev' imports default {
include django-env
include er-bce-dev
include er-dev
}
Rezultat jest taki, że „dziedziczenie” działa - ale działa tylko pierwszy element „er-” w węźle „centos-dev”, albo dostaję er-bce-dev lub er-dev, ale nie oba. Musi tu być podstawowa rzecz, której nie rozumiem.
Czy to jest różnica między importem a dołączeniem ? (nie jestem pewien, czy to rozumiem)