nfs: add cluster-shared-nfs replacement in ensure_nfs
Some checks are pending
continuous-integration/laminar-eldarion Build failed with exit code 123 after 2 seconds

This commit is contained in:
Starbeamrainbowlabs 2022-04-28 02:46:24 +01:00
parent 612dbf96b7
commit 6a3f5612f4
Signed by: sbrl
GPG key ID: 1BE5172E637709C2

View file

@ -1,10 +1,37 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# $1 The path to ensure is mounted after a network interface comes up.
ensure_nfs() {
local dirpath="${1}";
local target_script="/etc/network/if-up.d/ensure-nfs";
#/etc/network/if-up.d/
task_begin "ensure_nfs: registering ${dirpath}";
# 1: Ensure the target script exists
if [[ ! -d "$(dirname "${target_script}")" ]]; then
mkdir -p "$(dirname "${target_script}")";
fi
if [[ ! -r "${target_script}" ]]; then
echo "#!/usr/bin/env bash" >>"${target_script}";
chmod +x "${target_script}";
fi
if grep -q "${dirpath}; then" "${target_script}"; then
echo "ensure_nfs: ${dirpath} is already registered.";
task_end 0;
return 0;
fi
echo "if ! mountpoint -q '${dirpath}'; then mount '${dirpath}'; fi" >>"${target_script}";
task_end "$?" "ensure_nfs: error registering ${dirpath} in ${target_script}";
}
# $1 Thing to mount # $1 Thing to mount
# $2 Path to mount it to # $2 Path to mount it to
add_nfs_mount() { add_nfs_mount() {
source="${1}"; local source="${1}";
target="${2}"; local target="${2}";
task_begin "NFS mount ${source}${target}"; task_begin "NFS mount ${source}${target}";
# 1: Remove any old entries from /etc/fstab # 1: Remove any old entries from /etc/fstab
@ -18,6 +45,8 @@ add_nfs_mount() {
mount "${target}"; mount "${target}";
task_end "$?"; task_end "$?";
ensure_nfs "${target}";
} }
add_nfs_mount "magicbag.node.mooncarrot.space:/mnt/elfstone2/cluster" "/mnt/shared"; add_nfs_mount "magicbag.node.mooncarrot.space:/mnt/elfstone2/cluster" "/mnt/shared";