gitzone

git-based zone management tool for static and dynamic domains
git clone https://git.parazyd.org/gitzone
Log | Files | Refs

gitzone.conf (2879B)


      1 # -*- perl -*-
      2 #
      3 # gitzone configuration file
      4 #
      5 # this file is parsed as Perl code and you can use the following variables:
      6 #   $user - name of the user gitzone is invoked by
      7 #   $repo - name of the repository gitzone is invoked for
      8 
      9 # directory where the zone files are copied to (no trailing slash)
     10 # there should be one directory for each user here chowned to them
     11 $zone_dir = '/var/bind';
     12 
     13 # commands
     14 $git = '/usr/bin/git';
     15 $named_checkzone = '/usr/sbin/named-checkzone';
     16 $rndc = '/usr/sbin/rndc';
     17 
     18 # update-record command: 1 = enabled, 0 = disabled
     19 $update_record = 1;
     20 
     21 # unrestricted includes: 1 = enabled, 0 = disabled (default)
     22 # by default a restriction applies to $INCLUDE file names,
     23 # they should be prefixed with <repo>/ and nothing else is allowed in parent dirs
     24 $unrestricted_includes = 0;
     25 
     26 # max depth to follow INCLUDED_BY files
     27 $max_depth = 256;
     28 # output verbosity (0..3)
     29 $verbosity = 0;
     30 #$verbosity = $user eq 'admin' ? 3 : 0;
     31 
     32 # parameters for rndc reload: class & view
     33 $class = 'IN';
     34 # default view of the zones (optional)
     35 $default_view = '';
     36 #$default_view = $repo;
     37 
     38 # $zones defines which files in a user's repo can be loaded as zone files.
     39 #
     40 # You can define which view a zone belongs to, this can be
     41 #  - a string for a single view
     42 #  - an array for multiple views
     43 #  - or 1 to use the $default_view
     44 # The view is used as a parameter for rndc reload.
     45 #
     46 # The basename of the files listed must be identical to the zone name.
     47 #
     48 # If a file name starts with a / it's treated as a BIND config file
     49 # and every zone listed there is allowed for the user.
     50 # Note: at the moment /* */ comments are not recognized, use // instead on the zone line to comment it out.
     51 #
     52 # The -default key is tried first for every user, then it's merged with the user-specific config.
     53 
     54 $repos = {
     55 #  -default => {
     56 #    "/etc/bind/repos/$repo.conf" => 1,               # allow every zone from this file, use the default view for them
     57 #  },
     58 #  user1 => { # /etc/bind/repos/user1.conf is loaded first and merged with the config below, as specified in -default above
     59 #    'example.com' => 1,                              # allow example.com, use the default view for it
     60 #    'example.net' => 'extern',                       # allow example.net, use the extern view for it
     61 #    'example.org' => [qw(view1 view2)],              # allow example.org, use both view1 & view2 for it
     62 #    local => {                                       # local/ dir in the repo
     63 #      '/etc/bind/users/user1-local.conf' => 'local', # allow every zone from this file, use the local view for them
     64 #      'example.net' => 'local',                      # allow example.net, use the local view for it
     65 #    },
     66 #    'foo/bar/baz' => {                               # foo/bar/baz/ dir in the repo
     67 #      'example.org' => 1,                            # allow example.org, use the default view for it
     68 #    },
     69 #  },
     70 }