Import build.sh from cdist manifest
This commit is contained in:
parent
54e3d10b05
commit
f652630fb7
2 changed files with 127 additions and 0 deletions
4
containers/knotdns-build/Dockerfile
Normal file
4
containers/knotdns-build/Dockerfile
Normal file
|
@ -0,0 +1,4 @@
|
|||
FROM nginx:1.21-alpine
|
||||
|
||||
COPY watch-and-run.sh /
|
||||
ENTRYPOINT /docker-entrypoint.sh /watch-and-run.sh
|
123
containers/knotdns-build/build.sh
Normal file
123
containers/knotdns-build/build.sh
Normal file
|
@ -0,0 +1,123 @@
|
|||
#!/bin/sh
|
||||
|
||||
package=knot
|
||||
service=knotd
|
||||
|
||||
state=$(cat "$__object/parameter/state")
|
||||
|
||||
################################################################################
|
||||
# Basic stuff
|
||||
#
|
||||
__package "$package" --state "$state"
|
||||
require="__package/$package" __start_on_boot "$service"
|
||||
|
||||
zonesrc=$__files/dns/zones
|
||||
zonesextsrc=$__files/dns/zones_extensions
|
||||
zonedst=/var/lib/knot
|
||||
confdst=/etc/knot/knot.conf
|
||||
|
||||
tmpdir="$__object/files"
|
||||
confsrc=$tmpdir/knot.conf
|
||||
mkdir "$tmpdir"
|
||||
|
||||
cp $__type/files/knot.conf "$confsrc"
|
||||
|
||||
for zone in $(cd "$zonesrc" && ls -1); do
|
||||
zonefile="$zonedst/${zone}.zone"
|
||||
zonesrcfile="$zonesrc/$zone"
|
||||
|
||||
# Handled synthetic in knot
|
||||
synth_module=""
|
||||
case $zone in
|
||||
# Treat IPv4 all the same
|
||||
*.155.185.in-addr.arpa|*.203.185.in-addr.arpa|*.78.147.in-addr.arpa)
|
||||
module="module: mod-synthrecord/ungleich-reverse-v4"
|
||||
;;
|
||||
ipv4.at.ungleich.ch)
|
||||
module="module: mod-synthrecord/ungleich-forward-v4"
|
||||
;;
|
||||
|
||||
1.1.0.0.2.0.0.0.0.c.5.e.a.0.a.2.ip6.arpa)
|
||||
module="module: mod-synthrecord/k8s-p6-1-reverse"
|
||||
;;
|
||||
k8s-1.place6.ungleich.ch)
|
||||
module="module: mod-synthrecord/nameservice-forward"
|
||||
;;
|
||||
d.1.0.0.0.c.5.e.a.0.a.2.ip6.arpa)
|
||||
module="module: mod-synthrecord/linthfarm-reverse"
|
||||
;;
|
||||
linthfarm.place6.ungleich.ch)
|
||||
module="module: mod-synthrecord/linthfarm-forward"
|
||||
;;
|
||||
3.1.0.0.0.c.5.e.a.0.a.2.ip6.arpa)
|
||||
module="module: mod-synthrecord/place7-reverse"
|
||||
;;
|
||||
6.1.0.0.0.c.5.e.a.0.a.2.ip6.arpa)
|
||||
module="module: mod-synthrecord/room7-reverse"
|
||||
;;
|
||||
0.1.0.0.0.c.5.e.a.0.a.2.ip6.arpa)
|
||||
module="module: mod-synthrecord/ungleich-reverse-diesbach"
|
||||
;;
|
||||
1.c.5.e.a.0.a.2.ip6.arpa)
|
||||
module="module: mod-synthrecord/vpn-reverse"
|
||||
;;
|
||||
*[0-7].c.5.e.a.0.a.2.ip6.arpa)
|
||||
module="module: mod-synthrecord/ungleich-reverse"
|
||||
;;
|
||||
*[0-7].4.9.2.9.0.a.2.ip6.arpa)
|
||||
module="module: mod-synthrecord/ungleich-reverse2"
|
||||
;;
|
||||
|
||||
hacks.in.digitalglarus.ch)
|
||||
module="module: mod-synthrecord/ungleich-forward-diesbach"
|
||||
;;
|
||||
|
||||
has-a.name|has-aaaa.name)
|
||||
module="module: mod-synthrecord/nameservice-forward"
|
||||
;;
|
||||
|
||||
ipv6.fun.via.wifi.ungleich.ch)
|
||||
module="module: mod-synthrecord/place7-forward"
|
||||
;;
|
||||
|
||||
ipv6.magic.ungleich.ch)
|
||||
module="module: mod-synthrecord/vpn-forward"
|
||||
;;
|
||||
|
||||
loves.ipv6.at.ungleich.ch)
|
||||
module="module: mod-synthrecord/ungleich-forward"
|
||||
;;
|
||||
|
||||
room7.place10.ungleich.ch|magic.room7.ungleich.ch)
|
||||
module="module: mod-synthrecord/room7-forward"
|
||||
;;
|
||||
|
||||
uses.ipv6.at.ungleich.ch)
|
||||
module="module: mod-synthrecord/ungleich-forward2"
|
||||
;;
|
||||
|
||||
*)
|
||||
module=""
|
||||
;;
|
||||
|
||||
esac
|
||||
|
||||
# Add to configuration
|
||||
cat << eof >> "$confsrc"
|
||||
- domain: ${zone}.
|
||||
file: $zonefile
|
||||
${module}
|
||||
eof
|
||||
|
||||
# Zone
|
||||
require="__package/$package" __file "$zonefile" \
|
||||
--state "$state" \
|
||||
--source "$zonesrcfile" \
|
||||
--mode 0644 \
|
||||
--owner knot
|
||||
done
|
||||
# Config
|
||||
require="__package/$package" __file "$confdst" \
|
||||
--state "$state" \
|
||||
--mode 0644 \
|
||||
--source "$confsrc"
|
Loading…
Reference in a new issue