equal
deleted
inserted
replaced
270 |
270 |
271 check_update $dst "${dep[@]}" && do_update $dst "${cmd[@]}" || true |
271 check_update $dst "${dep[@]}" && do_update $dst "${cmd[@]}" || true |
272 } |
272 } |
273 |
273 |
274 ## actions |
274 ## actions |
275 function update_serial { |
275 function update_zone_serial { |
276 local serial=$1; shift |
276 local name=$1; shift |
|
277 local file=$SERIALS/$name.serial |
277 |
278 |
278 local old=$(test -e $serial && cat $serial || echo '') |
279 local old=$(test -e $file && cat $file || echo '') |
279 |
280 |
280 log_info "Updating serial: $serial" |
281 log_info "Updating $file..." |
281 |
282 |
282 cmd $UPDATE_SERIAL $* $serial |
283 cmd $UPDATE_SERIAL $* $file |
283 |
284 |
284 local new=$(cat $serial) |
285 local new=$(cat $file) |
285 |
286 |
286 log_debug " $old -> $new" |
287 log_debug " $old -> $new" |
287 } |
288 } |
288 |
289 |
289 function update_zone_part { |
290 function update_zone_part { |
294 local src=$SETTINGS/$name |
295 local src=$SETTINGS/$name |
295 local dst=$ZONES/$name |
296 local dst=$ZONES/$name |
296 |
297 |
297 |
298 |
298 if check_update $dst $src; then |
299 if check_update $dst $src; then |
299 log_info "Copying zone $zone.$part..." |
300 log_info "Copying zones/$name..." |
300 |
301 |
301 do_update $dst cat $src |
302 do_update $dst cat $src |
302 else |
303 else |
303 log_info "Copying zone $zone.$part: not changed" |
304 log_info "Copying zones/$name: not changed" |
304 fi |
305 fi |
305 } |
306 } |
306 |
307 |
307 function update_zone { |
308 function update_zone { |
308 local zone=$1 |
309 local zone=$1 |
312 local out=$ZONES/$name |
313 local out=$ZONES/$name |
313 local in=$SETTINGS/$zone.zone |
314 local in=$SETTINGS/$zone.zone |
314 local serial=$SERIALS/$zone.serial |
315 local serial=$SERIALS/$zone.serial |
315 |
316 |
316 if check_update $out $in $serial; then |
317 if check_update $out $in $serial; then |
317 log_info "Generating $zone zone headers..." |
318 log_info "Generating $out..." |
318 |
319 |
319 do_update $out \ |
320 do_update $out \ |
320 $EXPAND_ZONE $SETTINGS/$zone.zone \ |
321 $EXPAND_ZONE $SETTINGS/$zone.zone \ |
321 --serial $SERIALS/$zone.serial \ |
322 --serial $SERIALS/$zone.serial \ |
322 --expand zones=$ROOT/$ZONES |
323 --expand zones=$ROOT/$ZONES |
323 else |
324 else |
324 log_info "Generating $zone zone headers: not changed" |
325 log_info "Generating $out: not changed" |
325 fi |
326 fi |
326 } |
327 } |
327 |
328 |
328 function update_zone_view { |
329 function update_zone_view { |
329 local zone=$1 |
330 local zone=$1 |
334 local out=$ZONES/$name |
335 local out=$ZONES/$name |
335 local in=$SETTINGS/$zone.zone |
336 local in=$SETTINGS/$zone.zone |
336 local serial=$SERIALS/$zone.serial |
337 local serial=$SERIALS/$zone.serial |
337 |
338 |
338 if check_update $out $in $serial; then |
339 if check_update $out $in $serial; then |
339 log_info "Generating $zone:$view zone headers..." |
340 log_info "Generating $out..." |
340 |
341 |
341 do_update $out \ |
342 do_update $out \ |
342 $EXPAND_ZONE $SETTINGS/$zone.zone \ |
343 $EXPAND_ZONE $SETTINGS/$zone.zone \ |
343 --serial $SERIALS/$zone.serial \ |
344 --serial $SERIALS/$zone.serial \ |
344 --expand zones=$ROOT/$ZONES \ |
345 --expand zones=$ROOT/$ZONES \ |
345 --expand view=$view |
346 --expand view=$view |
346 else |
347 else |
347 log_info "Generating $zone:$view zone headers: not changed" |
348 log_info "Generating $out: not changed" |
348 fi |
349 fi |
349 } |
350 } |
350 |
351 |
351 function update_hosts { |
352 function update_hosts { |
352 local dst=$1; shift |
353 local dst=$1; shift |
420 log "Updating serials..." |
421 log "Updating serials..." |
421 |
422 |
422 if [ $SERIAL_NOUPDATE ]; then |
423 if [ $SERIAL_NOUPDATE ]; then |
423 log_info "Skipped" |
424 log_info "Skipped" |
424 else |
425 else |
425 update_serial $SERIALS/paivola.serial |
426 update_zone_serial paivola |
426 update_serial $SERIALS/paivola-reverse.serial |
427 update_zone_serial paivola-reverse |
427 fi |
428 fi |
428 |
429 |
429 |
430 |
430 log "Updating zones headers..." |
431 log "Updating zones headers..." |
431 update_zone paivola-reverse |
432 update_zone paivola-reverse |