#!/bin/bash

set -eufo pipefail

if [ -z "$1" ]; then
    echo "Storage Account Name not set..."
    exit 1
fi

if [ -z "$2" ]; then
    echo "Storage Account Key not set..."
    exit 1
fi

cd /tmp

echo "Downloading files..."
wget -q https://github.com/Azure/azurefile-dockervolumedriver/releases/download/v0.5.1/azurefile-dockervolumedriver
wget -q https://raw.githubusercontent.com/Azure/azurefile-dockervolumedriver/master/contrib/init/systemd/azurefile-dockervolumedriver.default
wget -q https://raw.githubusercontent.com/Azure/azurefile-dockervolumedriver/master/contrib/init/systemd/azurefile-dockervolumedriver.service

echo "Installing binary..."
chmod +x azurefile-dockervolumedriver
sudo mv azurefile-dockervolumedriver /usr/bin/azurefile-dockervolumedriver

# copy credentials

echo "Setting Storage Account Info..."
sudo sed -i "s|youraccount|$1|g" azurefile-dockervolumedriver.default
sudo sed -i "s|yourkey|$2|g" azurefile-dockervolumedriver.default

echo "Installing systemd service..."
sudo mv azurefile-dockervolumedriver.default /etc/default/azurefile-dockervolumedriver
sudo mv azurefile-dockervolumedriver.service /etc/systemd/system/azurefile-dockervolumedriver.service

echo "Loading system service..."
sudo systemctl daemon-reload
sudo systemctl enable azurefile-dockervolumedriver
sudo systemctl start azurefile-dockervolumedriver

echo "Done!"
echo "You can test your Azure File Storage:"
echo "    docker volume create --name <volume_name> -d azurefile -o share=<share_name>"
echo "    docker run -it --rm -v <volume_name>:/data busybox /bin/bash"
echo "And write something:"
echo "    echo 'Hello, Azure!' > /data/test.txt"
exit 0