Skip to content

Instantly share code, notes, and snippets.

@akram
Last active April 26, 2017 10:32
Show Gist options
  • Save akram/6c7ead3dec3c8d74f18f0057b447317a to your computer and use it in GitHub Desktop.
Save akram/6c7ead3dec3c8d74f18f0057b447317a to your computer and use it in GitHub Desktop.
Automatically mount ocp gluster volumes on login
for gluster_mount in $(mount | grep /mnt/gluster | cut -f3 -d " "); do
echo "Demontage du volume $gluster_mount"
sudo umount $gluster_mount
done
ocp_user=$(oc whoami 2> /dev/null)
logged_in=$?
if [ $logged_in -ne 0 ]; then
echo "Aucun projet courant. Connectez-vous avec oc login"
else
project_name=$(oc project -q )
echo "Vous êtes connecté en tant que $ocp_user"
echo "Montage des volumes glusters des deployment du projet courant: $project_name"
for pvc_name in $(oc get pvc -o jsonpath="{.items[*].metadata.name}" ); do
pv_name=$(oc get pvc $pvc_name -o jsonpath="{.spec.volumeName}")
volume_name=$(oc get pv $pv_name -o jsonpath={.spec.glusterfs.path} )
endpoint_name=$( oc get pv $pv_name -o jsonpath={.spec.glusterfs.EndpointsName})
endpoint_ip=$(oc get ep $endpoint_name -o jsonpath={.subsets[0].addresses[0].IP})
mount_point=/mnt/gluster/$project_name/$pvc_name
echo "Mounting $pvc_name on $mount_point"
sudo mkdir -p $mount_point
sudo mount.glusterfs $endpoint_ip:/$volume_name $mount_point
done
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment