printing role without lmn-linuxmusterclient7
This commit is contained in:
parent
5f088511c4
commit
0e4073336a
32 changed files with 80 additions and 3246 deletions
36
roles/lmn_printer/templates/install-printers.sh.j2
Normal file
36
roles/lmn_printer/templates/install-printers.sh.j2
Normal file
|
@ -0,0 +1,36 @@
|
|||
#!/usr/bin/bash
|
||||
|
||||
set -eu
|
||||
|
||||
printservers="{{ printservers | join(' ') }}"
|
||||
hostname=$(hostname)
|
||||
hostgroup=$(id -Gn "${hostname^^}$")
|
||||
usergroup=$(id -Gn "${SUDO_USER}")
|
||||
installedprinters=$(lpstat -p | cut -f 2 -d" " | sed -z 's/\n/ /g' )
|
||||
|
||||
echo "Hostgroups: ${hostgroup}"
|
||||
echo "Usergroups: ${usergroup}"
|
||||
echo "Installed Printers: ${installedprinters}"
|
||||
echo
|
||||
|
||||
for printer in $installedprinters; do
|
||||
if ! $(echo "${hostgroup}" | grep -w -q "${printer}") && ! $(echo "${usergroup}" | grep -w -q "${printer}") ; then
|
||||
lpadmin -x "${printer}"
|
||||
fi
|
||||
done
|
||||
|
||||
for printserver in $printservers; do
|
||||
echo "checking Server: $printserver"
|
||||
printers=$(lpstat -h "${printserver}" -U "${SUDO_USER}" -v | cut -f 3 -d" " | sed 's/:$//g' | sed -z 's/\n/ /g' )
|
||||
echo "Available Printers: $printers"
|
||||
for printer in $printers; do
|
||||
if $(echo "${hostgroup}" | grep -w -q "${printer}") || $(echo "${usergroup}" | grep -w -q "${printer}") ; then
|
||||
if ! $(echo "${installedprinters}" | grep -w -q "${printer}"); then
|
||||
echo "Adding ${printer}"
|
||||
timeout 10 lpadmin -p "${printer}" -E -v "ipp://${printserver}/printers/${printer}" -m everywhere || echo "Printer ${printer} could not be added"
|
||||
installedprinters+=" ${printer}"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
[network]
|
||||
serverHostname = server
|
||||
domain = pn.steinbeis.schule
|
||||
realm = PN.STEINBEIS.SCHULE
|
||||
version = 1
|
Loading…
Add table
Add a link
Reference in a new issue