gen_config()
{
- {
- for i in $(invirt-getconf --ls hosts); do
- local hostname=$(invirt-getconf hosts.$i.hostname)
- echo "#include /etc/conserver/conf.d/$hostname"
- done
- } > /etc/conserver/invirt-hosts.cf
- local realm=$(invirt-getconf authn.0.realm)
- {
- for i in $(invirt-getconf --ls hosts); do
- local hostname=$(invirt-getconf hosts.$i.hostname)
- echo "host/$hostname@$realm"
- done
- } > /etc/remctl/acl/invirt-console
-
- cat > /etc/nss-pgsql.conf << EOF
-host = $(invirt-getconf db.host)
-port = $(invirt-getconf db.port)
-database = $(invirt-getconf db.dbname)
-login = $(invirt-getconf db.user)
-
-querypasswd = SELECT name, NULL, machine_id + 1000 as uid, machine_id + 1000 as gid, '', '/consolefs/'|| name, '/usr/bin/sipb-xen-consolesh' FROM machines
-querygroup = SELECT name, NULL, machine_id + 1000 as gid FROM machines
-querymembers = SELECT name FROM machines WHERE 1000 + machine_id = %d
-queryids = SELECT 1000 + machine_id AS gid FROM machines LIMIT 0
-
-passwd_name = name
-passwd_uid = 1000 + machine_id
-
-group_name = name
-group_gid = 1000 + machine_id
-EOF
-
- fmt > /etc/issue.net.no_tkt << EOF
-You must login to the $(invirt-getconf console.hostname) console server using
-Kerberos tickets, but your ssh client did not pass a valid ticket to the
-console server.
-EOF
+ for i in /etc/conserver/invirt-hosts.cf \
+ /etc/remctl/acl/invirt-console \
+ /etc/issue.net.no_tkt \
+ /etc/nss-pgsql.conf \
+ ; do
+ mako-render $i.mako > $i
+ done
}
#