blob: 12b1a6ead55bd39c5aa5ffd52668bbededb94506 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
2022-06-30 | 1 | -3/+0 | |
* | We do not need facts, let's not waste time gathering them | H. P.
| 2022-06-30 | 1 | -1/+2 |
* | Make sure DFDISTRIB is not empty | H. P.
| 2022-06-30 | 1 | -0/+7 |
* | separation into plays-per-host(s) | H. P.
| 2022-06-29 | 1 | -3/+12 |
* | Source is now an absolute path :-) | H. P.
| 2022-06-28 | 1 | -2/+2 |
* | BUGFIX: only create the tarball once for all hosts | H. P.
| 2022-06-28 | 1 | -0/+1 |
* | Including *.local files as non-presence is no error | H. P.
| 2022-06-28 | 1 | -0/+4 |
* | Added local tarball removal after successful remote executions | H. P.
| 2022-06-28 | 1 | -0/+11 |
* | Reincluded remote tarball removal | H. P.
| 2022-06-28 | 1 | pre { line-height: 125%; }
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
td.linenos .speH. P.
| 2022-06-28 | 1 | -0/+47 |
* | tags for other tasks | H. P.
| 2022-03-21 | 1 | -0/+6 |
* | distribution mechanism, more targets in make | H. P.
t.PreprocFile */
.highlight .c1 { color: #aaaaaa; font-style: italic } /* Comment.Single */
.highlight .cs { color: #0000aa; font-style: italic } /* Comment.Special */
.highlight .gd { color: #aa0000 } /* Generic.Deleted */
.highlight .ge { font-style: italic } /* Generic.Emph */
.highlight .gr { color: #aa0000 } /* Generic.Error */
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.highlight .gi { color: #00aa00 } /* Generic.Inserted */
.highlight .go { color: #888888 } /* Generic.Output */
.highlight .gp { color: #555555 } /* Generic.Prompt */
.highlight .gs { font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
.highlight .kc { color: #0000aa } /* Keyword.Constant */
.highlight .kd { color: #0000aa } /* Keyword.Declaration */
.highlight .kn { color: #0000aa } /* Keyword.Namespace */
.highlight .kp { color: #0000aa } /* Keyword.Pseudo */
.highlight .kr { color: #0000aa } /* Keyword.Reserved */
.highlight .kt { color: #00aaaa } /* Keyword.Type */
.highlight .m { color: #009999 } /* Literal.Number */
.highlight .s { color: #aa5500 } /* Literal.String */
.highlight .na { color: #1e90ff } /* Name.Attribute */
.highlight .nb { color: #00aaaa } /* Name.Builtin */
.highlight .nc { color: #00aa00; text-decoration: underline } /* Name.Class */
.highlight .no { color: #aa0000 } /* Name.Constant */
.highlight .nd { color: #888888 } /* Name.Decorator */
.highlight .ni { color: #880000; font-weight: bold } /* Name.Entity */
.highlight .nf { color: #00aa00 } /* Name.Function */
.highlight .nn { color: #00aaaa; text-decoration: underline } /* Name.Namespace */
.highlight .nt { color: #1e90ff; font-weight: bold } /* Name.Tag */
.highlight .nv { color: #aa0000 } /* Name.Variable */
.highlight .ow { color: #0000aa } /* Operator.Word */
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
.highlight .mb { color: #009999 } /* Literal.Number.Bin */
.highlight .mf { color: #009999 } /* Literal.Number.Float */
.highlight .mh { color: #009999 } /* Literal.Number.Hex */
.highlight .mi { color: #009999 } /* Literal.Number.Integer */
.highlight .mo { color: #009999 } /* Literal.Number.Oct */
.highlight .sa { color: #aa5500 } /* Literal.String.Affix */
.highlight .sb { color: #aa5500 } /* Literal.String.Backtick */
.highlight .sc { color: #aa5500 } /* Literal.String.Char */
.highlight .dl { color: #aa5500 } /* Literal.String.Delimiter */
.highlight .sd { color: #aa5500 } /* Literal.String.Doc */
.highlight .s2 { color: #aa5500 } /* Literal.String.Double */
.highlight .se { color: #aa5500 } /* Literal.String.Escape */
.highlight .sh { color: #aa5500 } /* Literal.String.Heredoc */
.highlight .si { color: #aa5500 } /* Literal.String.Interpol */
.highlight .sx { color: #aa5500 } /* Literal.String.Other */
.highlight .sr { color: #009999 } /* Literal.String.Regex */
.highlight .s1 { color: #aa5500 } /* Literal.String.Single */
.highlight .ss { color: #0000aa } /* Literal.String.Symbol */
.highlight .bp { color: #00aaaa } /* Name.Builtin.Pseudo */
.highlight .fm { color: #00aa00 } /* Name.Function.Magic */
.highlight .vc { color: #aa0000 } /* Name.Variable.Class */
.highlight .vg { color: #aa0000 } /* Name.Variable.Global */
.highlight .vi { color: #aa0000 } /* Name.Variable.Instance */
.highlight .vm { color: #aa0000 } /* Name.Variable.Magic */
.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */#!/usr/bin/env bash
# vim:syntax=sh:ts=4
# ----- PROMPT COLOURS ----- #
fgcolor () {
#echo "\\[\\033[38;5;"$1"m\\]"
echo "\033[38;5;${1}m"
}
fgtcolor () {
echo "\033[38;2;$1;$2;$3m"
}
bgcolor () {
#echo "\\[\\033[48;5;"$1"m\\]"
echo "\033[48;5;${1}m"
}
# This is Solaris bash compatible, so we cannot use + here for "at least once) but instead use the
# stupid old asterisk (*). Well, here hetting "no digits" practically won't hurt.
MYUID="$(id|sed 's/.*uid=\([0-9]*\).*/\1/g')";export MYUID
# ...because "empty" will hit the "any" condition in the end :)
case "$MYUID" in
0)
FGC1="fgcolor 88"
case "$OSNAME" in
debian) FGC3="fgcolor 38";FGC2="fgtcolor 155 15 64";;
arch) FGC2="fgcolor 24";FGC3="fgcolor 240";;
redhat) FGC1="fgcolor 23";FGC2="fgcolor 88";FGC3="fgcolor 203";;
fedora) FGC1="fgcolor 160";FGC2="fgcolor 88";FGC3="fgcolor 203";;
# with the advent of Rocky, we'll match the time to SUSE's blue and the hostname to
# the colour of Geeko:
#*suse|aix) FGC2="fgcolor 22";FGC3="fgcolor 41";;
*sles*) FGC2="fgcolor 22";FGC3="fgcolor 83";;
*suse) FGC2="fgcolor 30";FGC3="fgcolor 83";;
aix) FGC2="fgcolor 238";FGC3="fgcolor 83";;
*centos*) FGC2="fgcolor 25";FGC3="fgcolor 208";;
*solaris) FGC2="fgcolor 31";FGC3="fgcolor 124";;
ubuntu) FGC2="fgcolor 130";FGC3="fgcolor 215";;
rasp*) FGC2="fgcolor 253";FGC3="fgcolor 126";;
rocky) FGC2="fgcolor 22";FGC3="fgcolor 41";;
*) FGC2="fgcolor 240";FGC3="fgcolor 244";;
esac
;;
*)
FGC2="fgcolor 253"
case "$OSNAME" in
debian) FGC1="fgtcolor 155 15 64";FGC3="fgcolor 38";;
arch) FGC1="fgcolor 24";FGC3="fgcolor 239";;
redhat) FGC1="fgcolor 23";FGC3="fgcolor 88";;
fedora) FGC1="fgcolor 88";FGC3="fgcolor 203";;
#*suse|aix) FGC1="fgcolor 22";FGC3="fgcolor 41";;
*sles*) FGC1="fgcolor 22";FGC3="fgcolor 83";;
*suse) FGC1="fgcolor 30";FGC3="fgcolor 83";;
aix) FGC1="fgcolor 238";FGC3="fgcolor 83";;
*centos*) FGC1="fgcolor 25";FGC3="fgcolor 208";;
*solaris) FGC1="fgcolor 31";FGC3="fgcolor 124";;
ubuntu) FGC1="fgcolor 130";FGC3="fgcolor 215";;
rasp*) FGC1="fgcolor 53";FGC3="fgcolor 126";;
rocky) FGC1="fgcolor 22";FGC3="fgcolor 41";;
*) FGC1="fgcolor 240";FGC3="fgcolor 244";;
esac
;;
esac
# make it possible to draw user-defined colours
# shellcheck disable=SC1090
[ -r "${BBD}/prompt.bash.local" ] && source "${BBD}/prompt.bash.local"
# ----- USER SEP. AND HOSTNAME ----- #
UHSEP="@"
[ -n "$TMUX_PANE" ]&&UHSEP="[T]"
[ -n "$BYOBU_WINDOW_NAME" ]&&UHSEP="[B]"
[ "$(hostname -s)" == "monitoring" ]&&PHN="$(hostname -f)"||PHN="$(hostname -s)"
# ----- ASSEMBLE THE PROMPT COMMAND ADDITION ----- #
__prompt_command() {
local EXIT="$?"
if [ "$EXIT" -lt 10 ];then
local EXIT2="00$EXIT"
elif [ "$EXIT" -lt 100 ];then
local EXIT2="0$EXIT"
else
local EXIT2="$EXIT"
fi
case "$MYUID" in
0)
PS1="\\# \[$(tput bold)\]\[$($FGC1)\]\\u\[$($FGC2)\]@$PHN \[$($FGC3)\]\\w \[$(tput sgr0)\]"
;;
*)
PS1="\\# \[$(tput bold)\]\[$($FGC1)\]\t \[$($FGC2)\]\\u$UHSEP\[$($FGC3)\]$PHN \\w \[$(tput sgr0)\]"
;;
esac
if command -v __git_ps1 >/dev/null 2>&1;then PS1+="$(__git_ps1 "%s ")";fi
if [ "$EXIT" -eq 0 ];then
PS1+="\[\033[0;32m\]# "
elif [ "$EXIT" -eq 255 ]||[ "$EXIT" -eq 127 ];then
PS1+="\[\033[0;33m\]$EXIT2 # "
elif [ "$EXIT" -eq 130 ];then
PS1+="\[\033[0;35m\]$EXIT2 # "
else
PS1+="\[\033[0;31m\]$EXIT2 # "
fi
PS1+="\[\033[0m\]"
}
# ----- ADD __prompt_command() TO $PROMPT_COMMAND ----- #
if ! printf "%b" "$PROMPT_COMMAND" | grep '__prompt_command' >/dev/null;then
case "$TERM" in
# adding in "screen" because tmux
xterm|xterm-color|xterm-256color|rxvt*|screen-256color|screen)
if [ -n "$PROMPT_COMMAND" ];then
export PROMPT_COMMAND="__prompt_command;${PROMPT_COMMAND}"
else
export PROMPT_COMMAND="__prompt_command"
fi
;;
*)
if [ -n "$PROMPT_COMMAND" ];then
export PROMPT_COMMAND="__prompt_command;${PROMPT_COMMAND}"
else
export PROMPT_COMMAND="__prompt_command"
fi
;;
esac
fi
# ----- HISTORY SUBMISSION IN $PROMPT_COMMAND ----- #
if ! printf "%b" "$PROMPT_COMMAND"|grep 'history -a' >/dev/null;then
if [ -n "$PROMPT_COMMAND" ];then
export PROMPT_COMMAND="$PROMPT_COMMAND;history -a;history -c;history -r"
else
export PROMPT_COMMAND="history -a;history -c;history -r"
fi
fi
|