3 update: |
3 update: |
4 ./bin/update reads data from settings/, and generates zonefiles under zones/. |
4 ./bin/update reads data from settings/, and generates zonefiles under zones/. |
5 |
5 |
6 `update` also shows and commits changes in settings/ data. |
6 `update` also shows and commits changes in settings/ data. |
7 |
7 |
8 -d |
8 -d DIR |
9 Do data operations under given dir-root, as opposed to CWD. |
9 Do data operations under given dir-root, as opposed to CWD. |
10 |
10 |
11 -q |
11 -q |
12 Quiet. No log messages. XXX: still outputs diffs, though.. |
12 Quiet. No log messages except errors. |
13 |
13 |
14 -vDV |
14 -vDV |
15 Increasing logging verbosity. |
15 Increasing logging verbosity. |
16 |
16 |
17 -p |
17 -p |
18 Show diffs for changed output. |
18 Show diffs for changed output on stdout. |
19 |
19 |
20 -F |
20 -F |
21 Force-update output files, even if newer than input files. |
21 Force-update output files, even if newer than input files. |
22 |
22 |
23 -S |
23 -S |
24 Do not generate new serials for zones. |
24 Do not generate new serials for zones. |
25 |
25 |
|
26 -s |
|
27 Generate new serials for all zones. |
|
28 |
26 -n |
29 -n |
27 Fake-update; show changes, but don't actually commit/deploy them. |
30 Fake-update; show changes, but don't actually commit/deploy them. |
|
31 |
|
32 Useful for testing. |
28 |
33 |
29 -C |
34 -C |
30 Do not commit source changes. |
35 Do not commit source changes. |
31 |
36 |
32 -c |
37 -c |
33 Force-commit source changes, even though -n |
38 Force-commit source changes, even though -n |
34 |
39 |
35 -m |
40 -m MSG |
36 Commit message for source changes; optional |
41 Commit message for source changes; optional |
37 |
42 |
38 bin/update-serial: |
43 bin/update-serial: |
39 Increment DNS SOA record serials in the given .serial files. |
44 Increment DNS SOA record serials in the given .serial files. |
40 |
45 |
62 |
67 |
63 Used to substitute e.g. `--serial .../foo.serial` values into SOA '{serial}' fields. |
68 Used to substitute e.g. `--serial .../foo.serial` values into SOA '{serial}' fields. |
64 |
69 |
65 bin/update: |
70 bin/update: |
66 Runs update-serial/process-zone/expand-zone to keep various generated zones/views up-to-date with respect to |
71 Runs update-serial/process-zone/expand-zone to keep various generated zones/views up-to-date with respect to |
67 source files under settings/ |
72 source files under settings/. |
68 |
73 |
69 Also supports hg diff/commit/annotate integration with settings. |
74 Also supports hg diff/commit/annotate integration with settings. |
|
75 |
|
76 Acts as our configuration file, determining the data/zones layout below. |
70 |
77 |
71 settings/: |
78 settings/: |
72 Input files, fed through update to generate files under zones/ |
79 Input files, fed through update to generate files under zones/ |
73 |
80 |
74 *.serial: |
81 *.serial: |
78 Zone header, passed through process-zone with `--serial *.serial` and any appropriate `--expand view=...`. |
85 Zone header, passed through process-zone with `--serial *.serial` and any appropriate `--expand view=...`. |
79 |
86 |
80 May include a view-based $INCLUDE to include different zone data for different views. |
87 May include a view-based $INCLUDE to include different zone data for different views. |
81 |
88 |
82 *.zone.*: |
89 *.zone.*: |
83 Additional common zone data; copied to zones/, and $INCLUDE'd from *.zone. |
90 Include zonefiles, $INCLUDE'd from *.zone |
84 |
91 |
85 *.txt: |
92 *.txt: |
86 Hosts zone data, used to generate forwards/reverse -hosts zones |
93 Hosts zone data, used to generate forwards/reverse -hosts zones |
87 |
94 |
88 zones/: |
95 zones/: |
89 Output files, loaded by bind. |
96 Output files, loaded by bind. |
90 |
97 |
91 *.zone: |
98 common/* |
92 View-independent zone headers with expanded serial. |
99 Common zone files shared across views. |
93 |
100 |
94 *.zone.hosts: |
101 hosts/*:$view |
95 View-independent generated zones for hosts. |
102 View-variant hosts zones generated from settings/*.txt |
96 |
103 |
97 *.zone.$view: |
104 hosts/* |
98 Per-view copied zone data. |
105 Host zones generated from settings/*.txt, may be used in some views but not others. |
99 |
106 |
100 *.zone.*: |
107 includes/*:$view |
101 Additional view-independent copied zone data. |
108 View-specific zone includes used from view/*. |
102 |
109 |
103 $view/*.zone: |
110 includes/*.* |
104 Per-view zone header with expanded $INCLUDE:s and serial. |
111 Zone includes used from view/*. |
105 |
112 |
106 $view/*.zone.hosts: |
113 $view/* |
107 Per-view generated zones for hosts. |
114 Zone data for given zone/domain in given view |
108 |
115 |
109 $view/*.zone -> .../$.zone: |
116 $view/* -> ...: |
110 Symlinked generic-zone data for some specific zone; either view-specific or view-independent. |
117 Symlinked generic-zone data for some specific zone; either to common/* or $view/*. |
111 |
118 |