GithubHelp home page GithubHelp logo

Comments (4)

thias avatar thias commented on July 21, 2024

There isn't the same breakdown in RHEL. It has the following in RHEL6 :
/etc/named.conf
/etc/named.iscdlv.key
/etc/named.rfc1912.zones
/etc/named.root.key
/var/named/named.ca
/var/named/named.empty
/var/named/named.localhost
/var/named/named.loopback

Any way of splitting the files should be possible with the current module. I'm even doing it, using the "includes" parameter, where I reference a file I generate using another module's definition in order to repeat some common configuration for multiple types of zones (typically internal/external, with different acls allowed for querying and transfer).

So, what's wrong with something like the following :

class named::server::conf with includes => [ 'named.conf.local', 'named.conf.options', 'named.conf.default-zones' ]

Then use the bind::server::file definition for each of these files?

Also, I've made the main named.conf management optional on purpose, meaning that If you just include the main class (not the conf), and your bind server package contains a working default, you're good to go. So here, if it automatically includes the files you mention, you could use only bind::server::file to manage the one or more file(s) you want, not the main named.conf.

Bottom line : It's already possible, and I don't see any easy/clean way to replicate the behaviour of all possible distros without making a huge useless mess inside the module :-)

from puppet-bind.

apowers avatar apowers commented on July 21, 2024

What Thias said and more to the point it shouldn't really matter what your distro does as long as the configuration is reproducible and functional on whatever system you are applying the module to. Thus it shouldn't matter that RHEL and Debian have different ways of structuring the configuration files as long as the module can build a structure that works on either/all distributions, which it can and does.

from puppet-bind.

thias avatar thias commented on July 21, 2024

What I also want to avoid is having the module force a structure of its own. For me, the ideal situation is to have a puppet module configure things in the ideal way for a given OS, meaning leaving everything where people familiar with that OS expect it to be : For instance, I don't want an apache httpd puppet module to have files under /etc/apache2/ on a Red Hat system, nor do I want to have it use /etc/httpd/ on a Debian system.

from puppet-bind.

thias avatar thias commented on July 21, 2024

I'm going to close this one. But if anyone wants to submit a pull request for clean and sane changes, I'll definitely have a look.

from puppet-bind.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.