Add the basics for a remote program to control a miniflux server
This commit is contained in:
parent
94dfff89fd
commit
132dc8de5a
|
@ -0,0 +1,65 @@
|
|||
#! /bin/bash
|
||||
|
||||
#CHECK FOR ENVIRONMENT VARIABLES
|
||||
if [ -z $ADM_USER ]
|
||||
then
|
||||
read -p "your username : " ADM_USER
|
||||
fi
|
||||
|
||||
if [ -z $ADM_PASSWORD ]
|
||||
then
|
||||
read -sp "your password : " ADM_PASSWORD
|
||||
echo
|
||||
fi
|
||||
|
||||
if [ -z $SERVER_HOST ]
|
||||
then
|
||||
read -p "server url : " SERVER_HOST
|
||||
fi
|
||||
|
||||
cmd_users() {
|
||||
TMPFILE=`mktemp`
|
||||
TMPFILE2=`mktemp`
|
||||
curl -s --user $ADM_USER:$ADM_PASSWORD $SERVER_HOST/v1/users > $TMPFILE
|
||||
cat "curl -s --user $ADM_USER:$ADM_PASSWORD $SERVER_HOST/v1/users > $TMPFILE"
|
||||
cat $TMPFILE | jq -r ".[] | .username" > $TMPFILE2
|
||||
NUSERS=`cat $TMPFILE2 | wc -l`
|
||||
echo "There are currently $NUSERS users registered on this server. Below is the list of these users :"
|
||||
cat $TMPFILE2
|
||||
rm $TMPFILE $TMPFILE2
|
||||
}
|
||||
|
||||
cmd_user() {
|
||||
echo "Creating a new user on $SERVER_HOST"
|
||||
read -p "Username : " UNAME
|
||||
read -sp "Password : " UPASSWD
|
||||
echo
|
||||
JSON="{\"username\":\"$UNAME\",\"password\":\"$UPASSWD\",\"is_admin\":false}"
|
||||
curl --user $ADM_USER:$ADM_PASSWORD -d $JSON -H "Content-Type: application/json" -X POST $SERVER_HOST/v1/users
|
||||
}
|
||||
|
||||
cmd_help() {
|
||||
echo "Help for miniflux remote tool :"
|
||||
echo
|
||||
echo "SYNOPSIS"
|
||||
printf "\tminiflux <command>\n"
|
||||
echo
|
||||
echo "COMMANDS :"
|
||||
printf "\tusers : Get the list of users and the number\n"
|
||||
printf "\tuser : Create a new user, it will ask you for a username and a password\n"
|
||||
printf "\tcheck : To check if the service is up\n"
|
||||
}
|
||||
|
||||
cmd_check() {
|
||||
curl $SERVER_HOST/healthcheck
|
||||
echo
|
||||
}
|
||||
|
||||
case $1 in
|
||||
users) cmd_users $@;;
|
||||
user) cmd_user $@;;
|
||||
help) cmd_help;;
|
||||
check) cmd_check;;
|
||||
-v) echo "v0.0.1/dev, written in bash by Romain de Laage";;
|
||||
*) echo "see miniflux-cli help for help";;
|
||||
esac
|
Loading…
Reference in New Issue