aboutsummaryrefslogtreecommitdiff
path: root/sharepoint-mount
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukasz.kasprzak@pm.me>2026-01-23 12:48:30 +0100
committerLukasz Kasprzak <lukasz.kasprzak@pm.me>2026-01-23 12:48:30 +0100
commit97f968a30e7dc28f6d99bfbaae8a4aeefb6ad525 (patch)
tree5a250224ab69a04f05be2f757af86bfee9a7fec0 /sharepoint-mount
parenta00f92fdb6062af011d98ba8af6ddf0713fa7b3e (diff)
downloadbin-97f968a30e7dc28f6d99bfbaae8a4aeefb6ad525.tar.gz
bin-97f968a30e7dc28f6d99bfbaae8a4aeefb6ad525.zip
added all of my scripts
Diffstat (limited to 'sharepoint-mount')
-rwxr-xr-xsharepoint-mount40
1 files changed, 40 insertions, 0 deletions
diff --git a/sharepoint-mount b/sharepoint-mount
new file mode 100755
index 0000000..cd894cf
--- /dev/null
+++ b/sharepoint-mount
@@ -0,0 +1,40 @@
+#!/usr/bin/env bash
+set -euo pipefail
+
+BASE="/mnt/sharepoint"
+
+declare -A REMOTES=(
+ ["Administration"]="SP_Administration:"
+ ["Operations"]="SP_Operations:"
+ ["SkyscaleCommerce"]="SP_SkyscaleCommerce:"
+)
+
+RCLONE_FLAGS=(
+ --vfs-cache-mode writes
+ --dir-cache-time 1h
+ --poll-interval 1m
+ --umask 022
+ --log-level INFO
+)
+
+is_mounted() { findmnt -rn "$1" >/dev/null 2>&1; }
+
+# Ensure mountpoints exist
+sudo mkdir -p "$BASE"/{Administration,Operations,SkyscaleCommerce}
+sudo chown -R "$USER:$USER" "$BASE"
+
+for name in "${!REMOTES[@]}"; do
+ mp="$BASE/$name"
+ remote="${REMOTES[$name]}"
+
+ if is_mounted "$mp"; then
+ echo "Already mounted: $mp"
+ continue
+ fi
+
+ echo "Mounting: $remote -> $mp"
+ nohup rclone mount "$remote" "$mp" "${RCLONE_FLAGS[@]}" \
+ --log-file "${XDG_RUNTIME_DIR:-/run/user/$UID}/rclone-${name}.log" \
+ >/dev/null 2>&1 &
+done
+