publish-docs.sh 605 B

12345678910111213141516171819202122232425
  1. #!/bin/bash
  2. HOST="$1"
  3. HOST_PATH="$2"
  4. SSH_PRIVATE_KEY="$3"
  5. SSH_KNOWN_HOST="$4"
  6. SSH_PRIVATE_KEY_PATH="$HOME/.ssh/${GITHUB_REPOSITORY:-publish-docs}"
  7. if [ "$#" -ne 4 ]; then
  8. echo -e "not enough arguments USAGE:\n\n$0 \$HOST \$HOST_PATH \$SSH_PRIVATE_KEY \$SSH_KNOWN_HOST\n\n" >&2
  9. exit 1
  10. fi
  11. (
  12. set -e
  13. install -m 600 -D /dev/null "$SSH_PRIVATE_KEY_PATH"
  14. echo "$SSH_PRIVATE_KEY" > "$SSH_PRIVATE_KEY_PATH"
  15. echo "$SSH_KNOWN_HOST" > ~/.ssh/known_hosts
  16. rsync --delete -avze "ssh -i $SSH_PRIVATE_KEY_PATH" build/site/ "$HOST:$HOST_PATH"
  17. )
  18. exit_code=$?
  19. rm -f "$SSH_PRIVATE_KEY_PATH"
  20. exit $exit_code