Advertisement
Guest User

Untitled

a guest
Oct 26th, 2016
321
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.06 KB | None | 0 0
  1. #!/bin/sh
  2.  
  3. #
  4. # Script options (exit script on command fail).
  5. #
  6. set -e
  7.  
  8. #
  9. # Define default Variables.
  10. #
  11. USER="homeassistant"
  12. GROUP="homeassistant"
  13. GIT_REPO=${GIT_REPO}
  14. CONFIG_DIR="/data/home-assistant-config"
  15. COMMAND_OPTIONS_DEFAULT="-c ${CONFIG_DIR}"
  16. UID_DEFAULT="1000"
  17. GID_DEFAULT="1000"
  18. COMMAND="hass --open-ui ${COMMAND_OPTIONS:=${COMMAND_OPTIONS_DEFAULT}}"
  19.  
  20. UID_ACTUAL=$(id -u ${USER})
  21. GID_ACTUAL=$(id -g ${GROUP})
  22.  
  23. #
  24. # Display settings on standard out.
  25. #
  26. echo "container settings"
  27. echo "=================="
  28. echo
  29. echo " Username: ${USER}"
  30. echo " Groupname: ${GROUP}"
  31. echo " UID actual: ${UID_ACTUAL}"
  32. echo " GID actual: ${GID_ACTUAL}"
  33. echo " UID prefered: ${UID:=${UID_DEFAULT}}"
  34. echo " GID prefered: ${GID:=${GID_DEFAULT}}"
  35. echo " Command: ${COMMAND}"
  36. echo
  37.  
  38. # So dirty....SO SO DIRTY
  39. echo "Creating SSH key"
  40. mkdir -p ~/.ssh
  41. JUST_KEY=`echo $GIT_SSH_KEY | sed 's/-----BEGIN RSA PRIVATE KEY----- //' | sed 's/ -----END RSA PRIVATE KEY-----//'`
  42. echo "-----BEGIN RSA PRIVATE KEY-----" > ~/.ssh/id_rsa
  43. echo $JUST_KEY | tr ' ' '\n' >> ~/.ssh/id_rsa
  44. echo "-----END RSA PRIVATE KEY-----" >> ~/.ssh/id_rsa
  45. chmod 600 ~/.ssh/id_rsa
  46. ssh-keyscan github.com >> ~/.ssh/known_hosts
  47.  
  48. echo "Cloning ${GIT_REPO}"
  49. rm -rf ${CONFIG_DIR}
  50. git clone ${GIT_REPO} ${CONFIG_DIR}
  51.  
  52. #
  53. # Change UID / GID of user.
  54. #
  55. echo "Updating UID / GID... "
  56. if [[ ${GID_ACTUAL} -ne ${GID} -o ${UID_ACTUAL} -ne ${UID} ]]
  57. then
  58. echo "change user / group"
  59. deluser ${USER}
  60. addgroup -g ${GID} ${GROUP}
  61. adduser -u ${UID} -G ${GROUP} -h /etc/bind -g "${USER} User" -s /bin/sh -D ${USER}
  62. echo "[DONE]"
  63. echo "Set owner and permissions for old uid/gid files"
  64. find / -user ${UID_ACTUAL} -exec chown ${USER} {} \;
  65. find / -group ${GID_ACTUAL} -exec chgrp ${GROUP} {} \;
  66. echo "[DONE]"
  67. else
  68. echo "[NOTHING DONE]"
  69. fi
  70.  
  71. #
  72. # Set owner and permissions.
  73. #
  74. echo "Set owner and permissions... "
  75. chown -R ${USER}:${GROUP} /home/${USER}
  76. chown -R ${USER}:${GROUP} ${CONFIG_DIR}
  77. chmod -R o-rwx /home/${USER}
  78. echo "[DONE]"
  79.  
  80. #
  81. # Start application.
  82. #
  83. echo "Start application..."
  84. exec ${COMMAND}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement