lo-conversion: add a script to use CODE for remote conversion

This commit is contained in:
Hubert Figuière 2023-09-12 09:41:55 -04:00
parent 61c4792b8a
commit 774693121a
5 changed files with 60 additions and 10 deletions

View File

@ -0,0 +1,51 @@
#!/bin/bash
set -e
set -u
PATH="/bin/:/usr/bin/"
# This is a sample script - adjust it per your need, to use Collabora online.
# 1 - setup a server with Collabora Online (CODE)
# You can run it with
# docker run -t -d -p 127.0.0.1:9980:9980 -e "domain=<your-dot-escaped-domain>" \
# -e "username=admin" -e "password=S3cRet" --restart always collabora/code
# See https://sdk.collaboraonline.com/docs/installation/CODE_Docker_image.html
# Or you can use an existing setup you have.
# 2 - replace the HOST information below with your server host
HOST=127.0.0.1
# Set this to "-k" to allow it to work in a test environment, ie with a self signed
# certificate
UNSECURE=
# This script receives three params
# Param 1: Input office file path (e.g. "/tmp/test.odt")
# Param 2: Output pdf file path (e.g. "/tmp/test.pdf")
# Param 3: Destination Format (pdf default)
# Param 4: Timeout (secs) (optional)
if (( $# == 0 )); then
echo "Missing parameter 1 (Input office file path)";
exit 1
elif (( $# == 1 )); then
echo "Missing parameter 2 (Output pdf file path)";
exit 1
fi;
source="$1"
dest="$2"
# If output format is missing, define PDF
convertTo="${3:-pdf}"
# If timeout is missing, define 60
timeoutSecs="${4:-60}"
# Truncate timeout to max 3 digits (as expected by sudoers)
timeoutSecs="${timeoutSecs:0:3}"
# The timeout is important.
timeout $(printf %03d $timeoutSecs)s curl $UNSECURE -F "data=@${source}" https://$HOST:9980/cool/convert-to/$convertTo > "${dest}"
exit 0

View File

@ -34,11 +34,9 @@ fi
FOLDER_CHECK=`[ -d /usr/share/bbb-libreoffice-conversion/ ] && echo 1 || echo 0` FOLDER_CHECK=`[ -d /usr/share/bbb-libreoffice-conversion/ ] && echo 1 || echo 0`
if [ "$FOLDER_CHECK" = "0" ]; then if [ "$FOLDER_CHECK" = "0" ]; then
echo "Install folder doesn't exists, installing" echo "Install folder doesn't exists, installing"
mkdir -m 755 /usr/share/bbb-libreoffice-conversion/ install -Dm755 assets/convert-local.sh /usr/share/bbb-libreoffice-conversion/convert.sh
cp assets/convert-local.sh /usr/share/bbb-libreoffice-conversion/convert.sh install -Dm755 assets/convert-cool.sh /usr/share/bbb-libreoffice-conversion/convert-cool.sh
chmod 755 /usr/share/bbb-libreoffice-conversion/convert.sh install -Dm755 assets/etherpad-export.sh /usr/share/bbb-libreoffice-conversion/etherpad-export.sh
cp assets/etherpad-export.sh /usr/share/bbb-libreoffice-conversion/etherpad-export.sh
chmod 755 /usr/share/bbb-libreoffice-conversion/etherpad-export.sh
chown -R root /usr/share/bbb-libreoffice-conversion/ chown -R root /usr/share/bbb-libreoffice-conversion/
else else
echo "Install folder already exists" echo "Install folder already exists"

View File

@ -9,11 +9,9 @@ cd "$(dirname "$0")"
FOLDER_CHECK=`[ -d /usr/share/bbb-libreoffice-conversion/ ] && echo 1 || echo 0` FOLDER_CHECK=`[ -d /usr/share/bbb-libreoffice-conversion/ ] && echo 1 || echo 0`
if [ "$FOLDER_CHECK" = "0" ]; then if [ "$FOLDER_CHECK" = "0" ]; then
echo "Install folder doesn't exists, installing" echo "Install folder doesn't exists, installing"
mkdir -m 755 /usr/share/bbb-libreoffice-conversion/ install -Dm755 assets/convert-remote.sh /usr/share/bbb-libreoffice-conversion/convert.sh
cp assets/convert-remote.sh /usr/share/bbb-libreoffice-conversion/convert.sh install -Dm755 assets/convert-cool.sh /usr/share/bbb-libreoffice-conversion/convert-cool.sh
chmod 755 /usr/share/bbb-libreoffice-conversion/convert.sh install -Dm755 assets/etherpad-export.sh /usr/share/bbb-libreoffice-conversion/etherpad-export.sh
cp assets/etherpad-export.sh /usr/share/bbb-libreoffice-conversion/etherpad-export.sh
chmod 755 /usr/share/bbb-libreoffice-conversion/etherpad-export.sh
chown -R root /usr/share/bbb-libreoffice-conversion/ chown -R root /usr/share/bbb-libreoffice-conversion/
else else
echo "Install folder already exists" echo "Install folder already exists"

View File

@ -16,6 +16,7 @@ fi
#fi #fi
chmod +x /usr/share/bbb-libreoffice-conversion/convert-cool.sh
chmod +x /usr/share/bbb-libreoffice-conversion/convert-local.sh chmod +x /usr/share/bbb-libreoffice-conversion/convert-local.sh
chmod +x /usr/share/bbb-libreoffice-conversion/convert-remote.sh chmod +x /usr/share/bbb-libreoffice-conversion/convert-remote.sh
chmod +x /usr/share/bbb-libreoffice-conversion/etherpad-export.sh chmod +x /usr/share/bbb-libreoffice-conversion/etherpad-export.sh

View File

@ -21,9 +21,11 @@ if [ $DISTRO != "amzn2" ]; then
fi fi
cp assets/etherpad-export.sh staging/usr/share/bbb-libreoffice-conversion/etherpad-export.sh cp assets/etherpad-export.sh staging/usr/share/bbb-libreoffice-conversion/etherpad-export.sh
cp assets/convert-local.sh staging/usr/share/bbb-libreoffice-conversion/convert-cool.sh
cp assets/convert-local.sh staging/usr/share/bbb-libreoffice-conversion/convert-local.sh cp assets/convert-local.sh staging/usr/share/bbb-libreoffice-conversion/convert-local.sh
cp assets/convert-remote.sh staging/usr/share/bbb-libreoffice-conversion/convert-remote.sh cp assets/convert-remote.sh staging/usr/share/bbb-libreoffice-conversion/convert-remote.sh
chmod +x staging/usr/share/bbb-libreoffice-conversion/convert-cool.sh
chmod +x staging/usr/share/bbb-libreoffice-conversion/convert-local.sh chmod +x staging/usr/share/bbb-libreoffice-conversion/convert-local.sh
chmod +x staging/usr/share/bbb-libreoffice-conversion/convert-remote.sh chmod +x staging/usr/share/bbb-libreoffice-conversion/convert-remote.sh
chmod +x staging/usr/share/bbb-libreoffice-conversion/etherpad-export.sh chmod +x staging/usr/share/bbb-libreoffice-conversion/etherpad-export.sh