Refactoring Code
This commit is contained in:
12
src/functions/config.sh
Normal file
12
src/functions/config.sh
Normal file
@@ -0,0 +1,12 @@
|
||||
wxi-config(){
|
||||
case $1 in
|
||||
login)
|
||||
jq '.login.'$ORG'.token = "'$VAULT_LOGIN'"' $HOME/.warengroup/config.json &> $HOME/.warengroup/config.json.tmp
|
||||
;;
|
||||
*)
|
||||
echo -n ""
|
||||
;;
|
||||
esac
|
||||
|
||||
mv $HOME/.warengroup/config.json.tmp $HOME/.warengroup/config.json &> /dev/null
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
wx-header(){
|
||||
if [[ $2 == "h1" ]]
|
||||
then
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo "=============================="
|
||||
wx-repeat " " $((30/2-${#1}/2))
|
||||
echo -n "$wxBold"
|
||||
echo -n "$1"
|
||||
echo -n "$wxNormal"
|
||||
echo ""
|
||||
echo "=============================="
|
||||
fi
|
||||
|
||||
if [[ $2 == "h2" || -z $2 ]]
|
||||
then
|
||||
wx-start
|
||||
wx-repeat " " $((30/2-6/2-${#1}/2))
|
||||
echo -n ">> $1 <<"
|
||||
echo ""
|
||||
echo "------------------------------"
|
||||
fi
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
wx-repeat() {
|
||||
local str=$1 n=$2 spaces
|
||||
printf -v spaces "%*s" $n " "
|
||||
printf "%s" "${spaces// /$str}"
|
||||
}
|
||||
@@ -1,10 +1,84 @@
|
||||
wx-restricted(){
|
||||
wxi-restricted(){
|
||||
if [[ -z $1 || $1 == "--user" ]]
|
||||
then
|
||||
if [[ $USER == "root" || $USER == "local" ]]
|
||||
then
|
||||
echo "Status: Command Restricted"
|
||||
echo " "
|
||||
echo " "
|
||||
echo " "
|
||||
exit 1
|
||||
wxi-content status "Command" "Restricted"
|
||||
wxi-content text "It's not permitted to execute this command with root or local user."
|
||||
wxi-footer
|
||||
wxi-repeat "\n" 3
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ $1 == "--org" ]]
|
||||
then
|
||||
if [[ ! -z ${args['org']} ]]
|
||||
then
|
||||
case ${args['org']} in
|
||||
warengroup)
|
||||
ORG=warengroup
|
||||
;;
|
||||
cwchristerw)
|
||||
ORG=cwchristerw
|
||||
;;
|
||||
*)
|
||||
wxi-content status "Organization" "Unsupported"
|
||||
wxi-footer
|
||||
wxi-stop
|
||||
;;
|
||||
esac
|
||||
elif [[ $(hostname -d) = *"devices.waren.io" ]]
|
||||
then
|
||||
ORG=warengroup
|
||||
elif [[ $(hostname -d) = *"devices.christerwaren.fi" ]]
|
||||
then
|
||||
ORG=cwchristerw
|
||||
fi
|
||||
|
||||
if [[ ! -z $ORG ]]
|
||||
then
|
||||
case $ORG in
|
||||
warengroup)
|
||||
DOMAIN=waren.io
|
||||
VAULT_DOMAIN=vault.cwinfo.net
|
||||
ORG_HEADER="Warén Group"
|
||||
;;
|
||||
cwchristerw)
|
||||
DOMAIN=christerwaren.fi
|
||||
VAULT_DOMAIN=vault.cwinfo.net
|
||||
ORG_HEADER="Christer Warén"
|
||||
;;
|
||||
*)
|
||||
wxi-content status "Organization" "Unsupported"
|
||||
wxi-footer
|
||||
wxi-stop
|
||||
;;
|
||||
esac
|
||||
else
|
||||
wxi-content status "Organization" "Required"
|
||||
wxi-footer
|
||||
wxi-stop
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ -z $1 || $1 == "--vault" ]]
|
||||
then
|
||||
if [[ -z $VAULT_DOMAIN ]]
|
||||
then
|
||||
wxi-content status "Vault" "Unavailable"
|
||||
wxi-footer
|
||||
wxi-repeat "\n" 3
|
||||
exit 1
|
||||
fi
|
||||
|
||||
VAULT_STATUS=$(curl -s -o /dev/null -w "%{http_code}" https://$VAULT_DOMAIN/v1/sys/health)
|
||||
if [[ ! $VAULT_STATUS -eq 200 ]]
|
||||
then
|
||||
wxi-content status "Vault" "Offline"
|
||||
wxi-footer
|
||||
wxi-repeat "\n" 3
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -1,15 +1,13 @@
|
||||
wx-start(){
|
||||
wx-header "Warén CLI" h1
|
||||
wxi-start(){
|
||||
wxi-header "Warén CLI" h1
|
||||
|
||||
mkdir -p $HOME/.warengroup &> /dev/null
|
||||
|
||||
if [[ ! -f "$HOME/.warengroup/config.json" || $(jq -e . < $HOME/.warengroup/config.json &>/dev/null; echo $?) -gt 0 ]]
|
||||
then
|
||||
echo '{}' | jq > $HOME/.warengroup/config.json
|
||||
fi
|
||||
|
||||
mkdir -p $HOME/.ssh/keys
|
||||
chmod 700 -R $HOME/.ssh/keys
|
||||
mkdir -p $HOME/.ssh/multiplex
|
||||
chmod 700 -R $HOME/.ssh/multiplex
|
||||
mkdir -p $HOME/.warengroup
|
||||
if [[ ! -f $HOME/.warengroup/config.json || $(jq -e . < $HOME/.warengroup/config.json &>/dev/null; echo $?) -gt 0 ]]
|
||||
then
|
||||
echo '{}' | jq > $HOME/.warengroup/config.json
|
||||
fi
|
||||
mkdir -p $HOME/.ssh/keys
|
||||
chmod 700 -R $HOME/.ssh/keys
|
||||
mkdir -p $HOME/.ssh/multiplex
|
||||
chmod 700 -R $HOME/.ssh/multiplex
|
||||
}
|
||||
|
||||
@@ -1,14 +1,18 @@
|
||||
wx-stop (){
|
||||
echo " "
|
||||
echo " "
|
||||
echo " "
|
||||
wxi-stop(){
|
||||
if [[ ! -f $HOME/bin/wx ]]
|
||||
then
|
||||
wx-install &> /dev/null
|
||||
else
|
||||
wx-update &> /dev/null
|
||||
fi
|
||||
|
||||
wx-install --auto
|
||||
wxi-repeat "\n" 3
|
||||
|
||||
if [[ $USERNAME != $USER && $USERNAME != $SUDO_USER && $USERNAME != $LOGNAME ]]
|
||||
then
|
||||
wx-logout
|
||||
fi
|
||||
for key in "${!args[@]}"
|
||||
do
|
||||
echo "$key: ${args[$key]}"
|
||||
done
|
||||
|
||||
exit 1
|
||||
wxi-repeat "\n" 3
|
||||
exit 1
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user