Files
OpenEPaperLink/ESP32_AP-Flasher/updateRemote.sh
Mimoja aff20e272c Add updateRemote.sh script to update the contentFs on multiple APs at once
As flashing a new LittleFS in case of e.g. a changed main.js is taking time and
the provided web interface is not the fastest to navigate we are introducing a
small script to upload the whole data folder to the esp.
It can also be sourced into a shell allowing for manual file uploads to the esp.

In addition we are also adding a "push_ota.sh" script designed to show its use as
well as uploading the recenty build firmware to the esp where future commits will
allow of SDCard based updates.

Signed-off-by: Mimoja <git@mimoja.de>
2023-07-08 01:21:29 +02:00

51 lines
936 B
Bash
Executable File

#!/bin/bash
(return 0 2>/dev/null) && sourced=1 || sourced=0
if [ $sourced -eq 0 ]; then
if [ $# -eq 0 ]
then
echo "No IP address provided"
exit 1
fi
IP=$1
if [ -z "$IP" ]
then
echo "ERROR: Empty IP"
exit 1
fi
fi
upload_file () {
for file in "$@"
do
split=( $(echo $file | tr ":" " ") )
echo $split
filename=${split[0]}
if [ -z ${split[1]} ]; then
filepath=$(echo ${filename} | cut -d'/' -f2-)
else
filepath=${split[1]}
fi
echo $filename "-->" $filepath
curl "http://${IP}/edit" -X POST \
-H "Origin: http://${IP}" \
-H 'Connection: keep-alive' \
-H "Referer: http://${IP}/edit" \
-F "data=@${filename};filename=\"${filepath}\""
echo ""
done
}
export -f upload_file
if [ $sourced -eq 0 ]; then
export IP
find data -type f -exec bash -c "upload_file {} $IP" \;
else
echo "You can now call "
echo "IP=1.2.3.4 upload_file data/file1.txt data/file2.txt:target.txt"
fi